@adia-ai/web-components 0.0.1 → 0.0.2

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 (113) hide show
  1. package/components/agent-reasoning/agent-reasoning.a2ui.json +14 -8
  2. package/components/agent-reasoning/agent-reasoning.css +1 -1
  3. package/components/agent-reasoning/agent-reasoning.js +8 -8
  4. package/components/agent-reasoning/agent-reasoning.yaml +9 -6
  5. package/components/avatar/avatar.a2ui.json +0 -10
  6. package/components/avatar/avatar.css +1 -1
  7. package/components/avatar/avatar.yaml +0 -8
  8. package/components/badge/badge.a2ui.json +6 -6
  9. package/components/badge/badge.js +21 -0
  10. package/components/badge/badge.yaml +8 -5
  11. package/components/button/button.a2ui.json +0 -11
  12. package/components/button/button.css +1 -1
  13. package/components/button/button.js +1 -1
  14. package/components/button/button.yaml +0 -11
  15. package/components/calendar-picker/calendar-picker.js +23 -17
  16. package/components/canvas/canvas.js +1 -1
  17. package/components/card/card.a2ui.json +0 -21
  18. package/components/card/card.yaml +0 -14
  19. package/components/chart/chart.a2ui.json +9 -8
  20. package/components/chart/chart.yaml +7 -5
  21. package/components/check/check.css +1 -1
  22. package/components/code/code.a2ui.json +0 -5
  23. package/components/code/code.yaml +0 -4
  24. package/components/col/col.a2ui.json +0 -20
  25. package/components/col/col.yaml +0 -20
  26. package/components/color-picker/color-picker.a2ui.json +1 -1
  27. package/components/color-picker/color-picker.js +4 -1
  28. package/components/color-picker/color-picker.yaml +1 -1
  29. package/components/command/command.js +21 -10
  30. package/components/divider/divider.a2ui.json +0 -19
  31. package/components/divider/divider.yaml +0 -12
  32. package/components/drawer/drawer.a2ui.json +2 -2
  33. package/components/drawer/drawer.css +1 -1
  34. package/components/drawer/drawer.js +1 -1
  35. package/components/drawer/drawer.yaml +3 -3
  36. package/components/empty-state/empty-state.a2ui.json +0 -13
  37. package/components/empty-state/empty-state.yaml +0 -5
  38. package/components/footer/footer.a2ui.json +1 -1
  39. package/components/footer/footer.yaml +1 -1
  40. package/components/grid/grid.a2ui.json +0 -5
  41. package/components/grid/grid.yaml +0 -4
  42. package/components/header/header.a2ui.json +1 -1
  43. package/components/header/header.yaml +1 -1
  44. package/components/heatmap/heatmap.a2ui.json +4 -4
  45. package/components/heatmap/heatmap.js +3 -3
  46. package/components/heatmap/heatmap.yaml +4 -4
  47. package/components/icon/icon.a2ui.json +13 -0
  48. package/components/icon/icon.yaml +6 -0
  49. package/components/image/image.a2ui.json +10 -21
  50. package/components/image/image.yaml +8 -16
  51. package/components/input/input.a2ui.json +0 -15
  52. package/components/input/input.yaml +0 -12
  53. package/components/inspector/inspector.a2ui.json +0 -5
  54. package/components/inspector/inspector.yaml +0 -4
  55. package/components/list/list.a2ui.json +0 -33
  56. package/components/list/list.yaml +0 -27
  57. package/components/menu/menu.a2ui.json +0 -10
  58. package/components/menu/menu.js +7 -1
  59. package/components/menu/menu.yaml +0 -8
  60. package/components/modal/modal.a2ui.json +1 -25
  61. package/components/modal/modal.yaml +1 -22
  62. package/components/noodles/noodles.a2ui.json +0 -5
  63. package/components/noodles/noodles.yaml +0 -5
  64. package/components/otp-input/otp-input.a2ui.json +0 -5
  65. package/components/otp-input/otp-input.yaml +0 -4
  66. package/components/pagination/pagination.a2ui.json +3 -13
  67. package/components/pagination/pagination.css +1 -1
  68. package/components/pagination/pagination.yaml +5 -14
  69. package/components/pane/pane.a2ui.json +0 -10
  70. package/components/pane/pane.yaml +0 -9
  71. package/components/popover/popover.a2ui.json +0 -14
  72. package/components/popover/popover.js +7 -1
  73. package/components/popover/popover.yaml +0 -11
  74. package/components/progress/progress.a2ui.json +2 -12
  75. package/components/progress/progress.yaml +2 -11
  76. package/components/progress-row/progress-row.a2ui.json +3 -13
  77. package/components/progress-row/progress-row.yaml +3 -11
  78. package/components/radio/radio.css +1 -1
  79. package/components/row/row.a2ui.json +0 -5
  80. package/components/row/row.yaml +0 -4
  81. package/components/search/search.a2ui.json +0 -5
  82. package/components/search/search.yaml +0 -4
  83. package/components/section/section.a2ui.json +1 -1
  84. package/components/section/section.yaml +1 -1
  85. package/components/segmented/segmented.css +1 -1
  86. package/components/select/select.a2ui.json +5 -0
  87. package/components/select/select.js +11 -1
  88. package/components/select/select.yaml +5 -0
  89. package/components/skeleton/skeleton.a2ui.json +0 -11
  90. package/components/skeleton/skeleton.yaml +0 -5
  91. package/components/slider/slider.a2ui.json +0 -5
  92. package/components/slider/slider.yaml +0 -5
  93. package/components/swiper/swiper.a2ui.json +7 -7
  94. package/components/swiper/swiper.js +1 -1
  95. package/components/swiper/swiper.yaml +8 -6
  96. package/components/switch/switch.css +1 -1
  97. package/components/tag/tag.a2ui.json +0 -5
  98. package/components/tag/tag.yaml +0 -4
  99. package/components/text/text.a2ui.json +5 -0
  100. package/components/text/text.css +2 -2
  101. package/components/text/text.yaml +5 -0
  102. package/components/timeline/timeline.a2ui.json +8 -13
  103. package/components/timeline/timeline.yaml +6 -11
  104. package/components/toast/toast.a2ui.json +0 -15
  105. package/components/toast/toast.yaml +0 -13
  106. package/components/toolbar/toolbar.a2ui.json +0 -23
  107. package/components/toolbar/toolbar.js +11 -1
  108. package/components/toolbar/toolbar.yaml +0 -19
  109. package/components/tooltip/tooltip.a2ui.json +0 -10
  110. package/components/tooltip/tooltip.yaml +0 -8
  111. package/package.json +1 -1
  112. package/patterns/adia-chat/css/adia-chat.streaming.css +2 -2
  113. package/patterns/gen-ui/gen-ui.css +3 -3
@@ -31,11 +31,6 @@
31
31
  "type": "boolean",
32
32
  "default": false
33
33
  },
34
- "icon": {
35
- "description": "Leading icon name. Defaults to search (magnifying glass).",
36
- "type": "string",
37
- "default": "search"
38
- },
39
34
  "name": {
40
35
  "description": "Form field name",
41
36
  "type": "string",
@@ -26,10 +26,6 @@ props:
26
26
  type: boolean
27
27
  default: false
28
28
  reflect: true
29
- icon:
30
- description: Leading icon name. Defaults to search (magnifying glass).
31
- type: string
32
- default: search
33
29
  placeholder:
34
30
  description: Placeholder text
35
31
  type: string
@@ -70,7 +70,7 @@
70
70
  }
71
71
  ],
72
72
  "synonyms": {},
73
- "tag": "section-n",
73
+ "tag": "section-ui",
74
74
  "tokens": {},
75
75
  "traits": [],
76
76
  "version": 1
@@ -2,7 +2,7 @@
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
4
  name: AdiaSection
5
- tag: section-n
5
+ tag: section-ui
6
6
  component: Section
7
7
  category: container
8
8
  version: 1
@@ -11,7 +11,7 @@
11
11
  /* ── Colors ── */
12
12
  --segmented-bg: var(--a-ui-bg);
13
13
  --segmented-border: transparent;
14
- --segmented-indicator-bg: white;
14
+ --segmented-indicator-bg: var(--a-chrome-light);
15
15
  --segmented-indicator-shadow: var(--a-shadow-sm);
16
16
  --segmented-indicator-radius: calc(var(--segmented-radius) - var(--segmented-inset));
17
17
 
@@ -31,6 +31,11 @@
31
31
  "type": "boolean",
32
32
  "default": false
33
33
  },
34
+ "divider": {
35
+ "description": "Reserved attribute on a select option that renders as a visual divider instead of a selectable row.",
36
+ "type": "boolean",
37
+ "default": false
38
+ },
34
39
  "error": {
35
40
  "description": "Validation error message",
36
41
  "type": "string",
@@ -26,6 +26,7 @@ class AdiaSelect extends AdiaFormElement {
26
26
  #anchorCleanup = null;
27
27
  #query = '';
28
28
  #searchInput = null;
29
+ #rafId = null;
29
30
 
30
31
  #onSearchFocus = () => { if (!this.disabled) this.open = true; };
31
32
  #onSearchClick = (e) => { e.stopPropagation(); if (!this.disabled) this.open = true; };
@@ -147,13 +148,18 @@ class AdiaSelect extends AdiaFormElement {
147
148
  placement: this.getAttribute('placement') || 'bottom-start', gap: 4, matchWidth: false,
148
149
  });
149
150
  // Dismiss on outside click (next frame so current click doesn't trigger it)
150
- requestAnimationFrame(() => {
151
+ this.#rafId = requestAnimationFrame(() => {
152
+ this.#rafId = null;
151
153
  document.addEventListener('pointerdown', this.#onOutside, { once: true });
152
154
  });
153
155
  } else {
154
156
  this.#anchorCleanup?.();
155
157
  this.#anchorCleanup = null;
156
158
  this.#listbox?.hidePopover?.();
159
+ if (this.#rafId != null) {
160
+ cancelAnimationFrame(this.#rafId);
161
+ this.#rafId = null;
162
+ }
157
163
  document.removeEventListener('pointerdown', this.#onOutside);
158
164
  }
159
165
  }
@@ -370,6 +376,10 @@ class AdiaSelect extends AdiaFormElement {
370
376
  super.disconnected();
371
377
  this.removeEventListener('click', this.#onClick);
372
378
  this.removeEventListener('keydown', this.#onKey);
379
+ if (this.#rafId != null) {
380
+ cancelAnimationFrame(this.#rafId);
381
+ this.#rafId = null;
382
+ }
373
383
  document.removeEventListener('pointerdown', this.#onOutside);
374
384
  if (this.#searchInput) {
375
385
  this.#searchInput.removeEventListener('input', this.#onSearchInput);
@@ -31,6 +31,11 @@ props:
31
31
  type: boolean
32
32
  default: false
33
33
  reflect: true
34
+ divider:
35
+ description: Reserved attribute on a select option that renders as a visual divider instead of a selectable row.
36
+ type: boolean
37
+ default: false
38
+ reflect: true
34
39
  error:
35
40
  description: Validation error message
36
41
  type: string
@@ -38,17 +38,6 @@
38
38
  "type": "boolean",
39
39
  "default": false
40
40
  },
41
- "variant": {
42
- "description": "Visual preset — text-line, circle (avatar), rect (card), image (aspect box).",
43
- "type": "string",
44
- "enum": [
45
- "text",
46
- "circle",
47
- "rect",
48
- "image"
49
- ],
50
- "default": "rect"
51
- },
52
41
  "width": {
53
42
  "description": "Width of the placeholder.",
54
43
  "type": "string",
@@ -26,11 +26,6 @@ props:
26
26
  description: When true, suppress the shimmer animation.
27
27
  type: boolean
28
28
  default: false
29
- variant:
30
- description: Visual preset — text-line, circle (avatar), rect (card), image (aspect box).
31
- type: string
32
- default: rect
33
- enum: [text, circle, rect, image]
34
29
  width:
35
30
  description: Width of the placeholder.
36
31
  type: string
@@ -51,11 +51,6 @@
51
51
  "type": "string",
52
52
  "default": ""
53
53
  },
54
- "showValue": {
55
- "description": "Displays current value below the slider",
56
- "type": "boolean",
57
- "default": false
58
- },
59
54
  "step": {
60
55
  "description": "Step increment between values",
61
56
  "type": "number",
@@ -39,11 +39,6 @@ props:
39
39
  description: Minimum slider value
40
40
  type: number
41
41
  default: 0
42
- showValue:
43
- description: Displays current value below the slider
44
- type: boolean
45
- default: false
46
- attribute: show-value
47
42
  step:
48
43
  description: Step increment between values
49
44
  type: number
@@ -36,20 +36,20 @@
36
36
  "type": "boolean",
37
37
  "default": false
38
38
  },
39
+ "noPauseOnHover": {
40
+ "description": "Suppress the default pause-on-hover/focus behavior for autoplay.",
41
+ "type": "boolean",
42
+ "default": false
43
+ },
39
44
  "peek": {
40
45
  "description": "Show peek of adjacent slides",
41
46
  "type": "boolean",
42
47
  "default": false
43
48
  },
44
- "slides-per-view": {
45
- "description": "Number of visible slides",
46
- "type": "string",
47
- "default": ""
48
- },
49
49
  "slidesPerView": {
50
- "description": "Number of slides visible at once. Accepts \"1\", \"2\", \"3\", or \"auto\".",
50
+ "description": "Number of slides visible at once. Accepts \"1\", \"2\", \"3\", or \"auto\". Empty = CSS default (single slide).",
51
51
  "type": "string",
52
- "default": "1"
52
+ "default": ""
53
53
  },
54
54
  "snap": {
55
55
  "description": "Scroll-snap alignment — start, center, end, or none.",
@@ -31,7 +31,7 @@ class AdiaSwiper extends AdiaElement {
31
31
  peek: { type: Boolean, default: false, reflect: true },
32
32
  snap: { type: String, default: 'start', reflect: true },
33
33
  gap: { type: String, default: '', reflect: true },
34
- 'slides-per-view': { type: String, default: '', reflect: true },
34
+ slidesPerView: { type: String, default: '', reflect: true, attribute: 'slides-per-view' },
35
35
  };
36
36
 
37
37
  static template = () => null;
@@ -13,9 +13,9 @@ props:
13
13
  type: boolean
14
14
  default: false
15
15
  slidesPerView:
16
- description: Number of slides visible at once. Accepts "1", "2", "3", or "auto".
16
+ description: Number of slides visible at once. Accepts "1", "2", "3", or "auto". Empty = CSS default (single slide).
17
17
  type: string
18
- default: "1"
18
+ default: ""
19
19
  attribute: slides-per-view
20
20
  snap:
21
21
  description: Scroll-snap alignment — start, center, end, or none.
@@ -34,14 +34,16 @@ props:
34
34
  description: Infinite loop
35
35
  type: boolean
36
36
  default: false
37
+ noPauseOnHover:
38
+ description: Suppress the default pause-on-hover/focus behavior for autoplay.
39
+ type: boolean
40
+ default: false
41
+ reflect: true
42
+ attribute: no-pause-on-hover
37
43
  peek:
38
44
  description: Show peek of adjacent slides
39
45
  type: boolean
40
46
  default: false
41
- slides-per-view:
42
- description: Number of visible slides
43
- type: string
44
- default: ""
45
47
  events:
46
48
  autoplay-pause:
47
49
  description: "Fired on autoplay-pause."
@@ -35,7 +35,7 @@
35
35
  --switch-thumb-inset: 2px;
36
36
  --switch-thumb-size: calc(var(--a-toggle-size) - 2 * var(--switch-thumb-inset) - 2px); /* -2px for 1px border each side */
37
37
  --switch-thumb-bg: var(--a-fg-muted);
38
- --switch-thumb-bg-checked: white;
38
+ --switch-thumb-bg-checked: var(--a-chrome-light);
39
39
  --switch-thumb-travel: calc(var(--switch-track-width) - var(--switch-thumb-size) - 2 * var(--switch-thumb-inset) - 2px);
40
40
 
41
41
  /* ── State: disabled ── */
@@ -21,11 +21,6 @@
21
21
  "type": "boolean",
22
22
  "default": false
23
23
  },
24
- "dismissible": {
25
- "description": "Alias for `removable`; accepted for back-compat.",
26
- "type": "boolean",
27
- "default": false
28
- },
29
24
  "removable": {
30
25
  "description": "Shows a dismiss button that fires the remove event.",
31
26
  "type": "boolean",
@@ -17,10 +17,6 @@ props:
17
17
  description: Shows a dismiss button that fires the remove event.
18
18
  type: boolean
19
19
  default: false
20
- dismissible:
21
- description: Alias for `removable`; accepted for back-compat.
22
- type: boolean
23
- default: false
24
20
  size:
25
21
  description: Size preset controlling font-size and padding.
26
22
  type: string
@@ -25,6 +25,11 @@
25
25
  "description": "Display text content. The main payload field for Text components extracted from HTML.",
26
26
  "$ref": "common_types.json#/$defs/DynamicString"
27
27
  },
28
+ "truncate": {
29
+ "description": "Single-line truncation with ellipsis. Ignored when `lines` is set.",
30
+ "type": "boolean",
31
+ "default": false
32
+ },
28
33
  "variant": {
29
34
  "description": "Typography variant — sets role tokens (size/weight/tracking/color).",
30
35
  "type": "string",
@@ -1,4 +1,5 @@
1
- :where(text-ui) {
1
+ @scope (text-ui) {
2
+ :where(:scope) {
2
3
  /* ── Tokens (body defaults) ── */
3
4
  --text-family: var(--a-body-family);
4
5
  --text-weight: var(--a-weight);
@@ -10,7 +11,6 @@
10
11
  --text-color: var(--a-fg);
11
12
  --text-color-strong: var(--a-fg-strong);
12
13
  }
13
- @scope (text-ui) {
14
14
 
15
15
  :scope {
16
16
  box-sizing: border-box;
@@ -12,6 +12,11 @@ props:
12
12
  description: Multi-line clamp count (0 = no clamp)
13
13
  type: number
14
14
  default: 0
15
+ truncate:
16
+ description: Single-line truncation with ellipsis. Ignored when `lines` is set.
17
+ type: boolean
18
+ default: false
19
+ reflect: true
15
20
  textContent:
16
21
  description: Display text content. The main payload field for Text components extracted from HTML.
17
22
  type: string
@@ -16,15 +16,6 @@
16
16
  "component": {
17
17
  "const": "Timeline"
18
18
  },
19
- "mode": {
20
- "description": "Display mode",
21
- "type": "string",
22
- "enum": [
23
- "timeline",
24
- "steps"
25
- ],
26
- "default": "timeline"
27
- },
28
19
  "orientation": {
29
20
  "description": "Layout direction",
30
21
  "type": "string",
@@ -34,10 +25,14 @@
34
25
  ],
35
26
  "default": "vertical"
36
27
  },
37
- "step": {
38
- "description": "Current step index (steps mode)",
39
- "type": "number",
40
- "default": 0
28
+ "size": {
29
+ "description": "Rail size preset use `sm` for agent-reasoning/pipeline views; `md` is the default.",
30
+ "type": "string",
31
+ "enum": [
32
+ "sm",
33
+ "md"
34
+ ],
35
+ "default": "md"
41
36
  }
42
37
  },
43
38
  "required": [
@@ -8,13 +8,6 @@ category: display
8
8
  version: 1
9
9
  description: "Timeline and step wizard. Two modes: timeline (per-item state) and steps (parent-driven)."
10
10
  props:
11
- mode:
12
- description: Display mode
13
- type: string
14
- default: timeline
15
- enum:
16
- - timeline
17
- - steps
18
11
  orientation:
19
12
  description: Layout direction
20
13
  type: string
@@ -22,10 +15,12 @@ props:
22
15
  enum:
23
16
  - vertical
24
17
  - horizontal
25
- step:
26
- description: Current step index (steps mode)
27
- type: number
28
- default: 0
18
+ size:
19
+ description: Rail size preset use `sm` for agent-reasoning/pipeline views; `md` is the default.
20
+ type: string
21
+ default: md
22
+ reflect: true
23
+ enum: [sm, md]
29
24
  events: {}
30
25
  slots:
31
26
  default:
@@ -13,11 +13,6 @@
13
13
  }
14
14
  ],
15
15
  "properties": {
16
- "closable": {
17
- "description": "When true, renders a dismiss button.",
18
- "type": "boolean",
19
- "default": true
20
- },
21
16
  "component": {
22
17
  "const": "Toast"
23
18
  },
@@ -26,16 +21,6 @@
26
21
  "type": "number",
27
22
  "default": 4000
28
23
  },
29
- "icon": {
30
- "description": "Leading Phosphor icon name; when omitted, defaults from `variant` (success → check, danger → x, etc.).",
31
- "type": "string",
32
- "default": ""
33
- },
34
- "open": {
35
- "description": "Controls visibility and triggers auto-dismiss timer",
36
- "type": "boolean",
37
- "default": false
38
- },
39
24
  "position": {
40
25
  "description": "Screen position",
41
26
  "type": "string",
@@ -8,23 +8,10 @@ category: container
8
8
  version: 1
9
9
  description: Notification popup with auto-dismiss. Animated enter/exit.
10
10
  props:
11
- icon:
12
- description: Leading Phosphor icon name; when omitted, defaults from `variant` (success → check, danger → x, etc.).
13
- type: string
14
- default: ""
15
- closable:
16
- description: When true, renders a dismiss button.
17
- type: boolean
18
- default: true
19
11
  duration:
20
12
  description: Auto-dismiss time in milliseconds. 0 disables auto-dismiss.
21
13
  type: number
22
14
  default: 4000
23
- open:
24
- description: Controls visibility and triggers auto-dismiss timer
25
- type: boolean
26
- default: false
27
- reflect: true
28
15
  position:
29
16
  description: Screen position
30
17
  type: string
@@ -31,15 +31,6 @@
31
31
  "type": "string",
32
32
  "default": "sm"
33
33
  },
34
- "orientation": {
35
- "description": "Layout direction. Vertical mode disables overflow.",
36
- "type": "string",
37
- "enum": [
38
- "horizontal",
39
- "vertical"
40
- ],
41
- "default": "horizontal"
42
- },
43
34
  "overflow": {
44
35
  "description": "Overflow behavior",
45
36
  "type": "string",
@@ -48,20 +39,6 @@
48
39
  "none"
49
40
  ],
50
41
  "default": "menu"
51
- },
52
- "variant": {
53
- "description": "Visual style. Transparent removes background, border, and padding.",
54
- "type": "string",
55
- "enum": [
56
- "",
57
- "transparent"
58
- ],
59
- "default": ""
60
- },
61
- "vertical": {
62
- "description": "Stack items vertically (alias for orientation=\"vertical\").",
63
- "type": "boolean",
64
- "default": false
65
42
  }
66
43
  },
67
44
  "required": [
@@ -48,6 +48,7 @@ class AdiaToolbar extends AdiaElement {
48
48
  #spilloverCleanup = null;
49
49
  #measuring = false;
50
50
  #reflowQueued = false;
51
+ #rafId = null;
51
52
 
52
53
  connected() {
53
54
  this.setAttribute('role', 'toolbar');
@@ -111,7 +112,8 @@ class AdiaToolbar extends AdiaElement {
111
112
  placement: 'bottom-end',
112
113
  gap: 4,
113
114
  });
114
- requestAnimationFrame(() => {
115
+ this.#rafId = requestAnimationFrame(() => {
116
+ this.#rafId = null;
115
117
  document.addEventListener('pointerdown', this.#onOutside, true);
116
118
  document.addEventListener('keydown', this.#onKey, true);
117
119
  });
@@ -121,6 +123,10 @@ class AdiaToolbar extends AdiaElement {
121
123
  this.#spilloverCleanup?.();
122
124
  this.#spilloverCleanup = null;
123
125
  if (this.#popover?.matches(':popover-open')) this.#popover.hidePopover?.();
126
+ if (this.#rafId != null) {
127
+ cancelAnimationFrame(this.#rafId);
128
+ this.#rafId = null;
129
+ }
124
130
  document.removeEventListener('pointerdown', this.#onOutside, true);
125
131
  document.removeEventListener('keydown', this.#onKey, true);
126
132
  }
@@ -168,6 +174,10 @@ class AdiaToolbar extends AdiaElement {
168
174
  // Keep listeners cleaned up if closed externally.
169
175
  this.#spilloverCleanup?.();
170
176
  this.#spilloverCleanup = null;
177
+ if (this.#rafId != null) {
178
+ cancelAnimationFrame(this.#rafId);
179
+ this.#rafId = null;
180
+ }
171
181
  document.removeEventListener('pointerdown', this.#onOutside, true);
172
182
  document.removeEventListener('keydown', this.#onKey, true);
173
183
  }
@@ -14,11 +14,6 @@ props:
14
14
  type: boolean
15
15
  default: false
16
16
  reflect: true
17
- vertical:
18
- description: Stack items vertically (alias for orientation="vertical").
19
- type: boolean
20
- default: false
21
- reflect: true
22
17
  align:
23
18
  description: Item alignment
24
19
  type: string
@@ -27,13 +22,6 @@ props:
27
22
  description: Gap between items
28
23
  type: string
29
24
  default: sm
30
- orientation:
31
- description: Layout direction. Vertical mode disables overflow.
32
- type: string
33
- default: horizontal
34
- enum:
35
- - horizontal
36
- - vertical
37
25
  overflow:
38
26
  description: Overflow behavior
39
27
  type: string
@@ -41,13 +29,6 @@ props:
41
29
  enum:
42
30
  - menu
43
31
  - none
44
- variant:
45
- description: Visual style. Transparent removes background, border, and padding.
46
- type: string
47
- default: ""
48
- enum:
49
- - ""
50
- - transparent
51
32
  events: {}
52
33
  slots: {}
53
34
  states:
@@ -13,11 +13,6 @@
13
13
  }
14
14
  ],
15
15
  "properties": {
16
- "anchor": {
17
- "description": "ID of the anchor element that triggers the tooltip.",
18
- "type": "string",
19
- "default": ""
20
- },
21
16
  "component": {
22
17
  "const": "Tooltip"
23
18
  },
@@ -26,11 +21,6 @@
26
21
  "type": "number",
27
22
  "default": 400
28
23
  },
29
- "offset": {
30
- "description": "Distance in pixels between the tooltip and the anchor element.",
31
- "type": "number",
32
- "default": 8
33
- },
34
24
  "placement": {
35
25
  "description": "Preferred position relative to the anchor element.",
36
26
  "type": "string",
@@ -8,18 +8,10 @@ category: container
8
8
  version: 1
9
9
  description: Tooltip popup on hover/focus. Uses Popover API for top-layer rendering.
10
10
  props:
11
- anchor:
12
- description: ID of the anchor element that triggers the tooltip.
13
- type: string
14
- default: ""
15
11
  delay:
16
12
  description: Delay in milliseconds before showing the tooltip on hover.
17
13
  type: number
18
14
  default: 400
19
- offset:
20
- description: Distance in pixels between the tooltip and the anchor element.
21
- type: number
22
- default: 8
23
15
  placement:
24
16
  description: Preferred position relative to the anchor element.
25
17
  type: string
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adia-ai/web-components",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "AdiaUI web components — vanilla custom elements + A2UI runtime. Training corpus lives in @adia-ai/gen-ui-training.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -10,10 +10,10 @@ adia-chat-ui [data-cursor] {
10
10
  background: var(--chat-cursor-color);
11
11
  margin-inline-start: 1px;
12
12
  vertical-align: text-bottom;
13
- animation: adia-chat-n-blink var(--chat-cursor-speed) step-end infinite;
13
+ animation: adia-chat-blink var(--chat-cursor-speed) step-end infinite;
14
14
  }
15
15
 
16
- @keyframes adia-chat-n-blink {
16
+ @keyframes adia-chat-blink {
17
17
  50% { opacity: 0; }
18
18
  }
19
19
 
@@ -37,7 +37,7 @@
37
37
  grid-template-columns: minmax(320px, 1fr) 1.5fr;
38
38
  }
39
39
 
40
- :scope[mode="split"] > thread-n {
40
+ :scope[mode="split"] > chat-ui {
41
41
  border-right: var(--a-border-thin) solid var(--a-canvas-border-subtle);
42
42
  }
43
43
 
@@ -49,7 +49,7 @@
49
49
  grid-template-columns: 1fr;
50
50
  }
51
51
 
52
- :scope[mode="canvas"] > thread-n {
52
+ :scope[mode="canvas"] > chat-ui {
53
53
  display: none;
54
54
  }
55
55
 
@@ -74,7 +74,7 @@
74
74
  CHILDREN — fill grid cells
75
75
  ═══════════════════════════════════════════════════════ */
76
76
 
77
- :scope > thread-n,
77
+ :scope > chat-ui,
78
78
  :scope > canvas-ui,
79
79
  :scope > inspector-ui {
80
80
  min-height: 0;