@epa-wg/custom-element-dist 0.0.37 → 0.0.39

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 (117) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/AGENTS.md +1 -0
  3. package/CLAUDE.md +89 -0
  4. package/README.md +5 -5
  5. package/bin/postinstall.sh +18 -10
  6. package/coverage/base.css +224 -0
  7. package/coverage/block-navigation.js +87 -0
  8. package/coverage/coverage-final.json +12 -0
  9. package/coverage/favicon.png +0 -0
  10. package/coverage/index.html +176 -0
  11. package/coverage/prettify.css +1 -0
  12. package/coverage/prettify.js +2 -0
  13. package/coverage/sort-arrow-sprite.png +0 -0
  14. package/coverage/sorter.js +210 -0
  15. package/coverage/src/coverage.svg +10 -0
  16. package/coverage/src/custom-element/coverage.svg +10 -0
  17. package/coverage/src/custom-element/custom-element.js/coverage.svg +10 -0
  18. package/coverage/src/custom-element/custom-element.js.html +3058 -0
  19. package/coverage/src/custom-element/http-request.js/coverage.svg +10 -0
  20. package/coverage/src/custom-element/http-request.js.html +373 -0
  21. package/coverage/src/custom-element/index.html +176 -0
  22. package/coverage/src/custom-element/local-storage.js/coverage.svg +10 -0
  23. package/coverage/src/custom-element/local-storage.js.html +361 -0
  24. package/coverage/src/custom-element/location-element.js/coverage.svg +10 -0
  25. package/coverage/src/custom-element/location-element.js.html +412 -0
  26. package/coverage/src/custom-element/module-url.js/coverage.svg +10 -0
  27. package/coverage/src/custom-element/module-url.js.html +187 -0
  28. package/coverage/src/index.html +116 -0
  29. package/coverage/src/material/theme/colors.js/coverage.svg +10 -0
  30. package/coverage/src/material/theme/colors.js.html +217 -0
  31. package/coverage/src/material/theme/coverage.svg +10 -0
  32. package/coverage/src/material/theme/index.html +116 -0
  33. package/coverage/src/mocks/coverage.svg +10 -0
  34. package/coverage/src/mocks/handlers.ts/coverage.svg +10 -0
  35. package/coverage/src/mocks/handlers.ts.html +196 -0
  36. package/coverage/src/mocks/index.html +116 -0
  37. package/coverage/src/stories/coverage.svg +10 -0
  38. package/coverage/src/stories/frame.canvas.ts/coverage.svg +10 -0
  39. package/coverage/src/stories/frame.canvas.ts.html +217 -0
  40. package/coverage/src/stories/http-request.stories.ts/coverage.svg +10 -0
  41. package/coverage/src/stories/http-request.stories.ts.html +820 -0
  42. package/coverage/src/stories/index.html +146 -0
  43. package/coverage/src/stories/testStoryBook.ts/coverage.svg +10 -0
  44. package/coverage/src/stories/testStoryBook.ts.html +160 -0
  45. package/coverage/src/sum.ts/coverage.svg +10 -0
  46. package/coverage/src/sum.ts.html +94 -0
  47. package/dist/{custom-element-BqBcmDiN.js → custom-element-Cr_I3Xd-.js} +69 -65
  48. package/dist/custom-element-D5IF46oF.cjs +97 -0
  49. package/dist/custom-element-bundle.cjs +1 -1
  50. package/dist/custom-element-bundle.js +3 -3
  51. package/dist/demo/a.html +41 -64
  52. package/dist/demo/s.xslt +94 -350
  53. package/dist/{local-storage-DzmNKzgN.js → local-storage-w0k66UWM.js} +4 -4
  54. package/package.json +3 -2
  55. package/public/demo/a.html +41 -64
  56. package/public/demo/s.xslt +94 -350
  57. package/src/css/cem-combined.css +1058 -0
  58. package/src/custom-element/custom-element.js +9 -4
  59. package/src/custom-element/demo/a.html +41 -64
  60. package/src/custom-element/demo/s.xslt +94 -350
  61. package/src/custom-element/ide/customData-dce.json +8 -8
  62. package/src/custom-element/ide/web-types-dce.json +8 -8
  63. package/src/custom-element/ide/web-types-xsl.json +1 -1
  64. package/src/material/components/action.html +77 -22
  65. package/src/material/components/autocomplete.html +7 -6
  66. package/src/material/components/badge.html +33 -34
  67. package/src/material/components/cem-theme-components.css +131 -0
  68. package/src/material/components/dropdown.html +27 -12
  69. package/src/material/components/icon-link.html +25 -18
  70. package/src/material/components/icon.html +15 -14
  71. package/src/material/components/input.html +27 -24
  72. package/src/material/components/menu.html +23 -18
  73. package/src/material/components.html +31 -23
  74. package/src/material/demo.css +24 -12
  75. package/src/material/index.html +16 -10
  76. package/src/material/theme/consumer-theme.css +0 -733
  77. package/src/material/theme/semantic.css +1 -85
  78. package/src/mocks/versions.mock.ts +1 -1
  79. package/src/stories/__screenshots__/http-request.test.ts/http-request-url-change-1.png +0 -0
  80. package/src/stories/__screenshots__/location-element.test.stories.ts/location-element-location-element-Demo-1.png +0 -0
  81. package/src/stories/frame.canvas.ts +17 -4
  82. package/src/stories/testStoryBook.ts +2 -5
  83. package/storybook-static/assets/{Color-F6OSRLHC-FZZzFn7T.js → Color-F6OSRLHC-DM-zIDJc.js} +1 -1
  84. package/storybook-static/assets/{Configure-DyfktOJO.js → Configure-Bv7Hf8nO.js} +1 -1
  85. package/storybook-static/assets/{DocsRenderer-CFRXHY34-5isVpCzj.js → DocsRenderer-CFRXHY34-BNrvQCFF.js} +2 -2
  86. package/storybook-static/assets/{attributes.test.stories-CrDC-RXf.js → attributes.test.stories-Bs0zZtYO.js} +1 -1
  87. package/storybook-static/assets/{css.test.stories-ChWnZJwa.js → css.test.stories-CK4N9Fqq.js} +1 -1
  88. package/storybook-static/assets/custom-element-PxTx2W9y.js +97 -0
  89. package/storybook-static/assets/{dom-merge.test.stories-DkarPqD_.js → dom-merge.test.stories-DLFviA8F.js} +1 -1
  90. package/storybook-static/assets/{external-template.test.stories-DCboR8sG.js → external-template.test.stories-CqR1aaHv.js} +1 -1
  91. package/storybook-static/assets/{form.test.stories-BjeeUu0b.js → form.test.stories-Cinvg_DI.js} +1 -1
  92. package/storybook-static/assets/frame.canvas-BB4_DNn6.js +1 -0
  93. package/storybook-static/assets/handlers-C9n1hhtS.js +291 -0
  94. package/storybook-static/assets/{http-request.stories-WIldq1MC.js → http-request.stories-CwYdgaOh.js} +1 -1
  95. package/storybook-static/assets/{iframe-CBHPj1E5.js → iframe-DX9w3Kge.js} +2 -2
  96. package/storybook-static/assets/{index-CzwPLrca.js → index-C8cHSFtw.js} +1 -1
  97. package/storybook-static/assets/{index-BL0FQnAE.js → index-DgXlQmnf.js} +3 -3
  98. package/storybook-static/assets/{local-storage.test.stories-DLMK0p2s.js → local-storage.test.stories-M4WOSQC5.js} +1 -1
  99. package/storybook-static/assets/{location-element.test.stories-BroqoLMS.js → location-element.test.stories-Ce6Ma8hE.js} +1 -1
  100. package/storybook-static/assets/{module-url.test.stories-B-0dibET.js → module-url.test.stories-PwnZWqKL.js} +1 -1
  101. package/storybook-static/assets/{preview-C1KnQPMW.js → preview-DxO5Yt9a.js} +1 -1
  102. package/storybook-static/assets/{preview-BG24UPL5.js → preview-ln0vFKa2.js} +2 -2
  103. package/storybook-static/assets/{set-url.test.stories-Dhq4YQyr.js → set-url.test.stories-BdNTYEwI.js} +1 -1
  104. package/storybook-static/assets/{slice-events.test.stories-BZJGIFku.js → slice-events.test.stories-BdvLtK0h.js} +1 -1
  105. package/storybook-static/assets/{slots.test.stories-DKivHwZH.js → slots.test.stories-CoTPvRog.js} +1 -1
  106. package/storybook-static/assets/{version-select.test.stories-Dntyd7qb.js → version-select.test.stories-hs-HsDVE.js} +1 -1
  107. package/storybook-static/assets/{xslt-conditionals.test.stories-Iq5iQNRj.js → xslt-conditionals.test.stories-C4oXVQWa.js} +1 -1
  108. package/storybook-static/assets/{xslt-for-each.test.stories-BMygBmj8.js → xslt-for-each.test.stories-Da4vCZe1.js} +1 -1
  109. package/storybook-static/assets/{xslt-if.test.stories-CVrFWdAX.js → xslt-if.test.stories-CMlnBGX2.js} +1 -1
  110. package/storybook-static/demo/a.html +41 -64
  111. package/storybook-static/demo/s.xslt +94 -350
  112. package/storybook-static/iframe.html +1 -1
  113. package/storybook-static/project.json +1 -1
  114. package/dist/custom-element-jpOyXHF6.cjs +0 -97
  115. package/storybook-static/assets/custom-element-wuk8gYiP.js +0 -97
  116. package/storybook-static/assets/frame.canvas-E5n9h6j1.js +0 -1
  117. package/storybook-static/assets/handlers-B7UMnC7v.js +0 -291
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,14 +22,14 @@
21
22
  <style>
22
23
  @import "../angular.css";
23
24
  @import "../material.css";
24
- @import "../theme/semantic.css";
25
+ @import "./cem-theme-components.css";
25
26
  @import "../demo.css";
26
27
 
27
28
  main {
28
29
  display: flex;
29
30
  flex-wrap: wrap;
30
- gap: 3rem;
31
- padding: 5rem;
31
+ gap: var(--cem-gap-page);
32
+ padding: var(--cem-layout-gutter-max);
32
33
 
33
34
  & > p {
34
35
  min-width: 90%;
@@ -38,11 +39,11 @@
38
39
  overflow: visible;
39
40
 
40
41
  [slot="legend"] {
41
- border-radius: 1rem 1rem 0 0;
42
+ border-radius: var(--cem-bend-surface) var(--cem-bend-surface) 0 0;
42
43
  }
43
44
 
44
45
  [slot="description"] {
45
- padding: 0 1rem 1rem 1rem;
46
+ padding: 0 var(--cem-inset-container) var(--cem-inset-container) var(--cem-inset-container);
46
47
 
47
48
  dd {
48
49
  padding: 0 !important;
@@ -59,11 +60,11 @@
59
60
  </style>
60
61
  </head>
61
62
 
62
- <body>
63
+ <body class="cem-theme-light">
63
64
  <custom-element hidden src="./icon-link.html#cem-icon-link" tag="cem-icon-link"></custom-element>
64
65
  <custom-element hidden src="./menu.html#cem-menu" tag="cem-menu"></custom-element>
65
66
 
66
- <header class="cem-theme-teal">
67
+ <header>
67
68
  <custom-element src="../index.html#nav-head"></custom-element>
68
69
  </header>
69
70
  <main>
@@ -80,13 +81,24 @@
80
81
  &>* {
81
82
  position: relative;
82
83
 
83
- --cem-dropdown-shadow: 0px 3px 1px -2px rgba(0, 0, 0, .2), 0px 2px 2px 0px rgba(0, 0, 0, .14), 0px 1px 5px 0px rgba(0, 0, 0, .12);
84
- --cem-dropdown-max-height: 10rem;
85
- --cem-dropdown-base-min-width: 8em;
84
+ --cem-dropdown-shadow: var(--cem-layer-overlay);
85
+ --cem-dropdown-max-height: calc(4 * var(--cem-menu-row-height));
86
+ --cem-dropdown-base-min-width: calc(4 * var(--cem-control-height));
86
87
 
87
88
  & > label {
88
89
  min-width: var(--cem-dropdown-base-min-width);
89
90
  display: inline-block;
91
+ min-height: var(--cem-control-height);
92
+ padding: var(--cem-control-padding-y) var(--cem-control-padding-x);
93
+ border-radius: var(--cem-bend-control);
94
+ background: var(--cem-action-contextual-default-background);
95
+ color: var(--cem-action-contextual-default-text);
96
+ cursor: pointer;
97
+ }
98
+
99
+ & > label:focus-visible {
100
+ outline: var(--cem-stroke-focus) solid var(--cem-zebra-color-1);
101
+ outline-offset: var(--cem-stroke-indicator-offset);
90
102
  }
91
103
 
92
104
  & > aside {
@@ -101,14 +113,17 @@
101
113
  display: flex;
102
114
  flex-direction: column;
103
115
 
116
+ background: var(--cem-action-contextual-default-background);
117
+ color: var(--cem-action-contextual-default-text);
104
118
  border-radius: var(--cem-autocomplete-container-shape);
105
119
  border-top-left-radius: 0;
106
120
  border-top-right-radius: 0;
107
121
  box-shadow: var(--cem-dropdown-shadow);
122
+ z-index: 1;
108
123
  }
109
124
  }
110
125
  </style>
111
- <slot name="base"><label>{$label}</label></slot>
126
+ <slot name="base"><label tabindex="0">{$label}</label></slot>
112
127
  <aside>
113
128
  <slot name=""></slot>
114
129
  </aside>
@@ -170,4 +185,4 @@
170
185
  <script src="https://unpkg.com/html-demo-element@1/html-demo-element.js" type="module"></script>
171
186
 
172
187
  </body>
173
- </html>
188
+ </html>
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,45 +22,46 @@
21
22
  <style>
22
23
  @import "../angular.css";
23
24
  @import "../material.css";
24
- @import "../theme/semantic.css";
25
+ @import "./cem-theme-components.css";
25
26
  @import "../demo.css";
26
27
  main{
27
28
  display: flex; flex-wrap: wrap;
28
- gap: 3rem;
29
- padding: 5rem;
29
+ gap: var(--cem-gap-page);
30
+ padding: var(--cem-layout-gutter-max);
30
31
  &>p{ min-width: 90%; }
31
32
  html-demo-element
32
33
  { overflow: visible;
33
- [slot="legend"]{ border-radius: 1rem 1rem 0 0; }
34
- [slot="description"]{ padding: 0 1rem 1rem 1rem; dd{ padding: 0 !important;margin: 0; }}
34
+ [slot="legend"]{ border-radius: var(--cem-bend-surface) var(--cem-bend-surface) 0 0; }
35
+ [slot="description"]{ padding: 0 var(--cem-inset-container) var(--cem-inset-container) var(--cem-inset-container); dd{ padding: 0 !important;margin: 0; }}
35
36
  [slot="description"] dd{ padding: 0; }
36
37
  }
38
+ cem-icon-link+cem-icon-link:before{ content: " ";}
37
39
  }
38
40
  </style>
39
41
  </head>
40
42
 
41
- <body>
43
+ <body class="cem-theme-light">
42
44
  <template id="cem-icon-link">
43
45
  <attribute name="href"></attribute>
44
46
  <attribute name="icon"></attribute>
45
47
  <attribute aria-description="color appearance. Default value is 'normal'. Values: normal|primary|secondary|alert|blend"
46
48
  name="kind"></attribute>
47
49
  <style>
48
- &:not([kind]) a, &[kind="normal"] a {
49
- /*background-color: var(--mdc-theme-primary, #6200ee);*/
50
- }
51
-
52
50
  a {
53
51
  display: inline-flex;
54
52
  align-items: center;
55
- gap: 0.5rem;
56
- padding: 0.5rem 1rem;;
57
- border-radius: 1.5rem;
53
+ gap: var(--cem-gap-related);
54
+ min-height: var(--cem-control-height);
55
+ padding: var(--cem-action-box-padding);
56
+ border-radius: var(--cem-action-border-radius);
58
57
 
59
58
  background-color: var(--cem-action-primary-background);
60
59
  transition: var(--cem-action-transition);
61
60
  box-shadow: var(--cem-action-box-shadow);
62
-
61
+ font-family: var(--cem-typography-ui-font-family);
62
+ font-size: var(--cem-typography-ui-font-size);
63
+ font-weight: var(--cem-typography-ui-font-weight);
64
+ &>span{ display: flex; align-items: center; }
63
65
  &:hover {
64
66
  background-color: var(--cem-action-primary-background-hover);
65
67
  box-shadow: var(--cem-action-box-shadow-hover);
@@ -69,15 +71,20 @@
69
71
  background-color: var(--cem-action-primary-background-focus);
70
72
  }
71
73
 
74
+ &:focus-visible {
75
+ outline: var(--cem-stroke-focus) solid var(--cem-zebra-color-1);
76
+ outline-offset: var(--cem-stroke-indicator-offset);
77
+ }
78
+
72
79
  &:active, &:focus:active {
73
80
  background-color: var(--cem-action-primary-background-active);
74
81
  }
75
82
 
76
83
  &, &:visited {
77
84
  text-decoration: none;
78
- color: var(--mat-light-blue-900);
85
+ color: var(--cem-action-primary-color);
79
86
  }
80
- --icon-size: 2rem;
87
+ --icon-size: var(--cem-icon-size);
81
88
  min-height: var(--icon-size);
82
89
  }
83
90
 
@@ -99,7 +106,7 @@
99
106
 
100
107
  <custom-element hidden src="#cem-icon-link" tag="cem-icon-link"></custom-element>
101
108
 
102
- <header class="cem-theme-teal">
109
+ <header>
103
110
  <custom-element src="../index.html#nav-head" ></custom-element>
104
111
  </header>
105
112
  <main>
@@ -158,4 +165,4 @@
158
165
  <script type="module" src="https://unpkg.com/html-demo-element@1.0.8/html-demo-element.js"></script>
159
166
 
160
167
  </body>
161
- </html>
168
+ </html>
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,20 +22,20 @@
21
22
  <style>
22
23
  @import "../angular.css";
23
24
  @import "../material.css";
24
- @import "../theme/semantic.css";
25
+ @import "./cem-theme-components.css";
25
26
  @import "../demo.css";
26
27
  main{
27
28
  display: flex; flex-wrap: wrap;
28
- gap: 3rem;
29
- padding: 5rem;
29
+ gap: var(--cem-gap-page);
30
+ padding: var(--cem-layout-gutter-max);
30
31
  &>p{ min-width: 90%; }
31
32
  html-demo-element
32
33
  { overflow: visible;
33
- [slot="legend"]{ border-radius: 1rem 1rem 0 0; }
34
- [slot="description"]{ padding: 0 1rem 1rem 1rem; dd{ padding: 0 !important;margin: 0; }}
34
+ [slot="legend"]{ border-radius: var(--cem-bend-surface) var(--cem-bend-surface) 0 0; }
35
+ [slot="description"]{ padding: 0 var(--cem-inset-container) var(--cem-inset-container) var(--cem-inset-container); dd{ padding: 0 !important;margin: 0; }}
35
36
  [slot="description"] dd{ padding: 0; }
36
37
  }
37
- var{ color: darkgreen; font-weight: bold; }
38
+ var{ color: var(--cem-palette-calm-text); font-weight: var(--cem-typography-tag-font-weight); }
38
39
  }
39
40
  cem-icon{ margin: 1rem; }
40
41
  </style>
@@ -43,7 +44,7 @@
43
44
  ToDO
44
45
  * docs w/ how to use
45
46
  -->
46
- <body>
47
+ <body class="cem-theme-light">
47
48
  <template id="cem-icon">
48
49
  <attribute name="image"
49
50
  aria-description="defines the icon in one of the libraries or URL. The selection algorithm
@@ -64,9 +65,9 @@ ToDO
64
65
  &[size="normal" ]>*>.icon{ height: var(--cem-icon-size); font-size: var(--cem-icon-size); }
65
66
  &[size="small" ]>*>.icon{ height: var(--cem-icon-size-small); font-size: var(--cem-icon-size-small); }
66
67
  &[size="large" ]>*>.icon{ height: var(--cem-icon-size-large); font-size: var(--cem-icon-size-large); }
67
- &{ display: inline-flex; justify-content: center; }
68
+ &{ display: inline-flex; justify-content: center; font-family: var(--cem-typography-ui-font-family); }
68
69
  &>* {
69
- display: inline-flex; align-items: center; gap: calc( var(--cem-icon-size) / 4 );
70
+ display: inline-flex; align-items: center; gap: var(--cem-gap-related);
70
71
 
71
72
  .icon {
72
73
  font-size: var(--cem-icon-size);
@@ -89,7 +90,7 @@ ToDO
89
90
  <custom-element hidden src="#cem-icon" tag="cem-icon"></custom-element>
90
91
  <custom-element hidden src="./icon-link.html#cem-icon-link" tag="cem-icon-link"></custom-element>
91
92
 
92
- <header class="cem-theme-teal">
93
+ <header>
93
94
  <custom-element src="../index.html#nav-head"></custom-element>
94
95
  </header>
95
96
  <main>
@@ -234,9 +235,9 @@ ToDO
234
235
  For font based icons the color is inherited from CSS text <code>color</code>.
235
236
  </p>
236
237
  <template>
237
- <cem-icon image="fas fa-heart" style="color:red" > red </cem-icon>
238
- <cem-icon image="fas fa-heart" style="color:green" > green </cem-icon>
239
- <cem-icon image="fas fa-heart" style="color:blue" > blue </cem-icon>
238
+ <cem-icon image="fas fa-heart" style="color:var(--cem-palette-danger)" > danger </cem-icon>
239
+ <cem-icon image="fas fa-heart" style="color:var(--cem-palette-calm)" > calm </cem-icon>
240
+ <cem-icon image="fas fa-heart" style="color:var(--cem-palette-trust)" > trust </cem-icon>
240
241
  </template>
241
242
  </html-demo-element>
242
243
 
@@ -249,4 +250,4 @@ ToDO
249
250
  <script src="https://unpkg.com/html-demo-element@1.0.8/html-demo-element.js" type="module"></script>
250
251
 
251
252
  </body>
252
- </html>
253
+ </html>
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,12 +22,12 @@
21
22
  <style>
22
23
  @import "../angular.css";
23
24
  @import "../material.css";
24
- @import "../theme/semantic.css";
25
+ @import "./cem-theme-components.css";
25
26
  @import "../demo.css";
26
27
  main{
27
28
  display: flex; flex-wrap: wrap;
28
- gap: 3rem;
29
- padding: 5rem;
29
+ gap: var(--cem-gap-page);
30
+ padding: var(--cem-layout-gutter-max);
30
31
  &>p{ min-width: 90%; }
31
32
  html-demo-element{flex:1; width: 100%; }
32
33
  }
@@ -36,12 +37,12 @@
36
37
  </style>
37
38
  </head>
38
39
 
39
- <body>
40
+ <body class="cem-theme-light">
40
41
  <custom-element hidden src="./icon-link.html#cem-icon-link" tag="cem-icon-link"></custom-element>
41
42
  <custom-element hidden src="./icon.html#cem-icon" tag="cem-icon"></custom-element>
42
43
 
43
44
 
44
- <header class="cem-theme-teal">
45
+ <header>
45
46
  <custom-element src="../index.html#nav-head" ></custom-element>
46
47
  </header>
47
48
  <pre>
@@ -127,36 +128,37 @@
127
128
  display: flex; flex-direction: column; justify-content: center;
128
129
  --input-padding: 0;
129
130
 
130
- --cem-input-container-shape: 0.25rem;
131
- --cem-input-background-color: var(--cem-list-background-color);
132
- --cem-input-container-elevation-shadow: 0px 3px 1px -2px rgba(0, 0, 0, .2), 0px 2px 2px 0px rgba(0, 0, 0, .14), 0px 1px 5px 0px rgba(0, 0, 0, .12);
133
- --cem-input-focus-transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1);
131
+ --cem-input-background-color: var(--cem-action-explicit-default-background);
132
+ --cem-input-container-elevation-shadow: var(--cem-layer-work);
133
+ --cem-input-focus-transition: all var(--cem-duration-action) var(--cem-easing-smooth);
134
134
 
135
135
  &:has(input:invalid,input:user-invalid,input:out-of-range, .warn>*:not(:empty) )
136
- { --cem-filled-text-field-label-text-color: var(--alert-color,red);
136
+ { --cem-filled-text-field-label-text-color: var(--alert-color, var(--cem-palette-danger));
137
137
  --cem-input-outline-color:var(--cem-filled-text-field-label-text-color);
138
- --cem-input-outline: inset 0 -1px 0 var(--cem-input-outline-color);
138
+ --cem-input-outline: inset 0 calc(-1 * var(--cem-stroke-divider)) 0 var(--cem-input-outline-color);
139
139
  --cem-outline-color-focus: var(--cem-input-outline-color);
140
140
  color: var(--cem-filled-text-field-label-text-color);
141
141
  .supporting{ display: none; }
142
142
  }
143
143
  &>label
144
- { display: flex; flex: 1; gap: 0.5rem;
145
- padding: 0.5rem 1rem;
146
- background-color: var(--cem-filled-text-field-container-color, var(--cem-app-surface-variant));
144
+ { display: flex; flex: 1; align-items: center; gap: var(--cem-gap-related);
145
+ padding: var(--cem-control-padding-y) var(--cem-control-padding-x);
146
+ background-color: var(--cem-input-background-color);
147
147
  &:hover
148
- { --cem-filled-text-field-container-color: var(--cem-filled-text-field-container-color-hover,silver);
149
- --cem-input-outline-color:var(--text-color,black);
150
- box-shadow: inset 0 -1px 0 var(--cem-input-outline-color,black);
151
- color:var(--text-color,black)
148
+ { --cem-filled-text-field-container-color: var(--cem-filled-text-field-container-color-hover, var(--cem-list-background-color-hover));
149
+ --cem-input-outline-color: var(--text-color, var(--cem-palette-comfort-text));
150
+ box-shadow: inset 0 calc(-1 * var(--cem-stroke-divider)) 0 var(--cem-input-outline-color);
151
+ color: var(--text-color, var(--cem-palette-comfort-text))
152
152
  }
153
153
  box-shadow: var(--cem-input-outline);
154
- transition: var(--drop-transition);
154
+ transition: var(--cem-drop-transition);
155
155
  box-sizing: border-box;
156
- min-height: 3.5rem;
156
+ min-height: calc(var(--cem-control-height) + var(--cem-control-padding-y) + var(--cem-control-padding-y));
157
157
  color: var(--cem-filled-text-field-label-text-color);
158
+ font-family: var(--cem-typography-ui-font-family);
158
159
  position: relative;
159
160
  &>.entry{ display: flex;flex-direction: column; justify-content: center;flex:1; }
161
+ &>span{ display: flex; }
160
162
  label{display: flex;}
161
163
  input
162
164
  { background: none; padding: var(--input-padding);
@@ -167,8 +169,9 @@
167
169
 
168
170
  color: var(--cem-filled-text-field-input-text-color, var(--cem-app-on-surface));
169
171
  caret-color: var(--cem-filled-text-field-caret-color, var(--cem-app-primary));
170
- font-size: 1rem;
171
- transition: var(--drop-transition);
172
+ font-family: var(--cem-typography-ui-font-family);
173
+ font-size: var(--cem-typography-ui-font-size);
174
+ transition: var(--cem-drop-transition);
172
175
  }
173
176
  &:after{ display: block; width: 0; height: 0; content: ' ';
174
177
  left:0;
@@ -196,7 +199,7 @@
196
199
  slice{display: none;}
197
200
  .warn,.supporting
198
201
  {
199
- padding: 0.25rem 1rem;
202
+ padding: var(--cem-dim-xx-small) var(--cem-control-padding-x);
200
203
  font-size: var(--cem-form-field-subscript-text-size, var(--cem-sys-body-small-size));
201
204
  }
202
205
  [slot="trailing"],[slot="leading"]{display: flex;}
@@ -567,4 +570,4 @@
567
570
  <script type="module" src="https://unpkg.com/html-demo-element@1/html-demo-element.js"></script>
568
571
 
569
572
  </body>
570
- </html>
573
+ </html>
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,27 +22,27 @@
21
22
  <style>
22
23
  @import "../angular.css";
23
24
  @import "../material.css";
24
- @import "../theme/semantic.css";
25
+ @import "./cem-theme-components.css";
25
26
  @import "../demo.css";
26
27
  main{
27
28
  display: flex; flex-wrap: wrap;
28
- gap: 3rem;
29
- padding: 5rem;
29
+ gap: var(--cem-gap-page);
30
+ padding: var(--cem-layout-gutter-max);
30
31
  &>p{ min-width: 90%; }
31
32
  html-demo-element
32
33
  { overflow: visible;
33
- [slot="legend"]{ border-radius: 1rem 1rem 0 0; }
34
- [slot="description"]{ padding: 0 1rem 1rem 1rem; dd{ padding: 0 !important;margin: 0; }}
34
+ [slot="legend"]{ border-radius: var(--cem-bend-surface) var(--cem-bend-surface) 0 0; }
35
+ [slot="description"]{ padding: 0 var(--cem-inset-container) var(--cem-inset-container) var(--cem-inset-container); dd{ padding: 0 !important;margin: 0; }}
35
36
  [slot="description"] dd{ padding: 0; }
36
37
  }
37
38
  }
38
39
  </style>
39
40
  </head>
40
41
 
41
- <body>
42
+ <body class="cem-theme-light">
42
43
  <custom-element hidden src="./icon-link.html#cem-icon-link" tag="cem-icon-link"></custom-element>
43
44
 
44
- <header class="cem-theme-teal">
45
+ <header>
45
46
  <custom-element src="../index.html#nav-head" ></custom-element>
46
47
  </header>
47
48
  <main>
@@ -71,18 +72,22 @@
71
72
  &>*
72
73
  { display: flex;
73
74
  align-items: center;
74
- padding: var(--cem-menu-item-padding);
75
- background-color: var( --cem-menu-item-background );
76
- color: var( --cem-menu-item-color );
75
+ min-height: var(--cem-menu-row-height);
76
+ padding: var(--cem-control-padding-y) var(--cem-control-padding-x);
77
+ background-color: var(--cem-action-explicit-default-background);
78
+ color: var(--cem-action-explicit-default-text);
77
79
  text-decoration: none;
78
- font-weight: var(--cem-menu-item-font-weight);
79
- &:focus{ z-index: 1; }
80
- &[disabled],&[disabled]:visited{ color:var(--cem-menu-item-color-disabled); pointer-events: none;}
81
- &:visited{ color:var(--cem-menu-item-color); }
80
+ font-family: var(--cem-typography-ui-font-family);
81
+ font-size: var(--cem-typography-ui-font-size);
82
+ font-weight: var(--cem-typography-tag-font-weight);
83
+ transition: var(--cem-action-transition);
84
+ &:focus{ z-index: 1; outline: var(--cem-stroke-focus) solid var(--cem-zebra-color-1); outline-offset: var(--cem-stroke-indicator-offset); }
85
+ &[disabled],&[disabled]:visited{ color:var(--cem-action-explicit-disabled-text); pointer-events: none;}
86
+ &:visited{ color:var(--cem-action-explicit-default-text); }
82
87
  &:hover
83
88
  {
84
- color: var(--cem-menu-item-hover-color);
85
- background-color: var(--cem-menu-item-hover-background);
89
+ color: var(--cem-action-explicit-hover-text);
90
+ background-color: var(--cem-action-explicit-hover-background);
86
91
  }
87
92
  &:empty{ display: none;}
88
93
  }
@@ -157,7 +162,7 @@
157
162
  <template>
158
163
  <style>
159
164
  a
160
- { --cem-menu-item-color:blue;
165
+ { --cem-menu-item-color: var(--cem-palette-trust);
161
166
  --cem-menu-item-background: salmon;
162
167
  --cem-menu-item-hover-background: blue;
163
168
  --cem-menu-item-hover-color: yellow;
@@ -233,4 +238,4 @@
233
238
  <script type="module" src="https://unpkg.com/html-demo-element@1.0.8/html-demo-element.js"></script>
234
239
 
235
240
  </body>
236
- </html>
241
+ </html>
@@ -5,6 +5,7 @@
5
5
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
6
6
  <title>Components - custom-element - Material Design</title>
7
7
  <link href="../custom-element/demo/wc-square.svg" rel="icon"/>
8
+ <link href="../css/cem-combined.css" rel="stylesheet"/>
8
9
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"/>
9
10
  <link crossorigin="anonymous" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css"
10
11
  integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" rel="stylesheet"/>
@@ -21,19 +22,19 @@
21
22
  <style>
22
23
  @import "./angular.css";
23
24
  @import "./material.css";
24
- @import "./theme/semantic.css";
25
+ @import "./components/cem-theme-components.css";
25
26
  @import "./demo.css";
26
27
  main{
27
28
  display: flex; flex-wrap: wrap;
28
- gap: 3rem;
29
- padding: 5rem;
29
+ gap: var(--cem-gap-page);
30
+ padding: var(--cem-layout-gutter-max);
30
31
  &>*{ flex: 1 1 12rem;}
31
32
  &>p{ min-width: 90%; }
32
33
  }
33
34
  </style>
34
35
  </head>
35
36
 
36
- <body>
37
+ <body class="cem-theme-light">
37
38
  <custom-element tag="cem-icon" hidden src="./components/icon.html#cem-icon" ></custom-element>
38
39
  <custom-element tag="cem-input" hidden src="./components/input.html#cem-input" ></custom-element>
39
40
  <custom-element tag="cem-icon-link" hidden src="./components/icon-link.html#cem-icon-link" ></custom-element>
@@ -41,12 +42,12 @@
41
42
  <custom-element tag="cem-badge" hidden src="./components/badge.html#cem-badge" ></custom-element>
42
43
  <custom-element tag="cem-dropdown" hidden src="./components/dropdown.html#cem-dropdown" ></custom-element>
43
44
 
44
- <header class="cem-theme-teal">
45
+ <header>
45
46
  <custom-element src="./index.html#nav-head" ></custom-element>
46
47
  </header>
47
48
  <main>
48
49
  <p>&lt;custom-element&gt; Material offers a wide variety of UI components based on the
49
- <a href="https://material.io/components" >Material Design specification</a>.
50
+ <a href="https://github.com/EPA-WG/cem#readme" >Consumer Semantic Material Theme</a>.
50
51
  </p>
51
52
  <custom-element tag="demo-list-card" hidden>
52
53
  <template>
@@ -57,21 +58,21 @@
57
58
  &>dce-root
58
59
  { display: inline-flex; flex-direction: column; justify-content: space-between;
59
60
  flex: 1;
60
- transition: background .3s ease;
61
- border: 1px solid #c4c6d0;
62
- border-radius: 12px;
61
+ transition: var(--cem-action-transition);
62
+ border: var(--cem-stroke-boundary) solid var(--cem-palette-conservative-x);
63
+ border-radius: var(--cem-bend-surface);
63
64
  overflow: hidden;
64
- &>*{padding: 1rem;}
65
+ &>*{padding: var(--cem-inset-container);}
65
66
  &>a
66
- { color: var(--cem-action-secondary-color, black);
67
- background-color:var(--cem-action-secondary-background, silver);
67
+ { color: var(--cem-action-explicit-default-text);
68
+ background-color: var(--cem-action-explicit-default-background);
68
69
  min-height: 6rem;
69
- transition: background .3s ease;
70
+ transition: var(--cem-action-transition);
70
71
  transform: translateZ(0);
71
- &:hover { background-color: var(--cem-action-secondary-background-hover); }
72
- &:focus { background-color: var(--cem-action-secondary-background-focus); }
72
+ &:hover { background-color: var(--cem-action-explicit-hover-background); }
73
+ &:focus { background-color: var(--cem-action-explicit-hover-background); }
73
74
  &:focus:active,
74
- &:active{ background-color: var(--cem-action-secondary-background-active); }
75
+ &:active{ background-color: var(--cem-action-explicit-active-background); }
75
76
 
76
77
  &, &:visited { text-decoration: none; }
77
78
  h3{ text-transform: capitalize; }
@@ -87,11 +88,18 @@
87
88
  </custom-element>
88
89
 
89
90
  <demo-list-card head="icon" description="Icons from popular collections">
90
- <cem-icon image="https://www.gstatic.com/images/icons/material/apps/fonts/1x/catalog/v5/favicon.svg"
91
- >Material Icon </cem-icon>
92
- <cem-icon image="recycling"
93
- > Recycling </cem-icon>
91
+ <template>
92
+
93
+ <div style="display: inline-flex; gap:var(--cem-gap-group); flex-wrap: wrap; justify-content: space-between;">
94
94
 
95
+ <cem-icon image="🛒" direction="column">Unicode</cem-icon>
96
+ <cem-icon image="recycling" direction="column"
97
+ > Material </cem-icon>
98
+ <cem-icon image="https://www.gstatic.com/images/icons/material/apps/fonts/1x/catalog/v5/favicon.svg" direction="column"
99
+ >SVG </cem-icon>
100
+ <cem-icon image="fas fa-thumbs-up" direction="row">Fontawesome </cem-icon>
101
+ </div>
102
+ </template>
95
103
  </demo-list-card>
96
104
 
97
105
  <demo-list-card head="input" description="Text input field">
@@ -116,7 +124,7 @@
116
124
 
117
125
  <demo-list-card head="badge" description="A small value indicator that can be overlaid on another object.">
118
126
  <template>
119
- <div style="display: inline-flex; gap:2rem;">
127
+ <div style="display: inline-flex; gap:var(--cem-gap-section);">
120
128
  <cem-badge text="0" color="secondary"><template> <cem-icon image="far fa-envelope" ></cem-icon> </template></cem-badge>
121
129
  <cem-badge text="999+" ><template> <cem-icon image="🛒" vertical="middle" ></cem-icon> </template></cem-badge>
122
130
  <cem-badge text="999+" dot ><template> <cem-icon image="notifications" vertical="middle" ></cem-icon> </template></cem-badge>
@@ -134,7 +142,7 @@
134
142
  <div>
135
143
  <cem-dropdown label="drop base" >
136
144
  <template>
137
- <style>aside{background-color: silver; padding: 1rem; }</style>
145
+ <style>aside{background-color: var(--cem-palette-conservative); padding: var(--cem-inset-container); }</style>
138
146
  dropped content
139
147
  </template>
140
148
 
@@ -155,4 +163,4 @@
155
163
  <a href="../../LICENSE"> Code and documentation licensed under an Apache License 2.0 </a>
156
164
  </footer>
157
165
  </body>
158
- </html>
166
+ </html>