@eui/eds-react 22.0.0-alpha.14 → 22.0.0-alpha.16

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 (101) hide show
  1. package/eds-datepicker/eds-date-adapter.d.ts +56 -0
  2. package/eds-datepicker/eds-date-adapter.d.ts.map +1 -0
  3. package/eds-datepicker/eds-date-adapter.js +69 -0
  4. package/eds-datepicker/eds-date-adapter.js.map +1 -0
  5. package/eds-datepicker/eds-datepicker.css +137 -0
  6. package/eds-datepicker/eds-datepicker.d.ts +67 -0
  7. package/eds-datepicker/eds-datepicker.d.ts.map +1 -0
  8. package/eds-datepicker/eds-datepicker.js +203 -0
  9. package/eds-datepicker/eds-datepicker.js.map +1 -0
  10. package/eds-datepicker/eds-luxon-date-adapter.d.ts +33 -0
  11. package/eds-datepicker/eds-luxon-date-adapter.d.ts.map +1 -0
  12. package/eds-datepicker/eds-luxon-date-adapter.js +90 -0
  13. package/eds-datepicker/eds-luxon-date-adapter.js.map +1 -0
  14. package/eds-datepicker/eds-timepicker.css +69 -0
  15. package/eds-datepicker/eds-timepicker.d.ts +44 -0
  16. package/eds-datepicker/eds-timepicker.d.ts.map +1 -0
  17. package/eds-datepicker/eds-timepicker.js +122 -0
  18. package/eds-datepicker/eds-timepicker.js.map +1 -0
  19. package/eds-datepicker/index.d.ts +8 -0
  20. package/eds-datepicker/index.d.ts.map +1 -0
  21. package/eds-datepicker/index.js +5 -0
  22. package/eds-datepicker/index.js.map +1 -0
  23. package/eds-label/eds-label.css +19 -0
  24. package/eds-label/eds-label.d.ts +22 -0
  25. package/eds-label/eds-label.d.ts.map +1 -0
  26. package/eds-label/eds-label.js +15 -0
  27. package/eds-label/eds-label.js.map +1 -0
  28. package/eds-label/index.d.ts +3 -0
  29. package/eds-label/index.d.ts.map +1 -0
  30. package/eds-label/index.js +2 -0
  31. package/eds-label/index.js.map +1 -0
  32. package/eds-shell/eds-shell-sidebar.css +1 -0
  33. package/eds-shell/eds-shell.css +2 -1
  34. package/eds-table/eds-table-context.d.ts +56 -0
  35. package/eds-table/eds-table-context.d.ts.map +1 -0
  36. package/eds-table/eds-table-context.js +12 -0
  37. package/eds-table/eds-table-context.js.map +1 -0
  38. package/eds-table/eds-table-expandable-row.d.ts +22 -0
  39. package/eds-table/eds-table-expandable-row.d.ts.map +1 -0
  40. package/eds-table/eds-table-expandable-row.js +25 -0
  41. package/eds-table/eds-table-expandable-row.js.map +1 -0
  42. package/eds-table/eds-table-filter.d.ts +38 -0
  43. package/eds-table/eds-table-filter.d.ts.map +1 -0
  44. package/eds-table/eds-table-filter.js +66 -0
  45. package/eds-table/eds-table-filter.js.map +1 -0
  46. package/eds-table/eds-table-highlight.d.ts +38 -0
  47. package/eds-table/eds-table-highlight.d.ts.map +1 -0
  48. package/eds-table/eds-table-highlight.js +81 -0
  49. package/eds-table/eds-table-highlight.js.map +1 -0
  50. package/eds-table/eds-table-selectable-header.d.ts +19 -0
  51. package/eds-table/eds-table-selectable-header.d.ts.map +1 -0
  52. package/eds-table/eds-table-selectable-header.js +38 -0
  53. package/eds-table/eds-table-selectable-header.js.map +1 -0
  54. package/eds-table/eds-table-selectable-row.d.ts +21 -0
  55. package/eds-table/eds-table-selectable-row.d.ts.map +1 -0
  56. package/eds-table/eds-table-selectable-row.js +92 -0
  57. package/eds-table/eds-table-selectable-row.js.map +1 -0
  58. package/eds-table/eds-table-sort.model.d.ts +11 -0
  59. package/eds-table/eds-table-sort.model.d.ts.map +1 -0
  60. package/eds-table/eds-table-sort.model.js +5 -0
  61. package/eds-table/eds-table-sort.model.js.map +1 -0
  62. package/eds-table/eds-table-sortable-col.d.ts +32 -0
  63. package/eds-table/eds-table-sortable-col.d.ts.map +1 -0
  64. package/eds-table/eds-table-sortable-col.js +65 -0
  65. package/eds-table/eds-table-sortable-col.js.map +1 -0
  66. package/eds-table/eds-table-sticky-col.d.ts +25 -0
  67. package/eds-table/eds-table-sticky-col.d.ts.map +1 -0
  68. package/eds-table/eds-table-sticky-col.js +23 -0
  69. package/eds-table/eds-table-sticky-col.js.map +1 -0
  70. package/eds-table/eds-table.css +410 -0
  71. package/eds-table/eds-table.d.ts +92 -0
  72. package/eds-table/eds-table.d.ts.map +1 -0
  73. package/eds-table/eds-table.js +353 -0
  74. package/eds-table/eds-table.js.map +1 -0
  75. package/eds-table/index.d.ts +20 -0
  76. package/eds-table/index.d.ts.map +1 -0
  77. package/eds-table/index.js +10 -0
  78. package/eds-table/index.js.map +1 -0
  79. package/index.d.ts +6 -0
  80. package/index.d.ts.map +1 -1
  81. package/index.js +3 -0
  82. package/index.js.map +1 -1
  83. package/package.json +22 -2
  84. package/showcase/doc-page.d.ts +56 -0
  85. package/showcase/doc-page.d.ts.map +1 -0
  86. package/showcase/doc-page.js +104 -0
  87. package/showcase/doc-page.js.map +1 -0
  88. package/showcase/index.d.ts +7 -0
  89. package/showcase/index.d.ts.map +1 -0
  90. package/showcase/index.js +7 -0
  91. package/showcase/index.js.map +1 -0
  92. package/showcase/jsx-to-string.d.ts +15 -0
  93. package/showcase/jsx-to-string.d.ts.map +1 -0
  94. package/showcase/jsx-to-string.js +98 -0
  95. package/showcase/jsx-to-string.js.map +1 -0
  96. package/showcase/shared.d.ts +64 -0
  97. package/showcase/shared.d.ts.map +1 -0
  98. package/showcase/shared.js +43 -0
  99. package/showcase/shared.js.map +1 -0
  100. package/showcase/showcase.css +407 -0
  101. package/styles.css +4 -0
@@ -0,0 +1,407 @@
1
+ /* Shared showcase doc-page presentation, reused by both standalone showcase hosts
2
+ (eui-showcase-react and eui-showcase-webcomponents). Page frame (title + samples column +
3
+ sticky "On this page" nav), per-sample title bar with a Code / Hide code toggle, and the
4
+ sample preview + code blocks. All colors come from EDS tokens (--eds-*), which cascade from
5
+ the .eui-21 context on the host <body>; this file defines no tokens.
6
+
7
+ Requires the global tokens layer first: import '@eui/eds-styles/dist/eds.css'. Host-specific
8
+ chrome (sidebar/logo/home-page styling) stays in each host's own demo.css. */
9
+
10
+ /* ------------------------------------------------------------------ *
11
+ * Sample preview + code blocks.
12
+ * ------------------------------------------------------------------ */
13
+
14
+ .sample-preview {
15
+ padding: var(--eds-sp-m);
16
+ }
17
+
18
+ .sample-code {
19
+ margin: 0;
20
+ padding: var(--eds-sp-m);
21
+ border: var(--eds-bw-xs) solid var(--eds-c-border-divider);
22
+ border-top: 0;
23
+ border-radius: 0 0 var(--eds-br-m) var(--eds-br-m);
24
+ background-color: var(--eds-c-surface-elevation-sunken);
25
+ overflow-x: auto;
26
+ }
27
+
28
+ .sample-code code {
29
+ font-family: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;
30
+ font-size: 0.8125rem;
31
+ line-height: 1.5;
32
+ white-space: pre;
33
+ color: var(--eds-c-foreground);
34
+ }
35
+
36
+ /* ------------------------------------------------------------------ *
37
+ * doc-page — page frame (title + samples column + sticky "On this page" nav),
38
+ * per-sample title bar with a Code / Hide code toggle.
39
+ * ------------------------------------------------------------------ */
40
+
41
+ .doc-page {
42
+ display: flex;
43
+ align-items: flex-start;
44
+ gap: var(--eds-sp-xl);
45
+ padding: var(--eds-sp-l);
46
+ }
47
+
48
+ .doc-page__main {
49
+ flex: 1 1 auto;
50
+ min-width: 0;
51
+ }
52
+
53
+ .doc-page__header {
54
+ margin-bottom: var(--eds-sp-l);
55
+ border-bottom: var(--eds-bw-xs) solid var(--eds-c-border-divider);
56
+ padding-bottom: var(--eds-sp-s);
57
+ }
58
+
59
+ .doc-page__title {
60
+ margin: 0;
61
+ font: var(--eds-f-heading-l);
62
+ color: var(--eds-c-foreground);
63
+ }
64
+
65
+ .doc-page__sublabel {
66
+ margin: var(--eds-sp-3xs) 0 0;
67
+ font: var(--eds-f-paragraph-s);
68
+ color: var(--eds-c-foreground-subtler);
69
+ }
70
+
71
+ .doc-page__samples {
72
+ display: block;
73
+ }
74
+
75
+ /* Sticky right-hand navigation, like the Angular "On this page" column. */
76
+ .doc-page__nav {
77
+ flex: 0 0 220px;
78
+ position: sticky;
79
+ top: var(--eds-sp-l);
80
+ align-self: flex-start;
81
+ max-height: calc(100vh - var(--eds-sp-4xl));
82
+ overflow-y: auto;
83
+ }
84
+
85
+ .doc-page__nav-heading {
86
+ font: var(--eds-f-label-s-semi-bold);
87
+ color: var(--eds-c-foreground-subtler);
88
+ text-transform: uppercase;
89
+ letter-spacing: 0.04em;
90
+ margin-bottom: var(--eds-sp-xs);
91
+ padding-left: var(--eds-sp-xs);
92
+ }
93
+
94
+ .doc-page__nav-list,
95
+ .doc-page__nav-sublist {
96
+ list-style: none;
97
+ margin: 0;
98
+ padding: 0;
99
+ }
100
+
101
+ .doc-page__nav-category {
102
+ font: var(--eds-f-label-xs-semi-bold);
103
+ color: var(--eds-c-foreground-subtler);
104
+ text-transform: uppercase;
105
+ letter-spacing: 0.04em;
106
+ margin: var(--eds-sp-s) 0 var(--eds-sp-2xs);
107
+ padding-left: var(--eds-sp-xs);
108
+ }
109
+
110
+ .doc-page__nav-item {
111
+ display: block;
112
+ width: 100%;
113
+ text-align: left;
114
+ border: 0;
115
+ background: transparent;
116
+ cursor: pointer;
117
+ padding: var(--eds-sp-3xs) var(--eds-sp-xs);
118
+ border-radius: var(--eds-br-s);
119
+ border-left: var(--eds-bw-s) solid transparent;
120
+ font: var(--eds-f-paragraph-s);
121
+ color: var(--eds-c-foreground-subtle);
122
+ }
123
+
124
+ .doc-page__nav-item:hover {
125
+ background-color: var(--eds-c-surface-neutral-subtler);
126
+ color: var(--eds-c-foreground);
127
+ }
128
+
129
+ .doc-page__nav-item--selected {
130
+ color: var(--eds-c-foreground-primary);
131
+ border-left-color: var(--eds-c-border-primary);
132
+ font: var(--eds-f-label-s-semi-bold);
133
+ }
134
+
135
+ /* Per-sample block. */
136
+ .doc-sample {
137
+ margin-bottom: var(--eds-sp-xl);
138
+ scroll-margin-top: var(--eds-sp-l);
139
+ }
140
+
141
+ .doc-sample__title {
142
+ display: flex;
143
+ align-items: center;
144
+ gap: var(--eds-sp-2xs);
145
+ margin-bottom: var(--eds-sp-s);
146
+ padding-bottom: var(--eds-sp-2xs);
147
+ border-bottom: var(--eds-bw-xs) dashed var(--eds-c-border-divider);
148
+ }
149
+
150
+ .doc-sample__label {
151
+ font: var(--eds-f-label-m-semi-bold);
152
+ color: var(--eds-c-foreground);
153
+ }
154
+
155
+ .doc-sample__link {
156
+ border: 0;
157
+ background: transparent;
158
+ color: var(--eds-c-foreground-subtler);
159
+ cursor: pointer;
160
+ padding: 0 var(--eds-sp-3xs);
161
+ border-radius: var(--eds-br-xs);
162
+ font: var(--eds-f-label-m-semi-bold);
163
+ opacity: 0;
164
+ transition: opacity 0.15s ease;
165
+ }
166
+
167
+ .doc-sample:hover .doc-sample__link {
168
+ opacity: 1;
169
+ }
170
+
171
+ .doc-sample__link:hover {
172
+ color: var(--eds-c-foreground-primary);
173
+ }
174
+
175
+ .doc-sample__spacer {
176
+ flex: 1 1 auto;
177
+ }
178
+
179
+ .doc-sample__code-toggle {
180
+ border: var(--eds-bw-xs) solid var(--eds-c-border-primary);
181
+ background: transparent;
182
+ color: var(--eds-c-foreground-primary);
183
+ cursor: pointer;
184
+ padding: var(--eds-sp-4xs) var(--eds-sp-s);
185
+ border-radius: var(--eds-br-s);
186
+ font: var(--eds-f-label-s-semi-bold);
187
+ }
188
+
189
+ .doc-sample__code-toggle:hover {
190
+ background-color: var(--eds-c-surface-primary-subtle);
191
+ color: var(--eds-c-on-surface-primary-subtle);
192
+ }
193
+
194
+ /* When a sample's code is collapsed the preview keeps a full (rounded) border; when the
195
+ code shows, the preview's bottom corners flatten to meet the code block. */
196
+ .doc-sample .sample-preview {
197
+ border-radius: var(--eds-br-m);
198
+ }
199
+
200
+ .doc-sample .sample-preview:has(+ .sample-code) {
201
+ border-radius: var(--eds-br-m) var(--eds-br-m) 0 0;
202
+ }
203
+
204
+ @media (max-width: 1023px) {
205
+ .doc-page__nav {
206
+ display: none;
207
+ }
208
+ }
209
+
210
+ /* ================================================================== *
211
+ * Showcase host chrome — shared by both showcase hosts.
212
+ * The eui-showcase-react host is the master source; the WC host reuses
213
+ * these via @eui/eds-react/showcase/showcase.css. Presentational only,
214
+ * all colors from EDS tokens.
215
+ * ================================================================== */
216
+
217
+ /* ------------------------------------------------------------------ *
218
+ * Sidebar category groups (Shell / EDS validated / Components / …).
219
+ * Make the top-level parent group labels larger + bold to stand out
220
+ * from their child component links. Scoped to root-level items only
221
+ * (direct children of the menu's top list, not the nested sublist).
222
+ * ------------------------------------------------------------------ */
223
+
224
+ .eds-shell-sidebar-nav .eds-menu > .eds-menu__list > .eds-menu-item > .eds-menu-item__content > .eds-menu-item__link > .eds-menu-item__link-content-block > .eds-menu-item__link-label {
225
+ font: var(--eds-f-label-m-semi-bold);
226
+ font-weight: 700;
227
+ }
228
+
229
+ /* ------------------------------------------------------------------ *
230
+ * Toolbar logo version badge — a small red "v22" pill pinned to the
231
+ * top-right corner of the toolbar logo.
232
+ * ------------------------------------------------------------------ */
233
+
234
+ /* The toolbar's `.logo-wrapper` clips with `overflow: hidden`, which cuts a badge that spills
235
+ past the logo box. Let the wrapper (and our logo) overflow so the badge can sit on the corner. */
236
+ .eds-shell-toolbar .logo-wrapper:has(.showcase-logo) {
237
+ overflow: visible;
238
+ }
239
+
240
+ .showcase-logo {
241
+ position: relative;
242
+ overflow: visible;
243
+ }
244
+
245
+ .showcase-logo__badge {
246
+ position: absolute;
247
+ top: -6px;
248
+ right: -14px;
249
+ padding: 0 var(--eds-sp-3xs);
250
+ border-radius: var(--eds-br-full, 999px);
251
+ background-color: var(--eds-c-surface-critical);
252
+ color: var(--eds-c-on-surface-critical);
253
+ font: var(--eds-f-microcopy-2xs);
254
+ font-weight: 700;
255
+ line-height: 1.4;
256
+ letter-spacing: 0.02em;
257
+ white-space: nowrap;
258
+ pointer-events: none;
259
+ z-index: 2;
260
+ }
261
+
262
+ /* ------------------------------------------------------------------ *
263
+ * Home landing page — hero, projection pipeline, feature grid,
264
+ * getting-started. Presentational only; all colors from EDS tokens.
265
+ * ------------------------------------------------------------------ */
266
+
267
+ .home {
268
+ max-width: 1100px;
269
+ margin: 0 auto;
270
+ padding: var(--eds-sp-xl) var(--eds-sp-l) var(--eds-sp-4xl);
271
+ }
272
+
273
+ .home__hero {
274
+ padding: var(--eds-sp-2xl) var(--eds-sp-xl);
275
+ margin-bottom: var(--eds-sp-2xl);
276
+ border-radius: var(--eds-br-l, var(--eds-br-m));
277
+ background: linear-gradient(
278
+ 135deg,
279
+ var(--eds-c-surface-primary-subtler) 0%,
280
+ var(--eds-c-surface-elevation-sunken) 100%
281
+ );
282
+ border: var(--eds-bw-xs) solid var(--eds-c-border-divider);
283
+ }
284
+
285
+ .home__hero-content {
286
+ max-width: 720px;
287
+ }
288
+
289
+ .home__title {
290
+ margin: 0 0 var(--eds-sp-s);
291
+ font: var(--eds-f-heading-2xl);
292
+ color: var(--eds-c-foreground);
293
+ letter-spacing: -0.02em;
294
+ }
295
+
296
+ .home__lead {
297
+ margin: 0 0 var(--eds-sp-l);
298
+ font: var(--eds-f-paragraph-l);
299
+ color: var(--eds-c-foreground-subtle);
300
+ }
301
+
302
+ .home__stat {
303
+ display: flex;
304
+ flex-direction: column;
305
+ }
306
+
307
+ .home__stat-value {
308
+ font: var(--eds-f-heading-xl);
309
+ color: var(--eds-c-foreground-primary);
310
+ line-height: 1;
311
+ }
312
+
313
+ .home__stat-label {
314
+ margin-top: var(--eds-sp-3xs);
315
+ font: var(--eds-f-paragraph-s);
316
+ color: var(--eds-c-foreground-subtler);
317
+ }
318
+
319
+ .home__section {
320
+ margin-bottom: var(--eds-sp-2xl);
321
+ }
322
+
323
+ .home__section-title {
324
+ margin: 0 0 var(--eds-sp-xs);
325
+ font: var(--eds-f-heading-l);
326
+ color: var(--eds-c-foreground);
327
+ }
328
+
329
+ .home__section-lead {
330
+ margin: 0 0 var(--eds-sp-l);
331
+ max-width: 760px;
332
+ font: var(--eds-f-paragraph-m);
333
+ color: var(--eds-c-foreground-subtle);
334
+ }
335
+
336
+ /* Projection pipeline — three cards separated by arrows, wrapping on narrow screens. */
337
+ .home__pipeline {
338
+ display: flex;
339
+ align-items: stretch;
340
+ gap: var(--eds-sp-s);
341
+ flex-wrap: wrap;
342
+ }
343
+
344
+ .home__pipeline .home__card {
345
+ flex: 1 1 240px;
346
+ }
347
+
348
+ .home__pipeline-arrow {
349
+ display: flex;
350
+ align-items: center;
351
+ color: var(--eds-c-foreground-subtler);
352
+ }
353
+
354
+ /* Feature grid — responsive, token-driven cards. */
355
+ .home__grid {
356
+ display: grid;
357
+ grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
358
+ gap: var(--eds-sp-m);
359
+ }
360
+
361
+ .home__feature {
362
+ display: flex;
363
+ gap: var(--eds-sp-s);
364
+ padding: var(--eds-sp-m);
365
+ border-radius: var(--eds-br-m);
366
+ background-color: var(--eds-c-surface-elevation);
367
+ border: var(--eds-bw-xs) solid var(--eds-c-border-divider);
368
+ }
369
+
370
+ .home__feature-icon {
371
+ display: flex;
372
+ align-items: center;
373
+ justify-content: center;
374
+ flex: 0 0 auto;
375
+ width: 40px;
376
+ height: 40px;
377
+ border-radius: var(--eds-br-m);
378
+ background-color: var(--eds-c-surface-primary-subtler);
379
+ color: var(--eds-c-foreground-primary);
380
+ }
381
+
382
+ .home__feature-title {
383
+ margin: 0 0 var(--eds-sp-3xs);
384
+ font: var(--eds-f-label-m-semi-bold);
385
+ color: var(--eds-c-foreground);
386
+ }
387
+
388
+ .home__feature-body {
389
+ margin: 0;
390
+ font: var(--eds-f-paragraph-s);
391
+ color: var(--eds-c-foreground-subtle);
392
+ }
393
+
394
+ /* Getting-started code block. */
395
+ .home__code {
396
+ margin: 0;
397
+ padding: var(--eds-sp-m);
398
+ border-radius: var(--eds-br-m);
399
+ background-color: var(--eds-c-surface-elevation-sunken);
400
+ border: var(--eds-bw-xs) solid var(--eds-c-border-divider);
401
+ overflow-x: auto;
402
+ font-family: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;
403
+ font-size: 0.8125rem;
404
+ line-height: 1.6;
405
+ color: var(--eds-c-foreground);
406
+ white-space: pre;
407
+ }
package/styles.css CHANGED
@@ -41,6 +41,8 @@
41
41
  @import './eds-chip-list/eds-chip-list.css';
42
42
  @import './eds-chip/eds-chip.css';
43
43
  @import './eds-date-block/eds-date-block.css';
44
+ @import './eds-datepicker/eds-datepicker.css';
45
+ @import './eds-datepicker/eds-timepicker.css';
44
46
  @import './eds-dialog/eds-dialog.css';
45
47
  @import './eds-dimmer/eds-dimmer.css';
46
48
  @import './eds-disable-content/eds-disable-content.css';
@@ -71,6 +73,7 @@
71
73
  @import './eds-input-number/eds-input-number.css';
72
74
  @import './eds-input-radio/eds-input-radio.css';
73
75
  @import './eds-input-text/eds-input-text.css';
76
+ @import './eds-label/eds-label.css';
74
77
  @import './eds-language-selector/eds-language-selector.css';
75
78
  @import './eds-link/eds-link.css';
76
79
  @import './eds-list/eds-list-item-content.css';
@@ -139,6 +142,7 @@
139
142
  @import './eds-skeleton/eds-skeleton.css';
140
143
  @import './eds-slider/eds-slider.css';
141
144
  @import './eds-split-button/eds-split-button.css';
145
+ @import './eds-table/eds-table.css';
142
146
  @import './eds-tabs/eds-tabs.css';
143
147
  @import './eds-tag-group/eds-tag-group.css';
144
148
  @import './eds-tag/eds-tag.css';