@universal-material/web 3.0.9 → 3.0.11

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 (364) hide show
  1. package/button/button-base.d.ts +43 -0
  2. package/button/button-base.d.ts.map +1 -0
  3. package/button/button-base.js +152 -0
  4. package/button/button-base.js.map +1 -0
  5. package/button/button-base.styles.d.ts +2 -0
  6. package/button/button-base.styles.d.ts.map +1 -0
  7. package/button/button-base.styles.js +75 -0
  8. package/button/button-base.styles.js.map +1 -0
  9. package/button/button-set.d.ts +20 -0
  10. package/button/button-set.d.ts.map +1 -0
  11. package/button/button-set.js +38 -0
  12. package/button/button-set.js.map +1 -0
  13. package/button/button-set.styles.d.ts +2 -0
  14. package/button/button-set.styles.d.ts.map +1 -0
  15. package/button/button-set.styles.js +39 -0
  16. package/button/button-set.styles.js.map +1 -0
  17. package/button/button.d.ts +34 -0
  18. package/button/button.d.ts.map +1 -0
  19. package/button/button.js +64 -0
  20. package/button/button.js.map +1 -0
  21. package/button/button.styles.d.ts +2 -0
  22. package/button/button.styles.d.ts.map +1 -0
  23. package/button/button.styles.js +96 -0
  24. package/button/button.styles.js.map +1 -0
  25. package/button/fab.d.ts +31 -0
  26. package/button/fab.d.ts.map +1 -0
  27. package/button/fab.js +63 -0
  28. package/button/fab.js.map +1 -0
  29. package/button/fab.styles.d.ts +2 -0
  30. package/button/fab.styles.d.ts.map +1 -0
  31. package/button/fab.styles.js +89 -0
  32. package/button/fab.styles.js.map +1 -0
  33. package/button/icon-button.d.ts +35 -0
  34. package/button/icon-button.d.ts.map +1 -0
  35. package/button/icon-button.js +79 -0
  36. package/button/icon-button.js.map +1 -0
  37. package/button/icon-button.styles.d.ts +2 -0
  38. package/button/icon-button.styles.d.ts.map +1 -0
  39. package/button/icon-button.styles.js +70 -0
  40. package/button/icon-button.styles.js.map +1 -0
  41. package/card/card-content.d.ts +13 -0
  42. package/card/card-content.d.ts.map +1 -0
  43. package/card/card-content.js +44 -0
  44. package/card/card-content.js.map +1 -0
  45. package/card/card-content.styles.d.ts +2 -0
  46. package/card/card-content.styles.d.ts.map +1 -0
  47. package/card/card-content.styles.js +15 -0
  48. package/card/card-content.styles.js.map +1 -0
  49. package/card/card-media.d.ts +12 -0
  50. package/card/card-media.d.ts.map +1 -0
  51. package/card/card-media.js +29 -0
  52. package/card/card-media.js.map +1 -0
  53. package/card/card-media.styles.d.ts +2 -0
  54. package/card/card-media.styles.d.ts.map +1 -0
  55. package/card/card-media.styles.js +13 -0
  56. package/card/card-media.styles.js.map +1 -0
  57. package/card/card.d.ts +19 -0
  58. package/card/card.d.ts.map +1 -0
  59. package/card/card.js +40 -0
  60. package/card/card.js.map +1 -0
  61. package/card/card.styles.d.ts +2 -0
  62. package/card/card.styles.d.ts.map +1 -0
  63. package/card/card.styles.js +28 -0
  64. package/card/card.styles.js.map +1 -0
  65. package/checkbox/checkbox.d.ts +16 -0
  66. package/checkbox/checkbox.d.ts.map +1 -0
  67. package/checkbox/checkbox.js +75 -0
  68. package/checkbox/checkbox.js.map +1 -0
  69. package/container/container.d.ts +13 -0
  70. package/container/container.d.ts.map +1 -0
  71. package/container/container.js +23 -0
  72. package/container/container.js.map +1 -0
  73. package/container/container.styles.d.ts +2 -0
  74. package/container/container.styles.d.ts.map +1 -0
  75. package/container/container.styles.js +43 -0
  76. package/container/container.styles.js.map +1 -0
  77. package/custom-elements.json +3706 -0
  78. package/divider/divider.d.ts +14 -0
  79. package/divider/divider.d.ts.map +1 -0
  80. package/divider/divider.js +27 -0
  81. package/divider/divider.js.map +1 -0
  82. package/divider/divider.styles.d.ts +2 -0
  83. package/divider/divider.styles.d.ts.map +1 -0
  84. package/divider/divider.styles.js +15 -0
  85. package/divider/divider.styles.js.map +1 -0
  86. package/elevation/elevation.d.ts +11 -0
  87. package/elevation/elevation.d.ts.map +1 -0
  88. package/elevation/elevation.js +21 -0
  89. package/elevation/elevation.js.map +1 -0
  90. package/elevation/elevation.styles.d.ts +2 -0
  91. package/elevation/elevation.styles.d.ts.map +1 -0
  92. package/elevation/elevation.styles.js +28 -0
  93. package/elevation/elevation.styles.js.map +1 -0
  94. package/index.d.ts +27 -0
  95. package/index.d.ts.map +1 -0
  96. package/{src/index.ts → index.js} +1 -1
  97. package/index.js.map +1 -0
  98. package/package.json +1 -1
  99. package/ripple/ripple.d.ts +25 -0
  100. package/ripple/ripple.d.ts.map +1 -0
  101. package/ripple/ripple.js +119 -0
  102. package/ripple/ripple.js.map +1 -0
  103. package/ripple/ripple.styles.d.ts +2 -0
  104. package/ripple/ripple.styles.d.ts.map +1 -0
  105. package/ripple/ripple.styles.js +74 -0
  106. package/ripple/ripple.styles.js.map +1 -0
  107. package/shared/base.styles.d.ts +2 -0
  108. package/shared/base.styles.d.ts.map +1 -0
  109. package/shared/base.styles.js +9 -0
  110. package/shared/base.styles.js.map +1 -0
  111. package/table/table-body.d.ts +11 -0
  112. package/table/table-body.d.ts.map +1 -0
  113. package/table/table-body.js +21 -0
  114. package/table/table-body.js.map +1 -0
  115. package/table/table-body.styles.d.ts +2 -0
  116. package/table/table-body.styles.d.ts.map +1 -0
  117. package/table/table-body.styles.js +11 -0
  118. package/table/table-body.styles.js.map +1 -0
  119. package/table/table-cell.d.ts +11 -0
  120. package/table/table-cell.d.ts.map +1 -0
  121. package/table/table-cell.js +21 -0
  122. package/table/table-cell.js.map +1 -0
  123. package/table/table-cell.styles.d.ts +2 -0
  124. package/table/table-cell.styles.d.ts.map +1 -0
  125. package/table/table-cell.styles.js +11 -0
  126. package/table/table-cell.styles.js.map +1 -0
  127. package/table/table-head.d.ts +11 -0
  128. package/table/table-head.d.ts.map +1 -0
  129. package/table/table-head.js +21 -0
  130. package/table/table-head.js.map +1 -0
  131. package/table/table-head.styles.d.ts +2 -0
  132. package/table/table-head.styles.d.ts.map +1 -0
  133. package/table/table-head.styles.js +11 -0
  134. package/table/table-head.styles.js.map +1 -0
  135. package/table/table-header-cell.d.ts +11 -0
  136. package/table/table-header-cell.d.ts.map +1 -0
  137. package/table/table-header-cell.js +21 -0
  138. package/table/table-header-cell.js.map +1 -0
  139. package/table/table-header-cell.styles.d.ts +2 -0
  140. package/table/table-header-cell.styles.d.ts.map +1 -0
  141. package/table/table-header-cell.styles.js +12 -0
  142. package/table/table-header-cell.styles.js.map +1 -0
  143. package/table/table-row.d.ts +11 -0
  144. package/table/table-row.d.ts.map +1 -0
  145. package/table/table-row.js +21 -0
  146. package/table/table-row.js.map +1 -0
  147. package/table/table-row.styles.d.ts +2 -0
  148. package/table/table-row.styles.d.ts.map +1 -0
  149. package/table/table-row.styles.js +7 -0
  150. package/table/table-row.styles.js.map +1 -0
  151. package/table/table.d.ts +16 -0
  152. package/table/table.d.ts.map +1 -0
  153. package/{src/table/table.ts → table/table.js} +6 -15
  154. package/table/table.js.map +1 -0
  155. package/table/table.styles.d.ts +2 -0
  156. package/table/table.styles.d.ts.map +1 -0
  157. package/table/table.styles.js +16 -0
  158. package/table/table.styles.js.map +1 -0
  159. package/theme/color.d.ts +7 -0
  160. package/theme/color.d.ts.map +1 -0
  161. package/theme/color.js +2 -0
  162. package/theme/color.js.map +1 -0
  163. package/theme/css-var-builder.d.ts +9 -0
  164. package/theme/css-var-builder.d.ts.map +1 -0
  165. package/theme/css-var-builder.js +25 -0
  166. package/theme/css-var-builder.js.map +1 -0
  167. package/theme/index.d.ts +2 -0
  168. package/theme/index.d.ts.map +1 -0
  169. package/{src/theme/index.ts → theme/index.js} +1 -0
  170. package/theme/index.js.map +1 -0
  171. package/theme/neutral-colors.d.ts +4 -0
  172. package/theme/neutral-colors.d.ts.map +1 -0
  173. package/theme/neutral-colors.js +19 -0
  174. package/theme/neutral-colors.js.map +1 -0
  175. package/theme/rgb-color.d.ts +9 -0
  176. package/theme/rgb-color.d.ts.map +1 -0
  177. package/theme/rgb-color.js +13 -0
  178. package/theme/rgb-color.js.map +1 -0
  179. package/theme/theme-builder.d.ts +27 -0
  180. package/theme/theme-builder.d.ts.map +1 -0
  181. package/theme/theme-builder.js +146 -0
  182. package/theme/theme-builder.js.map +1 -0
  183. package/{src/theme/theme-color.ts → theme/theme-color.d.ts} +2 -3
  184. package/theme/theme-color.d.ts.map +1 -0
  185. package/theme/theme-color.js +2 -0
  186. package/theme/theme-color.js.map +1 -0
  187. package/.editorconfig +0 -8
  188. package/.eleventy.cjs +0 -21
  189. package/.eslintignore +0 -6
  190. package/.eslintrc.json +0 -98
  191. package/.prettierrc.json +0 -7
  192. package/.vscode/extensions.json +0 -9
  193. package/CHANGELOG.md +0 -98
  194. package/LICENSE +0 -28
  195. package/docs/.nojekyll +0 -0
  196. package/docs/api/index.html +0 -149
  197. package/docs/docs.css +0 -185
  198. package/docs/examples/index.html +0 -75
  199. package/docs/examples/name-property/index.html +0 -65
  200. package/docs/index.html +0 -75
  201. package/docs/install/index.html +0 -53
  202. package/docs/prism-okaidia.css +0 -123
  203. package/docs/src/_api-section.pug +0 -27
  204. package/docs/src/_layout.pug +0 -182
  205. package/docs/src/components/button-set/alignment.html +0 -29
  206. package/docs/src/components/button-set/stack.html +0 -5
  207. package/docs/src/components/button-set/usage.html +0 -35
  208. package/docs/src/components/button-set.pug +0 -16
  209. package/docs/src/components/cards/card-media.html +0 -39
  210. package/docs/src/components/cards/card-with-actions.html +0 -38
  211. package/docs/src/components/cards/simple-card.html +0 -3
  212. package/docs/src/components/cards.pug +0 -15
  213. package/docs/src/components/checkbox/usage.html +0 -33
  214. package/docs/src/components/checkbox.pug +0 -7
  215. package/docs/src/components/chips/chip-input.html +0 -73
  216. package/docs/src/components/chips/default-chips.html +0 -25
  217. package/docs/src/components/chips/elevated-chips.html +0 -25
  218. package/docs/src/components/chips/selected-chips.html +0 -50
  219. package/docs/src/components/chips.pug +0 -16
  220. package/docs/src/components/common-buttons/anchor-buttons.html +0 -6
  221. package/docs/src/components/common-buttons/buttons-icons.html +0 -24
  222. package/docs/src/components/common-buttons/buttons-trailing-icons.html +0 -25
  223. package/docs/src/components/common-buttons/buttons-variants.html +0 -6
  224. package/docs/src/components/common-buttons/filled-colors.html +0 -4
  225. package/docs/src/components/common-buttons.pug +0 -22
  226. package/docs/src/components/data-tables/simple-table.html +0 -47
  227. package/docs/src/components/data-tables/table-footer.html +0 -59
  228. package/docs/src/components/data-tables/table-header.html +0 -43
  229. package/docs/src/components/data-tables.pug +0 -15
  230. package/docs/src/components/datepicker.pug +0 -133
  231. package/docs/src/components/dialogs/example.html +0 -44
  232. package/docs/src/components/dialogs.pug +0 -19
  233. package/docs/src/components/dividers/no-margin.html +0 -7
  234. package/docs/src/components/dividers/usage.html +0 -7
  235. package/docs/src/components/dividers.pug +0 -13
  236. package/docs/src/components/dropdown-menus/down-end.html +0 -10
  237. package/docs/src/components/dropdown-menus/down-left.html +0 -10
  238. package/docs/src/components/dropdown-menus/down-right.html +0 -10
  239. package/docs/src/components/dropdown-menus/down-start.html +0 -10
  240. package/docs/src/components/dropdown-menus/down.html +0 -10
  241. package/docs/src/components/dropdown-menus/up-end.html +0 -10
  242. package/docs/src/components/dropdown-menus/up-left.html +0 -10
  243. package/docs/src/components/dropdown-menus/up-right.html +0 -10
  244. package/docs/src/components/dropdown-menus/up-start.html +0 -10
  245. package/docs/src/components/dropdown-menus/up.html +0 -10
  246. package/docs/src/components/expansion-panel.pug +0 -33
  247. package/docs/src/components/fab/button-colors.html +0 -18
  248. package/docs/src/components/fab/button-sizes.html +0 -11
  249. package/docs/src/components/fab/extended-buttons.html +0 -18
  250. package/docs/src/components/fab/floating-action-area.html +0 -5
  251. package/docs/src/components/fab/floating-menu.html +0 -10
  252. package/docs/src/components/fab/lowered-buttons.html +0 -6
  253. package/docs/src/components/fab.pug +0 -25
  254. package/docs/src/components/icon-buttons/anchor-buttons.html +0 -15
  255. package/docs/src/components/icon-buttons/buttons-variants.html +0 -15
  256. package/docs/src/components/icon-buttons/toggle-buttons-manual.html +0 -44
  257. package/docs/src/components/icon-buttons/toggle-buttons.html +0 -48
  258. package/docs/src/components/icon-buttons.pug +0 -18
  259. package/docs/src/components/lists/list-avatars.html +0 -14
  260. package/docs/src/components/lists/list-custom-dividers.html +0 -23
  261. package/docs/src/components/lists/list-dividers.html +0 -17
  262. package/docs/src/components/lists/list-dynamic.html +0 -26
  263. package/docs/src/components/lists/list-hover.html +0 -17
  264. package/docs/src/components/lists/list-icons.html +0 -17
  265. package/docs/src/components/lists/list-indexed.html +0 -123
  266. package/docs/src/components/lists/list-sections.html +0 -16
  267. package/docs/src/components/lists/list-three-lines.html +0 -20
  268. package/docs/src/components/lists/list-two-lines.html +0 -20
  269. package/docs/src/components/lists/list-with-action.html +0 -26
  270. package/docs/src/components/lists/list-with-activated-item.html +0 -17
  271. package/docs/src/components/lists/simple-list.html +0 -17
  272. package/docs/src/components/lists.pug +0 -94
  273. package/docs/src/components/menus.pug +0 -55
  274. package/docs/src/components/progress/circular-progress.html +0 -13
  275. package/docs/src/components/progress/determinate-progress.html +0 -3
  276. package/docs/src/components/progress/indeterminate-progress.html +0 -3
  277. package/docs/src/components/progress/progress-color.html +0 -3
  278. package/docs/src/components/progress.pug +0 -18
  279. package/docs/src/components/ripple/usage.html +0 -9
  280. package/docs/src/components/ripple.pug +0 -10
  281. package/docs/src/components/selection-controls/checkbox.html +0 -22
  282. package/docs/src/components/selection-controls/radio-button.html +0 -36
  283. package/docs/src/components/selection-controls/switch.html +0 -12
  284. package/docs/src/components/selection-controls.pug +0 -13
  285. package/docs/src/components/sliders/example.html +0 -42
  286. package/docs/src/components/sliders.pug +0 -7
  287. package/docs/src/components/snackbar/example.html +0 -35
  288. package/docs/src/components/snackbars.pug +0 -21
  289. package/docs/src/components/steppers.pug +0 -57
  290. package/docs/src/components/tabs/example.html +0 -45
  291. package/docs/src/components/tabs.pug +0 -8
  292. package/docs/src/components/text-fields.pug +0 -88
  293. package/docs/src/components/toolbars/simple-toolbar.html +0 -33
  294. package/docs/src/components/toolbars.pug +0 -7
  295. package/docs/src/content/typography/example.html +0 -15
  296. package/docs/src/content/typography.pug +0 -8
  297. package/docs/src/css/docs.scss +0 -189
  298. package/docs/src/index.pug +0 -10
  299. package/docs/src/js/docs.js +0 -161
  300. package/docs/src/js/universal-material.js +0 -757
  301. package/docs/src/js/universal-material.js.map +0 -1
  302. package/docs/src/js/universal-material.min.js +0 -17
  303. package/docs/src/js/universal-material.min.js.map +0 -1
  304. package/docs/src/layout/grid.pug +0 -15
  305. package/docs/src/utilities/background-colors/common-colors.html +0 -7
  306. package/docs/src/utilities/background-colors/theme-colors.html +0 -16
  307. package/docs/src/utilities/background-colors.pug +0 -10
  308. package/docs/src/utilities/text-and-background-colors/common-colors.html +0 -80
  309. package/docs/src/utilities/text-and-background-colors/theme-colors.html +0 -208
  310. package/docs/src/utilities/text-and-background-colors.pug +0 -10
  311. package/docs/src/utilities/text-colors/common-colors.html +0 -12
  312. package/docs/src/utilities/text-colors/emphasis-colors.html +0 -26
  313. package/docs/src/utilities/text-colors/theme-colors.html +0 -37
  314. package/docs/src/utilities/text-colors.pug +0 -13
  315. package/gulpfile.js +0 -225
  316. package/index.html +0 -11
  317. package/rollup.config.js +0 -42
  318. package/src/_utils.scss +0 -20
  319. package/src/_variables.scss +0 -68
  320. package/src/button/button-base.styles.scss +0 -75
  321. package/src/button/button-base.ts +0 -147
  322. package/src/button/button-set.styles.scss +0 -35
  323. package/src/button/button-set.ts +0 -33
  324. package/src/button/button.styles.scss +0 -97
  325. package/src/button/button.ts +0 -64
  326. package/src/button/fab.styles.scss +0 -90
  327. package/src/button/fab.ts +0 -55
  328. package/src/button/icon-button.styles.scss +0 -74
  329. package/src/button/icon-button.ts +0 -72
  330. package/src/card/card-content.styles.scss +0 -11
  331. package/src/card/card-content.ts +0 -45
  332. package/src/card/card-media.styles.scss +0 -9
  333. package/src/card/card-media.ts +0 -24
  334. package/src/card/card.styles.scss +0 -27
  335. package/src/card/card.ts +0 -37
  336. package/src/checkbox/checkbox.ts +0 -77
  337. package/src/container/container.styles.scss +0 -39
  338. package/src/container/container.ts +0 -24
  339. package/src/divider/divider.styles.scss +0 -13
  340. package/src/divider/divider.ts +0 -21
  341. package/src/elevation/elevation.styles.scss +0 -31
  342. package/src/elevation/elevation.ts +0 -17
  343. package/src/ripple/ripple.styles.scss +0 -80
  344. package/src/ripple/ripple.ts +0 -150
  345. package/src/shared/base.styles.scss +0 -5
  346. package/src/table/table-body.styles.scss +0 -9
  347. package/src/table/table-body.ts +0 -21
  348. package/src/table/table-cell.styles.scss +0 -9
  349. package/src/table/table-cell.ts +0 -21
  350. package/src/table/table-head.styles.scss +0 -9
  351. package/src/table/table-head.ts +0 -21
  352. package/src/table/table-header-cell.styles.scss +0 -10
  353. package/src/table/table-header-cell.ts +0 -21
  354. package/src/table/table-row.styles.scss +0 -3
  355. package/src/table/table-row.ts +0 -21
  356. package/src/table/table.styles.scss +0 -12
  357. package/src/theme/color.ts +0 -6
  358. package/src/theme/css-var-builder.ts +0 -36
  359. package/src/theme/neutral-colors.ts +0 -21
  360. package/src/theme/rgb-color.ts +0 -19
  361. package/src/theme/theme-builder.ts +0 -201
  362. package/tsconfig.json +0 -36
  363. package/web-dev-server.config.js +0 -25
  364. package/web-test-runner.config.js +0 -120
@@ -1,201 +0,0 @@
1
- import { argbFromHex, CorePalette, TonalPalette } from '@material/material-color-utilities';
2
-
3
- import { Color } from './color.js';
4
- import { CssVarBuilder } from './css-var-builder.js';
5
- import { neutralColors, neutralVariantColors } from './neutral-colors.js';
6
- import { ThemeColor } from './theme-color.js';
7
-
8
- function getCss(selector: string, content: string): string {
9
- return `${selector} {
10
- ${content}}`;
11
- }
12
-
13
- export class ThemeBuilder {
14
- cssClass: string | null;
15
- colors: ThemeColor[] = [];
16
- commonColors: ThemeColor[] = [];
17
- neutralColorPalette!: TonalPalette;
18
- neutralVariantColorPalette!: TonalPalette;
19
-
20
- private partial = false;
21
-
22
- private constructor() {
23
- this.cssClass = null;
24
- }
25
-
26
- static create(primaryColorHex: string): ThemeBuilder {
27
- return new ThemeBuilder()
28
- .addColorFromHex('primary', primaryColorHex);
29
- }
30
-
31
- static createPartial(): ThemeBuilder {
32
- const themeBuilder = new ThemeBuilder();
33
- themeBuilder.partial = true;
34
-
35
- return themeBuilder;
36
- }
37
-
38
- addColorFromHex(name: string, hex: string): ThemeBuilder {
39
- const palette = TonalPalette.fromInt(argbFromHex(hex));
40
-
41
- this.addColorFromPalette(name, palette);
42
- return this;
43
- }
44
-
45
- addColorFromPalette(name: string, palette: TonalPalette): ThemeBuilder {
46
- this.colors.push({name, lightTone: 40, darkTone: 80, tonalPalette: palette});
47
- this.colors.push({name: `on-${name}`, lightTone: 100, darkTone: 20, tonalPalette: palette});
48
- this.colors.push({name: `${name}-container`, lightTone: 90, darkTone: 30, tonalPalette: palette});
49
- this.colors.push({name: `on-${name}-container`, lightTone: 10, darkTone: 90, tonalPalette: palette});
50
-
51
- this.colors.push({name: `${name}-fixed`, fixedTone: 90, tonalPalette: palette});
52
- this.colors.push({name: `${name}-fixed-dim`, fixedTone: 800, tonalPalette: palette});
53
- this.colors.push({name: `on-${name}-fixed`, fixedTone: 10, tonalPalette: palette});
54
- this.colors.push({name: `on-${name}-fixed-variant`, fixedTone: 30, tonalPalette: palette});
55
- return this;
56
- }
57
-
58
- addCommonColor(name: string, hex: string): ThemeBuilder {
59
- this.commonColors.push({name, tonalPalette: TonalPalette.fromInt(argbFromHex(hex))})
60
- return this;
61
- }
62
-
63
- setCssClass(cssClass: string): ThemeBuilder {
64
- this.cssClass = cssClass;
65
- return this;
66
- }
67
-
68
- private ensureCssClassStartsWithDot(): void {
69
- if (!this.cssClass || this.cssClass.startsWith('.')) {
70
- return;
71
- }
72
-
73
- this.cssClass = `.${this.cssClass}`;
74
- }
75
-
76
- private ensureThemeColors(): void {
77
-
78
- const primaryColor = this.colors.find(c => c.name === 'primary')!;
79
-
80
- const palette = CorePalette.of(primaryColor.tonalPalette.tone(40));
81
-
82
- if (!this.colors.find(c => c.name === 'secondary')) {
83
- this.addColorFromPalette('secondary', palette.a2);
84
- }
85
-
86
- if (!this.colors.find(c => c.name === 'tertiary')) {
87
- this.addColorFromPalette('tertiary', palette.a3);
88
- }
89
-
90
- if (!this.neutralColorPalette) {
91
- this.neutralColorPalette = palette.n1;
92
- }
93
-
94
- if (!this.neutralVariantColorPalette) {
95
- this.neutralVariantColorPalette = palette.n2;
96
- }
97
- }
98
-
99
- private getNeutralVariables(dark: boolean): string {
100
- const builder = CssVarBuilder.create();
101
-
102
- this.addColors(builder, neutralColors, this.neutralColorPalette, dark);
103
-
104
- builder
105
- .add('--u-color-background', "var(--u-color-surface-container-highest)")
106
- .add('--u-color-inverse-background', "var(--u-color-inverse-surface-container-highest)")
107
- .add('--u-color-on-background', "var(--u-color-on-surface)")
108
- .add('--u-color-on-inverse-background', "var(--u-color-inverse-on-surface)");
109
-
110
- return builder.build();
111
- }
112
-
113
- private getNeutralVariantVariables(dark: boolean): string {
114
- const builder = CssVarBuilder.create();
115
-
116
- this.addColors(builder, neutralVariantColors, this.neutralColorPalette, dark);
117
-
118
- return builder.build()
119
- }
120
-
121
- getColorVariables(color: ThemeColor, dark: boolean): string {
122
-
123
- const builder = CssVarBuilder.create();
124
-
125
- this.addToneColor(builder, color, color.tonalPalette, dark)
126
-
127
- return builder.build();
128
- }
129
-
130
- private getColorsVariables(dark: boolean): string {
131
- let variables = '';
132
-
133
- for (const color of this.colors) {
134
- variables += this.getColorVariables(color, dark);
135
- }
136
-
137
- if (this.neutralColorPalette) {
138
- variables += this.getNeutralVariables(dark);
139
- }
140
-
141
- if (this.neutralVariantColorPalette) {
142
- variables += this.getNeutralVariantVariables(dark);
143
- }
144
-
145
- return variables;
146
- }
147
-
148
- private addColors(builder: CssVarBuilder, colors: Color[], palette: TonalPalette, dark: boolean): void {
149
- for (const color of colors) {
150
- this.addToneColor(builder, color, palette, dark);
151
- }
152
- }
153
-
154
- private addToneColor(builder: CssVarBuilder, color: Color, palette: TonalPalette, dark: boolean): void {
155
- if (color.fixedTone !== undefined) {
156
- builder.addFromArgb(color.name, palette.tone(color.fixedTone));
157
- return;
158
- }
159
-
160
- const tone = dark
161
- ? color.darkTone!
162
- : color.lightTone!;
163
-
164
- const inverseTone = dark
165
- ? color.lightTone!
166
- : color.darkTone!;
167
-
168
- builder
169
- .addFromArgb(color.name, palette.tone(tone))
170
- .addFromArgb(`inverse-${color.name}`, palette.tone(inverseTone));
171
-
172
- if (dark) {
173
- return;
174
- }
175
-
176
- builder
177
- .addFromArgb(`light-${color.name}`, palette.tone(color.lightTone!))
178
- .addFromArgb(`dark-${color.name}`, palette.tone(color.darkTone!));
179
- }
180
-
181
- build(): string {
182
-
183
- this.ensureCssClassStartsWithDot();
184
-
185
- const lightCssClass = this.cssClass ?? ':root';
186
- const darkCssClass = this.cssClass
187
- ? `${this.cssClass}.u-dark-mode,
188
- ${this.cssClass} .u-dark-mode`
189
- : '.u-dark-mode';
190
-
191
- if (!this.partial) {
192
- this.ensureThemeColors();
193
- }
194
-
195
- const variables = `${getCss(lightCssClass, `${this.getColorsVariables(false)}`)}
196
-
197
- ${getCss(darkCssClass, this.getColorsVariables(true))}
198
- `;
199
- return variables;
200
- }
201
- }
package/tsconfig.json DELETED
@@ -1,36 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es2021",
4
- "module": "es2020",
5
- "lib": ["es2021", "DOM", "DOM.Iterable"],
6
- "declaration": true,
7
- "declarationMap": true,
8
- "sourceMap": true,
9
- "inlineSources": true,
10
- "outDir": "./dist",
11
- "rootDir": "./src",
12
- "strict": true,
13
- "noUnusedLocals": true,
14
- "noUnusedParameters": true,
15
- "noImplicitReturns": true,
16
- "noFallthroughCasesInSwitch": true,
17
- "noImplicitAny": true,
18
- "noImplicitThis": true,
19
- "moduleResolution": "node",
20
- "allowSyntheticDefaultImports": true,
21
- "experimentalDecorators": true,
22
- "forceConsistentCasingInFileNames": true,
23
- "noImplicitOverride": true,
24
- "plugins": [
25
- {
26
- "name": "ts-lit-plugin",
27
- "strict": true
28
- }
29
- ],
30
- "types": ["mocha"]
31
- },
32
- "include": ["src/**/*.ts"],
33
- "exclude": [
34
- "./node_modules/lit/decorators.d.ts"
35
- ]
36
- }
@@ -1,25 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2021 Google LLC
4
- * SPDX-License-Identifier: BSD-3-Clause
5
- */
6
-
7
- import {legacyPlugin} from '@web/dev-server-legacy';
8
-
9
- const mode = process.env.MODE || 'dev';
10
- if (!['dev', 'prod'].includes(mode)) {
11
- throw new Error(`MODE must be "dev" or "prod", was "${mode}"`);
12
- }
13
-
14
- export default {
15
- nodeResolve: {exportConditions: mode === 'dev' ? ['development'] : []},
16
- preserveSymlinks: true,
17
- plugins: [
18
- legacyPlugin({
19
- polyfills: {
20
- // Manually imported in index.html file
21
- webcomponents: false,
22
- },
23
- }),
24
- ],
25
- };
@@ -1,120 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2021 Google LLC
4
- * SPDX-License-Identifier: BSD-3-Clause
5
- */
6
-
7
- import {legacyPlugin} from '@web/dev-server-legacy';
8
- import {playwrightLauncher} from '@web/test-runner-playwright';
9
-
10
- const mode = process.env.MODE || 'dev';
11
- if (!['dev', 'prod'].includes(mode)) {
12
- throw new Error(`MODE must be "dev" or "prod", was "${mode}"`);
13
- }
14
-
15
- // Uncomment for testing on Sauce Labs
16
- // Must run `npm i --save-dev @web/test-runner-saucelabs` and set
17
- // SAUCE_USERNAME and SAUCE_USERNAME environment variables
18
- // ===========
19
- // import {createSauceLabsLauncher} from '@web/test-runner-saucelabs';
20
- // const sauceLabsLauncher = createSauceLabsLauncher(
21
- // {
22
- // user: process.env.SAUCE_USERNAME,
23
- // key: process.env.SAUCE_USERNAME,
24
- // },
25
- // {
26
- // 'sauce:options': {
27
- // name: 'unit tests',
28
- // build: `${process.env.GITHUB_REF ?? 'local'} build ${
29
- // process.env.GITHUB_RUN_NUMBER ?? ''
30
- // }`,
31
- // },
32
- // }
33
- // );
34
-
35
- // Uncomment for testing on BrowserStack
36
- // Must run `npm i --save-dev @web/test-runner-browserstack` and set
37
- // BROWSER_STACK_USERNAME and BROWSER_STACK_ACCESS_KEY environment variables
38
- // ===========
39
- // import {browserstackLauncher as createBrowserstackLauncher} from '@web/test-runner-browserstack';
40
- // const browserstackLauncher = (config) => createBrowserstackLauncher({
41
- // capabilities: {
42
- // 'browserstack.user': process.env.BROWSER_STACK_USERNAME,
43
- // 'browserstack.key': process.env.BROWSER_STACK_ACCESS_KEY,
44
- // project: 'my-element',
45
- // name: 'unit tests',
46
- // build: `${process.env.GITHUB_REF ?? 'local'} build ${
47
- // process.env.GITHUB_RUN_NUMBER ?? ''
48
- // }`,
49
- // ...config,
50
- // }
51
- // });
52
-
53
- const browsers = {
54
- // Local browser testing via playwright
55
- // ===========
56
- chromium: playwrightLauncher({product: 'chromium'}),
57
- firefox: playwrightLauncher({product: 'firefox'}),
58
- webkit: playwrightLauncher({product: 'webkit'}),
59
-
60
- // Uncomment example launchers for running on Sauce Labs
61
- // ===========
62
- // chromium: sauceLabsLauncher({browserName: 'chrome', browserVersion: 'latest', platformName: 'Windows 10'}),
63
- // firefox: sauceLabsLauncher({browserName: 'firefox', browserVersion: 'latest', platformName: 'Windows 10'}),
64
- // safari: sauceLabsLauncher({browserName: 'safari', browserVersion: 'latest', platformName: 'macOS 10.15'}),
65
-
66
- // Uncomment example launchers for running on Sauce Labs
67
- // ===========
68
- // chromium: browserstackLauncher({browserName: 'Chrome', os: 'Windows', os_version: '10'}),
69
- // firefox: browserstackLauncher({browserName: 'Firefox', os: 'Windows', os_version: '10'}),
70
- // safari: browserstackLauncher({browserName: 'Safari', browser_version: '14.0', os: 'OS X', os_version: 'Big Sur'}),
71
- };
72
-
73
- // Prepend BROWSERS=x,y to `npm run test` to run a subset of browsers
74
- // e.g. `BROWSERS=chromium,firefox npm run test`
75
- const noBrowser = (b) => {
76
- throw new Error(`No browser configured named '${b}'; using defaults`);
77
- };
78
- let commandLineBrowsers;
79
- try {
80
- commandLineBrowsers = process.env.BROWSERS?.split(',').map(
81
- (b) => browsers[b] ?? noBrowser(b)
82
- );
83
- } catch (e) {
84
- console.warn(e);
85
- }
86
-
87
- // https://modern-web.dev/docs/test-runner/cli-and-configuration/
88
- export default {
89
- rootDir: '.',
90
- files: ['./test/**/*_test.js'],
91
- nodeResolve: {exportConditions: mode === 'dev' ? ['development'] : []},
92
- preserveSymlinks: true,
93
- browsers: commandLineBrowsers ?? Object.values(browsers),
94
- testFramework: {
95
- // https://mochajs.org/api/mocha
96
- config: {
97
- ui: 'tdd',
98
- timeout: '60000',
99
- },
100
- },
101
- plugins: [
102
- // Detect browsers without modules (e.g. IE11) and transform to SystemJS
103
- // (https://modern-web.dev/docs/dev-server/plugins/legacy/).
104
- legacyPlugin({
105
- polyfills: {
106
- webcomponents: true,
107
- // Inject lit's polyfill-support module into test files, which is required
108
- // for interfacing with the webcomponents polyfills
109
- custom: [
110
- {
111
- name: 'lit-polyfill-support',
112
- path: 'node_modules/lit/polyfill-support.js',
113
- test: "!('attachShadow' in Element.prototype) || !('getRootNode' in Element.prototype) || window.ShadyDOM && window.ShadyDOM.force",
114
- module: false,
115
- },
116
- ],
117
- },
118
- }),
119
- ],
120
- };