This is an automated email from the ASF dual-hosted git repository.

harbs pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new 2d678d0647 Added flex-grid styles
2d678d0647 is described below

commit 2d678d064739fb00067e93e62dbe38cf66e5ae59
Author: Harbs <[email protected]>
AuthorDate: Tue Feb 24 14:13:30 2026 +0200

    Added flex-grid styles
---
 .../style/stylebeads/flexgrid/AlignContent.as      | 64 ++++++++++++++++++++
 .../royale/style/stylebeads/flexgrid/AlignItems.as | 64 ++++++++++++++++++++
 .../royale/style/stylebeads/flexgrid/AlignSelf.as  | 64 ++++++++++++++++++++
 .../royale/style/stylebeads/flexgrid/ColumnGap.as  | 29 +++++++++
 .../royale/style/stylebeads/flexgrid/Flex.as       | 50 ++++++++++++++++
 .../royale/style/stylebeads/flexgrid/FlexBasis.as  | 44 ++++++++++++++
 .../style/stylebeads/flexgrid/FlexDirection.as     | 37 ++++++++++++
 .../royale/style/stylebeads/flexgrid/FlexGrow.as   | 39 ++++++++++++
 .../royale/style/stylebeads/flexgrid/FlexShrink.as | 39 ++++++++++++
 .../royale/style/stylebeads/flexgrid/FlexWrap.as   | 38 ++++++++++++
 .../{layout/InsetBase.as => flexgrid/Gap.as}       | 47 +++++----------
 .../style/stylebeads/flexgrid/GridAutoColumns.as   | 66 +++++++++++++++++++++
 .../style/stylebeads/flexgrid/GridAutoFlow.as      | 41 +++++++++++++
 .../style/stylebeads/flexgrid/GridAutoRows.as      | 66 +++++++++++++++++++++
 .../royale/style/stylebeads/flexgrid/GridColumn.as | 38 ++++++++++++
 .../style/stylebeads/flexgrid/GridColumnEnd.as     | 28 +++++++++
 .../style/stylebeads/flexgrid/GridColumnStart.as   | 28 +++++++++
 .../royale/style/stylebeads/flexgrid/GridRow.as    | 38 ++++++++++++
 .../royale/style/stylebeads/flexgrid/GridRowEnd.as | 38 ++++++++++++
 .../style/stylebeads/flexgrid/GridRowStart.as      | 38 ++++++++++++
 .../stylebeads/flexgrid/GridTemplateColumns.as     | 48 +++++++++++++++
 .../style/stylebeads/flexgrid/GridTemplateRows.as  | 48 +++++++++++++++
 .../style/stylebeads/flexgrid/JustifyContent.as    | 64 ++++++++++++++++++++
 .../style/stylebeads/flexgrid/JustifyItems.as      | 56 ++++++++++++++++++
 .../style/stylebeads/flexgrid/JustifySelf.as       | 57 ++++++++++++++++++
 .../royale/style/stylebeads/flexgrid/Order.as      | 69 ++++++++++++++++++++++
 .../style/stylebeads/flexgrid/PlaceContent.as      | 55 +++++++++++++++++
 .../royale/style/stylebeads/flexgrid/PlaceItems.as | 55 +++++++++++++++++
 .../royale/style/stylebeads/flexgrid/PlaceSelf.as  | 55 +++++++++++++++++
 .../royale/style/stylebeads/flexgrid/RowGap.as     | 29 +++++++++
 .../royale/style/stylebeads/layout/InsetBase.as    |  2 +-
 31 files changed, 1401 insertions(+), 33 deletions(-)

diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignContent.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignContent.as
new file mode 100644
index 0000000000..7b3f053685
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignContent.as
@@ -0,0 +1,64 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class AlignContent extends SingleStyleBase
+       {
+               public function AlignContent()
+               {
+                       super("content", "align-content");
+               }
+
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               private function getAfterDash(value:String):String
+               {
+                       var dashIndex:int = value.indexOf("-");
+                       if(dashIndex >= 0)
+                               return value.substring(dashIndex + 1);
+                       return value;
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["normal","flex-start","flex-end","safe 
flex-end","flex-end safe","center","safe center","center safe","baseline","last 
baseline","stretch"].indexOf(value) >= 0, "Invalid value for align-items: " + 
value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedRuleValue = vals[0];
+                       calculatedSelector = getAfterDash(vals[0]);
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignItems.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignItems.as
new file mode 100644
index 0000000000..75423be76a
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignItems.as
@@ -0,0 +1,64 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class AlignItems extends SingleStyleBase
+       {
+               public function AlignItems()
+               {
+                       super("items", "align-items");
+               }
+
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               private function getAfterDash(value:String):String
+               {
+                       var dashIndex:int = value.indexOf("-");
+                       if(dashIndex >= 0)
+                               return value.substring(dashIndex + 1);
+                       return value;
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["flex-start","flex-end","safe 
flex-end","flex-end safe","center","safe center","center safe","baseline","last 
baseline","stretch"].indexOf(value) >= 0, "Invalid value for align-items: " + 
value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedRuleValue = vals[0];
+                       calculatedSelector = getAfterDash(vals[0]);
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignSelf.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignSelf.as
new file mode 100644
index 0000000000..b3db717df8
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/AlignSelf.as
@@ -0,0 +1,64 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class AlignSelf extends SingleStyleBase
+       {
+               public function AlignSelf()
+               {
+                       super("self", "align-self");
+               }
+
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               private function getAfterDash(value:String):String
+               {
+                       var dashIndex:int = value.indexOf("-");
+                       if(dashIndex >= 0)
+                               return value.substring(dashIndex + 1);
+                       return value;
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["auto","flex-start","flex-end","safe 
flex-end","flex-end safe","center","safe center","center safe","baseline","last 
baseline","stretch"].indexOf(value) >= 0, "Invalid value for align-items: " + 
value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedRuleValue = vals[0];
+                       calculatedSelector = getAfterDash(vals[0]);
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/ColumnGap.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/ColumnGap.as
new file mode 100644
index 0000000000..ab07511e8a
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/ColumnGap.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+
+       public class ColumnGap extends Gap
+       {
+               public function ColumnGap()
+               {
+                       super("gap-x", "column-gap");
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Flex.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Flex.as
new file mode 100644
index 0000000000..e4f2618f6b
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Flex.as
@@ -0,0 +1,50 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class Flex extends SingleStyleBase
+       {
+               public function Flex()
+               {
+                       super("flex", "flex");
+               }
+
+               override public function set value(value:*):void
+               {
+                       COMPILE::JS
+                       {
+                               value = value.trim();
+                               // TODO validate aspect before setting
+                               calculatedRuleValue = calculatedSelector = 
_value = value;
+                               var isNum:Boolean = parseFloat(value) == value;
+                               var isInt:Boolean = int(value) == value;
+                               if(isNum && !isInt)
+                                       calculatedRuleValue = (value * 100) + 
"%";
+
+                                else if(value == "0 auto")
+                                       calculatedSelector = "initial";
+
+                               //TODO css vars
+                       }
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexBasis.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexBasis.as
new file mode 100644
index 0000000000..63f2addf07
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexBasis.as
@@ -0,0 +1,44 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class FlexBasis extends SingleStyleBase
+       {
+               public function FlexBasis()
+               {
+                       super("basis", "flex-basis");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                               var isNum:Boolean = parseFloat(value) == value;
+                               var isInt:Boolean = int(value) == value;
+                               if(isNum && !isInt)
+                                       calculatedRuleValue = (value * 100) + 
"%";
+
+                                else if(value == "0 auto")
+                                       calculatedSelector = "initial";
+
+                               //TODO css vars
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexDirection.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexDirection.as
new file mode 100644
index 0000000000..7742cd1aa0
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexDirection.as
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class FlexDirection extends SingleStyleBase
+       {
+               public function FlexDirection()
+               {
+                       super("flex", "flex-direction");
+               }
+
+               override public function set value(value:*):void
+               {
+                       
assert(["row","row-reverse","column","column-reverse"].indexOf(value) >= 0, 
"Invalid value for flex-direction: " + value);
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
new file mode 100644
index 0000000000..be46188884
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexGrow.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class FlexGrow extends SingleStyleBase
+       {
+               public function FlexGrow()
+               {
+                       super("grow", "flex-grow");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // For now we're assuming that flex-grow is only a 
number, but it can also be "initial" or "inherit"
+                       assert(parseFloat(value) == value && parseInt(value, 
10) >= 0, "Invalid value for flex-grow: " + value);
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
new file mode 100644
index 0000000000..6e5f26316b
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexShrink.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class FlexShrink extends SingleStyleBase
+       {
+               public function FlexShrink()
+               {
+                       super("shrink", "flex-shrink");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // For now we're assuming that flex-shrink is only a 
number, but it can also be "initial" or "inherit"
+                       assert(parseFloat(value) == value && parseInt(value, 
10) >= 0, "Invalid value for flex-shrink: " + value);
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexWrap.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexWrap.as
new file mode 100644
index 0000000000..36bc4365ee
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/FlexWrap.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class FlexWrap extends SingleStyleBase
+       {
+               public function FlexWrap()
+               {
+                       super("wrap", "flex-wrap");
+               }
+
+               override public function set value(value:*):void
+               {
+                       assert(["nowrap","wrap","wrap-reverse"].indexOf(value) 
>= 0, "Invalid value for flex-wrap: " + value);
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
similarity index 50%
copy from 
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
copy to 
frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
index 8eb3cfbdac..8d82ea2707 100644
--- 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Gap.as
@@ -16,56 +16,39 @@
 //  limitations under the License.
 //
 
////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.style.stylebeads.layout
+package org.apache.royale.style.stylebeads.flexgrid
 {
        import org.apache.royale.style.stylebeads.SingleStyleBase;
        import org.apache.royale.debugging.assert;
        import org.apache.royale.style.util.ThemeManager;
        import org.apache.royale.style.util.CSSUnit;
 
-       public class InsetBase extends SingleStyleBase
+       public class Gap extends SingleStyleBase
        {
-               public function InsetBase(selectorPrefix:String, 
rulePrefix:String)
+               public function Gap(selectorPrefix:String="gap", 
rulePrefix:String="gap")
                {
                        super(selectorPrefix, rulePrefix);
                }
-               public var unit:String = CSSUnit.PX;
-               protected var pixelValue:Number;
-               private var savedPrefix:String;
+
+               public var unit:String = "px";
+
                override public function set value(value:*):void
                {
-                       var isNum:Boolean = parseFloat(value) == value;
-                       var isInt:Boolean = parseInt(value, 10) == value;
-                       var parseNum:Number = parseFloat(value);
-                       var isNegative:Boolean = parseNum < 0;
-                       if(isNegative)
-                       {
-                               if(!savedPrefix)
-                                       savedPrefix = _selectorPrefix;
-                               _selectorPrefix = "-" + savedPrefix;
-                       }
-                       
-                       if(isInt)
+                       _value = value;
+                       // TODO validate aspect before setting
+                       var ruleProp:* = value;
+                       if(parseInt(value, 10) == value)
                        {
-                               pixelValue = 
ThemeManager.instance.activeTheme.spacing * value;
-                               calculatedSelector = "" + Math.abs(value);
+                               assert(value >= 0, "Invalid value for gap: " + 
value);
+                               var pixelValue:Number = 
ThemeManager.instance.activeTheme.spacing * value;
+                               calculatedSelector = "" + value;
                                calculatedRuleValue = 
CSSUnit.convert(pixelValue, CSSUnit.PX, unit) + unit;
                        }
-                       else if(isNum)
-                       {
-                               calculatedSelector = "p" + Math.abs(value);
-                               calculatedRuleValue = (value * 100) + "%";
-                       }
                        else
                        {
-                               calculatedSelector = sanitizeSelector(value);
-                               calculatedRuleValue = value;
+                               calculatedRuleValue = calculatedSelector = 
value;
                        }
-                       // 
assert(["inline","block","inline-block","flow-root","flex","inline-flex","grid","inline-grid","contents","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","list-item","none"].indexOf(value)
 >= 0, "Invalid value for display: " + value);
-                       _value = value;
-                       calculatedRuleValue = calculatedSelector = value;
-                       if(value == "none")
-                               calculatedSelector = "hidden";
+                       
                }
        }
 }
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoColumns.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoColumns.as
new file mode 100644
index 0000000000..7139c78c9d
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoColumns.as
@@ -0,0 +1,66 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class GridAutoColumns extends SingleStyleBase
+       {
+               public function GridAutoColumns()
+               {
+                       super("auto-cols", "grid-auto-columns");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       _value = value;
+                       var ruleValue:String = value;
+                       var selectorValue:String = value;
+                       switch(value)
+                       {
+                               case "auto":
+                                       break;
+                               case "min":
+                                       ruleValue = "min-content";
+                                       break;
+                               case "min-content":
+                                       selectorValue = "min";
+                                       break;
+                               case "max":
+                                       ruleValue = "max-content";
+                                       break;
+                               case "max-content":
+                                       selectorValue = "max";
+                                       break;
+                               case "fr":
+                                       ruleValue = "minmax(0, 1fr)";
+                                       break;
+                               default:
+                                       break;
+                       }
+                       //TODO more validating and css vars
+                       assert(selectorValue.indexOf("--") != 0, "css variables 
for grid-auto-columns not yet supported: " + value);
+                       calculatedRuleValue = ruleValue;
+                       calculatedSelector = selectorValue;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoFlow.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoFlow.as
new file mode 100644
index 0000000000..1b4db3bfbd
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoFlow.as
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class GridAutoFlow extends SingleStyleBase
+       {
+               public function GridAutoFlow()
+               {
+                       super("grid-flow", "grid-auto-flow");
+               }
+               private function toSelector(value:String):String
+               {
+                       return value.replace(" ", "-");
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["row","column","dense","row dense","column 
dense"].indexOf(value) >= 0, "Invalid value for grid-auto-flow: " + value);
+                       calculatedRuleValue = _value = value;
+                       calculatedSelector = toSelector(value);
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoRows.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoRows.as
new file mode 100644
index 0000000000..9054ad1161
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridAutoRows.as
@@ -0,0 +1,66 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class GridAutoRows extends SingleStyleBase
+       {
+               public function GridAutoRows()
+               {
+                       super("auto-rows", "grid-auto-rows");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       _value = value;
+                       var ruleValue:String = value;
+                       var selectorValue:String = value;
+                       switch(value)
+                       {
+                               case "auto":
+                                       break;
+                               case "min":
+                                       ruleValue = "min-content";
+                                       break;
+                               case "min-content":
+                                       selectorValue = "min";
+                                       break;
+                               case "max":
+                                       ruleValue = "max-content";
+                                       break;
+                               case "max-content":
+                                       selectorValue = "max";
+                                       break;
+                               case "fr":
+                                       ruleValue = "minmax(0, 1fr)";
+                                       break;
+                               default:
+                                       break;
+                       }
+                       //TODO more validating and css vars
+                       assert(selectorValue.indexOf("--") != 0, "css variables 
for grid-auto-rows not yet supported: " + value);
+                       calculatedRuleValue = ruleValue;
+                       calculatedSelector = selectorValue;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumn.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumn.as
new file mode 100644
index 0000000000..eb9b406a65
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumn.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class GridColumn extends SingleStyleBase
+       {
+               public function GridColumn(selectorPrefix:String = "col", 
rulePrefix:String = "grid-column")
+               {
+                       super(selectorPrefix, rulePrefix);
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       // https://tailwindcss.com/docs/grid-column
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnEnd.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnEnd.as
new file mode 100644
index 0000000000..484e51a406
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnEnd.as
@@ -0,0 +1,28 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       public class GridColumnEnd extends GridColumn
+       {
+               public function GridColumnEnd()
+               {
+                       super("col-end", "grid-column-end");
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnStart.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnStart.as
new file mode 100644
index 0000000000..c5f88e8942
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridColumnStart.as
@@ -0,0 +1,28 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       public class GridColumnStart extends GridColumn
+       {
+               public function GridColumnStart()
+               {
+                       super("col-start", "grid-column-start");
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRow.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRow.as
new file mode 100644
index 0000000000..acf99d9131
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRow.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class GridRow extends SingleStyleBase
+       {
+               public function GridRow(selectorPrefix:String = "row", 
rulePrefix:String = "grid-row")
+               {
+                       super(selectorPrefix, rulePrefix);
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       // https://tailwindcss.com/docs/grid-row
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowEnd.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowEnd.as
new file mode 100644
index 0000000000..5dbdac51f1
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowEnd.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class GridRowEnd extends GridRow
+       {
+               public function GridRowEnd()
+               {
+                       super("row-end", "grid-row-end");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       // https://tailwindcss.com/docs/grid-row
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowStart.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowStart.as
new file mode 100644
index 0000000000..12fc1f4e3b
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridRowStart.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+
+       public class GridRowStart extends GridRow
+       {
+               public function GridRowStart()
+               {
+                       super("row-start", "grid-row-start");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       // https://tailwindcss.com/docs/grid-row
+                       calculatedRuleValue = calculatedSelector = _value = 
value;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateColumns.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateColumns.as
new file mode 100644
index 0000000000..d9f99ff8b3
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateColumns.as
@@ -0,0 +1,48 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class GridTemplateColumns extends SingleStyleBase
+       {
+               public function GridTemplateColumns()
+               {
+                       super("grid-cols", "grid-template-columns");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       var ruleValue:String = value;
+                       var selectorValue:String = value;
+                       var isInt:Boolean = int(value) == value;
+                       if(isInt)
+                       {
+                               ruleValue = "repeat(" + value + ", minmax(0, 
1fr))";
+                       }
+                       assert(selectorValue.indexOf("--") != 0, "css variables 
for grid-template-columns not yet supported: " + value);
+                       assert(selectorValue.indexOf(" ") == -1, "values with 
spaces for grid-template-columns not yet supported: " + value);
+                       calculatedRuleValue = ruleValue;
+                       calculatedSelector = selectorValue;
+                       _value = value;
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateRows.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateRows.as
new file mode 100644
index 0000000000..7db9fb182c
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/GridTemplateRows.as
@@ -0,0 +1,48 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class GridTemplateRows extends SingleStyleBase
+       {
+               public function GridTemplateRows()
+               {
+                       super("grid-rows", "grid-template-rows");
+               }
+
+               override public function set value(value:*):void
+               {
+                       // TODO validate aspect before setting
+                       var ruleValue:String = value;
+                       var selectorValue:String = value;
+                       var isInt:Boolean = int(value) == value;
+                       if(isInt)
+                       {
+                               ruleValue = "repeat(" + value + ", minmax(0, 
1fr))";
+                       }
+                       assert(selectorValue.indexOf("--") != 0, "css variables 
for grid-template-rows not yet supported: " + value);
+                       assert(selectorValue.indexOf(" ") == -1, "values with 
spaces for grid-template-rows not yet supported: " + value);
+                       calculatedRuleValue = ruleValue;
+                       calculatedSelector = selectorValue;
+                       _value = value;
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyContent.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyContent.as
new file mode 100644
index 0000000000..3a1ce200dc
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyContent.as
@@ -0,0 +1,64 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class JustifyContent extends SingleStyleBase
+       {
+               public function JustifyContent()
+               {
+                       super("justify", "justify-content");
+               }
+
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               private function getAfterDash(value:String):String
+               {
+                       var dashIndex:int = value.indexOf("-");
+                       if(dashIndex >= 0)
+                               return value.substring(dashIndex + 1);
+                       return value;
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["center","center safe","safe 
center","start","flex-end","flex-end safe","safe 
flex-end","space-between","space-around","space-evenly","baseline","stretch","normal"].indexOf(value)
 >= 0, "Invalid value for place-content: " + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedRuleValue = vals[0];
+                       calculatedSelector = getAfterDash(vals[0]);
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyItems.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyItems.as
new file mode 100644
index 0000000000..cd1cfda564
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifyItems.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class JustifyItems extends SingleStyleBase
+       {
+               public function JustifyItems()
+               {
+                       super("justify-items", "justify-items");
+               }
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+
+               override public function set value(value:*):void
+               {
+                       assert(["start","end","safe end","end 
safe","center","safe center","center safe","stretch","normal"].indexOf(value) 
>= 0, "Invalid value for justify-items: " + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedSelector = calculatedRuleValue = vals[0];
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifySelf.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifySelf.as
new file mode 100644
index 0000000000..5c4a2e5071
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/JustifySelf.as
@@ -0,0 +1,57 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class JustifySelf extends SingleStyleBase
+       {
+               public function JustifySelf()
+               {
+                       super("justify-self", "justify-self");
+               }
+
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+
+               override public function set value(value:*):void
+               {
+                       assert(["start","end","safe end","end 
safe","center","safe center","center safe","stretch","auto"].indexOf(value) >= 
0, "Invalid value for justify-self: " + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedSelector = calculatedRuleValue = vals[0];
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Order.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Order.as
new file mode 100644
index 0000000000..7215f7807e
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/Order.as
@@ -0,0 +1,69 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class Order extends SingleStyleBase
+       {
+               public function Order()
+               {
+                       super("order", "order");
+               }
+               private var savedPrefix:String;
+               override public function set value(value:*):void
+               {
+                       var isNum:Boolean = parseFloat(value) == value;
+                       assert(isNum || value.indexOf("--") != 0, "css 
variables for order not yet supported: " + value);
+                       assert(isNum || value == "first" || value == "last" || 
value == "none", "Invalid value for order: " + value);
+                       _value = value;
+                       var ruleValue:String = value;
+                       var selectorValue:String = value;
+                       var negative:Boolean = false;
+                       if(isNum && value < 0)
+                       {
+                               negative = true;
+                               if(!savedPrefix)
+                                       savedPrefix = _selectorPrefix;
+                               
+                               _selectorPrefix = "-" + savedPrefix;
+                               selectorValue = "" + (-value);
+                       }
+                       switch(value)
+                       {
+                               case "first":
+                                       ruleValue = "-9999";
+                                       break;
+                               case "last":
+                                       ruleValue = "9999";
+                                       break;
+                               case "none":
+                                       ruleValue = "0";
+                                       break;
+                               default:
+                                       break;
+                       }
+                       // TODO validate aspect before setting
+                       calculatedRuleValue = ruleValue;
+                       calculatedSelector = selectorValue;
+                       
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceContent.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceContent.as
new file mode 100644
index 0000000000..ffe1d6c1cb
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceContent.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class PlaceContent extends SingleStyleBase
+       {
+               public function PlaceContent()
+               {
+                       super("place-content", "place-content");
+               }
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["center","center safe","safe 
center","start","end","end safe","safe 
end","space-between","space-around","space-evenly","baseline","stretch"].indexOf(value)
 >= 0, "Invalid value for place-content: " + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedSelector = calculatedRuleValue = vals[0];
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceItems.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceItems.as
new file mode 100644
index 0000000000..2d3be36e1d
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceItems.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class PlaceItems extends SingleStyleBase
+       {
+               public function PlaceItems()
+               {
+                       super("place-items", "place-items");
+               }
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["center","center safe","safe 
center","start","end","end safe","safe 
end","baseline","stretch"].indexOf(value) >= 0, "Invalid value for place-items: 
" + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedSelector = calculatedRuleValue = vals[0];
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceSelf.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceSelf.as
new file mode 100644
index 0000000000..266dc6b3b5
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/PlaceSelf.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+       import org.apache.royale.style.stylebeads.SingleStyleBase;
+       import org.apache.royale.debugging.assert;
+
+       public class PlaceSelf extends SingleStyleBase
+       {
+               public function PlaceSelf()
+               {
+                       super("place-self", "place-self");
+               }
+               private function normalizeSafeKeyword(value:String):Array
+               {
+                       COMPILE::JS
+                       {
+                               if (value.indexOf("safe") >= 0)
+                               {
+                                       value = value.replace("safe", 
"").trim();
+                                       return [value,"safe"];
+                               }
+                       }
+                       return [value];
+               }
+               override public function set value(value:*):void
+               {
+                       assert(["auto","center","center safe","safe 
center","start","end","end safe","safe 
end","baseline","stretch"].indexOf(value) >= 0, "Invalid value for place-self: 
" + value);
+                       _value = value;
+                       var vals:Array = normalizeSafeKeyword(value);
+                       calculatedSelector = calculatedRuleValue = vals[0];
+                       if(vals.length > 1)
+                       {
+                               calculatedRuleValue = vals[1] + " " + vals[0];
+                               calculatedSelector += "-" + vals[1];
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/RowGap.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/RowGap.as
new file mode 100644
index 0000000000..aa27282750
--- /dev/null
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/flexgrid/RowGap.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.style.stylebeads.flexgrid
+{
+
+       public class RowGap extends Gap
+       {
+               public function RowGap()
+               {
+                       super("gap-y", "row-gap");
+               }
+       }
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
index 8eb3cfbdac..09b06fba02 100644
--- 
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
+++ 
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/layout/InsetBase.as
@@ -35,7 +35,7 @@ package org.apache.royale.style.stylebeads.layout
                override public function set value(value:*):void
                {
                        var isNum:Boolean = parseFloat(value) == value;
-                       var isInt:Boolean = parseInt(value, 10) == value;
+                       var isInt:Boolean = int(value) == value;
                        var parseNum:Number = parseFloat(value);
                        var isNegative:Boolean = parseNum < 0;
                        if(isNegative)

Reply via email to