@adia-ai/gen-ui 0.8.52 → 0.8.54

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 (52) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/compose/strategies/monolithic/_shared.js +2 -2
  3. package/compose/transpiler/transpiler-maps.js +18 -1
  4. package/corpus/chunk-embeddings.json +1 -1
  5. package/corpus/chunks/_index.json +5 -7
  6. package/corpus/chunks/_source-hashes.json +105 -101
  7. package/corpus/chunks/access-denied-with-request.json +1 -1
  8. package/corpus/chunks/access-request-pending.json +1 -1
  9. package/corpus/chunks/accordion-settings.json +20 -50
  10. package/corpus/chunks/agent-cost-detailed.json +3 -3
  11. package/corpus/chunks/api-keys-create.json +1 -1
  12. package/corpus/chunks/billing-overview.json +4 -4
  13. package/corpus/chunks/chart-in-card-chart-with-filter-pills.json +4 -4
  14. package/corpus/chunks/chart-with-filter-pills.json +4 -4
  15. package/corpus/chunks/code-snippet.json +1 -1
  16. package/corpus/chunks/contact-support-form.json +2 -2
  17. package/corpus/chunks/conversion-funnel-with-segment-compare.json +4 -4
  18. package/corpus/chunks/dashboard-acquisition-panel.json +4 -4
  19. package/corpus/chunks/dashboard-notifications-panel.json +4 -4
  20. package/corpus/chunks/dashboard-reports-panel.json +2 -2
  21. package/corpus/chunks/dashboard-reports-table.json +2 -2
  22. package/corpus/chunks/dashboard-traffic-channels.json +4 -4
  23. package/corpus/chunks/data-export-request.json +1 -1
  24. package/corpus/chunks/date-time-picker-form.json +9 -17
  25. package/corpus/chunks/drawer-custom-roles.json +1 -1
  26. package/corpus/chunks/drawer-gcal.json +1 -1
  27. package/corpus/chunks/drawer-github.json +1 -1
  28. package/corpus/chunks/drawer-revoke-session.json +1 -1
  29. package/corpus/chunks/export-flow-async.json +1 -1
  30. package/corpus/chunks/extended-profile-form.json +2 -2
  31. package/corpus/chunks/filter-bar-saved-views.json +4 -4
  32. package/corpus/chunks/form-drawer-tall-form.json +1 -1
  33. package/corpus/chunks/form-fields-two-column.json +1 -3
  34. package/corpus/chunks/import-mapping-flow.json +18 -2
  35. package/corpus/chunks/integrations-grid.json +2 -2
  36. package/corpus/chunks/member-edit-drawer.json +2 -2
  37. package/corpus/chunks/notification-badges-feed.json +4 -4
  38. package/corpus/chunks/permission-matrix-table.json +1 -1
  39. package/corpus/chunks/radio-button-group.json +8 -16
  40. package/corpus/chunks/reg-extended-profile.json +2 -2
  41. package/corpus/chunks/reg-helpdesk-grid.json +2 -2
  42. package/corpus/chunks/reg-step-shell.json +2 -2
  43. package/corpus/chunks/reg-team-size.json +2 -2
  44. package/corpus/chunks/revenue-heatmap.json +2 -2
  45. package/corpus/chunks/segmented-control-billing-tabs.json +4 -4
  46. package/corpus/chunks/settings-appearance-primitives.json +2 -2
  47. package/corpus/chunks/signup-team-size-form.json +2 -2
  48. package/corpus/chunks/toolbar-rich-text-editor.json +4 -4
  49. package/corpus/chunks/verification-document-upload.json +1 -1
  50. package/corpus/chunks/verification-status.json +1 -1
  51. package/corpus/manifest.json +2 -2
  52. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # Changelog — @adia-ai/gen-ui
2
2
 
3
+ ## [0.8.54] — 2026-08-27
4
+
5
+ ### Changed
6
+ - **`corpus/` re-harvested for the release window** — `_source-hashes.json` regenerated
7
+ against source drift in `@adia-ai/web-components` (`drilldown.examples.html`, the
8
+ `slot="chevron"`→`slot="caret"` migration, gh#1977) and site content (`admin-shell.html`,
9
+ `cdn-usage.html`, three new guide pages — `bundle-loading.html`, `bundle-sizes.html`,
10
+ `css-architecture.html` — and `patterns/index.html`). No chunk content changed, hashes
11
+ only; `chunks/_index.json` and `manifest.json` are unchanged.
12
+
13
+ ## [0.8.53] — 2026-08-26
14
+
15
+ ### Fixed
16
+ - **`compose/transpiler/transpiler-maps.js`'s `ALIAS_TYPES` set corrected — dropped the stale `'SegmentedControl'` alias (gh#2116).** That entry let a pre-0.8.43 component name squat on `Segmented`'s reverse-mapping slot in the HTML-harvest lookup, causing 22 corpus chunks to reference a catalog type the current catalog never declares. Fixing the mapping (rather than hand-editing each chunk, which the harvester would silently overwrite on the next `build:components` run) also surfaced and required fixing 4 downstream call sites that still emitted the retired literal: `apps/genui/app/patient-visit/surfaces.js` (a real application surface builder — `CATALOG_UNKNOWN_COMPONENT_TYPE` broke `validateFinal` for two builders), its own test file, `packages/genui/adia-catalog/composition-constraints.test.js`, and `apps/genui/app/patient-visit/verbs.test.js`. Also corrected an LLM generation prompt in `compose/strategies/monolithic/_shared.js` ("Toggle → SegmentedControl") that would have steered the model toward generating now-invalid envelopes.
17
+
18
+ ### Changed
19
+ - **`corpus/` re-harvested for the release window** — 22 chunks' `SegmentedControl` references corrected to `Segmented` (gh#2116); chunks regenerated against the ~70 primitive docs+catalog fixes shipped in `@adia-ai/web-components` (gh#2032); `chunks/_index.json`, `_source-hashes.json`, `manifest.json` regenerated.
20
+
3
21
  ## [0.8.52] — 2026-08-25
4
22
 
5
23
  ### Changed
@@ -1075,7 +1075,7 @@ Instructions:
1075
1075
  - Change text content, labels, icons to match the new intent
1076
1076
  - Preserve slot attributes and Card anatomy rules
1077
1077
  - CRITICAL: Preserve layout container types — do NOT change Grid to Column or Row to Column. If the canvas has a Grid with columns="3" for a card collection, keep it as Grid. Only change layout types when the user explicitly requests a layout change.
1078
- - CONTENT CARRY-OVER on component swaps: when the user asks to upgrade a component to a richer variant (e.g. Image → Carousel, Text → Stat, Toggle → SegmentedControl, Input → Select), the original's content props (src, alt, textContent, text, value, label, name) MUST be carried into the equivalent prop on the new component. The original src becomes the first slide of a Carousel; the original textContent becomes the first item; the original value becomes the default. NEVER emit a swapped component with placeholder/lorem content when real content was present in the original.
1078
+ - CONTENT CARRY-OVER on component swaps: when the user asks to upgrade a component to a richer variant (e.g. Image → Carousel, Text → Stat, Toggle → Segmented, Input → Select), the original's content props (src, alt, textContent, text, value, label, name) MUST be carried into the equivalent prop on the new component. The original src becomes the first slide of a Carousel; the original textContent becomes the first item; the original value becomes the default. NEVER emit a swapped component with placeholder/lorem content when real content was present in the original.
1079
1079
  - You MUST return the COMPLETE component array including all existing components plus your modifications
1080
1080
  - Generate at least ${priorComponents.length} components (the existing ones plus any additions)
1081
1081
  - SCOPE GUARD: Only add sections/components that the user explicitly requested. Do NOT speculatively add features, panels, or sections not mentioned in the intent. If adding more than 3 new top-level sections, reconsider whether the user actually asked for them.
@@ -1093,7 +1093,7 @@ CRITICAL PRESERVATION RULES:
1093
1093
  - NEVER change layout container types (Grid→Column, Row→Column, Grid→Row) unless the user explicitly asks to change the layout structure.
1094
1094
  - If a Grid has columns="3", keep it as Grid with columns="3". Adding a toggle/filter/button to a toolbar does NOT change the content layout below.
1095
1095
  - Preserve parent-child relationships — adding a control to a toolbar row doesn't affect sibling containers.
1096
- - CONTENT CARRY-OVER on component swaps: when upgrading a component to a richer variant (Image→Carousel, Text→Stat, Toggle→SegmentedControl, Input→Select), the original's content props (src, alt, textContent, text, value, label, name) MUST flow into the equivalent prop on the new component (or become its first item, where applicable). NEVER emit a swapped component with placeholder content when real content was present.
1096
+ - CONTENT CARRY-OVER on component swaps: when upgrading a component to a richer variant (Image→Carousel, Text→Stat, Toggle→Segmented, Input→Select), the original's content props (src, alt, textContent, text, value, label, name) MUST flow into the equivalent prop on the new component (or become its first item, where applicable). NEVER emit a swapped component with placeholder content when real content was present.
1097
1097
 
1098
1098
  DIFF FORMAT:
1099
1099
  - To ADD a new component: include the full component JSON object (with a new unique id)
@@ -244,7 +244,24 @@ function extractCatalogProps(el, a2uiType) {
244
244
 
245
245
  const ALIAS_TYPES = new Set([
246
246
  'Select', 'LoadingIndicator', 'ErrorContainer', 'Keyboard',
247
- 'DatePicker', 'CommandPalette', 'Segmented', 'OTP', 'SideNav', 'IconSource',
247
+ 'DatePicker', 'CommandPalette', 'SegmentedControl', 'OTP', 'SideNav', 'IconSource',
248
+ // 'SegmentedControl' (not 'Segmented') — registry.js lists the deprecated
249
+ // pre-0.8.43 alias `['SegmentedControl', 'segmented-ui']` BEFORE the
250
+ // canonical `['Segmented', 'segmented-ui']` entry; first-write-wins let
251
+ // the deprecated alias claim the reverse-registry slot, so the harvester
252
+ // emitted `"component": "SegmentedControl"` (not a real catalog
253
+ // component — catalog only defines `Segmented`, with `SegmentedControl`
254
+ // as a tag synonym) for every harvested chunk composing <segmented-ui>
255
+ // directly (gh#2116 — 22 corrupted corpus chunks). Forward resolution
256
+ // (`resolveTag('SegmentedControl')`) is untouched — this only reorders
257
+ // which type wins the REVERSE (tag → canonical type) lookup, same
258
+ // mechanism already used for 'Select'/'search-ui' above.
259
+ // 'segmented-control-ui' — same class of bug, same tag: registry.js's
260
+ // "AgentUI Aliases" block ALSO self-references the old tag name
261
+ // (`['segmented-control-ui', 'segmented-ui']`) ahead of the canonical
262
+ // `['Segmented', 'segmented-ui']` entry — excluding 'SegmentedControl'
263
+ // alone only uncovers this second squatter on the same tag.
264
+ 'segmented-control-ui',
248
265
  // 'search-ui' — registry.js's "AgentUI Aliases (backwards compat with
249
266
  // -ui tags)" block registers the tag name itself as a self-referencing
250
267
  // type (`['search-ui', 'search-ui']`) ahead of the real canonical