@lumx/core 3.0.7 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/{CONTRIBUTING.md → dist/CONTRIBUTING.md} +0 -0
  2. package/{LICENSE.md → dist/LICENSE.md} +0 -0
  3. package/{css → dist/css}/_retro-compat-v2.css +0 -0
  4. package/{css → dist/css}/design-tokens.css +0 -0
  5. package/{css → dist/css}/material.css +0 -0
  6. package/{js → dist/js}/constants/design-tokens.js +0 -0
  7. package/{js → dist/js}/constants/design-tokens.min.js +0 -0
  8. package/{js → dist/js}/constants/design-tokens.min.js.map +0 -0
  9. package/{js → dist/js}/constants/design-tokens.ts +0 -0
  10. package/{js → dist/js}/constants/index.js +0 -0
  11. package/{js → dist/js}/constants/index.min.js +0 -0
  12. package/{js → dist/js}/constants/index.min.js.map +0 -0
  13. package/{js → dist/js}/constants/index.ts +0 -0
  14. package/{js → dist/js}/constants/keycodes.js +0 -0
  15. package/{js → dist/js}/constants/keycodes.min.js +0 -0
  16. package/{js → dist/js}/constants/keycodes.min.js.map +0 -0
  17. package/{js → dist/js}/constants/keycodes.ts +0 -0
  18. package/{js → dist/js}/custom-colors.js +0 -0
  19. package/{js → dist/js}/custom-colors.min.js +0 -0
  20. package/dist/js/custom-colors.min.js.map +1 -0
  21. package/{js → dist/js}/custom-colors.ts +0 -0
  22. package/{js → dist/js}/date-picker.js +0 -0
  23. package/{js → dist/js}/date-picker.min.js +0 -0
  24. package/dist/js/date-picker.min.js.map +1 -0
  25. package/{js → dist/js}/date-picker.ts +0 -0
  26. package/{js → dist/js}/utils.js +0 -0
  27. package/{js → dist/js}/utils.min.js +0 -0
  28. package/dist/js/utils.min.js.map +1 -0
  29. package/{js → dist/js}/utils.ts +0 -0
  30. package/{lumx.css → dist/lumx.css} +1 -1
  31. package/{lumx.min.css → dist/lumx.min.css} +1 -1
  32. package/dist/package.json +81 -0
  33. package/{scss → dist/scss}/_components.scss +0 -0
  34. package/{scss → dist/scss}/_core.scss +0 -0
  35. package/{scss → dist/scss}/_design-tokens.scss +0 -0
  36. package/{scss → dist/scss}/_retro-compat-v2.scss +0 -0
  37. package/{scss → dist/scss}/components/avatar/_index.scss +0 -0
  38. package/{scss → dist/scss}/components/badge/_index.scss +0 -0
  39. package/{scss → dist/scss}/components/button/_index.scss +0 -0
  40. package/{scss → dist/scss}/components/button/_mixins.scss +0 -0
  41. package/{scss → dist/scss}/components/button/_variables.scss +0 -0
  42. package/{scss → dist/scss}/components/checkbox/_index.scss +0 -0
  43. package/{scss → dist/scss}/components/checkbox/_mixins.scss +0 -0
  44. package/{scss → dist/scss}/components/chip/_index.scss +0 -0
  45. package/{scss → dist/scss}/components/chip/_mixins.scss +0 -0
  46. package/{scss → dist/scss}/components/chip/_variables.scss +0 -0
  47. package/{scss → dist/scss}/components/comment-block/_index.scss +0 -0
  48. package/{scss → dist/scss}/components/date-picker/_index.scss +0 -0
  49. package/{scss → dist/scss}/components/dialog/_index.scss +0 -0
  50. package/{scss → dist/scss}/components/dialog/_variables.scss +0 -0
  51. package/{scss → dist/scss}/components/divider/_index.scss +0 -0
  52. package/{scss → dist/scss}/components/divider/_mixins.scss +0 -0
  53. package/{scss → dist/scss}/components/divider/_variables.scss +0 -0
  54. package/{scss → dist/scss}/components/drag-handle/_index.scss +0 -0
  55. package/{scss → dist/scss}/components/dropdown/_index.scss +0 -0
  56. package/{scss → dist/scss}/components/expansion-panel/_index.scss +0 -0
  57. package/{scss → dist/scss}/components/expansion-panel/_variables.scss +0 -0
  58. package/{scss → dist/scss}/components/flag/_index.scss +0 -0
  59. package/{scss → dist/scss}/components/flex-box/_index.scss +0 -0
  60. package/{scss → dist/scss}/components/generic-block/_index.scss +0 -0
  61. package/{scss → dist/scss}/components/grid/_index.scss +0 -0
  62. package/dist/scss/components/grid-column/_index.scss +18 -0
  63. package/{scss → dist/scss}/components/icon/_index.scss +0 -0
  64. package/{scss → dist/scss}/components/icon/_mixins.scss +0 -0
  65. package/{scss → dist/scss}/components/icon/_variables.scss +0 -0
  66. package/{scss → dist/scss}/components/image-block/_index.scss +0 -0
  67. package/{scss → dist/scss}/components/inline-list/_index.scss +0 -0
  68. package/{scss → dist/scss}/components/input-helper/_index.scss +0 -0
  69. package/{scss → dist/scss}/components/input-helper/_mixins.scss +0 -0
  70. package/{scss → dist/scss}/components/input-helper/_variables.scss +0 -0
  71. package/{scss → dist/scss}/components/input-label/_index.scss +0 -0
  72. package/{scss → dist/scss}/components/input-label/_mixins.scss +0 -0
  73. package/{scss → dist/scss}/components/lightbox/_index.scss +0 -0
  74. package/{scss → dist/scss}/components/lightbox/_variables.scss +0 -0
  75. package/{scss → dist/scss}/components/link/_index.scss +0 -0
  76. package/{scss → dist/scss}/components/link/_mixins.scss +0 -0
  77. package/{scss → dist/scss}/components/link-preview/_index.scss +0 -0
  78. package/{scss → dist/scss}/components/list/_index.scss +0 -0
  79. package/{scss → dist/scss}/components/list/_mixins.scss +0 -0
  80. package/{scss → dist/scss}/components/list/_variables.scss +0 -0
  81. package/{scss → dist/scss}/components/message/_index.scss +0 -0
  82. package/{scss → dist/scss}/components/mosaic/_index.scss +0 -0
  83. package/{scss → dist/scss}/components/notification/_index.scss +0 -0
  84. package/{scss → dist/scss}/components/notification/_variables.scss +0 -0
  85. package/{scss → dist/scss}/components/notification-block/_index.scss +0 -0
  86. package/{scss → dist/scss}/components/popover/_index.scss +0 -0
  87. package/{scss → dist/scss}/components/popover/_variables.scss +0 -0
  88. package/{scss → dist/scss}/components/post-block/_index.scss +0 -0
  89. package/{scss → dist/scss}/components/progress/_index.scss +20 -0
  90. package/dist/scss/components/progress/_variables.scss +12 -0
  91. package/{scss → dist/scss}/components/progress-tracker/_index.scss +0 -0
  92. package/{scss → dist/scss}/components/progress-tracker/_variables.scss +0 -0
  93. package/{scss → dist/scss}/components/radio-button/_index.scss +0 -0
  94. package/{scss → dist/scss}/components/radio-button/_mixins.scss +0 -0
  95. package/{scss → dist/scss}/components/select/_index.scss +0 -0
  96. package/{scss → dist/scss}/components/select/_mixins.scss +0 -0
  97. package/{scss → dist/scss}/components/side-navigation/_index.scss +0 -0
  98. package/{scss → dist/scss}/components/side-navigation/_mixins.scss +0 -0
  99. package/{scss → dist/scss}/components/skeleton/_index.scss +0 -0
  100. package/{scss → dist/scss}/components/skeleton/_mixins.scss +0 -0
  101. package/{scss → dist/scss}/components/slider/_index.scss +0 -0
  102. package/{scss → dist/scss}/components/slideshow/_index.scss +0 -0
  103. package/{scss → dist/scss}/components/slideshow/_variables.scss +0 -0
  104. package/{scss → dist/scss}/components/switch/_index.scss +0 -0
  105. package/{scss → dist/scss}/components/switch/_mixins.scss +0 -0
  106. package/{scss → dist/scss}/components/table/_index.scss +0 -0
  107. package/{scss → dist/scss}/components/table/_mixins.scss +0 -0
  108. package/{scss → dist/scss}/components/tabs/_index.scss +0 -0
  109. package/{scss → dist/scss}/components/tabs/_mixins.scss +0 -0
  110. package/{scss → dist/scss}/components/text/_index.scss +0 -0
  111. package/{scss → dist/scss}/components/text-field/_index.scss +0 -0
  112. package/{scss → dist/scss}/components/text-field/_mixins.scss +0 -0
  113. package/{scss → dist/scss}/components/text-field/_variables.scss +0 -0
  114. package/{scss → dist/scss}/components/thumbnail/_index.scss +0 -0
  115. package/{scss → dist/scss}/components/thumbnail/_variables.scss +0 -0
  116. package/{scss → dist/scss}/components/toolbar/_index.scss +0 -0
  117. package/{scss → dist/scss}/components/toolbar/_variables.scss +0 -0
  118. package/{scss → dist/scss}/components/tooltip/_index.scss +0 -0
  119. package/{scss → dist/scss}/components/tooltip/_variables.scss +0 -0
  120. package/{scss → dist/scss}/components/uploader/_index.scss +0 -0
  121. package/{scss → dist/scss}/components/user-block/_index.scss +0 -0
  122. package/{scss → dist/scss}/core/base/_functions.scss +0 -0
  123. package/{scss → dist/scss}/core/base/_helpers.scss +0 -0
  124. package/{scss → dist/scss}/core/base/_index.scss +0 -0
  125. package/{scss → dist/scss}/core/base/_normalize.scss +0 -0
  126. package/{scss → dist/scss}/core/base/_variables.scss +0 -0
  127. package/{scss → dist/scss}/core/color/_functions.scss +0 -0
  128. package/{scss → dist/scss}/core/color/_index.scss +0 -0
  129. package/{scss → dist/scss}/core/color/_variables.scss +0 -0
  130. package/{scss → dist/scss}/core/elevation/_mixins.scss +0 -0
  131. package/{scss → dist/scss}/core/elevation/_variables.scss +0 -0
  132. package/{scss → dist/scss}/core/size/_variables.scss +0 -0
  133. package/{scss → dist/scss}/core/spacing/_index.scss +0 -0
  134. package/{scss → dist/scss}/core/spacing/_variables.scss +0 -0
  135. package/{scss → dist/scss}/core/state/_mixins.scss +0 -0
  136. package/{scss → dist/scss}/core/state/_variables.scss +0 -0
  137. package/{scss → dist/scss}/core/typography/_index.scss +0 -0
  138. package/{scss → dist/scss}/core/typography/_mixins.scss +0 -0
  139. package/{scss → dist/scss}/core/typography/_variables.scss +0 -0
  140. package/{scss → dist/scss}/lumx.scss +1 -0
  141. package/package.json +4 -8
  142. package/src/css/_retro-compat-v2.css +117 -0
  143. package/src/css/design-tokens.css +544 -0
  144. package/src/css/material.css +62 -0
  145. package/src/js/constants/design-tokens.ts +2157 -0
  146. package/src/js/constants/index.ts +35 -0
  147. package/src/js/constants/keycodes.ts +44 -0
  148. package/src/js/custom-colors.ts +56 -0
  149. package/src/js/date-picker.ts +71 -0
  150. package/src/js/utils.ts +296 -0
  151. package/src/scss/_components.scss +35 -0
  152. package/src/scss/_core.scss +12 -0
  153. package/src/scss/_design-tokens.scss +1667 -0
  154. package/src/scss/_retro-compat-v2.scss +95 -0
  155. package/src/scss/components/avatar/_index.scss +42 -0
  156. package/src/scss/components/badge/_index.scss +47 -0
  157. package/src/scss/components/button/_index.scss +166 -0
  158. package/src/scss/components/button/_mixins.scss +271 -0
  159. package/src/scss/components/button/_variables.scss +6 -0
  160. package/src/scss/components/checkbox/_index.scss +231 -0
  161. package/src/scss/components/checkbox/_mixins.scss +69 -0
  162. package/src/scss/components/chip/_index.scss +156 -0
  163. package/src/scss/components/chip/_mixins.scss +37 -0
  164. package/src/scss/components/chip/_variables.scss +1 -0
  165. package/src/scss/components/comment-block/_index.scss +170 -0
  166. package/src/scss/components/date-picker/_index.scss +67 -0
  167. package/src/scss/components/dialog/_index.scss +169 -0
  168. package/src/scss/components/dialog/_variables.scss +8 -0
  169. package/src/scss/components/divider/_index.scss +39 -0
  170. package/src/scss/components/divider/_mixins.scss +60 -0
  171. package/src/scss/components/divider/_variables.scss +7 -0
  172. package/src/scss/components/drag-handle/_index.scss +7 -0
  173. package/src/scss/components/dropdown/_index.scss +22 -0
  174. package/src/scss/components/expansion-panel/_index.scss +80 -0
  175. package/src/scss/components/expansion-panel/_variables.scss +2 -0
  176. package/src/scss/components/flag/_index.scss +41 -0
  177. package/src/scss/components/flex-box/_index.scss +132 -0
  178. package/src/scss/components/generic-block/_index.scss +11 -0
  179. package/src/scss/components/grid/_index.scss +147 -0
  180. package/src/scss/components/grid-column/_index.scss +18 -0
  181. package/src/scss/components/icon/_index.scss +106 -0
  182. package/src/scss/components/icon/_mixins.scss +42 -0
  183. package/src/scss/components/icon/_variables.scss +6 -0
  184. package/src/scss/components/image-block/_index.scss +108 -0
  185. package/src/scss/components/inline-list/_index.scss +15 -0
  186. package/src/scss/components/input-helper/_index.scss +27 -0
  187. package/src/scss/components/input-helper/_mixins.scss +12 -0
  188. package/src/scss/components/input-helper/_variables.scss +1 -0
  189. package/src/scss/components/input-label/_index.scss +23 -0
  190. package/src/scss/components/input-label/_mixins.scss +12 -0
  191. package/src/scss/components/lightbox/_index.scss +59 -0
  192. package/src/scss/components/lightbox/_variables.scss +1 -0
  193. package/src/scss/components/link/_index.scss +35 -0
  194. package/src/scss/components/link/_mixins.scss +25 -0
  195. package/src/scss/components/link-preview/_index.scss +95 -0
  196. package/src/scss/components/list/_index.scss +96 -0
  197. package/src/scss/components/list/_mixins.scss +128 -0
  198. package/src/scss/components/list/_variables.scss +7 -0
  199. package/src/scss/components/message/_index.scss +36 -0
  200. package/src/scss/components/mosaic/_index.scss +120 -0
  201. package/src/scss/components/notification/_index.scss +78 -0
  202. package/src/scss/components/notification/_variables.scss +3 -0
  203. package/src/scss/components/notification-block/_index.scss +42 -0
  204. package/src/scss/components/popover/_index.scss +64 -0
  205. package/src/scss/components/popover/_variables.scss +1 -0
  206. package/src/scss/components/post-block/_index.scss +101 -0
  207. package/src/scss/components/progress/_index.scss +190 -0
  208. package/src/scss/components/progress/_variables.scss +12 -0
  209. package/src/scss/components/progress-tracker/_index.scss +131 -0
  210. package/src/scss/components/progress-tracker/_variables.scss +2 -0
  211. package/src/scss/components/radio-button/_index.scss +180 -0
  212. package/src/scss/components/radio-button/_mixins.scss +82 -0
  213. package/src/scss/components/select/_index.scss +295 -0
  214. package/src/scss/components/select/_mixins.scss +36 -0
  215. package/src/scss/components/side-navigation/_index.scss +69 -0
  216. package/src/scss/components/side-navigation/_mixins.scss +61 -0
  217. package/src/scss/components/skeleton/_index.scss +143 -0
  218. package/src/scss/components/skeleton/_mixins.scss +9 -0
  219. package/src/scss/components/slider/_index.scss +209 -0
  220. package/src/scss/components/slideshow/_index.scss +171 -0
  221. package/src/scss/components/slideshow/_variables.scss +1 -0
  222. package/src/scss/components/switch/_index.scss +257 -0
  223. package/src/scss/components/switch/_mixins.scss +77 -0
  224. package/src/scss/components/table/_index.scss +138 -0
  225. package/src/scss/components/table/_mixins.scss +115 -0
  226. package/src/scss/components/tabs/_index.scss +111 -0
  227. package/src/scss/components/tabs/_mixins.scss +104 -0
  228. package/src/scss/components/text/_index.scss +29 -0
  229. package/src/scss/components/text-field/_index.scss +323 -0
  230. package/src/scss/components/text-field/_mixins.scss +149 -0
  231. package/src/scss/components/text-field/_variables.scss +2 -0
  232. package/src/scss/components/thumbnail/_index.scss +227 -0
  233. package/src/scss/components/thumbnail/_variables.scss +6 -0
  234. package/src/scss/components/toolbar/_index.scss +38 -0
  235. package/src/scss/components/toolbar/_variables.scss +1 -0
  236. package/src/scss/components/tooltip/_index.scss +91 -0
  237. package/src/scss/components/tooltip/_variables.scss +4 -0
  238. package/src/scss/components/uploader/_index.scss +115 -0
  239. package/src/scss/components/user-block/_index.scss +106 -0
  240. package/src/scss/core/base/_functions.scss +3 -0
  241. package/src/scss/core/base/_helpers.scss +21 -0
  242. package/src/scss/core/base/_index.scss +54 -0
  243. package/src/scss/core/base/_normalize.scss +353 -0
  244. package/src/scss/core/base/_variables.scss +39 -0
  245. package/src/scss/core/color/_functions.scss +7 -0
  246. package/src/scss/core/color/_index.scss +15 -0
  247. package/src/scss/core/color/_variables.scss +4 -0
  248. package/src/scss/core/elevation/_mixins.scss +10 -0
  249. package/src/scss/core/elevation/_variables.scss +7 -0
  250. package/src/scss/core/size/_variables.scss +3 -0
  251. package/src/scss/core/spacing/_index.scss +15 -0
  252. package/src/scss/core/spacing/_variables.scss +22 -0
  253. package/src/scss/core/state/_mixins.scss +127 -0
  254. package/src/scss/core/state/_variables.scss +1 -0
  255. package/src/scss/core/typography/_index.scss +16 -0
  256. package/src/scss/core/typography/_mixins.scss +25 -0
  257. package/src/scss/core/typography/_variables.scss +6 -0
  258. package/src/scss/lumx.scss +69 -0
  259. package/style-dictionary/.eslintignore +1 -0
  260. package/style-dictionary/README.md +19 -0
  261. package/style-dictionary/config/_run.js +12 -0
  262. package/style-dictionary/config/_transform-group.js +16 -0
  263. package/style-dictionary/config/gen-css-variables.js +25 -0
  264. package/style-dictionary/config/gen-scss-variables.js +65 -0
  265. package/style-dictionary/config/gen-ts-variables.js +52 -0
  266. package/style-dictionary/config/utils/_color-attributes.js +24 -0
  267. package/style-dictionary/config/utils/_color-rgba-value.js +22 -0
  268. package/style-dictionary/config/utils/_css-prefer-variable.js +24 -0
  269. package/style-dictionary/config/utils/_genHeader.js +3 -0
  270. package/style-dictionary/config/utils/_lumx-variables.js +12 -0
  271. package/style-dictionary/config/utils/_pickFieldsInTree.js +22 -0
  272. package/style-dictionary/config/utils/_prettier-scss.js +13 -0
  273. package/style-dictionary/config/utils/_prettier-ts.js +13 -0
  274. package/style-dictionary/config/utils/_resolve-structure-alias.js +76 -0
  275. package/style-dictionary/index.js +11 -0
  276. package/style-dictionary/properties/components/button.json +206 -0
  277. package/style-dictionary/properties/components/material.json +64 -0
  278. package/style-dictionary/properties/components/navigation.json +207 -0
  279. package/style-dictionary/properties/components/tabs.json +168 -0
  280. package/style-dictionary/properties/components/text-field.json +167 -0
  281. package/style-dictionary/properties/core/border-radius.json +3 -0
  282. package/style-dictionary/properties/core/color.json +421 -0
  283. package/style-dictionary/properties/core/size.json +11 -0
  284. package/style-dictionary/properties/core/spacing.json +11 -0
  285. package/style-dictionary/properties/core/typography.json +127 -0
  286. package/tsconfig.json +3 -0
  287. package/webpack.config.js +202 -0
  288. package/js/custom-colors.min.js.map +0 -1
  289. package/js/date-picker.min.js.map +0 -1
  290. package/js/utils.min.js.map +0 -1
  291. package/scss/components/progress/_variables.scss +0 -2
@@ -0,0 +1,353 @@
1
+ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
2
+
3
+ /* Document
4
+ ========================================================================== */
5
+
6
+ /**
7
+ * 1. Correct the line height in all browsers.
8
+ * 2. Prevent adjustments of font size after orientation changes in iOS.
9
+ */
10
+
11
+ html {
12
+ line-height: 1.15; /* 1 */
13
+ -webkit-text-size-adjust: 100%; /* 2 */
14
+ }
15
+
16
+ /* Sections
17
+ ========================================================================== */
18
+
19
+ /**
20
+ * Remove the margin in all browsers.
21
+ */
22
+
23
+ body {
24
+ margin: 0;
25
+ }
26
+
27
+ /**
28
+ * Render the `main` element consistently in IE.
29
+ */
30
+
31
+ main {
32
+ display: block;
33
+ }
34
+
35
+ /**
36
+ * Correct the font size and margin on `h1` elements within `section` and
37
+ * `article` contexts in Chrome, Firefox, and Safari.
38
+ */
39
+
40
+ h1 {
41
+ margin: 0.67em 0;
42
+ font-size: 2em;
43
+ }
44
+
45
+ /* Grouping content
46
+ ========================================================================== */
47
+
48
+ /**
49
+ * 1. Add the correct box sizing in Firefox.
50
+ * 2. Show the overflow in Edge and IE.
51
+ */
52
+
53
+ hr {
54
+ overflow: visible; /* 2 */
55
+ height: 0; /* 1 */
56
+ box-sizing: content-box; /* 1 */
57
+ }
58
+
59
+ /**
60
+ * 1. Correct the inheritance and scaling of font size in all browsers.
61
+ * 2. Correct the odd `em` font sizing in all browsers.
62
+ */
63
+
64
+ pre {
65
+ /* stylelint-disable-next-line font-family-no-duplicate-names */
66
+ font-family: monospace, monospace; /* 1 */
67
+ font-size: 1em; /* 2 */
68
+ }
69
+
70
+ /* Text-level semantics
71
+ ========================================================================== */
72
+
73
+ /**
74
+ * Remove the gray background on active links in IE 10.
75
+ */
76
+
77
+ a {
78
+ background-color: transparent;
79
+ }
80
+
81
+ /**
82
+ * 1. Remove the bottom border in Chrome 57-
83
+ * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
84
+ */
85
+
86
+ abbr[title] {
87
+ border-bottom: none; /* 1 */
88
+ text-decoration: underline; /* 2 */
89
+ text-decoration: underline dotted; /* 2 */
90
+ }
91
+
92
+ /**
93
+ * Add the correct font weight in Chrome, Edge, and Safari.
94
+ */
95
+
96
+ b,
97
+ strong {
98
+ font-weight: bolder;
99
+ }
100
+
101
+ /**
102
+ * 1. Correct the inheritance and scaling of font size in all browsers.
103
+ * 2. Correct the odd `em` font sizing in all browsers.
104
+ */
105
+
106
+ code,
107
+ kbd,
108
+ samp {
109
+ /* stylelint-disable-next-line font-family-no-duplicate-names */
110
+ font-family: monospace, monospace; /* 1 */
111
+ font-size: 1em; /* 2 */
112
+ }
113
+
114
+ /**
115
+ * Add the correct font size in all browsers.
116
+ */
117
+
118
+ small {
119
+ font-size: 80%;
120
+ }
121
+
122
+ /**
123
+ * Prevent `sub` and `sup` elements from affecting the line height in
124
+ * all browsers.
125
+ */
126
+
127
+ sub,
128
+ sup {
129
+ position: relative;
130
+ font-size: 75%;
131
+ line-height: 0;
132
+ vertical-align: baseline;
133
+ }
134
+
135
+ sub {
136
+ bottom: -0.25em;
137
+ }
138
+
139
+ sup {
140
+ top: -0.5em;
141
+ }
142
+
143
+ /* Embedded content
144
+ ========================================================================== */
145
+
146
+ /**
147
+ * Remove the border on images inside links in IE 10.
148
+ */
149
+
150
+ img {
151
+ border-style: none;
152
+ }
153
+
154
+ /* Forms
155
+ ========================================================================== */
156
+
157
+ /**
158
+ * 1. Change the font styles in all browsers.
159
+ * 2. Remove the margin in Firefox and Safari.
160
+ */
161
+
162
+ button,
163
+ input,
164
+ optgroup,
165
+ select,
166
+ textarea {
167
+ margin: 0; /* 2 */
168
+ font-family: inherit; /* 1 */
169
+ font-size: 100%; /* 1 */
170
+ line-height: 1.15; /* 1 */
171
+ }
172
+
173
+ /**
174
+ * Show the overflow in IE.
175
+ * 1. Show the overflow in Edge.
176
+ */
177
+
178
+ button,
179
+ input {
180
+ /* 1 */
181
+ overflow: visible;
182
+ }
183
+
184
+ /**
185
+ * Remove the inheritance of text transform in Edge, Firefox, and IE.
186
+ * 1. Remove the inheritance of text transform in Firefox.
187
+ */
188
+
189
+ button,
190
+ select {
191
+ /* 1 */
192
+ text-transform: none;
193
+ }
194
+
195
+ /**
196
+ * Correct the inability to style clickable types in iOS and Safari.
197
+ */
198
+
199
+ button,
200
+ [type='button'],
201
+ [type='reset'],
202
+ [type='submit'] {
203
+ -webkit-appearance: button;
204
+ }
205
+
206
+ /**
207
+ * Remove the inner border and padding in Firefox.
208
+ */
209
+
210
+ button::-moz-focus-inner,
211
+ [type='button']::-moz-focus-inner,
212
+ [type='reset']::-moz-focus-inner,
213
+ [type='submit']::-moz-focus-inner {
214
+ padding: 0;
215
+ border-style: none;
216
+ }
217
+
218
+ /**
219
+ * Restore the focus styles unset by the previous rule.
220
+ */
221
+
222
+ button:-moz-focusring,
223
+ [type='button']:-moz-focusring,
224
+ [type='reset']:-moz-focusring,
225
+ [type='submit']:-moz-focusring {
226
+ outline: 1px dotted ButtonText;
227
+ }
228
+
229
+ /**
230
+ * Correct the padding in Firefox.
231
+ */
232
+
233
+ fieldset {
234
+ padding: 0.35em 0.75em 0.625em;
235
+ }
236
+
237
+ /**
238
+ * 1. Correct the text wrapping in Edge and IE.
239
+ * 2. Correct the color inheritance from `fieldset` elements in IE.
240
+ * 3. Remove the padding so developers are not caught out when they zero out
241
+ * `fieldset` elements in all browsers.
242
+ */
243
+
244
+ legend {
245
+ display: table; /* 1 */
246
+ max-width: 100%; /* 1 */
247
+ box-sizing: border-box; /* 1 */
248
+ padding: 0; /* 3 */
249
+ color: inherit; /* 2 */
250
+ white-space: normal; /* 1 */
251
+ }
252
+
253
+ /**
254
+ * Add the correct vertical alignment in Chrome, Firefox, and Opera.
255
+ */
256
+
257
+ progress {
258
+ vertical-align: baseline;
259
+ }
260
+
261
+ /**
262
+ * Remove the default vertical scrollbar in IE 10+.
263
+ */
264
+
265
+ textarea {
266
+ overflow: auto;
267
+ }
268
+
269
+ /**
270
+ * 1. Add the correct box sizing in IE 10.
271
+ * 2. Remove the padding in IE 10.
272
+ */
273
+
274
+ [type='checkbox'],
275
+ [type='radio'] {
276
+ box-sizing: border-box; /* 1 */
277
+ padding: 0; /* 2 */
278
+ }
279
+
280
+ /**
281
+ * Correct the cursor style of increment and decrement buttons in Chrome.
282
+ */
283
+
284
+ [type='number']::-webkit-inner-spin-button,
285
+ [type='number']::-webkit-outer-spin-button {
286
+ height: auto;
287
+ }
288
+
289
+ /**
290
+ * 1. Correct the odd appearance in Chrome and Safari.
291
+ * 2. Correct the outline style in Safari.
292
+ */
293
+
294
+ [type='search'] {
295
+ -webkit-appearance: textfield; /* 1 */
296
+ outline-offset: -2px; /* 2 */
297
+ }
298
+
299
+ /**
300
+ * Remove the inner padding in Chrome and Safari on macOS.
301
+ */
302
+
303
+ [type='search']::-webkit-search-decoration {
304
+ -webkit-appearance: none;
305
+ }
306
+
307
+ /**
308
+ * 1. Correct the inability to style clickable types in iOS and Safari.
309
+ * 2. Change font properties to `inherit` in Safari.
310
+ */
311
+
312
+ ::-webkit-file-upload-button {
313
+ -webkit-appearance: button; /* 1 */
314
+ font: inherit; /* 2 */
315
+ }
316
+
317
+ /* Interactive
318
+ ========================================================================== */
319
+
320
+ /*
321
+ * Add the correct display in Edge, IE 10+, and Firefox.
322
+ */
323
+
324
+ details {
325
+ display: block;
326
+ }
327
+
328
+ /*
329
+ * Add the correct display in all browsers.
330
+ */
331
+
332
+ summary {
333
+ display: list-item;
334
+ }
335
+
336
+ /* Misc
337
+ ========================================================================== */
338
+
339
+ /**
340
+ * Add the correct display in IE 10+.
341
+ */
342
+
343
+ template {
344
+ display: none;
345
+ }
346
+
347
+ /**
348
+ * Add the correct display in IE 10.
349
+ */
350
+
351
+ [hidden] {
352
+ display: none;
353
+ }
@@ -0,0 +1,39 @@
1
+ $lumx-base-prefix: "lumx";
2
+ $lumx-base-constants: (
3
+ "emphasis": (
4
+ "HIGH": "emphasis-high",
5
+ "MEDIUM": "emphasis-medium",
6
+ "LOW": "emphasis-low",
7
+ "SELECTED": "emphasis-selected",
8
+ ),
9
+ "position": (
10
+ "TOP": "position-top",
11
+ "RIGHT": "position-right",
12
+ "BOTTOM": "position-bottom",
13
+ "LEFT": "position-left",
14
+ "CENTER": "position-center",
15
+ ),
16
+ "size": (
17
+ "XXS": "xxs",
18
+ "XS": "xs",
19
+ "S": "s",
20
+ "M": "m",
21
+ "L": "l",
22
+ "XL": "xl",
23
+ "XXL": "xxl",
24
+ ),
25
+ "state": (
26
+ "DEFAULT": "state-default",
27
+ "HOVER": "state-hover",
28
+ "ACTIVE": "state-active",
29
+ "FOCUS": "state-focus",
30
+ ),
31
+ "theme": (
32
+ "LIGHT": "theme-light",
33
+ "DARK": "theme-dark",
34
+ ),
35
+ );
36
+ $lumx-base-layers: (
37
+ "high": 999,
38
+ "higher": 9999,
39
+ );
@@ -0,0 +1,7 @@
1
+ @function lumx-color-variant($color, $variant) {
2
+ @if map-has-key($lumx-color-palette, $color) {
3
+ @return var(--lumx-color-#{$color}-#{$variant});
4
+ } @else {
5
+ @return var(--lumx-color-dark-N);
6
+ }
7
+ }
@@ -0,0 +1,15 @@
1
+ /* ==========================================================================
2
+ Color (font & background)
3
+ ========================================================================== */
4
+
5
+ @each $color-key, $color in $lumx-color-palette {
6
+ @each $color-variant in $lumx-color-variants {
7
+ .#{$lumx-base-prefix}-color-background-#{$color-key}-#{$color-variant} {
8
+ background-color: lumx-color-variant($color-key, $color-variant);
9
+ }
10
+
11
+ .#{$lumx-base-prefix}-color-font-#{$color-key}-#{$color-variant} {
12
+ color: lumx-color-variant($color-key, $color-variant);
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,4 @@
1
+ @use "sass:map";
2
+
3
+ $lumx-color-palette: map.get($lumx-design-tokens, "color") !default;
4
+ $lumx-color-variants: ("D2", "D1", "N", "L1", "L2", "L3", "L4", "L5", "L6");
@@ -0,0 +1,10 @@
1
+ @use "sass:map";
2
+ @use "sass:string";
3
+
4
+ @mixin lumx-elevation($elevation, $variant: "L4") {
5
+ @if $elevation == 0 {
6
+ box-shadow: none;
7
+ } @else {
8
+ box-shadow: string.unquote(map.get($lumx-elevation-shadows, $elevation)) lumx-color-variant("dark", $variant);
9
+ }
10
+ }
@@ -0,0 +1,7 @@
1
+ $lumx-elevation-shadows: (
2
+ 1: "0 0 2px 0",
3
+ 2: "0 1px 4px 0",
4
+ 3: "0 2px 8px 0",
5
+ 4: "0 4px 16px 0",
6
+ 5: "0 8px 32px 0",
7
+ );
@@ -0,0 +1,3 @@
1
+ @use "sass:map";
2
+
3
+ $lumx-sizes: map.get($lumx-design-tokens, "size");
@@ -0,0 +1,15 @@
1
+ /* ==========================================================================
2
+ Spacing
3
+ ========================================================================== */
4
+
5
+ @each $property-namespace, $property in $lumx-spacing-properties {
6
+ @each $direction-namespace, $direction-rules in $lumx-spacing-directions {
7
+ @each $size-namespace, $size in $lumx-spacing-sizes {
8
+ .#{$lumx-base-prefix}-spacing-#{$property-namespace}#{$direction-namespace}#{$size-namespace} {
9
+ @each $direction in $direction-rules {
10
+ #{$property}#{$direction}: $size !important;
11
+ }
12
+ }
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,22 @@
1
+ $lumx-spacing-unit: $lumx-spacing-unit-regular;
2
+ $lumx-spacing-directions: (
3
+ null: null,
4
+ "-top": "-top",
5
+ "-right": "-right",
6
+ "-bottom": "-bottom",
7
+ "-left": "-left",
8
+ "-horizontal": "-left" "-right",
9
+ "-vertical": "-top" "-bottom",
10
+ );
11
+ $lumx-spacing-properties: (
12
+ "padding": "padding",
13
+ "margin": "margin",
14
+ );
15
+ $lumx-spacing-sizes: (
16
+ null: $lumx-spacing-unit-regular,
17
+ "-tiny": $lumx-spacing-unit-tiny,
18
+ "-regular": $lumx-spacing-unit-regular,
19
+ "-big": $lumx-spacing-unit-big,
20
+ "-huge": $lumx-spacing-unit-huge,
21
+ "-none": 0,
22
+ );
@@ -0,0 +1,127 @@
1
+ @mixin lumx-state-high($state, $color, $theme) {
2
+ @if $state == lumx-base-const("state", "DEFAULT") {
3
+ @if $theme == lumx-base-const("theme", "LIGHT") {
4
+ background-color: lumx-color-variant($color, "N");
5
+
6
+ @if $color == "yellow" {
7
+ color: lumx-color-variant("dark", "L1");
8
+ } @else {
9
+ color: lumx-color-variant("light", "N");
10
+ }
11
+ } @else if $theme == lumx-base-const("theme", "DARK") {
12
+ color: lumx-color-variant($color, "N");
13
+ background-color: lumx-color-variant("light", "N");
14
+ }
15
+ } @else if $state == lumx-base-const("state", "HOVER") {
16
+ @if $theme == lumx-base-const("theme", "LIGHT") {
17
+ background-color: lumx-color-variant($color, "D1");
18
+ } @else if $theme == lumx-base-const("theme", "DARK") {
19
+ background-color: lumx-color-variant("light", "L1");
20
+ }
21
+ } @else if $state == lumx-base-const("state", "ACTIVE") {
22
+ @if $theme == lumx-base-const("theme", "LIGHT") {
23
+ background-color: lumx-color-variant($color, "D2");
24
+ } @else if $theme == lumx-base-const("theme", "DARK") {
25
+ background-color: lumx-color-variant("light", "L2");
26
+ }
27
+ } @else if $state == lumx-base-const("state", "FOCUS") {
28
+ outline-offset: 2px;
29
+
30
+ @if $theme == lumx-base-const("theme", "LIGHT") {
31
+ outline: 2px solid lumx-color-variant("dark", "N");
32
+ } @else if $theme == lumx-base-const("theme", "DARK") {
33
+ outline: 2px solid lumx-color-variant("light", "N");
34
+ }
35
+ }
36
+ }
37
+
38
+ @mixin lumx-state-medium($state, $color) {
39
+ @if $state == lumx-base-const("state", "DEFAULT") {
40
+ background-color: lumx-color-variant($color, "L5");
41
+
42
+ @if $color == "yellow" {
43
+ color: lumx-color-variant("dark", "L1");
44
+ } @else {
45
+ color: lumx-color-variant($color, "N");
46
+ }
47
+ } @else if $state == lumx-base-const("state", "HOVER") {
48
+ background-color: lumx-color-variant($color, "L4");
49
+ } @else if $state == lumx-base-const("state", "ACTIVE") {
50
+ background-color: lumx-color-variant($color, "L3");
51
+ } @else if $state == lumx-base-const("state", "FOCUS") {
52
+ outline: 2px solid lumx-color-variant($color, "N");
53
+ outline-offset: 2px;
54
+ }
55
+ }
56
+
57
+ @mixin lumx-state-as-selected($state, $theme) {
58
+ @if $theme == lumx-base-const("theme", "LIGHT") {
59
+ @if $state == lumx-base-const("state", "DEFAULT") {
60
+ color: lumx-color-variant("primary", "D2");
61
+ background-color: lumx-color-variant("primary", "L5");
62
+ } @else if $state == lumx-base-const("state", "HOVER") {
63
+ background-color: lumx-color-variant("primary", "L4");
64
+ } @else if $state == lumx-base-const("state", "ACTIVE") {
65
+ background-color: lumx-color-variant("primary", "L3");
66
+ } @else if $state == lumx-base-const("state", "FOCUS") {
67
+ outline: 2px solid lumx-color-variant("dark", "N");
68
+ outline-offset: 2px;
69
+ }
70
+ } @else if $theme == lumx-base-const("theme", "DARK") {
71
+ @if $state == lumx-base-const("state", "DEFAULT") {
72
+ color: lumx-color-variant("light", "N");
73
+ background-color: lumx-color-variant("light", "L3");
74
+ } @else if $state == lumx-base-const("state", "HOVER") {
75
+ background-color: lumx-color-variant("light", "L4");
76
+ } @else if $state == lumx-base-const("state", "ACTIVE") {
77
+ background-color: lumx-color-variant("light", "L5");
78
+ } @else if $state == lumx-base-const("state", "FOCUS") {
79
+ outline: 2px solid lumx-color-variant("light", "N");
80
+ outline-offset: 2px;
81
+ }
82
+ }
83
+ }
84
+
85
+ @mixin lumx-state-low($state, $color) {
86
+ @if $state == lumx-base-const("state", "DEFAULT") {
87
+ color: lumx-color-variant($color, "N");
88
+ background-color: transparent;
89
+ } @else if $state == lumx-base-const("state", "HOVER") {
90
+ background-color: lumx-color-variant($color, "L5");
91
+ } @else if $state == lumx-base-const("state", "ACTIVE") {
92
+ background-color: lumx-color-variant($color, "L4");
93
+ } @else if $state == lumx-base-const("state", "FOCUS") {
94
+ outline: 2px solid lumx-color-variant($color, "N");
95
+ outline-offset: 2px;
96
+ }
97
+ }
98
+
99
+ @mixin lumx-state-disabled-text($theme) {
100
+ pointer-events: none;
101
+
102
+ @if $theme == lumx-base-const("theme", "LIGHT") {
103
+ color: lumx-color-variant("dark", "L3");
104
+ } @else if $theme == lumx-base-const("theme", "DARK") {
105
+ color: lumx-color-variant("light", "L3");
106
+ }
107
+ }
108
+
109
+ @mixin lumx-state-disabled-input() {
110
+ pointer-events: none;
111
+ opacity: 0.5;
112
+ }
113
+
114
+ @mixin lumx-state($state, $emphasis, $color, $theme: null) {
115
+ @if $emphasis == lumx-base-const("emphasis", "HIGH") {
116
+ @include lumx-state-high($state, $color, $theme);
117
+ } @else if $emphasis == lumx-base-const("emphasis", "MEDIUM") or $emphasis == lumx-base-const("emphasis", "SELECTED") {
118
+ @include lumx-state-medium($state, $color);
119
+ } @else if $emphasis == lumx-base-const("emphasis", "LOW") {
120
+ @include lumx-state-low($state, $color);
121
+ }
122
+ }
123
+
124
+ @mixin lumx-state-transition() {
125
+ transition-duration: $lumx-state-transition-duration;
126
+ transition-property: background-color, box-shadow, color;
127
+ }
@@ -0,0 +1 @@
1
+ $lumx-state-transition-duration: 150ms;
@@ -0,0 +1,16 @@
1
+ /* ==========================================================================
2
+ Typography
3
+ ========================================================================== */
4
+
5
+ @each $key, $style in $lumx-typography-interface {
6
+ .#{$lumx-base-prefix}-typography-#{$key},
7
+ .#{$lumx-base-prefix}-typography-interface-#{$key} {
8
+ @include lumx-typography($key);
9
+ }
10
+ }
11
+
12
+ @each $key, $style in $lumx-typography-custom {
13
+ .#{$lumx-base-prefix}-typography-custom-#{$key} {
14
+ @include lumx-typography($key, "custom");
15
+ }
16
+ }
@@ -0,0 +1,25 @@
1
+ @use "sass:map";
2
+
3
+ @mixin lumx-typography-base() {
4
+ font-family: var(--lumx-typography-font-family);
5
+ -moz-osx-font-smoothing: grayscale;
6
+ -webkit-font-smoothing: antialiased;
7
+ }
8
+
9
+ @mixin lumx-typography($key, $type: "interface") {
10
+ @if $type == "custom" {
11
+ font-family: var(--lumx-typography-custom-#{$key}-font-family);
12
+ font-size: var(--lumx-typography-custom-#{$key}-font-size);
13
+ font-style: var(--lumx-typography-custom-#{$key}-font-style);
14
+ font-weight: var(--lumx-typography-custom-#{$key}-font-weight);
15
+ line-height: var(--lumx-typography-custom-#{$key}-line-height);
16
+ } @else if $type == "interface" {
17
+ font-size: map.get(map.get($lumx-typography-interface, $key), "font-size");
18
+ font-weight: var(--lumx-typography-interface-#{$key}-font-weight);
19
+ line-height: map.get(map.get($lumx-typography-interface, $key), "line-height");
20
+ }
21
+
22
+ @if $key == "overline" {
23
+ text-transform: uppercase;
24
+ }
25
+ }
@@ -0,0 +1,6 @@
1
+ @use "sass:map";
2
+
3
+ $lumx-typography-default-font-size: 16px;
4
+ $lumx-typography-default-line-height: 24px;
5
+ $lumx-typography-interface: map.get(map.get($lumx-design-tokens, "typography"), "interface");
6
+ $lumx-typography-custom: map.get(map.get($lumx-design-tokens, "typography"), "custom");