[dart:html] Add gap, rowGap, gridRowGap, and gridColumnGap properties.

Adds gap, rowGap, gridRowGap, and gridColumnGap CSS style properties.
The columnGap property was already included through WebKit.

Relevant bugs:
https://github.com/dart-lang/sdk/issues/46077
https://github.com/dart-lang/sdk/issues/45789


Verified properties are accessible with this `foo.dart` file:
https://paste.googleplex.com/6379738705690624
Loaded with ddb in Chrome:
https://screenshot.googleplex.com/9hN4MTCFxY5EYQn.png

Change-Id: Ia62807a6588cd0fd21b204a2a98a120fa4c4b07b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/224500
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Riley Porter <rileyporter@google.com>
diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart
index 448b653..3298b08 100644
--- a/sdk/lib/html/dart2js/html_dart2js.dart
+++ b/sdk/lib/html/dart2js/html_dart2js.dart
@@ -7061,6 +7061,14 @@
     setProperty('font-weight', value, '');
   }
 
+  /** Gets the value of "gap" */
+  String get gap => getPropertyValue('gap');
+
+  /** Sets the value of "gap" */
+  set gap(String value) {
+    setProperty('gap', value, '');
+  }
+
   /** Gets the value of "grid" */
   String get grid => getPropertyValue('grid');
 
@@ -7117,6 +7125,14 @@
     setProperty('grid-column-end', value, '');
   }
 
+  /** Gets the value of "grid-column-gap" */
+  String get gridColumnGap => getPropertyValue('grid-column-gap');
+
+  /** Sets the value of "grid-column-gap" */
+  set gridColumnGap(String value) {
+    setProperty('grid-column-gap', value, '');
+  }
+
   /** Gets the value of "grid-column-start" */
   String get gridColumnStart => getPropertyValue('grid-column-start');
 
@@ -7141,6 +7157,14 @@
     setProperty('grid-row-end', value, '');
   }
 
+  /** Gets the value of "grid-row-gap" */
+  String get gridRowGap => getPropertyValue('grid-row-gap');
+
+  /** Sets the value of "grid-row-gap" */
+  set gridRowGap(String value) {
+    setProperty('grid-row-gap', value, '');
+  }
+
   /** Gets the value of "grid-row-start" */
   String get gridRowStart => getPropertyValue('grid-row-start');
 
@@ -7997,6 +8021,14 @@
     setProperty('right', value, '');
   }
 
+  /** Gets the value of "row-gap" */
+  String get rowGap => getPropertyValue('row-gap');
+
+  /** Sets the value of "row-gap" */
+  set rowGap(String value) {
+    setProperty('row-gap', value, '');
+  }
+
   /** Gets the value of "rtl-ordering" */
   String get rtlOrdering => getPropertyValue('rtl-ordering');
 
diff --git a/tools/dom/scripts/CSSPropertyNames.in b/tools/dom/scripts/CSSPropertyNames.in
index 39b49ad..cf59dca 100644
--- a/tools/dom/scripts/CSSPropertyNames.in
+++ b/tools/dom/scripts/CSSPropertyNames.in
@@ -288,7 +288,8 @@
 -webkit-column-break-inside
 -webkit-column-count
 column-fill
--webkit-column-gap
+column-gap
+-webkit-column-gap alias_for=column-gap
 -webkit-column-rule
 -webkit-column-rule-color
 -webkit-column-rule-style
@@ -321,12 +322,14 @@
 justify-content
 -webkit-justify-content alias_for=justify-content
 -webkit-font-size-delta
+gap
 grid-auto-columns
 grid-auto-flow
 grid-auto-rows
 grid-area
 grid-column
 grid-column-end
+grid-column-gap
 grid-column-start
 grid
 grid-template
@@ -334,6 +337,7 @@
 grid-template-rows
 grid-row
 grid-row-end
+grid-row-gap
 grid-row-start
 grid-template-areas
 -webkit-highlight
@@ -387,6 +391,7 @@
 -webkit-perspective-origin-x
 -webkit-perspective-origin-y
 -webkit-print-color-adjust
+row-gap
 -webkit-rtl-ordering
 -webkit-ruby-position
 -webkit-text-combine
diff --git a/tools/dom/templates/html/impl/impl_CSSStyleDeclaration.darttemplate b/tools/dom/templates/html/impl/impl_CSSStyleDeclaration.darttemplate
index 914faca..a81ff5a 100644
--- a/tools/dom/templates/html/impl/impl_CSSStyleDeclaration.darttemplate
+++ b/tools/dom/templates/html/impl/impl_CSSStyleDeclaration.darttemplate
@@ -3139,6 +3139,15 @@
     setProperty('font-weight', value, '');
   }
 
+  /** Gets the value of "gap" */
+  String get gap =>
+    getPropertyValue('gap');
+
+  /** Sets the value of "gap" */
+  set gap(String value) {
+    setProperty('gap', value, '');
+  }
+
   /** Gets the value of "grid" */
   String get grid =>
     getPropertyValue('grid');
@@ -3202,6 +3211,15 @@
     setProperty('grid-column-end', value, '');
   }
 
+  /** Gets the value of "grid-column-gap" */
+  String get gridColumnGap =>
+    getPropertyValue('grid-column-gap');
+
+  /** Sets the value of "grid-column-gap" */
+  set gridColumnGap(String value) {
+    setProperty('grid-column-gap', value, '');
+  }
+
   /** Gets the value of "grid-column-start" */
   String get gridColumnStart =>
     getPropertyValue('grid-column-start');
@@ -3229,6 +3247,15 @@
     setProperty('grid-row-end', value, '');
   }
 
+  /** Gets the value of "grid-row-gap" */
+  String get gridRowGap =>
+    getPropertyValue('grid-row-gap');
+
+  /** Sets the value of "grid-row-gap" */
+  set gridRowGap(String value) {
+    setProperty('grid-row-gap', value, '');
+  }
+
   /** Gets the value of "grid-row-start" */
   String get gridRowStart =>
     getPropertyValue('grid-row-start');
@@ -4192,6 +4219,15 @@
     setProperty('right', value, '');
   }
 
+  /** Gets the value of "row-gap" */
+  String get rowGap =>
+    getPropertyValue('row-gap');
+
+  /** Sets the value of "row-gap" */
+  set rowGap(String value) {
+    setProperty('row-gap', value, '');
+  }
+
   /** Gets the value of "rtl-ordering" */
   String get rtlOrdering =>
     getPropertyValue('rtl-ordering');