@adia-ai/web-components 0.8.18 → 0.8.20

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 (126) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/components/nav-group/nav-group.a2ui.json +5 -0
  3. package/components/nav-group/nav-group.class.js +14 -6
  4. package/components/nav-group/nav-group.css +5 -2
  5. package/components/nav-group/nav-group.d.ts +2 -0
  6. package/components/nav-group/nav-group.yaml +4 -0
  7. package/components/select/select.a2ui.json +6 -1
  8. package/components/select/select.class.js +34 -7
  9. package/components/select/select.d.ts +2 -0
  10. package/components/select/select.yaml +16 -1
  11. package/dist/host.min.css +1 -1
  12. package/dist/host.sheet.js +1 -1
  13. package/dist/theme-provider.min.js +1 -1
  14. package/dist/web-components.min.css +1 -1
  15. package/dist/web-components.min.js +18 -18
  16. package/dist/web-components.sheet.js +1 -1
  17. package/package.json +2 -1
  18. package/styles/colors/semantics/core.css +10 -4
  19. package/components/adia-mark/adia-mark.test.js +0 -69
  20. package/components/adia-wordmark/adia-wordmark.test.js +0 -69
  21. package/components/agent-artifact/agent-artifact.test.js +0 -61
  22. package/components/alert/alert.test.js +0 -364
  23. package/components/color-picker/color-picker.test.js +0 -96
  24. package/components/combobox/combobox.test.js +0 -256
  25. package/components/command/command.test.js +0 -99
  26. package/components/date-range-picker/date-range-picker.test.js +0 -387
  27. package/components/datetime-picker/datetime-picker.test.js +0 -454
  28. package/components/demo-toggle/demo-toggle.test.js +0 -102
  29. package/components/description-list/description-list.test.js +0 -72
  30. package/components/display-field/display-field.test.js +0 -115
  31. package/components/empty-state/empty-state.test.js +0 -77
  32. package/components/field/field.test.js +0 -260
  33. package/components/fields/fields.test.js +0 -88
  34. package/components/inline-message/inline-message.test.js +0 -203
  35. package/components/input/input.test.js +0 -335
  36. package/components/integration-card/integration-card.test.js +0 -318
  37. package/components/link/link.test.js +0 -143
  38. package/components/list/list.test.js +0 -106
  39. package/components/list-window/list-window.test.js +0 -303
  40. package/components/loading-overlay/loading-overlay.test.js +0 -257
  41. package/components/menu/menu.test.js +0 -176
  42. package/components/nav/nav.test.js +0 -428
  43. package/components/nav-group/nav-group.test.js +0 -67
  44. package/components/option-card/option-card.test.js +0 -32
  45. package/components/pagination/pagination.test.js +0 -195
  46. package/components/select/select.test.js +0 -453
  47. package/components/slider/slider.test.js +0 -202
  48. package/components/spinner/spinner.test.js +0 -272
  49. package/components/stat/stat.test.js +0 -108
  50. package/components/step-progress/step-progress.test.js +0 -129
  51. package/components/swatch/swatch.test.js +0 -563
  52. package/components/table/table.test.js +0 -479
  53. package/components/table-toolbar/table-toolbar.test.js +0 -152
  54. package/components/tag/tag.test.js +0 -137
  55. package/components/tags-input/tags-input.test.js +0 -477
  56. package/components/text/text.test.js +0 -202
  57. package/components/theme-provider/theme-provider.test.js +0 -94
  58. package/components/time-picker/time-picker.test.js +0 -287
  59. package/components/timeline/timeline.test.js +0 -31
  60. package/components/toggle-scheme/toggle-scheme.test.js +0 -110
  61. package/components/tree/tree.test.js +0 -312
  62. package/core/element.test.js +0 -389
  63. package/core/icons.test.js +0 -187
  64. package/core/logical-children.test.js +0 -54
  65. package/core/markdown.test.js +0 -47
  66. package/core/responsive.test.js +0 -121
  67. package/core/template.test.js +0 -611
  68. package/traits/active-state/active-state.test.js +0 -28
  69. package/traits/anchor-positioning/anchor-positioning.test.js +0 -122
  70. package/traits/announcer/announcer.test.js +0 -268
  71. package/traits/arrow-grid-nav/arrow-grid-nav.test.js +0 -375
  72. package/traits/attention-pulse/attention-pulse.test.js +0 -26
  73. package/traits/confetti/confetti.test.js +0 -46
  74. package/traits/confetti-burst/confetti-burst.test.js +0 -46
  75. package/traits/count-up/count-up.test.js +0 -54
  76. package/traits/declarative.test.js +0 -138
  77. package/traits/dirty-state/dirty-state.test.js +0 -45
  78. package/traits/drag-ghost/drag-ghost.test.js +0 -19
  79. package/traits/draggable/draggable.test.js +0 -60
  80. package/traits/draggable-list-item/draggable-list-item.test.js +0 -51
  81. package/traits/drop-target/drop-target.test.js +0 -241
  82. package/traits/droppable/droppable.test.js +0 -54
  83. package/traits/droppable-collection/droppable-collection.test.js +0 -99
  84. package/traits/error-shake/error-shake.test.js +0 -114
  85. package/traits/fade-presence/fade-presence.test.js +0 -20
  86. package/traits/focus-restore/focus-restore.test.js +0 -202
  87. package/traits/focus-trap/focus-trap.test.js +0 -42
  88. package/traits/focusable/focusable.test.js +0 -53
  89. package/traits/glow-focus/glow-focus.test.js +0 -31
  90. package/traits/gradient-shift/gradient-shift.test.js +0 -22
  91. package/traits/haptic-feedback/haptic-feedback.test.js +0 -52
  92. package/traits/hotkey/hotkey.test.js +0 -61
  93. package/traits/hoverable/hoverable.test.js +0 -24
  94. package/traits/inertia-drag/inertia-drag.test.js +0 -33
  95. package/traits/input-mask/input-mask.test.js +0 -151
  96. package/traits/intersection-observer/intersection-observer.test.js +0 -38
  97. package/traits/keyboard-nav/keyboard-nav.test.js +0 -41
  98. package/traits/keyboard-reorderable/keyboard-reorderable.test.js +0 -45
  99. package/traits/layout-animation/layout-animation.test.js +0 -114
  100. package/traits/long-press/long-press.test.js +0 -244
  101. package/traits/magnetic-hover/magnetic-hover.test.js +0 -30
  102. package/traits/noise-texture/noise-texture.test.js +0 -20
  103. package/traits/parallax/parallax.test.js +0 -26
  104. package/traits/portal/portal.test.js +0 -30
  105. package/traits/pressable/pressable.test.js +0 -73
  106. package/traits/resettable/resettable.test.js +0 -100
  107. package/traits/resizable/resizable.test.js +0 -39
  108. package/traits/resize-observer/resize-observer.test.js +0 -38
  109. package/traits/ripple/ripple.test.js +0 -32
  110. package/traits/roving-tabindex/roving-tabindex.test.js +0 -28
  111. package/traits/scale-press/scale-press.test.js +0 -39
  112. package/traits/scroll-lock/scroll-lock.test.js +0 -45
  113. package/traits/scroll-progress/scroll-progress.test.js +0 -182
  114. package/traits/shimmer-loading/shimmer-loading.test.js +0 -43
  115. package/traits/smoke.test.js +0 -111
  116. package/traits/snap-to-grid/snap-to-grid.test.js +0 -40
  117. package/traits/sound-feedback/sound-feedback.test.js +0 -26
  118. package/traits/spring-animate/spring-animate.test.js +0 -28
  119. package/traits/success-checkmark/success-checkmark.test.js +0 -120
  120. package/traits/tilt-hover/tilt-hover.test.js +0 -32
  121. package/traits/tossable/tossable.test.js +0 -31
  122. package/traits/traits-host.test.js +0 -73
  123. package/traits/typeahead/typeahead.test.js +0 -38
  124. package/traits/typewriter/typewriter.test.js +0 -47
  125. package/traits/validation/validation.test.js +0 -93
  126. package/traits/view-transition/view-transition.test.js +0 -268
@@ -1,121 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { parseResponsive, BP_NAMES, BREAKPOINTS } from './responsive.js';
3
-
4
- // ── parseResponsive ────────────────────────────────────────────────────────
5
-
6
- describe('parseResponsive — scalar fast path', () => {
7
- it('returns value unchanged when no @ present', () => {
8
- expect(parseResponsive('3', 'md')).toBe('3');
9
- expect(parseResponsive('auto-fill','lg')).toBe('auto-fill');
10
- expect(parseResponsive('md', 'sm')).toBe('md');
11
- });
12
-
13
- it('returns null for null / undefined input', () => {
14
- expect(parseResponsive(null, 'md')).toBeNull();
15
- expect(parseResponsive(undefined, 'md')).toBeNull();
16
- });
17
-
18
- it('returns null for empty string', () => {
19
- expect(parseResponsive('', 'md')).toBeNull();
20
- });
21
- });
22
-
23
- describe('parseResponsive — mobile-first resolution', () => {
24
- // "1 2@sm 4@lg" = 1 at xs, 2 from sm, 4 from lg
25
- const val = '1 2@sm 4@lg';
26
-
27
- it('base (xs) — no annotation matches, returns unannotated default', () => {
28
- expect(parseResponsive(val, 'xs')).toBe('1');
29
- });
30
-
31
- it('sm — @sm matches exactly', () => {
32
- expect(parseResponsive(val, 'sm')).toBe('2');
33
- });
34
-
35
- it('md — largest annotation ≤ md is @sm', () => {
36
- expect(parseResponsive(val, 'md')).toBe('2');
37
- });
38
-
39
- it('lg — @lg matches exactly', () => {
40
- expect(parseResponsive(val, 'lg')).toBe('4');
41
- });
42
-
43
- it('xl — largest annotation ≤ xl is @lg', () => {
44
- expect(parseResponsive(val, 'xl')).toBe('4');
45
- });
46
- });
47
-
48
- describe('parseResponsive — sparse annotations (two-point)', () => {
49
- it('"4 1@sm": 4 at xs, 1 from sm upward', () => {
50
- expect(parseResponsive('4 1@sm', 'xs')).toBe('4');
51
- expect(parseResponsive('4 1@sm', 'sm')).toBe('1');
52
- expect(parseResponsive('4 1@sm', 'md')).toBe('1');
53
- expect(parseResponsive('4 1@sm', 'lg')).toBe('1');
54
- });
55
-
56
- it('"2@md": no default — returns null below md, 2 from md up', () => {
57
- expect(parseResponsive('2@md', 'xs')).toBeNull();
58
- expect(parseResponsive('2@md', 'sm')).toBeNull();
59
- expect(parseResponsive('2@md', 'md')).toBe('2');
60
- expect(parseResponsive('2@md', 'xl')).toBe('2');
61
- });
62
-
63
- it('"1 4@lg": only one override — md falls back to base', () => {
64
- expect(parseResponsive('1 4@lg', 'xs')).toBe('1');
65
- expect(parseResponsive('1 4@lg', 'md')).toBe('1');
66
- expect(parseResponsive('1 4@lg', 'lg')).toBe('4');
67
- expect(parseResponsive('1 4@lg', 'xl')).toBe('4');
68
- });
69
- });
70
-
71
- describe('parseResponsive — order-independence', () => {
72
- it('annotations in any order resolve identically', () => {
73
- const a = '1 2@sm 4@lg';
74
- const b = '4@lg 1 2@sm';
75
- const c = '2@sm 4@lg 1';
76
- for (const bp of BP_NAMES) {
77
- const ref = parseResponsive(a, bp);
78
- expect(parseResponsive(b, bp)).toBe(ref);
79
- expect(parseResponsive(c, bp)).toBe(ref);
80
- }
81
- });
82
- });
83
-
84
- describe('parseResponsive — edge cases', () => {
85
- it('unknown bp annotation is silently skipped; default still returned', () => {
86
- expect(parseResponsive('3 1@xxl', 'xl')).toBe('3');
87
- });
88
-
89
- it('single annotation with no default', () => {
90
- expect(parseResponsive('2@sm', 'xs')).toBeNull();
91
- expect(parseResponsive('2@sm', 'sm')).toBe('2');
92
- });
93
-
94
- it('all five breakpoints annotated — each resolves to its own value', () => {
95
- const val = '0 1@xs 2@sm 3@md 4@lg 5@xl';
96
- expect(parseResponsive(val, 'xs')).toBe('1');
97
- expect(parseResponsive(val, 'sm')).toBe('2');
98
- expect(parseResponsive(val, 'md')).toBe('3');
99
- expect(parseResponsive(val, 'lg')).toBe('4');
100
- expect(parseResponsive(val, 'xl')).toBe('5');
101
- });
102
- });
103
-
104
- // ── BREAKPOINTS contract ───────────────────────────────────────────────────
105
-
106
- describe('BREAKPOINTS / BP_NAMES exports', () => {
107
- it('BP_NAMES is ordered narrowest → widest', () => {
108
- expect(BP_NAMES).toEqual(['xs', 'sm', 'md', 'lg', 'xl']);
109
- });
110
-
111
- it('BREAKPOINTS values are strictly increasing', () => {
112
- const vals = BP_NAMES.map((bp) => BREAKPOINTS[bp]);
113
- for (let i = 1; i < vals.length; i++) {
114
- expect(vals[i]).toBeGreaterThan(vals[i - 1]);
115
- }
116
- });
117
-
118
- it('xs starts at 0', () => {
119
- expect(BREAKPOINTS.xs).toBe(0);
120
- });
121
- });