@vandeurenglenn/lite-elements 0.3.18

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 (158) hide show
  1. package/exports/banner/banner.d.ts +7 -0
  2. package/exports/banner.js +68 -0
  3. package/exports/bundle/banner.js +37 -0
  4. package/exports/bundle/button.js +144 -0
  5. package/exports/bundle/card.js +140 -0
  6. package/exports/bundle/code.js +35 -0
  7. package/exports/bundle/custom-element-c2e883ba.js +1 -0
  8. package/exports/bundle/demo-elements.js +1 -0
  9. package/exports/bundle/demo-icons.js +16 -0
  10. package/exports/bundle/demo-shell.js +540 -0
  11. package/exports/bundle/demo.js +457 -0
  12. package/exports/bundle/dial.js +1 -0
  13. package/exports/bundle/dialog.js +149 -0
  14. package/exports/bundle/divider.js +21 -0
  15. package/exports/bundle/drawer-button.js +18 -0
  16. package/exports/bundle/drawer-item.js +39 -0
  17. package/exports/bundle/drawer-layout.js +96 -0
  18. package/exports/bundle/drawer.js +56 -0
  19. package/exports/bundle/dropdown-menu.js +59 -0
  20. package/exports/bundle/dropdown.js +26 -0
  21. package/exports/bundle/elements.js +1 -0
  22. package/exports/bundle/elevation.js +56 -0
  23. package/exports/bundle/hour-field.js +1 -0
  24. package/exports/bundle/icon-button.js +13 -0
  25. package/exports/bundle/icon-set.js +5 -0
  26. package/exports/bundle/icon.js +16 -0
  27. package/exports/bundle/index-3c006227.js +1 -0
  28. package/exports/bundle/index.html +590 -0
  29. package/exports/bundle/input.js +6 -0
  30. package/exports/bundle/it-d4d177bf.js +1 -0
  31. package/exports/bundle/list-item.js +43 -0
  32. package/exports/bundle/list.js +1 -0
  33. package/exports/bundle/menu.js +13 -0
  34. package/exports/bundle/menu2.js +1 -0
  35. package/exports/bundle/minute-field.js +5 -0
  36. package/exports/bundle/pages.js +43 -0
  37. package/exports/bundle/pane.js +96 -0
  38. package/exports/bundle/property-58e28172.js +11 -0
  39. package/exports/bundle/query-73dacde5.js +1 -0
  40. package/exports/bundle/rail.js +58 -0
  41. package/exports/bundle/root.js +8 -0
  42. package/exports/bundle/scroll-mixin.js +1 -0
  43. package/exports/bundle/section.js +11 -0
  44. package/exports/bundle/section2.js +25 -0
  45. package/exports/bundle/select-mixin.js +1 -0
  46. package/exports/bundle/selector-mixin.js +1 -0
  47. package/exports/bundle/selector.js +31 -0
  48. package/exports/bundle/supporting-pane.js +47 -0
  49. package/exports/bundle/tab.js +22 -0
  50. package/exports/bundle/tabs.js +51 -0
  51. package/exports/bundle/text-field.js +10 -0
  52. package/exports/bundle/theme.js +1 -0
  53. package/exports/bundle/themes/default/colors.module.css +180 -0
  54. package/exports/bundle/themes/default/missing/motion.css +4 -0
  55. package/exports/bundle/themes/default/missing/shape.css +13 -0
  56. package/exports/bundle/themes/default/missing/theme.dark.css +5 -0
  57. package/exports/bundle/themes/default/missing/theme.light.css +5 -0
  58. package/exports/bundle/themes/default/missing/tokens.css +9 -0
  59. package/exports/bundle/themes/default/theme.css +10 -0
  60. package/exports/bundle/themes/default/theme.dark.css +33 -0
  61. package/exports/bundle/themes/default/theme.light.css +33 -0
  62. package/exports/bundle/themes/default/tokens.css +256 -0
  63. package/exports/bundle/themes/default/typography.module.css +150 -0
  64. package/exports/bundle/time-picker.js +21 -0
  65. package/exports/bundle/title.js +1 -0
  66. package/exports/bundle/toggle-button.js +4 -0
  67. package/exports/bundle/toggle.js +5 -0
  68. package/exports/bundle/top-app-bar-e6e33a9e.js +114 -0
  69. package/exports/bundle/top-app-bar.js +1 -0
  70. package/exports/bundle/types.js +1 -0
  71. package/exports/bundle/typography.js +156 -0
  72. package/exports/button.js +227 -0
  73. package/exports/card/card.d.ts +13 -0
  74. package/exports/card.js +187 -0
  75. package/exports/code.js +77 -0
  76. package/exports/demo-elements.d.ts +9 -0
  77. package/exports/demo-elements.js +10 -0
  78. package/exports/demo-icons.js +48 -0
  79. package/exports/demo-shell.js +648 -0
  80. package/exports/demo.js +524 -0
  81. package/exports/dial.js +1 -0
  82. package/exports/dialog.js +256 -0
  83. package/exports/divider/divider.d.ts +17 -0
  84. package/exports/divider.js +54 -0
  85. package/exports/drawer/drawer-button.d.ts +9 -0
  86. package/exports/drawer/drawer-layout.d.ts +19 -0
  87. package/exports/drawer/drawer.d.ts +13 -0
  88. package/exports/drawer-button.js +83 -0
  89. package/exports/drawer-item.js +69 -0
  90. package/exports/drawer-layout.js +209 -0
  91. package/exports/drawer.js +140 -0
  92. package/exports/dropdown-menu.js +172 -0
  93. package/exports/dropdown.js +68 -0
  94. package/exports/elements.d.ts +63 -0
  95. package/exports/elements.js +41 -0
  96. package/exports/elevation/elevation.d.ts +11 -0
  97. package/exports/elevation.js +97 -0
  98. package/exports/hour-field.js +1 -0
  99. package/exports/icon-button.js +59 -0
  100. package/exports/icon-set.js +52 -0
  101. package/exports/icon.js +103 -0
  102. package/exports/input.js +36 -0
  103. package/exports/list/list.d.ts +1 -0
  104. package/exports/list-item.js +127 -0
  105. package/exports/list.js +1 -0
  106. package/exports/menu.js +68 -0
  107. package/exports/menu2.js +1 -0
  108. package/exports/minute-field.js +36 -0
  109. package/exports/mixins/scroll-mixin.d.ts +13 -0
  110. package/exports/mixins/select-mixin.d.ts +32 -0
  111. package/exports/mixins/selector-mixin.d.ts +8 -0
  112. package/exports/pages.js +88 -0
  113. package/exports/pane/pane.d.ts +14 -0
  114. package/exports/pane.js +182 -0
  115. package/exports/rail/rail.d.ts +9 -0
  116. package/exports/rail.js +124 -0
  117. package/exports/root.js +39 -0
  118. package/exports/scroll-mixin.js +36 -0
  119. package/exports/section.js +54 -0
  120. package/exports/section2.js +58 -0
  121. package/exports/select-mixin.js +139 -0
  122. package/exports/selector-mixin.js +43 -0
  123. package/exports/selector.js +63 -0
  124. package/exports/supporting-pane/supporting-pane.d.ts +12 -0
  125. package/exports/supporting-pane.js +133 -0
  126. package/exports/tab.js +47 -0
  127. package/exports/tabs/menu.d.ts +1 -0
  128. package/exports/tabs/tab.d.ts +4 -0
  129. package/exports/tabs/tabs.d.ts +5 -0
  130. package/exports/tabs.js +80 -0
  131. package/exports/text-field.js +88 -0
  132. package/exports/theme/theme.d.ts +15 -0
  133. package/exports/theme.js +123 -0
  134. package/exports/themes/default/colors.module.css +180 -0
  135. package/exports/themes/default/missing/motion.css +4 -0
  136. package/exports/themes/default/missing/shape.css +13 -0
  137. package/exports/themes/default/missing/theme.dark.css +5 -0
  138. package/exports/themes/default/missing/theme.light.css +5 -0
  139. package/exports/themes/default/missing/tokens.css +9 -0
  140. package/exports/themes/default/theme.css +10 -0
  141. package/exports/themes/default/theme.dark.css +33 -0
  142. package/exports/themes/default/theme.light.css +33 -0
  143. package/exports/themes/default/tokens.css +256 -0
  144. package/exports/themes/default/typography.module.css +150 -0
  145. package/exports/time-picker/dial.d.ts +1 -0
  146. package/exports/time-picker/hour-field.d.ts +1 -0
  147. package/exports/time-picker.js +52 -0
  148. package/exports/title.js +1 -0
  149. package/exports/toggle/toggle-button.d.ts +13 -0
  150. package/exports/toggle-button.js +63 -0
  151. package/exports/toggle.js +78 -0
  152. package/exports/top-app-bar.js +143 -0
  153. package/exports/tslib.es6-d3ba6528.js +57 -0
  154. package/exports/types.d.ts +18 -0
  155. package/exports/types.js +1 -0
  156. package/exports/typography/title.d.ts +1 -0
  157. package/exports/typography.js +206 -0
  158. package/package.json +256 -0
@@ -0,0 +1,227 @@
1
+ import { _ as __esDecorate, a as __runInitializers } from './tslib.es6-d3ba6528.js';
2
+ import { customElement, property, css, html, LiteElement } from '@vandeurenglenn/lite';
3
+ import './elevation.js';
4
+
5
+ let CustomButton = (() => {
6
+ let _classDecorators = [customElement('custom-button')];
7
+ let _classDescriptor;
8
+ let _classExtraInitializers = [];
9
+ let _classThis;
10
+ let _classSuper = LiteElement;
11
+ let _hasIcon_decorators;
12
+ let _hasIcon_initializers = [];
13
+ let _hasIcon_extraInitializers = [];
14
+ let _hasLabel_decorators;
15
+ let _hasLabel_initializers = [];
16
+ let _hasLabel_extraInitializers = [];
17
+ let _type_decorators;
18
+ let _type_initializers = [];
19
+ let _type_extraInitializers = [];
20
+ let _label_decorators;
21
+ let _label_initializers = [];
22
+ let _label_extraInitializers = [];
23
+ (class extends _classSuper {
24
+ static { _classThis = this; }
25
+ static {
26
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
27
+ _hasIcon_decorators = [property({ attribute: 'has-icon', reflect: true })];
28
+ _hasLabel_decorators = [property({ attribute: 'has-label', reflect: true })];
29
+ _type_decorators = [property({ attribute: 'type', reflect: true })];
30
+ _label_decorators = [property()];
31
+ __esDecorate(this, null, _hasIcon_decorators, { kind: "accessor", name: "hasIcon", static: false, private: false, access: { has: obj => "hasIcon" in obj, get: obj => obj.hasIcon, set: (obj, value) => { obj.hasIcon = value; } }, metadata: _metadata }, _hasIcon_initializers, _hasIcon_extraInitializers);
32
+ __esDecorate(this, null, _hasLabel_decorators, { kind: "accessor", name: "hasLabel", static: false, private: false, access: { has: obj => "hasLabel" in obj, get: obj => obj.hasLabel, set: (obj, value) => { obj.hasLabel = value; } }, metadata: _metadata }, _hasLabel_initializers, _hasLabel_extraInitializers);
33
+ __esDecorate(this, null, _type_decorators, { kind: "accessor", name: "type", static: false, private: false, access: { has: obj => "type" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);
34
+ __esDecorate(this, null, _label_decorators, { kind: "accessor", name: "label", static: false, private: false, access: { has: obj => "label" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);
35
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
36
+ _classThis = _classDescriptor.value;
37
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
38
+ }
39
+ #hasIcon_accessor_storage = __runInitializers(this, _hasIcon_initializers, void 0);
40
+ get hasIcon() { return this.#hasIcon_accessor_storage; }
41
+ set hasIcon(value) { this.#hasIcon_accessor_storage = value; }
42
+ #hasLabel_accessor_storage = (__runInitializers(this, _hasIcon_extraInitializers), __runInitializers(this, _hasLabel_initializers, void 0));
43
+ get hasLabel() { return this.#hasLabel_accessor_storage; }
44
+ set hasLabel(value) { this.#hasLabel_accessor_storage = value; }
45
+ #type_accessor_storage = (__runInitializers(this, _hasLabel_extraInitializers), __runInitializers(this, _type_initializers, 'text'));
46
+ get type() { return this.#type_accessor_storage; }
47
+ set type(value) { this.#type_accessor_storage = value; }
48
+ #label_accessor_storage = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _label_initializers, void 0));
49
+ get label() { return this.#label_accessor_storage; }
50
+ set label(value) { this.#label_accessor_storage = value; }
51
+ static styles = [
52
+ css `
53
+ :host {
54
+ color: var(--custom-button-color, --md-sys-color-on-background);
55
+ display: flex;
56
+
57
+ height: 40px;
58
+ border-radius: 20px;
59
+ position: relative;
60
+ pointer-events: auto;
61
+ cursor: pointer;
62
+
63
+ --elevation-level: 0;
64
+ }
65
+
66
+ button {
67
+ box-sizing: border-box;
68
+ border: none;
69
+ background: transparent;
70
+ color: inherit;
71
+ align-items: center;
72
+ justify-content: center;
73
+ user-select: none;
74
+ outline: none;
75
+ cursor: pointer;
76
+ border-radius: inherit;
77
+ padding: none;
78
+ width: inherit;
79
+ height: inherit;
80
+ display: flex;
81
+ pointer-events: none;
82
+ }
83
+
84
+ .label,
85
+ ::slotted(*) {
86
+ font-family: var(--md-sys-typescale-label-large-font-family-name);
87
+ font-style: var(--md-sys-typescale-label-large-font-family-style);
88
+ font-weight: var(--md-sys-typescale-label-large-font-weight);
89
+ font-size: var(--md-sys-typescale-label-large-font-size);
90
+ letter-spacing: var(--md-sys-typescale-label-large-tracking);
91
+ line-height: var(--md-sys-typescale-label-large-height);
92
+ text-transform: var(--md-sys-typescale-label-large-text-transform);
93
+ text-decoration: var(--md-sys-typescale-label-large-text-decoration);
94
+ }
95
+
96
+ :host([type='filled']),
97
+ :host([type='filled']) ::slotted(*) {
98
+ color: var(--md-sys-color-on-primary);
99
+ fill: var(--md-sys-color-on-primary);
100
+ background: var(--md-sys-color-primary);
101
+ }
102
+
103
+ :host([type='outlined']),
104
+ :host([type='outlined']) ::slotted(*) {
105
+ color: var(--md-sys-color-on-surface);
106
+ fill: var(--md-sys-color-on-surface);
107
+ background: var(--md-sys-color-surface);
108
+ border: solid 1px;
109
+ border-color: var(--md-sys-color-outline);
110
+ }
111
+
112
+ :host([type='elevated']),
113
+ :host([type='elevated']) ::slotted(*) {
114
+ color: var(--md-sys-color-primary);
115
+ fill: var(--md-sys-color-primary);
116
+ background: var(--md-sys-color-surface-container-low);
117
+ }
118
+
119
+ :host([type='tertiary']),
120
+ :host([type='tertiary']) ::slotted(*) {
121
+ background: var(--md-sys-color-tertiary);
122
+ color: var(--md-sys-color-on-tertiary);
123
+ fill: var(--md-sys-color-on-tertiary);
124
+ }
125
+
126
+ :host([type='tonal']),
127
+ :host([type='tonal']) ::slotted(*) {
128
+ background: var(--md-sys-color-secondary-container);
129
+ color: var(--md-sys-color-on-seconday-container);
130
+ fill: var(--md-sys-color-on-seconday-container);
131
+ }
132
+
133
+ custom-elevation {
134
+ --md-elevation-level: var(--elevation-level);
135
+ }
136
+
137
+ :host([type='elevated']) custom-elevation {
138
+ --elevation-level: 1;
139
+ }
140
+
141
+ :host([type='filled']),
142
+ :host([type='outlined']),
143
+ :host([type='text']),
144
+ :host([type='tonal']) {
145
+ --elevation-level: 0;
146
+ }
147
+
148
+ :host([has-label]) .label {
149
+ padding-left: 24px;
150
+ padding-right: 24px;
151
+ }
152
+
153
+ :host([has-icon]:not([has-label])) {
154
+ border-radius: 50%;
155
+ width: 40px;
156
+ align-items: center;
157
+ justify-content: center;
158
+ }
159
+
160
+ :host([has-icon][has-label]) .label {
161
+ padding-left: 8px;
162
+ padding-right: 24px;
163
+ }
164
+ :host([has-icon][has-label]) slot[name='icon']::slotted(*) {
165
+ padding-left: 16px;
166
+ }
167
+
168
+ :host([disabled]) .label,
169
+ :host([disabled]) slot[name='icon']::slotted(*) {
170
+ opacity: 0.38;
171
+ }
172
+
173
+ ::slotted(*) {
174
+ pointer-events: none;
175
+ }
176
+
177
+ :host(:focus),
178
+ :host(:hover) {
179
+ --elevation-level: 2;
180
+ }
181
+
182
+ :host(:active) {
183
+ --elevation-level: 0;
184
+ }
185
+
186
+ button * {
187
+ pointer-events: none;
188
+ }
189
+ `
190
+ ];
191
+ connectedCallback() {
192
+ const slots = Array.from(this.shadowRoot.querySelectorAll('slot'));
193
+ for (const slot of slots) {
194
+ slot.addEventListener('slotchange', () => this.#slotchange(slot));
195
+ }
196
+ this.#slotchange(slots[0]);
197
+ }
198
+ onChange(propertyKey, value) {
199
+ if (propertyKey === 'label') {
200
+ if (value)
201
+ this.hasLabel = true;
202
+ else
203
+ this.hasLabel = false;
204
+ }
205
+ }
206
+ #slotchange = (__runInitializers(this, _label_extraInitializers), (slot) => {
207
+ if (slot.getAttribute('name') === 'icon') {
208
+ this.hasIcon = Array.from(slot?.assignedNodes() || []).length !== 0;
209
+ }
210
+ });
211
+ render() {
212
+ return html `
213
+ <button label=${this.label}>
214
+ <custom-elevation></custom-elevation>
215
+ <slot name="icon"></slot>
216
+ <span class="label">${this.label}</span>
217
+ </button>
218
+ `;
219
+ }
220
+ static {
221
+ __runInitializers(_classThis, _classExtraInitializers);
222
+ }
223
+ });
224
+ return _classThis;
225
+ })();
226
+
227
+ export { CustomButton };
@@ -0,0 +1,13 @@
1
+ import { LiteElement } from '@vandeurenglenn/lite';
2
+ import { propertiesConfig } from '../types.js';
3
+ import '../button/button.js';
4
+ import '../divider/divider.js';
5
+ import '../elevation/elevation.js';
6
+ export declare class CustomCard extends LiteElement {
7
+ dividerType: 'full' | 'inset' | 'middle-inset';
8
+ type: 'elevated' | 'filled' | 'outlined';
9
+ elevationLevel: Number;
10
+ static properties: propertiesConfig;
11
+ renderDivider(): import("lit-html").TemplateResult<1> | "";
12
+ render(): import("lit-html").TemplateResult<1>;
13
+ }
@@ -0,0 +1,187 @@
1
+ import { _ as __esDecorate, a as __runInitializers } from './tslib.es6-d3ba6528.js';
2
+ import { customElement, html, LiteElement } from '@vandeurenglenn/lite';
3
+ import './button.js';
4
+ import './divider.js';
5
+ import './elevation.js';
6
+
7
+ let CustomCard = (() => {
8
+ let _classDecorators = [customElement('custom-card')];
9
+ let _classDescriptor;
10
+ let _classExtraInitializers = [];
11
+ let _classThis;
12
+ let _classSuper = LiteElement;
13
+ (class extends _classSuper {
14
+ static { _classThis = this; }
15
+ static {
16
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
17
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
18
+ _classThis = _classDescriptor.value;
19
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
20
+ }
21
+ dividerType;
22
+ type = 'elevated';
23
+ elevationLevel = 0;
24
+ static properties = {
25
+ hasDivider: { type: Boolean },
26
+ elevationLevel: {
27
+ type: Number
28
+ }
29
+ };
30
+ renderDivider() {
31
+ const actionsSlot = this.shadowRoot.querySelector('slot[name="actions"]');
32
+ // @ts-ignore
33
+ const children = Array.from(actionsSlot?.assignedNodes() || []);
34
+ return children.length !== 0
35
+ ? html `<custom-divider
36
+ ?inset=${this.dividerType === 'inset'}
37
+ ?middle-inset=${this.dividerType === 'inset'}
38
+ ></custom-divider>`
39
+ : '';
40
+ }
41
+ render() {
42
+ return html `
43
+ <style>
44
+ :host {
45
+ box-sizing: border-box;
46
+ display: flex;
47
+ margin: 8px;
48
+ position: relative;
49
+ height: fit-content;
50
+ max-height: 320px;
51
+ width: 100%;
52
+ max-width: 320px;
53
+ border-radius: 12px;
54
+ border: 1px solid;
55
+ overflow: hidden;
56
+ }
57
+
58
+ .container {
59
+ display: flex;
60
+ flex-direction: column;
61
+ max-width: 320px;
62
+ height: max-content;
63
+ max-height: 320px;
64
+ border-color: transparent;
65
+ color: var(--md-sys-color-on-surface-variant);
66
+ background: var(--md-sys-color-surface-variant);
67
+ /* position: absolute; */
68
+ }
69
+
70
+ .content-container {
71
+ display: flex;
72
+ flex-direction: column;
73
+ box-sizing: border-box;
74
+ padding: 16px;
75
+ height: 100%;
76
+ }
77
+
78
+ custom-elevation {
79
+ --md-elevation-level: 1;
80
+ }
81
+
82
+ :host() ::slotted(*) {
83
+ font-family: var(--md-sys-typescale-display-small-font-family-name);
84
+ font-weight: var(--md-sys-typescale-display-small-font-family-style);
85
+ }
86
+
87
+ slot[name='headline']::slotted(*) {
88
+ font-weight: var(--md-sys-typescale-headline-large-font-weight);
89
+ font-size: var(--md-sys-typescale-headline-large-font-size);
90
+ line-height: var(--md-sys-typescale-headline-large-line-height);
91
+ letter-spacing: var(--md-sys-typescale-headline-large-letter-spacing);
92
+ }
93
+
94
+ slot[name='subline']::slotted(*) {
95
+ font-weight: var(--md-sys-typescale-title-large-font-weight);
96
+ font-size: var(--md-sys-typescale-title-large-font-size);
97
+
98
+ line-height: var(--md-sys-typescale-title-large-line-height);
99
+ letter-spacing: var(--md-sys-typescale-title-large-letter-spacing);
100
+ }
101
+
102
+ slot[name='supportingText']::slotted(*) {
103
+ margin: 8px 0 0 0;
104
+ font-weight: var(--md-sys-typescale-body-medium-font-weight);
105
+ font-size: var(--md-sys-typescale-body-medium-font-size);
106
+
107
+ line-height: var(--md-sys-typescale-body-medium-line-height);
108
+ letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
109
+
110
+ max-height: 144px;
111
+ overflow-y: auto;
112
+ }
113
+
114
+ .supporting-text {
115
+ max-height: 196px;
116
+ overflow-y: scroll;
117
+ }
118
+
119
+ :host([type='filled']) .container {
120
+ color: var(--md-sys-color-on-secondary-container);
121
+ background: var(--md-sys-color-secondary-container);
122
+ }
123
+
124
+ :host([type='outlined']) .container {
125
+ color: var(--md-sys-color-on-surface);
126
+ background: var(--md-sys-color-surface);
127
+ }
128
+
129
+ :host([type='outlined']) {
130
+ border-color: var(--md-sys-color-outline);
131
+ }
132
+
133
+ :host([type='tertiary']) .container {
134
+ color: var(--md-sys-color-on-tertiary-container);
135
+ background: var(--md-sys-color-tertiary-container);
136
+ }
137
+
138
+ :host([type='tertiary']) {
139
+ border-color: var(--md-sys-color-outline);
140
+ }
141
+
142
+ :host([type='filled']) custom-elevation,
143
+ :host([type='outlined']) custom-elevation,
144
+ :host([type='tertiary']) custom-elevation {
145
+ --md-elevation-level: 0;
146
+ }
147
+
148
+ .actions {
149
+ height: 44px;
150
+ width: 100%;
151
+ display: flex;
152
+ }
153
+
154
+ ::slotted(*:not([slot='actions'])) {
155
+ overflow: hidden;
156
+ border-radius: 12px;
157
+ height: 100%;
158
+ width: 100%;
159
+ }
160
+ </style>
161
+ <custom-elevation></custom-elevation>
162
+ <span class="container">
163
+ <slot name="image"></slot>
164
+
165
+ <span class="content-container">
166
+ <slot name="headline"></slot>
167
+ <slot name="subline"></slot>
168
+ <span class="supporting-text">
169
+ <slot name="supportingText"></slot>
170
+ </span>
171
+ ${this.renderDivider()}
172
+ <span class="actions">
173
+ <flex-it flex="1"></flex-it>
174
+ <slot name="actions"></slot>
175
+ </span>
176
+ </span>
177
+ </span>
178
+ `;
179
+ }
180
+ static {
181
+ __runInitializers(_classThis, _classExtraInitializers);
182
+ }
183
+ });
184
+ return _classThis;
185
+ })();
186
+
187
+ export { CustomCard };
@@ -0,0 +1,77 @@
1
+ import { _ as __esDecorate, a as __runInitializers } from './tslib.es6-d3ba6528.js';
2
+ import { customElement, property, css, html, LiteElement } from '@vandeurenglenn/lite';
3
+
4
+ let DemoCode = (() => {
5
+ let _classDecorators = [customElement('demo-code')];
6
+ let _classDescriptor;
7
+ let _classExtraInitializers = [];
8
+ let _classThis;
9
+ let _classSuper = LiteElement;
10
+ let _code_decorators;
11
+ let _code_initializers = [];
12
+ let _code_extraInitializers = [];
13
+ (class extends _classSuper {
14
+ static { _classThis = this; }
15
+ static {
16
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
17
+ _code_decorators = [property({ type: String })];
18
+ __esDecorate(this, null, _code_decorators, { kind: "accessor", name: "code", static: false, private: false, access: { has: obj => "code" in obj, get: obj => obj.code, set: (obj, value) => { obj.code = value; } }, metadata: _metadata }, _code_initializers, _code_extraInitializers);
19
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
20
+ _classThis = _classDescriptor.value;
21
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
22
+ }
23
+ #code_accessor_storage = __runInitializers(this, _code_initializers, void 0);
24
+ get code() { return this.#code_accessor_storage; }
25
+ set code(value) { this.#code_accessor_storage = value; }
26
+ static styles = [
27
+ css `
28
+ :host {
29
+ display: flex;
30
+
31
+ color: var(--md-sys-color-on-surface-variant);
32
+ box-sizing: border-box;
33
+ width: 100%;
34
+ box-sizing: border-box;
35
+ background: var(--md-sys-color-surface-variant);
36
+ border: 1px solid var(--md-sys-color-outline);
37
+ border-radius: var(--md-sys-shape-corner-large);
38
+
39
+ /* margin-left: -100%; */
40
+ /* display: inline-block; */
41
+ margin: 12px 0 24px 0;
42
+
43
+ align-items: center;
44
+ }
45
+ pre,
46
+ code {
47
+ margin: 0;
48
+ padding: 0;
49
+ overflow: auto;
50
+ }
51
+ pre {
52
+ margin-bottom: -12px;
53
+ margin-left: -46px;
54
+ }
55
+ `
56
+ ];
57
+ render() {
58
+ return html `
59
+ <pre class="language-html">
60
+ <code class="language-html">
61
+ ${this.code}
62
+ </code>
63
+ </pre>
64
+ `;
65
+ }
66
+ constructor() {
67
+ super(...arguments);
68
+ __runInitializers(this, _code_extraInitializers);
69
+ }
70
+ static {
71
+ __runInitializers(_classThis, _classExtraInitializers);
72
+ }
73
+ });
74
+ return _classThis;
75
+ })();
76
+
77
+ export { DemoCode };
@@ -0,0 +1,9 @@
1
+ import { DemoIcons } from './demo/demo-icons.js';
2
+ import { DemoSection } from './demo/section.js';
3
+ export { DemoSection, DemoIcons };
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ 'demo-icons': DemoIcons;
7
+ 'demo-section': DemoSection;
8
+ }
9
+ }
@@ -0,0 +1,10 @@
1
+ export { DemoIcons } from './demo-icons.js';
2
+ export { DemoSection } from './section.js';
3
+ import './tslib.es6-d3ba6528.js';
4
+ import '@vandeurenglenn/lite';
5
+ import './icon-set.js';
6
+ import '@vandeurenglenn/little-pubsub';
7
+ import './section2.js';
8
+ import './scroll-mixin.js';
9
+ import './elevation.js';
10
+ import './code.js';
@@ -0,0 +1,48 @@
1
+ import { _ as __esDecorate, a as __runInitializers } from './tslib.es6-d3ba6528.js';
2
+ import { customElement, css, html, LiteElement } from '@vandeurenglenn/lite';
3
+ import './icon-set.js';
4
+ import '@vandeurenglenn/little-pubsub';
5
+
6
+ let DemoIcons = (() => {
7
+ let _classDecorators = [customElement('demo-icons')];
8
+ let _classDescriptor;
9
+ let _classExtraInitializers = [];
10
+ let _classThis;
11
+ let _classSuper = LiteElement;
12
+ (class extends _classSuper {
13
+ static { _classThis = this; }
14
+ static {
15
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
16
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
17
+ _classThis = _classDescriptor.value;
18
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
19
+ }
20
+ static styles = [
21
+ css `
22
+ :host {
23
+ display: block;
24
+ }
25
+ `
26
+ ];
27
+ render() {
28
+ return html ` <custom-icon-set>
29
+ <template>
30
+ <span name="home">@symbol-home</span>
31
+ <span name="menu">@symbol-menu</span>
32
+ <span name="info">@symbol-info</span>
33
+ <span name="check_box">@symbol-check_box</span>
34
+ <span name="menu_open">@symbol-menu_open</span>
35
+ <span name="more_vert">@symbol-more_vert</span>
36
+ <span name="close">@symbol-close</span>
37
+ <span name="check_box_outline_blank">@symbol-check_box_outline_blank</span>
38
+ </template>
39
+ </custom-icon-set>`;
40
+ }
41
+ static {
42
+ __runInitializers(_classThis, _classExtraInitializers);
43
+ }
44
+ });
45
+ return _classThis;
46
+ })();
47
+
48
+ export { DemoIcons };