@adia-ai/web-components 0.0.29 → 0.0.33

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 (290) hide show
  1. package/components/accordion/accordion.a2ui.json +1 -1
  2. package/components/accordion/accordion.js +6 -6
  3. package/components/accordion/accordion.yaml +1 -1
  4. package/components/action-list/action-list.a2ui.json +1 -1
  5. package/components/action-list/action-list.js +6 -6
  6. package/components/action-list/action-list.yaml +1 -1
  7. package/components/agent-artifact/agent-artifact.a2ui.json +1 -1
  8. package/components/agent-artifact/agent-artifact.js +4 -4
  9. package/components/agent-artifact/agent-artifact.yaml +1 -1
  10. package/components/agent-feedback-bar/agent-feedback-bar.a2ui.json +1 -1
  11. package/components/agent-feedback-bar/agent-feedback-bar.js +4 -4
  12. package/components/agent-feedback-bar/agent-feedback-bar.yaml +1 -1
  13. package/components/agent-questions/agent-questions.a2ui.json +1 -1
  14. package/components/agent-questions/agent-questions.js +4 -4
  15. package/components/agent-questions/agent-questions.yaml +1 -1
  16. package/components/agent-reasoning/agent-reasoning.a2ui.json +3 -3
  17. package/components/agent-reasoning/agent-reasoning.js +4 -4
  18. package/components/agent-reasoning/agent-reasoning.yaml +3 -3
  19. package/components/agent-suggestions/agent-suggestions.a2ui.json +1 -1
  20. package/components/agent-suggestions/agent-suggestions.js +4 -4
  21. package/components/agent-suggestions/agent-suggestions.yaml +1 -1
  22. package/components/agent-trace/agent-trace.a2ui.json +1 -1
  23. package/components/agent-trace/agent-trace.js +4 -4
  24. package/components/agent-trace/agent-trace.yaml +1 -1
  25. package/components/alert/alert.a2ui.json +1 -1
  26. package/components/alert/alert.js +4 -4
  27. package/components/alert/alert.yaml +1 -1
  28. package/components/aside/aside.a2ui.json +1 -1
  29. package/components/aside/aside.yaml +1 -1
  30. package/components/avatar/avatar.a2ui.json +1 -1
  31. package/components/avatar/avatar.js +8 -8
  32. package/components/avatar/avatar.yaml +1 -1
  33. package/components/badge/badge.a2ui.json +1 -1
  34. package/components/badge/badge.js +4 -4
  35. package/components/badge/badge.yaml +1 -1
  36. package/components/block/block.a2ui.json +1 -1
  37. package/components/block/block.js +4 -4
  38. package/components/block/block.yaml +1 -1
  39. package/components/breadcrumb/breadcrumb.a2ui.json +1 -1
  40. package/components/breadcrumb/breadcrumb.js +4 -4
  41. package/components/breadcrumb/breadcrumb.yaml +1 -1
  42. package/components/button/button.a2ui.json +1 -1
  43. package/components/button/button.js +4 -4
  44. package/components/button/button.yaml +1 -1
  45. package/components/calendar-picker/calendar-picker.a2ui.json +1 -1
  46. package/components/calendar-picker/calendar-picker.js +6 -6
  47. package/components/calendar-picker/calendar-picker.yaml +1 -1
  48. package/components/canvas/canvas.a2ui.json +1 -1
  49. package/components/canvas/canvas.js +4 -4
  50. package/components/canvas/canvas.yaml +1 -1
  51. package/components/card/card.a2ui.json +1 -1
  52. package/components/card/card.js +4 -4
  53. package/components/card/card.yaml +1 -1
  54. package/components/chart/chart.a2ui.json +1 -1
  55. package/components/chart/chart.js +5 -5
  56. package/components/chart/chart.yaml +1 -1
  57. package/components/chart-legend/chart-legend.a2ui.json +1 -1
  58. package/components/chart-legend/chart-legend.js +7 -7
  59. package/components/chart-legend/chart-legend.yaml +1 -1
  60. package/components/{chat → chat-thread}/chat-input.js +5 -5
  61. package/components/{chat/chat.a2ui.json → chat-thread/chat-thread.a2ui.json} +6 -6
  62. package/components/{chat/chat.css → chat-thread/chat-thread.css} +2 -2
  63. package/components/{chat/chat.js → chat-thread/chat-thread.js} +7 -7
  64. package/components/{chat/chat.yaml → chat-thread/chat-thread.yaml} +4 -4
  65. package/components/check/check.a2ui.json +1 -1
  66. package/components/check/check.js +5 -5
  67. package/components/check/check.yaml +1 -1
  68. package/components/code/code.a2ui.json +1 -1
  69. package/components/code/code.js +4 -4
  70. package/components/code/code.yaml +1 -1
  71. package/components/col/col.a2ui.json +1 -1
  72. package/components/col/col.js +4 -4
  73. package/components/col/col.yaml +1 -1
  74. package/components/color-picker/color-picker.a2ui.json +1 -1
  75. package/components/color-picker/color-picker.js +6 -6
  76. package/components/color-picker/color-picker.yaml +1 -1
  77. package/components/command/command.a2ui.json +1 -1
  78. package/components/command/command.js +5 -5
  79. package/components/command/command.yaml +1 -1
  80. package/components/description-list/description-list.a2ui.json +1 -1
  81. package/components/description-list/description-list.js +4 -4
  82. package/components/description-list/description-list.yaml +1 -1
  83. package/components/divider/divider.a2ui.json +1 -1
  84. package/components/divider/divider.js +4 -4
  85. package/components/divider/divider.yaml +1 -1
  86. package/components/drawer/drawer.a2ui.json +1 -1
  87. package/components/drawer/drawer.js +4 -4
  88. package/components/drawer/drawer.yaml +1 -1
  89. package/components/embed/embed.a2ui.json +1 -1
  90. package/components/embed/embed.js +4 -4
  91. package/components/embed/embed.yaml +1 -1
  92. package/components/empty-state/empty-state.a2ui.json +1 -1
  93. package/components/empty-state/empty-state.js +4 -4
  94. package/components/empty-state/empty-state.yaml +1 -1
  95. package/components/feed/feed-item.yaml +2 -2
  96. package/components/feed/feed.a2ui.json +2 -2
  97. package/components/feed/feed.css +12 -3
  98. package/components/feed/feed.js +22 -22
  99. package/components/feed/feed.yaml +2 -2
  100. package/components/field/field.a2ui.json +1 -1
  101. package/components/field/field.js +10 -10
  102. package/components/field/field.yaml +2 -2
  103. package/components/footer/footer.a2ui.json +1 -1
  104. package/components/footer/footer.yaml +1 -1
  105. package/components/grid/grid.a2ui.json +1 -1
  106. package/components/grid/grid.js +4 -4
  107. package/components/grid/grid.yaml +1 -1
  108. package/components/header/header.a2ui.json +1 -1
  109. package/components/header/header.yaml +1 -1
  110. package/components/heatmap/heatmap.a2ui.json +1 -1
  111. package/components/heatmap/heatmap.js +4 -4
  112. package/components/heatmap/heatmap.yaml +1 -1
  113. package/components/icon/icon.a2ui.json +1 -1
  114. package/components/icon/icon.js +4 -4
  115. package/components/icon/icon.yaml +1 -1
  116. package/components/image/image.a2ui.json +1 -1
  117. package/components/image/image.js +4 -4
  118. package/components/image/image.yaml +1 -1
  119. package/components/index.js +88 -85
  120. package/components/input/input.a2ui.json +1 -1
  121. package/components/input/input.js +7 -7
  122. package/components/input/input.yaml +1 -1
  123. package/components/inspector/inspector.a2ui.json +1 -1
  124. package/components/inspector/inspector.js +4 -4
  125. package/components/inspector/inspector.yaml +1 -1
  126. package/components/kbd/kbd.a2ui.json +1 -1
  127. package/components/kbd/kbd.js +4 -4
  128. package/components/kbd/kbd.yaml +1 -1
  129. package/components/list/list.a2ui.json +1 -1
  130. package/components/list/list.js +6 -6
  131. package/components/list/list.yaml +1 -1
  132. package/components/menu/menu.a2ui.json +1 -1
  133. package/components/menu/menu.js +8 -8
  134. package/components/menu/menu.yaml +1 -1
  135. package/components/modal/modal.a2ui.json +1 -1
  136. package/components/modal/modal.js +4 -4
  137. package/components/modal/modal.yaml +1 -1
  138. package/components/nav/nav.a2ui.json +98 -0
  139. package/components/nav/nav.css +133 -0
  140. package/components/nav/nav.js +140 -0
  141. package/components/nav/nav.test.js +428 -0
  142. package/components/nav/nav.yaml +114 -0
  143. package/components/nav-group/nav-group.a2ui.json +100 -0
  144. package/components/nav-group/nav-group.css +317 -0
  145. package/components/nav-group/nav-group.js +142 -0
  146. package/components/nav-group/nav-group.yaml +69 -0
  147. package/components/nav-item/nav-item.a2ui.json +106 -0
  148. package/components/nav-item/nav-item.css +194 -0
  149. package/components/nav-item/nav-item.js +76 -0
  150. package/components/nav-item/nav-item.yaml +73 -0
  151. package/components/noodles/noodles.a2ui.json +1 -1
  152. package/components/noodles/noodles.js +4 -4
  153. package/components/noodles/noodles.yaml +1 -1
  154. package/components/option-card/option-card.a2ui.json +1 -1
  155. package/components/option-card/option-card.js +6 -6
  156. package/components/option-card/option-card.yaml +1 -1
  157. package/components/otp-input/otp-input.a2ui.json +1 -1
  158. package/components/otp-input/otp-input.js +5 -5
  159. package/components/otp-input/otp-input.yaml +1 -1
  160. package/components/page/page.a2ui.json +3 -3
  161. package/components/page/page.js +4 -4
  162. package/components/page/page.yaml +3 -3
  163. package/components/pagination/pagination.a2ui.json +1 -1
  164. package/components/pagination/pagination.js +4 -4
  165. package/components/pagination/pagination.yaml +1 -1
  166. package/components/pane/pane.a2ui.json +1 -1
  167. package/components/pane/pane.js +4 -4
  168. package/components/pane/pane.yaml +1 -1
  169. package/components/pipeline-status/pipeline-status.a2ui.json +1 -1
  170. package/components/pipeline-status/pipeline-status.js +4 -4
  171. package/components/pipeline-status/pipeline-status.yaml +1 -1
  172. package/components/popover/popover.a2ui.json +1 -1
  173. package/components/popover/popover.js +4 -4
  174. package/components/popover/popover.yaml +1 -1
  175. package/components/progress/progress.a2ui.json +1 -1
  176. package/components/progress/progress.js +4 -4
  177. package/components/progress/progress.yaml +1 -1
  178. package/components/progress-row/progress-row.a2ui.json +1 -1
  179. package/components/progress-row/progress-row.js +4 -4
  180. package/components/progress-row/progress-row.yaml +1 -1
  181. package/components/radio/radio.a2ui.json +1 -1
  182. package/components/radio/radio.js +5 -5
  183. package/components/radio/radio.yaml +1 -1
  184. package/components/range/range.a2ui.json +1 -1
  185. package/components/range/range.js +7 -7
  186. package/components/range/range.yaml +1 -1
  187. package/components/rating/rating.a2ui.json +1 -1
  188. package/components/rating/rating.js +6 -6
  189. package/components/rating/rating.yaml +1 -1
  190. package/components/richtext/richtext.a2ui.json +1 -1
  191. package/components/richtext/richtext.js +4 -4
  192. package/components/richtext/richtext.yaml +1 -1
  193. package/components/row/row.a2ui.json +1 -1
  194. package/components/row/row.js +4 -4
  195. package/components/row/row.yaml +1 -1
  196. package/components/search/search.a2ui.json +1 -1
  197. package/components/search/search.js +5 -5
  198. package/components/search/search.yaml +1 -1
  199. package/components/section/section.a2ui.json +1 -1
  200. package/components/section/section.yaml +1 -1
  201. package/components/segment/segment.a2ui.json +1 -1
  202. package/components/segment/segment.js +4 -4
  203. package/components/segment/segment.yaml +1 -1
  204. package/components/segmented/segmented.a2ui.json +1 -1
  205. package/components/segmented/segmented.css +6 -0
  206. package/components/segmented/segmented.js +7 -7
  207. package/components/segmented/segmented.yaml +1 -1
  208. package/components/select/select.a2ui.json +1 -1
  209. package/components/select/select.js +5 -5
  210. package/components/select/select.yaml +1 -1
  211. package/components/skeleton/skeleton.a2ui.json +1 -1
  212. package/components/skeleton/skeleton.js +4 -4
  213. package/components/skeleton/skeleton.yaml +1 -1
  214. package/components/slider/slider.a2ui.json +1 -1
  215. package/components/slider/slider.js +7 -7
  216. package/components/slider/slider.yaml +1 -1
  217. package/components/stack/stack.a2ui.json +1 -1
  218. package/components/stack/stack.js +4 -4
  219. package/components/stack/stack.yaml +1 -1
  220. package/components/stat/stat.a2ui.json +1 -1
  221. package/components/stat/stat.js +4 -4
  222. package/components/stat/stat.yaml +1 -1
  223. package/components/stepper/stepper.a2ui.json +1 -1
  224. package/components/stepper/stepper.js +6 -6
  225. package/components/stepper/stepper.yaml +1 -1
  226. package/components/stream/stream.a2ui.json +1 -1
  227. package/components/stream/stream.js +4 -4
  228. package/components/stream/stream.yaml +1 -1
  229. package/components/swatch/swatch.a2ui.json +1 -1
  230. package/components/swatch/swatch.js +4 -4
  231. package/components/swatch/swatch.yaml +1 -1
  232. package/components/swiper/swiper.a2ui.json +1 -1
  233. package/components/swiper/swiper.js +4 -4
  234. package/components/swiper/swiper.yaml +1 -1
  235. package/components/switch/switch.a2ui.json +1 -1
  236. package/components/switch/switch.js +5 -5
  237. package/components/switch/switch.yaml +1 -1
  238. package/components/table/table.a2ui.json +1 -1
  239. package/components/table/table.js +4 -4
  240. package/components/table/table.yaml +1 -1
  241. package/components/table-toolbar/table-toolbar.a2ui.json +1 -1
  242. package/components/table-toolbar/table-toolbar.js +4 -4
  243. package/components/table-toolbar/table-toolbar.yaml +1 -1
  244. package/components/tabs/tab.js +4 -4
  245. package/components/tabs/tabs.a2ui.json +1 -1
  246. package/components/tabs/tabs.js +5 -5
  247. package/components/tabs/tabs.yaml +1 -1
  248. package/components/tag/tag.a2ui.json +1 -1
  249. package/components/tag/tag.js +4 -4
  250. package/components/tag/tag.yaml +1 -1
  251. package/components/text/text.a2ui.json +1 -1
  252. package/components/text/text.js +4 -4
  253. package/components/text/text.yaml +1 -1
  254. package/components/textarea/textarea.a2ui.json +1 -1
  255. package/components/textarea/textarea.js +5 -5
  256. package/components/textarea/textarea.yaml +1 -1
  257. package/components/timeline/timeline.a2ui.json +1 -1
  258. package/components/timeline/timeline.js +6 -6
  259. package/components/timeline/timeline.yaml +1 -1
  260. package/components/toast/toast.a2ui.json +1 -1
  261. package/components/toast/toast.js +18 -18
  262. package/components/toast/toast.yaml +1 -1
  263. package/components/toggle-group/toggle-group.a2ui.json +1 -1
  264. package/components/toggle-group/toggle-group.js +6 -6
  265. package/components/toggle-group/toggle-group.yaml +1 -1
  266. package/components/toolbar/toolbar.a2ui.json +1 -1
  267. package/components/toolbar/toolbar.js +6 -6
  268. package/components/toolbar/toolbar.yaml +1 -1
  269. package/components/tooltip/tooltip.a2ui.json +1 -1
  270. package/components/tooltip/tooltip.js +7 -7
  271. package/components/tooltip/tooltip.yaml +1 -1
  272. package/components/tree/tree.a2ui.json +1 -1
  273. package/components/tree/tree.js +6 -6
  274. package/components/tree/tree.yaml +1 -1
  275. package/components/upload/upload.a2ui.json +1 -1
  276. package/components/upload/upload.js +6 -6
  277. package/components/upload/upload.yaml +1 -1
  278. package/core/element.js +4 -4
  279. package/core/element.test.js +18 -18
  280. package/core/form.js +9 -9
  281. package/core/index.js +2 -2
  282. package/core/provider.js +7 -7
  283. package/core/template.js +1 -1
  284. package/index.css +1 -1
  285. package/index.js +10 -8
  286. package/package.json +1 -1
  287. package/styles/components.css +10 -6
  288. package/styles/resets.css +1 -1
  289. package/traits/define.js +2 -2
  290. /package/components/{chat → chat-thread}/chat-input.css +0 -0
@@ -72,7 +72,7 @@
72
72
  "keyboard",
73
73
  "keybinding"
74
74
  ],
75
- "name": "AdiaCommand",
75
+ "name": "UICommand",
76
76
  "related": [],
77
77
  "slots": {
78
78
  "empty": {
@@ -1,4 +1,4 @@
1
- import { AdiaElement } from '../../core/element.js';
1
+ import { UIElement } from '../../core/element.js';
2
2
 
3
3
  /**
4
4
  * <command-ui> — Searchable command palette.
@@ -20,7 +20,7 @@ import { AdiaElement } from '../../core/element.js';
20
20
  * select — { detail: { value, label } }
21
21
  * dismiss — Escape pressed
22
22
  */
23
- class AdiaCommand extends AdiaElement {
23
+ class UICommand extends UIElement {
24
24
  static properties = {
25
25
  placeholder: { type: String, default: 'Type a command...', reflect: true },
26
26
  open: { type: Boolean, default: false, reflect: true },
@@ -228,7 +228,7 @@ class AdiaCommand extends AdiaElement {
228
228
  #pushRecent(value) {
229
229
  if (!value) return;
230
230
  this.#recents = [value, ...this.#recents.filter(v => v !== value)]
231
- .slice(0, AdiaCommand.#RECENTS_MAX);
231
+ .slice(0, UICommand.#RECENTS_MAX);
232
232
  }
233
233
 
234
234
  #createItemEl(item, idx) {
@@ -350,5 +350,5 @@ class AdiaCommand extends AdiaElement {
350
350
  }
351
351
  }
352
352
 
353
- customElements.define('command-ui', AdiaCommand);
354
- export { AdiaCommand };
353
+ customElements.define('command-ui', UICommand);
354
+ export { UICommand };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaCommand
4
+ name: UICommand
5
5
  tag: command-ui
6
6
  component: Command
7
7
  category: container
@@ -59,7 +59,7 @@
59
59
  "details",
60
60
  "dl"
61
61
  ],
62
- "name": "AdiaDescriptionList",
62
+ "name": "UIDescriptionList",
63
63
  "related": [],
64
64
  "slots": {
65
65
  "[object Object]": {
@@ -19,9 +19,9 @@
19
19
  * items — optional JSON array of {term, description} pairs
20
20
  */
21
21
 
22
- import { AdiaElement } from '../../core/element.js';
22
+ import { UIElement } from '../../core/element.js';
23
23
 
24
- class AdiaDescriptionList extends AdiaElement {
24
+ class UIDescriptionList extends UIElement {
25
25
  static properties = {
26
26
  layout: { type: String, default: 'stacked', reflect: true },
27
27
  align: { type: String, default: 'start', reflect: true },
@@ -72,5 +72,5 @@ class AdiaDescriptionList extends AdiaElement {
72
72
  }
73
73
  }
74
74
 
75
- customElements.define('description-list-ui', AdiaDescriptionList);
76
- export { AdiaDescriptionList };
75
+ customElements.define('description-list-ui', UIDescriptionList);
76
+ export { UIDescriptionList };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaDescriptionList
4
+ name: UIDescriptionList
5
5
  tag: description-list-ui
6
6
  component: DescriptionList
7
7
  category: display
@@ -54,7 +54,7 @@
54
54
  "separator",
55
55
  "spacer"
56
56
  ],
57
- "name": "AdiaDivider",
57
+ "name": "UIDivider",
58
58
  "related": [
59
59
  "upload",
60
60
  "input",
@@ -7,9 +7,9 @@
7
7
  * Renders as a simple line, or a line broken by centered text.
8
8
  */
9
9
 
10
- import { AdiaElement } from '../../core/element.js';
10
+ import { UIElement } from '../../core/element.js';
11
11
 
12
- class AdiaDivider extends AdiaElement {
12
+ class UIDivider extends UIElement {
13
13
  static properties = {
14
14
  label: { type: String, default: '', reflect: true },
15
15
  vertical: { type: Boolean, default: false, reflect: true },
@@ -42,6 +42,6 @@ class AdiaDivider extends AdiaElement {
42
42
  }
43
43
  }
44
44
  }
45
- customElements.define('divider-ui', AdiaDivider);
45
+ customElements.define('divider-ui', UIDivider);
46
46
 
47
- export { AdiaDivider };
47
+ export { UIDivider };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaDivider
4
+ name: UIDivider
5
5
  tag: divider-ui
6
6
  component: Divider
7
7
  category: display
@@ -84,7 +84,7 @@
84
84
  "collapse",
85
85
  "expand"
86
86
  ],
87
- "name": "AdiaDrawer",
87
+ "name": "UIDrawer",
88
88
  "related": [
89
89
  "button",
90
90
  "empty-state",
@@ -29,9 +29,9 @@
29
29
  * close — fired after the drawer finishes closing
30
30
  */
31
31
 
32
- import { AdiaElement } from '../../core/element.js';
32
+ import { UIElement } from '../../core/element.js';
33
33
 
34
- class AdiaDrawer extends AdiaElement {
34
+ class UIDrawer extends UIElement {
35
35
  #bound = false;
36
36
  #closing = false;
37
37
  #previousFocus = null;
@@ -291,6 +291,6 @@ class AdiaDrawer extends AdiaElement {
291
291
  show() { this.open = true; }
292
292
  hide() { this.open = false; }
293
293
  }
294
- customElements.define('drawer-ui', AdiaDrawer);
294
+ customElements.define('drawer-ui', UIDrawer);
295
295
 
296
- export { AdiaDrawer };
296
+ export { UIDrawer };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaDrawer
4
+ name: UIDrawer
5
5
  tag: drawer-ui
6
6
  component: Drawer
7
7
  category: container
@@ -69,7 +69,7 @@
69
69
  "widget",
70
70
  "third-party"
71
71
  ],
72
- "name": "AdiaEmbed",
72
+ "name": "UIEmbed",
73
73
  "related": [
74
74
  "slider",
75
75
  "button"
@@ -10,9 +10,9 @@
10
10
  * aspect — optional CSS aspect-ratio (e.g. '16/9')
11
11
  */
12
12
 
13
- import { AdiaElement } from '../../core/element.js';
13
+ import { UIElement } from '../../core/element.js';
14
14
 
15
- class AdiaEmbed extends AdiaElement {
15
+ class UIEmbed extends UIElement {
16
16
  static properties = {
17
17
  src: { type: String, default: '', reflect: true },
18
18
  height: { type: String, default: '400', reflect: true },
@@ -58,6 +58,6 @@ class AdiaEmbed extends AdiaElement {
58
58
  this.#iframe = null;
59
59
  }
60
60
  }
61
- customElements.define('embed-ui', AdiaEmbed);
61
+ customElements.define('embed-ui', UIEmbed);
62
62
 
63
- export { AdiaEmbed };
63
+ export { UIEmbed };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaEmbed
4
+ name: UIEmbed
5
5
  tag: embed-ui
6
6
  component: Embed
7
7
  category: agent
@@ -58,7 +58,7 @@
58
58
  "empty",
59
59
  "state"
60
60
  ],
61
- "name": "AdiaEmptyState",
61
+ "name": "UIEmptyState",
62
62
  "related": [
63
63
  "button",
64
64
  "drawer",
@@ -9,9 +9,9 @@
9
9
  * Note: Uses 'heading' attribute instead of 'title' to avoid native tooltip.
10
10
  */
11
11
 
12
- import { AdiaElement } from '../../core/element.js';
12
+ import { UIElement } from '../../core/element.js';
13
13
 
14
- class AdiaEmptyState extends AdiaElement {
14
+ class UIEmptyState extends UIElement {
15
15
  static properties = {
16
16
  icon: { type: String, default: '', reflect: true },
17
17
  heading: { type: String, default: '', reflect: true },
@@ -93,6 +93,6 @@ class AdiaEmptyState extends AdiaElement {
93
93
  this.#descEl = null;
94
94
  }
95
95
  }
96
- customElements.define('empty-state-ui', AdiaEmptyState);
96
+ customElements.define('empty-state-ui', UIEmptyState);
97
97
 
98
- export { AdiaEmptyState };
98
+ export { UIEmptyState };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaEmptyState
4
+ name: UIEmptyState
5
5
  tag: empty-state-ui
6
6
  component: EmptyState
7
7
  category: display
@@ -1,5 +1,5 @@
1
1
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
2
- name: AdiaFeedItem
2
+ name: UIFeedItem
3
3
  tag: feed-item-ui
4
4
  component: FeedItem
5
5
  category: feedback
@@ -9,7 +9,7 @@ description: >-
9
9
  are inferred from the prop shape — auto-fade (duration > 0 + no
10
10
  action), sticky-dismissible (duration null/0), action-required
11
11
  (duration null/0 + action; future phase). Posted via
12
- `AdiaFeed.post()` rather than authored directly.
12
+ `UIFeed.post()` rather than authored directly.
13
13
  props:
14
14
  text:
15
15
  description: Body copy
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "https://adiaui.dev/a2ui/v0_9/components/Feed.json",
4
4
  "title": "Feed",
5
- "description": "Shared top-layer feed channel. Per docs/specs/feed-channel.md (SPEC-FEED-CHANNEL-001). Per-position singletons mounted lazily into document.body via Popover API; consumers post via the static API (`AdiaFeed.post()`) or the global 'feed' CustomEvent.",
5
+ "description": "Shared top-layer feed channel. Per docs/specs/feed-channel.md (SPEC-FEED-CHANNEL-001). Per-position singletons mounted lazily into document.body via Popover API; consumers post via the static API (`UIFeed.post()`) or the global 'feed' CustomEvent.",
6
6
  "type": "object",
7
7
  "allOf": [
8
8
  {
@@ -46,7 +46,7 @@
46
46
  "events": {},
47
47
  "examples": [],
48
48
  "keywords": [],
49
- "name": "AdiaFeedContainer",
49
+ "name": "UIFeedContainer",
50
50
  "related": [],
51
51
  "slots": {},
52
52
  "states": {},
@@ -41,9 +41,18 @@ feed-item-ui[data-closing] {
41
41
  width: max-content;
42
42
  max-width: var(--feed-max-width);
43
43
  }
44
- /* Reset native popover defaults so the lane is invisible until
45
- items render. */
46
- :scope[popover] { background: none; color: inherit; }
44
+ /* Reset native popover defaults. UA stylesheet sets `margin: auto;
45
+ inset: 0; border: solid; padding: 0.25em` which would center the
46
+ lane and paint a chrome border — both fight the fixed-corner
47
+ anchoring below. */
48
+ :scope[popover] {
49
+ margin: 0;
50
+ inset: auto;
51
+ border: 0;
52
+ padding: 0;
53
+ background: none;
54
+ color: inherit;
55
+ }
47
56
 
48
57
  /* Position variants. Default = bottom-right. */
49
58
  :scope,
@@ -12,12 +12,12 @@
12
12
  * (no auto-dismiss when `duration` is null/0; close button
13
13
  * surfaces when `dismissible` is set) but the action-required
14
14
  * focus-trap is deferred.
15
- * - Static API: AdiaFeed.post() / .get() / .clear() / .purge()
15
+ * - Static API: UIFeed.post() / .get() / .clear() / .purge()
16
16
  * — `purge()` directly addresses the audit's L-B4 container-leak
17
17
  * finding by giving consumers a tear-down hook.
18
18
  * - Global event channel: window.dispatchEvent(new CustomEvent(
19
19
  * 'feed', { detail: { text, position, ... } })) — same shape as
20
- * AdiaFeed.post() so any code can post without importing the
20
+ * UIFeed.post() so any code can post without importing the
21
21
  * module directly. Idempotent listener install (HMR-safe).
22
22
  *
23
23
  * Toast migration (spec § 2.5) is deferred — toast-ui keeps its own
@@ -25,11 +25,11 @@
25
25
  * surface has soaked.
26
26
  */
27
27
 
28
- import { AdiaElement, html } from '../../core/element.js';
28
+ import { UIElement, html } from '../../core/element.js';
29
29
 
30
30
  /* ── Container — one per position, mounted into document.body ── */
31
31
 
32
- class AdiaFeedContainer extends AdiaElement {
32
+ class UIFeedContainer extends UIElement {
33
33
  static properties = {
34
34
  position: { type: String, default: 'bottom-right', reflect: true },
35
35
  max: { type: Number, default: 5, reflect: true },
@@ -42,11 +42,11 @@ class AdiaFeedContainer extends AdiaElement {
42
42
  }
43
43
  }
44
44
 
45
- customElements.define('feed-ui', AdiaFeedContainer);
45
+ customElements.define('feed-ui', UIFeedContainer);
46
46
 
47
47
  /* ── Item — one per posted message ── */
48
48
 
49
- class AdiaFeedItem extends AdiaElement {
49
+ class UIFeedItem extends UIElement {
50
50
  #timer = null;
51
51
  #removing = false;
52
52
  #closeTimer = null;
@@ -190,14 +190,14 @@ class AdiaFeedItem extends AdiaElement {
190
190
  const container = this.parentElement;
191
191
  this.dispatchEvent(new Event('close', { bubbles: true }));
192
192
  this.remove();
193
- if (container?.matches?.('feed-ui')) AdiaFeed.releaseContainerIfEmpty(container);
193
+ if (container?.matches?.('feed-ui')) UIFeed.releaseContainerIfEmpty(container);
194
194
  }, this.#getDuration());
195
195
  }
196
196
 
197
197
  update(patch) {
198
198
  if (!patch || typeof patch !== 'object') return;
199
199
  for (const k of Object.keys(patch)) {
200
- if (k in AdiaFeedItem.properties) this[k] = patch[k];
200
+ if (k in UIFeedItem.properties) this[k] = patch[k];
201
201
  }
202
202
  // Phase 2: handle is set via the FeedHandle's update(); not a
203
203
  // reflected attribute, so it lives outside the property loop.
@@ -251,11 +251,11 @@ class AdiaFeedItem extends AdiaElement {
251
251
  }
252
252
  }
253
253
 
254
- customElements.define('feed-item-ui', AdiaFeedItem);
254
+ customElements.define('feed-item-ui', UIFeedItem);
255
255
 
256
- /* ── Static API — AdiaFeed ── */
256
+ /* ── Static API — UIFeed ── */
257
257
 
258
- class AdiaFeed {
258
+ class UIFeed {
259
259
  static #containers = new Map();
260
260
 
261
261
  /**
@@ -266,14 +266,14 @@ class AdiaFeed {
266
266
  * top-right + another in bottom-center) without collision.
267
267
  */
268
268
  static get(position = 'bottom-right') {
269
- let el = AdiaFeed.#containers.get(position);
269
+ let el = UIFeed.#containers.get(position);
270
270
  if (el && el.isConnected) return el;
271
271
  el = document.createElement('feed-ui');
272
272
  el.setAttribute('position', position);
273
273
  if ('popover' in HTMLElement.prototype) el.setAttribute('popover', 'manual');
274
274
  document.body.appendChild(el);
275
275
  try { el.showPopover?.(); } catch { /* graceful fallback */ }
276
- AdiaFeed.#containers.set(position, el);
276
+ UIFeed.#containers.set(position, el);
277
277
  return el;
278
278
  }
279
279
 
@@ -310,7 +310,7 @@ class AdiaFeed {
310
310
  onAction,
311
311
  } = opts;
312
312
  const v = variant === 'error' ? 'danger' : variant; // documented alias
313
- const container = AdiaFeed.get(position);
313
+ const container = UIFeed.get(position);
314
314
  // Phase 2 max-queue: items above [max] queue with [data-queued] and
315
315
  // become visible as visible items dismiss.
316
316
  const max = parseInt(container.getAttribute('max') || '5', 10);
@@ -339,7 +339,7 @@ class AdiaFeed {
339
339
 
340
340
  /** Clear all items in a single lane. */
341
341
  static clear(position = 'bottom-right') {
342
- const el = AdiaFeed.#containers.get(position);
342
+ const el = UIFeed.#containers.get(position);
343
343
  if (!el) return;
344
344
  for (const item of [...el.children]) {
345
345
  if (item.tagName === 'FEED-ITEM-UI') item.dismiss?.();
@@ -348,11 +348,11 @@ class AdiaFeed {
348
348
 
349
349
  /** Tear down ALL containers. Test cleanup; addresses audit L-B4. */
350
350
  static purge() {
351
- for (const el of AdiaFeed.#containers.values()) {
351
+ for (const el of UIFeed.#containers.values()) {
352
352
  try { el.hidePopover?.(); } catch { /* noop */ }
353
353
  el.remove();
354
354
  }
355
- AdiaFeed.#containers.clear();
355
+ UIFeed.#containers.clear();
356
356
  }
357
357
 
358
358
  /** Internal: drop a lane when its last item exits. Also rotates the
@@ -367,19 +367,19 @@ class AdiaFeed {
367
367
  if (container.children.length > 0) return;
368
368
  try { container.hidePopover?.(); } catch { /* noop */ }
369
369
  container.remove();
370
- for (const [pos, el] of AdiaFeed.#containers) {
371
- if (el === container) AdiaFeed.#containers.delete(pos);
370
+ for (const [pos, el] of UIFeed.#containers) {
371
+ if (el === container) UIFeed.#containers.delete(pos);
372
372
  }
373
373
  }
374
374
  }
375
375
 
376
- /* Global 'feed' CustomEvent listener — same shape as AdiaFeed.post().
376
+ /* Global 'feed' CustomEvent listener — same shape as UIFeed.post().
377
377
  Idempotent (HMR-safe via window flag). */
378
378
  if (typeof window !== 'undefined' && !window.__adiaFeedListenerInstalled) {
379
379
  window.__adiaFeedListenerInstalled = true;
380
380
  window.addEventListener('feed', (e) => {
381
- if (e?.detail && typeof e.detail === 'object') AdiaFeed.post(e.detail);
381
+ if (e?.detail && typeof e.detail === 'object') UIFeed.post(e.detail);
382
382
  });
383
383
  }
384
384
 
385
- export { AdiaFeedContainer, AdiaFeedItem, AdiaFeed };
385
+ export { UIFeedContainer, UIFeedItem, UIFeed };
@@ -1,7 +1,7 @@
1
1
  # Generated alongside feed.js — kept in sync by hand for now (feed
2
2
  # is a Phase-1 skeleton; once it stabilizes, run the regen pipeline).
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaFeedContainer
4
+ name: UIFeedContainer
5
5
  tag: feed-ui
6
6
  component: Feed
7
7
  category: container
@@ -10,7 +10,7 @@ description: >-
10
10
  Shared top-layer feed channel. Per docs/specs/feed-channel.md
11
11
  (SPEC-FEED-CHANNEL-001). Per-position singletons mounted lazily into
12
12
  document.body via Popover API; consumers post via the static API
13
- (`AdiaFeed.post()`) or the global 'feed' CustomEvent.
13
+ (`UIFeed.post()`) or the global 'feed' CustomEvent.
14
14
  props:
15
15
  position:
16
16
  description: Lane the feed renders into
@@ -64,7 +64,7 @@
64
64
  "input",
65
65
  "wrapper"
66
66
  ],
67
- "name": "AdiaField",
67
+ "name": "UIField",
68
68
  "related": [
69
69
  "input",
70
70
  "select",
@@ -32,9 +32,9 @@
32
32
  * MutationObserver watches childList so a swapped-in control gets its
33
33
  * `for=` and `aria-describedby` rebound.
34
34
  */
35
- import { AdiaElement } from '../../core/element.js';
35
+ import { UIElement } from '../../core/element.js';
36
36
 
37
- class AdiaField extends AdiaElement {
37
+ class UIField extends UIElement {
38
38
  static properties = {
39
39
  label: { type: String, default: '', reflect: true },
40
40
  hint: { type: String, default: '', reflect: true },
@@ -42,7 +42,7 @@ class AdiaField extends AdiaElement {
42
42
  inline: { type: Boolean, default: false, reflect: true },
43
43
  };
44
44
 
45
- // The validation message lives on the child control (AdiaFormElement.error
45
+ // The validation message lives on the child control (UIFormElement.error
46
46
  // is the single source of truth — validity is a property of the value, not
47
47
  // of the layout wrapper). field-ui mirrors the child's error string into
48
48
  // its own [data-field-error] slot so the validation message renders below
@@ -184,7 +184,7 @@ class AdiaField extends AdiaElement {
184
184
  const el = document.createElement('div');
185
185
  el.setAttribute('slot', 'hint');
186
186
  el.setAttribute('data-field-hint', '');
187
- el.setAttribute('id', AdiaField.#nextMsgId('hint'));
187
+ el.setAttribute('id', UIField.#nextMsgId('hint'));
188
188
  el.hidden = true;
189
189
  this.appendChild(el);
190
190
  this.#hintEl = el;
@@ -196,7 +196,7 @@ class AdiaField extends AdiaElement {
196
196
  const el = document.createElement('div');
197
197
  el.setAttribute('slot', 'error');
198
198
  el.setAttribute('data-field-error', '');
199
- el.setAttribute('id', AdiaField.#nextMsgId('err'));
199
+ el.setAttribute('id', UIField.#nextMsgId('err'));
200
200
  el.setAttribute('role', 'alert');
201
201
  el.hidden = true;
202
202
  this.appendChild(el);
@@ -210,7 +210,7 @@ class AdiaField extends AdiaElement {
210
210
  this.#labelEl.removeAttribute('for');
211
211
  return;
212
212
  }
213
- if (!control.id) control.id = AdiaField.#nextId();
213
+ if (!control.id) control.id = UIField.#nextId();
214
214
  this.#labelEl.setAttribute('for', control.id);
215
215
  }
216
216
 
@@ -247,10 +247,10 @@ class AdiaField extends AdiaElement {
247
247
  }
248
248
 
249
249
  static #idSeq = 0;
250
- static #nextId() { return `field-ctl-${++AdiaField.#idSeq}`; }
250
+ static #nextId() { return `field-ctl-${++UIField.#idSeq}`; }
251
251
  static #msgSeq = 0;
252
- static #nextMsgId(kind) { return `field-${kind}-${++AdiaField.#msgSeq}`; }
252
+ static #nextMsgId(kind) { return `field-${kind}-${++UIField.#msgSeq}`; }
253
253
  }
254
254
 
255
- customElements.define('field-ui', AdiaField);
256
- export { AdiaField };
255
+ customElements.define('field-ui', UIField);
256
+ export { UIField };
@@ -1,6 +1,6 @@
1
1
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
2
2
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
3
- name: AdiaField
3
+ name: UIField
4
4
  tag: field-ui
5
5
  component: Field
6
6
  category: form
@@ -29,7 +29,7 @@ props:
29
29
  default: ""
30
30
  reflect: true
31
31
  # `error` is mirrored from the slotted control's `error` property.
32
- # AdiaFormElement.error is the source of truth; field-ui renders the
32
+ # UIFormElement.error is the source of truth; field-ui renders the
33
33
  # message below the control in danger style, role="alert" so screen
34
34
  # readers announce changes. There is no field-level error attribute —
35
35
  # set the message on the control: `<field-ui><input-ui error="…"></input-ui></field-ui>`.
@@ -51,7 +51,7 @@
51
51
  "keywords": [
52
52
  "footer"
53
53
  ],
54
- "name": "AdiaFooter",
54
+ "name": "UIFooter",
55
55
  "related": [
56
56
  "avatar",
57
57
  "input",
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaFooter
4
+ name: UIFooter
5
5
  tag: footer-ui
6
6
  component: Footer
7
7
  category: container
@@ -69,7 +69,7 @@
69
69
  "portfolio",
70
70
  "responsive"
71
71
  ],
72
- "name": "AdiaGrid",
72
+ "name": "UIGrid",
73
73
  "related": [
74
74
  "button",
75
75
  "badge",
@@ -5,9 +5,9 @@
5
5
  * <grid-ui columns="2" column-gap="2" row-gap="4">...</grid-ui>
6
6
  */
7
7
 
8
- import { AdiaElement } from '../../core/element.js';
8
+ import { UIElement } from '../../core/element.js';
9
9
 
10
- class AdiaGrid extends AdiaElement {
10
+ class UIGrid extends UIElement {
11
11
  static properties = {
12
12
  columns: { type: String, default: '3', reflect: true },
13
13
  gap: { type: String, default: 'md', reflect: true },
@@ -16,6 +16,6 @@ class AdiaGrid extends AdiaElement {
16
16
  };
17
17
  static template = () => null;
18
18
  }
19
- customElements.define('grid-ui', AdiaGrid);
19
+ customElements.define('grid-ui', UIGrid);
20
20
 
21
- export { AdiaGrid };
21
+ export { UIGrid };
@@ -1,7 +1,7 @@
1
1
  # Generated by scripts/migrate-yamls-to-v1.mjs — migrated to v1 contract.
2
2
  # Edit this file; run `npm run build:components` to regenerate a2ui.json.
3
3
  $schema: ../../../../scripts/schemas/component.yaml.schema.json
4
- name: AdiaGrid
4
+ name: UIGrid
5
5
  tag: grid-ui
6
6
  component: Grid
7
7
  category: layout
@@ -45,7 +45,7 @@
45
45
  "keywords": [
46
46
  "header"
47
47
  ],
48
- "name": "AdiaHeader",
48
+ "name": "UIHeader",
49
49
  "related": [
50
50
  "avatar",
51
51
  "input",