diff --git a/UI/Templates/MailerUI/UIxMailFolderTemplate.wox b/UI/Templates/MailerUI/UIxMailFolderTemplate.wox index 43bba7a2c..cfde4c4ad 100644 --- a/UI/Templates/MailerUI/UIxMailFolderTemplate.wox +++ b/UI/Templates/MailerUI/UIxMailFolderTemplate.wox @@ -6,25 +6,39 @@ xmlns:rsrc="OGo:url" xmlns:label="OGo:label" xmlns:uix="OGo:uix"> - - + + + - -
- {{currentMessage.$shortAddress('from')}} - -
-
{{currentMessage.subject}}
- -
+ +
+ +
+ +
+
- + diff --git a/UI/Templates/MailerUI/UIxMailMainFrame.wox b/UI/Templates/MailerUI/UIxMailMainFrame.wox index cbcca1c35..6cf5a5204 100644 --- a/UI/Templates/MailerUI/UIxMailMainFrame.wox +++ b/UI/Templates/MailerUI/UIxMailMainFrame.wox @@ -268,7 +268,7 @@ -->
- +
diff --git a/UI/Templates/UIxPageFrame.wox b/UI/Templates/UIxPageFrame.wox index 89a73a30b..501942050 100644 --- a/UI/Templates/UIxPageFrame.wox +++ b/UI/Templates/UIxPageFrame.wox @@ -25,6 +25,8 @@ + + diff --git a/UI/WebServerResources/css/components.css b/UI/WebServerResources/css/components.css new file mode 100644 index 000000000..b9bbe3278 --- /dev/null +++ b/UI/WebServerResources/css/components.css @@ -0,0 +1,4240 @@ +/** +* +* Main Stylesheet SOGo +* Based on Angular Material Design +* IMPORTANT : This scss file might interfere with actual Angular-Material grunt-build +* and will generate a (too)) long css file because of the overrides +* +**/ +@import url(reset.css); +@import url(../css/ubuntu.css); +*, +*:before, +*:after { + box-sizing: border-box; } + +:focus { + outline: none; } + +html, body { + height: 100%; + color: rgba(0, 0, 0, 0.73); + background: #ffffff; + -webkit-tap-highlight-color: transparent; + -webkit-touch-callout: none; + -webkit-text-size-adjust: 100%; + -webkit-font-smoothing: antialiased; + text-rendering: optimizeLegibility; } + html p, body p { + line-height: 1.846; } + html h3, body h3 { + display: block; + -webkit-margin-before: 1em; + -webkit-margin-after: 1em; + -webkit-margin-start: 0px; + -webkit-margin-end: 0px; + font-size: 1.17em; + font-weight: bold; } + +button, +select, +html, +textarea, +input { + font-family: RobotoDraft, Roboto, "Helvetica Neue", sans-serif; } + +body { + margin: 0; + padding: 0; + outline: none; } + +.inset { + padding: 10px; } + +button { + font-family: RobotoDraft, Roboto, "Helvetica Neue", sans-serif; } + +a { + background: transparent; + outline: none; } + +h1 { + font-size: 2em; + margin: 0.67em 0; } + +h2 { + font-size: 1.5em; + margin: 0.83em 0; } + +h3 { + font-size: 1.17em; + margin: 1em 0; } + +h4 { + font-size: 1em; + margin: 1.33em 0; } + +h5 { + font-size: 0.83em; + margin: 1.67em 0; } + +h6 { + font-size: 0.75em; + margin: 2.33em 0; } + +select, +button, +textarea, +input { + margin: 0; + font-size: 100%; + font-family: inherit; + vertical-align: baseline; } + +input[type="reset"], +input[type="submit"], +html input[type="button"], +button { + cursor: pointer; + -webkit-appearance: button; } + input[type="reset"][disabled], + input[type="submit"][disabled], + html input[type="button"][disabled], + button[disabled] { + cursor: default; } + +textarea { + vertical-align: top; + overflow: auto; } + +input[type="radio"], input[type="checkbox"] { + padding: 0; + box-sizing: border-box; } +input[type="search"] { + -webkit-appearance: textfield; + box-sizing: content-box; + -webkit-box-sizing: content-box; } + input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; } + +.md-shadow { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + border-radius: inherit; + pointer-events: none; } + +.md-shadow-bottom-z-1 { + box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); } + +.md-shadow-bottom-z-2 { + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4); } + +.md-shadow-animated.md-shadow { + transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1); } + +/* + * A container inside of a rippling element (eg a button), + * which contains all of the individual ripples + */ +.md-ripple-container { + pointer-events: none; + position: absolute; + overflow: hidden; + left: 0; + top: 0; + width: 100%; + height: 100%; + transition: all 0.55s cubic-bezier(0.25, 0.8, 0.25, 1); } + +.md-ripple { + position: absolute; + transform: scale(0); + transform-origin: 50% 50%; + opacity: 0; + border-radius: 50%; } + .md-ripple.md-ripple-placed { + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-ripple.md-ripple-scaled { + transform: scale(1); } + .md-ripple.md-ripple-active, .md-ripple.md-ripple-full, .md-ripple.md-ripple-visible { + opacity: 0.20; } + +md-tab > .md-ripple-container .md-ripple { + box-sizing: content-box; + background-color: transparent !important; + border-width: 0; + border-style: solid; + opacity: 0.20; + transform: none !important; } + md-tab > .md-ripple-container .md-ripple.md-ripple-active, md-tab > .md-ripple-container .md-ripple.md-ripple-full, md-tab > .md-ripple-container .md-ripple.md-ripple-visible { + opacity: 0.20; } + +.md-color-palette-definition { + background-image: url("data:image/svg+xml;utf8,{_red_: {_50_: _#ffebee_,_100_: _#ffcdd2_,_200_: _#ef9a9a_,_300_: _#e57373_,_400_: _#ef5350_,_500_: _#f44336_,_600_: _#e53935_,_700_: _#d32f2f_,_800_: _#c62828_,_900_: _#b71c1c_,_A100_: _#ff8a80_,_A200_: _#ff5252_,_A400_: _#ff1744_,_A700_: _#d50000_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100_},_pink_: {_50_: _#fce4ec_,_100_: _#f8bbd0_,_200_: _#f48fb1_,_300_: _#f06292_,_400_: _#ec407a_,_500_: _#e91e63_,_600_: _#d81b60_,_700_: _#c2185b_,_800_: _#ad1457_,_900_: _#880E4F_,_A100_: _#ff80ab_,_A200_: _#ff4081_,_A400_: _#f50057_,_A700_: _#c51162_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100_},_purple_: {_50_: _#f3e5f5_,_100_: _#e1bee7_,_200_: _#ce93d8_,_300_: _#ba68c8_,_400_: _#ab47bc_,_500_: _#9c27b0_,_600_: _#8e24aa_,_700_: _#7b1fa2_,_800_: _#6a1b9a_,_900_: _#4a148c_,_A100_: _#ea80fc_,_A200_: _#e040fb_,_A400_: _#d500f9_,_A700_: _#aa00ff_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_deep-purple_: {_50_: _#ede7f6_,_100_: _#d1c4e9_,_200_: _#b39ddb_,_300_: _#9575cd_,_400_: _#7e57c2_,_500_: _#673ab7_,_600_: _#5e35b1_,_700_: _#512da8_,_800_: _#4527a0_,_900_: _#311b92_,_A100_: _#b388ff_,_A200_: _#7c4dff_,_A400_: _#651fff_,_A700_: _#6200ea_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_indigo_: {_50_: _#e8eaf6_,_100_: _#c5cae9_,_200_: _#9fa8da_,_300_: _#7986cb_,_400_: _#5c6bc0_,_500_: _#3f51b5_,_600_: _#3949ab_,_700_: _#303f9f_,_800_: _#283593_,_900_: _#1a237e_,_A100_: _#8c9eff_,_A200_: _#536dfe_,_A400_: _#3d5afe_,_A700_: _#304ffe_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_blue_: {_50_: _#e3f2fd_,_100_: _#bbdefb_,_200_: _#90caf9_,_300_: _#64b5f6_,_400_: _#42a5f5_,_500_: _#2196f3_,_600_: _#1e88e5_,_700_: _#1976d2_,_800_: _#1565c0_,_900_: _#0d47a1_,_A100_: _#82b1ff_,_A200_: _#448aff_,_A400_: _#2979ff_,_A700_: _#2962ff_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _100 200 300 400 A100_},_light-blue_: {_50_: _#e1f5fe_,_100_: _#b3e5fc_,_200_: _#81d4fa_,_300_: _#4fc3f7_,_400_: _#29b6f6_,_500_: _#03a9f4_,_600_: _#039be5_,_700_: _#0288d1_,_800_: _#0277bd_,_900_: _#01579b_,_A100_: _#80d8ff_,_A200_: _#40c4ff_,_A400_: _#00b0ff_,_A700_: _#0091ea_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900 A700_},_cyan_: {_50_: _#e0f7fa_,_100_: _#b2ebf2_,_200_: _#80deea_,_300_: _#4dd0e1_,_400_: _#26c6da_,_500_: _#00bcd4_,_600_: _#00acc1_,_700_: _#0097a7_,_800_: _#00838f_,_900_: _#006064_,_A100_: _#84ffff_,_A200_: _#18ffff_,_A400_: _#00e5ff_,_A700_: _#00b8d4_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_teal_: {_50_: _#e0f2f1_,_100_: _#b2dfdb_,_200_: _#80cbc4_,_300_: _#4db6ac_,_400_: _#26a69a_,_500_: _#009688_,_600_: _#00897b_,_700_: _#00796b_,_800_: _#00695c_,_900_: _#004d40_,_A100_: _#a7ffeb_,_A200_: _#64ffda_,_A400_: _#1de9b6_,_A700_: _#00bfa5_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_green_: {_50_: _#e8f5e9_,_100_: _#c8e6c9_,_200_: _#a5d6a7_,_300_: _#81c784_,_400_: _#66bb6a_,_500_: _#4caf50_,_600_: _#43a047_,_700_: _#388e3c_,_800_: _#2e7d32_,_900_: _#1b5e20_,_A100_: _#b9f6ca_,_A200_: _#69f0ae_,_A400_: _#00e676_,_A700_: _#00c853_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_light-green_: {_50_: _#f1f8e9_,_100_: _#dcedc8_,_200_: _#c5e1a5_,_300_: _#aed581_,_400_: _#9ccc65_,_500_: _#8bc34a_,_600_: _#7cb342_,_700_: _#689f38_,_800_: _#558b2f_,_900_: _#33691e_,_A100_: _#ccff90_,_A200_: _#b2ff59_,_A400_: _#76ff03_,_A700_: _#64dd17_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _800 900_},_lime_: {_50_: _#f9fbe7_,_100_: _#f0f4c3_,_200_: _#e6ee9c_,_300_: _#dce775_,_400_: _#d4e157_,_500_: _#cddc39_,_600_: _#c0ca33_,_700_: _#afb42b_,_800_: _#9e9d24_,_900_: _#827717_,_A100_: _#f4ff81_,_A200_: _#eeff41_,_A400_: _#c6ff00_,_A700_: _#aeea00_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _900_},_yellow_: {_50_: _#fffde7_,_100_: _#fff9c4_,_200_: _#fff59d_,_300_: _#fff176_,_400_: _#ffee58_,_500_: _#ffeb3b_,_600_: _#fdd835_,_700_: _#fbc02d_,_800_: _#f9a825_,_900_: _#f57f17_,_A100_: _#ffff8d_,_A200_: _#ffff00_,_A400_: _#ffea00_,_A700_: _#ffd600_,_contrastDefaultColor_: _dark_},_amber_: {_50_: _#fff8e1_,_100_: _#ffecb3_,_200_: _#ffe082_,_300_: _#ffd54f_,_400_: _#ffca28_,_500_: _#ffc107_,_600_: _#ffb300_,_700_: _#ffa000_,_800_: _#ff8f00_,_900_: _#ff6f00_,_A100_: _#ffe57f_,_A200_: _#ffd740_,_A400_: _#ffc400_,_A700_: _#ffab00_,_contrastDefaultColor_: _dark_},_orange_: {_50_: _#fff3e0_,_100_: _#ffe0b2_,_200_: _#ffcc80_,_300_: _#ffb74d_,_400_: _#ffa726_,_500_: _#ff9800_,_600_: _#fb8c00_,_700_: _#f57c00_,_800_: _#ef6c00_,_900_: _#e65100_,_A100_: _#ffd180_,_A200_: _#ffab40_,_A400_: _#ff9100_,_A700_: _#ff6d00_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _800 900_},_deep-orange_: {_50_: _#fbe9e7_,_100_: _#ffccbc_,_200_: _#ffab91_,_300_: _#ff8a65_,_400_: _#ff7043_,_500_: _#ff5722_,_600_: _#f4511e_,_700_: _#e64a19_,_800_: _#d84315_,_900_: _#bf360c_,_A100_: _#ff9e80_,_A200_: _#ff6e40_,_A400_: _#ff3d00_,_A700_: _#dd2c00_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100 A200_},_brown_: {_50_: _#efebe9_,_100_: _#d7ccc8_,_200_: _#bcaaa4_,_300_: _#a1887f_,_400_: _#8d6e63_,_500_: _#795548_,_600_: _#6d4c41_,_700_: _#5d4037_,_800_: _#4e342e_,_900_: _#3e2723_,_A100_: _#d7ccc8_,_A200_: _#bcaaa4_,_A400_: _#8d6e63_,_A700_: _#5d4037_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200_},_grey_: {_0_: _#ffffff_,_50_: _#fafafa_,_100_: _#f5f5f5_,_200_: _#eeeeee_,_300_: _#e0e0e0_,_400_: _#bdbdbd_,_500_: _#9e9e9e_,_600_: _#757575_,_700_: _#616161_,_800_: _#424242_,_900_: _#212121_,_1000_: _#000000_,_A100_: _#ffffff_,_A200_: _#eeeeee_,_A400_: _#bdbdbd_,_A700_: _#616161_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _600 700 800 900_},_blue-grey_: {_50_: _#eceff1_,_100_: _#cfd8dc_,_200_: _#b0bec5_,_300_: _#90a4ae_,_400_: _#78909c_,_500_: _#607d8b_,_600_: _#546e7a_,_700_: _#455a64_,_800_: _#37474f_,_900_: _#263238_,_A100_: _#cfd8dc_,_A200_: _#b0bec5_,_A400_: _#78909c_,_A700_: _#455a64_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300_}}"); + display: none; } + +/* Sizes: + 0 <= size <= 600 Phone + 600 <= size <= 960 Tablet + 960 <= size <= 1200 Tablet-Landscape + 1200 <= size PC +*/ +[layout] { + box-sizing: border-box; + display: flex; } + +[layout=column] { + flex-direction: column; } + +[layout=row] { + flex-direction: row; } + +[layout-padding], +[layout-padding] > [flex] { + padding: 8px; } + +[layout-margin], +[layout-margin] > [flex] { + margin: 8px; } + +[layout-wrap] { + flex-wrap: wrap; } + +[layout-fill] { + margin: 0; + min-height: 100%; + width: 100%; } + +@-moz-document url-prefix() { + [layout-fill] { + margin: 0; + width: 100%; + min-height: auto; + height: inherit; } } +[flex] { + flex: 1; } + +[flex="0"] { + flex: 0 0 0%; } + +[layout="row"] > [flex="0"] { + max-width: 0%; } + +[layout="column"] > [flex="0"] { + max-height: 0%; } + +[flex="5"] { + flex: 0 0 5%; } + +[layout="row"] > [flex="5"] { + max-width: 5%; } + +[layout="column"] > [flex="5"] { + max-height: 5%; } + +[flex="10"] { + flex: 0 0 10%; } + +[layout="row"] > [flex="10"] { + max-width: 10%; } + +[layout="column"] > [flex="10"] { + max-height: 10%; } + +[flex="15"] { + flex: 0 0 15%; } + +[layout="row"] > [flex="15"] { + max-width: 15%; } + +[layout="column"] > [flex="15"] { + max-height: 15%; } + +[flex="20"] { + flex: 0 0 20%; } + +[layout="row"] > [flex="20"] { + max-width: 20%; } + +[layout="column"] > [flex="20"] { + max-height: 20%; } + +[flex="25"] { + flex: 0 0 25%; } + +[layout="row"] > [flex="25"] { + max-width: 25%; } + +[layout="column"] > [flex="25"] { + max-height: 25%; } + +[flex="30"] { + flex: 0 0 30%; } + +[layout="row"] > [flex="30"] { + max-width: 30%; } + +[layout="column"] > [flex="30"] { + max-height: 30%; } + +[flex="35"] { + flex: 0 0 35%; } + +[layout="row"] > [flex="35"] { + max-width: 35%; } + +[layout="column"] > [flex="35"] { + max-height: 35%; } + +[flex="40"] { + flex: 0 0 40%; } + +[layout="row"] > [flex="40"] { + max-width: 40%; } + +[layout="column"] > [flex="40"] { + max-height: 40%; } + +[flex="45"] { + flex: 0 0 45%; } + +[layout="row"] > [flex="45"] { + max-width: 45%; } + +[layout="column"] > [flex="45"] { + max-height: 45%; } + +[flex="50"] { + flex: 0 0 50%; } + +[layout="row"] > [flex="50"] { + max-width: 50%; } + +[layout="column"] > [flex="50"] { + max-height: 50%; } + +[flex="55"] { + flex: 0 0 55%; } + +[layout="row"] > [flex="55"] { + max-width: 55%; } + +[layout="column"] > [flex="55"] { + max-height: 55%; } + +[flex="60"] { + flex: 0 0 60%; } + +[layout="row"] > [flex="60"] { + max-width: 60%; } + +[layout="column"] > [flex="60"] { + max-height: 60%; } + +[flex="65"] { + flex: 0 0 65%; } + +[layout="row"] > [flex="65"] { + max-width: 65%; } + +[layout="column"] > [flex="65"] { + max-height: 65%; } + +[flex="70"] { + flex: 0 0 70%; } + +[layout="row"] > [flex="70"] { + max-width: 70%; } + +[layout="column"] > [flex="70"] { + max-height: 70%; } + +[flex="75"] { + flex: 0 0 75%; } + +[layout="row"] > [flex="75"] { + max-width: 75%; } + +[layout="column"] > [flex="75"] { + max-height: 75%; } + +[flex="80"] { + flex: 0 0 80%; } + +[layout="row"] > [flex="80"] { + max-width: 80%; } + +[layout="column"] > [flex="80"] { + max-height: 80%; } + +[flex="85"] { + flex: 0 0 85%; } + +[layout="row"] > [flex="85"] { + max-width: 85%; } + +[layout="column"] > [flex="85"] { + max-height: 85%; } + +[flex="90"] { + flex: 0 0 90%; } + +[layout="row"] > [flex="90"] { + max-width: 90%; } + +[layout="column"] > [flex="90"] { + max-height: 90%; } + +[flex="95"] { + flex: 0 0 95%; } + +[layout="row"] > [flex="95"] { + max-width: 95%; } + +[layout="column"] > [flex="95"] { + max-height: 95%; } + +[flex="100"] { + flex: 0 0 100%; } + +[layout="row"] > [flex="100"] { + max-width: 100%; } + +[layout="column"] > [flex="100"] { + max-height: 100%; } + +[layout="row"] > [flex="33"], [layout="row"] > [flex="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } +[layout="row"] > [flex="66"], [layout="row"] > [flex="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + +[layout="column"] > [flex="33"], [layout="column"] > [flex="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } +[layout="column"] > [flex="66"], [layout="column"] > [flex="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } + +[layout-align="center"], +[layout-align="center center"], +[layout-align="center start"], +[layout-align="center end"] { + justify-content: center; } + +[layout-align="end"], +[layout-align="end center"], +[layout-align="end start"], +[layout-align="end end"] { + justify-content: flex-end; } + +[layout-align="space-around"], +[layout-align="space-around center"], +[layout-align="space-around start"], +[layout-align="space-around end"] { + justify-content: space-around; } + +[layout-align="space-between"], +[layout-align="space-between center"], +[layout-align="space-between start"], +[layout-align="space-between end"] { + justify-content: space-between; } + +[layout-align="center center"], +[layout-align="start center"], +[layout-align="end center"], +[layout-align="space-between center"], +[layout-align="space-around center"] { + align-items: center; } + +[layout-align="center start"], +[layout-align="start start"], +[layout-align="end start"], +[layout-align="space-between start"], +[layout-align="space-around start"] { + align-items: flex-start; } + +[layout-align="center end"], +[layout-align="start end"], +[layout-align="end end"], +[layout-align="space-between end"], +[layout-align="space-around end"] { + align-items: flex-end; } + +[hide]:not([show]) { + display: none; } + +@media (max-width: 600px) { + [hide-sm]:not([show-sm]), [hide]:not([show-sm]) { + display: none; } + + [layout-align-sm="center"], + [layout-align-sm="center center"], + [layout-align-sm="center start"], + [layout-align-sm="center end"] { + justify-content: center; } + + [layout-align-sm="end"], + [layout-align-sm="end center"], + [layout-align-sm="end start"], + [layout-align-sm="end end"] { + justify-content: flex-end; } + + [layout-align-sm="space-around"], + [layout-align-sm="space-around center"], + [layout-align-sm="space-around start"], + [layout-align-sm="space-around end"] { + justify-content: space-around; } + + [layout-align-sm="space-between"], + [layout-align-sm="space-between center"], + [layout-align-sm="space-between start"], + [layout-align-sm="space-between end"] { + justify-content: space-between; } + + [layout-align-sm="center center"], + [layout-align-sm="start center"], + [layout-align-sm="end center"], + [layout-align-sm="space-between center"], + [layout-align-sm="space-around center"] { + align-items: center; } + + [layout-align-sm="center start"], + [layout-align-sm="start start"], + [layout-align-sm="end start"], + [layout-align-sm="space-between start"], + [layout-align-sm="space-around start"] { + align-items: flex-start; } + + [layout-align-sm="center end"], + [layout-align-sm="start end"], + [layout-align-sm="end end"], + [layout-align-sm="space-between end"], + [layout-align-sm="space-around end"] { + align-items: flex-end; } + + [layout-sm] { + box-sizing: border-box; + display: flex; } + + [layout-sm=column] { + flex-direction: column; } + + [layout-sm=row] { + flex-direction: row; } + + [flex-sm] { + flex: 1; } + + [flex-sm="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-sm="0"] { + max-height: 0%; } + + [flex-sm="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-sm="5"] { + max-height: 5%; } + + [flex-sm="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-sm="10"] { + max-height: 10%; } + + [flex-sm="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-sm="15"] { + max-height: 15%; } + + [flex-sm="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-sm="20"] { + max-height: 20%; } + + [flex-sm="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-sm="25"] { + max-height: 25%; } + + [flex-sm="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-sm="30"] { + max-height: 30%; } + + [flex-sm="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-sm="35"] { + max-height: 35%; } + + [flex-sm="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-sm="40"] { + max-height: 40%; } + + [flex-sm="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-sm="45"] { + max-height: 45%; } + + [flex-sm="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-sm="50"] { + max-height: 50%; } + + [flex-sm="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-sm="55"] { + max-height: 55%; } + + [flex-sm="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-sm="60"] { + max-height: 60%; } + + [flex-sm="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-sm="65"] { + max-height: 65%; } + + [flex-sm="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-sm="70"] { + max-height: 70%; } + + [flex-sm="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-sm="75"] { + max-height: 75%; } + + [flex-sm="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-sm="80"] { + max-height: 80%; } + + [flex-sm="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-sm="85"] { + max-height: 85%; } + + [flex-sm="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-sm="90"] { + max-height: 90%; } + + [flex-sm="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-sm="95"] { + max-height: 95%; } + + [flex-sm="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-sm="33"], [layout="row"] > [flex-sm="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-sm="66"], [layout="row"] > [flex-sm="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-sm="33"], [layout="column"] > [flex-sm="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-sm="66"], [layout="column"] > [flex-sm="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 600px) { + [hide-gt-sm]:not([show-gt-sm]):not([show-md]):not([show-gt-md]):not([show-lg]):not([show-gt-lg]), [hide]:not([show-gt-sm]):not([show-md]):not([show-gt-md]):not([show-lg]):not([show-gt-lg]) { + display: none; } + + [layout-align-gt-sm="center"], + [layout-align-gt-sm="center center"], + [layout-align-gt-sm="center start"], + [layout-align-gt-sm="center end"] { + justify-content: center; } + + [layout-align-gt-sm="end"], + [layout-align-gt-sm="end center"], + [layout-align-gt-sm="end start"], + [layout-align-gt-sm="end end"] { + justify-content: flex-end; } + + [layout-align-gt-sm="space-around"], + [layout-align-gt-sm="space-around center"], + [layout-align-gt-sm="space-around start"], + [layout-align-gt-sm="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-sm="space-between"], + [layout-align-gt-sm="space-between center"], + [layout-align-gt-sm="space-between start"], + [layout-align-gt-sm="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-sm="center center"], + [layout-align-gt-sm="start center"], + [layout-align-gt-sm="end center"], + [layout-align-gt-sm="space-between center"], + [layout-align-gt-sm="space-around center"] { + align-items: center; } + + [layout-align-gt-sm="center start"], + [layout-align-gt-sm="start start"], + [layout-align-gt-sm="end start"], + [layout-align-gt-sm="space-between start"], + [layout-align-gt-sm="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-sm="center end"], + [layout-align-gt-sm="start end"], + [layout-align-gt-sm="end end"], + [layout-align-gt-sm="space-between end"], + [layout-align-gt-sm="space-around end"] { + align-items: flex-end; } + + [layout-gt-sm] { + box-sizing: border-box; + display: flex; } + + [layout-gt-sm=column] { + flex-direction: column; } + + [layout-gt-sm=row] { + flex-direction: row; } + + [flex-gt-sm] { + flex: 1; } + + [flex-gt-sm="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-sm="0"] { + max-height: 0%; } + + [flex-gt-sm="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-sm="5"] { + max-height: 5%; } + + [flex-gt-sm="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-sm="10"] { + max-height: 10%; } + + [flex-gt-sm="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-sm="15"] { + max-height: 15%; } + + [flex-gt-sm="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-sm="20"] { + max-height: 20%; } + + [flex-gt-sm="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-sm="25"] { + max-height: 25%; } + + [flex-gt-sm="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-sm="30"] { + max-height: 30%; } + + [flex-gt-sm="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-sm="35"] { + max-height: 35%; } + + [flex-gt-sm="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-sm="40"] { + max-height: 40%; } + + [flex-gt-sm="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-sm="45"] { + max-height: 45%; } + + [flex-gt-sm="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-sm="50"] { + max-height: 50%; } + + [flex-gt-sm="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-sm="55"] { + max-height: 55%; } + + [flex-gt-sm="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-sm="60"] { + max-height: 60%; } + + [flex-gt-sm="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-sm="65"] { + max-height: 65%; } + + [flex-gt-sm="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-sm="70"] { + max-height: 70%; } + + [flex-gt-sm="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-sm="75"] { + max-height: 75%; } + + [flex-gt-sm="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-sm="80"] { + max-height: 80%; } + + [flex-gt-sm="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-sm="85"] { + max-height: 85%; } + + [flex-gt-sm="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-sm="90"] { + max-height: 90%; } + + [flex-gt-sm="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-sm="95"] { + max-height: 95%; } + + [flex-gt-sm="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-sm="33"], [layout="row"] > [flex-gt-sm="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-sm="66"], [layout="row"] > [flex-gt-sm="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-sm="33"], [layout="column"] > [flex-gt-sm="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-sm="66"], [layout="column"] > [flex-gt-sm="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 600px) and (max-width: 960px) { + [hide-md]:not([show-md]), [hide]:not([show-md]) { + display: none; } + + [layout-align-md="center"], + [layout-align-md="center center"], + [layout-align-md="center start"], + [layout-align-md="center end"] { + justify-content: center; } + + [layout-align-md="end"], + [layout-align-md="end center"], + [layout-align-md="end start"], + [layout-align-md="end end"] { + justify-content: flex-end; } + + [layout-align-md="space-around"], + [layout-align-md="space-around center"], + [layout-align-md="space-around start"], + [layout-align-md="space-around end"] { + justify-content: space-around; } + + [layout-align-md="space-between"], + [layout-align-md="space-between center"], + [layout-align-md="space-between start"], + [layout-align-md="space-between end"] { + justify-content: space-between; } + + [layout-align-md="center center"], + [layout-align-md="start center"], + [layout-align-md="end center"], + [layout-align-md="space-between center"], + [layout-align-md="space-around center"] { + align-items: center; } + + [layout-align-md="center start"], + [layout-align-md="start start"], + [layout-align-md="end start"], + [layout-align-md="space-between start"], + [layout-align-md="space-around start"] { + align-items: flex-start; } + + [layout-align-md="center end"], + [layout-align-md="start end"], + [layout-align-md="end end"], + [layout-align-md="space-between end"], + [layout-align-md="space-around end"] { + align-items: flex-end; } + + [layout-md] { + box-sizing: border-box; + display: flex; } + + [layout-md=column] { + flex-direction: column; } + + [layout-md=row] { + flex-direction: row; } + + [flex-md] { + flex: 1; } + + [flex-md="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-md="0"] { + max-height: 0%; } + + [flex-md="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-md="5"] { + max-height: 5%; } + + [flex-md="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-md="10"] { + max-height: 10%; } + + [flex-md="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-md="15"] { + max-height: 15%; } + + [flex-md="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-md="20"] { + max-height: 20%; } + + [flex-md="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-md="25"] { + max-height: 25%; } + + [flex-md="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-md="30"] { + max-height: 30%; } + + [flex-md="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-md="35"] { + max-height: 35%; } + + [flex-md="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-md="40"] { + max-height: 40%; } + + [flex-md="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-md="45"] { + max-height: 45%; } + + [flex-md="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-md="50"] { + max-height: 50%; } + + [flex-md="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-md="55"] { + max-height: 55%; } + + [flex-md="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-md="60"] { + max-height: 60%; } + + [flex-md="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-md="65"] { + max-height: 65%; } + + [flex-md="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-md="70"] { + max-height: 70%; } + + [flex-md="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-md="75"] { + max-height: 75%; } + + [flex-md="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-md="80"] { + max-height: 80%; } + + [flex-md="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-md="85"] { + max-height: 85%; } + + [flex-md="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-md="90"] { + max-height: 90%; } + + [flex-md="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-md="95"] { + max-height: 95%; } + + [flex-md="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-md="33"], [layout="row"] > [flex-md="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-md="66"], [layout="row"] > [flex-md="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-md="33"], [layout="column"] > [flex-md="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-md="66"], [layout="column"] > [flex-md="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 960px) { + [hide-gt-md]:not([show-gt-md]):not([show-lg]):not([show-gt-lg]), [hide]:not([show-gt-md]):not([show-lg]):not([show-gt-lg]) { + display: none; } + + [layout-align-gt-md="center"], + [layout-align-gt-md="center center"], + [layout-align-gt-md="center start"], + [layout-align-gt-md="center end"] { + justify-content: center; } + + [layout-align-gt-md="end"], + [layout-align-gt-md="end center"], + [layout-align-gt-md="end start"], + [layout-align-gt-md="end end"] { + justify-content: flex-end; } + + [layout-align-gt-md="space-around"], + [layout-align-gt-md="space-around center"], + [layout-align-gt-md="space-around start"], + [layout-align-gt-md="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-md="space-between"], + [layout-align-gt-md="space-between center"], + [layout-align-gt-md="space-between start"], + [layout-align-gt-md="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-md="center center"], + [layout-align-gt-md="start center"], + [layout-align-gt-md="end center"], + [layout-align-gt-md="space-between center"], + [layout-align-gt-md="space-around center"] { + align-items: center; } + + [layout-align-gt-md="center start"], + [layout-align-gt-md="start start"], + [layout-align-gt-md="end start"], + [layout-align-gt-md="space-between start"], + [layout-align-gt-md="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-md="center end"], + [layout-align-gt-md="start end"], + [layout-align-gt-md="end end"], + [layout-align-gt-md="space-between end"], + [layout-align-gt-md="space-around end"] { + align-items: flex-end; } + + [layout-gt-md] { + box-sizing: border-box; + display: flex; } + + [layout-gt-md=column] { + flex-direction: column; } + + [layout-gt-md=row] { + flex-direction: row; } + + [flex-gt-md] { + flex: 1; } + + [flex-gt-md="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-md="0"] { + max-height: 0%; } + + [flex-gt-md="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-md="5"] { + max-height: 5%; } + + [flex-gt-md="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-md="10"] { + max-height: 10%; } + + [flex-gt-md="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-md="15"] { + max-height: 15%; } + + [flex-gt-md="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-md="20"] { + max-height: 20%; } + + [flex-gt-md="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-md="25"] { + max-height: 25%; } + + [flex-gt-md="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-md="30"] { + max-height: 30%; } + + [flex-gt-md="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-md="35"] { + max-height: 35%; } + + [flex-gt-md="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-md="40"] { + max-height: 40%; } + + [flex-gt-md="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-md="45"] { + max-height: 45%; } + + [flex-gt-md="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-md="50"] { + max-height: 50%; } + + [flex-gt-md="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-md="55"] { + max-height: 55%; } + + [flex-gt-md="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-md="60"] { + max-height: 60%; } + + [flex-gt-md="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-md="65"] { + max-height: 65%; } + + [flex-gt-md="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-md="70"] { + max-height: 70%; } + + [flex-gt-md="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-md="75"] { + max-height: 75%; } + + [flex-gt-md="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-md="80"] { + max-height: 80%; } + + [flex-gt-md="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-md="85"] { + max-height: 85%; } + + [flex-gt-md="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-md="90"] { + max-height: 90%; } + + [flex-gt-md="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-md="95"] { + max-height: 95%; } + + [flex-gt-md="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-md="33"], [layout="row"] > [flex-gt-md="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-md="66"], [layout="row"] > [flex-gt-md="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-md="33"], [layout="column"] > [flex-gt-md="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-md="66"], [layout="column"] > [flex-gt-md="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 960px) and (max-width: 1200px) { + [hide-lg]:not([show-lg]), [hide]:not([show-lg]) { + display: none; } + + [layout-align-lg="center"], + [layout-align-lg="center center"], + [layout-align-lg="center start"], + [layout-align-lg="center end"] { + justify-content: center; } + + [layout-align-lg="end"], + [layout-align-lg="end center"], + [layout-align-lg="end start"], + [layout-align-lg="end end"] { + justify-content: flex-end; } + + [layout-align-lg="space-around"], + [layout-align-lg="space-around center"], + [layout-align-lg="space-around start"], + [layout-align-lg="space-around end"] { + justify-content: space-around; } + + [layout-align-lg="space-between"], + [layout-align-lg="space-between center"], + [layout-align-lg="space-between start"], + [layout-align-lg="space-between end"] { + justify-content: space-between; } + + [layout-align-lg="center center"], + [layout-align-lg="start center"], + [layout-align-lg="end center"], + [layout-align-lg="space-between center"], + [layout-align-lg="space-around center"] { + align-items: center; } + + [layout-align-lg="center start"], + [layout-align-lg="start start"], + [layout-align-lg="end start"], + [layout-align-lg="space-between start"], + [layout-align-lg="space-around start"] { + align-items: flex-start; } + + [layout-align-lg="center end"], + [layout-align-lg="start end"], + [layout-align-lg="end end"], + [layout-align-lg="space-between end"], + [layout-align-lg="space-around end"] { + align-items: flex-end; } + + [layout-lg] { + box-sizing: border-box; + display: flex; } + + [layout-lg=column] { + flex-direction: column; } + + [layout-lg=row] { + flex-direction: row; } + + [flex-lg] { + flex: 1; } + + [flex-lg="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-lg="0"] { + max-height: 0%; } + + [flex-lg="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-lg="5"] { + max-height: 5%; } + + [flex-lg="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-lg="10"] { + max-height: 10%; } + + [flex-lg="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-lg="15"] { + max-height: 15%; } + + [flex-lg="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-lg="20"] { + max-height: 20%; } + + [flex-lg="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-lg="25"] { + max-height: 25%; } + + [flex-lg="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-lg="30"] { + max-height: 30%; } + + [flex-lg="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-lg="35"] { + max-height: 35%; } + + [flex-lg="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-lg="40"] { + max-height: 40%; } + + [flex-lg="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-lg="45"] { + max-height: 45%; } + + [flex-lg="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-lg="50"] { + max-height: 50%; } + + [flex-lg="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-lg="55"] { + max-height: 55%; } + + [flex-lg="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-lg="60"] { + max-height: 60%; } + + [flex-lg="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-lg="65"] { + max-height: 65%; } + + [flex-lg="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-lg="70"] { + max-height: 70%; } + + [flex-lg="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-lg="75"] { + max-height: 75%; } + + [flex-lg="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-lg="80"] { + max-height: 80%; } + + [flex-lg="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-lg="85"] { + max-height: 85%; } + + [flex-lg="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-lg="90"] { + max-height: 90%; } + + [flex-lg="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-lg="95"] { + max-height: 95%; } + + [flex-lg="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-lg="33"], [layout="row"] > [flex-lg="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-lg="66"], [layout="row"] > [flex-lg="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-lg="33"], [layout="column"] > [flex-lg="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-lg="66"], [layout="column"] > [flex-lg="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 1200px) { + [hide-gt-lg]:not([show-gt-lg]), [hide]:not([show-gt-lg]) { + display: none; } + + [layout-align-gt-lg="center"], + [layout-align-gt-lg="center center"], + [layout-align-gt-lg="center start"], + [layout-align-gt-lg="center end"] { + justify-content: center; } + + [layout-align-gt-lg="end"], + [layout-align-gt-lg="end center"], + [layout-align-gt-lg="end start"], + [layout-align-gt-lg="end end"] { + justify-content: flex-end; } + + [layout-align-gt-lg="space-around"], + [layout-align-gt-lg="space-around center"], + [layout-align-gt-lg="space-around start"], + [layout-align-gt-lg="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-lg="space-between"], + [layout-align-gt-lg="space-between center"], + [layout-align-gt-lg="space-between start"], + [layout-align-gt-lg="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-lg="center center"], + [layout-align-gt-lg="start center"], + [layout-align-gt-lg="end center"], + [layout-align-gt-lg="space-between center"], + [layout-align-gt-lg="space-around center"] { + align-items: center; } + + [layout-align-gt-lg="center start"], + [layout-align-gt-lg="start start"], + [layout-align-gt-lg="end start"], + [layout-align-gt-lg="space-between start"], + [layout-align-gt-lg="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-lg="center end"], + [layout-align-gt-lg="start end"], + [layout-align-gt-lg="end end"], + [layout-align-gt-lg="space-between end"], + [layout-align-gt-lg="space-around end"] { + align-items: flex-end; } + + [layout-gt-lg] { + box-sizing: border-box; + display: flex; } + + [layout-gt-lg=column] { + flex-direction: column; } + + [layout-gt-lg=row] { + flex-direction: row; } + + [flex-gt-lg] { + flex: 1; } + + [flex-gt-lg="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-lg="0"] { + max-height: 0%; } + + [flex-gt-lg="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-lg="5"] { + max-height: 5%; } + + [flex-gt-lg="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-lg="10"] { + max-height: 10%; } + + [flex-gt-lg="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-lg="15"] { + max-height: 15%; } + + [flex-gt-lg="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-lg="20"] { + max-height: 20%; } + + [flex-gt-lg="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-lg="25"] { + max-height: 25%; } + + [flex-gt-lg="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-lg="30"] { + max-height: 30%; } + + [flex-gt-lg="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-lg="35"] { + max-height: 35%; } + + [flex-gt-lg="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-lg="40"] { + max-height: 40%; } + + [flex-gt-lg="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-lg="45"] { + max-height: 45%; } + + [flex-gt-lg="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-lg="50"] { + max-height: 50%; } + + [flex-gt-lg="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-lg="55"] { + max-height: 55%; } + + [flex-gt-lg="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-lg="60"] { + max-height: 60%; } + + [flex-gt-lg="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-lg="65"] { + max-height: 65%; } + + [flex-gt-lg="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-lg="70"] { + max-height: 70%; } + + [flex-gt-lg="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-lg="75"] { + max-height: 75%; } + + [flex-gt-lg="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-lg="80"] { + max-height: 80%; } + + [flex-gt-lg="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-lg="85"] { + max-height: 85%; } + + [flex-gt-lg="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-lg="90"] { + max-height: 90%; } + + [flex-gt-lg="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-lg="95"] { + max-height: 95%; } + + [flex-gt-lg="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-lg="33"], [layout="row"] > [flex-gt-lg="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-lg="66"], [layout="row"] > [flex-gt-lg="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-lg="33"], [layout="column"] > [flex-gt-lg="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-lg="66"], [layout="column"] > [flex-gt-lg="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +[flex-order="0"] { + order: 0; } + +[flex-order="1"] { + order: 1; } + +[flex-order="2"] { + order: 2; } + +[flex-order="3"] { + order: 3; } + +[flex-order="4"] { + order: 4; } + +[flex-order="5"] { + order: 5; } + +[flex-order="6"] { + order: 6; } + +[flex-order="7"] { + order: 7; } + +[flex-order="8"] { + order: 8; } + +[flex-order="9"] { + order: 9; } + +/* Local overrides from angular-material src */ +/** +* +* SOGo v3 +* ng-Material overrides and project variables +* typography - definitions from http://www.google.com/design/spec/style/typography.html#typography-standard-styles +**/ +*, +*:before, +*:after { + box-sizing: border-box; } + +:focus { + outline: none; } + +html, body { + height: 100%; + color: rgba(0, 0, 0, 0.87); + background: #ffffff; + -webkit-tap-highlight-color: transparent; + -webkit-touch-callout: none; + -webkit-text-size-adjust: 100%; + -webkit-font-smoothing: antialiased; + text-rendering: optimizeLegibility; } + html p, body p { + line-height: 1.846; } + html h3, body h3 { + display: block; + -webkit-margin-before: 1em; + -webkit-margin-after: 1em; + -webkit-margin-start: 0px; + -webkit-margin-end: 0px; + font-size: 1.17em; + font-weight: bold; } + +button, +select, +html, +textarea, +input { + font-family: Ubuntu, "Helvetica Neue", sans-serif; } + +body { + font-size: 14px; + margin: 0; + padding: 0; + outline: none; } + +.inset { + padding: 10px; } + +button { + font-family: Ubuntu, "Helvetica Neue", sans-serif; } + +a, +a:-webkit-any-link { + background: transparent; + color: inherit; + outline: none; + text-decoration: none; } + +h1 { + font-size: 2em; + margin: 0.67em 0; } + +h2 { + font-size: 1.5em; + margin: 0.83em 0; } + +h3 { + font-size: 1.17em; + margin: 1em 0; } + +h4 { + font-size: 1em; + margin: 1.33em 0; } + +h5 { + font-size: 0.83em; + margin: 1.67em 0; } + +h6 { + font-size: 0.75em; + margin: 2.33em 0; } + +select, +button, +textarea, +input { + margin: 0; + font-size: 100%; + font-family: inherit; + vertical-align: baseline; } + +input[type="reset"], +input[type="submit"], +html input[type="button"], +button { + cursor: pointer; + -webkit-appearance: button; } + input[type="reset"][disabled], + input[type="submit"][disabled], + html input[type="button"][disabled], + button[disabled] { + cursor: default; } + +textarea { + vertical-align: top; + overflow: auto; } + +input[type="radio"], input[type="checkbox"] { + padding: 0; + box-sizing: border-box; } +input[type="search"] { + -webkit-appearance: textfield; + box-sizing: content-box; + -webkit-box-sizing: content-box; } + input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; } + +.md-shadow { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + border-radius: inherit; + pointer-events: none; } + +.md-shadow-bottom-z-1 { + box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); } + +.md-shadow-bottom-z-2 { + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4); } + +.md-shadow-animated.md-shadow { + transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1); } + +/* + * A container inside of a rippling element (eg a button), + * which contains all of the individual ripples + */ +.md-ripple-container { + pointer-events: none; + position: absolute; + overflow: hidden; + left: 0; + top: 0; + width: 100%; + height: 100%; + transition: all 0.55s cubic-bezier(0.25, 0.8, 0.25, 1); } + +.md-ripple { + position: absolute; + transform: scale(0); + transform-origin: 50% 50%; + opacity: 0; + border-radius: 50%; } + .md-ripple.md-ripple-placed { + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-ripple.md-ripple-scaled { + transform: scale(1); } + .md-ripple.md-ripple-active, .md-ripple.md-ripple-full, .md-ripple.md-ripple-visible { + opacity: 0.20; } + +md-tab > .md-ripple-container .md-ripple { + box-sizing: content-box; + background-color: transparent !important; + border-width: 0; + border-style: solid; + opacity: 0.20; + transform: none !important; } + md-tab > .md-ripple-container .md-ripple.md-ripple-active, md-tab > .md-ripple-container .md-ripple.md-ripple-full, md-tab > .md-ripple-container .md-ripple.md-ripple-visible { + opacity: 0.20; } + +.md-color-palette-definition { + background-image: url("data:image/svg+xml;utf8,{_red_: {_50_: _#ffebee_,_100_: _#ffcdd2_,_200_: _#ef9a9a_,_300_: _#e57373_,_400_: _#ef5350_,_500_: _#f44336_,_600_: _#e53935_,_700_: _#d32f2f_,_800_: _#c62828_,_900_: _#b71c1c_,_A100_: _#ff8a80_,_A200_: _#ff5252_,_A400_: _#ff1744_,_A700_: _#d50000_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100_},_pink_: {_50_: _#fce4ec_,_100_: _#f8bbd0_,_200_: _#f48fb1_,_300_: _#f06292_,_400_: _#ec407a_,_500_: _#e91e63_,_600_: _#d81b60_,_700_: _#c2185b_,_800_: _#ad1457_,_900_: _#880E4F_,_A100_: _#ff80ab_,_A200_: _#ff4081_,_A400_: _#f50057_,_A700_: _#c51162_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100_},_purple_: {_50_: _#f3e5f5_,_100_: _#e1bee7_,_200_: _#ce93d8_,_300_: _#ba68c8_,_400_: _#ab47bc_,_500_: _#9c27b0_,_600_: _#8e24aa_,_700_: _#7b1fa2_,_800_: _#6a1b9a_,_900_: _#4a148c_,_A100_: _#ea80fc_,_A200_: _#e040fb_,_A400_: _#d500f9_,_A700_: _#aa00ff_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_deep-purple_: {_50_: _#ede7f6_,_100_: _#d1c4e9_,_200_: _#b39ddb_,_300_: _#9575cd_,_400_: _#7e57c2_,_500_: _#673ab7_,_600_: _#5e35b1_,_700_: _#512da8_,_800_: _#4527a0_,_900_: _#311b92_,_A100_: _#b388ff_,_A200_: _#7c4dff_,_A400_: _#651fff_,_A700_: _#6200ea_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_indigo_: {_50_: _#e8eaf6_,_100_: _#c5cae9_,_200_: _#9fa8da_,_300_: _#7986cb_,_400_: _#5c6bc0_,_500_: _#3f51b5_,_600_: _#3949ab_,_700_: _#303f9f_,_800_: _#283593_,_900_: _#1a237e_,_A100_: _#8c9eff_,_A200_: _#536dfe_,_A400_: _#3d5afe_,_A700_: _#304ffe_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 A100_},_blue_: {_50_: _#e3f2fd_,_100_: _#bbdefb_,_200_: _#90caf9_,_300_: _#64b5f6_,_400_: _#42a5f5_,_500_: _#2196f3_,_600_: _#1e88e5_,_700_: _#1976d2_,_800_: _#1565c0_,_900_: _#0d47a1_,_A100_: _#82b1ff_,_A200_: _#448aff_,_A400_: _#2979ff_,_A700_: _#2962ff_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _100 200 300 400 A100_},_light-blue_: {_50_: _#e1f5fe_,_100_: _#b3e5fc_,_200_: _#81d4fa_,_300_: _#4fc3f7_,_400_: _#29b6f6_,_500_: _#03a9f4_,_600_: _#039be5_,_700_: _#0288d1_,_800_: _#0277bd_,_900_: _#01579b_,_A100_: _#80d8ff_,_A200_: _#40c4ff_,_A400_: _#00b0ff_,_A700_: _#0091ea_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900 A700_},_cyan_: {_50_: _#e0f7fa_,_100_: _#b2ebf2_,_200_: _#80deea_,_300_: _#4dd0e1_,_400_: _#26c6da_,_500_: _#00bcd4_,_600_: _#00acc1_,_700_: _#0097a7_,_800_: _#00838f_,_900_: _#006064_,_A100_: _#84ffff_,_A200_: _#18ffff_,_A400_: _#00e5ff_,_A700_: _#00b8d4_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_teal_: {_50_: _#e0f2f1_,_100_: _#b2dfdb_,_200_: _#80cbc4_,_300_: _#4db6ac_,_400_: _#26a69a_,_500_: _#009688_,_600_: _#00897b_,_700_: _#00796b_,_800_: _#00695c_,_900_: _#004d40_,_A100_: _#a7ffeb_,_A200_: _#64ffda_,_A400_: _#1de9b6_,_A700_: _#00bfa5_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_green_: {_50_: _#e8f5e9_,_100_: _#c8e6c9_,_200_: _#a5d6a7_,_300_: _#81c784_,_400_: _#66bb6a_,_500_: _#4caf50_,_600_: _#43a047_,_700_: _#388e3c_,_800_: _#2e7d32_,_900_: _#1b5e20_,_A100_: _#b9f6ca_,_A200_: _#69f0ae_,_A400_: _#00e676_,_A700_: _#00c853_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _500 600 700 800 900_},_light-green_: {_50_: _#f1f8e9_,_100_: _#dcedc8_,_200_: _#c5e1a5_,_300_: _#aed581_,_400_: _#9ccc65_,_500_: _#8bc34a_,_600_: _#7cb342_,_700_: _#689f38_,_800_: _#558b2f_,_900_: _#33691e_,_A100_: _#ccff90_,_A200_: _#b2ff59_,_A400_: _#76ff03_,_A700_: _#64dd17_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _800 900_},_lime_: {_50_: _#f9fbe7_,_100_: _#f0f4c3_,_200_: _#e6ee9c_,_300_: _#dce775_,_400_: _#d4e157_,_500_: _#cddc39_,_600_: _#c0ca33_,_700_: _#afb42b_,_800_: _#9e9d24_,_900_: _#827717_,_A100_: _#f4ff81_,_A200_: _#eeff41_,_A400_: _#c6ff00_,_A700_: _#aeea00_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _900_},_yellow_: {_50_: _#fffde7_,_100_: _#fff9c4_,_200_: _#fff59d_,_300_: _#fff176_,_400_: _#ffee58_,_500_: _#ffeb3b_,_600_: _#fdd835_,_700_: _#fbc02d_,_800_: _#f9a825_,_900_: _#f57f17_,_A100_: _#ffff8d_,_A200_: _#ffff00_,_A400_: _#ffea00_,_A700_: _#ffd600_,_contrastDefaultColor_: _dark_},_amber_: {_50_: _#fff8e1_,_100_: _#ffecb3_,_200_: _#ffe082_,_300_: _#ffd54f_,_400_: _#ffca28_,_500_: _#ffc107_,_600_: _#ffb300_,_700_: _#ffa000_,_800_: _#ff8f00_,_900_: _#ff6f00_,_A100_: _#ffe57f_,_A200_: _#ffd740_,_A400_: _#ffc400_,_A700_: _#ffab00_,_contrastDefaultColor_: _dark_},_orange_: {_50_: _#fff3e0_,_100_: _#ffe0b2_,_200_: _#ffcc80_,_300_: _#ffb74d_,_400_: _#ffa726_,_500_: _#ff9800_,_600_: _#fb8c00_,_700_: _#f57c00_,_800_: _#ef6c00_,_900_: _#e65100_,_A100_: _#ffd180_,_A200_: _#ffab40_,_A400_: _#ff9100_,_A700_: _#ff6d00_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _800 900_},_deep-orange_: {_50_: _#fbe9e7_,_100_: _#ffccbc_,_200_: _#ffab91_,_300_: _#ff8a65_,_400_: _#ff7043_,_500_: _#ff5722_,_600_: _#f4511e_,_700_: _#e64a19_,_800_: _#d84315_,_900_: _#bf360c_,_A100_: _#ff9e80_,_A200_: _#ff6e40_,_A400_: _#ff3d00_,_A700_: _#dd2c00_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300 400 A100 A200_},_brown_: {_50_: _#efebe9_,_100_: _#d7ccc8_,_200_: _#bcaaa4_,_300_: _#a1887f_,_400_: _#8d6e63_,_500_: _#795548_,_600_: _#6d4c41_,_700_: _#5d4037_,_800_: _#4e342e_,_900_: _#3e2723_,_A100_: _#d7ccc8_,_A200_: _#bcaaa4_,_A400_: _#8d6e63_,_A700_: _#5d4037_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200_},_grey_: {_0_: _#ffffff_,_50_: _#fafafa_,_100_: _#f5f5f5_,_200_: _#eeeeee_,_300_: _#e0e0e0_,_400_: _#bdbdbd_,_500_: _#9e9e9e_,_600_: _#757575_,_700_: _#616161_,_800_: _#424242_,_900_: _#212121_,_1000_: _#000000_,_A100_: _#ffffff_,_A200_: _#eeeeee_,_A400_: _#bdbdbd_,_A700_: _#616161_,_contrastDefaultColor_: _dark_,_contrastLightColors_: _600 700 800 900_},_blue-grey_: {_50_: _#eceff1_,_100_: _#cfd8dc_,_200_: _#b0bec5_,_300_: _#90a4ae_,_400_: _#78909c_,_500_: _#607d8b_,_600_: _#546e7a_,_700_: _#455a64_,_800_: _#37474f_,_900_: _#263238_,_A100_: _#cfd8dc_,_A200_: _#b0bec5_,_A400_: _#78909c_,_A700_: _#455a64_,_contrastDefaultColor_: _light_,_contrastDarkColors_: _50 100 200 300_}}"); + display: none; } + +/* Sizes: + 0 <= size <= 600 Phone + 600 <= size <= 960 Tablet + 960 <= size <= 1200 Tablet-Landscape + 1200 <= size PC +*/ +[layout] { + box-sizing: border-box; + display: flex; } + +[layout=column] { + flex-direction: column; } + +[layout=row] { + flex-direction: row; } + +[layout-padding], +[layout-padding] > [flex] { + padding: 8px; } + +[layout-margin], +[layout-margin] > [flex] { + margin: 8px; } + +[layout-wrap] { + flex-wrap: wrap; } + +[layout-fill] { + margin: 0; + min-height: 100%; + width: 100%; } + +@-moz-document url-prefix() { + [layout-fill] { + margin: 0; + width: 100%; + min-height: auto; + height: inherit; } } +[flex] { + flex: 1; } + +[flex="0"] { + flex: 0 0 0%; } + +[layout="row"] > [flex="0"] { + max-width: 0%; } + +[layout="column"] > [flex="0"] { + max-height: 0%; } + +[flex="5"] { + flex: 0 0 5%; } + +[layout="row"] > [flex="5"] { + max-width: 5%; } + +[layout="column"] > [flex="5"] { + max-height: 5%; } + +[flex="10"] { + flex: 0 0 10%; } + +[layout="row"] > [flex="10"] { + max-width: 10%; } + +[layout="column"] > [flex="10"] { + max-height: 10%; } + +[flex="15"] { + flex: 0 0 15%; } + +[layout="row"] > [flex="15"] { + max-width: 15%; } + +[layout="column"] > [flex="15"] { + max-height: 15%; } + +[flex="20"] { + flex: 0 0 20%; } + +[layout="row"] > [flex="20"] { + max-width: 20%; } + +[layout="column"] > [flex="20"] { + max-height: 20%; } + +[flex="25"] { + flex: 0 0 25%; } + +[layout="row"] > [flex="25"] { + max-width: 25%; } + +[layout="column"] > [flex="25"] { + max-height: 25%; } + +[flex="30"] { + flex: 0 0 30%; } + +[layout="row"] > [flex="30"] { + max-width: 30%; } + +[layout="column"] > [flex="30"] { + max-height: 30%; } + +[flex="35"] { + flex: 0 0 35%; } + +[layout="row"] > [flex="35"] { + max-width: 35%; } + +[layout="column"] > [flex="35"] { + max-height: 35%; } + +[flex="40"] { + flex: 0 0 40%; } + +[layout="row"] > [flex="40"] { + max-width: 40%; } + +[layout="column"] > [flex="40"] { + max-height: 40%; } + +[flex="45"] { + flex: 0 0 45%; } + +[layout="row"] > [flex="45"] { + max-width: 45%; } + +[layout="column"] > [flex="45"] { + max-height: 45%; } + +[flex="50"] { + flex: 0 0 50%; } + +[layout="row"] > [flex="50"] { + max-width: 50%; } + +[layout="column"] > [flex="50"] { + max-height: 50%; } + +[flex="55"] { + flex: 0 0 55%; } + +[layout="row"] > [flex="55"] { + max-width: 55%; } + +[layout="column"] > [flex="55"] { + max-height: 55%; } + +[flex="60"] { + flex: 0 0 60%; } + +[layout="row"] > [flex="60"] { + max-width: 60%; } + +[layout="column"] > [flex="60"] { + max-height: 60%; } + +[flex="65"] { + flex: 0 0 65%; } + +[layout="row"] > [flex="65"] { + max-width: 65%; } + +[layout="column"] > [flex="65"] { + max-height: 65%; } + +[flex="70"] { + flex: 0 0 70%; } + +[layout="row"] > [flex="70"] { + max-width: 70%; } + +[layout="column"] > [flex="70"] { + max-height: 70%; } + +[flex="75"] { + flex: 0 0 75%; } + +[layout="row"] > [flex="75"] { + max-width: 75%; } + +[layout="column"] > [flex="75"] { + max-height: 75%; } + +[flex="80"] { + flex: 0 0 80%; } + +[layout="row"] > [flex="80"] { + max-width: 80%; } + +[layout="column"] > [flex="80"] { + max-height: 80%; } + +[flex="85"] { + flex: 0 0 85%; } + +[layout="row"] > [flex="85"] { + max-width: 85%; } + +[layout="column"] > [flex="85"] { + max-height: 85%; } + +[flex="90"] { + flex: 0 0 90%; } + +[layout="row"] > [flex="90"] { + max-width: 90%; } + +[layout="column"] > [flex="90"] { + max-height: 90%; } + +[flex="95"] { + flex: 0 0 95%; } + +[layout="row"] > [flex="95"] { + max-width: 95%; } + +[layout="column"] > [flex="95"] { + max-height: 95%; } + +[flex="100"] { + flex: 0 0 100%; } + +[layout="row"] > [flex="100"] { + max-width: 100%; } + +[layout="column"] > [flex="100"] { + max-height: 100%; } + +[layout="row"] > [flex="33"], [layout="row"] > [flex="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } +[layout="row"] > [flex="66"], [layout="row"] > [flex="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + +[layout="column"] > [flex="33"], [layout="column"] > [flex="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } +[layout="column"] > [flex="66"], [layout="column"] > [flex="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } + +[layout-align="center"], +[layout-align="center center"], +[layout-align="center start"], +[layout-align="center end"] { + justify-content: center; } + +[layout-align="end"], +[layout-align="end center"], +[layout-align="end start"], +[layout-align="end end"] { + justify-content: flex-end; } + +[layout-align="space-around"], +[layout-align="space-around center"], +[layout-align="space-around start"], +[layout-align="space-around end"] { + justify-content: space-around; } + +[layout-align="space-between"], +[layout-align="space-between center"], +[layout-align="space-between start"], +[layout-align="space-between end"] { + justify-content: space-between; } + +[layout-align="center center"], +[layout-align="start center"], +[layout-align="end center"], +[layout-align="space-between center"], +[layout-align="space-around center"] { + align-items: center; } + +[layout-align="center start"], +[layout-align="start start"], +[layout-align="end start"], +[layout-align="space-between start"], +[layout-align="space-around start"] { + align-items: flex-start; } + +[layout-align="center end"], +[layout-align="start end"], +[layout-align="end end"], +[layout-align="space-between end"], +[layout-align="space-around end"] { + align-items: flex-end; } + +[hide]:not([show]) { + display: none; } + +@media (max-width: 600px) { + [hide-sm]:not([show-sm]), [hide]:not([show-sm]) { + display: none; } + + [layout-align-sm="center"], + [layout-align-sm="center center"], + [layout-align-sm="center start"], + [layout-align-sm="center end"] { + justify-content: center; } + + [layout-align-sm="end"], + [layout-align-sm="end center"], + [layout-align-sm="end start"], + [layout-align-sm="end end"] { + justify-content: flex-end; } + + [layout-align-sm="space-around"], + [layout-align-sm="space-around center"], + [layout-align-sm="space-around start"], + [layout-align-sm="space-around end"] { + justify-content: space-around; } + + [layout-align-sm="space-between"], + [layout-align-sm="space-between center"], + [layout-align-sm="space-between start"], + [layout-align-sm="space-between end"] { + justify-content: space-between; } + + [layout-align-sm="center center"], + [layout-align-sm="start center"], + [layout-align-sm="end center"], + [layout-align-sm="space-between center"], + [layout-align-sm="space-around center"] { + align-items: center; } + + [layout-align-sm="center start"], + [layout-align-sm="start start"], + [layout-align-sm="end start"], + [layout-align-sm="space-between start"], + [layout-align-sm="space-around start"] { + align-items: flex-start; } + + [layout-align-sm="center end"], + [layout-align-sm="start end"], + [layout-align-sm="end end"], + [layout-align-sm="space-between end"], + [layout-align-sm="space-around end"] { + align-items: flex-end; } + + [layout-sm] { + box-sizing: border-box; + display: flex; } + + [layout-sm=column] { + flex-direction: column; } + + [layout-sm=row] { + flex-direction: row; } + + [flex-sm] { + flex: 1; } + + [flex-sm="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-sm="0"] { + max-height: 0%; } + + [flex-sm="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-sm="5"] { + max-height: 5%; } + + [flex-sm="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-sm="10"] { + max-height: 10%; } + + [flex-sm="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-sm="15"] { + max-height: 15%; } + + [flex-sm="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-sm="20"] { + max-height: 20%; } + + [flex-sm="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-sm="25"] { + max-height: 25%; } + + [flex-sm="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-sm="30"] { + max-height: 30%; } + + [flex-sm="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-sm="35"] { + max-height: 35%; } + + [flex-sm="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-sm="40"] { + max-height: 40%; } + + [flex-sm="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-sm="45"] { + max-height: 45%; } + + [flex-sm="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-sm="50"] { + max-height: 50%; } + + [flex-sm="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-sm="55"] { + max-height: 55%; } + + [flex-sm="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-sm="60"] { + max-height: 60%; } + + [flex-sm="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-sm="65"] { + max-height: 65%; } + + [flex-sm="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-sm="70"] { + max-height: 70%; } + + [flex-sm="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-sm="75"] { + max-height: 75%; } + + [flex-sm="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-sm="80"] { + max-height: 80%; } + + [flex-sm="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-sm="85"] { + max-height: 85%; } + + [flex-sm="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-sm="90"] { + max-height: 90%; } + + [flex-sm="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-sm="95"] { + max-height: 95%; } + + [flex-sm="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-sm="33"], [layout="row"] > [flex-sm="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-sm="66"], [layout="row"] > [flex-sm="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-sm="33"], [layout="column"] > [flex-sm="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-sm="66"], [layout="column"] > [flex-sm="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 600px) { + [hide-gt-sm]:not([show-gt-sm]):not([show-md]):not([show-gt-md]):not([show-lg]):not([show-gt-lg]), [hide]:not([show-gt-sm]):not([show-md]):not([show-gt-md]):not([show-lg]):not([show-gt-lg]) { + display: none; } + + [layout-align-gt-sm="center"], + [layout-align-gt-sm="center center"], + [layout-align-gt-sm="center start"], + [layout-align-gt-sm="center end"] { + justify-content: center; } + + [layout-align-gt-sm="end"], + [layout-align-gt-sm="end center"], + [layout-align-gt-sm="end start"], + [layout-align-gt-sm="end end"] { + justify-content: flex-end; } + + [layout-align-gt-sm="space-around"], + [layout-align-gt-sm="space-around center"], + [layout-align-gt-sm="space-around start"], + [layout-align-gt-sm="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-sm="space-between"], + [layout-align-gt-sm="space-between center"], + [layout-align-gt-sm="space-between start"], + [layout-align-gt-sm="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-sm="center center"], + [layout-align-gt-sm="start center"], + [layout-align-gt-sm="end center"], + [layout-align-gt-sm="space-between center"], + [layout-align-gt-sm="space-around center"] { + align-items: center; } + + [layout-align-gt-sm="center start"], + [layout-align-gt-sm="start start"], + [layout-align-gt-sm="end start"], + [layout-align-gt-sm="space-between start"], + [layout-align-gt-sm="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-sm="center end"], + [layout-align-gt-sm="start end"], + [layout-align-gt-sm="end end"], + [layout-align-gt-sm="space-between end"], + [layout-align-gt-sm="space-around end"] { + align-items: flex-end; } + + [layout-gt-sm] { + box-sizing: border-box; + display: flex; } + + [layout-gt-sm=column] { + flex-direction: column; } + + [layout-gt-sm=row] { + flex-direction: row; } + + [flex-gt-sm] { + flex: 1; } + + [flex-gt-sm="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-sm="0"] { + max-height: 0%; } + + [flex-gt-sm="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-sm="5"] { + max-height: 5%; } + + [flex-gt-sm="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-sm="10"] { + max-height: 10%; } + + [flex-gt-sm="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-sm="15"] { + max-height: 15%; } + + [flex-gt-sm="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-sm="20"] { + max-height: 20%; } + + [flex-gt-sm="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-sm="25"] { + max-height: 25%; } + + [flex-gt-sm="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-sm="30"] { + max-height: 30%; } + + [flex-gt-sm="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-sm="35"] { + max-height: 35%; } + + [flex-gt-sm="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-sm="40"] { + max-height: 40%; } + + [flex-gt-sm="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-sm="45"] { + max-height: 45%; } + + [flex-gt-sm="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-sm="50"] { + max-height: 50%; } + + [flex-gt-sm="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-sm="55"] { + max-height: 55%; } + + [flex-gt-sm="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-sm="60"] { + max-height: 60%; } + + [flex-gt-sm="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-sm="65"] { + max-height: 65%; } + + [flex-gt-sm="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-sm="70"] { + max-height: 70%; } + + [flex-gt-sm="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-sm="75"] { + max-height: 75%; } + + [flex-gt-sm="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-sm="80"] { + max-height: 80%; } + + [flex-gt-sm="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-sm="85"] { + max-height: 85%; } + + [flex-gt-sm="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-sm="90"] { + max-height: 90%; } + + [flex-gt-sm="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-sm="95"] { + max-height: 95%; } + + [flex-gt-sm="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-sm="33"], [layout="row"] > [flex-gt-sm="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-sm="66"], [layout="row"] > [flex-gt-sm="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-sm="33"], [layout="column"] > [flex-gt-sm="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-sm="66"], [layout="column"] > [flex-gt-sm="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 600px) and (max-width: 960px) { + [hide-md]:not([show-md]), [hide]:not([show-md]) { + display: none; } + + [layout-align-md="center"], + [layout-align-md="center center"], + [layout-align-md="center start"], + [layout-align-md="center end"] { + justify-content: center; } + + [layout-align-md="end"], + [layout-align-md="end center"], + [layout-align-md="end start"], + [layout-align-md="end end"] { + justify-content: flex-end; } + + [layout-align-md="space-around"], + [layout-align-md="space-around center"], + [layout-align-md="space-around start"], + [layout-align-md="space-around end"] { + justify-content: space-around; } + + [layout-align-md="space-between"], + [layout-align-md="space-between center"], + [layout-align-md="space-between start"], + [layout-align-md="space-between end"] { + justify-content: space-between; } + + [layout-align-md="center center"], + [layout-align-md="start center"], + [layout-align-md="end center"], + [layout-align-md="space-between center"], + [layout-align-md="space-around center"] { + align-items: center; } + + [layout-align-md="center start"], + [layout-align-md="start start"], + [layout-align-md="end start"], + [layout-align-md="space-between start"], + [layout-align-md="space-around start"] { + align-items: flex-start; } + + [layout-align-md="center end"], + [layout-align-md="start end"], + [layout-align-md="end end"], + [layout-align-md="space-between end"], + [layout-align-md="space-around end"] { + align-items: flex-end; } + + [layout-md] { + box-sizing: border-box; + display: flex; } + + [layout-md=column] { + flex-direction: column; } + + [layout-md=row] { + flex-direction: row; } + + [flex-md] { + flex: 1; } + + [flex-md="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-md="0"] { + max-height: 0%; } + + [flex-md="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-md="5"] { + max-height: 5%; } + + [flex-md="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-md="10"] { + max-height: 10%; } + + [flex-md="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-md="15"] { + max-height: 15%; } + + [flex-md="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-md="20"] { + max-height: 20%; } + + [flex-md="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-md="25"] { + max-height: 25%; } + + [flex-md="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-md="30"] { + max-height: 30%; } + + [flex-md="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-md="35"] { + max-height: 35%; } + + [flex-md="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-md="40"] { + max-height: 40%; } + + [flex-md="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-md="45"] { + max-height: 45%; } + + [flex-md="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-md="50"] { + max-height: 50%; } + + [flex-md="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-md="55"] { + max-height: 55%; } + + [flex-md="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-md="60"] { + max-height: 60%; } + + [flex-md="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-md="65"] { + max-height: 65%; } + + [flex-md="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-md="70"] { + max-height: 70%; } + + [flex-md="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-md="75"] { + max-height: 75%; } + + [flex-md="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-md="80"] { + max-height: 80%; } + + [flex-md="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-md="85"] { + max-height: 85%; } + + [flex-md="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-md="90"] { + max-height: 90%; } + + [flex-md="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-md="95"] { + max-height: 95%; } + + [flex-md="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-md="33"], [layout="row"] > [flex-md="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-md="66"], [layout="row"] > [flex-md="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-md="33"], [layout="column"] > [flex-md="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-md="66"], [layout="column"] > [flex-md="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 960px) { + [hide-gt-md]:not([show-gt-md]):not([show-lg]):not([show-gt-lg]), [hide]:not([show-gt-md]):not([show-lg]):not([show-gt-lg]) { + display: none; } + + [layout-align-gt-md="center"], + [layout-align-gt-md="center center"], + [layout-align-gt-md="center start"], + [layout-align-gt-md="center end"] { + justify-content: center; } + + [layout-align-gt-md="end"], + [layout-align-gt-md="end center"], + [layout-align-gt-md="end start"], + [layout-align-gt-md="end end"] { + justify-content: flex-end; } + + [layout-align-gt-md="space-around"], + [layout-align-gt-md="space-around center"], + [layout-align-gt-md="space-around start"], + [layout-align-gt-md="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-md="space-between"], + [layout-align-gt-md="space-between center"], + [layout-align-gt-md="space-between start"], + [layout-align-gt-md="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-md="center center"], + [layout-align-gt-md="start center"], + [layout-align-gt-md="end center"], + [layout-align-gt-md="space-between center"], + [layout-align-gt-md="space-around center"] { + align-items: center; } + + [layout-align-gt-md="center start"], + [layout-align-gt-md="start start"], + [layout-align-gt-md="end start"], + [layout-align-gt-md="space-between start"], + [layout-align-gt-md="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-md="center end"], + [layout-align-gt-md="start end"], + [layout-align-gt-md="end end"], + [layout-align-gt-md="space-between end"], + [layout-align-gt-md="space-around end"] { + align-items: flex-end; } + + [layout-gt-md] { + box-sizing: border-box; + display: flex; } + + [layout-gt-md=column] { + flex-direction: column; } + + [layout-gt-md=row] { + flex-direction: row; } + + [flex-gt-md] { + flex: 1; } + + [flex-gt-md="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-md="0"] { + max-height: 0%; } + + [flex-gt-md="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-md="5"] { + max-height: 5%; } + + [flex-gt-md="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-md="10"] { + max-height: 10%; } + + [flex-gt-md="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-md="15"] { + max-height: 15%; } + + [flex-gt-md="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-md="20"] { + max-height: 20%; } + + [flex-gt-md="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-md="25"] { + max-height: 25%; } + + [flex-gt-md="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-md="30"] { + max-height: 30%; } + + [flex-gt-md="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-md="35"] { + max-height: 35%; } + + [flex-gt-md="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-md="40"] { + max-height: 40%; } + + [flex-gt-md="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-md="45"] { + max-height: 45%; } + + [flex-gt-md="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-md="50"] { + max-height: 50%; } + + [flex-gt-md="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-md="55"] { + max-height: 55%; } + + [flex-gt-md="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-md="60"] { + max-height: 60%; } + + [flex-gt-md="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-md="65"] { + max-height: 65%; } + + [flex-gt-md="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-md="70"] { + max-height: 70%; } + + [flex-gt-md="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-md="75"] { + max-height: 75%; } + + [flex-gt-md="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-md="80"] { + max-height: 80%; } + + [flex-gt-md="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-md="85"] { + max-height: 85%; } + + [flex-gt-md="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-md="90"] { + max-height: 90%; } + + [flex-gt-md="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-md="95"] { + max-height: 95%; } + + [flex-gt-md="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-md="33"], [layout="row"] > [flex-gt-md="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-md="66"], [layout="row"] > [flex-gt-md="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-md="33"], [layout="column"] > [flex-gt-md="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-md="66"], [layout="column"] > [flex-gt-md="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 960px) and (max-width: 1200px) { + [hide-lg]:not([show-lg]), [hide]:not([show-lg]) { + display: none; } + + [layout-align-lg="center"], + [layout-align-lg="center center"], + [layout-align-lg="center start"], + [layout-align-lg="center end"] { + justify-content: center; } + + [layout-align-lg="end"], + [layout-align-lg="end center"], + [layout-align-lg="end start"], + [layout-align-lg="end end"] { + justify-content: flex-end; } + + [layout-align-lg="space-around"], + [layout-align-lg="space-around center"], + [layout-align-lg="space-around start"], + [layout-align-lg="space-around end"] { + justify-content: space-around; } + + [layout-align-lg="space-between"], + [layout-align-lg="space-between center"], + [layout-align-lg="space-between start"], + [layout-align-lg="space-between end"] { + justify-content: space-between; } + + [layout-align-lg="center center"], + [layout-align-lg="start center"], + [layout-align-lg="end center"], + [layout-align-lg="space-between center"], + [layout-align-lg="space-around center"] { + align-items: center; } + + [layout-align-lg="center start"], + [layout-align-lg="start start"], + [layout-align-lg="end start"], + [layout-align-lg="space-between start"], + [layout-align-lg="space-around start"] { + align-items: flex-start; } + + [layout-align-lg="center end"], + [layout-align-lg="start end"], + [layout-align-lg="end end"], + [layout-align-lg="space-between end"], + [layout-align-lg="space-around end"] { + align-items: flex-end; } + + [layout-lg] { + box-sizing: border-box; + display: flex; } + + [layout-lg=column] { + flex-direction: column; } + + [layout-lg=row] { + flex-direction: row; } + + [flex-lg] { + flex: 1; } + + [flex-lg="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-lg="0"] { + max-height: 0%; } + + [flex-lg="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-lg="5"] { + max-height: 5%; } + + [flex-lg="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-lg="10"] { + max-height: 10%; } + + [flex-lg="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-lg="15"] { + max-height: 15%; } + + [flex-lg="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-lg="20"] { + max-height: 20%; } + + [flex-lg="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-lg="25"] { + max-height: 25%; } + + [flex-lg="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-lg="30"] { + max-height: 30%; } + + [flex-lg="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-lg="35"] { + max-height: 35%; } + + [flex-lg="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-lg="40"] { + max-height: 40%; } + + [flex-lg="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-lg="45"] { + max-height: 45%; } + + [flex-lg="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-lg="50"] { + max-height: 50%; } + + [flex-lg="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-lg="55"] { + max-height: 55%; } + + [flex-lg="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-lg="60"] { + max-height: 60%; } + + [flex-lg="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-lg="65"] { + max-height: 65%; } + + [flex-lg="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-lg="70"] { + max-height: 70%; } + + [flex-lg="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-lg="75"] { + max-height: 75%; } + + [flex-lg="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-lg="80"] { + max-height: 80%; } + + [flex-lg="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-lg="85"] { + max-height: 85%; } + + [flex-lg="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-lg="90"] { + max-height: 90%; } + + [flex-lg="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-lg="95"] { + max-height: 95%; } + + [flex-lg="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-lg="33"], [layout="row"] > [flex-lg="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-lg="66"], [layout="row"] > [flex-lg="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-lg="33"], [layout="column"] > [flex-lg="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-lg="66"], [layout="column"] > [flex-lg="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +@media (min-width: 1200px) { + [hide-gt-lg]:not([show-gt-lg]), [hide]:not([show-gt-lg]) { + display: none; } + + [layout-align-gt-lg="center"], + [layout-align-gt-lg="center center"], + [layout-align-gt-lg="center start"], + [layout-align-gt-lg="center end"] { + justify-content: center; } + + [layout-align-gt-lg="end"], + [layout-align-gt-lg="end center"], + [layout-align-gt-lg="end start"], + [layout-align-gt-lg="end end"] { + justify-content: flex-end; } + + [layout-align-gt-lg="space-around"], + [layout-align-gt-lg="space-around center"], + [layout-align-gt-lg="space-around start"], + [layout-align-gt-lg="space-around end"] { + justify-content: space-around; } + + [layout-align-gt-lg="space-between"], + [layout-align-gt-lg="space-between center"], + [layout-align-gt-lg="space-between start"], + [layout-align-gt-lg="space-between end"] { + justify-content: space-between; } + + [layout-align-gt-lg="center center"], + [layout-align-gt-lg="start center"], + [layout-align-gt-lg="end center"], + [layout-align-gt-lg="space-between center"], + [layout-align-gt-lg="space-around center"] { + align-items: center; } + + [layout-align-gt-lg="center start"], + [layout-align-gt-lg="start start"], + [layout-align-gt-lg="end start"], + [layout-align-gt-lg="space-between start"], + [layout-align-gt-lg="space-around start"] { + align-items: flex-start; } + + [layout-align-gt-lg="center end"], + [layout-align-gt-lg="start end"], + [layout-align-gt-lg="end end"], + [layout-align-gt-lg="space-between end"], + [layout-align-gt-lg="space-around end"] { + align-items: flex-end; } + + [layout-gt-lg] { + box-sizing: border-box; + display: flex; } + + [layout-gt-lg=column] { + flex-direction: column; } + + [layout-gt-lg=row] { + flex-direction: row; } + + [flex-gt-lg] { + flex: 1; } + + [flex-gt-lg="0"] { + flex: 0 0 0%; } + + [layout="row"] > [flex-gt-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-lg="0"] { + max-height: 0%; } + + [flex-gt-lg="5"] { + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-lg="5"] { + max-height: 5%; } + + [flex-gt-lg="10"] { + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-lg="10"] { + max-height: 10%; } + + [flex-gt-lg="15"] { + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-lg="15"] { + max-height: 15%; } + + [flex-gt-lg="20"] { + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-lg="20"] { + max-height: 20%; } + + [flex-gt-lg="25"] { + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-lg="25"] { + max-height: 25%; } + + [flex-gt-lg="30"] { + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-lg="30"] { + max-height: 30%; } + + [flex-gt-lg="35"] { + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-lg="35"] { + max-height: 35%; } + + [flex-gt-lg="40"] { + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-lg="40"] { + max-height: 40%; } + + [flex-gt-lg="45"] { + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-lg="45"] { + max-height: 45%; } + + [flex-gt-lg="50"] { + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-lg="50"] { + max-height: 50%; } + + [flex-gt-lg="55"] { + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-lg="55"] { + max-height: 55%; } + + [flex-gt-lg="60"] { + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-lg="60"] { + max-height: 60%; } + + [flex-gt-lg="65"] { + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-lg="65"] { + max-height: 65%; } + + [flex-gt-lg="70"] { + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-lg="70"] { + max-height: 70%; } + + [flex-gt-lg="75"] { + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-lg="75"] { + max-height: 75%; } + + [flex-gt-lg="80"] { + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-lg="80"] { + max-height: 80%; } + + [flex-gt-lg="85"] { + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-lg="85"] { + max-height: 85%; } + + [flex-gt-lg="90"] { + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-lg="90"] { + max-height: 90%; } + + [flex-gt-lg="95"] { + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-lg="95"] { + max-height: 95%; } + + [flex-gt-lg="100"] { + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-lg="33"], [layout="row"] > [flex-gt-lg="34"] { + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-lg="66"], [layout="row"] > [flex-gt-lg="67"] { + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-lg="33"], [layout="column"] > [flex-gt-lg="34"] { + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-lg="66"], [layout="column"] > [flex-gt-lg="67"] { + flex: 0 0 66.66%; + max-height: 66.66%; } } +[flex-order="0"] { + order: 0; } + +[flex-order="1"] { + order: 1; } + +[flex-order="2"] { + order: 2; } + +[flex-order="3"] { + order: 3; } + +[flex-order="4"] { + order: 4; } + +[flex-order="5"] { + order: 5; } + +[flex-order="6"] { + order: 6; } + +[flex-order="7"] { + order: 7; } + +[flex-order="8"] { + order: 8; } + +[flex-order="9"] { + order: 9; } + +/* Angular-material components local overrides */ +md-list { + padding: 8px 0px 8px 0px; } + +md-item-content { + display: flex; + align-items: center; + flex-direction: row; + box-sizing: border-box; + position: relative; + padding: 0px 0px 0px 0px; } + +/** + * The left tile for a list item. + */ +.md-tile-left { + min-width: 56px; + margin-right: -16px; + height: 56px; + background-color: grey; } + +/** + * The center content tile for a list item. + */ +.md-tile-content, .sg-tile-content { + flex: 1; + padding: 16px; + text-overflow: ellipsis; } + .md-tile-content h3, .sg-tile-content h3 { + margin: 0 0 3px 0; + font-weight: 400; + font-size: 1.1em; } + .md-tile-content h4, .sg-tile-content h4 { + margin: 0 0 3px 0; + font-weight: 400; + font-size: 0.9em; } + .md-tile-content p, .sg-tile-content p { + margin: 0 0 3px 0; + font-size: 0.75em; } + +.sg-tile-content { + margin-left: 16px; } + .sg-tile-content .name { + margin: 0 0 3px 0; + font-weight: 400; + font-size: 1.1em; } + .sg-tile-content .subject { + margin: 0 0 3px 0; + font-weight: 400; + font-size: 0.9em; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; } + .sg-tile-content p { + margin: 0 0 3px 0; + font-size: 0.75em; } + +/** + * The right tile for a list item. + */ +.md-tile-right { + padding-right: 0px; } + +md-divider { + display: block; + border-top: 1px solid; + margin: 0; } + md-divider[md-inset] { + margin-left: 72px; } + +/*# sourceMappingURL=components.css.map */ diff --git a/UI/WebServerResources/css/components.css.map b/UI/WebServerResources/css/components.css.map new file mode 100644 index 000000000..d617d885d --- /dev/null +++ b/UI/WebServerResources/css/components.css.map @@ -0,0 +1,7 @@ +{ +"version": 3, +"mappings": "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", +"sources": ["../scss/components.scss","../angular-material/src/core/style/structure.scss","../angular-material/src/core/style/variables.scss","../angular-material/src/core/style/mixins.scss","../angular-material/src/core/style/layout.scss","../scss/vendors/angular-material/core/style/structure.scss","../scss/vendors/angular-material/core/style/variables.scss","../scss/vendors/angular-material/core/style/mixins.scss","../scss/vendors/angular-material/core/style/layout.scss","../scss/vendors/angular-material/components/list/list.scss","../scss/vendors/angular-material/components/divider/divider.scss"], +"names": [], +"file": "components.css" +} diff --git a/UI/WebServerResources/js/MailerUI.js b/UI/WebServerResources/js/MailerUI.js index 67f8483ec..7361d6d3f 100644 --- a/UI/WebServerResources/js/MailerUI.js +++ b/UI/WebServerResources/js/MailerUI.js @@ -164,6 +164,13 @@ allowedTagsPattern: /([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)/i }); }]) + //todo : define complete custom themes (light and dark) with SOGo green as accent-color + .config(function($mdThemingProvider) { + $mdThemingProvider.theme('default') + .primaryColor('grey', { + 'default': '800' + }); + }) .run(function($rootScope) { $rootScope.$on('$routeChangeError', function(event, current, previous, rejection) { diff --git a/UI/WebServerResources/scss/ContactsUI.scss b/UI/WebServerResources/scss/ContactsUI.scss index 84a87c6e3..359d196ec 100644 --- a/UI/WebServerResources/scss/ContactsUI.scss +++ b/UI/WebServerResources/scss/ContactsUI.scss @@ -1,4 +1,4 @@ -@import "settings"; +@import "functions"; //$primary-color: #75B4BF; //$topbar-link-bg-active: #75B4BF; diff --git a/UI/WebServerResources/scss/MailerUI.scss b/UI/WebServerResources/scss/MailerUI.scss index 7089b5bae..7aa0ce490 100644 --- a/UI/WebServerResources/scss/MailerUI.scss +++ b/UI/WebServerResources/scss/MailerUI.scss @@ -1,4 +1,4 @@ -@import "settings"; +@import "functions"; $module-color: #D04747; // red $module-secondary-color: #501B1B; // darker red diff --git a/UI/WebServerResources/scss/SOGoRootPage.scss b/UI/WebServerResources/scss/SOGoRootPage.scss index 0afe01ab0..b8dfccfbc 100644 --- a/UI/WebServerResources/scss/SOGoRootPage.scss +++ b/UI/WebServerResources/scss/SOGoRootPage.scss @@ -1,4 +1,4 @@ -@import "settings"; +@import "functions"; @import "foundation"; /* @import "foundation/components/alert-boxes", */ /* "foundation/components/buttons", */ diff --git a/UI/WebServerResources/scss/_functions.scss b/UI/WebServerResources/scss/_functions.scss new file mode 100644 index 000000000..b840a0930 --- /dev/null +++ b/UI/WebServerResources/scss/_functions.scss @@ -0,0 +1,44 @@ +// SOGo by Inverse +// sogo.nu +// version 3.alpha +// + +// +// UTILITIES FUNCTIONS +// + +// Strip Unit - From Foundation +// Removes the unit (e.g. px, em, rem) from a value, returning the number only. +// +// @param {number} $num - Number to strip unit from. +// @return The same number, sans unit. +@function strip-unit($num) { + @return $num / ($num * 0 + 1); +} + +/// sp|dp to px +// Google's Material design specs are in 'sp' or 'dp' which are not css units +// 'dp' is 'density independant pexels' and 'sp' is 'scale-independent pixels' (same as dp, but will be scaled by the user's font size preference) +// Android gives a 160dpi base value to 'sp' and 'dp', but Google's examples seems to use 'sp' as 'px' +// We define a scaling factor in case we need to adjust +// 'sp' is scale to 1 css-px for a rem-base-value of 16px (default) +// 'dp' is scale to 1 css-px according to scaling factor +// +// sp-to-px converts a 'sp' value to css-pixel value. Units, if specified will be stripped +// dp-to-px converts a 'dp' value to css-pixel value. Units, if specified will be stripped +// +// @param {number} $value - sp or dp value to convert. +// +// @return {number} in px. +// +@function dp-to-px($value) { + $value: strip-unit($value) * strip-unit($sg-dp-scale-factor) * 1px; + @if ($value == 0sp) { $value: 0; } // Turn 0rem into 0 + @return $value; +} +@function sp-to-px($value) { + $value: strip-unit($value) * $sg-sp-scale-factor * 1px; + @if ($value == 0sp) { $value: 0; } // Turn 0sp into 0 + @return $value; +} + diff --git a/UI/WebServerResources/scss/_settings.scss b/UI/WebServerResources/scss/_settings.scss deleted file mode 100644 index 91b1ecae1..000000000 --- a/UI/WebServerResources/scss/_settings.scss +++ /dev/null @@ -1,1292 +0,0 @@ -// Foundation by ZURB -// foundation.zurb.com -// Licensed under MIT Open Source - -// -// FOUNDATION SETTINGS -// - -// This is the default html and body font-size for the base rem value. -// $rem-base: 16px; -//$rem-base: 12px; - -// Allows the use of rem-calc() or lower-bound() in your settings -@import "foundation/functions"; - -// The default font-size is set to 100% of the browser style sheet (usually 16px) -// for compatibility with browser-based text zoom or user-set defaults. - -// Since the typical default browser font-size is 16px, that makes the calculation for grid size. -// If you want your base font-size to be different and not have it affect the grid breakpoints, -// set $rem-base to $base-font-size and make sure $base-font-size is a px value. -// $base-font-size: 100%; -//$base-font-size: 12px; -$base-font-size: 87%; - -// The $base-line-height is 100% while $base-font-size is 150% -// $base-line-height: 150%; - -// We use this to control whether or not CSS classes come through in the gem files. -// $include-html-classes: true; -// $include-print-styles: true; -// $include-html-global-classes: $include-html-classes; - -// Grid - -// $include-html-grid-classes: $include-html-classes; -// $include-xl-html-grid-classes: false; - -// $row-width: rem-calc(1000); -// $total-columns: 12; - -// Global - -// We use these to control various global styles -// $body-bg: #fff; -// $body-font-color: #222; -// $body-font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; -// $body-font-weight: normal; -// $body-font-style: normal; - -// We use this to control font-smoothing -// $font-smoothing: antialiased; - -// We use these to control text direction settings -// $text-direction: ltr; -// $opposite-direction: right; -// $default-float: left; - -// We use these as default colors throughout -// $primary-color: #008CBA; -$primary-color: #54B948; // SOGo green -// $secondary-color: #e7e7e7; -$secondary-color: #3D792A; -// $alert-color: #f04124; -// $success-color: #43AC6A; -// $warning-color: #f08a24; -// $info-color: #a0d3e8; - -// We use these to make sure border radius matches unless we want it different. -// $global-radius: 3px; -// $global-rounded: 1000px; - -// We use these to control inset shadow shiny edges and depressions. -// $shiny-edge-size: 0 1px 0; -// $shiny-edge-color: rgba(#fff, .5); -// $shiny-edge-active-color: rgba(#000, .2); - -// $column-gutter: rem-calc(30); - -// Media Query Ranges -// $small-range: (0em, 40em); -// $medium-range: (40.063em, 64em); -// $large-range: (64.063em, 90em); -// $xlarge-range: (90.063em, 120em); -// $xxlarge-range: (120.063em, 99999999em); - -// $screen: "only screen"; - -// $landscape: "#{$screen} and (orientation: landscape)"; -// $portrait: "#{$screen} and (orientation: portrait)"; - -// $small-up: $screen; -// $small-only: "#{$screen} and (max-width: #{upper-bound($small-range)})"; - -// $medium-up: "#{$screen} and (min-width:#{lower-bound($medium-range)})"; -// $medium-only: "#{$screen} and (min-width:#{lower-bound($medium-range)}) and (max-width:#{upper-bound($medium-range)})"; - -// $large-up: "#{$screen} and (min-width:#{lower-bound($large-range)})"; -// $large-only: "#{$screen} and (min-width:#{lower-bound($large-range)}) and (max-width:#{upper-bound($large-range)})"; - -// $xlarge-up: "#{$screen} and (min-width:#{lower-bound($xlarge-range)})"; -// $xlarge-only: "#{$screen} and (min-width:#{lower-bound($xlarge-range)}) and (max-width:#{upper-bound($xlarge-range)})"; - -// $xxlarge-up: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)})"; -// $xxlarge-only: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)}) and (max-width:#{upper-bound($xxlarge-range)})"; - -// Legacy -// $small: $medium-up; -// $medium: $medium-up; -// $large: $large-up; - -//We use this as cursors values for enabling the option of having custom cursors in the whole site's stylesheet -// $cursor-crosshair-value: crosshair; -// $cursor-default-value: default; -// $cursor-pointer-value: pointer; -// $cursor-help-value: help; -// $cursor-text-value: text; - -// -// TYPOGRAPHY -// - -// $include-html-type-classes: $include-html-classes; - -// We use these to control header font styles -// $header-font-family: $body-font-family; -// $header-font-weight: normal; -// $header-font-style: normal; -// $header-font-color: #222; -// $header-line-height: 1.4; -// $header-top-margin: .2rem; -// $header-bottom-margin: .5rem; -// $header-text-rendering: optimizeLegibility; - -// We use these to control header font sizes -// $h1-font-size: rem-calc(44); -// $h2-font-size: rem-calc(37); -// $h3-font-size: rem-calc(27); -// $h4-font-size: rem-calc(23); -// $h5-font-size: rem-calc(18); -// $h6-font-size: 1rem; - -// These control how subheaders are styled. -// $subheader-line-height: 1.4; -// $subheader-font-color: scale-color($header-font-color, $lightness: 35%); -// $subheader-font-weight: normal; -// $subheader-top-margin: .2rem; -// $subheader-bottom-margin: .5rem; - -// A general styling -// $small-font-size: 60%; -// $small-font-color: scale-color($header-font-color, $lightness: 35%); - -// We use these to style paragraphs -// $paragraph-font-family: inherit; -// $paragraph-font-weight: normal; -// $paragraph-font-size: 1rem; -// $paragraph-line-height: 1.6; -// $paragraph-margin-bottom: rem-calc(20); -// $paragraph-aside-font-size: rem-calc(14); -// $paragraph-aside-line-height: 1.35; -// $paragraph-aside-font-style: italic; -// $paragraph-text-rendering: optimizeLegibility; - -// We use these to style tags -// $code-color: scale-color($alert-color, $lightness: -27%); -// $code-font-family: Consolas, 'Liberation Mono', Courier, monospace; -// $code-font-weight: bold; - -// We use these to style anchors -// $anchor-text-decoration: none; -// $anchor-font-color: $primary-color; -// $anchor-font-color-hover: scale-color($primary-color, $lightness: -14%); - -// We use these to style the
element -// $hr-border-width: 1px; -// $hr-border-style: solid; -// $hr-border-color: #ddd; -// $hr-margin: rem-calc(20); - -// We use these to style lists -// $list-style-position: outside; -// $list-side-margin: 1.1rem; -// $list-ordered-side-margin: 1.4rem; -// $list-side-margin-no-bullet: 0; -// $list-nested-margin: rem-calc(20); -// $definition-list-header-weight: bold; -// $definition-list-header-margin-bottom: .3rem; -// $definition-list-margin-bottom: rem-calc(12); - -// We use these to style blockquotes -// $blockquote-font-color: scale-color($header-font-color, $lightness: 35%); -// $blockquote-padding: rem-calc(9 20 0 19); -// $blockquote-border: 1px solid #ddd; -// $blockquote-cite-font-size: rem-calc(13); -// $blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%); -// $blockquote-cite-link-color: $blockquote-cite-font-color; - -// Acronym styles -// $acronym-underline: 1px dotted #ddd; - -// We use these to control padding and margin -// $microformat-padding: rem-calc(10 12); -// $microformat-margin: rem-calc(0 0 20 0); - -// We use these to control the border styles -// $microformat-border-width: 1px; -// $microformat-border-style: solid; -// $microformat-border-color: #ddd; - -// We use these to control full name font styles -// $microformat-fullname-font-weight: bold; -// $microformat-fullname-font-size: rem-calc(15); - -// We use this to control the summary font styles -// $microformat-summary-font-weight: bold; - -// We use this to control abbr padding -// $microformat-abbr-padding: rem-calc(0 1); - -// We use this to control abbr font styles -// $microformat-abbr-font-weight: bold; -// $microformat-abbr-font-decoration: none; - -// Accordion - -// $include-html-accordion-classes: $include-html-classes; - -// $accordion-navigation-padding: rem-calc(16); -// $accordion-navigation-bg-color: #efefef ; -// $accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%); -// $accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%); -// $accordion-navigation-font-color: #222; -// $accordion-navigation-font-size: rem-calc(16); -// $accordion-navigation-font-family: $body-font-family; - -// $accordion-content-padding: $column-gutter/2; -// $accordion-content-active-bg-color: #fff; - -// Alert Boxes - -// $include-html-alert-classes: $include-html-classes; - -// We use this to control alert padding. -// $alert-padding-top: rem-calc(14); -// $alert-padding-default-float: $alert-padding-top; -// $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10); -// $alert-padding-bottom: $alert-padding-top; - -// We use these to control text style. -// $alert-font-weight: normal; -// $alert-font-size: rem-calc(13); -$alert-font-size: rem-calc(12); -// $alert-font-color: #fff; -// $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%); - -// We use this for close hover effect. -// $alert-function-factor: -14%; - -// We use these to control border styles. -// $alert-border-style: solid; -// $alert-border-width: 1px; -// $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor); -// $alert-bottom-margin: rem-calc(20); - -// We use these to style the close buttons -// $alert-close-color: #333; -// $alert-close-top: 50%; -// $alert-close-position: rem-calc(4); -// $alert-close-font-size: rem-calc(22); -// $alert-close-opacity: 0.3; -// $alert-close-opacity-hover: 0.5; -// $alert-close-padding: 9px 6px 4px; - -// We use this to control border radius -// $alert-radius: $global-radius; - -// We use this to control transition effects -// $alert-transition-speed: 300ms; -// $alert-transition-ease: ease-out; - -// Block Grid - -// $include-html-grid-classes: $include-html-classes; -// $include-xl-html-block-grid-classes: false; - -// We use this to control the maximum number of block grid elements per row -$block-grid-elements: 12; -$block-grid-default-spacing: rem-calc(20); -$align-block-grid-to-grid: true; - - -// Enables media queries for block-grid classes. Set to false if writing semantic HTML. -// $block-grid-media-queries: true; - -// Breadcrumbs - -// $include-html-nav-classes: $include-html-classes; - -// We use this to set the background color for the breadcrumb container. -// $crumb-bg: scale-color($secondary-color, $lightness: 55%); - -// We use these to set the padding around the breadcrumbs. -// $crumb-padding: rem-calc(9 14 9); -// $crumb-side-padding: rem-calc(12); - -// We use these to control border styles. -// $crumb-function-factor: -10%; -// $crumb-border-size: 1px; -// $crumb-border-style: solid; -// $crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor); -// $crumb-radius: $global-radius; - -// We use these to set various text styles for breadcrumbs. -// $crumb-font-size: rem-calc(11); -// $crumb-font-color: $primary-color; -// $crumb-font-color-current: #333; -// $crumb-font-color-unavailable: #999; -// $crumb-font-transform: uppercase; -// $crumb-link-decor: underline; - -// We use these to control the slash between breadcrumbs -// $crumb-slash-color: #aaa; -// $crumb-slash: "/"; - -// -// BUTTONS -// - -// $include-html-button-classes: $include-html-classes; - -// We use these to build padding for buttons. -// $button-tny: rem-calc(10); -// $button-sml: rem-calc(14); -// $button-med: rem-calc(16); -// $button-lrg: rem-calc(18); - -// We use this to control the display property. -// $button-display: inline-block; -// $button-margin-bottom: rem-calc(20); - -// We use these to control button text styles. -// $button-font-family: $body-font-family; -// $button-font-color: #fff; -// $button-font-color-alt: #333; -// $button-font-tny: rem-calc(11); -// $button-font-sml: rem-calc(13); -// $button-font-med: rem-calc(16); -// $button-font-lrg: rem-calc(20); -// $button-font-weight: normal; -// $button-font-align: center; - -// We use these to control various hover effects. -// $button-function-factor: -20%; - -// We use these to control button border styles. -// $button-border-width: 0px; -// $button-border-style: solid; -// $bg: $primary-color; -// $button-border-color: scale-color($bg, $lightness: $button-function-factor); - -// We use this to set the default radius used throughout the core. -// $button-radius: $global-radius; -// $button-round: $global-rounded; - -// We use this to set default opacity for disabled buttons. -// $button-disabled-opacity: 0.7; - -// Button Groups - -// $include-html-button-classes: $include-html-classes; - -// Sets the margin for the right side by default, and the left margin if right-to-left direction is used -// $button-bar-margin-opposite: rem-calc(10); -// $button-group-border-width: 1px; - -// Clearing - -// $include-html-clearing-classes: $include-html-classes; - -// We use these to set the background colors for parts of Clearing. -// $clearing-bg: #333; -// $clearing-caption-bg: $clearing-bg; -// $clearing-carousel-bg: rgba(51,51,51,0.8); -// $clearing-img-bg: $clearing-bg; - -// We use these to style the close button -// $clearing-close-color: #ccc; -// $clearing-close-size: 30px; - -// We use these to style the arrows -// $clearing-arrow-size: 12px; -// $clearing-arrow-color: $clearing-close-color; - -// We use these to style captions -// $clearing-caption-font-color: #ccc; -// $clearing-caption-font-size: 0.875em; -// $clearing-caption-padding: 10px 30px 20px; - -// We use these to make the image and carousel height and style -// $clearing-active-img-height: 85%; -// $clearing-carousel-height: 120px; -// $clearing-carousel-thumb-width: 120px; -// $clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255); - -// Dropdown - -// $include-html-dropdown-classes: $include-html-classes; - -// We use these to controls height and width styles. -// $f-dropdown-max-width: 200px; -// $f-dropdown-height: auto; -// $f-dropdown-max-height: none; - -// Used for bottom position -// $f-dropdown-margin-top: 2px; - -// Used for right position -// $f-dropdown-margin-left: $f-dropdown-margin-top; - -// Used for left position -// $f-dropdown-margin-right: $f-dropdown-margin-top; - -// Used for top position -// $f-dropdown-margin-bottom: $f-dropdown-margin-top; - -// We use this to control the background color -// $f-dropdown-bg: #fff; - -// We use this to set the border styles for dropdowns. -// $f-dropdown-border-style: solid; -// $f-dropdown-border-width: 1px; -// $f-dropdown-border-color: scale-color(#fff, $lightness: -20%); - -// We use these to style the triangle pip. -// $f-dropdown-triangle-size: 6px; -// $f-dropdown-triangle-color: #fff; -// $f-dropdown-triangle-side-offset: 10px; - -// We use these to control styles for the list elements. -// $f-dropdown-list-style: none; -// $f-dropdown-font-color: #555; -// $f-dropdown-font-size: rem-calc(14); -// $f-dropdown-list-padding: rem-calc(5, 10); -// $f-dropdown-line-height: rem-calc(18); -// $f-dropdown-list-hover-bg: #eeeeee ; -// $dropdown-mobile-default-float: 0; - -// We use this to control the styles for when the dropdown has custom content. -// $f-dropdown-content-padding: rem-calc(20); - -// Dropdown Buttons - -// $include-html-button-classes: $include-html-classes; - -// We use these to set the color of the pip in dropdown buttons -// $dropdown-button-pip-color: #fff; -// $dropdown-button-pip-color-alt: #333; - -// $button-pip-tny: rem-calc(6); -// $button-pip-sml: rem-calc(7); -// $button-pip-med: rem-calc(9); -// $button-pip-lrg: rem-calc(11); - -// We use these to style tiny dropdown buttons -// $dropdown-button-padding-tny: $button-pip-tny * 7; -// $dropdown-button-pip-size-tny: $button-pip-tny; -// $dropdown-button-pip-opposite-tny: $button-pip-tny * 3; -// $dropdown-button-pip-top-tny: -$button-pip-tny / 2 + rem-calc(1); - -// We use these to style small dropdown buttons -// $dropdown-button-padding-sml: $button-pip-sml * 7; -// $dropdown-button-pip-size-sml: $button-pip-sml; -// $dropdown-button-pip-opposite-sml: $button-pip-sml * 3; -// $dropdown-button-pip-top-sml: -$button-pip-sml / 2 + rem-calc(1); - -// We use these to style medium dropdown buttons -// $dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3); -// $dropdown-button-pip-size-med: $button-pip-med - rem-calc(3); -// $dropdown-button-pip-opposite-med: $button-pip-med * 2.5; -// $dropdown-button-pip-top-med: -$button-pip-med / 2 + rem-calc(2); - -// We use these to style large dropdown buttons -// $dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3); -// $dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6); -// $dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5; -// $dropdown-button-pip-top-lrg: -$button-pip-lrg / 2 + rem-calc(3); - -// Flex Video - -// $include-html-media-classes: $include-html-classes; - -// We use these to control video container padding and margins -// $flex-video-padding-top: rem-calc(25); -// $flex-video-padding-bottom: 67.5%; -// $flex-video-margin-bottom: rem-calc(16); - -// We use this to control widescreen bottom padding -// $flex-video-widescreen-padding-bottom: 56.34%; - -// Forms - -// $include-html-form-classes: $include-html-classes; - -// We use this to set the base for lots of form spacing and positioning styles -// $form-spacing: rem-calc(16); -//$form-spacing: rem-calc(14); - -// We use these to style the labels in different ways -// $form-label-pointer: pointer; -// $form-label-font-size: rem-calc(14); -//$form-label-font-size: rem-calc(12); -// $form-label-font-weight: normal; -// $form-label-line-height: 1.5; -// $form-label-font-color: scale-color(#000, $lightness: 30%); -// $form-label-small-transform: capitalize; -// $form-label-bottom-margin: 0; -// $input-font-family: inherit; -// $input-font-color: rgba(0,0,0,0.75); -// $input-font-size: rem-calc(14); -//$input-font-size: rem-calc(12); -// $input-bg-color: #fff; -// $input-focus-bg-color: scale-color(#fff, $lightness: -2%); -// $input-border-color: scale-color(#fff, $lightness: -20%); -// $input-focus-border-color: scale-color(#fff, $lightness: -40%); -// $input-border-style: solid; -// $input-border-width: 1px; -// $input-border-radius: $global-radius; -// $input-disabled-bg: #ddd; -// $input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1); -// $input-include-glowing-effect: true; - -// We use these to style the fieldset border and spacing. -// $fieldset-border-style: solid; -// $fieldset-border-width: 1px; -// $fieldset-border-color: #ddd; -// $fieldset-padding: rem-calc(20); -// $fieldset-margin: rem-calc(18 0); - -// We use these to style the legends when you use them -// $legend-bg: #fff; -// $legend-font-weight: bold; -// $legend-padding: rem-calc(0 3); - -// We use these to style the prefix and postfix input elements -// $input-prefix-bg: scale-color(#fff, $lightness: -5%); -// $input-prefix-border-color: scale-color(#fff, $lightness: -20%); -// $input-prefix-border-size: 1px; -// $input-prefix-border-type: solid; -// $input-prefix-overflow: hidden; -// $input-prefix-font-color: #333; -// $input-prefix-font-color-alt: #fff; - -// We use these to style the error states for inputs and labels -// $input-error-message-padding: rem-calc(6 9 9); -// $input-error-message-top: -1px; -// $input-error-message-font-size: rem-calc(12); -// $input-error-message-font-weight: normal; -// $input-error-message-font-style: italic; -// $input-error-message-font-color: #fff; -// $input-error-message-font-color-alt: #333; - -// We use this to style the glowing effect of inputs when focused -// $glowing-effect-fade-time: 0.45s; -// $glowing-effect-color: $input-focus-border-color; - -// Select variables -// $select-bg-color: #fafafa; -// $select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%); - -// Inline Lists - -// $include-html-inline-list-classes: $include-html-classes; - -// We use this to control the margins and padding of the inline list. -// $inline-list-top-margin: 0; -// $inline-list-opposite-margin: 0; -// $inline-list-bottom-margin: rem-calc(17); -// $inline-list-default-float-margin: rem-calc(-22); - -// $inline-list-padding: 0; - -// We use this to control the overflow of the inline list. -// $inline-list-overflow: hidden; - -// We use this to control the list items -// $inline-list-display: block; - -// We use this to control any elments within list items -// $inline-list-children-display: block; - -// Joyride - -// $include-html-joyride-classes: $include-html-classes; - -// Controlling default Joyride styles -// $joyride-tip-bg: #333; -// $joyride-tip-default-width: 300px; -// $joyride-tip-padding: rem-calc(18 20 24); -// $joyride-tip-border: solid 1px #555; -// $joyride-tip-radius: 4px; -// $joyride-tip-position-offset: 22px; - -// Here, we're setting the tip dont styles -// $joyride-tip-font-color: #fff; -// $joyride-tip-font-size: rem-calc(14); -// $joyride-tip-header-weight: bold; - -// This changes the nub size -// $joyride-tip-nub-size: 10px; - -// This adjusts the styles for the timer when its enabled -// $joyride-tip-timer-width: 50px; -// $joyride-tip-timer-height: 3px; -// $joyride-tip-timer-color: #666; - -// This changes up the styles for the close button -// $joyride-tip-close-color: #777; -// $joyride-tip-close-size: 24px; -// $joyride-tip-close-weight: normal; - -// When Joyride is filling the screen, we use this style for the bg -// $joyride-screenfill: rgba(0,0,0,0.5); - -// Keystrokes - -// $include-html-keystroke-classes: $include-html-classes; - -// We use these to control text styles. -// $keystroke-font: "Consolas", "Menlo", "Courier", monospace; -// $keystroke-font-size: inherit; -// $keystroke-font-color: #222; -// $keystroke-font-color-alt: #fff; -// $keystroke-function-factor: -7%; - -// We use this to control keystroke padding. -// $keystroke-padding: rem-calc(2 4 0); - -// We use these to control background and border styles. -// $keystroke-bg: scale-color(#fff, $lightness: $keystroke-function-factor); -// $keystroke-border-style: solid; -// $keystroke-border-width: 1px; -// $keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor); -// $keystroke-radius: $global-radius; - -// Labels - -// $include-html-label-classes: $include-html-classes; - -// We use these to style the labels -// $label-padding: rem-calc(4 8 6); -// $label-radius: $global-radius; - -// We use these to style the label text -// $label-font-sizing: rem-calc(11); -// $label-font-weight: normal; -// $label-font-color: #333; -// $label-font-color-alt: #fff; -// $label-font-family: $body-font-family; - -// Magellan - -// $include-html-magellan-classes: $include-html-classes; - -// $magellan-bg: #fff; -// $magellan-padding: 10px; - -// Off-canvas - -// $include-html-off-canvas-classes: $include-html-classes; - -// $tabbar-bg: #333; -// $tabbar-height: rem-calc(45); -// $tabbar-line-height: $tabbar-height; -// $tabbar-color: #fff; -// $tabbar-middle-padding: 0 rem-calc(10); - -// Off Canvas Divider Styles -// $tabbar-right-section-border: solid 1px scale-color($tabbar-bg, $lightness: 13%); -// $tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%); - -// Off Canvas Tab Bar Headers -// $tabbar-header-color: #fff; -// $tabbar-header-weight: bold; -// $tabbar-header-line-height: $tabbar-height; -// $tabbar-header-margin: 0; - -// Off Canvas Menu Variables -// $off-canvas-width: rem-calc(250); -// $off-canvas-bg: #333; - -// Off Canvas Menu List Variables -// $off-canvas-label-padding: 0.3rem rem-calc(15); -// $off-canvas-label-color: #999; -// $off-canvas-label-text-transform: uppercase; -// $off-canvas-label-font-weight: bold; -// $off-canvas-label-bg: #444; -// $off-canvas-label-border-top: 1px solid scale-color(#444, $lightness: 14%); -// $off-canvas-label-border-bottom: none; -// $off-canvas-label-margin:0; -// $off-canvas-link-padding: rem-calc(10, 15); -// $off-canvas-link-color: rgba(#fff, 0.7); -// $off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%); - -// Off Canvas Menu Icon Variables -// $tabbar-menu-icon-color: #fff; -// $tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%); - -// $tabbar-menu-icon-text-indent: rem-calc(35); -// $tabbar-menu-icon-width: $tabbar-height; -// $tabbar-menu-icon-height: $tabbar-height; -// $tabbar-menu-icon-line-height: rem-calc(33); -// $tabbar-menu-icon-padding: 0; - -// $tabbar-hamburger-icon-width: rem-calc(16); -// $tabbar-hamburger-icon-left: false; -// $tabbar-hamburger-icon-top: false; -// $tapbar-hamburger-icon-thickness: 1px; -// $tapbar-hamburger-icon-gap: 6px; - -// Off Canvas Back-Link Overlay -// $off-canvas-overlay-transition: background 300ms ease; -// $off-canvas-overlay-cursor: pointer; -// $off-canvas-overlay-box-shadow: -4px 0 4px rgba(#000, 0.5), 4px 0 4px rgba(#000, 0.5); -// $off-canvas-overlay-background: rgba(#fff, 0.2); -// $off-canvas-overlay-background-hover: rgba(#fff, 0.05); - -// Transition Variables -// $menu-slide: "transform 500ms ease"; - -// Orbit - -// $include-html-orbit-classes: $include-html-classes; - -// We use these to control the caption styles -// $orbit-container-bg: none; -// $orbit-caption-bg: rgba(51,51,51, 0.8); -// $orbit-caption-font-color: #fff; -// $orbit-caption-font-size: rem-calc(14); -// $orbit-caption-position: "bottom"; // Supported values: "bottom", "under" -// $orbit-caption-padding: rem-calc(10 14); -// $orbit-caption-height: auto; - -// We use these to control the left/right nav styles -// $orbit-nav-bg: transparent; -// $orbit-nav-bg-hover: rgba(0,0,0,0.3); -// $orbit-nav-arrow-color: #fff; -// $orbit-nav-arrow-color-hover: #fff; - -// We use these to control the timer styles -// $orbit-timer-bg: rgba(255,255,255,0.3); -// $orbit-timer-show-progress-bar: true; - -// We use these to control the bullet nav styles -// $orbit-bullet-nav-color: #ccc; -// $orbit-bullet-nav-color-active: #999; -// $orbit-bullet-radius: rem-calc(9); - -// We use these to controls the style of slide numbers -// $orbit-slide-number-bg: rgba(0,0,0,0); -// $orbit-slide-number-font-color: #fff; -// $orbit-slide-number-padding: rem-calc(5); - -// We use these to controls the css animation -// $orbit-animation-speed: 500ms; -// $orbit-animation-ease: ease-in-out; - -// Hide controls on small -// $orbit-nav-hide-for-small: true; -// $orbit-bullet-hide-for-small: true; -// $orbit-timer-hide-for-small: true; - -// Graceful Loading Wrapper and preloader -// $wrapper-class: "slideshow-wrapper"; -// $preloader-class: "preloader"; - -// Pagination - -// $include-html-nav-classes: $include-html-classes; - -// We use these to control the pagination container -// $pagination-height: rem-calc(24); -// $pagination-margin: rem-calc(-5); - -// We use these to set the list-item properties -// $pagination-li-float: $default-float; -// $pagination-li-height: rem-calc(24); -// $pagination-li-font-color: #222; -// $pagination-li-font-size: rem-calc(14); -// $pagination-li-margin: rem-calc(5); - -// We use these for the pagination anchor links -// $pagination-link-pad: rem-calc(1 10 1); -// $pagination-link-font-color: #999; -// $pagination-link-active-bg: scale-color(#fff, $lightness: -10%); - -// We use these for disabled anchor links -// $pagination-link-unavailable-cursor: default; -// $pagination-link-unavailable-font-color: #999; -// $pagination-link-unavailable-bg-active: transparent; - -// We use these for currently selected anchor links -// $pagination-link-current-background: $primary-color; -// $pagination-link-current-font-color: #fff; -// $pagination-link-current-font-weight: bold; -// $pagination-link-current-cursor: default; -// $pagination-link-current-active-bg: $primary-color; - -// Panels - -// $include-html-panel-classes: $include-html-classes; - -// We use these to control the background and border styles -// $panel-bg: scale-color(#fff, $lightness: -5%); -// $panel-border-style: solid; -// $panel-border-size: 1px; - -// We use this % to control how much we darken things on hover -// $panel-function-factor: -11%; -// $panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor); - -// We use these to set default inner padding and bottom margin -// $panel-margin-bottom: rem-calc(20); -// $panel-padding: rem-calc(20); - -// We use these to set default font colors -// $panel-font-color: #333; -// $panel-font-color-alt: #fff; - -// $panel-header-adjust: true; -// $callout-panel-link-color: $primary-color; - -// Pricing Tables - -// $include-html-pricing-classes: $include-html-classes; - -// We use this to control the border color -// $price-table-border: solid 1px #ddd; - -// We use this to control the bottom margin of the pricing table -// $price-table-margin-bottom: rem-calc(20); - -// We use these to control the title styles -// $price-title-bg: #333; -// $price-title-padding: rem-calc(15 20); -// $price-title-align: center; -// $price-title-color: #eee; -// $price-title-weight: normal; -// $price-title-size: rem-calc(16); -// $price-title-font-family: $body-font-family; - -// We use these to control the price styles -// $price-money-bg: #f6f6f6 ; -// $price-money-padding: rem-calc(15 20); -// $price-money-align: center; -// $price-money-color: #333; -// $price-money-weight: normal; -// $price-money-size: rem-calc(32); -// $price-money-font-family: $body-font-family; - - -// We use these to control the description styles -// $price-bg: #fff; -// $price-desc-color: #777; -// $price-desc-padding: rem-calc(15); -// $price-desc-align: center; -// $price-desc-font-size: rem-calc(12); -// $price-desc-weight: normal; -// $price-desc-line-height: 1.4; -// $price-desc-bottom-border: dotted 1px #ddd; - -// We use these to control the list item styles -// $price-item-color: #333; -// $price-item-padding: rem-calc(15); -// $price-item-align: center; -// $price-item-font-size: rem-calc(14); -// $price-item-weight: normal; -// $price-item-bottom-border: dotted 1px #ddd; - -// We use these to control the CTA area styles -// $price-cta-bg: #fff; -// $price-cta-align: center; -// $price-cta-padding: rem-calc(20 20 0); - -// Progress Bar - -// $include-html-media-classes: $include-html-classes; - -// We use this to set the progress bar height -// $progress-bar-height: rem-calc(25); -// $progress-bar-color: #f6f6f6 ; - -// We use these to control the border styles -// $progress-bar-border-color: scale-color(#fff, $lightness: 20%); -// $progress-bar-border-size: 1px; -// $progress-bar-border-style: solid; -// $progress-bar-border-radius: $global-radius; - -// We use these to control the margin & padding -// $progress-bar-pad: rem-calc(2); -// $progress-bar-margin-bottom: rem-calc(10); - -// We use these to set the meter colors -// $progress-meter-color: $primary-color; -// $progress-meter-secondary-color: $secondary-color; -// $progress-meter-success-color: $success-color; -// $progress-meter-alert-color: $alert-color; - -// Reveal - -// $include-html-reveal-classes: $include-html-classes; - -// We use these to control the style of the reveal overlay. -// $reveal-overlay-bg: rgba(#000, .45); -// $reveal-overlay-bg-old: #000; - -// We use these to control the style of the modal itself. -// $reveal-modal-bg: #fff; -// $reveal-position-top: rem-calc(100); -// $reveal-default-width: 80%; -// $reveal-modal-padding: rem-calc(20); -// $reveal-box-shadow: 0 0 10px rgba(#000,.4); - -// We use these to style the reveal close button -// $reveal-close-font-size: rem-calc(40); -$reveal-close-font-size: rem-calc(15); -// $reveal-close-top: rem-calc(8); -// $reveal-close-side: rem-calc(11); -// $reveal-close-color: #aaa; -$reveal-close-color: #ccc; -// $reveal-close-weight: bold; -$reveal-close-weight: normal; - -// We use this to set the default radius used throughout the core. -// $reveal-radius: $global-radius; -// $reveal-round: $global-rounded; - -// We use these to control the modal border -// $reveal-border-style: solid; -// $reveal-border-width: 1px; -// $reveal-border-color: #666; - -// $reveal-modal-class: "reveal-modal"; -// $close-reveal-modal-class: "close-reveal-modal"; - -// Side Nav - -// $include-html-nav-classes: $include-html-classes; - -// We use this to control padding. -// $side-nav-padding: rem-calc(14 0); - -// We use these to control list styles. -// $side-nav-list-type: none; -// $side-nav-list-position: inside; -// $side-nav-list-margin: rem-calc(0 0 7 0); - -// We use these to control link styles. -// $side-nav-link-color: $primary-color; -// $side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: 30%); -// $side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: 30%); -// $side-nav-font-size: rem-calc(14); -// $side-nav-font-weight: normal; -// $side-nav-font-weight-active: $side-nav-font-weight; -// $side-nav-font-family: $body-font-family; -// $side-nav-active-font-family: $side-nav-font-family; - - - -// We use these to control border styles -// $side-nav-divider-size: 1px; -// $side-nav-divider-style: solid; -// $side-nav-divider-color: scale-color(#fff, $lightness: 10%); - -// Split Buttons - -// $include-html-button-classes: $include-html-classes; - -// We use these to control different shared styles for Split Buttons -// $split-button-function-factor: 10%; -// $split-button-pip-color: #fff; -// $split-button-pip-color-alt: #333; -// $split-button-active-bg-tint: rgba(0,0,0,0.1); - -// We use these to control tiny split buttons -// $split-button-padding-tny: $button-pip-tny * 10; -// $split-button-span-width-tny: $button-pip-tny * 6; -// $split-button-pip-size-tny: $button-pip-tny; -// $split-button-pip-top-tny: $button-pip-tny * 2; -// $split-button-pip-default-float-tny: rem-calc(-6); - -// We use these to control small split buttons -// $split-button-padding-sml: $button-pip-sml * 10; -// $split-button-span-width-sml: $button-pip-sml * 6; -// $split-button-pip-size-sml: $button-pip-sml; -// $split-button-pip-top-sml: $button-pip-sml * 1.5; -// $split-button-pip-default-float-sml: rem-calc(-6); - -// We use these to control medium split buttons -// $split-button-padding-med: $button-pip-med * 9; -// $split-button-span-width-med: $button-pip-med * 5.5; -// $split-button-pip-size-med: $button-pip-med - rem-calc(3); -// $split-button-pip-top-med: $button-pip-med * 1.5; -// $split-button-pip-default-float-med: rem-calc(-6); - -// We use these to control large split buttons -// $split-button-padding-lrg: $button-pip-lrg * 8; -// $split-button-span-width-lrg: $button-pip-lrg * 5; -// $split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6); -// $split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5); -// $split-button-pip-default-float-lrg: rem-calc(-6); - -// Sub Nav - -// $include-html-nav-classes: $include-html-classes; - -// We use these to control margin and padding -// $sub-nav-list-margin: rem-calc(-4 0 18); -// $sub-nav-list-padding-top: rem-calc(4); - -// We use this to control the definition -// $sub-nav-font-family: $body-font-family; -// $sub-nav-font-size: rem-calc(14); -// $sub-nav-font-color: #999; -// $sub-nav-font-weight: normal; -// $sub-nav-text-decoration: none; -// $sub-nav-padding: rem-calc(3 16); -// $sub-nav-border-radius: 3px; -// $sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%); - - -// We use these to control the active item styles -// $sub-nav-active-font-weight: normal; -// $sub-nav-active-bg: $primary-color; -// $sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%); -// $sub-nav-active-color: #fff; -// $sub-nav-active-padding: $sub-nav-padding; -// $sub-nav-active-cursor: default; - -// $sub-nav-item-divider: ""; -// $sub-nav-item-divider-margin: rem-calc(12); - -// -// SWITCH -// - -// $include-html-form-classes: $include-html-classes; - -// Controlling border styles and background colors for the switch container -// $switch-border-color: scale-color(#fff, $lightness: -20%); -// $switch-border-style: solid; -// $switch-border-width: 1px; -// $switch-bg: #fff; - -// We use these to control the switch heights for our default classes -// $switch-height-tny: 22px; -// $switch-height-sml: 28px; -// $switch-height-med: 36px; -// $switch-height-lrg: 44px; -// $switch-bottom-margin: rem-calc(20); - -// We use these to control default font sizes for our classes. -// $switch-font-size-tny: 11px; -// $switch-font-size-sml: 12px; -// $switch-font-size-med: 14px; -// $switch-font-size-lrg: 17px; -// $switch-label-side-padding: 6px; - -// We use these to style the switch-paddle -// $switch-paddle-bg: #fff; -// $switch-paddle-fade-to-color: scale-color($switch-paddle-bg, $lightness: -10%); -// $switch-paddle-border-color: scale-color($switch-paddle-bg, $lightness: -35%); -// $switch-paddle-border-width: 1px; -// $switch-paddle-border-style: solid; -// $switch-paddle-transition-speed: .1s; -// $switch-paddle-transition-ease: ease-out; -// $switch-positive-color: scale-color($success-color, $lightness: 94%); -// $switch-negative-color: #f5f5f5; - -// Outline Style for tabbing through switches -// $switch-label-outline: 1px dotted #888; - -// Tables - -// $include-html-table-classes: $include-html-classes; - -// These control the background color for the table and even rows -// $table-bg: #fff; -// $table-even-row-bg: #f9f9f9 ; - -// These control the table cell border style -// $table-border-style: solid; -// $table-border-size: 1px; -// $table-border-color: #ddd; - -// These control the table head styles -// $table-head-bg: #f5f5f5 ; -// $table-head-font-size: rem-calc(14); -// $table-head-font-color: #222; -// $table-head-font-weight: bold; -// $table-head-padding: rem-calc(8 10 10); - -// These control the row padding and font styles -// $table-row-padding: rem-calc(9 10); -// $table-row-font-size: rem-calc(14); -// $table-row-font-color: #222; -// $table-line-height: rem-calc(18); - -// These are for controlling the display and margin of tables -// $table-display: table-cell; -// $table-margin-bottom: rem-calc(20); - -// -// TABS -// - -// $include-html-tabs-classes: $include-html-classes; - -// $tabs-navigation-padding: rem-calc(16); -// $tabs-navigation-bg-color: #efefef ; -// $tabs-navigation-active-bg-color: #fff; -// $tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%); -// $tabs-navigation-font-color: #222; -// $tabs-navigation-font-size: rem-calc(16); -// $tabs-navigation-font-family: $body-font-family; - -// $tabs-content-margin-bottom: rem-calc(24); -// $tabs-content-padding: $column-gutter/2; - -// $tabs-vertical-navigation-margin-bottom: 1.25rem; - -// -// THUMBNAILS -// - -// $include-html-media-classes: $include-html-classes; - -// We use these to control border styles -// $thumb-border-style: solid; -// $thumb-border-width: 4px; -// $thumb-border-color: #fff; -// $thumb-box-shadow: 0 0 0 1px rgba(#000,.2); -// $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5); - -// Radius and transition speed for thumbs -// $thumb-radius: $global-radius; -// $thumb-transition-speed: 200ms; - -// -// TOOLTIPS -// - -// $include-html-tooltip-classes: $include-html-classes; - -// $has-tip-border-bottom: dotted 1px #ccc; -// $has-tip-font-weight: bold; -// $has-tip-font-color: #333; -// $has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%); -// $has-tip-font-color-hover: $primary-color; -// $has-tip-cursor-type: help; - -// $tooltip-padding: rem-calc(12); -// $tooltip-bg: #333; -// $tooltip-font-size: rem-calc(14); -// $tooltip-font-weight: normal; -// $tooltip-font-color: #fff; -// $tooltip-line-height: 1.3; -// $tooltip-close-font-size: rem-calc(10); -// $tooltip-close-font-weight: normal; -// $tooltip-close-font-color: #777; -// $tooltip-font-size-sml: rem-calc(14); -// $tooltip-radius: $global-radius; -// $tooltip-rounded: $global-rounded; -// $tooltip-pip-size: 5px; - -// -// TOP BAR -// - -// $include-html-top-bar-classes: $include-html-classes; - -// Background color for the top bar -// $topbar-bg-color: #333; -// $topbar-bg: $topbar-bg-color; - -// Height and margin -// $topbar-height: 45px; -// $topbar-margin-bottom: 0; - -// Controlling the styles for the title in the top bar -// $topbar-title-weight: normal; -// $topbar-title-font-size: rem-calc(17); - -// Style the top bar dropdown elements -// $topbar-dropdown-bg: #333; -// $topbar-dropdown-link-color: #fff; -// $topbar-dropdown-link-bg: #333; -// $topbar-dropdown-link-weight: normal; -// $topbar-dropdown-toggle-size: 5px; -// $topbar-dropdown-toggle-color: #fff; -// $topbar-dropdown-toggle-alpha: 0.4; - -// Set the link colors and styles for top-level nav -// $topbar-link-color: #fff; -// $topbar-link-color-hover: #fff; -// $topbar-link-color-active: #fff; -// $topbar-link-color-active-hover: #fff; -// $topbar-link-weight: normal; -// $topbar-link-font-size: rem-calc(13); -$topbar-link-font-size: rem-calc(16); -// $topbar-link-hover-lightness: -10%; // Darken by 10% -// $topbar-link-bg: $topbar-bg; -// $topbar-link-bg-hover: #272727; -// $topbar-link-bg-active: $primary-color; -// $topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%); -// $topbar-link-font-family: $body-font-family; -// $topbar-link-text-transform: none; -// $topbar-link-padding: $topbar-height / 3; - -// $topbar-button-font-size: 0.75rem; -// $topbar-button-top: 7px; - -// $topbar-dropdown-label-color: #777; -// $topbar-dropdown-label-text-transform: uppercase; -// $topbar-dropdown-label-font-weight: bold; -// $topbar-dropdown-label-font-size: rem-calc(10); -// $topbar-dropdown-label-bg: #333; - -// Top menu icon styles -// $topbar-menu-link-transform: uppercase; -// $topbar-menu-link-font-size: rem-calc(13); -// $topbar-menu-link-weight: bold; -// $topbar-menu-link-color: #fff; -// $topbar-menu-icon-color: #fff; -// $topbar-menu-link-color-toggled: #888; -// $topbar-menu-icon-color-toggled: #888; - -// Transitions and breakpoint styles -// $topbar-transition-speed: 300ms; -// Using rem-calc for the below breakpoint causes issues with top bar -// $topbar-breakpoint: #{lower-bound($medium-range)}; // Change to 9999px for always mobile layout -// $topbar-media-query: $medium-up; - -// Divider Styles -// $topbar-divider-border-bottom: solid 1px scale-color($topbar-bg-color, $lightness: 13%); -// $topbar-divider-border-top: solid 1px scale-color($topbar-bg-color, $lightness: -50%); - -// Sticky Class -// $topbar-sticky-class: ".sticky"; -// $topbar-arrows: true; //Set false to remove the triangle icon from the menu item - -// -// VISIBILITY CLASSES -// - -// $include-html-visibility-classes: $include-html-classes; -// $include-table-visibility-classes: true; -// $include-legacy-visibility-classes: true; - -// -// RANGE SLIDER -// - -// $include-html-range-slider-classes: $include-html-classes; - -// These variabels define the slider bar styles -// $range-slider-bar-width: 100%; -// $range-slider-bar-height: rem-calc(16); - -// $range-slider-bar-border-width: 1px; -// $range-slider-bar-border-style: solid; -// $range-slider-bar-border-color: #ddd; -// $range-slider-radius: $global-radius; -// $range-slider-round: $global-rounded; -// $range-slider-bar-bg-color: #fafafa; - -// Vertical bar styles -// $range-slider-vertical-bar-width: rem-calc(16); -// $range-slider-vertical-bar-height: rem-calc(200); - -// These variabels define the slider handle styles -// $range-slider-handle-width: rem-calc(32); -// $range-slider-handle-height: rem-calc(22); -// $range-slider-handle-position-top: rem-calc(-5); -// $range-slider-handle-bg-color: $primary-color; -// $range-slider-handle-border-width: 1px; -// $range-slider-handle-border-style: solid; -// $range-slider-handle-border-color: none; -// $range-slider-handle-radius: $global-radius; -// $range-slider-handle-round: $global-rounded; -// $range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%); -// $range-slider-handle-cursor: pointer; diff --git a/UI/WebServerResources/scss/components.css.map b/UI/WebServerResources/scss/components.css.map new file mode 100644 index 000000000..117ad66f7 --- /dev/null +++ b/UI/WebServerResources/scss/components.css.map @@ -0,0 +1,7 @@ +{ +"version": 3, +"mappings": "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", +"sources": ["components.scss","../angular-material/src/core/style/structure.scss","../angular-material/src/core/style/variables.scss","../angular-material/src/core/style/mixins.scss","../angular-material/src/core/style/layout.scss","vendors/angular-material/core/style/structure.scss","vendors/angular-material/core/style/mixins.scss","vendors/angular-material/core/style/layout.scss"], +"names": [], +"file": "components.css" +} diff --git a/UI/WebServerResources/scss/components.scss b/UI/WebServerResources/scss/components.scss new file mode 100755 index 000000000..f4f114633 --- /dev/null +++ b/UI/WebServerResources/scss/components.scss @@ -0,0 +1,58 @@ +/** +* +* Main Stylesheet SOGo +* Based on Angular Material Design +* IMPORTANT : This scss file might interfere with actual Angular-Material grunt-build +* and will generate a (too)) long css file because of the overrides +* +**/ + +// Compass import - comment-out if needed +//@import 'vendors/compass'; + +// Browser reset - most effective for applications. Generated by Compass in a non-regular way +@import 'reset.css'; +//@import 'components/normalize'; + +// Fonts +@import '../css/ubuntu.css'; + +// MODULES - Shouldn't immediately generate any css +@import 'functions'; + +// Angular-Material core style files (filenames are not reflecting content) +@import '../angular-material/src/core/style/color-palette.scss'; +@import '../angular-material/src/core/style/variables.scss'; +@import '../angular-material/src/core/style/mixins.scss'; +@import '../angular-material/src/core/style/structure.scss'; +@import '../angular-material/src/core/style/layout.scss'; + +/* Local overrides from angular-material src */ +@import 'vendors/angular-material/core/style/color-palette'; +@import 'vendors/angular-material/core/style/variables'; +@import 'vendors/angular-material/core/style/mixins'; +@import 'vendors/angular-material/core/style/structure'; +@import 'vendors/angular-material/core/style/layout'; + + + + +// Icons - + + +// Angular-Material Color Palettes (used by $mdThemingProvider [theming.js]) - generated at (grunt ?) build +// @import '../angular-material/src/core/style/color-palette.scss'; + +// COMPONENTS +// Angular-material src components + + +/* Angular-material components local overrides */ +@import 'vendors/angular-material/components/list/list.scss'; +@import 'vendors/angular-material/components/divider/divider.scss'; + +// Pages-specific styles + + +// Make sure this is last to override anything else :) + diff --git a/UI/WebServerResources/scss/components/_components/_articles-list.scss b/UI/WebServerResources/scss/components/_components/_articles-list.scss new file mode 100755 index 000000000..431efa0d0 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_articles-list.scss @@ -0,0 +1,55 @@ +/** +* +* Articles list +* +**/ + +.articles-list { + padding-left: 0; +} + +.articles-list__item { + + padding-bottom: $lineHeight * 2; + + &:last-child { + padding-bottom: $lineHeight * 2 + 1; + } + + padding-left: 0; + + &::before { + content: ""; + display: block; + width: 40%; + height: 1px; + box-shadow: inset 0 1px 0 0 $colorGrayKeyline; + margin-right: 0; + margin-left: 30%; + } + + h3 { + a:hover { + text-decoration: none; + } + } + + p { + margin-top: $lineHeight; + margin-bottom: $lineHeight; + } + + &:first-child { + padding-top: 0; + + @include medium { + padding-top: $lineHeight - 2; + } + + &::before { + display: none; + } + } + +} + diff --git a/UI/WebServerResources/scss/components/_components/_breadcrumb.scss b/UI/WebServerResources/scss/components/_components/_breadcrumb.scss new file mode 100755 index 000000000..5a8c7dbbc --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_breadcrumb.scss @@ -0,0 +1,31 @@ +/** +* +* Breadcrumb +* +**/ + +.breadcrumbs { + display: none; + @include medium { + display: block; + } + + position: relative; + z-index: 1; +} + +.breadcrumbs p { + @include type--small; + padding-top: $lineHeight; +} + +.breadcrumbs__link { + @include type--small; + color: black; + font-weight: 400; + padding-top: 0; + + @include medium { + padding-top: 0; + } +} diff --git a/UI/WebServerResources/scss/components/_components/_button.scss b/UI/WebServerResources/scss/components/_components/_button.scss new file mode 100755 index 000000000..349566d5d --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_button.scss @@ -0,0 +1,56 @@ +/** +* +* Button +* +**/ + +.button { + display: inline-block; + padding: (($lineHeight / 2) - 1) 32px; + margin-bottom: $lineHeight / 2; + margin-top: $lineHeight / 2; + min-height: $lineHeight; + + text-align: center; + + font-family: $fontHighlight; + font-weight: 600; + text-decoration: none; + + outline: 0; + + transition: none; + + &:hover { + background: #4d4d4d; + color: #ffffff; + border: 1px solid #4d4d4d; + text-decoration: none; + } +} + +// Mixin to create buttons +@mixin style-button($color, $textColor, $isInverted: false) { + + background: $color; + color: $textColor; + border: 1px solid darken($color, 10%); + + @if $isInverted { border-color: transparent;} +} + + +.button--primary { + @extend .button; + @include style-button(#4285f4, #ffffff); +} + +.button--secondary { + @extend .button; + @include style-button(#ffffff, $colorBlue); +} + +.button--secondary-variation { + @extend .button; + @include style-button(#ffffff, $colorBlue, true); +} diff --git a/UI/WebServerResources/scss/components/_components/_column-list.scss b/UI/WebServerResources/scss/components/_components/_column-list.scss new file mode 100755 index 000000000..1e8fb9afa --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_column-list.scss @@ -0,0 +1,42 @@ +/** +* +* Column list +* +**/ + +.columns-list-wrapper { + @include wide { + margin-right: $mediumColWidth; + } + +} + +.list--columns { + border-bottom: 1px solid #ccc; + padding-bottom: $lineHeight - 1; + margin-bottom: 1px; + + @include medium { + column-count: 2; + column-rule: 0 none transparent; + column-gap: 0; + } + + & li, + & .columns-list-item { + @include type--small; + padding: 0; + } + + & a { + display: block; + position: relative; + padding-left: 39px; + + &::before { + line-height: 26px; + } + } + +} + diff --git a/UI/WebServerResources/scss/components/_components/_grid.scss b/UI/WebServerResources/scss/components/_components/_grid.scss new file mode 100755 index 000000000..fa30c683e --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_grid.scss @@ -0,0 +1,144 @@ +/** +* +* Grid +* +**/ + + +@include medium-only { + // Generating grid classes for medium view + @for $i from 1 through $mediumColCount { + .g-medium--#{$i} { + @include rule--col(medium); + width: ($mediumColWidth*$i) + ($mediumGutterWidth*($i + -1)); + @if $i == $mediumColCount { margin-right: 0; } + } + + @if $i < $mediumColCount { + .g-medium--push-#{$i} { + margin-left: ($mediumColWidth*$i) + ($mediumGutterWidth*$i); + } + .g-medium--pull-#{$i} { + margin-right: ($mediumColWidth*$i) + ($mediumGutterWidth*$i); + } + } + } + + .g-medium--full { + @include rule--col(medium); + margin-right: 0; + width: 100%; + } + + .g--third { + @include rule--col(medium); + width: $mediumColWidth; + } + + .g--half, + .g-medium--half { + @include rule--col(medium); + width: 50% - $mediumGutterWidth/2; + } + + .g-medium--last { margin-right: 0; } + .g-medium--last + .g-medium--half { clear: left; } + + .g--pull-half { margin-right: 50% + $mediumGutterWidth/2; } +} + + +@include wide { + // Generating grid classes for wide view + @for $i from 1 through $wideColCount { + .g-wide--#{$i} { + @include rule--col(wide); + width: ($wideColWidth*$i) + ($wideGutterWidth*($i + -1)); + @if $i == $wideColCount { margin-right: 0; } + } + + @if $i < $wideColCount { + .g-wide--push-#{$i} { + margin-left: ($wideColWidth*$i) + ($wideGutterWidth*$i); + } + .g-wide--pull-#{$i} { + margin-right: ($wideColWidth*$i) + ($wideGutterWidth*$i); + } + } + } + + .g-wide--last { margin-right: 0; } + + .g-wide--full { + @include rule--col(wide); + margin-right: 0; + width: 100%; + } + + .g--third { + @include rule--col(wide); + width: 30.8%; + } + + .g--half, + .g-wide--half { + @include rule--col(wide); + width: 50% - $wideGutterWidth/2; + } + + .g--pull-half { margin-right: 50% + $wideGutterWidth/2; } +} + + +// This is a global 'last' class +// to be used with global grid classes, such as 'half' or 'third' +// Example usage: +//
+//
+//
+.g--last { margin-right: 0; } + + +// This is a global 'centered' class +.g--centered { + float: none; // reset float to none so we can center it + margin-left: auto; + margin-right: auto; +} + +// This is a grid overlay +// Its purpose is to show users our grid system +// It becomes visible when a class 'debug' is added to the body +.grid-overlay { + + display: none; + pointer-events: none; + + // Only show when parents (body) has debug class + .debug & { + @include container(true); + + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + height: 100%; + display: block; + + [class*="g-"] { + height: 100%; + background-color: rgba(lighten(#000, 35%), .2); + } + + @include medium-only { + .g-wide--last { + display: none; + } + } + + @include small-only { + display: none; + } + } +} diff --git a/UI/WebServerResources/scss/components/_components/_guides-list.scss b/UI/WebServerResources/scss/components/_components/_guides-list.scss new file mode 100755 index 000000000..b7a18b989 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_guides-list.scss @@ -0,0 +1,78 @@ +/** +* +* Guides List +* +**/ + + +.guides-list { + overflow: hidden; + + @include medium { + display: flex; + justify-content: space-between; + flex-wrap: wrap; + + padding-top: $lineHeight*2; + } +} + +.guides-list__item { + padding: 0; + background: #ffffff; + margin-top: $lineHeight; + margin-bottom: 0; + + @include medium { + display: flex; + flex-direction: column; + flex-wrap: wrap; + } + + h3 { + margin: 0 32px; + } + + p { + margin: $lineHeight 32px 0; + } + + .primary-content { + @include medium { + flex: 1; + } + } + + .secondary-content { + position: relative; + // background: #f5f5f5; + margin-top: ($lineHeight*2) - 1; + border-top: 1px solid $colorGrayKeyline; + + @include medium { + width: 100%; // needed due to parent being flex + } + + .icon-circle { + position: absolute; + top: -$lineHeight - 2; + left: 50%; + margin-left: -21px; + border: 2px solid #ffffff; + + & i { + font-size: 23px; + } + } + } + + ol { + margin: $lineHeight 0 0; + padding: $lineHeight*2 0 $lineHeight*2; + margin-top: 0; + } + + &::before { + display: none; + } +} diff --git a/UI/WebServerResources/scss/components/_components/_icon-circle.scss b/UI/WebServerResources/scss/components/_components/_icon-circle.scss new file mode 100755 index 000000000..ee5ba5d67 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_icon-circle.scss @@ -0,0 +1,110 @@ +/** +* +* Icon Circle +* +**/ + +.icon-circle, +.icon-circle--large { + height: 0; + width: 0; + background: $colorGray; + display: block; + position: relative; + border-radius: 100%; + font-size: 0; + padding: 22px; // Breaks baseline grid + margin: 4px auto; // Adds margin top/bottom to fix baseline grid ;) + + i, + span { + position: absolute; + line-height: 0px; + top: 50%; + width: 100%; + left: 0; + text-align: center; + color: #ffffff; + font-size: $fontLarge; + } + + span { + font-family: $fontHighlight; + font-size: $fontLarge; + font-weight: 700; + + @include medium { + font-size: $fontXLarge; + } + } +} + +.icon-circle--large { + margin-top: 0; + margin-bottom: 0; + padding: $lineHeight; + position: relative; + + i { + font-size: $fontLarge; + + @include medium { + font-size: $fontXLarge; + } + } + + @include medium { + padding: ($lineHeight + $lineHeight/2) - 2; + border: 2px solid #ffffff; + + a & { + padding: ($lineHeight + $lineHeight/2) - 1; + + box-shadow: inset 0px 0px 0px 1px rgba(#ffffff, .42); + border: 1px solid; + + // demo transition + transition: all 100ms linear; + transform: translateZ(0); // kick in hardware acceleration + } + + .no-touch a:hover & { + box-shadow: inset 0px 0px 0px 1px #ffffff; + transform: scale(1.1); + } + } + +} + +.icon-circle--nav { + height: 0; + width: 0; + background: $colorGray; + display: block; + position: relative; + border-radius: 100%; + font-size: 0; + padding: $lineHeight/2; + margin: 0 auto; + + @include medium { + padding: 22px; // Breaks baseline grid + margin-top: 4px; // Adds margin top/bottom to fix baseline grid ;) + margin-bottom: 4px; // Adds margin top/bottom to fix baseline grid ;) + } + + i { + position: absolute; + line-height: 1px; + top: 50%; + width: 100%; + left: 0; + text-align: center; + color: #ffffff; + font-size: $fontBase; + + @include medium { + font-size: $fontLarge; + } + } +} diff --git a/UI/WebServerResources/scss/components/_components/_icons.scss b/UI/WebServerResources/scss/components/_components/_icons.scss new file mode 100755 index 000000000..ebc077ed5 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_icons.scss @@ -0,0 +1,147 @@ +@font-face { + font-family: icons; + src: url(../images/icons/icons.eot); + src: url(../images/icons/icons.eot?#iefix) format('embedded-opentype'), + url(../images/icons/icons.woff2) format('woff2'), + url(../images/icons/icons.woff) format('woff'), + url(../images/icons/icons.ttf) format('truetype'), + url(../images/icons/icons.svg?#icons) format('svg'); + font-weight: normal; + font-style: normal; +} + +.icon { + font-family: 'icons'; + display: inline-block; + vertical-align: top; + line-height: 1; + font-weight: normal; + font-style: normal; + speak: none; + text-decoration: inherit; + text-transform: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +// Icons +$icon-bullet: '\e001'; +.icon-bullet::before { + content:"\e001"; +} + +$icon-chevron-down: '\e002'; +.icon-chevron-down::before { + content: '\e002'; +} + +$icon-chevron-large: '\e003'; +.icon-chevron-large::before { + content: '\e003'; +} + +$icon-chevron-left: '\e004'; +.icon-chevron-left::before { + content: '\e004'; +} + +$icon-chevron-right: '\e005'; +.icon-chevron-right::before { + content: '\e005'; +} + +$icon-chevron-up: '\e006'; +.icon-chevron-up::before { + content: '\e006'; +} + +$icon-close: '\e007'; +.icon-close::before { + content: '\e007'; +} + +$icon-cog: '\e008'; +.icon-cog::before { + content: '\e008'; +} + +$icon-diamond: '\e009'; +.icon-diamond::before { + content: '\e009'; +} + +$icon-exclamation: '\e00a'; +.icon-exclamation::before { + content: '\e00a'; +} + +$icon-google-dev: '\e00b'; +.icon-google-dev::before { + content: '\e00b'; +} + +$icon-hash: '\e00c'; +.icon-hash::before { + content: '\e00c'; +} + +$icon-introduction-to-media: '\e00d'; +.icon-introduction-to-media::before { + content: '\e00d'; +} + +$icon-lessons: '\e00e'; +.icon-lessons::before { + content: '\e00e'; +} + +$icon-menu: '\e00f'; +.icon-menu::before { + content: '\e00f'; +} + +$icon-minus: '\e010'; +.icon-minus::before { + content: '\e010'; +} + +$icon-multi-device-layouts: '\e011'; +.icon-multi-device-layouts::before { + content: '\e011'; +} + +$icon-performance: '\e012'; +.icon-performance::before { + content: '\e012'; +} + +$icon-plus: '\e013'; +.icon-plus::before { + content: '\e013'; +} + +$icon-question: '\e014'; +.icon-question::before { + content: '\e014'; +} + +$icon-slash: '\e015'; +.icon-slash::before { + content: '\e015'; +} + +$icon-star: '\e016'; +.icon-star::before { + content: '\e016'; +} + +$icon-tick: '\e017'; +.icon-tick::before { + content: '\e017'; +} + +$icon-user-input: '\e018'; +.icon-user-input::before { + content: '\e018'; +} diff --git a/UI/WebServerResources/scss/components/_components/_link.scss b/UI/WebServerResources/scss/components/_components/_link.scss new file mode 100755 index 000000000..a9a11bad0 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_link.scss @@ -0,0 +1,21 @@ +/** +* +* Link +* +**/ + +a { + color: $colorBlue; +} + +a:hover { + text-decoration: none; +} + +.cta--primary { + @include style-cta($colorBlue, $icon-chevron-right); +} + +.cta--secondary { + @include style-cta($colorBlue); +} diff --git a/UI/WebServerResources/scss/components/_components/_list.scss b/UI/WebServerResources/scss/components/_components/_list.scss new file mode 100755 index 000000000..01a53d6bd --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_list.scss @@ -0,0 +1,336 @@ +/** +* +* List +* +**/ + +ul, +ol { + list-style: none; + margin: 0; + + @include small-only { + padding-left: 0; + } +} + +ul li { + position: relative; + padding-left: 16px; + @include bullet-type("", icon-bullet); + + &::before { + font-size: 4px; + } +} + +ol { + counter-reset: list; + > li { + @include numbered-list; + position: relative; + padding-left: 32px; + + // This selected every adjacent
  • + // from the 10th and overrides the + // content property of each + &:nth-child(10n) ~ li::before, + &:nth-child(10n)::before { + content: counter(list); + } + + } +} + +ul ol, +ol ul { + padding-top: 0; +} + + +/*========== LIST LINKS ==========*/ + +ul.list-links { + li::before { + display: none; + } + a { + @include bullet-type("", icon-bullet); + + &::before { + font-size: 4px; + } + + font-weight: 400; + } + + &.list-links--primary { + a { + @include bullet-type("", icon-chevron-right); + font-weight: 400; + font-family: $fontHighlight; + line-height: 1; // fixes baseline grid alignment + text-decoration: none; + } + } +} + +ol.list-links { + li { + &::before { + display: none; + } + + a { + display: inline-block; + @include numbered-list; + font-weight: 300; + } + + &:nth-child(10n) ~ li a::before, + &:nth-child(10n) a::before { + content: counter(list); + } + } + + &.list-links--secondary { + a::before { + display: none; + } + } +} + +.list-links--secondary { + @include type--base; + padding-left: 0; + + li { + padding-left: 0; + } +} + +/*========== ANCHOR LIST ==========*/ + +.list-anchor { + padding-left: 0; + + li { + @include type--base; + padding-top: 0; + padding-left: 0; + + &::before { + display: none + } + + } + + a { + @include bullet-type("", icon-bullet); + line-height: 1; // fixes baseline grid alignment + display: inline-block; + padding-left: 16px; + + &::before { + font-size: 4px; + } + } +} + +/*========== SMALL LIST ==========*/ + +.list-small { + + li { + @include medium { + @include type--small; + padding-top: 0; + } + } +} + +/*========== CENTERED LIST ==========*/ + +.list-centered { + text-align: center; + padding-left: 0; +} + +/*========== FEATURED LIST ==========*/ + +.featured-list { + padding-top: $lineHeight * 3; + padding-bottom: $lineHeight * 3; +} + +.featured-list__item { + background: #ffffff; + padding-left: 0; + padding-top: $lineHeight; + padding-bottom: $lineHeight; + + @include medium { + min-height: $lineHeight * 13; + padding: $lineHeight * 2 32px; + } + + margin-top: $lineHeight; + + &:first-child { + margin-top: 0; + } + + p { + margin-bottom: $lineHeight; + } +} + +.featured-list__img-wrapper { + display: none; + position: relative; + padding-top: $lineHeight; + margin: 0 -5%; + + @include medium { + display: block; + padding-top: 0; + margin: 0; + } +} + +.featured-list__img { + @include medium { + padding-top: 60.8%; + padding-bottom: 0; + height: 0; + overflow: hidden; + position: absolute; + width: 100%; + + } + + img { + display: block; + margin: 0 auto; + max-width: 100%; + + @include medium { + margin: 0; + position: absolute; + top: 0; + height: 100%; + width: 100%; + left: 0; + } + } +} + +/*========== RELATED GUIDES LIST ==========*/ +.related-guides-list { + font-family: $fontHighlight; + padding-top: 0; + padding-left: 0; + + @include medium { + padding-top: $lineHeight + } + + @include wide { + padding-top: 0 + } + + p { + padding-top: 0; + } + + .tag { + padding-top: 0; + } + + li { + padding-top: $lineHeight; + padding-bottom: $lineHeight - 1; + border-bottom: 1px solid $colorGrayKeyline; + + &:last-child { + border-color: transparent; + } + + @include medium { + padding-top: 0; + padding-bottom: 0; + border-color: transparent; + } + } +} + +/*========== LIST RESET ==========*/ + +.list--reset { + padding-left: 0; + + li { + padding-left: 0; + } + + &.list-links a::before, + & li::before { + display: none !important; // Fine to use !important when we are forcing an override + } +} + + +/*========== LESSONS ==========*/ +.list-lessons { + padding-left: 0; + + & a { + color: #ffffff; + } + + & .current { + &, + a { + text-decoration: none; + cursor: default; + } + + & .icon { + font-size: $fontSmall; + display: inline-block; + background: rgba(#000000, .2); + border-radius: 100%; + width: 26px; + line-height: 26px; + text-align: center; + margin-left: 7px; + } + } + +} + + +/*========== GUIDES INTO - used on homepage ==========*/ +.list-guides-intro { + margin-bottom: $lineHeight*2; + + @include small-only { + padding-top: $lineHeight*2; + } + + li { + border-bottom: 1px solid $colorGrayKeyline; + padding-bottom: ($lineHeight*2) - 1; + margin-bottom: ($lineHeight*2); + + @include medium { + border-color: transparent; + padding-bottom: 0; + } + + &:last-child { + border-bottom: transparent; + margin-bottom: 0; + } + } +} diff --git a/UI/WebServerResources/scss/components/_components/_media.scss b/UI/WebServerResources/scss/components/_components/_media.scss new file mode 100755 index 000000000..3d4e7ba18 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_media.scss @@ -0,0 +1,19 @@ +/** +* +* Media - imgs/videos +* +**/ + +img, +video, +object { + max-width: 100%; +} + +img { + + .content & { + margin-top: $lineHeight; + margin-bottom: $lineHeight; + } +} diff --git a/UI/WebServerResources/scss/components/_components/_subsection-title.scss b/UI/WebServerResources/scss/components/_components/_subsection-title.scss new file mode 100755 index 000000000..0d0b786c6 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_subsection-title.scss @@ -0,0 +1,16 @@ +/** +* +* subsection__title +* +**/ + +.subsection-title { + color: $colorGrayDark; + margin-top: $lineHeight * 2; +} + +.subsection-number { + @include type--base; + padding-top: 0; + display: block; +} diff --git a/UI/WebServerResources/scss/components/_components/_table.scss b/UI/WebServerResources/scss/components/_components/_table.scss new file mode 100755 index 000000000..dd489747d --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_table.scss @@ -0,0 +1,158 @@ +/** +* +* Table +* +**/ + +table { + margin-top: $lineHeight; + width: 100%; + + thead { + background: $colorBlue; + color: #ffffff; + } + + th { + text-align: center; + display: none; + font-family: $fontHighlight; + @include type--medium; + } + + tr { + @include medium { + border-bottom: 1px solid #ffffff; + } + } + + tbody { + background: $colorGrayBackground; + } + + td { + display: block; + padding-top: $lineHeight/2; + padding-bottom: $lineHeight/2; + + // This is to re-plicate the table-headers for mobile + &::before { + content: attr(data-th) " :"; + display: inline-block; + color: #ffffff; + background: $colorBlue; + border-right: 2px solid #ffffff; + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 100px; + max-height: 100%; + font-family: $fontHighlight; + font-size: 16px; + font-weight: 400; + padding-left: $lineHeight/2; + padding-top: $lineHeight/2; + + @include medium { + display: none; + } + } + } + + th, + td { + position: relative; + padding-left: 140px; + + @include medium { + display: table-cell; + } + } + + th { + @include medium { + padding: $lineHeight; + padding-top: 13px; + padding-bottom: $lineHeight/2 - 1; + } + } + + td { + @include medium { + padding: $lineHeight; + padding-bottom: $lineHeight - 1; + } + } +} + +td:last-child::after { + content: ""; + display: block; + background: #ffffff; + height: 1px; + left: 0; + position: absolute; + bottom: 0; + width: 100%; + @include medium { + display: none; + } +} + +.table-2 { + col { + width: $mediumContainer / 2; + @include wide { + width: $wideContainer / 2; + } + } + + th, + td { + @include medium { + &:first-child { + border-right: 2px solid #ffffff; + } + } + } +} + +.table-3 { + col { + width: $mediumContainer / 3; + @include wide { + width: $wideContainer / 3; + } + } + + th, + td { + @include medium { + &:nth-child(2) { + border-left: 2px solid #ffffff; + border-right: 2px solid #ffffff; + } + } + } +} + +.table-4 { + col { + width: $mediumContainer / 4; + @include wide { + width: $wideContainer / 4; + } + } + + th, + td { + @include medium { + &:nth-child(2), + &:nth-child(3) { + border-left: 2px solid #ffffff; + border-right: 2px solid #ffffff; + } + } + } +} diff --git a/UI/WebServerResources/scss/components/_components/_typography.scss b/UI/WebServerResources/scss/components/_components/_typography.scss new file mode 100755 index 000000000..0a6c6e476 --- /dev/null +++ b/UI/WebServerResources/scss/components/_components/_typography.scss @@ -0,0 +1,52 @@ +/** +* +* Typography +* +**/ + +// Just normalizing text +// Recommend using padding instead of margin +h1, h2, h3, h4, h5, p { + margin: 0; +} + +// Definitions +.small, +small { + @include type--small; +} + +.base, +p, +ul, +ol { + @include type--base; +} + +.medium, +h4 { + @include type--medium; +} + +.large, +h3 { + @include type--large; +} +.xlarge, +h2 { + @include type--xlarge; +} + +.xxlarge, +h1 { + @include type--xxlarge; +} + +.huge { + @include type--huge; +} + + +li > p { + padding-top: 0; +} diff --git a/UI/WebServerResources/scss/components/_modules/_article-nav.scss b/UI/WebServerResources/scss/components/_modules/_article-nav.scss new file mode 100755 index 000000000..80b29af65 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_article-nav.scss @@ -0,0 +1,88 @@ +/** +* +* Article nav +* +**/ + +.article-nav { + overflow: hidden; + position: relative; + + &::before { + content: ''; + border-left: 2px solid $colorGrayKeyline; + height: 100%; + position: absolute; + top: 0; + left: 50%; + } +} + +.article-nav-link { + padding: $lineHeight 32px; + float: left; + width: 50%; + position: relative; + + &::before{ + position: absolute; + top: 21px; + font-family: $fontHighlight; + font-size: $fontMedium; + font-weight: 400; + + @include medium { + top: 25px; + font-size: $fontLarge; + display: block; + padding: 13px 10px; + color: #ffffff; + background: $colorBlue; + } + } +} + +.article-nav p { + padding: 0; + margin: 0; +} + +.article-nav-link--prev { + text-align: right; + // border-right-width: 1px; + + &::before { + font-family: $fontIcon; + @extend .icon-chevron-left::before; + left: 32px; + } + + p { + @include medium { + padding-left: 52px; + } + } +} + +.article-nav-link--next { + // border-left-width: 1px; + + &::before { + font-family: $fontIcon; + @extend .icon-chevron-right::before; + right: 32px; + } + + p { + @include medium { + padding-right: 52px; + } + } +} + +.article-nav-count { + @include type--large; + font-weight: 700; + @include medium {font-weight: 400;} +} + diff --git a/UI/WebServerResources/scss/components/_modules/_articles-section.scss b/UI/WebServerResources/scss/components/_modules/_articles-section.scss new file mode 100755 index 000000000..c91454626 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_articles-section.scss @@ -0,0 +1,25 @@ +/** +* +* Articles section +* +**/ + +.articles-section { + background: $colorGrayBackground; + text-align: center; + padding: $lineHeight 0 $lineHeight*4; +} + +.articles-count { + color: $colorBlue; + font-family: $fontHighlight; + font-weight: 400; +} + +.article-section__icon { + top: -($lineHeight); + + @include medium { + top: -($lineHeight + $lineHeight/2); + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_did-you-know.scss b/UI/WebServerResources/scss/components/_modules/_did-you-know.scss new file mode 100755 index 000000000..17d86a0d6 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_did-you-know.scss @@ -0,0 +1,56 @@ +/** +* +* Text module +* +**/ + +.did-you-know { + + ol { + @include medium { + padding-top: 0 !important; + } + } + + .cta--primary { + margin-top: $lineHeight; + font-weight: 500; + } + + &>.g--half { + position: relative; + padding-left: 0; + @include medium {padding-left: 32px} + } +} + +.did-you-know__symbol { + padding-bottom: $lineHeight*12; + @include medium {padding-bottom: $lineHeight} + + &::after { + content: $icon-question; + color: $colorBlue; + font-family: $fontIcon; + font-size: 300px; + top: 150px; + left: 30%; + position: relative; + display: block; + width: 0; + + @include medium { + position: absolute; + font-size: 400px; + top: 200px; + left: 110%; + } + + @include wide { + position: absolute; + font-size: 400px; + top: 200px; + left: 124%; + } + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_editorial-header.scss b/UI/WebServerResources/scss/components/_modules/_editorial-header.scss new file mode 100755 index 000000000..e574a25ae --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_editorial-header.scss @@ -0,0 +1,78 @@ +/** +* +* Editorial Header +* +**/ + +.editorial-header { + overflow: hidden; + + .breadcrumbs { + color: $colorBlue; + + a { + color: $colorBlue; + } + } + + .container { + + @include medium { + position: relative; + + // Pseudo elements to add the background characters + &::before { + content: $icon-chevron-large; + font-family: $fontIcon; + font-size: 1000px; + line-height: 0; + display: block; + position: absolute; + top: 0; + right: 100%; + color: $colorGrayBackground; + margin: 168px -35px 0 0; + } + } + } + +} + +.editorial-header__excerpt { + @include type--medium(true); + font-family: $fontHighlight; +} + +.editorial-header .tag{ + padding-top: $lineHeight*2; +} + +.editorial-header__subtitle { + @include type--xxlarge; + padding-top: 0; + @include medium { + padding-top: 0; + padding-bottom: $lineHeight; + } + color: $colorBlue; +} + +.editorial-header__toc { + margin-top: $lineHeight; + + ol { + padding-top: 0; + + @include medium { + padding-top: 0; + } + } +} + +.editorial-header__toc-title { + font-family: $fontHighlight; + border-bottom: 1px solid $colorGrayKeyline; + margin-bottom: 13px; + padding-bottom: 13px !important; + color: $colorBlue; +} diff --git a/UI/WebServerResources/scss/components/_modules/_featured-section.scss b/UI/WebServerResources/scss/components/_modules/_featured-section.scss new file mode 100755 index 000000000..7fa09643d --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_featured-section.scss @@ -0,0 +1,9 @@ +/** +* +* Editorial Header +* +**/ + +.featured-section { + background: $colorGrayBackground; +} diff --git a/UI/WebServerResources/scss/components/_modules/_featured-spotlight.scss b/UI/WebServerResources/scss/components/_modules/_featured-spotlight.scss new file mode 100755 index 000000000..4411e05e6 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_featured-spotlight.scss @@ -0,0 +1,61 @@ +/** +* +* Editorial Header +* +**/ + +.featured-spotlight { + background: $colorGrayDark; + color: #ffffff; + overflow: hidden; + padding-bottom: $lineHeight * 3 - 1; + margin-top: $lineHeight * 2; + + p { + padding-bottom: $lineHeight; + } + + .cta--primary { + color: #ffffff; + + &:hover { + color: #ffffff; + } + } +} + +.featured-spotlight__container { + position: relative; +} + +.featured-spotlight__img { + @include small-only { + padding-top: 58.4%; + padding-bottom: 0; + height: 0; + overflow: hidden; + position: relative; + width: 100%; + } + + img { + margin: 0 auto; + display: block; + width: 100%; + + position: absolute; + left: 0; + top: 0; + margin: 0; + + @include medium { + width: auto; + max-width: none; + left: 100% + $mediumGutterWidth * 2; + } + + @include wide { + left: 100% + $wideGutterWidth * 2; + } + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_guides-section.scss b/UI/WebServerResources/scss/components/_modules/_guides-section.scss new file mode 100755 index 000000000..013738f72 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_guides-section.scss @@ -0,0 +1,5 @@ +.guides-section { + background: $colorGrayBackground; + text-align: center; + padding: $lineHeight 0 $lineHeight * 4; +} diff --git a/UI/WebServerResources/scss/components/_modules/_highlight.scss b/UI/WebServerResources/scss/components/_modules/_highlight.scss new file mode 100755 index 000000000..47cc8ed04 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_highlight.scss @@ -0,0 +1,269 @@ +/** +* +* Highlight +* +**/ + +.highlight-module { + overflow: hidden; + margin-top: $lineHeight * 2; + margin-bottom: $lineHeight; + position: relative; + + &::after { + background: $colorGrayBackground; + content: ''; + height: 100%; + position: absolute; + top: 0; + bottom: 0; + z-index: 0; + width: 100%; + right: 0; + left: 0; + } + + ul, + ol { + padding-left: 0; + } +} + +.highlight-module__container { + @include container; + padding-bottom: $lineHeight * 3; + z-index: 1; + @include highlight-symbol(); + + @include medium { + padding-bottom: $lineHeight * 2; + } + + @include wide { + min-height: $lineHeight * 8; + } +} + +.highlight-module__title { + @include type--huge; + padding-top: $lineHeight; + + @include wide { + @include type--xxlarge; + } +} + +.highlight-module__cta { + display: block; +} + + +/*========== LEARNING ==========*/ +.highlight-module--learning { + color: #ffffff; + + &::after { + background-color: $colorLearning; + } + + a { + color: #ffffff; + text-decoration: underline; + } +} + + +/*========== REMEMBER ==========*/ +.highlight-module--remember { + color: #ffffff; + + &::after { + background-color: $colorRemember; + } + + a { + color: #ffffff; + text-decoration: underline; + } +} + + +/*========== CODE ==========*/ +.highlight-module--code { + overflow: visible; + margin-bottom: $lineHeight * 2; + + pre { + margin: 0; + padding-top: $lineHeight; + font-size: $fontBase - 2; + line-height: $lineHeight; + padding-bottom: 0; + padding-left: 0; + padding-right: 0; + + span { + margin: 0; + padding: 0; + display: inline-block; + } + } + + code { + margin: 0; + padding: 0; + word-spacing: -2px; + display: block; + } + + .highlight-module__container { + padding-bottom: 0; + } + + .highlight-module__cta { + position: absolute; + bottom: -$lineHeight; + } + +} + + +/*========== LEFT ==========*/ +.highlight-module--left { + &::after { + @include wide { + width: 80%; + right: 20%; + } + } +} + + +/*========== RIGHT ==========*/ +.highlight-module--right { + &::after { + @include wide { + width: 80%; + left: 20%; + } + } + + &.highlight-module--code { + &::after { + @include wide { + width: 100%; + left: 0; + } + } + } +} + +/*========== INLINE ==========*/ +.highlight-module--inline { + color: $colorText; + overflow: visible; + margin: $lineHeight 0 0; + + & .highlight-module__container { + padding-bottom: 0; + + &::before { + display: none; + } + } + + & .highlight-module__content { + border-color: $colorGrayKeyline; + border-style: solid; + border-width: 1px; + border-left-width: 0; + border-right-width: 0; + margin-bottom: -2px; // Offsetting 2px to considerate border top/bottom - baseline rules. + padding: 0 0 $lineHeight; + } + + & .highlight-module__title { + @include type--large; + } + + &.highlight-module--remember { + & .highlight-module__title, + & li::before { + color: $colorRemember; + } + } + + &.highlight-module--learning { + & .highlight-module__title, + & li::before { + color: $colorLearning; + } + } + + &::after { + display: none !important; + } +} + +/*========== COLORS ==========*/ + +div.highlight > pre > code, code .highlight { background: transparent; } +div.highlight > pre > code .c, code .highlight .c { color: #999988; font-style: italic } /* Comment */ +div.highlight > pre > code .err, code .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +div.highlight > pre > code .k, code .highlight .k { } /* Keyword */ +div.highlight > pre > code .o, code .highlight .o { } /* Operator */ +div.highlight > pre > code .cm, code .highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */ +div.highlight > pre > code .cp, code .highlight .cp { color: $colorGray; } /* Comment.Preproc */ +div.highlight > pre > code .c1, code .highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */ +div.highlight > pre > code .cs, code .highlight .cs { color: $colorGray; font-style: italic } /* Comment.Special */ +div.highlight > pre > code .gs, code .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ +div.highlight > pre > code .gd .x, code .highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ +div.highlight > pre > code .ge, code .highlight .ge { font-style: italic } /* Generic.Emph */ +div.highlight > pre > code .gr, code .highlight .gr { color: #aa0000 } /* Generic.Error */ +div.highlight > pre > code .gh, code .highlight .gh { color: $colorGray } /* Generic.Heading */ +div.highlight > pre > code .gi, code .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ +div.highlight > pre > code .gi .x, code .highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ +div.highlight > pre > code .go, code .highlight .go { color: #888888 } /* Generic.Output */ +div.highlight > pre > code .gp, code .highlight .gp { color: #555555 } /* Generic.Prompt */ +div.highlight > pre > code .gs, code .highlight .gs { } /* Generic.Strong */ +div.highlight > pre > code .gu, code .highlight .gu { color: #aaaaaa } /* Generic.Subheading */ +div.highlight > pre > code .gt, code .highlight .gt { color: #aa0000 } /* Generic.Traceback */ +div.highlight > pre > code .kc, code .highlight .kc { } /* Keyword.Constant */ +div.highlight > pre > code .kd, code .highlight .kd { } /* Keyword.Declaration */ +div.highlight > pre > code .kp, code .highlight .kp { } /* Keyword.Pseudo */ +div.highlight > pre > code .kr, code .highlight .kr { } /* Keyword.Reserved */ +div.highlight > pre > code .kt, code .highlight .kt { color: #445588; } /* Keyword.Type */ +div.highlight > pre > code .m, code .highlight .m { color: #009999 } /* Literal.Number */ +div.highlight > pre > code .s, code .highlight .s { color: $colorLearning } /* Literal.String */ +div.highlight > pre > code .na, code .highlight .na { color: #008080 } /* Name.Attribute */ +div.highlight > pre > code .nb, code .highlight .nb { color: #0086B3 } /* Name.Builtin */ +div.highlight > pre > code .nc, code .highlight .nc { color: #445588; } /* Name.Class */ +div.highlight > pre > code .no, code .highlight .no { color: #008080 } /* Name.Constant */ +div.highlight > pre > code .ni, code .highlight .ni { color: #800080 } /* Name.Entity */ +div.highlight > pre > code .ne, code .highlight .ne { color: #990000; } /* Name.Exception */ +div.highlight > pre > code .nf, code .highlight .nf { color: #990000; } /* Name.Function */ +div.highlight > pre > code .nn, code .highlight .nn { color: #555555 } /* Name.Namespace */ +div.highlight > pre > code .nt, code .highlight .nt { color: $colorRemember } /* Name.Tag */ +div.highlight > pre > code .nv, code .highlight .nv { color: #008080 } /* Name.Variable */ +div.highlight > pre > code .ow, code .highlight .ow { } /* Operator.Word */ +div.highlight > pre > code .w, code .highlight .w { color: #bbbbbb } /* Text.Whitespace */ +div.highlight > pre > code .mf, code .highlight .mf { color: #009999 } /* Literal.Number.Float */ +div.highlight > pre > code .mh, code .highlight .mh { color: #009999 } /* Literal.Number.Hex */ +div.highlight > pre > code .mi, code .highlight .mi { color: #009999 } /* Literal.Number.Integer */ +div.highlight > pre > code .mo, code .highlight .mo { color: #009999 } /* Literal.Number.Oct */ +div.highlight > pre > code .sb, code .highlight .sb { color: $colorLearning } /* Literal.String.Backtick */ +div.highlight > pre > code .sc, code .highlight .sc { color: $colorLearning } /* Literal.String.Char */ +div.highlight > pre > code .sd, code .highlight .sd { color: $colorLearning } /* Literal.String.Doc */ +div.highlight > pre > code .s2, code .highlight .s2 { color: $colorLearning } /* Literal.String.Double */ +div.highlight > pre > code .se, code .highlight .se { color: $colorLearning } /* Literal.String.Escape */ +div.highlight > pre > code .sh, code .highlight .sh { color: $colorLearning } /* Literal.String.Heredoc */ +div.highlight > pre > code .si, code .highlight .si { color: $colorLearning } /* Literal.String.Interpol */ +div.highlight > pre > code .sx, code .highlight .sx { color: $colorLearning } /* Literal.String.Other */ +div.highlight > pre > code .sr, code .highlight .sr { color: #009926 } /* Literal.String.Regex */ +div.highlight > pre > code .s1, code .highlight .s1 { color: $colorLearning } /* Literal.String.Single */ +div.highlight > pre > code .ss, code .highlight .ss { color: #990073 } /* Literal.String.Symbol */ +div.highlight > pre > code .bp, code .highlight .bp { color: $colorGray } /* Name.Builtin.Pseudo */ +div.highlight > pre > code .vc, code .highlight .vc { color: #008080 } /* Name.Variable.Class */ +div.highlight > pre > code .vg, code .highlight .vg { color: #008080 } /* Name.Variable.Global */ +div.highlight > pre > code .vi, code .highlight .vi { color: #008080 } /* Name.Variable.Instance */ +div.highlight > pre > code .il, code .highlight .il { color: #009999 } /* Literal.Number.Integer.Long */ diff --git a/UI/WebServerResources/scss/components/_modules/_in-this-guide.scss b/UI/WebServerResources/scss/components/_modules/_in-this-guide.scss new file mode 100755 index 000000000..5ac4dfca0 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_in-this-guide.scss @@ -0,0 +1,15 @@ +/** +* +* In this guide +* +**/ + +.in-this-guide { + margin-top: - $lineHeight * 3; +} + +.in-this-guide__title { + @include type--medium(true); + font-family: $fontHighlight; + margin-bottom: $lineHeight; +} diff --git a/UI/WebServerResources/scss/components/_modules/_next-lessons.scss b/UI/WebServerResources/scss/components/_modules/_next-lessons.scss new file mode 100755 index 000000000..b3299da0a --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_next-lessons.scss @@ -0,0 +1,79 @@ +/** +* +* Next Lessons +* +**/ + +.next-lessons { + background: $colorGrayDark; + padding: $lineHeight $lineHeight $lineHeight * 2; + margin-top: $lineHeight; + color: #ffffff; + position: relative; + + h3 { + i { + @include medium { + display: none; + } + } + } + + &::before, + &::after { + color: rgba(255, 255, 255, 0.5); + position: absolute; + display: none; + + @include medium { + display: inline-block; + } + } + + &::before { + @include medium { + content: attr(data-current-lesson); + + font-family: $fontHighlight; + font-size: $fontBase; + font-weight: 400; + line-height: 1; + + background: $colorGrayDark; + display: inline-block; + padding: 5px 7px; + + right: 127px; + top: 143px; + + z-index: 1; + color: rgba(255, 255, 255, 0.5); + } + + @include wide { + font-size: $fontMedium; + padding-left: 15px; + padding-right: 15px; + top: 126px; + right: 230px; + } + + } + + &::after { + @include medium { + content: $icon-lessons; + font-family: $fontIcon; + font-size: 150px; + + right: 40px; + top: 185px; + } + + @include wide { + font-size: 210px; + right: 120px; + } + + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_page-header.scss b/UI/WebServerResources/scss/components/_modules/_page-header.scss new file mode 100755 index 000000000..ac7e24eac --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_page-header.scss @@ -0,0 +1,32 @@ +/** +* +* Page header +* +**/ + +.page-header { + text-align: center; + + .breadcrumbs { + text-align: left; + color: $colorBlue; + + a { + color: $colorBlue; + } + } + + h3 { + color: $colorGrayDark; + padding-top: $lineHeight * 2; + } +} + +.page-header__excerpt { + position: relative; + padding-top: 0; + + &:last-child { + padding-bottom: $lineHeight * 3; + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_quote.scss b/UI/WebServerResources/scss/components/_modules/_quote.scss new file mode 100755 index 000000000..01ca8cccf --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_quote.scss @@ -0,0 +1,44 @@ +/** +* +* Quote +* +**/ + +.quote__content { + position: relative; + font-family: $fontHighlight; + @include type--medium; + padding-top: $lineHeight * 4; + padding-left: $lineHeight; + + @include medium { + padding-top: $lineHeight * 2; + padding-left: 0; + } + + p { + border-top: 1px solid $colorGrayKeyline; + text-align: right; + font-weight: 500; + margin-top: $lineHeight/2 - 1; + padding-top: $lineHeight/2; + } + + &::before { + content: open-quote; + display: block; + position: absolute; + font-family: $fontHighlight; + font-weight: 700; + color: $colorGrayBackground; + top: 90px; + left: $lineHeight; + font-size: 260px; + + @include medium { + top: 225px; + left: -210px; + font-size: 540px; + } + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_related-guides.scss b/UI/WebServerResources/scss/components/_modules/_related-guides.scss new file mode 100755 index 000000000..c7890c1aa --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_related-guides.scss @@ -0,0 +1,41 @@ +/** +* +* Related items +* +**/ + +.related-guides { + margin-top: $lineHeight*3; + padding-bottom: ($lineHeight*2) - 2; + border-top: 2px solid $colorGrayKeyline; + padding-top: ($lineHeight*2) - 2; +} + +.related-guides__list { + .list-links { + padding-top: 0; + } + + a { + display: block; + } +} + +.related-guides__title { + @include type--xlarge; + padding-top: 0; + + @include medium { + padding-top: 0; + } +} + +.related-guides__main-link { + text-transform: uppercase; + + &::before { + content: '#'; + display: inline-block; + padding-right: 2px; + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_related-items.scss b/UI/WebServerResources/scss/components/_modules/_related-items.scss new file mode 100755 index 000000000..ad021b4ef --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_related-items.scss @@ -0,0 +1,19 @@ +/** +* +* Related items +* +**/ + +.related-items { + background-color: $colorGrayDark; + color: #ffffff; + padding-bottom: $lineHeight * 2; + margin-top: $lineHeight * 2; + + .list-links { + a { + color: #ffffff; + } + } + +} diff --git a/UI/WebServerResources/scss/components/_modules/_summary-header.scss b/UI/WebServerResources/scss/components/_modules/_summary-header.scss new file mode 100755 index 000000000..8605833b1 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_summary-header.scss @@ -0,0 +1,29 @@ +/** +* +* Editorial Header +* +**/ + +.summary-header { + background-color: $colorBlue; + padding-bottom: $lineHeight * 3; + color: #ffffff; + margin-bottom: $lineHeight; + box-shadow: inset 0 2px 0 0 #fff; + + .breadcrumbs__link { + color: #ffffff; + } + +} + +.summary-header__anchor-list { + margin-top: $lineHeight * 2; +} + + +.summary-header__anchors-item { + & a { + color: #ffffff; + } +} diff --git a/UI/WebServerResources/scss/components/_modules/_toc.scss b/UI/WebServerResources/scss/components/_modules/_toc.scss new file mode 100755 index 000000000..2d9235fe1 --- /dev/null +++ b/UI/WebServerResources/scss/components/_modules/_toc.scss @@ -0,0 +1,34 @@ +/** +* +* Table of contents +* +**/ + +.toc__title { + @include type--medium; + font-family: $fontHighlight; + padding-bottom: $lineHeight/2; + margin-bottom: ($lineHeight/2) - 1; + border-bottom: 1px solid $colorGrayKeyline; + + @include medium { + padding-bottom: $lineHeight/2; + margin-bottom: $lineHeight/2; + } +} + +.toc__list { + padding-top: 0; + + border-bottom: 1px solid $colorGrayKeyline; + padding-bottom: ($lineHeight/2) - 1; + margin-bottom: $lineHeight/2; + + a { + display: block; + } +} + +.toc__sublist { + padding-top: 0; +} diff --git a/UI/WebServerResources/scss/components/_pages/_page-resources.scss b/UI/WebServerResources/scss/components/_pages/_page-resources.scss new file mode 100755 index 000000000..0ef4a8725 --- /dev/null +++ b/UI/WebServerResources/scss/components/_pages/_page-resources.scss @@ -0,0 +1,23 @@ +/** +* +* Resources page +* +**/ + +.page--resources { + & .article-section__icon, + & .articles-count, + & .guides-list__item .secondary-content { + display: none; + } + + & .primary-content { + padding-top: $lineHeight; + padding-bottom: $lineHeight*2; + + p { + margin-top: 0; + } + } + +} diff --git a/UI/WebServerResources/scss/components/_pages/_styleguide.scss b/UI/WebServerResources/scss/components/_pages/_styleguide.scss new file mode 100755 index 000000000..a58550d43 --- /dev/null +++ b/UI/WebServerResources/scss/components/_pages/_styleguide.scss @@ -0,0 +1,82 @@ +/** +* +* Styleguide +* +**/ + +.page--styleguide { + + .styleguide__module-title { + margin-bottom: $lineHeight; + } + + section { + margin-bottom: $lineHeight*2; + border-bottom: 1px solid #ccc; + padding-bottom: $lineHeight*3 - 1; + + } + + .styleguide__color-list { + text-align: center; + + li { + border-bottom: $lineHeight*2 solid; + margin-bottom: $lineHeight; + position: relative; + } + } + + .styleguide__breadcrumb .breadcrumbs { + display: block; + } + + .styleguide__lists { + ul, + ol { + margin-bottom: $lineHeight; + } + } + + .styleguide__inverted-block { + background: #e8e8e8; + padding: 0 13px; + } + + .styleguide__theme-block { + background: $colorLayouts; + padding: 0 13px; + } + +} + +.demo { + margin-bottom: $lineHeight; + margin-top: $lineHeight; +} + +.demo { + [class*="g-"] { + background-color: $colorGrayLight; + position: relative; + margin-bottom: $lineHeight; + min-height: $lineHeight*6; + + &::before, + &::after { + @include type--small; + display: block; + margin: 0 10px; + } + + &::before { + content: 'HTML classes: '; + font-weight: 700; + } + + &::after { + content: attr(class); + word-spacing: 15px; + } + } +} diff --git a/UI/WebServerResources/scss/components/_palette.scss b/UI/WebServerResources/scss/components/_palette.scss new file mode 100755 index 000000000..5b9d4f5d9 --- /dev/null +++ b/UI/WebServerResources/scss/components/_palette.scss @@ -0,0 +1,335 @@ +/** +* +* Material design color palettes NOT TO BE USED WITH ANGULAR-MATERIAL +* @see http://www.google.com/design/spec/style/color.html +* +**/ + +/* ========== Blacks ========== */ + +$colorBlack: #000; +$colorGrayDark: rgba($colorBlack, .87); +$colorGray: rgba($colorBlack, .54); +$colorGrayLight: rgba($colorBlack, .26); +$colorGrayLighter: rgba($colorBlack, .12); + +/* ========== Color Palettes ========== */ + +$paletteRed: #fde0dc #f9bdbb #f69988 #f36c60 #e84e40 #e51c23 #dd191d + #d01716 #c41411 #b0120a #ff7997 #ff5177 #ff2d6f #e00032; + +$palettePink: #fce4ec #f8bbd0 #f48fb1 #f06292 #ec407a #e91e63 #d81b60 + #c2185b #ad1457 #880e4f #ff80ab #ff4081 #f50057 #c51162; + +$palettePurple: #f3e5f5 #e1bee7 #ce93d8 #ba68c8 #ab47bc #9c27b0 #8e24aa + #7b1fa2 #6a1b9a #4a148c #ea80fc #e040fb #d500f9 #aa00ff; + +$paletteDeepPurple: #673ab7 #ede7f6 #d1c4e9 #b39ddb #9575cd #7e57c2 #673ab7 + #5e35b1 #512da8 #4527a0 #311b92 #b388ff #7c4dff #651fff + #6200ea; + +$paletteIndigo: #e8eaf6 #c5cae9 #9fa8da #7986cb #5c6bc0 #3f51b5 #3949ab + #303f9f #283593 #1a237e #8c9eff #536dfe #3d5afe #304ffe; + +$paletteBlue: #e7e9fd #d0d9ff #afbfff #91a7ff #738ffe #5677fc #4e6cef + #455ede #3b50ce #2a36b1 #a6baff #6889ff #4d73ff #4d69ff; + +$paletteLightBlue: #e1f5fe #b3e5fc #81d4fa #4fc3f7 #29b6f6 #03a9f4 #039be5 + #0288d1 #0277bd #01579b #80d8ff #40c4ff #00b0ff #0091ea; + +$paletteCyan: #e0f7fa #b2ebf2 #80deea #4dd0e1 #26c6da #00bcd4 #00acc1 + #0097a7 #00838f #006064 #84ffff #18ffff #00e5ff #00b8d4; + +$paletteTeal: #e0f2f1 #b2dfdb #80cbc4 #4db6ac #26a69a #009688 #00897b + #00796b #00695c #004d40 #a7ffeb #64ffda #1de9b6 #00bfa5; + +$paletteGreen: #d0f8ce #a3e9a4 #72d572 #42bd41 #2baf2b #259b24 #0a8f08 + #0a7e07 #056f00 #0d5302 #a2f78d #5af158 #14e715 #12c700; + +$paletteLightGreen: #f1f8e9 #dcedc8 #c5e1a5 #aed581 #9ccc65 #8bc34a #7cb342 + #689f38 #558b2f #33691e #ccff90 #b2ff59 #76ff03 #64dd17; + +$paletteLime: #f9fbe7 #f0f4c3 #e6ee9c #dce775 #d4e157 #cddc39 #c0ca33 + #afb42b #9e9d24 #827717 #f4ff81 #eeff41 #c6ff00 #aeea00; + +$paletteYellow: #fffde7 #fff9c4 #fff59d #fff176 #ffee58 #ffeb3b #fdd835 + #fbc02d #f9a825 #f57f17 #ffff8d #ffff00 #ffea00 #ffd600; + +$paletteAmber: #fff8e1 #ffecb3 #ffe082 #ffd54f #ffca28 #ffc107 #ffb300 + #ffa000 #ff8f00 #ff6f00 #ffe57f #ffd740 #ffc400 #ffab00; + +$paletteOrange: #fff3e0 #ffe0b2 #ffcc80 #ffb74d #ffa726 #ff9800 #fb8c00 + #f57c00 #ef6c00 #e65100 #ffd180 #ffab40 #ff9100 #ff6d00; + +$paletteDeepOrange: #fbe9e7 #ffccbc #ffab91 #ff8a65 #ff7043 #ff5722 #f4511e + #e64a19 #d84315 #bf360c #ff9e80 #ff6e40 #ff3d00 #dd2c00; + +$paletteBrown: #efebe9 #d7ccc8 #bcaaa4 #a1887f #8d6e63 + #795548 #6d4c41 #5d4037 #4e342e #3e2723; + +$paletteBlueGrey: #eceff1 #cfd8dc #b0bec5 #90a4ae #78909c + #607d8b #546e7a #455a64 #37474f #263238; + +/* ========== Color definitions ========== */ + +$colorRed50: nth($paletteRed, 1); +$colorRed100: nth($paletteRed, 2); +$colorRed200: nth($paletteRed, 3); +$colorRed300: nth($paletteRed, 4); +$colorRed400: nth($paletteRed, 5); +$colorRed500: nth($paletteRed, 6); +$colorRed600: nth($paletteRed, 7); +$colorRed700: nth($paletteRed, 8); +$colorRed800: nth($paletteRed, 9); +$colorRed900: nth($paletteRed, 10); +$colorRedA100: nth($paletteRed, 11); +$colorRedA200: nth($paletteRed, 12); +$colorRedA400: nth($paletteRed, 13); +$colorRedA700: nth($paletteRed, 14); + +$colorPink50: nth($palettePink, 1); +$colorPink100: nth($palettePink, 2); +$colorPink200: nth($palettePink, 3); +$colorPink300: nth($palettePink, 4); +$colorPink400: nth($palettePink, 5); +$colorPink500: nth($palettePink, 6); +$colorPink600: nth($palettePink, 7); +$colorPink700: nth($palettePink, 8); +$colorPink800: nth($palettePink, 9); +$colorPink900: nth($palettePink, 10); +$colorPinkA100: nth($palettePink, 11); +$colorPinkA200: nth($palettePink, 12); +$colorPinkA400: nth($palettePink, 13); +$colorPinkA700: nth($palettePink, 14); + +$colorPurple50: nth($palettePurple, 1); +$colorPurple100: nth($palettePurple, 2); +$colorPurple200: nth($palettePurple, 3); +$colorPurple300: nth($palettePurple, 4); +$colorPurple400: nth($palettePurple, 5); +$colorPurple500: nth($palettePurple, 6); +$colorPurple600: nth($palettePurple, 7); +$colorPurple700: nth($palettePurple, 8); +$colorPurple800: nth($palettePurple, 9); +$colorPurple900: nth($palettePurple, 10); +$colorPurpleA100: nth($palettePurple, 11); +$colorPurpleA200: nth($palettePurple, 12); +$colorPurpleA400: nth($palettePurple, 13); +$colorPurpleA700: nth($palettePurple, 14); + +$colorDeepPurple50: nth($paletteDeepPurple, 1); +$colorDeepPurple100: nth($paletteDeepPurple, 2); +$colorDeepPurple200: nth($paletteDeepPurple, 3); +$colorDeepPurple300: nth($paletteDeepPurple, 4); +$colorDeepPurple400: nth($paletteDeepPurple, 5); +$colorDeepPurple500: nth($paletteDeepPurple, 6); +$colorDeepPurple600: nth($paletteDeepPurple, 7); +$colorDeepPurple700: nth($paletteDeepPurple, 8); +$colorDeepPurple800: nth($paletteDeepPurple, 9); +$colorDeepPurple900: nth($paletteDeepPurple, 10); +$colorDeepPurpleA100: nth($paletteDeepPurple, 11); +$colorDeepPurpleA200: nth($paletteDeepPurple, 12); +$colorDeepPurpleA400: nth($paletteDeepPurple, 13); +$colorDeepPurpleA700: nth($paletteDeepPurple, 14); + +$colorIndigo50: nth($paletteIndigo, 1); +$colorIndigo100: nth($paletteIndigo, 2); +$colorIndigo200: nth($paletteIndigo, 3); +$colorIndigo300: nth($paletteIndigo, 4); +$colorIndigo400: nth($paletteIndigo, 5); +$colorIndigo500: nth($paletteIndigo, 6); +$colorIndigo600: nth($paletteIndigo, 7); +$colorIndigo700: nth($paletteIndigo, 8); +$colorIndigo800: nth($paletteIndigo, 9); +$colorIndigo900: nth($paletteIndigo, 10); +$colorIndigoA100: nth($paletteIndigo, 11); +$colorIndigoA200: nth($paletteIndigo, 12); +$colorIndigoA400: nth($paletteIndigo, 13); +$colorIndigoA700: nth($paletteIndigo, 14); + +$colorBlue50: nth($paletteBlue, 1); +$colorBlue100: nth($paletteBlue, 2); +$colorBlue200: nth($paletteBlue, 3); +$colorBlue300: nth($paletteBlue, 4); +$colorBlue400: nth($paletteBlue, 5); +$colorBlue500: nth($paletteBlue, 6); +$colorBlue600: nth($paletteBlue, 7); +$colorBlue700: nth($paletteBlue, 8); +$colorBlue800: nth($paletteBlue, 9); +$colorBlue900: nth($paletteBlue, 10); +$colorBlueA100: nth($paletteBlue, 11); +$colorBlueA200: nth($paletteBlue, 12); +$colorBlueA400: nth($paletteBlue, 13); +$colorBlueA700: nth($paletteBlue, 14); + +$colorLightBlue50: nth($paletteLightBlue, 1); +$colorLightBlue100: nth($paletteLightBlue, 2); +$colorLightBlue200: nth($paletteLightBlue, 3); +$colorLightBlue300: nth($paletteLightBlue, 4); +$colorLightBlue400: nth($paletteLightBlue, 5); +$colorLightBlue500: nth($paletteLightBlue, 6); +$colorLightBlue600: nth($paletteLightBlue, 7); +$colorLightBlue700: nth($paletteLightBlue, 8); +$colorLightBlue800: nth($paletteLightBlue, 9); +$colorLightBlue900: nth($paletteLightBlue, 10); +$colorLightBlueA100: nth($paletteLightBlue, 11); +$colorLightBlueA200: nth($paletteLightBlue, 12); +$colorLightBlueA400: nth($paletteLightBlue, 13); +$colorLightBlueA700: nth($paletteLightBlue, 14); + +$colorCyan50: nth($paletteCyan, 1); +$colorCyan100: nth($paletteCyan, 2); +$colorCyan200: nth($paletteCyan, 3); +$colorCyan300: nth($paletteCyan, 4); +$colorCyan400: nth($paletteCyan, 5); +$colorCyan500: nth($paletteCyan, 6); +$colorCyan600: nth($paletteCyan, 7); +$colorCyan700: nth($paletteCyan, 8); +$colorCyan800: nth($paletteCyan, 9); +$colorCyan900: nth($paletteCyan, 10); +$colorCyanA100: nth($paletteCyan, 11); +$colorCyanA200: nth($paletteCyan, 12); +$colorCyanA400: nth($paletteCyan, 13); +$colorCyanA700: nth($paletteCyan, 14); + +$colorTeal50: nth($paletteTeal, 1); +$colorTeal100: nth($paletteTeal, 2); +$colorTeal200: nth($paletteTeal, 3); +$colorTeal300: nth($paletteTeal, 4); +$colorTeal400: nth($paletteTeal, 5); +$colorTeal500: nth($paletteTeal, 6); +$colorTeal600: nth($paletteTeal, 7); +$colorTeal700: nth($paletteTeal, 8); +$colorTeal800: nth($paletteTeal, 9); +$colorTeal900: nth($paletteTeal, 10); +$colorTealA100: nth($paletteTeal, 11); +$colorTealA200: nth($paletteTeal, 12); +$colorTealA400: nth($paletteTeal, 13); +$colorTealA700: nth($paletteTeal, 14); + +$colorGreen50: nth($paletteGreen, 1); +$colorGreen100: nth($paletteGreen, 2); +$colorGreen200: nth($paletteGreen, 3); +$colorGreen300: nth($paletteGreen, 4); +$colorGreen400: nth($paletteGreen, 5); +$colorGreen500: nth($paletteGreen, 6); +$colorGreen600: nth($paletteGreen, 7); +$colorGreen700: nth($paletteGreen, 8); +$colorGreen800: nth($paletteGreen, 9); +$colorGreen900: nth($paletteGreen, 10); +$colorGreenA100: nth($paletteGreen, 11); +$colorGreenA200: nth($paletteGreen, 12); +$colorGreenA400: nth($paletteGreen, 13); +$colorGreenA700: nth($paletteGreen, 14); + +$colorLightGreen50: nth($paletteLightGreen, 1); +$colorLightGreen100: nth($paletteLightGreen, 2); +$colorLightGreen200: nth($paletteLightGreen, 3); +$colorLightGreen300: nth($paletteLightGreen, 4); +$colorLightGreen400: nth($paletteLightGreen, 5); +$colorLightGreen500: nth($paletteLightGreen, 6); +$colorLightGreen600: nth($paletteLightGreen, 7); +$colorLightGreen700: nth($paletteLightGreen, 8); +$colorLightGreen800: nth($paletteLightGreen, 9); +$colorLightGreen900: nth($paletteLightGreen, 10); +$colorLightGreenA100: nth($paletteLightGreen, 11); +$colorLightGreenA200: nth($paletteLightGreen, 12); +$colorLightGreenA400: nth($paletteLightGreen, 13); +$colorLightGreenA700: nth($paletteLightGreen, 14); + +$colorLime50: nth($paletteLime, 1); +$colorLime100: nth($paletteLime, 2); +$colorLime200: nth($paletteLime, 3); +$colorLime300: nth($paletteLime, 4); +$colorLime400: nth($paletteLime, 5); +$colorLime500: nth($paletteLime, 6); +$colorLime600: nth($paletteLime, 7); +$colorLime700: nth($paletteLime, 8); +$colorLime800: nth($paletteLime, 9); +$colorLime900: nth($paletteLime, 10); +$colorLimeA100: nth($paletteLime, 11); +$colorLimeA200: nth($paletteLime, 12); +$colorLimeA400: nth($paletteLime, 13); +$colorLimeA700: nth($paletteLime, 14); + +$colorYellow50: nth($paletteYellow, 1); +$colorYellow100: nth($paletteYellow, 2); +$colorYellow200: nth($paletteYellow, 3); +$colorYellow300: nth($paletteYellow, 4); +$colorYellow400: nth($paletteYellow, 5); +$colorYellow500: nth($paletteYellow, 6); +$colorYellow600: nth($paletteYellow, 7); +$colorYellow700: nth($paletteYellow, 8); +$colorYellow800: nth($paletteYellow, 9); +$colorYellow900: nth($paletteYellow, 10); +$colorYellowA100: nth($paletteYellow, 11); +$colorYellowA200: nth($paletteYellow, 12); +$colorYellowA400: nth($paletteYellow, 13); +$colorYellowA700: nth($paletteYellow, 14); + +$colorAmber50: nth($paletteAmber, 1); +$colorAmber100: nth($paletteAmber, 2); +$colorAmber200: nth($paletteAmber, 3); +$colorAmber300: nth($paletteAmber, 4); +$colorAmber400: nth($paletteAmber, 5); +$colorAmber500: nth($paletteAmber, 6); +$colorAmber600: nth($paletteAmber, 7); +$colorAmber700: nth($paletteAmber, 8); +$colorAmber800: nth($paletteAmber, 9); +$colorAmber900: nth($paletteAmber, 10); +$colorAmberA100: nth($paletteAmber, 11); +$colorAmberA200: nth($paletteAmber, 12); +$colorAmberA400: nth($paletteAmber, 13); +$colorAmberA700: nth($paletteAmber, 14); + +$colorOrange50: nth($paletteOrange, 1); +$colorOrange100: nth($paletteOrange, 2); +$colorOrange200: nth($paletteOrange, 3); +$colorOrange300: nth($paletteOrange, 4); +$colorOrange400: nth($paletteOrange, 5); +$colorOrange500: nth($paletteOrange, 6); +$colorOrange600: nth($paletteOrange, 7); +$colorOrange700: nth($paletteOrange, 8); +$colorOrange800: nth($paletteOrange, 9); +$colorOrange900: nth($paletteOrange, 10); +$colorOrangeA100: nth($paletteOrange, 11); +$colorOrangeA200: nth($paletteOrange, 12); +$colorOrangeA400: nth($paletteOrange, 13); +$colorOrangeA700: nth($paletteOrange, 14); + +$colorDeepOrange50: nth($paletteDeepOrange, 1); +$colorDeepOrange100: nth($paletteDeepOrange, 2); +$colorDeepOrange200: nth($paletteDeepOrange, 3); +$colorDeepOrange300: nth($paletteDeepOrange, 4); +$colorDeepOrange400: nth($paletteDeepOrange, 5); +$colorDeepOrange500: nth($paletteDeepOrange, 6); +$colorDeepOrange600: nth($paletteDeepOrange, 7); +$colorDeepOrange700: nth($paletteDeepOrange, 8); +$colorDeepOrange800: nth($paletteDeepOrange, 9); +$colorDeepOrange900: nth($paletteDeepOrange, 10); +$colorDeepOrangeA100: nth($paletteDeepOrange, 11); +$colorDeepOrangeA200: nth($paletteDeepOrange, 12); +$colorDeepOrangeA400: nth($paletteDeepOrange, 13); +$colorDeepOrangeA700: nth($paletteDeepOrange, 14); + +$colorBrown50: nth($paletteBrown, 1); +$colorBrown100: nth($paletteBrown, 2); +$colorBrown200: nth($paletteBrown, 3); +$colorBrown300: nth($paletteBrown, 4); +$colorBrown400: nth($paletteBrown, 5); +$colorBrown500: nth($paletteBrown, 6); +$colorBrown600: nth($paletteBrown, 7); +$colorBrown700: nth($paletteBrown, 8); +$colorBrown800: nth($paletteBrown, 9); +$colorBrown900: nth($paletteBrown, 10); + +$colorBlueGrey50: nth($paletteBlueGrey, 1); +$colorBlueGrey100: nth($paletteBlueGrey, 2); +$colorBlueGrey200: nth($paletteBlueGrey, 3); +$colorBlueGrey300: nth($paletteBlueGrey, 4); +$colorBlueGrey400: nth($paletteBlueGrey, 5); +$colorBlueGrey500: nth($paletteBlueGrey, 6); +$colorBlueGrey600: nth($paletteBlueGrey, 7); +$colorBlueGrey700: nth($paletteBlueGrey, 8); +$colorBlueGrey800: nth($paletteBlueGrey, 9); +$colorBlueGrey900: nth($paletteBlueGrey, 10); diff --git a/UI/WebServerResources/scss/components/_utils.scss b/UI/WebServerResources/scss/components/_utils.scss new file mode 100755 index 000000000..bad1760d0 --- /dev/null +++ b/UI/WebServerResources/scss/components/_utils.scss @@ -0,0 +1,417 @@ +/** +* +* Utils +* +**/ + +/*========== VARIABLES ==========*/ + + // Defining breakpoints + $medium: 620px !default; + $wide: 800px !default; + $huge: 1600px !default; + $mediumContainer: 688px !default; + $wideContainer: 864px !default; + + // Defining grid sizes + $mediumColCount: 3 !default; + $mediumColWidth: 30.3% !default; + $mediumGutterWidth: 4.5% !default; + $wideColCount: 4 !default; + $wideColWidth: 22.2% !default; + $wideGutterWidth: 3.7% !default; + + // Defining colors + $colorBlue: #3372df !default; + $colorBlueSecondary: lighten($colorBlue, 30%) !default; + $colorGreen: #0f9d58 !default; + $colorGreenSecondary: lighten($colorGreen, 30%) !default; + $colorRed: #cb4437 !default; + $colorRedSecondary: lighten($colorRed, 30%) !default; + $colorYellow: #f4b400 !default; + $colorYellowSecondary: lighten($colorYellow, 20%) !default; + + $colorRemember: #09829a !default; + $colorLearning: #da2e75 !default; + + $colorGrayBackground: #f0f0f0 !default; + $colorGrayKeyline: #e0e0e0 !default; + $colorGray: #737373 !default; + $colorGrayLight: #eeeeee !default; + $colorGrayDark: #404040 !default; + + $colorText: $colorGrayDark !default; + $colorHighlight: $colorBlue !default; + $colorWarning: $colorYellowSecondary !default; + $colorMuted: $colorGray !default; + $colorDanger: $colorRed !default; + + $colorLayouts: #297ea9 !default; + $colorLayoutsSecondary: lighten($colorLayouts, 30%) !default; + $colorUser: #2c8566 !default; + $colorUserSecondary: lighten($colorUser, 30%) !default; + $colorMedia: #cf423a !default; + $colorMediaSecondary: lighten($colorMedia, 30%) !default; + $colorPerformance: #7b5294 !default; + $colorPerformanceSecondary: lighten($colorPerformance, 30%) !default; + + // Defining font family + $fontDefault: 'Ubuntu', Helvetica, Arial, sans-serif !default; + $fontHighlight: 'Ubuntu', Helvetica, sans-serif !default; + $fontIcon: 'icons' !default; + + // Defining font sizes + $fontSmall: 13px !default; + $fontBase: 16px !default; + $fontMedium: 20px !default; + $fontLarge: 26px !default; + $fontXLarge: 42px !default; + $fontXXLarge: 68px !default; + $fontHuge: 110px !default; + + // Defining baseline line height + $lineHeight: 26px !default; + + // Defining animation easings + $animationEasing: cubic-bezier(0.455, 0.030, 0.515, 0.955) !default; + + // Defining sidebar stuff + $sidebarWidth: 280px !default; + + +/*========== FUNCTIONS ==========*/ + + @function leading($size, $context: $lineHeight) { + @return $context / $size + em; + } + + +/*========== MIXINS ==========*/ + + @mixin media-query($media-query) { + @if $media-query == small { + @media only screen and (max-width: $medium - 1) { @content; } + } + + @if $media-query == medium { + @media only screen and (min-width: $medium) { @content; } + } + + @if $media-query == medium-only { + @media only screen and (min-width: $medium) and (max-width: $wide - 1) { @content; } + } + + @if $media-query == wide { + @media only screen and (min-width: $wide) { @content; } + } + + @if $media-query == huge { + @media only screen and (min-width: $huge) { @content; } + } + } + + // Just some helpers... + @mixin small-only { @include media-query(small) { @content }; } + @mixin medium { @include media-query(medium) { @content }; } + @mixin medium-only { @include media-query(medium-only) { @content }; } + @mixin wide { @include media-query(wide) { @content }; } + @mixin huge { @include media-query(huge) { @content }; } + + // Mixin to constrain elements + @mixin container($isRelative: false) { + box-sizing: content-box; + + @if $isRelative { + position: relative; + } + + padding-left: 5%; + padding-right: 5%; + margin-left: auto; + margin-right: auto; + + + @include medium { + padding-left: 4.8%; + padding-right: 4.8%; + max-width: $mediumContainer; + } + + @include wide { + padding-left: 4.4%; + padding-right: 4.4%; + max-width: $wideContainer; + } + } + + + + // Mixin to show a baseline grid + // only visible when body has 'debug' class + @mixin baseline-grid() { + position: relative; + + &::after { + content: ''; + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + width: 100%; + z-index: 9; + + display: none; + background-image: linear-gradient(to bottom, rgba(0,0,0,0.15) 95%,rgba(0,0,0,0.15) 100%); + + background-size: 100% 26px; + } + + &.debug::after { + display: block; + pointer-events: none; + } + } + + // Mixins simply to store CSS rules + @mixin rule--small { + font-size: $fontSmall; + line-height: 2.0000em; /* 26px */ + padding-top: 2.0000em; + padding-bottom: 0; + } + + @mixin rule--base { + font-size: $fontBase; + line-height: 1.6250em; /* 26px */ + padding-top: 1.6250em; + padding-bottom: 0; + } + + @mixin rule--medium { + font-size: $fontMedium; + font-weight: 300; + line-height: 1.3000em; /* 26px */ + padding-top: 1.3000em; + padding-bottom: 0; + } + + @mixin rule--large { + font-family: $fontHighlight; + font-size: $fontLarge; + font-weight: 300; + line-height: 1.0000em; /* 26px */ + padding-top: 1.0000em; + padding-bottom: 0; + } + + @mixin rule--xlarge { + font-family: $fontHighlight; + font-size: $fontXLarge; + font-weight: 300; + line-height: 1.2381em; /* 52px */ + padding-top: 0.6190em; + padding-bottom: 0; + } + + @mixin rule--xxlarge { + font-family: $fontHighlight; + font-size: $fontXXLarge; + font-weight: 300; + line-height: 1.1471em; /* 78px */ + padding-top: 0.3824em; + padding-bottom: 0; + } + + @mixin rule--huge { + font-family: $fontHighlight; + font-size: $fontHuge; + font-weight: 300; + line-height: 1.19em; /* 130px */ + padding-top: 0.2364em; + padding-bottom: 0; + } + + + + // Mixins to determine which rule to use at which breakpoint + @mixin type--small($isFromMixin: false) { + @include rule--small; + } + + @mixin type--base($isFromMixin: false) { + @include rule--base; + } + + @mixin type--medium($isFromMixin: false) { + @if $isFromMixin == false { + @include type--base(true); + @include wide { + @include rule--medium; + } + } + @else { + @include rule--medium; + } + } + + @mixin type--large($isFromMixin: false) { + @if $isFromMixin == false { + @include type--medium(true); + @include wide { + @include rule--large; + } + } + @else { + @include rule--large; + } + } + + @mixin type--xlarge($isFromMixin: false) { + @if $isFromMixin == false { + @include type--large(true); + @include wide { + @include rule--xlarge; + } + } + @else { + @include rule--xlarge; + } + } + + @mixin type--xxlarge($isFromMixin: false) { + @if $isFromMixin == false { + @include type--xlarge(true); + @include wide { + @include rule--xxlarge; + } + } + @else { + @include rule--xxlarge; + } + } + + @mixin type--huge($isFromMixin: false) { + @if $isFromMixin == false { + @include type--xxlarge(true); + @include wide { + @include rule--huge; + } + } + @else { + @include rule--huge; + } + } + + + // LISTS + @mixin bullet-type($bullet, $icon: false) { + &::before { + @if $icon { + font-family: $fontIcon; + @extend .#{$icon}::before; + font-size: $fontSmall; + } + @else { + content: $bullet; + font-family: $fontHighlight; + } + + display: block; + font-weight: 400; + position: absolute; + top: 0; + left: 0; + line-height: $lineHeight; + + } + } + + @mixin numbered-list() { + &::before { + counter-increment: list; + content: '0' counter(list); + color: inherit; + font-weight: 400; + display: inline-block; + position: absolute; + left: 0; + } + } + + // Mixin to create links + @mixin style-cta($textColor, $linkIcon: false) { + font-family: $fontHighlight; + color: $textColor; + font-weight: 400; + display: inline-block; + line-height: 1; + + &:hover { + color: $colorGrayDark; + } + + @if $linkIcon { + text-decoration: none; + &::before { + display: inline-block; + padding-right: 10px; + font-family: $fontIcon; + line-height: ($lineHeight) - 1; // remove 1px from line-height to fix baseline alignment + font-size: $fontSmall; + content: $linkIcon; + } + } + } + + // Mixin to create highlight modules + @mixin highlight-symbol($verticalOffset: 0, $horizontalOffset: 45px, $fontSize: 130px) { + position: relative; + + &::before { + display: none; + + @include medium { + display: block; + position: absolute; + top: 106px; + right: $horizontalOffset; + + font-family: $fontIcon; + font-size: $fontSize; + line-height: 1px; + text-align: center; + height: 100%; + width: $mediumColWidth; + color: #ffffff; + } + + .highlight-module--left & { + right: auto; + left: $horizontalOffset; + } + + @include wide { + top: 134px; + width: $wideColWidth; + font-size: $fontSize + 50; + + .highlight-module--large & { + font-size: $fontSize + 300; + } + } + } + } + + // Grid CSS rules + @mixin rule--col($mediaQuery) { + @if $mediaQuery == medium { + float: left; + margin-right: $mediumGutterWidth; + } + + @if $mediaQuery == wide { + float: left; + margin-right: $wideGutterWidth; + } + } diff --git a/UI/WebServerResources/scss/reset.css b/UI/WebServerResources/scss/reset.css new file mode 100644 index 000000000..8493a9df5 --- /dev/null +++ b/UI/WebServerResources/scss/reset.css @@ -0,0 +1,68 @@ +/* Welcome to Compass. + * In this file you should write your main styles. (or centralize your imports) + * Import this file using the following HTML or equivalent: + * */ +/* line 5, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font: inherit; + font-size: 100%; + vertical-align: baseline; +} + +/* line 22, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +html { + line-height: 1; +} + +/* line 24, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +ol, ul { + list-style: none; +} + +/* line 26, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +table { + border-collapse: collapse; + border-spacing: 0; +} + +/* line 28, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +caption, th, td { + text-align: left; + font-weight: normal; + vertical-align: middle; +} + +/* line 30, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +q, blockquote { + quotes: none; +} +/* line 103, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +q:before, q:after, blockquote:before, blockquote:after { + content: ""; + content: none; +} + +/* line 32, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +a img { + border: none; +} + +/* line 116, ../../.rvm/gems/ruby-2.1.5/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */ +article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { + display: block; +} diff --git a/UI/WebServerResources/scss/vendors/_compass.scss b/UI/WebServerResources/scss/vendors/_compass.scss new file mode 100644 index 000000000..9b741c0f0 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/_compass.scss @@ -0,0 +1,3 @@ +@import "compass/utilities"; +@import "compass/typography"; +@import "compass/css3"; diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop-theme.scss new file mode 100644 index 000000000..1ffaff572 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop-theme.scss @@ -0,0 +1,4 @@ +md-backdrop.md-opaque.md-THEME_NAME-theme { + background-color: '{{foreground-4-0.5}}'; + position: absolute +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.js b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.js new file mode 100644 index 000000000..5f84fed4b --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.js @@ -0,0 +1,31 @@ +(function() { +'use strict'; + +/* + * @ngdoc module + * @name material.components.backdrop + * @description Backdrop + */ + +/** + * @ngdoc directive + * @name mdBackdrop + * @module material.components.backdrop + * + * @restrict E + * + * @description + * `` is a backdrop element used by other coponents, such as dialog and bottom sheet. + * Apply class `opaque` to make the backdrop use the theme backdrop color. + * + */ + +angular.module('material.components.backdrop', [ + 'material.core' +]) + .directive('mdBackdrop', BackdropDirective); + +function BackdropDirective($mdTheming) { + return $mdTheming; +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.scss b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.scss new file mode 100644 index 000000000..3e1cfbf75 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/backdrop/backdrop.scss @@ -0,0 +1,36 @@ +md-backdrop { + z-index: $z-index-backdrop; + &.md-dialog-backdrop { + z-index: $z-index-dialog - 1; + } + &.md-bottom-sheet-backdrop { + z-index: $z-index-bottom-sheet - 1; + } + &.md-sidenav-backdrop { + z-index: $z-index-sidenav - 1; + } + + background-color: rgba(0,0,0,0); + + position: fixed; + left: 0; + top: 0; + right: 0; + bottom: 0; + + &.ng-enter { + animation: $swift-ease-out-timing-function mdBackdropFadeIn 0.5s both; + } + &.ng-leave { + animation: $swift-ease-in-timing-function mdBackdropFadeOut 0.2s both; + } +} + +@keyframes mdBackdropFadeIn { + from { opacity: 0; } + to { opacity: 1; } +} +@keyframes mdBackdropFadeOut { + from { opacity: 1; } + to { opacity: 0; } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet-theme.scss new file mode 100644 index 000000000..1307f35e3 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet-theme.scss @@ -0,0 +1,19 @@ + +md-bottom-sheet.md-THEME_NAME-theme { + background-color: '{{background-50}}'; + border-top-color: '{{background-300}}'; + + &.md-list { + md-item { + color: '{{foreground-1}}'; + } + } + + .md-subheader { + background-color: '{{background-50}}'; + } + + .md-subheader { + color: '{{foreground-1}}'; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.js b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.js new file mode 100644 index 000000000..d914b2b35 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.js @@ -0,0 +1,285 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.bottomSheet + * @description + * BottomSheet + */ +angular.module('material.components.bottomSheet', [ + 'material.core', + 'material.components.backdrop' +]) + .directive('mdBottomSheet', MdBottomSheetDirective) + .provider('$mdBottomSheet', MdBottomSheetProvider); + +function MdBottomSheetDirective() { + return { + restrict: 'E' + }; +} + +/** + * @ngdoc service + * @name $mdBottomSheet + * @module material.components.bottomSheet + * + * @description + * `$mdBottomSheet` opens a bottom sheet over the app and provides a simple promise API. + * + * ### Restrictions + * + * - The bottom sheet's template must have an outer `` element. + * - Add the `md-grid` class to the bottom sheet for a grid layout. + * - Add the `md-list` class to the bottom sheet for a list layout. + * + * @usage + * + *
    + * + * Open a Bottom Sheet! + * + *
    + *
    + * + * var app = angular.module('app', ['ngMaterial']); + * app.controller('MyController', function($scope, $mdBottomSheet) { + * $scope.openBottomSheet = function() { + * $mdBottomSheet.show({ + * template: 'Hello!' + * }); + * }; + * }); + * + */ + + /** + * @ngdoc method + * @name $mdBottomSheet#show + * + * @description + * Show a bottom sheet with the specified options. + * + * @param {object} options An options object, with the following properties: + * + * - `templateUrl` - `{string=}`: The url of an html template file that will + * be used as the content of the bottom sheet. Restrictions: the template must + * have an outer `md-bottom-sheet` element. + * - `template` - `{string=}`: Same as templateUrl, except this is an actual + * template string. + * - `controller` - `{string=}`: The controller to associate with this bottom sheet. + * - `locals` - `{string=}`: An object containing key/value pairs. The keys will + * be used as names of values to inject into the controller. For example, + * `locals: {three: 3}` would inject `three` into the controller with the value + * of 3. + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * the location of the click will be used as the starting point for the opening animation + * of the the dialog. + * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values + * and the bottom sheet will not open until the promises resolve. + * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. + * - `parent` - `{element=}`: The element to append the bottom sheet to. Defaults to appending + * to the root element of the application. + * + * @returns {promise} A promise that can be resolved with `$mdBottomSheet.hide()` or + * rejected with `$mdBottomSheet.cancel()`. + */ + +/** + * @ngdoc method + * @name $mdBottomSheet#hide + * + * @description + * Hide the existing bottom sheet and resolve the promise returned from + * `$mdBottomSheet.show()`. + * + * @param {*=} response An argument for the resolved promise. + * + */ + +/** + * @ngdoc method + * @name $mdBottomSheet#cancel + * + * @description + * Hide the existing bottom sheet and reject the promise returned from + * `$mdBottomSheet.show()`. + * + * @param {*=} response An argument for the rejected promise. + * + */ + +function MdBottomSheetProvider($$interimElementProvider) { + + return $$interimElementProvider('$mdBottomSheet') + .setDefaults({ + options: bottomSheetDefaults + }); + + /* @ngInject */ + function bottomSheetDefaults($animate, $mdConstant, $timeout, $$rAF, $compile, $mdTheming, $mdBottomSheet, $rootElement) { + var backdrop; + + return { + themable: true, + targetEvent: null, + onShow: onShow, + onRemove: onRemove, + escapeToClose: true + }; + + function onShow(scope, element, options) { + // Add a backdrop that will close on click + backdrop = $compile('')(scope); + backdrop.on('click touchstart', function() { + $timeout($mdBottomSheet.cancel); + }); + + $mdTheming.inherit(backdrop, options.parent); + + $animate.enter(backdrop, options.parent, null); + + var bottomSheet = new BottomSheet(element); + options.bottomSheet = bottomSheet; + + // Give up focus on calling item + options.targetEvent && angular.element(options.targetEvent.target).blur(); + $mdTheming.inherit(bottomSheet.element, options.parent); + + return $animate.enter(bottomSheet.element, options.parent) + .then(function() { + var focusable = angular.element( + element[0].querySelector('button') || + element[0].querySelector('a') || + element[0].querySelector('[ng-click]') + ); + focusable.focus(); + + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdBottomSheet.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + }); + + } + + function onRemove(scope, element, options) { + var bottomSheet = options.bottomSheet; + $animate.leave(backdrop); + return $animate.leave(bottomSheet.element).then(function() { + bottomSheet.cleanup(); + + // Restore focus + options.targetEvent && angular.element(options.targetEvent.target).focus(); + }); + } + + /** + * BottomSheet class to apply bottom-sheet behavior to an element + */ + function BottomSheet(element) { + var MAX_OFFSET = 80; // amount past the bottom of the element that we can drag down, this is same as in _bottomSheet.scss + var WIGGLE_AMOUNT = 20; // point where it starts to get "harder" to drag + var CLOSING_VELOCITY = 10; // how fast we need to flick down to close the sheet + var startY, lastY, velocity, transitionDelay, startTarget; + + // coercion incase $mdCompiler returns multiple elements + element = element.eq(0); + + element.on('touchstart', onTouchStart) + .on('touchmove', onTouchMove) + .on('touchend', onTouchEnd); + + return { + element: element, + cleanup: function cleanup() { + element.off('touchstart', onTouchStart) + .off('touchmove', onTouchMove) + .off('touchend', onTouchEnd); + } + }; + + function onTouchStart(e) { + e.preventDefault(); + startTarget = e.target; + startY = getY(e); + + // Disable transitions on transform so that it feels fast + transitionDelay = element.css($mdConstant.CSS.TRANSITION_DURATION); + element.css($mdConstant.CSS.TRANSITION_DURATION, '0s'); + } + + function onTouchEnd(e) { + // Re-enable the transitions on transforms + element.css($mdConstant.CSS.TRANSITION_DURATION, transitionDelay); + + var currentY = getY(e); + // If we didn't scroll much, and we didn't change targets, assume its a click + if ( Math.abs(currentY - startY) < 5 && e.target == startTarget) { + angular.element(e.target).triggerHandler('click'); + } else { + // If they went fast enough, trigger a close. + if (velocity > CLOSING_VELOCITY) { + $timeout($mdBottomSheet.cancel); + + // Otherwise, untransform so that we go back to our normal position + } else { + setTransformY(undefined); + } + } + } + + function onTouchMove(e) { + var currentY = getY(e); + var delta = currentY - startY; + + velocity = currentY - lastY; + lastY = currentY; + + // Do some conversion on delta to get a friction-like effect + delta = adjustedDelta(delta); + setTransformY(delta + MAX_OFFSET); + } + + /** + * Helper function to find the Y aspect of various touch events. + **/ + function getY(e) { + var touch = e.touches && e.touches.length ? e.touches[0] : e.changedTouches[0]; + return touch.clientY; + } + + /** + * Transform the element along the y-axis + **/ + function setTransformY(amt) { + if (amt === null || amt === undefined) { + element.css($mdConstant.CSS.TRANSFORM, ''); + } else { + element.css($mdConstant.CSS.TRANSFORM, 'translate3d(0, ' + amt + 'px, 0)'); + } + } + + // Returns a new value for delta that will never exceed MAX_OFFSET_AMOUNT + // Will get harder to exceed it as you get closer to it + function adjustedDelta(delta) { + if ( delta < 0 && delta < -MAX_OFFSET + WIGGLE_AMOUNT) { + delta = -delta; + var base = MAX_OFFSET - WIGGLE_AMOUNT; + delta = Math.max(-MAX_OFFSET, -Math.min(MAX_OFFSET - 5, base + ( WIGGLE_AMOUNT * (delta - base)) / MAX_OFFSET) - delta / 50); + } + + return delta; + } + } + + } + +} + +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.scss b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.scss new file mode 100644 index 000000000..e68d60cf4 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.scss @@ -0,0 +1,175 @@ +$bottom-sheet-horizontal-padding: 2 * $baseline-grid !default; +$bottom-sheet-vertical-padding: 1 * $baseline-grid !default; +$bottom-sheet-icon-after-margin: 4 * $baseline-grid !default; +$bottom-sheet-list-item-height: 6 * $baseline-grid !default; +$bottom-sheet-hidden-bottom-padding: 80px !default; +$bottom-sheet-header-height: 7 * $baseline-grid !default; +$bottom-sheet-grid-font-weight: 300 !default; + +md-bottom-sheet { + position: absolute; + left: 0; + right: 0; + bottom: 0; + padding: $bottom-sheet-vertical-padding $bottom-sheet-horizontal-padding $bottom-sheet-vertical-padding + $bottom-sheet-hidden-bottom-padding $bottom-sheet-horizontal-padding; + z-index: $z-index-bottom-sheet; + + border-top: 1px solid; + + transform: translate3d(0, $bottom-sheet-hidden-bottom-padding, 0); + transition: $swift-ease-out; + transition-property: transform; + + &.md-has-header { + padding-top: 0; + } + + &.ng-enter { + opacity: 0; + transform: translate3d(0, 100%, 0); + } + + &.ng-enter-active { + opacity: 1; + display: block; + transform: translate3d(0, $bottom-sheet-hidden-bottom-padding, 0) !important; + } + + + &.ng-leave-active { + transform: translate3d(0, 100%, 0) !important; + transition: $swift-ease-in; + } + + .md-subheader { + background-color: transparent; + font-family: $font-family; + line-height: $bottom-sheet-header-height; + padding: 0; + white-space: nowrap; + } + + md-inline-icon { + display: inline-block; + height: 24px; + width: 24px; + fill: #444; + } + + md-item { + display: flex; + outline: none; + + &:hover { + cursor: pointer; + } + } + + &.md-list { + md-item { + align-items: center; + height: $bottom-sheet-list-item-height; + + div.md-icon-container { + display: inline-block; + height: 3 * $baseline-grid; + margin-right: $bottom-sheet-icon-after-margin; + } + } + } + + + + &.md-grid { + padding-left: 3 * $baseline-grid; + padding-right: 3 * $baseline-grid; + padding-top: 0; + + md-list { + display: flex; + flex-direction: row; + flex-wrap: wrap; + transition: all 0.5s; + align-items: center; + } + + md-item { + flex-direction: column; + align-items: center; + transition: all 0.5s; + + height: 12 * $baseline-grid; + + margin-top: $baseline-grid; + margin-bottom: $baseline-grid; + + /* Mixin for how many grid items to show per row */ + @mixin grid-items-per-row($num, $alignEdges: false) { + $width: 100% / $num; + flex: 1 1 $width; + max-width: $width; + + @if $alignEdges { + &:nth-of-type(#{$num}n + 1) { + align-items: flex-start; + } + &:nth-of-type(#{$num}n) { + align-items: flex-end; + } + } + } + + @media screen and (max-width: $layout-breakpoint-sm) { + @include grid-items-per-row(3, true); + } + + @media screen and (min-width: $layout-breakpoint-sm) and (max-width: $layout-breakpoint-md) { + @include grid-items-per-row(4); + } + + @media screen and (min-width: $layout-breakpoint-md) and (max-width: $layout-breakpoint-lg) { + @include grid-items-per-row(6); + } + + @media screen and (min-width: $layout-breakpoint-lg) { + @include grid-items-per-row(7); + } + + + + .md-item-content { + display: flex; + flex-direction: column; + align-items: center; + width: 6 * $baseline-grid; + padding-bottom: 2 * $baseline-grid; + } + + .md-grid-item-content { + display: flex; + flex-direction: column; + align-items: center; + width: 10 * $baseline-grid; + } + + .md-icon-container { + display: inline-block; + box-sizing: border-box; + height: 6 * $baseline-grid; + width: 6 * $baseline-grid; + margin: 0 0; + } + + p.md-grid-text { + font-weight: $bottom-sheet-grid-font-weight; + line-height: 2 * $baseline-grid; + font-size: 2 * $baseline-grid - 3; + margin: 0; + white-space: nowrap; + width: 8 * $baseline-grid; + text-align: center; + padding-top: 1 * $baseline-grid; + } + } + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.spec.js new file mode 100644 index 000000000..195454264 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/bottomSheet.spec.js @@ -0,0 +1,44 @@ +describe('$mdBottomSheet service', function() { + beforeEach(module('material.components.bottomSheet', 'ngAnimateMock')); + + describe('#build()', function() { + it('should escapeToClose == true', inject(function($mdBottomSheet, $rootScope, $rootElement, $timeout, $animate, $mdConstant) { + var parent = angular.element('
    '); + $mdBottomSheet.show({ + template: '', + parent: parent, + escapeToClose: true + }); + $rootScope.$apply(); + + $animate.triggerCallbacks(); + + expect(parent.find('md-bottom-sheet').length).toBe(1); + + $rootElement.triggerHandler({type: 'keyup', + keyCode: $mdConstant.KEY_CODE.ESCAPE + }); + + $timeout.flush(); + expect(parent.find('md-bottom-sheet').length).toBe(0); + })); + + it('should escapeToClose == false', inject(function($mdBottomSheet, $rootScope, $rootElement, $timeout, $animate, $mdConstant) { + var parent = angular.element('
    '); + $mdBottomSheet.show({ + template: '', + parent: parent, + escapeToClose: false + }); + $rootScope.$apply(); + + $animate.triggerCallbacks(); + + expect(parent.find('md-bottom-sheet').length).toBe(1); + + $rootElement.triggerHandler({ type: 'keyup', keyCode: $mdConstant.KEY_CODE.ESCAPE }); + + expect(parent.find('md-bottom-sheet').length).toBe(1); + })); + }); +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-grid-template.html b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-grid-template.html new file mode 100644 index 000000000..f743f0b25 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-grid-template.html @@ -0,0 +1,14 @@ + + + + + +
    + +
    +

    {{ item.name }}

    +
    + +
    +
    +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-list-template.html b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-list-template.html new file mode 100644 index 000000000..348220518 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/bottom-sheet-list-template.html @@ -0,0 +1,12 @@ + + Comment Actions + + + + + + {{ item.name }} + + + + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/index.html new file mode 100644 index 000000000..9762d0318 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/index.html @@ -0,0 +1,19 @@ +
    +

    + Bottom sheet can be dismissed with the service or a swipe down. +

    +
    + + Show as List + +
    + + Show as Grid + +
    + +
    + + {{alert}} + +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/script.js new file mode 100644 index 000000000..25351a284 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/script.js @@ -0,0 +1,58 @@ +angular.module('bottomSheetDemo1', ['ngMaterial']) + +.controller('BottomSheetExample', function($scope, $timeout, $mdBottomSheet) { + $scope.alert = ''; + + $scope.showListBottomSheet = function($event) { + $scope.alert = ''; + $mdBottomSheet.show({ + templateUrl: 'bottom-sheet-list-template.html', + controller: 'ListBottomSheetCtrl', + targetEvent: $event + }).then(function(clickedItem) { + $scope.alert = clickedItem.name + ' clicked!'; + }); + }; + + $scope.showGridBottomSheet = function($event) { + $scope.alert = ''; + $mdBottomSheet.show({ + templateUrl: 'bottom-sheet-grid-template.html', + controller: 'GridBottomSheetCtrl', + targetEvent: $event + }).then(function(clickedItem) { + $scope.alert = clickedItem.name + ' clicked!'; + }); + }; +}) + +.controller('ListBottomSheetCtrl', function($scope, $mdBottomSheet) { + + $scope.items = [ + { name: 'Share', icon: 'share' }, + { name: 'Upload', icon: 'upload' }, + { name: 'Copy', icon: 'copy' }, + { name: 'Print this page', icon: 'print' }, + ]; + + $scope.listItemClick = function($index) { + var clickedItem = $scope.items[$index]; + $mdBottomSheet.hide(clickedItem); + }; +}) +.controller('GridBottomSheetCtrl', function($scope, $mdBottomSheet) { + + $scope.items = [ + { name: 'Hangout', icon: 'hangout' }, + { name: 'Mail', icon: 'mail' }, + { name: 'Message', icon: 'message' }, + { name: 'Copy', icon: 'copy' }, + { name: 'Facebook', icon: 'facebook' }, + { name: 'Twitter', icon: 'twitter' }, + ]; + + $scope.listItemClick = function($index) { + var clickedItem = $scope.items[$index]; + $mdBottomSheet.hide(clickedItem); + }; +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/style.css new file mode 100644 index 000000000..6999d9d33 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/bottomSheet/demoBasicUsage/style.css @@ -0,0 +1,64 @@ + +/* Temporary fix until md-icon is working, DO NOT USE! */ +md-inline-list-icon { + display: inline-block; + height: 24px; + width: 24px; +} + +.md-inline-list-icon-label { + padding-left: 20px; + display: inline-block; + margin-top: -5px; + height: 24px; + vertical-align: middle; +} + +md-inline-list-icon[icon=share] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjRweCINCgkgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItNjE4IiB5PSItMTA4MCIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbCI+DQo8L2c+DQo8ZyBpZD0iSWNvbiI+DQoJPGc+DQoJCTxwYXRoIGZpbGw9IiM3ZDdkN2QiIGQ9Ik0yMSwxMWwtNy03djRDNyw5LDQsMTQsMywxOWMyLjUtMy41LDYtNS4xLDExLTUuMVYxOEwyMSwxMXoiLz4NCgkJPHJlY3QgZmlsbD0ibm9uZSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ii8+DQoJPC9nPg0KPC9nPg0KPGcgaWQ9IkdyaWQiIGRpc3BsYXk9Im5vbmUiPg0KCTxnIGRpc3BsYXk9ImlubGluZSI+DQoJPC9nPg0KPC9nPg0KPC9zdmc+'); +} + +md-inline-list-icon[icon=upload] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjRweCINCgkgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItNjE4IiB5PSItMjIzMiIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbCI+DQo8L2c+DQo8ZyBpZD0iSWNvbiI+DQoJPGc+DQoJCTxyZWN0IGZpbGw9Im5vbmUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIvPg0KCQk8cGF0aCBmaWxsPSIjN2Q3ZDdkIiBkPSJNMTkuNCwxMGMtMC43LTMuNC0zLjctNi03LjQtNkM5LjEsNCw2LjYsNS42LDUuNCw4QzIuMyw4LjQsMCwxMC45LDAsMTRjMCwzLjMsMi43LDYsNiw2aDEzYzIuOCwwLDUtMi4yLDUtNQ0KCQkJQzI0LDEyLjQsMjEuOSwxMC4yLDE5LjQsMTB6IE0xNCwxM3Y0aC00di00SDdsNS01bDUsNUgxNHoiLz4NCgk8L2c+DQo8L2c+DQo8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+DQoJPGcgZGlzcGxheT0iaW5saW5lIj4NCgk8L2c+DQo8L2c+DQo8L3N2Zz4='); +} + +md-inline-list-icon[icon=copy] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjRweCINCgkgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItNjE4IiB5PSItMTcyMCIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbHMiPg0KPC9nPg0KPGcgaWQ9Ikljb24iPg0KCTxnPg0KCQk8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiLz4NCgkJPHBhdGggZmlsbD0iIzdkN2Q3ZCIgZD0iTTE2LDFINEMyLjksMSwyLDEuOSwyLDN2MTRoMlYzaDEyVjF6IE0xOSw1SDhDNi45LDUsNiw1LjksNiw3djE0YzAsMS4xLDAuOSwyLDIsMmgxMWMxLjEsMCwyLTAuOSwyLTJWNw0KCQkJQzIxLDUuOSwyMC4xLDUsMTksNXogTTE5LDIxSDhWN2gxMVYyMXoiLz4NCgk8L2c+DQo8L2c+DQo8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+DQoJPGcgZGlzcGxheT0iaW5saW5lIj4NCgk8L2c+DQo8L2c+DQo8L3N2Zz4='); +} + +md-inline-list-icon[icon=print] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjRweCINCgkgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItNjE4IiB5PSItMTQ2NCIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbCI+DQo8L2c+DQo8ZyBpZD0iSWNvbiI+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTE5LDhINWMtMS43LDAtMywxLjMtMywzdjZoNHY0aDEydi00aDR2LTZDMjIsOS4zLDIwLjcsOCwxOSw4eiBNMTYsMTlIOHYtNWg4VjE5eiBNMTksMTJjLTAuNiwwLTEtMC40LTEtMXMwLjQtMSwxLTENCgkJCQljMC42LDAsMSwwLjQsMSwxUzE5LjYsMTIsMTksMTJ6IE0xOCwzSDZ2NGgxMlYzeiIgZmlsbD0iIzdkN2Q3ZCIvPg0KCQk8L2c+DQoJCTxyZWN0IGZpbGw9Im5vbmUiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJHcmlkIiBkaXNwbGF5PSJub25lIj4NCgk8ZyBkaXNwbGF5PSJpbmxpbmUiPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg=='); +} + +.md-icon-container md-inline-grid-icon { + display: inline-block; + height: 48px; + width: 48px; +} + +md-inline-grid-icon[icon=hangout] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItMjIzMiIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbHMiPg0KPC9nPg0KPGcgaWQ9Ikljb24iPg0KCTxnPg0KCQk8cGF0aCBmaWxsPSIjMTU5RjVDIiBkPSJNMjMsNEMxMy42LDQsNiwxMS42LDYsMjFzNy42LDE3LDE3LDE3aDF2N2M5LjctNC43LDE2LTE1LDE2LTI0QzQwLDExLjYsMzIuNCw0LDIzLDR6IE0yMiwyMmwtMiw0aC0zbDItNGgtM3YtNmg2VjIyeg0KCQkJIE0zMCwyMmwtMiw0aC0zbDItNGgtM3YtNmg2VjIyeiIvPg0KCQk8cmVjdCB4PSIwIiBmaWxsPSJub25lIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiLz4NCgk8L2c+DQo8L2c+DQo8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+DQoJPGcgZGlzcGxheT0iaW5saW5lIj4NCgkJPGxpbmUgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDBFNUZGIiBzdHJva2Utd2lkdGg9IjAuMSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiB4MT0iNDIiIHkxPSItMjIzMiIgeDI9IjQyIiB5Mj0iMTMyMCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'); +} + +md-inline-grid-icon[icon=mail] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItMjg3MiIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbHMiPg0KPC9nPg0KPGcgaWQ9Ikljb24iPg0KCTxnPg0KCQk8cGF0aCBmaWxsPSIjN2Q3ZDdkIiBkPSJNNDAsOEg4Yy0yLjIsMC00LDEuOC00LDRsMCwyNGMwLDIuMiwxLjgsNCw0LDRoMzJjMi4yLDAsNC0xLjgsNC00VjEyQzQ0LDkuOCw0Mi4yLDgsNDAsOHogTTQwLDE2TDI0LDI2TDgsMTZ2LTRsMTYsMTANCgkJCWwxNi0xMFYxNnoiLz4NCgkJPHJlY3QgZmlsbD0ibm9uZSIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4Ii8+DQoJPC9nPg0KPC9nPg0KPGcgaWQ9IkdyaWQiIGRpc3BsYXk9Im5vbmUiPg0KCTxnIGRpc3BsYXk9ImlubGluZSI+DQoJCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwRTVGRiIgc3Ryb2tlLXdpZHRoPSIwLjEiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjQyIiB5MT0iLTI4NzIiIHgyPSI0MiIgeTI9IjY4MCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'); +} + +md-inline-grid-icon[icon=message] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItMjc0NCIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbHMiPg0KPC9nPg0KPGcgaWQ9Ikljb24iPg0KCTxnPg0KCQk8cGF0aCBmaWxsPSIjN2Q3ZDdkIiBkPSJNNDAsNEg4QzUuOCw0LDQsNS44LDQsOGwwLDM2bDgtOGgyOGMyLjIsMCw0LTEuOCw0LTRWOEM0NCw1LjgsNDIuMiw0LDQwLDR6IE0zNiwyOEgxMnYtNGgyNFYyOHogTTM2LDIySDEydi00aDI0VjIyeg0KCQkJIE0zNiwxNkgxMnYtNGgyNFYxNnoiLz4NCgkJPHJlY3QgeD0iMCIgZmlsbD0ibm9uZSIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4Ii8+DQoJPC9nPg0KPC9nPg0KPGcgaWQ9IkdyaWQiIGRpc3BsYXk9Im5vbmUiPg0KCTxnIGRpc3BsYXk9ImlubGluZSI+DQoJCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwRTVGRiIgc3Ryb2tlLXdpZHRoPSIwLjEiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjQyIiB5MT0iLTI3NDQiIHgyPSI0MiIgeTI9IjgwOCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'); +} + +md-inline-grid-icon[icon=copy] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItMTcyMCIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbHMiPg0KPC9nPg0KPGcgaWQ9Ikljb24iPg0KCTxnPg0KCQk8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiLz4NCgkJPHBhdGggZmlsbD0iIzdkN2Q3ZCIgZD0iTTMyLDJIOEM1LjgsMiw0LDMuOCw0LDZ2MjhoNFY2aDI0VjJ6IE0zOCwxMEgxNmMtMi4yLDAtNCwxLjgtNCw0djI4YzAsMi4yLDEuOCw0LDQsNGgyMmMyLjIsMCw0LTEuOCw0LTRWMTQNCgkJCUM0MiwxMS44LDQwLjIsMTAsMzgsMTB6IE0zOCw0MkgxNlYxNGgyMlY0MnoiLz4NCgk8L2c+DQo8L2c+DQo8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+DQoJPGcgZGlzcGxheT0iaW5saW5lIj4NCgkJPGxpbmUgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDBFNUZGIiBzdHJva2Utd2lkdGg9IjAuMSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiB4MT0iNDIiIHkxPSItMTcyMCIgeDI9IjQyIiB5Mj0iMTgzMiIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'); +} + +md-inline-grid-icon[icon=facebook] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItMzI1NiIgZmlsbD0ibm9uZSIgd2lkdGg9IjE0MDAiIGhlaWdodD0iMzYwMCIvPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJMYWJlbCI+DQo8L2c+DQo8ZyBpZD0iSWNvbiI+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZmlsbD0iIzdkN2Q3ZCIgZD0iTTQwLDRIOEM1LjgsNCw0LDUuOCw0LDhsMCwzMmMwLDIuMiwxLjgsNCw0LDRoMzJjMi4yLDAsNC0xLjgsNC00VjhDNDQsNS44LDQyLjIsNCw0MCw0eiBNMzgsOHY2aC00Yy0xLjEsMC0yLDAuOS0yLDJ2NA0KCQkJCWg2djZoLTZ2MTRoLTZWMjZoLTR2LTZoNHYtNWMwLTMuOSwzLjEtNyw3LTdIMzh6Ii8+DQoJCTwvZz4NCgkJPGc+DQoJCQk8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnIGlkPSJHcmlkIiBkaXNwbGF5PSJub25lIj4NCgk8ZyBkaXNwbGF5PSJpbmxpbmUiPg0KCQk8bGluZSBmaWxsPSJub25lIiBzdHJva2U9IiMwMEU1RkYiIHN0cm9rZS13aWR0aD0iMC4xIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHgxPSI0MiIgeTE9Ii0zMjU2IiB4Mj0iNDIiIHkyPSIyOTYiLz4NCgk8L2c+DQo8L2c+DQo8L3N2Zz4NCg=='); +} + +md-inline-grid-icon[icon=twitter] { + background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNDhweCINCgkgaGVpZ2h0PSI0OHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQ4IDQ4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJIZWFkZXIiPg0KCTxnPg0KCQk8cmVjdCB4PSItODM4IiB5PSItOTUyIiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+DQoJPC9nPg0KPC9nPg0KPGcgaWQ9IkxhYmVsIj4NCjwvZz4NCjxnIGlkPSJJY29uIj4NCgk8Zz4NCgkJPGc+DQoJCQk8cGF0aCBmaWxsPSIjN2Q3ZDdkIiBkPSJNNDAsNEg4QzUuOCw0LDQsNS44LDQsOGwwLDMyYzAsMi4yLDEuOCw0LDQsNGgzMmMyLjIsMCw0LTEuOCw0LTRWOEM0NCw1LjgsNDIuMiw0LDQwLDR6IE0zNS40LDE4LjcNCgkJCQljLTAuMSw5LjItNiwxNS42LTE0LjgsMTZjLTMuNiwwLjItNi4zLTEtOC42LTIuNWMyLjcsMC40LDYtMC42LDcuOC0yLjJjLTIuNi0wLjMtNC4yLTEuNi00LjktMy44YzAuOCwwLjEsMS42LDAuMSwyLjMtMC4xDQoJCQkJYy0yLjQtMC44LTQuMS0yLjMtNC4yLTUuM2MwLjcsMC4zLDEuNCwwLjYsMi4zLDAuNmMtMS44LTEtMy4xLTQuNy0xLjYtNy4yYzIuNiwyLjksNS44LDUuMywxMSw1LjZjLTEuMy01LjYsNi4xLTguNiw5LjItNC45DQoJCQkJYzEuMy0wLjMsMi40LTAuOCwzLjQtMS4zYy0wLjQsMS4zLTEuMiwyLjItMi4yLDIuOWMxLjEtMC4xLDIuMS0wLjQsMi45LTAuOEMzNy41LDE2LjksMzYuNCwxNy45LDM1LjQsMTguN3oiLz4NCgkJPC9nPg0KCQk8Zz4NCgkJCTxyZWN0IGZpbGw9Im5vbmUiIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIvPg0KCQk8L2c+DQoJPC9nPg0KPC9nPg0KPGcgaWQ9IkdyaWQiIGRpc3BsYXk9Im5vbmUiPg0KCTxnIGRpc3BsYXk9ImlubGluZSI+DQoJCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwRTVGRiIgc3Ryb2tlLXdpZHRoPSIwLjEiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjQyIiB5MT0iLTk1MiIgeDI9IjQyIiB5Mj0iMjYwMCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'); +} + + + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/button-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/button/button-theme.scss new file mode 100644 index 000000000..8ccc9fa9e --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/button-theme.scss @@ -0,0 +1,84 @@ +$button-border-radius: 3px !default; +$button-fab-border-radius: 50% !default; + +.md-button.md-THEME_NAME-theme { + border-radius: $button-border-radius; + + &:not([disabled]) { + &:hover, + &:focus { + background-color: '{{background-500-0.2}}'; + } + } + + &.md-primary { + color: '{{primary-color}}'; + &.md-raised, + &.md-fab { + color: '{{primary-contrast}}'; + background-color: '{{primary-color}}'; + &:not([disabled]) { + &:hover, + &:focus { + background-color: '{{primary-600}}'; + } + } + } + } + + &.md-fab { + border-radius: $button-fab-border-radius; + } + + &.md-raised, + &.md-fab { + color: '{{background-contrast}}'; + background-color: '{{background-500-0.185}}'; + &:not([disabled]) { + &:hover, + &:focus { + background-color: '{{background-500-0.3}}'; + } + } + } + + &.md-warn { + color: '{{warn-color}}'; + + &.md-raised, + &.md-fab { + color: '{{warn-contrast}}'; + background-color: '{{warn-color}}'; + &:not([disabled]) { + &:hover, + &:focus { + background-color: '{{warn-700}}'; + } + } + } + } + + &.md-accent { + color: '{{accent-color}}'; + + &.md-raised, + &.md-fab { + color: '{{accent-contrast}}'; + background-color: '{{accent-color}}'; + &:not([disabled]) { + &:hover, + &:focus { + background-color: '{{accent-700}}'; + } + } + } + } + + &[disabled], + &.md-raised[disabled], + &.md-fab[disabled] { + color: '{{foreground-3}}'; + background-color: transparent; + cursor: not-allowed; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/button.js b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.js new file mode 100644 index 000000000..9211d8574 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.js @@ -0,0 +1,87 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.button + * @description + * + * Button + */ +angular.module('material.components.button', [ + 'material.core' +]) + .directive('mdButton', MdButtonDirective); + +/** + * @ngdoc directive + * @name mdButton + * @module material.components.button + * + * @restrict E + * + * @description + * `` is a button directive with optional ink ripples (default enabled). + * + * If you supply a `href` or `ng-href` attribute, it will become an `` element. Otherwise, it will + * become a `'; + } + + function postLink(scope, element, attr) { + var node = element[0]; + $mdTheming(element); + $mdInkRipple.attachButtonBehavior(scope, element); + + var elementHasText = node.textContent.trim(); + if (!elementHasText) { + $mdAria.expect(element, 'aria-label'); + } + + // For anchor elements, we have to set tabindex manually when the + // element is disabled + if (isAnchor(attr) && angular.isDefined(attr.ngDisabled) ) { + scope.$watch(attr.ngDisabled, function(isDisabled) { + element.attr('tabindex', isDisabled ? -1 : 0); + }); + } + } + +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/button.scss b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.scss new file mode 100644 index 000000000..64a70b2ff --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.scss @@ -0,0 +1,173 @@ +$button-line-height: 25px !default; +$button-padding: 2px 6px 3px !default; + +// Fab buttons +$button-fab-width: 56px !default; +$button-fab-height: 56px !default; +$button-fab-padding: 16px !default; + +$button-fab-toast-offset: $button-fab-height * 0.75; + +/** + * Position a FAB button. + */ +@mixin fab-position($spot, $top: auto, $right: auto, $bottom: auto, $left: auto) { + &.md-fab-#{$spot} { + top: $top; + right: $right; + bottom: $bottom; + left: $left; + position: absolute; + } +} + +.md-button { + + user-select: none; + position: relative; //for child absolute-positioned + + outline: none; + border: 0; + padding: 6px; + margin: 0; + background: transparent; + white-space: nowrap; + + text-align: center; + + // Always uppercase buttons + text-transform: uppercase; + font-weight: 500; + font-style: inherit; + font-variant: inherit; + font-size: inherit; + font-family: inherit; + line-height: inherit; + text-decoration: none; + + cursor: pointer; + overflow: hidden; // for ink containment + + transition: box-shadow $swift-ease-out-duration $swift-ease-out-timing-function, + background-color $swift-ease-out-duration $swift-ease-out-timing-function, + transform $swift-ease-out-duration $swift-ease-out-timing-function; + + &.ng-hide { + transition: none; + } +; + + &.md-cornered { + border-radius: 0; + } + + &.md-icon { + padding: 0; + background: none; + } + + &.md-raised { + transform: translate3d(0, 0, 0); + + &:not([disabled]) { + @extend .md-shadow-bottom-z-1; + } + } + + &.md-fab { + + @include fab-position(bottom-right, auto, ($button-fab-width - $button-fab-padding)/2, ($button-fab-height - $button-fab-padding)/2, auto); + @include fab-position(bottom-left, auto, auto, ($button-fab-height - $button-fab-padding)/2, ($button-fab-width - $button-fab-padding)/2); + @include fab-position(top-right, ($button-fab-height - $button-fab-padding)/2, ($button-fab-width - $button-fab-padding)/2, auto, auto); + @include fab-position(top-left, ($button-fab-height - $button-fab-padding)/2, auto, auto, ($button-fab-width - $button-fab-padding)/2); + + z-index: $z-index-fab; + + width: $button-fab-width; + height: $button-fab-height; + + border-radius: 50%; + + @extend .md-shadow-bottom-z-1; + border-radius: 50%; + overflow: hidden; + + transform: translate3d(0,0,0); + + transition: 0.2s linear; + transition-property: transform, box-shadow; + + md-icon { + line-height: $button-fab-height; + margin-top: 0; + } + + } + + &:not([disabled]) { + &.md-raised, + &.md-fab { + &:focus, + &:hover { + transform: translate3d(0, -1px, 0); + @extend .md-shadow-bottom-z-2; + } + } + } +} + +.md-toast-open-top { + .md-button.md-fab-top-left, + .md-button.md-fab-top-right { + transform: translate3d(0, $button-fab-toast-offset, 0); + &:not([disabled]) { + &:focus, + &:hover { + transform: translate3d(0, $button-fab-toast-offset - 1, 0); + } + } + } +} +.md-toast-open-bottom { + .md-button.md-fab-bottom-left, + .md-button.md-fab-bottom-right { + transform: translate3d(0, -$button-fab-toast-offset, 0); + &:not([disabled]) { + &:focus, + &:hover { + transform: translate3d(0, -$button-fab-toast-offset - 1, 0); + } + } + } +} + + +.md-button-group { + display: flex; + flex: 1; + width: 100%; +} +.md-button-group > .md-button { + flex: 1; + + display: block; + + overflow: hidden; + + width: 0; + + border-width: 1px 0px 1px 1px; + border-radius: 0; + + text-align: center; + text-overflow: ellipsis; + white-space: nowrap; + + &:first-child { + border-radius: 2px 0px 0px 2px; + } + &:last-child { + border-right-width: 1px; + border-radius: 0px 2px 2px 0px; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/button.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.spec.js new file mode 100644 index 000000000..614504d01 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/button.spec.js @@ -0,0 +1,91 @@ +describe('md-button', function() { + + beforeEach(TestUtil.mockRaf); + beforeEach(module('material.components.button')); + + it('should convert attributes on an md-button to attributes on the generated button', inject(function($compile, $rootScope) { + var button = $compile('')($rootScope); + $rootScope.$apply(); + expect(button[0].hasAttribute('hide')).toBe(true); + expect(button[0].hasAttribute('hide-sm')).toBe(true); + })); + + it('should only have one ripple container when a custom ripple color is set', inject(function ($compile, $rootScope, $timeout) { + var button = $compile('button')($rootScope); + var scope = button.eq(0).scope(); + scope._onInput({ isFirst: true, eventType: Hammer.INPUT_START, center: { x: 0, y: 0 } }); + expect(button[0].getElementsByClassName('md-ripple-container').length).toBe(1); + })); + + + it('should expect an aria-label if element has no text', inject(function($compile, $rootScope, $log) { + spyOn($log, 'warn'); + var button = $compile('')($rootScope); + $rootScope.$apply(); + expect($log.warn).toHaveBeenCalled(); + + $log.warn.reset(); + button = $compile('')($rootScope); + $rootScope.$apply(); + expect($log.warn).not.toHaveBeenCalled(); + })); + + + describe('with href or ng-href', function() { + + it('should be anchor if href attr', inject(function($compile, $rootScope) { + var button = $compile('')($rootScope.$new()); + $rootScope.$apply(); + expect(button[0].tagName.toLowerCase()).toEqual('a'); + })); + + it('should be anchor if ng-href attr', inject(function($compile, $rootScope) { + var button = $compile('')($rootScope.$new()); + $rootScope.$apply(); + expect(button[0].tagName.toLowerCase()).toEqual('a'); + })); + + it('should be button otherwise', inject(function($compile, $rootScope) { + var button = $compile('')($rootScope.$new()); + $rootScope.$apply(); + expect(button[0].tagName.toLowerCase()).toEqual('button'); + })); + + }); + + + describe('with ng-disabled', function() { + + it('should not set `tabindex` when used without anchor attributes', inject(function ($compile, $rootScope, $timeout) { + var scope = angular.extend( $rootScope.$new(), { isDisabled : true } ); + var button = $compile('button')(scope); + $rootScope.$apply(); + + expect(button[0].hasAttribute('tabindex')).toBe(false); + })); + + it('should set `tabindex == -1` when used with href', inject(function ($compile, $rootScope, $timeout) { + var scope = angular.extend( $rootScope.$new(), { isDisabled : true } ); + var button = $compile('button')(scope); + + $rootScope.$apply(); + expect(button.attr('tabindex')).toBe("-1"); + + $rootScope.$apply(function(){ + scope.isDisabled = false; + }); + expect(button.attr('tabindex')).toBe("0"); + + })); + + it('should set `tabindex == -1` when used with ng-href', inject(function ($compile, $rootScope, $timeout) { + var scope = angular.extend( $rootScope.$new(), { isDisabled : true, url : "http://material.angularjs.org" }); + var button = $compile('button')(scope); + $rootScope.$apply(); + + expect(button.attr('tabindex')).toBe("-1"); + })); + + }) + +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/index.html new file mode 100644 index 000000000..980521a91 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/index.html @@ -0,0 +1,53 @@ + +
    + + +
    + {{title1}} + Primary (md-noink) + Disabled + {{title4}} +
    + +
    + Button + Primary + Disabled + Warn +
    raised
    +
    + +
    + + + + + + + + + + + + + + + +
    FAB
    +
    + +
    + Go to Google + RSVP +
    + +
    + Primary Hue 1 + Warn Hue 2 + Accent + Accent Hue 3 +
    Themed
    +
    + +
    +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/script.js new file mode 100644 index 000000000..a38166e95 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/script.js @@ -0,0 +1,11 @@ + +angular.module('buttonsDemo1', ['ngMaterial']) + +.controller('AppCtrl', function($scope) { + $scope.title1 = 'Button'; + $scope.title4 = 'Warn'; + $scope.isDisabled = true; + + $scope.googleUrl = 'http://google.com'; + +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/style.css new file mode 100644 index 000000000..da3de8341 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/button/demoBasicUsage/style.css @@ -0,0 +1,30 @@ + +/** From vulcanized demo **/ + +section { + background: #f7f7f7; + border-radius: 3px; + text-align: center; + margin: 1em; + position: relative !important; + padding-bottom: 10px; +} +md-content { + margin-right: 7px; +} +section .md-button:not(.md-fab) { + min-width: 10em; +} +section .md-button { + display: block; + margin: 1em; + line-height: 25px; +} +.label { + position: absolute; + bottom: 5px; + left: 7px; + color: #ccc; + font-size: 14px; +} + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/card-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/card/card-theme.scss new file mode 100644 index 000000000..ab135e201 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/card-theme.scss @@ -0,0 +1,9 @@ +$card-border-radius: 2px !default; + +md-card.md-THEME_NAME-theme { + border-radius: $card-border-radius; + + .md-card-image { + border-radius: $card-border-radius $card-border-radius 0 0; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/card.js b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.js new file mode 100644 index 000000000..56e6b5eea --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.js @@ -0,0 +1,51 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.card + * + * @description + * Card components. + */ +angular.module('material.components.card', [ + 'material.core' +]) + .directive('mdCard', mdCardDirective); + + + +/** + * @ngdoc directive + * @name mdCard + * @module material.components.card + * + * @restrict E + * + * @description + * The `` directive is a container element used within `` containers. + * + * Cards have constant width and variable heights; where the maximum height is limited to what can + * fit within a single view on a platform, but it can temporarily expand as needed + * + * @usage + * + * + * + *

    Paracosm

    + *

    + * The titles of Washed Out's breakthrough song and the first single from Paracosm share the * two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... + *

    + *
    + *
    + * + */ +function mdCardDirective($mdTheming) { + return { + restrict: 'E', + link: function($scope, $element, $attr) { + $mdTheming($element); + } + }; +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/card.scss b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.scss new file mode 100644 index 000000000..044746f6c --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.scss @@ -0,0 +1,20 @@ +$card-margin: 8px !default; +$card-box-shadow: $whiteframe-shadow-z1 !default; + +md-card { + box-sizing: border-box; + display: flex; + flex-direction: column; + + box-shadow: $card-box-shadow; + + > img { + order: 0; + width: 100%; + } + + md-card-content { + order: 1; + margin: $card-margin; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/card.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.spec.js new file mode 100644 index 000000000..a76fd3a0b --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/card.spec.js @@ -0,0 +1,16 @@ +describe('mdCard directive', function() { + + beforeEach(module('material.components.card')); + + it('should have the default theme class when the md-theme attribute is not defined', inject(function($compile, $rootScope) { + var card = $compile('')($rootScope.$new()); + $rootScope.$apply(); + expect(card.hasClass('md-default-theme')).toBe(true); + })); + + it('should have the correct theme class when the md-theme attribute is defined', inject(function($compile, $rootScope) { + var card = $compile('')($rootScope.$new()); + $rootScope.$apply(); + expect(card.hasClass('md-green-theme')).toBe(true); + })); +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/index.html new file mode 100644 index 000000000..39af425ad --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/index.html @@ -0,0 +1,41 @@ + +
    + + + + + Washed Out + +

    Paracosm

    +

    + The titles of Washed Out's breakthrough song and the first single from Paracosm share the + two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... +

    +
    +
    + + + Washed Out + +

    Paracosm

    +

    + The titles of Washed Out's breakthrough song and the first single from Paracosm share the + two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... +

    +
    +
    + + + Washed Out + +

    Paracosm

    +

    + The titles of Washed Out's breakthrough song and the first single from Paracosm share the + two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... +

    +
    +
    + + +
    +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/script.js new file mode 100644 index 000000000..cf0707b29 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/script.js @@ -0,0 +1,6 @@ + +angular.module('cardDemo1', ['ngMaterial']) + +.controller('AppCtrl', function($scope) { + +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/style.css new file mode 100644 index 000000000..dec8b72f6 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/card/demoBasicUsage/style.css @@ -0,0 +1,4 @@ + +md-card { + min-height: 150px; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox-theme.scss new file mode 100644 index 000000000..29da4f543 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox-theme.scss @@ -0,0 +1,73 @@ +md-checkbox.md-THEME_NAME-theme { + + .md-ripple { + color: '{{accent-600}}'; + } + &.md-checked .md-ripple { + color: '{{background-600}}'; + } + + .md-icon { + border-color: '{{foreground-2}}'; + } + &.md-checked .md-icon { + background-color: '{{accent-color-0.87}}'; + } + + &.md-checked .md-icon:after { + border-color: '{{background-200}}'; + } + + &:not([disabled]) { + &.md-primary { + .md-ripple { + color: '{{primary-600}}'; + } + &.md-checked .md-ripple { + color: '{{background-600}}'; + } + + .md-icon { + border-color: '{{foreground-2}}'; + } + &.md-checked .md-icon { + background-color: '{{primary-color-0.87}}'; + } + + &.md-checked .md-icon:after { + border-color: '{{background-200}}'; + } + } + + &.md-warn { + .md-ripple { + color: '{{warn-600}}'; + } + &.md-checked .md-ripple { + color: '{{background-600}}'; + } + + .md-icon { + border-color: '{{foreground-2}}'; + } + &.md-checked .md-icon { + background-color: '{{warn-color-0.87}}'; + } + + &.md-checked .md-icon:after { + border-color: '{{background-200}}'; + } + } + } + + &[disabled] { + .md-icon { + border-color: '{{foreground-3}}'; + } + + &.md-checked .md-icon { + background-color: '{{foreground-3}}'; + } + } + +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.js b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.js new file mode 100644 index 000000000..ea5d3bc7d --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.js @@ -0,0 +1,126 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.checkbox + * @description Checkbox module! + */ +angular.module('material.components.checkbox', [ + 'material.core' +]) + .directive('mdCheckbox', MdCheckboxDirective); + +/** + * @ngdoc directive + * @name mdCheckbox + * @module material.components.checkbox + * @restrict E + * + * @description + * The checkbox directive is used like the normal [angular checkbox](https://docs.angularjs.org/api/ng/input/input%5Bcheckbox%5D). + * + * @param {string} ng-model Assignable angular expression to data-bind to. + * @param {string=} name Property name of the form under which the control is published. + * @param {expression=} ng-true-value The value to which the expression should be set when selected. + * @param {expression=} ng-false-value The value to which the expression should be set when not selected. + * @param {string=} ng-change Angular expression to be executed when input changes due to user interaction with the input element. + * @param {boolean=} md-no-ink Use of attribute indicates use of ripple ink effects + * @param {string=} aria-label Adds label to checkbox for accessibility. + * Defaults to checkbox's text. If no default text is found, a warning will be logged. + * + * @usage + * + * + * Finished ? + * + * + * + * No Ink Effects + * + * + * + * Disabled + * + * + * + * + */ +function MdCheckboxDirective(inputDirective, $mdInkRipple, $mdAria, $mdConstant, $mdTheming, $mdUtil) { + inputDirective = inputDirective[0]; + var CHECKED_CSS = 'md-checked'; + + return { + restrict: 'E', + transclude: true, + require: '?ngModel', + template: + '
    ' + + '
    ' + + '
    ' + + '
    ', + compile: compile + }; + + // ********************************************************** + // Private Methods + // ********************************************************** + + function compile (tElement, tAttrs) { + + tAttrs.type = 'checkbox'; + tAttrs.tabIndex = 0; + tElement.attr('role', tAttrs.type); + + return function postLink(scope, element, attr, ngModelCtrl) { + ngModelCtrl = ngModelCtrl || $mdUtil.fakeNgModel(); + var checked = false; + $mdTheming(element); + + $mdAria.expectWithText(tElement, 'aria-label'); + + // Reuse the original input[type=checkbox] directive from Angular core. + // This is a bit hacky as we need our own event listener and own render + // function. + inputDirective.link.pre(scope, { + on: angular.noop, + 0: {} + }, attr, [ngModelCtrl]); + + // Used by switch. in Switch, we don't want click listeners; we have more granular + // touchup/touchdown listening. + if (!attr.mdNoClick) { + element.on('click', listener); + } + element.on('keypress', keypressHandler); + ngModelCtrl.$render = render; + + function keypressHandler(ev) { + if(ev.which === $mdConstant.KEY_CODE.SPACE) { + ev.preventDefault(); + listener(ev); + } + } + function listener(ev) { + if (element[0].hasAttribute('disabled')) return; + + scope.$apply(function() { + checked = !checked; + ngModelCtrl.$setViewValue(checked, ev && ev.type); + ngModelCtrl.$render(); + }); + } + + function render() { + checked = ngModelCtrl.$viewValue; + if(checked) { + element.addClass(CHECKED_CSS); + } else { + element.removeClass(CHECKED_CSS); + } + } + }; + } +} + +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.scss b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.scss new file mode 100644 index 000000000..f98b6df3b --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.scss @@ -0,0 +1,91 @@ +$checkbox-width: 18px !default; +$checkbox-height: $checkbox-width !default; + +md-checkbox { + display: block; + margin: 15px; + white-space: nowrap; + cursor: pointer; + outline: none; + user-select: none; + + .md-container { + position: relative; + top: 4px; + display: inline-block; + width: $checkbox-width; + height: $checkbox-height; + + &:after { + content: ''; + position: absolute; + top: -10px; + right: -10px; + bottom: -10px; + left: -10px; + } + + .md-ripple-container { + position: absolute; + display: block; + width: auto; + height: auto; + left: -15px; + top: -15px; + right: -15px; + bottom: -15px; + } + } + + // unchecked + .md-icon { + transition: 240ms; + position: absolute; + top: 0; + left: 0; + width: $checkbox-width; + height: $checkbox-height; + border: 2px solid; + border-radius: 2px; + } + + &.md-checked .md-icon { + border: none; + } + + // disabled + &[disabled] { + cursor: no-drop; + } + + // focus + &:focus .md-label:not(:empty) { + border-color: black; + } + + + &.md-checked .md-icon:after { + transform: rotate(45deg); + position: absolute; + left: 6px; + top: 2px; + display: table; + width: 6px; + height: 12px; + border: 2px solid; + border-top: 0; + border-left: 0; + content: ' '; + } + + .md-label { + border: 1px dotted transparent; + position: relative; + display: inline-block; + margin-left: 10px; + vertical-align: middle; + white-space: normal; + pointer-events: none; + user-select: text; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.spec.js new file mode 100644 index 000000000..bb1947ec6 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/checkbox.spec.js @@ -0,0 +1,172 @@ + +describe('mdCheckbox', function() { + var CHECKED_CSS = 'md-checked'; + + beforeEach(module('material.components.checkbox')); + beforeEach(module('ngAria')); + beforeEach(TestUtil.mockRaf); + + it('should warn developers they need a label', inject(function($compile, $rootScope, $log){ + spyOn($log, "warn"); + + var element = $compile('
    ' + + '' + + '' + + '
    ')($rootScope); + + expect($log.warn).toHaveBeenCalled(); + })); + + it('should copy text content to aria-label', inject(function($compile, $rootScope){ + var element = $compile('
    ' + + '' + + 'Some text' + + '' + + '
    ')($rootScope); + + var cbElements = element.find('md-checkbox'); + expect(cbElements.eq(0).attr('aria-label')).toBe('Some text'); + })); + + it('should set checked css class and aria-checked attributes', inject(function($compile, $rootScope) { + var element = $compile('
    ' + + '' + + '' + + '' + + '' + + '
    ')($rootScope); + + $rootScope.$apply(function(){ + $rootScope.blue = false; + $rootScope.green = true; + }); + + var cbElements = element.find('md-checkbox'); + + expect(cbElements.eq(0).hasClass(CHECKED_CSS)).toEqual(false); + expect(cbElements.eq(1).hasClass(CHECKED_CSS)).toEqual(true); + expect(cbElements.eq(0).attr('aria-checked')).toEqual('false'); + expect(cbElements.eq(1).attr('aria-checked')).toEqual('true'); + expect(cbElements.eq(0).attr('role')).toEqual('checkbox'); + })); + + it('should be disabled with disabled attr', inject(function($compile, $rootScope) { + var element = $compile('
    ' + + '' + + '' + + '
    ')($rootScope); + + var checkbox = element.find('md-checkbox'); + $rootScope.$apply('isDisabled = true'); + + $rootScope.$apply('blue = false'); + + checkbox.triggerHandler('click'); + expect($rootScope.blue).toBe(false); + + $rootScope.$apply('isDisabled = false'); + + checkbox.triggerHandler('click'); + expect($rootScope.blue).toBe(true); + + + })); + + describe('ng core checkbox tests', function() { + + var inputElm; + var scope; + var $compile; + + beforeEach(inject(function(_$compile_, _$rootScope_) { + scope = _$rootScope_; + $compile = _$compile_; + })); + + function compileInput(html) { + inputElm = $compile(html)(scope); + } + + function isChecked(cbEl) { + return cbEl.hasClass(CHECKED_CSS); + } + + it('should format booleans', function() { + compileInput(''); + + scope.$apply("name = false"); + expect(isChecked(inputElm)).toBe(false); + + scope.$apply("name = true"); + expect(isChecked(inputElm)).toBe(true); + }); + + + it('should support type="checkbox" with non-standard capitalization', function() { + compileInput(''); + + inputElm.triggerHandler('click'); + expect(scope.checkbox).toBe(true); + + inputElm.triggerHandler('click'); + expect(scope.checkbox).toBe(false); + }); + + + it('should allow custom enumeration', function() { + compileInput(''); + + scope.$apply("name = 'y'"); + expect(isChecked(inputElm)).toBe(true); + + scope.$apply("name = 'n'"); + expect(isChecked(inputElm)).toBe(false); + + scope.$apply("name = 'something else'"); + expect(isChecked(inputElm)).toBe(false); + + inputElm.triggerHandler('click'); + expect(scope.name).toEqual('y'); + + inputElm.triggerHandler('click'); + expect(scope.name).toEqual('n'); + }); + + + it('should throw if ngTrueValue is present and not a constant expression', function() { + expect(function() { + compileInput(''); + }).toThrow(); + }); + + + it('should throw if ngFalseValue is present and not a constant expression', function() { + expect(function() { + compileInput(''); + }).toThrow(); + }); + + + it('should not throw if ngTrueValue or ngFalseValue are not present', function() { + expect(function() { + compileInput(''); + }).not.toThrow(); + }); + + + it('should be required if false', function() { + compileInput(''); + + inputElm.triggerHandler('click'); + expect(isChecked(inputElm)).toBe(true); + expect(inputElm.hasClass('ng-valid')).toBe(true); + + inputElm.triggerHandler('click'); + expect(isChecked(inputElm)).toBe(false); + expect(inputElm.hasClass('ng-invalid')).toBe(true); + }); + + }); + +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/index.html new file mode 100644 index 000000000..24e006a62 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/index.html @@ -0,0 +1,23 @@ + +
    + + + Checkbox 1: {{ data.cb1 }} + + + + Checkbox 2 (md-warn): {{ data.cb2 }} + + + + Checkbox: Disabled + + + + Checkbox: Disabled, Checked + + + + Checkbox (md-primary): No Ink + +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/script.js new file mode 100644 index 000000000..d113d32bb --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/script.js @@ -0,0 +1,13 @@ + +angular.module('checkboxDemo1', ['ngMaterial']) + +.controller('AppCtrl', function($scope) { + + $scope.data = {}; + $scope.data.cb1 = true; + $scope.data.cb2 = false; + $scope.data.cb3 = false; + $scope.data.cb4 = false; + $scope.data.cb5 = false; + +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/style.css new file mode 100644 index 000000000..5e315af58 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/checkbox/demoBasicUsage/style.css @@ -0,0 +1,4 @@ + +body { + padding: 20px; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/content-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/content/content-theme.scss new file mode 100644 index 000000000..cb8823d08 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/content/content-theme.scss @@ -0,0 +1,5 @@ +$content-background-color: $background-color-base !default; + +md-content.md-THEME_NAME-theme { + background-color: '{{background-hue-3}}'; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/content.js b/UI/WebServerResources/scss/vendors/angular-material/components/content/content.js new file mode 100644 index 000000000..d1d2b02b5 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/content/content.js @@ -0,0 +1,53 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.content + * + * @description + * Scrollable content + */ +angular.module('material.components.content', [ + 'material.core' +]) + .directive('mdContent', mdContentDirective); + +/** + * @ngdoc directive + * @name mdContent + * @module material.components.content + * + * @restrict E + * + * @description + * The `` directive is a container element useful for scrollable content + * + * ### Restrictions + * + * - Add the `md-padding` class to make the content padded. + * + * @usage + * + * + * Lorem ipsum dolor sit amet, ne quod novum mei. + * + * + * + */ +function mdContentDirective($mdTheming) { + return { + restrict: 'E', + controller: ['$scope', '$element', ContentController], + link: function($scope, $element, $attr) { + $mdTheming($element); + $scope.$broadcast('$mdContentLoaded', $element); + } + }; + + function ContentController($scope, $element) { + this.$scope = $scope; + this.$element = $element; + } +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/content.scss b/UI/WebServerResources/scss/vendors/angular-material/components/content/content.scss new file mode 100644 index 000000000..621feb4b5 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/content/content.scss @@ -0,0 +1,28 @@ +md-content { + + display: block; + position: relative; + overflow: auto; + -webkit-overflow-scrolling: touch; + + &[md-scroll-y] { + overflow-y: auto; + overflow-x: hidden; + } + &[md-scroll-x] { + overflow-x: auto; + overflow-y: hidden; + } + &[md-scroll-xy] { + } + + &.md-padding { + padding: 8px; + } +} + +@media (min-width: $layout-breakpoint-sm) { + md-content.md-padding { + padding: 16px; + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/content.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/content/content.spec.js new file mode 100644 index 000000000..e69de29bb diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/index.html new file mode 100644 index 000000000..04268071c --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/index.html @@ -0,0 +1,54 @@ + +
    + +
    + Toolbar: md-accent +
    +
    + + + Lorem ipsum dolor sit amet, ne quod novum mei. Sea omnium invenire mediocrem at, in lobortis conclusionemque nam. Ne deleniti appetere reprimique pro, inani labitur disputationi te sed. At vix sale omnesque, id pro labitur reformidans accommodare, cum labores honestatis eu. Nec quem lucilius in, eam praesent reformidans no. Sed laudem aliquam ne. + +

    +Facete delenit argumentum cum at. Pro rebum nostrum contentiones ad. Mel exerci tritani maiorum at, mea te audire phaedrum, mel et nibh aliquam. Malis causae equidem vel eu. Noster melius vis ea, duis alterum oporteat ea sea. Per cu vide munere fierent. +

    + +

    +Ad sea dolor accusata consequuntur. Sit facete convenire reprehendunt et. Usu cu nonumy dissentiet, mei choro omnes fuisset ad. Te qui docendi accusam efficiantur, doming noster prodesset eam ei. In vel posse movet, ut convenire referrentur eum, ceteros singulis intellegam eu sit. +

    + +

    +Sit saepe quaestio reprimique id, duo no congue nominati, cum id nobis facilisi. No est laoreet dissentias, idque consectetuer eam id. Clita possim assueverit cu his, solum virtute recteque et cum. Vel cu luptatum signiferumque, mel eu brute nostro senserit. Blandit euripidis consequat ex mei, atqui torquatos id cum, meliore luptatum ut usu. Cu zril perpetua gubergren pri. Accusamus rationibus instructior ei pro, eu nullam principes qui, reque justo omnes et quo. +

    + +

    +Sint unum eam id. At sit fastidii theophrastus, mutat senserit repudiare et has. Atqui appareat repudiare ad nam, et ius alii incorrupte. Alii nullam libris his ei, meis aeterno at eum. Ne aeque tincidunt duo. In audire malorum mel, tamquam efficiantur has te. +

    + +

    +Qui utamur tacimates quaestio ad, quod graece omnium ius ut. Pri ut vero debitis interpretaris, qui cu mentitum adipiscing disputationi. Voluptatum mediocritatem quo ut. Fabulas dolorem ei has, quem molestie persequeris et sit. +

    + +

    +Est in vivendum comprehensam conclusionemque, alia cetero iriure no usu, te cibo deterruisset pro. Ludus epicurei quo id, ex cum iudicabit intellegebat. Ex modo deseruisse quo, mel noster menandri sententiae ea, duo et tritani malorum recteque. Nullam suscipit partiendo nec id, indoctum vulputate per ex. Et has enim habemus tibique. Cu latine electram cum, ridens propriae intellegat eu mea. +

    + +

    +Duo at aliquid mnesarchum, nec ne impetus hendrerit. Ius id aeterno debitis atomorum, et sed feugait voluptua, brute tibique no vix. Eos modo esse ex, ei omittam imperdiet pro. Vel assum albucius incorrupte no. Vim viris prompta repudiare ne, vel ut viderer scripserit, dicant appetere argumentum mel ea. Eripuit feugait tincidunt pri ne, cu facilisi molestiae usu. +

    + +

    +Qui utamur tacimates quaestio ad, quod graece omnium ius ut. Pri ut vero debitis interpretaris, qui cu mentitum adipiscing disputationi. Voluptatum mediocritatem quo ut. Fabulas dolorem ei has, quem molestie persequeris et sit. +

    + +

    +Est in vivendum comprehensam conclusionemque, alia cetero iriure no usu, te cibo deterruisset pro. Ludus epicurei quo id, ex cum iudicabit intellegebat. Ex modo deseruisse quo, mel noster menandri sententiae ea, duo et tritani malorum recteque. Nullam suscipit partiendo nec id, indoctum vulputate per ex. Et has enim habemus tibique. Cu latine electram cum, ridens propriae intellegat eu mea. +

    + +

    +Duo at aliquid mnesarchum, nec ne impetus hendrerit. Ius id aeterno debitis atomorum, et sed feugait voluptua, brute tibique no vix. Eos modo esse ex, ei omittam imperdiet pro. Vel assum albucius incorrupte no. Vim viris prompta repudiare ne, vel ut viderer scripserit, dicant appetere argumentum mel ea. Eripuit feugait tincidunt pri ne, cu facilisi molestiae usu. +

    + +
    + +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/script.js new file mode 100644 index 000000000..5069400ce --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/content/demoBasicUsage/script.js @@ -0,0 +1,6 @@ + +angular.module('contentDemo1', ['ngMaterial']) + +.controller('AppCtrl', function($scope) { + +}) diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/dialog1.tmpl.html b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/dialog1.tmpl.html new file mode 100644 index 000000000..1199f1d60 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/dialog1.tmpl.html @@ -0,0 +1,32 @@ + + + + Mango (Fruit) +

    + The mango is a juicy stone fruit belonging to the genus Mangifera, consisting of numerous tropical fruiting trees, cultivated mostly for edible fruit. The majority of these species are found in nature as wild mangoes. They all belong to the flowering plant family Anacardiaceae. The mango is native to South and Southeast Asia, from where it has been distributed worldwide to become one of the most cultivated fruits in the tropics. +

    + + + +

    + The highest concentration of Mangifera genus is in the western part of Malesia (Sumatra, Java and Borneo) and in Burma and India. While other Mangifera species (e.g. horse mango, M. foetida) are also grown on a more localized basis, Mangifera indica—the "common mango" or "Indian mango"—is the only mango tree commonly cultivated in many tropical and subtropical regions. +

    +

    + It originated in Indian subcontinent (present day India and Pakistan) and Burma. It is the national fruit of India, Pakistan, and the Philippines, and the national tree of Bangladesh. In several cultures, its fruit and leaves are ritually used as floral decorations at weddings, public celebrations, and religious ceremonies. +

    +
    + +
    + + More on Wikipedia + + + + Not Useful + + + Useful + +
    + +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/index.html new file mode 100644 index 000000000..9f632e564 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/index.html @@ -0,0 +1,24 @@ +
    +

    + Open a dialog over the app's content. Press escape or click outside to close the dialog. +

    + +
    + + Alert Dialog + +
    + + Confirm Dialog + +
    + + Custom Dialog + +
    + +
    + + {{alert}} + +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/script.js new file mode 100644 index 000000000..a54168c07 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/script.js @@ -0,0 +1,59 @@ +angular.module('dialogDemo1', ['ngMaterial']) + +.controller('AppCtrl', function($scope, $mdDialog) { + $scope.alert = ''; + + $scope.showAlert = function(ev) { + $mdDialog.show( + $mdDialog.alert() + .title('This is an alert title') + .content('You can specify some description text in here.') + .ariaLabel('Password notification') + .ok('Got it!') + .targetEvent(ev) + ); + }; + + $scope.showConfirm = function(ev) { + var confirm = $mdDialog.confirm() + .title('Would you like to delete your debt?') + .content('All of the banks have agreed to forgive you your debts.') + .ariaLabel('Lucky day') + .ok('Please do it!') + .cancel('Sounds like a scam') + .targetEvent(ev); + + $mdDialog.show(confirm).then(function() { + $scope.alert = 'You decided to get rid of your debt.'; + }, function() { + $scope.alert = 'You decided to keep your debt.'; + }); + }; + + $scope.showAdvanced = function(ev) { + $mdDialog.show({ + controller: DialogController, + templateUrl: 'dialog1.tmpl.html', + targetEvent: ev, + }) + .then(function(answer) { + $scope.alert = 'You said the information was "' + answer + '".'; + }, function() { + $scope.alert = 'You cancelled the dialog.'; + }); + }; +}); + +function DialogController($scope, $mdDialog) { + $scope.hide = function() { + $mdDialog.hide(); + }; + + $scope.cancel = function() { + $mdDialog.cancel(); + }; + + $scope.answer = function(answer) { + $mdDialog.hide(answer); + }; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/style.css new file mode 100644 index 000000000..db6321a7c --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/demoBasicUsage/style.css @@ -0,0 +1,34 @@ +.full { + width: 100%; + height: 100%; +} + +.gap { + width:50px; +} + + +.md-subheader { + background-color: #dcedc8; + margin: 0px; +} + +h2.md-subheader { + margin: 0px; + margin-left: -24px; + margin-right: -24px; + margin-top: -24px; +} + +h2.md-subheader.md-sticky-clone { + margin-right:0px; + margin-top:0px; + + box-shadow: 0px 2px 4px 0 rgba(0,0,0,0.16); +} + +h2 .md-subheader-content { + padding-left: 10px; +} + + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog-theme.scss new file mode 100644 index 000000000..01c367d94 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog-theme.scss @@ -0,0 +1,11 @@ +$dialog-border-radius: 4px !default; + +md-dialog.md-THEME_NAME-theme { + border-radius: $dialog-border-radius; + background-color: '{{background-hue-3}}'; + + &.md-content-overflow .md-actions { + border-top-color: '{{foreground-4}}'; + } +} + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.js b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.js new file mode 100644 index 000000000..078d3a109 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.js @@ -0,0 +1,485 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.dialog + */ +angular.module('material.components.dialog', [ + 'material.core', + 'material.components.backdrop' +]) + .directive('mdDialog', MdDialogDirective) + .provider('$mdDialog', MdDialogProvider); + +function MdDialogDirective($$rAF, $mdTheming) { + return { + restrict: 'E', + link: function(scope, element, attr) { + $mdTheming(element); + $$rAF(function() { + var content = element[0].querySelector('md-content'); + if (content && content.scrollHeight > content.clientHeight) { + element.addClass('md-content-overflow'); + } + }); + } + }; +} + +/** + * @ngdoc service + * @name $mdDialog + * @module material.components.dialog + * + * @description + * `$mdDialog` opens a dialog over the app and provides a simple promise API. + * + * ### Restrictions + * + * - The dialog is always given an isolate scope. + * - The dialog's template must have an outer `` element. + * Inside, use an `` element for the dialog's content, and use + * an element with class `md-actions` for the dialog's actions. + * + * @usage + * ##### HTML + * + * + *
    + * + * Employee Alert! + * + * + * Close Alert + * + * + * Greet Employee + * + *
    + *
    + * + * ##### JavaScript + * + * + * (function(angular, undefined){ + * "use strict"; + * + * angular + * .module('demoApp', ['ngMaterial']) + * .controller('EmployeeController', EmployeeEditor) + * .controller('GreetingController', GreetingController); + * + * // Fictitious Employee Editor to show how to use simple and complex dialogs. + * + * function EmployeeEditor($scope, $mdDialog) { + * var alert; + * + * $scope.showAlert = showAlert; + * $scope.closeAlert = closeAlert; + * $scope.showGreeting = showCustomGreeting; + * + * $scope.hasAlert = function() { return !!alert }; + * $scope.userName = $scope.userName || 'Bobby'; + * + * // Dialog #1 - Show simple alert dialog and cache + * // reference to dialog instance + * + * function showAlert() { + * alert = $mdDialog.alert() + * .title('Attention, ' + $scope.userName) + * .content('This is an example of how easy dialogs can be!') + * .ok('Close'); + * + * $mdDialog + * .show( alert ) + * .finally(function() { + * alert = undefined; + * }); + * } + * + * // Close the specified dialog instance and resolve with 'finished' flag + * // Normally this is not needed, just use '$mdDialog.hide()' to close + * // the most recent dialog popup. + * + * function closeAlert() { + * $mdDialog.hide( alert, "finished" ); + * alert = undefined; + * } + * + * // Dialog #2 - Demonstrate more complex dialogs construction and popup. + * + * function showCustomGreeting($event) { + * $mdDialog.show({ + * targetEvent: $event, + * template: + * '' + + * + * ' Hello {{ employee }}!' + + * + * '
    ' + + * ' ' + + * ' Close Greeting' + + * + * ' ' + + * '
    ' + + * '
    ', + * controller: 'GreetingController', + * onComplete: afterShowAnimation, + * locals: { employee: $scope.userName } + * }); + * + * // When the 'enter' animation finishes... + * + * function afterShowAnimation(scope, element, options) { + * // post-show code here: DOM element focus, etc. + * } + * } + * } + * + * // Greeting controller used with the more complex 'showCustomGreeting()' custom dialog + * + * function GreetingController($scope, $mdDialog, employee) { + * // Assigned from construction locals options... + * $scope.employee = employee; + * + * $scope.closeDialog = function() { + * // Easily hides most recent dialog shown... + * // no specific instance reference is needed. + * $mdDialog.hide(); + * }; + * } + * + * })(angular); + *
    + */ + + /** + * @ngdoc method + * @name $mdDialog#alert + * + * @description + * Builds a preconfigured dialog with the specified message. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * + */ + + /** + * @ngdoc method + * @name $mdDialog#confirm + * + * @description + * Builds a preconfigured dialog with the specified message. You can call show and the promise returned + * will be resolved only if the user clicks the confirm action on the dialog. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * Additionally, it supports the following methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * - $mdDialogPreset#cancel(string) - sets cancel button text to string + * + */ + +/** + * @ngdoc method + * @name $mdDialog#show + * + * @description + * Show a dialog with the specified options. + * + * @param {object} optionsOrPreset Either provide an `$mdDialogPreset` returned from `alert()`, + * `confirm()` or an options object with the following properties: + * - `templateUrl` - `{string=}`: The url of a template that will be used as the content + * of the dialog. + * - `template` - `{string=}`: Same as templateUrl, except this is an actual template string. + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * the location of the click will be used as the starting point for the opening animation + * of the the dialog. + * - `disableParentScroll` - `{boolean=}`: Whether to disable scrolling while the dialog is open. + * Default true. + * - `hasBackdrop` - `{boolean=}`: Whether there should be an opaque backdrop behind the dialog. + * Default true. + * - `clickOutsideToClose` - `{boolean=}`: Whether the user can click outside the dialog to + * close it. Default true. + * - `escapeToClose` - `{boolean=}`: Whether the user can press escape to close the dialog. + * Default true. + * - `controller` - `{string=}`: The controller to associate with the dialog. The controller + * will be injected with the local `$hideDialog`, which is a function used to hide the dialog. + * - `locals` - `{object=}`: An object containing key/value pairs. The keys will be used as names + * of values to inject into the controller. For example, `locals: {three: 3}` would inject + * `three` into the controller, with the value 3. If `bindToController` is true, they will be + * copied to the controller instead. + * - `bindToController` - `bool`: bind the locals to the controller, instead of passing them in + * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values, and the + * dialog will not open until all of the promises resolve. + * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. + * - `parent` - `{element=}`: The element to append the dialog to. Defaults to appending + * to the root element of the application. + * - `onComplete` `{function=}`: Callback function used to announce when the show() action is + * finished. + * + * @returns {promise} A promise that can be resolved with `$mdDialog.hide()` or + * rejected with `mdDialog.cancel()`. + */ + +/** + * @ngdoc method + * @name $mdDialog#hide + * + * @description + * Hide an existing dialog and resolve the promise returned from `$mdDialog.show()`. + * + * @param {*=} response An argument for the resolved promise. + */ + +/** + * @ngdoc method + * @name $mdDialog#cancel + * + * @description + * Hide an existing dialog and reject the promise returned from `$mdDialog.show()`. + * + * @param {*=} response An argument for the rejected promise. + */ + +function MdDialogProvider($$interimElementProvider) { + + var alertDialogMethods = ['title', 'content', 'ariaLabel', 'ok']; + + return $$interimElementProvider('$mdDialog') + .setDefaults({ + methods: ['disableParentScroll', 'hasBackdrop', 'clickOutsideToClose', 'escapeToClose', 'targetEvent'], + options: dialogDefaultOptions + }) + .addPreset('alert', { + methods: ['title', 'content', 'ariaLabel', 'ok'], + options: advancedDialogOptions + }) + .addPreset('confirm', { + methods: ['title', 'content', 'ariaLabel', 'ok', 'cancel'], + options: advancedDialogOptions + }); + + /* @ngInject */ + function advancedDialogOptions($mdDialog) { + return { + template: [ + '', + '', + '

    {{ dialog.title }}

    ', + '

    {{ dialog.content }}

    ', + '
    ', + '
    ', + '', + '{{ dialog.cancel }}', + '', + '', + '{{ dialog.ok }}', + '', + '
    ', + '
    ' + ].join(''), + controller: function mdDialogCtrl() { + this.hide = function() { + $mdDialog.hide(true); + }; + this.abort = function() { + $mdDialog.cancel(); + }; + }, + controllerAs: 'dialog', + bindToController: true + }; + } + + /* @ngInject */ + function dialogDefaultOptions($timeout, $rootElement, $compile, $animate, $mdAria, $document, + $mdUtil, $mdConstant, $mdTheming, $$rAF, $q, $mdDialog) { + return { + hasBackdrop: true, + isolateScope: true, + onShow: onShow, + onRemove: onRemove, + clickOutsideToClose: true, + escapeToClose: true, + targetEvent: null, + disableParentScroll: true, + transformTemplate: function(template) { + return '
    ' + template + '
    '; + } + }; + + + // On show method for dialogs + function onShow(scope, element, options) { + // Incase the user provides a raw dom element, always wrap it in jqLite + options.parent = angular.element(options.parent); + + options.popInTarget = angular.element((options.targetEvent || {}).target); + var closeButton = findCloseButton(); + + configureAria(element.find('md-dialog')); + + if (options.hasBackdrop) { + options.backdrop = angular.element(''); + $mdTheming.inherit(options.backdrop, options.parent); + $animate.enter(options.backdrop, options.parent); + } + + if (options.disableParentScroll) { + options.oldOverflowStyle = options.parent.css('overflow'); + options.parent.css('overflow', 'hidden'); + } + + return dialogPopIn( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ) + .then(function() { + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdDialog.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + + if (options.clickOutsideToClose) { + options.dialogClickOutsideCallback = function(e) { + // Only close if we click the flex container outside the backdrop + if (e.target === element[0]) { + $timeout($mdDialog.cancel); + } + }; + element.on('click', options.dialogClickOutsideCallback); + } + closeButton.focus(); + }); + + + function findCloseButton() { + //If no element with class dialog-close, try to find the last + //button child in md-actions and assume it is a close button + var closeButton = element[0].querySelector('.dialog-close'); + if (!closeButton) { + var actionButtons = element[0].querySelectorAll('.md-actions button'); + closeButton = actionButtons[ actionButtons.length - 1 ]; + } + return angular.element(closeButton); + } + + } + + // On remove function for all dialogs + function onRemove(scope, element, options) { + + if (options.backdrop) { + $animate.leave(options.backdrop); + } + if (options.disableParentScroll) { + options.parent.css('overflow', options.oldOverflowStyle); + $document[0].removeEventListener('scroll', options.captureScroll, true); + } + if (options.escapeToClose) { + $rootElement.off('keyup', options.rootElementKeyupCallback); + } + if (options.clickOutsideToClose) { + element.off('click', options.dialogClickOutsideCallback); + } + return dialogPopOut( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ).then(function() { + options.scope.$destroy(); + element.remove(); + options.popInTarget && options.popInTarget.focus(); + }); + + } + + /** + * Inject ARIA-specific attributes appropriate for Dialogs + */ + function configureAria(element) { + element.attr({ + 'role': 'dialog' + }); + + var dialogContent = element.find('md-content'); + if (dialogContent.length === 0){ + dialogContent = element; + } + $mdAria.expectAsync(element, 'aria-label', function() { + var words = dialogContent.text().split(/\s+/); + if (words.length > 3) words = words.slice(0,3).concat('...'); + return words.join(' '); + }); + } + + function dialogPopIn(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); + + parentElement.append(container); + transformToClickElement(dialogEl, clickElement); + + $$rAF(function() { + dialogEl.addClass('transition-in') + .css($mdConstant.CSS.TRANSFORM, ''); + }); + + return dialogTransitionEnd(dialogEl); + } + + function dialogPopOut(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); + + dialogEl.addClass('transition-out').removeClass('transition-in'); + transformToClickElement(dialogEl, clickElement); + + return dialogTransitionEnd(dialogEl); + } + + function transformToClickElement(dialogEl, clickElement) { + if (clickElement) { + var clickRect = clickElement[0].getBoundingClientRect(); + var dialogRect = dialogEl[0].getBoundingClientRect(); + + var scaleX = Math.min(0.5, clickRect.width / dialogRect.width); + var scaleY = Math.min(0.5, clickRect.height / dialogRect.height); + + dialogEl.css($mdConstant.CSS.TRANSFORM, 'translate3d(' + + (-dialogRect.left + clickRect.left + clickRect.width/2 - dialogRect.width/2) + 'px,' + + (-dialogRect.top + clickRect.top + clickRect.height/2 - dialogRect.height/2) + 'px,' + + '0) scale(' + scaleX + ',' + scaleY + ')' + ); + } + } + + function dialogTransitionEnd(dialogEl) { + var deferred = $q.defer(); + dialogEl.on($mdConstant.CSS.TRANSITIONEND, finished); + function finished(ev) { + //Make sure this transitionend didn't bubble up from a child + if (ev.target === dialogEl[0]) { + dialogEl.off($mdConstant.CSS.TRANSITIONEND, finished); + deferred.resolve(); + } + } + return deferred.promise; + } + + } +} + +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.scss b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.scss new file mode 100644 index 000000000..f61b94733 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.scss @@ -0,0 +1,65 @@ +.md-dialog-container { + display: flex; + justify-content: center; + align-items: center; + position: absolute; + left: 0; + top: 0; + right: 0; + bottom: 0; + z-index: $z-index-dialog; +} + +md-dialog { + &.transition-in { + opacity: 1; + transition: $swift-ease-out; + transform: translate3d(0,0,0) scale(1.0); + } + &.transition-out { + transition: $swift-ease-out; + transform: translate3d(0,100%,0) scale(0.2); + } + + opacity: 0; + min-width: 240px; + max-width: 80%; + max-height: 80%; + margin: auto; + position: relative; + overflow: hidden; // stop content from leaking out of dialog parent + + box-shadow: $whiteframe-shadow-z5; + + display: flex; + flex-direction: column; + + md-content { + order: 1; + padding: 24px; + overflow: auto; + -webkit-overflow-scrolling: touch; + + *:first-child { + margin-top: 0px; + } + } + + .md-actions { + display: flex; + order: 2; + box-sizing: border-box; + align-items: center; + justify-content: flex-end; + padding: 16px 16px; + min-height: $baseline-grid * 5; + + > * { + margin-left: 8px; + } + } + &.md-content-overflow .md-actions { + border-top: 1px solid; + } + +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.spec.js new file mode 100644 index 000000000..d000bc045 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/dialog/dialog.spec.js @@ -0,0 +1,479 @@ +describe('$mdDialog', function() { + + beforeEach(TestUtil.mockRaf); + beforeEach(module('material.components.dialog', 'ngAnimateMock')); + + beforeEach(inject(function spyOnMdEffects($$q, $animate) { + spyOn($animate, 'leave').andCallFake(function(element) { + element.remove(); + return $$q.when(); + }); + spyOn($animate, 'enter').andCallFake(function(element, parent) { + parent.append(element); + return $$q.when(); + }); + })); + + describe('#alert()', function() { + hasConfigurationMethods('alert', [ + 'title', 'content', 'ariaLabel', + 'ok', 'targetEvent' + ]); + + it('shows a basic alert dialog', inject(function($animate, $rootScope, $mdDialog, $mdConstant) { + var parent = angular.element('
    '); + var resolved = false; + $mdDialog.show( + $mdDialog.alert({ + parent: parent + }) + .title('Title') + .content('Hello world') + .ok('Next') + ).then(function() { + resolved = true; + }); + + $rootScope.$apply(); + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + container.triggerHandler('transitionend'); + $rootScope.$apply(); + + var title = angular.element(parent[0].querySelector('h2')); + expect(title.text()).toBe('Title'); + var content = parent.find('p'); + expect(content.text()).toBe('Hello world'); + var buttons = parent.find('md-button'); + expect(buttons.length).toBe(1); + expect(buttons.eq(0).text()).toBe('Next'); + buttons.eq(0).triggerHandler('click'); + $rootScope.$apply(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + expect(parent.find('h2').length).toBe(0); + expect(resolved).toBe(true); + })); + }); + + describe('#confirm()', function() { + hasConfigurationMethods('confirm', [ + 'title', 'content', 'ariaLabel', + 'ok', 'cancel', 'targetEvent' + ]); + + it('shows a basic confirm dialog', inject(function($rootScope, $mdDialog, $animate, $mdConstant) { + var parent = angular.element('
    '); + var rejected = false; + $mdDialog.show( + $mdDialog.confirm({ + parent: parent + }) + .title('Title') + .content('Hello world') + .ok('Next') + .cancel('Forget it') + ).catch(function() { + rejected = true; + }); + + $rootScope.$apply(); + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + container.triggerHandler('transitionend'); + $rootScope.$apply(); + + var title = parent.find('h2'); + expect(title.text()).toBe('Title'); + var content = parent.find('p'); + expect(content.text()).toBe('Hello world'); + var buttons = parent.find('md-button'); + expect(buttons.length).toBe(2); + expect(buttons.eq(0).text()).toBe('Next'); + expect(buttons.eq(1).text()).toBe('Forget it'); + buttons.eq(1).triggerHandler('click'); + $rootScope.$digest(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + expect(parent.find('h2').length).toBe(0); + expect(rejected).toBe(true); + })); + }); + + describe('#build()', function() { + it('should support onComplete callbacks within `show()`', inject(function($mdDialog, $rootScope, $timeout, $mdConstant) { + + var template = 'Hello'; + var parent = angular.element('
    '); + var ready = false; + + $mdDialog.show({ + template: template, + parent: parent, + onComplete: function(scope, element, options) { + expect( arguments.length ).toEqual( 3 ); + ready = true; + } + }); + $rootScope.$apply(); + + expect(ready).toBe( false ); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + container = angular.element(parent[0].querySelector('.md-dialog-container')); + expect(container.length).toBe(1); + expect(ready).toBe( true ); + })); + + it('should append dialog with container', inject(function($mdDialog, $rootScope) { + + var template = 'Hello'; + var parent = angular.element('
    '); + + $mdDialog.show({ + template: template, + parent: parent + }); + + $rootScope.$apply(); + + var container = parent[0].querySelectorAll('.md-dialog-container'); + expect(container.length).toBe(1); + })); + + it('should escapeToClose == true', inject(function($mdDialog, $rootScope, $rootElement, $timeout, $animate, $mdConstant) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + escapeToClose: true + }); + $rootScope.$apply(); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + expect(parent.find('md-dialog').length).toBe(1); + + $rootElement.triggerHandler({type: 'keyup', + keyCode: $mdConstant.KEY_CODE.ESCAPE + }); + + $timeout.flush(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + expect(parent.find('md-dialog').length).toBe(0); + })); + + it('should escapeToClose == false', inject(function($mdDialog, $rootScope, $rootElement, $timeout, $animate, $mdConstant) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + escapeToClose: false + }); + $rootScope.$apply(); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + container.triggerHandler('transitionend'); + $rootScope.$apply(); + + expect(parent.find('md-dialog').length).toBe(1); + + $rootElement.triggerHandler({ type: 'keyup', keyCode: $mdConstant.KEY_CODE.ESCAPE }); + + $timeout.flush(); + $animate.triggerCallbacks(); + expect(parent.find('md-dialog').length).toBe(1); + })); + + it('should clickOutsideToClose == true', inject(function($mdDialog, $rootScope, $timeout, $animate, $mdConstant) { + + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + clickOutsideToClose: true + }); + $rootScope.$apply(); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + expect(parent.find('md-dialog').length).toBe(1); + + container.triggerHandler({ + type: 'click', + target: container[0] + }); + $timeout.flush(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + expect(parent.find('md-dialog').length).toBe(0); + })); + + it('should clickOutsideToClose == false', inject(function($mdDialog, $rootScope, $timeout, $animate) { + + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + clickOutsideToClose: false + }); + + $rootScope.$apply(); + expect(parent.find('md-dialog').length).toBe(1); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + + container.triggerHandler('click'); + $timeout.flush(); + $animate.triggerCallbacks(); + + expect(parent[0].querySelectorAll('md-dialog').length).toBe(1); + })); + + it('should disableParentScroll == true', inject(function($mdDialog, $animate, $rootScope) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + disableParentScroll: true + }); + $rootScope.$apply(); + $animate.triggerCallbacks(); + $rootScope.$apply(); + expect(parent.css('overflow')).toBe('hidden'); + })); + + it('should hasBackdrop == true', inject(function($mdDialog, $animate, $rootScope) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + hasBackdrop: true + }); + + $rootScope.$apply(); + $animate.triggerCallbacks(); + $rootScope.$apply(); + expect(parent.find('md-dialog').length).toBe(1); + expect(parent.find('md-backdrop').length).toBe(1); + })); + + it('should hasBackdrop == false', inject(function($mdDialog, $rootScope) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent, + hasBackdrop: false + }); + + $rootScope.$apply(); + expect(parent[0].querySelectorAll('md-dialog').length).toBe(1); + expect(parent[0].querySelectorAll('md-backdrop').length).toBe(0); + })); + + it('should focus `md-button.dialog-close` on open', inject(function($mdDialog, $rootScope, $document, $timeout, $mdConstant) { + TestUtil.mockElementFocus(this); + + var parent = angular.element('
    '); + $mdDialog.show({ + template: + '' + + '
    ' + + '' + + '
    ' + + '
    ', + parent: parent + }); + + $rootScope.$apply(); + $timeout.flush(); + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + container.triggerHandler('transitionend'); + $rootScope.$apply(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + + expect($document.activeElement).toBe(parent[0].querySelector('.dialog-close')); + })); + + it('should focus the last `md-button` in md-actions open if no `.dialog-close`', inject(function($mdDialog, $rootScope, $document, $timeout, $mdConstant) { + TestUtil.mockElementFocus(this); + + var parent = angular.element('
    '); + $mdDialog.show({ + template: + '' + + '
    ' + + '
    ' + + '
    ', + parent: parent + }); + + $rootScope.$apply(); + $timeout.flush(); + + var container = angular.element(parent[0].querySelector('.md-dialog-container')); + container.triggerHandler('transitionend'); + $rootScope.$apply(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + + expect($document.activeElement).toBe(parent[0].querySelector('#focus-target')); + })); + + it('should only allow one open at a time', inject(function($mdDialog, $rootScope) { + var parent = angular.element('
    '); + $mdDialog.show({ + template: '', + parent: parent + }); + + $rootScope.$apply(); + expect(parent[0].querySelectorAll('md-dialog.one').length).toBe(1); + expect(parent[0].querySelectorAll('md-dialog.two').length).toBe(0); + + $mdDialog.show({ + template: '', + parent: parent + }); + + $rootScope.$apply(); + parent.find('md-dialog').triggerHandler('transitionend'); + $rootScope.$apply(); + expect(parent[0].querySelectorAll('md-dialog.one').length).toBe(0); + expect(parent[0].querySelectorAll('md-dialog.two').length).toBe(1); + })); + + it('should have the dialog role', inject(function($mdDialog, $rootScope) { + var template = 'Hello'; + var parent = angular.element('
    '); + + $mdDialog.show({ + template: template, + parent: parent + }); + + $rootScope.$apply(); + + var dialog = angular.element(parent[0].querySelectorAll('md-dialog')); + expect(dialog.attr('role')).toBe('dialog'); + })); + + it('should create an ARIA label if one is missing', inject(function($mdDialog, $rootScope) { + var template = 'Hello'; + var parent = angular.element('
    '); + + $mdDialog.show({ + template: template, + parent: parent + }); + + $rootScope.$apply(); + angular.element(parent[0].querySelector('.md-dialog-container')).triggerHandler('transitionend'); + $rootScope.$apply(); + + var dialog = angular.element(parent[0].querySelector('md-dialog')); + expect(dialog.attr('aria-label')).toEqual(dialog.text()); + })); + + it('should not modify an existing ARIA label', inject(function($mdDialog, $rootScope){ + var template = 'Hello'; + var parent = angular.element('
    '); + + $mdDialog.show({ + template: template, + parent: parent + }); + + $rootScope.$apply(); + + var dialog = angular.element(parent[0].querySelector('md-dialog')); + expect(dialog.attr('aria-label')).not.toEqual(dialog.text()); + expect(dialog.attr('aria-label')).toEqual('Some Other Thing'); + })); + }); + + function hasConfigurationMethods(preset, methods) { + angular.forEach(methods, function(method) { + return it('supports config method #' + method, inject(function($mdDialog) { + var dialog = $mdDialog[preset](); + expect(typeof dialog[method]).toBe('function'); + expect(dialog[method]()).toEqual(dialog); + })); + }); + } +}); + +describe('$mdDialog with custom interpolation symbols', function() { + beforeEach(TestUtil.mockRaf); + beforeEach(module('material.components.dialog', 'ngAnimateMock')); + + beforeEach(module(function($interpolateProvider) { + $interpolateProvider.startSymbol('[[').endSymbol(']]'); + })); + + it('displays #alert() correctly', inject(function($mdDialog, $rootScope) { + var parent = angular.element('
    '); + var dialog = $mdDialog. + alert({parent: parent}). + ariaLabel('test alert'). + title('Title'). + content('Hello, world !'). + ok('OK'); + + $mdDialog.show(dialog); + $rootScope.$digest(); + + var mdContainer = angular.element(parent[0].querySelector('.md-dialog-container')); + var mdDialog = mdContainer.find('md-dialog'); + var mdContent = mdDialog.find('md-content'); + var title = mdContent.find('h2'); + var content = mdContent.find('p'); + var mdActions = angular.element(mdDialog[0].querySelector('.md-actions')); + var buttons = mdActions.find('md-button'); + + expect(mdDialog.attr('aria-label')).toBe('test alert'); + expect(title.text()).toBe('Title'); + expect(content.text()).toBe('Hello, world !'); + expect(buttons.eq(0).text()).toBe('OK'); + })); + + it('displays #confirm() correctly', inject(function($mdDialog, $rootScope) { + var parent = angular.element('
    '); + var dialog = $mdDialog. + confirm({parent: parent}). + ariaLabel('test alert'). + title('Title'). + content('Hello, world !'). + cancel('CANCEL'). + ok('OK'); + + $mdDialog.show(dialog); + $rootScope.$digest(); + + var mdContainer = angular.element(parent[0].querySelector('.md-dialog-container')); + var mdDialog = mdContainer.find('md-dialog'); + var mdContent = mdDialog.find('md-content'); + var title = mdContent.find('h2'); + var content = mdContent.find('p'); + var mdActions = angular.element(mdDialog[0].querySelector('.md-actions')); + var buttons = mdActions.find('md-button'); + + expect(mdDialog.attr('aria-label')).toBe('test alert'); + expect(title.text()).toBe('Title'); + expect(content.text()).toBe('Hello, world !'); + expect(buttons.eq(0).text()).toBe('CANCEL'); + expect(buttons.eq(1).text()).toBe('OK'); + })); +}); + diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/index.html new file mode 100644 index 000000000..fb98459c7 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/index.html @@ -0,0 +1,51 @@ +
    + + +

    + Full Bleed +

    +
    + + + + + +
    +

    {{item.what}}

    +

    {{item.who}}

    +

    + {{item.notes}} +

    +
    +
    + +
    +
    +
    + + +

    + Inset +

    +
    + + + + + +
    + {{item.who}} +
    +
    +

    {{item.what}}

    +

    {{item.who}}

    +

    + {{item.notes}} +

    +
    +
    + +
    +
    +
    +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/script.js new file mode 100644 index 000000000..c10891e46 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/script.js @@ -0,0 +1,34 @@ +angular.module('dividerDemo1', ['ngMaterial']) + .controller('AppCtrl', function($scope) { + $scope.messages = [{ + face: '/img/list/60.jpeg', + what: 'Brunch this weekend?', + who: 'Min Li Chan', + when: '3:08PM', + notes: " I'll be in your neighborhood doing errands" + }, { + face: '/img/list/60.jpeg', + what: 'Brunch this weekend?', + who: 'Min Li Chan', + when: '3:08PM', + notes: " I'll be in your neighborhood doing errands" + }, { + face: '/img/list/60.jpeg', + what: 'Brunch this weekend?', + who: 'Min Li Chan', + when: '3:08PM', + notes: " I'll be in your neighborhood doing errands" + }, { + face: '/img/list/60.jpeg', + what: 'Brunch this weekend?', + who: 'Min Li Chan', + when: '3:08PM', + notes: " I'll be in your neighborhood doing errands" + }, { + face: '/img/list/60.jpeg', + what: 'Brunch this weekend?', + who: 'Min Li Chan', + when: '3:08PM', + notes: " I'll be in your neighborhood doing errands" + }]; + }); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/style.css b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/style.css new file mode 100644 index 000000000..1a93bc1e9 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/demoBasicUsage/style.css @@ -0,0 +1,6 @@ +.face { + border-radius: 30px; + border: 1px solid #ddd; + width: 48px; + margin: 16px; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider-theme.scss new file mode 100644 index 000000000..36619773b --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider-theme.scss @@ -0,0 +1,3 @@ +md-divider.md-THEME_NAME-theme { + border-top-color: '{{foreground-4}}'; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.js b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.js new file mode 100644 index 000000000..676c51498 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.js @@ -0,0 +1,41 @@ +(function() { +'use strict'; + +/** + * @ngdoc module + * @name material.components.divider + * @description Divider module! + */ +angular.module('material.components.divider', [ + 'material.core' +]) + .directive('mdDivider', MdDividerDirective); + +function MdDividerController(){} + +/** + * @ngdoc directive + * @name mdDivider + * @module material.components.divider + * @restrict E + * + * @description + * Dividers group and separate content within lists and page layouts using strong visual and spatial distinctions. This divider is a thin rule, lightweight enough to not distract the user from content. + * + * @param {boolean=} md-inset Add this attribute to activate the inset divider style. + * @usage + * + * + * + * + * + * + */ +function MdDividerDirective($mdTheming) { + return { + restrict: 'E', + link: $mdTheming, + controller: [MdDividerController] + }; +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.scss b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.scss new file mode 100644 index 000000000..764543e97 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/divider/divider.scss @@ -0,0 +1,9 @@ +md-divider { + display: block; + border-top: 1px solid; + margin: 0; + + &[md-inset] { + margin-left: $baseline-grid * 9; // fix for vs-repeat + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.js b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.js new file mode 100644 index 000000000..e43b8d1c5 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.js @@ -0,0 +1,44 @@ +(function() { +'use strict'; + +/* + * @ngdoc module + * @name material.components.icon + * @description + * Icon + */ +angular.module('material.components.icon', [ + 'material.core' +]) + .directive('mdIcon', mdIconDirective); + +/* + * @ngdoc directive + * @name mdIcon + * @module material.components.icon + * + * @restrict E + * + * @description + * The `` directive is an element useful for SVG icons + * + * @usage + * + * + * + * + * + */ +function mdIconDirective() { + return { + restrict: 'E', + template: '', + compile: function(element, attr) { + var object = angular.element(element[0].children[0]); + if(angular.isDefined(attr.icon)) { + object.attr('data', attr.icon); + } + } + }; +} +})(); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.scss b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.scss new file mode 100644 index 000000000..5d7615c73 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.scss @@ -0,0 +1,18 @@ + +md-icon { + margin: auto; + padding: 0; + display: inline-block; + margin-top: 5px; + background-repeat: no-repeat no-repeat; + pointer-events: none; +} +svg, object { + fill: currentColor; + color: currentColor; +} + +md-class-icon { + // display: block; + // margin: 0 auto; +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.spec.js b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.spec.js new file mode 100644 index 000000000..9de75b49c --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/icon/icon.spec.js @@ -0,0 +1,2 @@ +describe('mdIcon directive', function() { +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/index.html b/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/index.html new file mode 100644 index 000000000..93466f4b9 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/index.html @@ -0,0 +1,58 @@ +
    + + + + + + + + + + + + + + + + + + + +
    + + + + + + + + +
    + + + + + + +
    + + + + + + + + + + + + +
    + + + + + + +
    +
    diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/script.js b/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/script.js new file mode 100644 index 000000000..514268b79 --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/input/demoBasicUsage/script.js @@ -0,0 +1,16 @@ +angular.module('inputBasicDemo', ['ngMaterial']) + +.controller('DemoCtrl', function($scope) { + $scope.user = { + title: 'Developer', + email: 'ipsum@lorem.com', + firstName: '', + lastName: '' , + company: 'Google' , + address: '1600 Amphitheatre Pkwy' , + city: 'Mountain View' , + state: 'CA' , + biography: 'Loves kittens, snowboarding, and can type at 130 WPM. And rumor has it she bouldered up Castle Craig!', + postalCode : '94043' + }; +}); diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/input/input-theme.scss b/UI/WebServerResources/scss/vendors/angular-material/components/input/input-theme.scss new file mode 100644 index 000000000..f1828a1ca --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/input/input-theme.scss @@ -0,0 +1,50 @@ +md-input-container.md-THEME_NAME-theme { + .md-input { + @include input-placeholder-color('{{foreground-3}}'); + color: '{{foreground-1}}'; + border-color: '{{foreground-4}}'; + text-shadow: '{{foreground-shadow}}'; + } + + label { + text-shadow: '{{foreground-shadow}}'; + color: '{{foreground-3}}'; + } + + &.md-input-focused { + .md-input { + border-color: '{{primary-500}}'; + } + label { + color: '{{primary-500}}'; + } + &.md-accent { + .md-input { + border-color: '{{accent-500}}'; + } + label { + color: '{{accent-500}}'; + } + } + &.md-warn { + .md-input { + border-color: '{{warn-500}}'; + } + label { + color: '{{warn-500}}'; + } + } + } + + &.md-input-has-value:not(.md-input-focused) { + label { + color: '{{foreground-2}}'; + } + } + + .md-input[disabled] { + border-bottom-color: transparent; + color: '{{foreground-3}}'; + background-image: linear-gradient(to right, '{{foreground-4}}' 0%, '{{foreground-4}}' 33%, transparent 0%); + } +} diff --git a/UI/WebServerResources/scss/vendors/angular-material/components/input/input.js b/UI/WebServerResources/scss/vendors/angular-material/components/input/input.js new file mode 100644 index 000000000..6cb2ded2c --- /dev/null +++ b/UI/WebServerResources/scss/vendors/angular-material/components/input/input.js @@ -0,0 +1,189 @@ +(function() { + +/** + * @ngdoc module + * @name material.components.input + */ + +angular.module('material.components.input', [ + 'material.core' +]) + .directive('mdInputContainer', mdInputContainerDirective) + .directive('label', labelDirective) + .directive('input', inputTextareaDirective) + .directive('textarea', inputTextareaDirective); + +/** + * @ngdoc directive + * @name mdInputContainer + * @module material.components.input + * + * @restrict E + * + * @description + * `` is the parent of any input or textarea element. + * + * Input and textarea elements will not behave properly unless the md-input-container + * parent is provided. + * + * @usage + * + * + * + * + * + * + * + * + * + * + * + * + * + */ +function mdInputContainerDirective($mdTheming) { + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $mdUtil) { + var self = this; + + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +function inputTextareaDirective($mdUtil, $window) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + compile: compile, + }; + + function compile(element) { + element.addClass('md-input'); + return postLink; + } + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1]; + + if ( !containerCtrl ) return; + + if (element[0].tagName.toLowerCase() === 'textarea') { + setupTextarea(); + } + + if (containerCtrl.input) { + throw new Error(" can only have *one* or