You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by bi...@apache.org on 2018/04/28 06:05:11 UTC

[royale-asjs] 02/02: Temporarily adding the theme files into the project.

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

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

commit 7118686d3ff41cca89d342b24a3e275a110a93b5
Author: Om Muppirala <bi...@apache.org>
AuthorDate: Fri Apr 27 23:04:47 2018 -0700

    Temporarily adding the theme files into the project.
---
 examples/royale/ECharts/asconfig.json              |  11 +-
 examples/royale/ECharts/src/EchartsInJewelApp.mxml |  88 ++++++
 examples/royale/ECharts/src/PieChartExample.mxml   |   1 +
 .../royale/ECharts/src/assets/checkbox-tick.svg    |  19 ++
 examples/royale/ECharts/src/assets/close-icon.svg  |  19 ++
 .../ECharts/src/assets/radiobutton-circle.svg      |  19 ++
 .../royale/ECharts/src}/defaults.css               | 324 ++++++++-------------
 examples/royale/ECharts/src/svgs/JewelButton2.svg  |  44 +++
 examples/royale/ECharts/src/svgs/checkbox-tick.svg |  43 +++
 examples/royale/ECharts/src/svgs/jewel-button.svg  |  37 +++
 examples/royale/ECharts/template.html              |   7 +
 .../JewelTheme/src/main/resources/defaults.css     |  72 ++---
 .../JewelTheme/src/main/resources/defaults.css.map |   7 +
 pom.xml                                            |  64 ----
 14 files changed, 444 insertions(+), 311 deletions(-)

diff --git a/examples/royale/ECharts/asconfig.json b/examples/royale/ECharts/asconfig.json
index b28e121..0c33f4c 100644
--- a/examples/royale/ECharts/asconfig.json
+++ b/examples/royale/ECharts/asconfig.json
@@ -1,13 +1,16 @@
 {
+	"config": "royale",
 	"compilerOptions": {
 		"targets": [
 			"JSRoyale"
         ],
 		"source-map": false,
-		"html-template": "template.html"
+		"html-template": "template.html",
+		"library-path": [
+			"C:/Users/omuppirala/AppData/Roaming/npm/node_modules/@apache-royale/royale-js/royale-asjs/frameworks/themes/JewelTheme/target/JewelTheme.swc"
+		]
 	},
-	"files":
-	[
-		"src/PieChartExample.mxml"
+	"files": [
+		"src/EchartsInJewelApp.mxml"
 	]
 }
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/EchartsInJewelApp.mxml b/examples/royale/ECharts/src/EchartsInJewelApp.mxml
new file mode 100644
index 0000000..8c2c968
--- /dev/null
+++ b/examples/royale/ECharts/src/EchartsInJewelApp.mxml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:js="library://ns.apache.org/royale/express" 
+                   xmlns:ns2="echarts.*" xmlns:j="library://ns.apache.org/royale/jewel" xmlns:ns1="library://ns.apache.org/royale/basic"
+                   initialize="onAppInitialize(event)"
+				   >
+	<fx:Script>
+        <![CDATA[
+        [Bindable] private var xAxisData:Array;
+        [Bindable] private var salesData:Array;
+        [Bindable] private var profitData:Array;
+
+        private function onAppInitialize(event:Event):void
+        {
+            this.xAxisData = ["shirt","cardign","chiffon shirt","pants","heels","socks"];
+            this.salesData = [5, 20, 36, 10, 10, 20];
+            this.profitData = [15, 12, 45, 8, 9, 54];
+        }
+
+        private function changeHandler(event:Event):void {
+               //selected.text = "Selected: " + list.selectedItem;
+           }
+
+        ]]>
+    </fx:Script>
+	<js:initialView>
+        <js:View>
+            <js:beads>
+                <j:HorizontalLayoutWithPaddingAndGap gap="10"/>
+            </js:beads>
+            <j:List id="list" width="200" height="1024"  >
+                <j:dataProvider>
+                    <js:ArrayList id="avengersCharacters" source="[Line Chart, Bar Chart, Pie Chart, Radial Chart, Donut Chart]" />
+                </j:dataProvider>
+            </j:List>
+        	<ns1:Accordion width="250" height="320" selectedIndex="0">
+        		<js:dataProvider>
+                    <fx:Array>
+                        <js:Container id="panel1">
+                        	<js:beads>
+                        		<js:TitleBarModel title="Panel 1" />
+                        		<js:VerticalLayout />
+                        	</js:beads>
+                        	<js:Label text="Top Line 1" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Middle Line 1" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Last Line 1" />
+                        </js:Container>
+                        <js:Container id="panel2">
+                        	<js:beads>
+                        		<js:TitleBarModel title="Panel 2" />
+                        		<js:VerticalLayout />
+                        	</js:beads>
+                        	<js:Label text="Top Line 2" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Middle Line 2" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Last Line 2" />
+                        </js:Container>
+                        <js:Container id="panel3">
+                        	<js:beads>
+                        		<js:TitleBarModel title="Panel 3" />
+                        		<js:VerticalLayout />
+                        	</js:beads>
+                        	<js:Label text="Top Line 3" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Middle Line 3" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Last Line 3" />
+                        </js:Container>
+                        <js:Container id="panel4">
+                        	<js:beads>
+                        		<js:TitleBarModel title="Panel 4" />
+                        		<js:VerticalLayout />
+                        	</js:beads>
+                        	<js:Label text="Top Line 4" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Middle Line 4" />
+                        	<js:Spacer height="20" />
+                        	<js:Label text="Last Line 4" />
+                        </js:Container>
+                    </fx:Array>
+                </js:dataProvider>
+        	</ns1:Accordion>
+        </js:View>
+	</js:initialView>
+</js:Application>
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/PieChartExample.mxml b/examples/royale/ECharts/src/PieChartExample.mxml
index 24c65bd..a65a013 100644
--- a/examples/royale/ECharts/src/PieChartExample.mxml
+++ b/examples/royale/ECharts/src/PieChartExample.mxml
@@ -2,6 +2,7 @@
 <js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
 				   xmlns:js="library://ns.apache.org/royale/express" 
                    xmlns:ns2="echarts.*"
+                   xmlns:j="library://ns.apache.org/royale/jewel"
                    initialize="onAppInitialize(event)"
 				   >
 	<fx:Script>
diff --git a/examples/royale/ECharts/src/assets/checkbox-tick.svg b/examples/royale/ECharts/src/assets/checkbox-tick.svg
new file mode 100644
index 0000000..f95ec08
--- /dev/null
+++ b/examples/royale/ECharts/src/assets/checkbox-tick.svg
@@ -0,0 +1,19 @@
+<!--
+
+  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.
+
+-->
+<svg viewBox="0 0 16 13" version="1.1" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-763, -290)"><g transform="translate(760, 285)"><g><polygon points="3 13 9 18 19 7 16 5 9 13 6 10"></polygon></g></g></g></svg>
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/assets/close-icon.svg b/examples/royale/ECharts/src/assets/close-icon.svg
new file mode 100644
index 0000000..1afc5aa
--- /dev/null
+++ b/examples/royale/ECharts/src/assets/close-icon.svg
@@ -0,0 +1,19 @@
+<!--
+
+  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.
+
+-->
+<svg viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-829, -278)"><g transform="translate(825, 274)"><path d="M15.9921875,18 C15.8133104,18 11,13.05896 11,13.05896 C11,13.05896 6.20438984,18 6.0255127,18 C5.84663556,18 4,16.2295363 4,16.0506592 C4,15.871782 9.07348633,11 9.07348633,11 C9.07348633,11 4,6.21037128 4,6.03149414 C4,5.852617 5.84663556,4.05688477 6.0255127,4.05688477 C6.20438984,4.05688477 11,9.06176758 11,9.06176758 C11,9.06176758 [...]
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/assets/radiobutton-circle.svg b/examples/royale/ECharts/src/assets/radiobutton-circle.svg
new file mode 100644
index 0000000..07beb17
--- /dev/null
+++ b/examples/royale/ECharts/src/assets/radiobutton-circle.svg
@@ -0,0 +1,19 @@
+<!--
+
+  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.
+
+-->
+<svg viewBox="0 0 12 12" version="1.1" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-616, -350)"><g transform="translate(611, 345)"><g><circle cx="11" cy="11" r="6"></circle></g></g></g></svg>
\ No newline at end of file
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css b/examples/royale/ECharts/src/defaults.css
similarity index 82%
copy from frameworks/themes/JewelTheme/src/main/resources/defaults.css
copy to examples/royale/ECharts/src/defaults.css
index fb9d647..8abebcf 100644
--- a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
+++ b/examples/royale/ECharts/src/defaults.css
@@ -73,9 +73,9 @@ div {
   min-width: 420px;
   min-height: 240px;
   border: 0px solid;
-  border-radius: 3px;
-  box-shadow: 0px 20px 65px 0px rgba(0, 0, 0, 0.8);
   background-color: white;
+  box-shadow: 0px 20px 65px 0px rgba(0, 0, 0, 0.8);
+  border-radius: 3px;
 }
 .jewel.alert .jewel.titlebar {
   padding: 20px 20px 0px 20px;
@@ -101,13 +101,10 @@ div {
   font-weight: normal;
 }
 .jewel.alert .jewel.controlbar {
-  border-top: 1px solid #b3b3b3;
   background: linear-gradient(#e6e6e6, #cccccc);
+  border-top: 1px solid #b3b3b3;
   box-shadow: inset 0 1px 0 white;
-  border-top-left-radius: 0px;
-  border-top-right-radius: 0px;
-  border-bottom-left-radius: 3px;
-  border-bottom-right-radius: 3px;
+  border-radius: 0px 0px 3px 3px;
   padding: 20px;
   position: absolute;
   bottom: 0;
@@ -143,13 +140,19 @@ j|Alert {
   cursor: pointer;
   display: inline-block;
   margin: 0;
-  padding: 8px;
-  min-width: 34px;
+  padding: 10px 16px;
+  min-width: 74px;
   min-height: 34px;
   background: linear-gradient(#e6e6e6, #cccccc);
   border: 1px solid #b3b3b3;
   box-shadow: inset 0 1px 0 white;
   border-radius: 3px;
+  font-family: "Lato", sans-serif;
+  font-size: 14px;
+  font-weight: bold;
+  color: #808080;
+  text-transform: uppercase;
+  text-decoration: none;
 }
 .jewel.button:hover, .jewel.button:hover:focus {
   background: linear-gradient(#d9d9d9, silver);
@@ -170,19 +173,29 @@ j|Alert {
   background: #f3f3f3;
   border: 1px solid #d9d9d9;
   box-shadow: none;
+  color: silver;
+  font-weight: normal;
+  text-shadow: unset;
 }
 
 .jewel.button.primary {
   cursor: pointer;
   display: inline-block;
   margin: 0;
-  padding: 8px;
-  min-width: 34px;
+  padding: 10px 16px;
+  min-width: 74px;
   min-height: 34px;
   background: linear-gradient(#54b7f3, #24a3ef);
   border: 1px solid #0f88d1;
   box-shadow: inset 0 1px 0 #9bd5f8;
   border-radius: 3px;
+  font-family: "Lato", sans-serif;
+  font-size: 14px;
+  font-weight: bold;
+  color: #FFFFFF;
+  text-transform: uppercase;
+  text-decoration: none;
+  text-shadow: 0 -1px 0 rgba(10, 90, 138, 0.7);
 }
 .jewel.button.primary:hover, .jewel.button.primary:hover:focus {
   background: linear-gradient(#3CADF1, #1198e9);
@@ -203,6 +216,9 @@ j|Alert {
   background: #f3f3f3;
   border: 1px solid #d9d9d9;
   box-shadow: none;
+  color: silver;
+  font-weight: normal;
+  text-shadow: unset;
 }
 
 .jewel.checkbox {
@@ -225,8 +241,8 @@ j|Alert {
   width: 22px;
   height: 22px;
   line-height: 22px;
-  border: 1px solid #b3b3b3;
   background: linear-gradient(white, #f3f3f3);
+  border: 1px solid #b3b3b3;
   border-radius: 3px;
 }
 .jewel.checkbox input:checked, .jewel.checkbox input:checked:active {
@@ -249,29 +265,71 @@ j|Alert {
 }
 .jewel.checkbox input[disabled] {
   cursor: unset;
-  border: 1px solid #d9d9d9;
   background: #f3f3f3;
+  border: 1px solid #d9d9d9;
 }
 .jewel.checkbox input[disabled] + span {
   cursor: unset;
   color: silver;
 }
 .jewel.checkbox input[disabled]:checked {
-  border: 1px solid #d9d9d9;
   background: url("data:image/svg+xml;utf8,<svg viewBox='0 0 16 13' version='1.1' xmlns='http://www.w3.org/2000/svg'><g transform='translate(-763, -290)'><g transform='translate(760, 285)'><polygon fill='%23cccccc' points='3 13 9 18 19 7 16 5 9 13 6 10'></polygon></g></g></svg>"), #f3f3f3;
   background-size: 90%;
   background-position: center;
   background-repeat: no-repeat;
   background-attachment: fixed;
+  border: 1px solid #d9d9d9;
 }
 .jewel.checkbox span {
   cursor: pointer;
   position: relative;
-  vertical-align: top;
   margin: 0;
   padding-left: 6px;
-  font-size: 16px;
+  vertical-align: top;
   line-height: 22px;
+  font-size: 16px;
+}
+
+.jewel.dropdownlist {
+  cursor: pointer;
+  display: inline-block;
+  margin: 0;
+  padding: 10px 16px;
+  min-width: 74px;
+  min-height: 34px;
+  background: linear-gradient(#e6e6e6, #cccccc);
+  border: 1px solid #b3b3b3;
+  box-shadow: inset 0 1px 0 white;
+  border-radius: 3px;
+  font-family: "Lato", sans-serif;
+  font-size: 14px;
+  font-weight: bold;
+  color: #808080;
+  text-transform: uppercase;
+  text-decoration: none;
+}
+.jewel.dropdownlist:hover, .jewel.dropdownlist:hover:focus {
+  background: linear-gradient(#d9d9d9, silver);
+  border: 1px solid #a6a6a6;
+}
+.jewel.dropdownlist:active, .jewel.dropdownlist:active:focus {
+  background: linear-gradient(silver, #a6a6a6);
+  border: 1px solid #8d8d8d;
+  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
+}
+.jewel.dropdownlist:focus {
+  outline: none;
+  border: 1px solid #b3b3b3;
+  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
+}
+.jewel.dropdownlist[disabled] {
+  cursor: unset;
+  background: #f3f3f3;
+  border: 1px solid #d9d9d9;
+  box-shadow: none;
+  color: silver;
+  font-weight: normal;
+  text-shadow: unset;
 }
 
 .jewel.item {
@@ -282,11 +340,11 @@ j|Alert {
 }
 .jewel.item:hover {
   color: #FFFFFF;
-  background: #24a3ef;
+  background: #3CADF1;
 }
 .jewel.item:active, .jewel.item.selected {
   color: #FFFFFF;
-  background: #0f88d1;
+  background: #24a3ef;
 }
 
 .jewel.label {
@@ -321,8 +379,8 @@ j|Alert {
   width: 22px;
   height: 22px;
   line-height: 22px;
-  border: 1px solid #b3b3b3;
   background: linear-gradient(white, #f3f3f3);
+  border: 1px solid #b3b3b3;
   border-radius: 50%;
 }
 .jewel.radiobutton input:checked, .jewel.radiobutton input:checked:active {
@@ -345,29 +403,29 @@ j|Alert {
 }
 .jewel.radiobutton input[disabled] {
   cursor: unset;
-  border: 1px solid #d9d9d9;
   background: #f3f3f3;
+  border: 1px solid #d9d9d9;
 }
 .jewel.radiobutton input[disabled] + span {
   cursor: unset;
   color: silver;
 }
 .jewel.radiobutton input[disabled]:checked {
-  border: 1px solid #d9d9d9;
   background: url("data:image/svg+xml;utf8,<svg viewBox='0 0 12 12' version='1.1' xmlns='http://www.w3.org/2000/svg'><g transform='translate(-616, -350)'><g transform='translate(611, 345)'><circle fill='%23cccccc' cx='11' cy='11' r='6'></circle></g></g></svg>"), #f3f3f3;
   background-size: 60%;
   background-position: center;
   background-repeat: no-repeat;
   background-attachment: fixed;
+  border: 1px solid #d9d9d9;
 }
 .jewel.radiobutton span {
   cursor: pointer;
   position: relative;
-  vertical-align: top;
   margin: 0;
   padding-left: 6px;
-  font-size: 16px;
+  vertical-align: top;
   line-height: 22px;
+  font-size: 16px;
 }
 
 .jewel.slider {
@@ -378,21 +436,21 @@ j|Alert {
   background: none;
 }
 .jewel.slider input {
-  outline: 0;
   cursor: pointer;
+  user-select: none;
   -webkit-appearance: none;
   -moz-appearance: none;
   -o-appearance: none;
   appearance: none;
+  outline: 0;
+  align-self: center;
+  z-index: 1;
   margin: 0 20px;
   padding: 0;
   width: calc(100% - 40px);
   height: 6px;
   background: transparent;
-  user-select: none;
   color: #3CADF1;
-  align-self: center;
-  z-index: 1;
 }
 .jewel.slider input::-webkit-slider-runnable-track {
   background: transparent;
@@ -410,7 +468,7 @@ j|Alert {
   height: 18px;
   background: linear-gradient(#4ab3f2, #2ea7f0);
   border: 1px solid #0f88d1;
-  box-shadow: inset 0 1px 0 #9bd5f8;
+  box-shadow: inset 0 1px 0 #9bd5f8, 0 0 0 1px rgba(255, 255, 255, 0.3);
   border-radius: 50%;
 }
 .jewel.slider input:active::-webkit-slider-thumb, .jewel.slider input:active::-moz-range-thumb {
@@ -423,19 +481,22 @@ j|Alert {
   cursor: unset;
 }
 .jewel.slider input[disabled]::-webkit-slider-thumb, .jewel.slider input[disabled]::-moz-range-thumb {
-  background: #d9d9d9;
-  border: 1px solid #b3b3b3;
+  background: #f3f3f3;
+  border: 1px solid silver;
+  box-shadow: none;
 }
 .jewel.slider input[disabled]:active::-webkit-slider-thumb, .jewel.slider input[disabled]:active::-moz-range-thumb {
   transform: scale(1);
 }
 .jewel.slider input[disabled] + .slider-track-container > .slider-track-fill {
-  border: 1px solid #b3b3b3;
-  background: #d9d9d9;
+  background: #e6e6e6;
+  border: 1px solid silver;
+  box-shadow: none;
 }
 .jewel.slider input[disabled] + .slider-track-container > .slider-track {
-  border: 1px solid #b3b3b3;
-  background: #d9d9d9;
+  background: #f3f3f3;
+  border: 1px solid #d9d9d9;
+  box-shadow: none;
 }
 
 .slider-track-container {
@@ -467,101 +528,16 @@ j|Alert {
   position: relative;
   flex: 0;
   padding: 0;
-  background: linear-gradient(#e6e6e6, #cccccc);
+  background: linear-gradient(white, #e6e6e6);
   border: 1px solid #b3b3b3;
   border-radius: 3px;
 }
 
-.jewel.textbutton {
-  cursor: pointer;
-  display: inline-block;
-  margin: 0;
-  padding: 10px 16px;
-  min-width: 74px;
-  min-height: 34px;
-  background: linear-gradient(#e6e6e6, #cccccc);
-  border: 1px solid #b3b3b3;
-  box-shadow: inset 0 1px 0 white;
-  border-radius: 3px;
-  font-family: "Lato", sans-serif;
-  font-size: 14px;
-  font-weight: bold;
-  color: #808080;
-  text-transform: uppercase;
-  text-decoration: none;
-}
-.jewel.textbutton:hover, .jewel.textbutton:hover:focus {
-  background: linear-gradient(#d9d9d9, silver);
-  border: 1px solid #a6a6a6;
-}
-.jewel.textbutton:active, .jewel.textbutton:active:focus {
-  background: linear-gradient(silver, #a6a6a6);
-  border: 1px solid #8d8d8d;
-  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
-}
-.jewel.textbutton:focus {
-  outline: none;
-  border: 1px solid #b3b3b3;
-  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
-}
-.jewel.textbutton[disabled] {
-  cursor: unset;
-  background: #f3f3f3;
-  border: 1px solid #d9d9d9;
-  box-shadow: none;
-  color: silver;
-  font-weight: normal;
-  text-shadow: unset;
-}
-
-.jewel.textbutton.primary {
-  cursor: pointer;
-  display: inline-block;
-  margin: 0;
-  padding: 10px 16px;
-  min-width: 74px;
-  min-height: 34px;
-  background: linear-gradient(#54b7f3, #24a3ef);
-  border: 1px solid #0f88d1;
-  box-shadow: inset 0 1px 0 #9bd5f8;
-  border-radius: 3px;
-  font-family: "Lato", sans-serif;
-  font-size: 14px;
-  font-weight: bold;
-  color: #FFFFFF;
-  text-transform: uppercase;
-  text-decoration: none;
-  text-shadow: 0 -1px 0 rgba(10, 90, 138, 0.7);
-}
-.jewel.textbutton.primary:hover, .jewel.textbutton.primary:hover:focus {
-  background: linear-gradient(#3CADF1, #1198e9);
-  border: 1px solid #0d79ba;
-}
-.jewel.textbutton.primary:active, .jewel.textbutton.primary:active:focus {
-  background: linear-gradient(#1198e9, #0d79ba);
-  border: 1px solid #0a5a8a;
-  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
-}
-.jewel.textbutton.primary:focus {
-  outline: none;
-  border: 1px solid #0f88d1;
-  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
-}
-.jewel.textbutton.primary[disabled] {
-  cursor: unset;
-  background: #f3f3f3;
-  border: 1px solid #d9d9d9;
-  box-shadow: none;
-  color: silver;
-  font-weight: normal;
-  text-shadow: unset;
-}
-
-.jewel.textfield {
+.jewel.textinput {
   position: relative;
   display: inline-flex;
 }
-.jewel.textfield input {
+.jewel.textinput input {
   -webkit-appearance: none;
   -moz-appearance: none;
   -o-appearance: none;
@@ -584,20 +560,20 @@ j|Alert {
   transition-duration: 0.3s;
   transition-timing-function: easein;
 }
-.jewel.textfield input:focus {
+.jewel.textinput input:focus {
   border: 1px solid #0f88d1;
 }
-.jewel.textfield input::placeholder {
+.jewel.textinput input::placeholder {
   color: #a6a6a6;
 }
-.jewel.textfield input[disabled] {
+.jewel.textinput input[disabled] {
   cursor: unset;
-  border: 1px solid #d9d9d9;
   background: #f3f3f3;
+  border: 1px solid #d9d9d9;
   box-shadow: none;
   color: silver;
 }
-.jewel.textfield input[disabled]::placeholder {
+.jewel.textinput input[disabled]::placeholder {
   color: silver;
 }
 
@@ -605,39 +581,6 @@ j|Alert {
   cursor: pointer;
   display: inline-block;
   margin: 0;
-  padding: 8px;
-  min-width: 34px;
-  min-height: 34px;
-  background: linear-gradient(#f16c42, #ed4812);
-  border: 1px solid #be390e;
-  box-shadow: inset 0 1px 0 #f6a389;
-  border-radius: 3px;
-}
-.jewel.button.secondary:hover, .jewel.button.secondary:hover:focus {
-  background: linear-gradient(#EF5A2A, #d64010);
-  border: 1px solid #a6320d;
-}
-.jewel.button.secondary:active, .jewel.button.secondary:active:focus {
-  background: linear-gradient(#d64010, #a6320d);
-  border: 1px solid #772409;
-  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
-}
-.jewel.button.secondary:focus {
-  outline: none;
-  border: 1px solid #be390e;
-  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
-}
-.jewel.button.secondary[disabled] {
-  cursor: unset;
-  background: #f3f3f3;
-  border: 1px solid #d9d9d9;
-  box-shadow: none;
-}
-
-.jewel.textbutton.secondary {
-  cursor: pointer;
-  display: inline-block;
-  margin: 0;
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
@@ -653,21 +596,21 @@ j|Alert {
   text-decoration: none;
   text-shadow: 0 -1px 0 rgba(119, 36, 9, 0.7);
 }
-.jewel.textbutton.secondary:hover, .jewel.textbutton.secondary:hover:focus {
+.jewel.button.secondary:hover, .jewel.button.secondary:hover:focus {
   background: linear-gradient(#EF5A2A, #d64010);
   border: 1px solid #a6320d;
 }
-.jewel.textbutton.secondary:active, .jewel.textbutton.secondary:active:focus {
+.jewel.button.secondary:active, .jewel.button.secondary:active:focus {
   background: linear-gradient(#d64010, #a6320d);
   border: 1px solid #772409;
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
-.jewel.textbutton.secondary:focus {
+.jewel.button.secondary:focus {
   outline: none;
   border: 1px solid #be390e;
   box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
 }
-.jewel.textbutton.secondary[disabled] {
+.jewel.button.secondary[disabled] {
   cursor: unset;
   background: #f3f3f3;
   border: 1px solid #d9d9d9;
@@ -677,40 +620,7 @@ j|Alert {
   text-shadow: unset;
 }
 
-.jewel.button.emphasized {
-  cursor: pointer;
-  display: inline-block;
-  margin: 0;
-  padding: 8px;
-  min-width: 34px;
-  min-height: 34px;
-  background: linear-gradient(#98cc50, #7eb435);
-  border: 1px solid #638c29;
-  box-shadow: inset 0 1px 0 #bbdd8b;
-  border-radius: 3px;
-}
-.jewel.button.emphasized:hover, .jewel.button.emphasized:hover:focus {
-  background: linear-gradient(#8CC63C, #71a02f);
-  border: 1px solid #557923;
-}
-.jewel.button.emphasized:active, .jewel.button.emphasized:active:focus {
-  background: linear-gradient(#71a02f, #557923);
-  border: 1px solid #395118;
-  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
-}
-.jewel.button.emphasized:focus {
-  outline: none;
-  border: 1px solid #638c29;
-  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
-}
-.jewel.button.emphasized[disabled] {
-  cursor: unset;
-  background: #f3f3f3;
-  border: 1px solid #d9d9d9;
-  box-shadow: none;
-}
-
-.jewel.textbutton {
+.jewel.button {
   cursor: pointer;
   display: inline-block;
   margin: 0;
@@ -728,21 +638,21 @@ j|Alert {
   text-transform: uppercase;
   text-decoration: none;
 }
-.jewel.textbutton:hover, .jewel.textbutton:hover:focus {
+.jewel.button:hover, .jewel.button:hover:focus {
   background: linear-gradient(#d9d9d9, silver);
   border: 1px solid #a6a6a6;
 }
-.jewel.textbutton:active, .jewel.textbutton:active:focus {
+.jewel.button:active, .jewel.button:active:focus {
   background: linear-gradient(silver, #a6a6a6);
   border: 1px solid #8d8d8d;
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
-.jewel.textbutton:focus {
+.jewel.button:focus {
   outline: none;
   border: 1px solid #b3b3b3;
   box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
 }
-.jewel.textbutton[disabled] {
+.jewel.button[disabled] {
   cursor: unset;
   background: #f3f3f3;
   border: 1px solid #d9d9d9;
@@ -752,7 +662,7 @@ j|Alert {
   text-shadow: unset;
 }
 
-.jewel.textbutton.emphasized {
+.jewel.button.emphasized {
   cursor: pointer;
   display: inline-block;
   margin: 0;
@@ -771,21 +681,21 @@ j|Alert {
   text-decoration: none;
   text-shadow: 0 -1px 0 rgba(57, 81, 24, 0.7);
 }
-.jewel.textbutton.emphasized:hover, .jewel.textbutton.emphasized:hover:focus {
+.jewel.button.emphasized:hover, .jewel.button.emphasized:hover:focus {
   background: linear-gradient(#8CC63C, #71a02f);
   border: 1px solid #557923;
 }
-.jewel.textbutton.emphasized:active, .jewel.textbutton.emphasized:active:focus {
+.jewel.button.emphasized:active, .jewel.button.emphasized:active:focus {
   background: linear-gradient(#71a02f, #557923);
   border: 1px solid #395118;
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
-.jewel.textbutton.emphasized:focus {
+.jewel.button.emphasized:focus {
   outline: none;
   border: 1px solid #638c29;
   box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
 }
-.jewel.textbutton.emphasized[disabled] {
+.jewel.button.emphasized[disabled] {
   cursor: unset;
   background: #f3f3f3;
   border: 1px solid #d9d9d9;
diff --git a/examples/royale/ECharts/src/svgs/JewelButton2.svg b/examples/royale/ECharts/src/svgs/JewelButton2.svg
new file mode 100644
index 0000000..ad0c128
--- /dev/null
+++ b/examples/royale/ECharts/src/svgs/JewelButton2.svg
@@ -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.
+
+-->
+
+<svg width="152px" height="42px" viewBox="0 0 152 42" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <defs>
+        <linearGradient x1="50%" y1="3.10307717%" x2="50%" y2="98.2081246%" id="linearGradient-1">
+            <stop stop-color="#3BB0FF" offset="0%"></stop>
+            <stop stop-color="#1E36FA" offset="100%"></stop>
+        </linearGradient>
+        <rect id="path-2" x="0" y="0" width="150" height="40" rx="3"></rect>
+        <linearGradient x1="50%" y1="0%" x2="50%" y2="98.2362085%" id="linearGradient-3">
+            <stop stop-color="#8EDEFF" offset="0%"></stop>
+            <stop stop-color="#1D89E6" offset="100%"></stop>
+        </linearGradient>
+    </defs>
+    <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="JewelButton">
+            <g id="Background" transform="translate(1.000000, 1.000000)">
+                <g>
+                    <use fill="url(#linearGradient-1)" fill-rule="evenodd" xlink:href="#path-2"></use>
+                    <rect stroke="#244084" stroke-width="1" x="-0.5" y="-0.5" width="151" height="41" rx="3"></rect>
+                </g>
+                <rect stroke="url(#linearGradient-3)" x="0.5" y="0.5" width="149" height="39" rx="3"></rect>
+            </g>
+        </g>
+    </g>
+</svg>
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/svgs/checkbox-tick.svg b/examples/royale/ECharts/src/svgs/checkbox-tick.svg
new file mode 100644
index 0000000..e4d5091
--- /dev/null
+++ b/examples/royale/ECharts/src/svgs/checkbox-tick.svg
@@ -0,0 +1,43 @@
+<!--
+
+  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.
+
+-->
+<svg viewBox='0 0 16 13' preserveAspectRatio='xMinYMid' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'>
+    <g stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'>
+        <g transform='translate(-763.000000, -350.000000)' fill='#777777'>
+            <g transform='translate(760.000000, 345.000000)'>
+                <g>
+                    <polygon points='3 13 9 18 19 7 16 5 9 13 6 10'></polygon>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>
+
+
+<svg viewBox='0 0 16 13' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'>
+    <g stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'>
+        <g transform='translate(-763.000000, -290.000000)'>
+            <g transform='translate(760.000000, 285.000000)'>
+                <g>
+                    <rect id='Bounds' x='0' y='0' width='22' height='22'></rect>
+                    <polygon fill='#777777' points='3 13 9 18 19 7 16 5 9 13 6 10'></polygon>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>
\ No newline at end of file
diff --git a/examples/royale/ECharts/src/svgs/jewel-button.svg b/examples/royale/ECharts/src/svgs/jewel-button.svg
new file mode 100644
index 0000000..63bfc72
--- /dev/null
+++ b/examples/royale/ECharts/src/svgs/jewel-button.svg
@@ -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.
+
+-->
+<svg viewBox="0 0 126 48" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <defs>
+        <rect id="path-1" x="0" y="0" width="126" height="48" rx="4"></rect>
+    </defs>
+    <g id="Jewel" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="button/large">
+            <mask id="mask-2" fill="white">
+                <use xlink:href="#path-1"></use>
+            </mask>
+            <use id="mask" fill="#009EF5" fill-rule="evenodd" xlink:href="#path-1"></use>
+            <g id="colors/primary" mask="url(#mask-2)" fill="#006CEB" fill-rule="evenodd">
+                <rect x="0" y="0" width="126" height="48"></rect>
+            </g>
+            <text id="CTA" mask="url(#mask-2)" font-family="Lato-Bold, Lato" font-size="18" font-weight="bold" line-spacing="24" letter-spacing="-0.225000009"></text>
+        </g>
+    </g>
+</svg>
\ No newline at end of file
diff --git a/examples/royale/ECharts/template.html b/examples/royale/ECharts/template.html
index 2c32c6e..0bab299 100644
--- a/examples/royale/ECharts/template.html
+++ b/examples/royale/ECharts/template.html
@@ -4,6 +4,13 @@
 <meta charset="utf-8"/>
 <title>ECharts Example</title>
 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/echarts/4.0.4/echarts-en.js"></script>
+<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<meta name="Custom Template for injecting custom style CSS">
+<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
+<link rel="stylesheet" type="text/css" href="${application}.css">
+<link rel="stylesheet" type="text/css" href="../../src/defaults.css">
+<link href="https://fonts.googleapis.com/css?family=Lato:400,700" rel="stylesheet">
 ${head}
 </head>
 <body>
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
index fb9d647..bafbb4f 100644
--- a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
+++ b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
@@ -146,18 +146,18 @@ j|Alert {
   padding: 8px;
   min-width: 34px;
   min-height: 34px;
-  background: linear-gradient(#e6e6e6, #cccccc);
   border: 1px solid #b3b3b3;
+  background: linear-gradient(#e6e6e6, #cccccc);
   box-shadow: inset 0 1px 0 white;
   border-radius: 3px;
 }
 .jewel.button:hover, .jewel.button:hover:focus {
-  background: linear-gradient(#d9d9d9, silver);
   border: 1px solid #a6a6a6;
+  background: linear-gradient(#d9d9d9, silver);
 }
 .jewel.button:active, .jewel.button:active:focus {
-  background: linear-gradient(silver, #a6a6a6);
   border: 1px solid #8d8d8d;
+  background: linear-gradient(silver, #a6a6a6);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.button:focus {
@@ -167,8 +167,8 @@ j|Alert {
 }
 .jewel.button[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
 }
 
@@ -179,18 +179,18 @@ j|Alert {
   padding: 8px;
   min-width: 34px;
   min-height: 34px;
-  background: linear-gradient(#54b7f3, #24a3ef);
   border: 1px solid #0f88d1;
+  background: linear-gradient(#54b7f3, #24a3ef);
   box-shadow: inset 0 1px 0 #9bd5f8;
   border-radius: 3px;
 }
 .jewel.button.primary:hover, .jewel.button.primary:hover:focus {
-  background: linear-gradient(#3CADF1, #1198e9);
   border: 1px solid #0d79ba;
+  background: linear-gradient(#3CADF1, #1198e9);
 }
 .jewel.button.primary:active, .jewel.button.primary:active:focus {
-  background: linear-gradient(#1198e9, #0d79ba);
   border: 1px solid #0a5a8a;
+  background: linear-gradient(#1198e9, #0d79ba);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.button.primary:focus {
@@ -200,8 +200,8 @@ j|Alert {
 }
 .jewel.button.primary[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
 }
 
@@ -479,8 +479,8 @@ j|Alert {
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
-  background: linear-gradient(#e6e6e6, #cccccc);
   border: 1px solid #b3b3b3;
+  background: linear-gradient(#e6e6e6, #cccccc);
   box-shadow: inset 0 1px 0 white;
   border-radius: 3px;
   font-family: "Lato", sans-serif;
@@ -491,12 +491,12 @@ j|Alert {
   text-decoration: none;
 }
 .jewel.textbutton:hover, .jewel.textbutton:hover:focus {
-  background: linear-gradient(#d9d9d9, silver);
   border: 1px solid #a6a6a6;
+  background: linear-gradient(#d9d9d9, silver);
 }
 .jewel.textbutton:active, .jewel.textbutton:active:focus {
-  background: linear-gradient(silver, #a6a6a6);
   border: 1px solid #8d8d8d;
+  background: linear-gradient(silver, #a6a6a6);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.textbutton:focus {
@@ -506,8 +506,8 @@ j|Alert {
 }
 .jewel.textbutton[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
   color: silver;
   font-weight: normal;
@@ -521,8 +521,8 @@ j|Alert {
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
-  background: linear-gradient(#54b7f3, #24a3ef);
   border: 1px solid #0f88d1;
+  background: linear-gradient(#54b7f3, #24a3ef);
   box-shadow: inset 0 1px 0 #9bd5f8;
   border-radius: 3px;
   font-family: "Lato", sans-serif;
@@ -534,12 +534,12 @@ j|Alert {
   text-shadow: 0 -1px 0 rgba(10, 90, 138, 0.7);
 }
 .jewel.textbutton.primary:hover, .jewel.textbutton.primary:hover:focus {
-  background: linear-gradient(#3CADF1, #1198e9);
   border: 1px solid #0d79ba;
+  background: linear-gradient(#3CADF1, #1198e9);
 }
 .jewel.textbutton.primary:active, .jewel.textbutton.primary:active:focus {
-  background: linear-gradient(#1198e9, #0d79ba);
   border: 1px solid #0a5a8a;
+  background: linear-gradient(#1198e9, #0d79ba);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.textbutton.primary:focus {
@@ -549,8 +549,8 @@ j|Alert {
 }
 .jewel.textbutton.primary[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
   color: silver;
   font-weight: normal;
@@ -608,18 +608,18 @@ j|Alert {
   padding: 8px;
   min-width: 34px;
   min-height: 34px;
-  background: linear-gradient(#f16c42, #ed4812);
   border: 1px solid #be390e;
+  background: linear-gradient(#f16c42, #ed4812);
   box-shadow: inset 0 1px 0 #f6a389;
   border-radius: 3px;
 }
 .jewel.button.secondary:hover, .jewel.button.secondary:hover:focus {
-  background: linear-gradient(#EF5A2A, #d64010);
   border: 1px solid #a6320d;
+  background: linear-gradient(#EF5A2A, #d64010);
 }
 .jewel.button.secondary:active, .jewel.button.secondary:active:focus {
-  background: linear-gradient(#d64010, #a6320d);
   border: 1px solid #772409;
+  background: linear-gradient(#d64010, #a6320d);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.button.secondary:focus {
@@ -629,8 +629,8 @@ j|Alert {
 }
 .jewel.button.secondary[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
 }
 
@@ -641,8 +641,8 @@ j|Alert {
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
-  background: linear-gradient(#f16c42, #ed4812);
   border: 1px solid #be390e;
+  background: linear-gradient(#f16c42, #ed4812);
   box-shadow: inset 0 1px 0 #f6a389;
   border-radius: 3px;
   font-family: "Lato", sans-serif;
@@ -654,12 +654,12 @@ j|Alert {
   text-shadow: 0 -1px 0 rgba(119, 36, 9, 0.7);
 }
 .jewel.textbutton.secondary:hover, .jewel.textbutton.secondary:hover:focus {
-  background: linear-gradient(#EF5A2A, #d64010);
   border: 1px solid #a6320d;
+  background: linear-gradient(#EF5A2A, #d64010);
 }
 .jewel.textbutton.secondary:active, .jewel.textbutton.secondary:active:focus {
-  background: linear-gradient(#d64010, #a6320d);
   border: 1px solid #772409;
+  background: linear-gradient(#d64010, #a6320d);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.textbutton.secondary:focus {
@@ -669,8 +669,8 @@ j|Alert {
 }
 .jewel.textbutton.secondary[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
   color: silver;
   font-weight: normal;
@@ -684,18 +684,18 @@ j|Alert {
   padding: 8px;
   min-width: 34px;
   min-height: 34px;
-  background: linear-gradient(#98cc50, #7eb435);
   border: 1px solid #638c29;
+  background: linear-gradient(#98cc50, #7eb435);
   box-shadow: inset 0 1px 0 #bbdd8b;
   border-radius: 3px;
 }
 .jewel.button.emphasized:hover, .jewel.button.emphasized:hover:focus {
-  background: linear-gradient(#8CC63C, #71a02f);
   border: 1px solid #557923;
+  background: linear-gradient(#8CC63C, #71a02f);
 }
 .jewel.button.emphasized:active, .jewel.button.emphasized:active:focus {
-  background: linear-gradient(#71a02f, #557923);
   border: 1px solid #395118;
+  background: linear-gradient(#71a02f, #557923);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.button.emphasized:focus {
@@ -705,8 +705,8 @@ j|Alert {
 }
 .jewel.button.emphasized[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
 }
 
@@ -717,8 +717,8 @@ j|Alert {
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
-  background: linear-gradient(#e6e6e6, #cccccc);
   border: 1px solid #b3b3b3;
+  background: linear-gradient(#e6e6e6, #cccccc);
   box-shadow: inset 0 1px 0 white;
   border-radius: 3px;
   font-family: "Lato", sans-serif;
@@ -729,12 +729,12 @@ j|Alert {
   text-decoration: none;
 }
 .jewel.textbutton:hover, .jewel.textbutton:hover:focus {
-  background: linear-gradient(#d9d9d9, silver);
   border: 1px solid #a6a6a6;
+  background: linear-gradient(#d9d9d9, silver);
 }
 .jewel.textbutton:active, .jewel.textbutton:active:focus {
-  background: linear-gradient(silver, #a6a6a6);
   border: 1px solid #8d8d8d;
+  background: linear-gradient(silver, #a6a6a6);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.textbutton:focus {
@@ -744,8 +744,8 @@ j|Alert {
 }
 .jewel.textbutton[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
   color: silver;
   font-weight: normal;
@@ -759,8 +759,8 @@ j|Alert {
   padding: 10px 16px;
   min-width: 74px;
   min-height: 34px;
-  background: linear-gradient(#98cc50, #7eb435);
   border: 1px solid #638c29;
+  background: linear-gradient(#98cc50, #7eb435);
   box-shadow: inset 0 1px 0 #bbdd8b;
   border-radius: 3px;
   font-family: "Lato", sans-serif;
@@ -772,12 +772,12 @@ j|Alert {
   text-shadow: 0 -1px 0 rgba(57, 81, 24, 0.7);
 }
 .jewel.textbutton.emphasized:hover, .jewel.textbutton.emphasized:hover:focus {
-  background: linear-gradient(#8CC63C, #71a02f);
   border: 1px solid #557923;
+  background: linear-gradient(#8CC63C, #71a02f);
 }
 .jewel.textbutton.emphasized:active, .jewel.textbutton.emphasized:active:focus {
-  background: linear-gradient(#71a02f, #557923);
   border: 1px solid #395118;
+  background: linear-gradient(#71a02f, #557923);
   box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
 }
 .jewel.textbutton.emphasized:focus {
@@ -787,8 +787,8 @@ j|Alert {
 }
 .jewel.textbutton.emphasized[disabled] {
   cursor: unset;
-  background: #f3f3f3;
   border: 1px solid #d9d9d9;
+  background: #f3f3f3;
   box-shadow: none;
   color: silver;
   font-weight: normal;
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css.map b/frameworks/themes/JewelTheme/src/main/resources/defaults.css.map
new file mode 100644
index 0000000..60479eb
--- /dev/null
+++ b/frameworks/themes/JewelTheme/src/main/resources/defaults.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": ";;;;;;;;;;;;;;;;;;AAuBA,4CAA4C;EAC3C,UAAU,EAAE,UAAU;;;AAEvB,aAAa;EACZ,UAAU,ECwBQ,KAA0B;EDtB3C,WAAM,ECJK,kBAAkB;EDK9B,KAAK,ECGe,OAAiB;;;ADDtC,EAAE;EACD,SAAS,EAAE,GAAG;;;AAEf,EAAE;EACD,SAAS,EAAE,KAAK;;;AAEjB,EAAE;EACD,SAAS,EAAE,MAAM;;;AAElB,EAAE;EACD,SAAS,EAAE,IAAI;;;AAEhB,IAAI;EACH,SAAS,EAAE,IAAI;;;AAEhB,GAAG;EACF,SAAS,EAAE,IAAI;;;AAIhB,UAAU;EAIR,UAAU,EAAE,OAA6B;EAE1C,aAAa,EAAE,IAAI;EACnB,OAAO,EAAE,IAAI;;;AAKd,sCAAsC;EACrC,MAAM,EAAE,CAAC;;;AExBV,YAAY;EACR,OAAO,EAAE,KAAK;EACd, [...]
+"sources": ["../sass/_global.sass","../sass/_variables.sass","../sass/components-primary/_alert.sass","../sass/components-primary/_button.sass","../sass/_mixins.sass","../sass/components-primary/_checkbox.sass","../sass/components-primary/_itemRenderer.sass","../sass/_colors.sass","../sass/components-primary/_label.sass","../sass/components-primary/_list.sass","../sass/components-primary/_radiobutton.sass","../sass/components-primary/_slider.sass","../sass/_theme.sass","../sass/component [...]
+"names": [],
+"file": "defaults.css"
+}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 9fba592..7ebb50c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -165,70 +165,6 @@
       </plugins>
     </pluginManagement>
     <plugins>
-      <!-- Check if all source files have the required apache license headers -->
-      <plugin>
-        <groupId>org.apache.rat</groupId>
-        <artifactId>apache-rat-plugin</artifactId>
-        <version>0.12</version>
-        <executions>
-          <execution>
-            <id>license-check</id>
-            <phase>verify</phase>
-            <goals>
-              <goal>check</goal>
-            </goals>
-          </execution>
-        </executions>
-        <configuration>
-          <excludes>
-            <!-- JSON files can't contain comments -->
-            <exclude>**/*.json</exclude>
-            <!-- This is appended to the LICENSE file for binary packages-->
-            <exclude>LICENSE.bin</exclude>
-            <!-- READMEs don't have headers -->
-            <exclude>README.md</exclude>
-            <exclude>npm/README.md</exclude>
-            <!-- RELEASE_NOTES don't have headers either -->
-            <exclude>**/RELEASE_NOTES.md</exclude>
-
-            <!-- Stuff that needs to be removed -->
-            <exclude>fxg2svg/**</exclude>
-            <exclude>vf2js/**</exclude>
-            <!-- Should probably also be removed -->
-            <exclude>js/*jshint*</exclude>
-            <!-- FlashBuilder settings. frameworks/fb.properties contains Alex' path entries and should be removed -->
-            <exclude>fb.properties</exclude>
-            <!-- FlashBuilder / Eclipse settings. If checked in, they should have apache headers -->
-            <exclude>**/.settings/**</exclude>
-            <!-- Ignore IntelliJ IDEA project files -->
-            <exclude>**/*.iml</exclude>
-            <exclude>**/.idea/**</exclude>
-            <!-- SASS cc.map generated files by sass-maven-plugin-->
-            <exclude>**/*.css.map</exclude>
-            <!--
-                Exclude any eventually existing content of target directories.
-                Some times when building with a bigger maven reactor and then
-                with a smaller one, RAT will complain about stuff still in the
-                target directories. We don't want that.
-            -->
-            <exclude>**/target/**</exclude>
-          </excludes>
-        </configuration>
-        <dependencies>
-          <dependency>
-            <groupId>org.apache.maven.doxia</groupId>
-            <artifactId>doxia-core</artifactId>
-            <version>1.6</version>
-            <exclusions>
-              <exclusion>
-                <groupId>xerces</groupId>
-                <artifactId>xercesImpl</artifactId>
-              </exclusion>
-            </exclusions>
-          </dependency>
-        </dependencies>
-      </plugin>
-
       <!-- Configure the Site generation -->
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>

-- 
To stop receiving notification emails like this one, please contact
bigosmallm@apache.org.