@adia-ai/a2ui-corpus 0.5.8 → 0.5.10

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.
package/CHANGELOG.md CHANGED
@@ -18,6 +18,16 @@ gap registry. Consumed by `@adia-ai/a2ui-retrieval` and
18
18
 
19
19
  _No pending changes._
20
20
 
21
+ ## [0.5.10] - 2026-05-15
22
+
23
+ _Lockstep ride-along (no source change)._
24
+
25
+
26
+ ## [0.5.9] - 2026-05-15
27
+
28
+ _Lockstep ride-along (no source change)._
29
+
30
+
21
31
  ## [0.5.8] - 2026-05-15
22
32
 
23
33
  _Lockstep ride-along (no source change)._
@@ -5275,6 +5275,94 @@
5275
5275
  "version": 1
5276
5276
  }
5277
5277
  },
5278
+ "Col": {
5279
+ "title": "Col",
5280
+ "description": "Flex column layout primitive.",
5281
+ "type": "object",
5282
+ "allOf": [
5283
+ {
5284
+ "$ref": "#/$defs/ComponentCommon"
5285
+ },
5286
+ {
5287
+ "$ref": "#/$defs/CatalogComponentCommon"
5288
+ }
5289
+ ],
5290
+ "properties": {
5291
+ "align": {
5292
+ "description": "Align items",
5293
+ "type": "string",
5294
+ "default": "stretch"
5295
+ },
5296
+ "component": {
5297
+ "const": "Col"
5298
+ },
5299
+ "gap": {
5300
+ "description": "Gap between children. Accepts either the named scale (xs/sm/md/lg/xl) or a numeric rung on the spacing scale (\"1\"…\"16\", mapped to --a-space-N).",
5301
+ "type": "string",
5302
+ "default": "md"
5303
+ },
5304
+ "grow": {
5305
+ "description": "Fills remaining space in a flex parent (e.g. inside a Row). CSS-only attribute via :scope[grow] in col.css.",
5306
+ "type": "boolean",
5307
+ "default": false
5308
+ },
5309
+ "justify": {
5310
+ "description": "Justify content",
5311
+ "type": "string",
5312
+ "default": "start"
5313
+ }
5314
+ },
5315
+ "required": [
5316
+ "component"
5317
+ ],
5318
+ "unevaluatedProperties": false,
5319
+ "x-adiaui": {
5320
+ "anti_patterns": [],
5321
+ "category": "layout",
5322
+ "composes": [],
5323
+ "events": {},
5324
+ "examples": [
5325
+ {
5326
+ "description": "Chat interface with message bubbles containing avatar and text pairs, plus an input footer.",
5327
+ "a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"children\": [\n \"hdr\",\n \"sec\",\n \"ftr\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"title\"\n ]\n },\n {\n \"id\": \"title\",\n \"component\": \"Text\",\n \"slot\": \"heading\",\n \"textContent\": \"Chat\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"messages\"\n ]\n },\n {\n \"id\": \"messages\",\n \"component\": \"Column\",\n \"gap\": \"3\",\n \"children\": [\n \"msg1\",\n \"msg2\",\n \"msg3\",\n \"msg4\"\n ]\n },\n {\n \"id\": \"msg1\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a1\",\n \"t1\"\n ]\n },\n {\n \"id\": \"a1\",\n \"component\": \"Avatar\",\n \"name\": \"User\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t1\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Hello! Can you help me with something?\"\n },\n {\n \"id\": \"msg2\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a2\",\n \"t2\"\n ]\n },\n {\n \"id\": \"a2\",\n \"component\": \"Avatar\",\n \"name\": \"Assistant\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t2\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Of course! I'd be happy to help. What do you need?\"\n },\n {\n \"id\": \"msg3\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a3\",\n \"t3\"\n ]\n },\n {\n \"id\": \"a3\",\n \"component\": \"Avatar\",\n \"name\": \"User\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t3\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"I need to build a dashboard layout.\"\n },\n {\n \"id\": \"msg4\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a4\",\n \"t4\"\n ]\n },\n {\n \"id\": \"a4\",\n \"component\": \"Avatar\",\n \"name\": \"Assistant\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t4\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Great choice! Let me suggest some patterns for that.\"\n },\n {\n \"id\": \"ftr\",\n \"component\": \"Footer\",\n \"children\": [\n \"input-row\"\n ]\n },\n {\n \"id\": \"input-row\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"chat-input\",\n \"send-btn\"\n ]\n },\n {\n \"id\": \"chat-input\",\n \"component\": \"Input\",\n \"placeholder\": \"Type a message...\"\n },\n {\n \"id\": \"send-btn\",\n \"component\": \"Button\",\n \"text\": \"Send\",\n \"icon\": \"send\",\n \"variant\": \"primary\"\n }\n]",
5328
+ "name": "chat-interface"
5329
+ },
5330
+ {
5331
+ "description": "Command palette card with search input and a list of command options.",
5332
+ "a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"children\": [\n \"hdr\",\n \"sec\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"search\"\n ]\n },\n {\n \"id\": \"search\",\n \"component\": \"Input\",\n \"placeholder\": \"Type a command or search...\",\n \"icon\": \"search\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"options\"\n ]\n },\n {\n \"id\": \"options\",\n \"component\": \"Column\",\n \"gap\": \"1\",\n \"children\": [\n \"opt1\",\n \"opt2\",\n \"opt3\",\n \"opt4\",\n \"opt5\"\n ]\n },\n {\n \"id\": \"opt1\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i1\",\n \"l1\"\n ]\n },\n {\n \"id\": \"i1\",\n \"component\": \"Icon\",\n \"name\": \"file\"\n },\n {\n \"id\": \"l1\",\n \"component\": \"Text\",\n \"textContent\": \"Open File\"\n },\n {\n \"id\": \"opt2\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i2\",\n \"l2\"\n ]\n },\n {\n \"id\": \"i2\",\n \"component\": \"Icon\",\n \"name\": \"gear\"\n },\n {\n \"id\": \"l2\",\n \"component\": \"Text\",\n \"textContent\": \"Settings\"\n },\n {\n \"id\": \"opt3\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i3\",\n \"l3\"\n ]\n },\n {\n \"id\": \"i3\",\n \"component\": \"Icon\",\n \"name\": \"palette\"\n },\n {\n \"id\": \"l3\",\n \"component\": \"Text\",\n \"textContent\": \"Change Theme\"\n },\n {\n \"id\": \"opt4\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i4\",\n \"l4\"\n ]\n },\n {\n \"id\": \"i4\",\n \"component\": \"Icon\",\n \"name\": \"users\"\n },\n {\n \"id\": \"l4\",\n \"component\": \"Text\",\n \"textContent\": \"Manage Users\"\n },\n {\n \"id\": \"opt5\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i5\",\n \"l5\"\n ]\n },\n {\n \"id\": \"i5\",\n \"component\": \"Icon\",\n \"name\": \"sign-out\"\n },\n {\n \"id\": \"l5\",\n \"component\": \"Text\",\n \"textContent\": \"Sign Out\"\n }\n]",
5333
+ "name": "command-palette"
5334
+ }
5335
+ ],
5336
+ "keywords": [
5337
+ "column",
5338
+ "col"
5339
+ ],
5340
+ "name": "UICol",
5341
+ "related": [
5342
+ "avatar",
5343
+ "input",
5344
+ "button",
5345
+ "empty-state",
5346
+ "skeleton"
5347
+ ],
5348
+ "slots": {
5349
+ "default": {
5350
+ "description": "Default slot — primary child content."
5351
+ }
5352
+ },
5353
+ "states": [
5354
+ {
5355
+ "description": "Default, ready for interaction.",
5356
+ "name": "idle"
5357
+ }
5358
+ ],
5359
+ "synonyms": {},
5360
+ "tag": "col-ui",
5361
+ "tokens": {},
5362
+ "traits": [],
5363
+ "version": 1
5364
+ }
5365
+ },
5278
5366
  "ColorPicker": {
5279
5367
  "title": "ColorPicker",
5280
5368
  "description": "OKLCH-native color picker with 2D area and H/C/L sliders. Form-associated.",
@@ -5410,94 +5498,6 @@
5410
5498
  "version": 1
5411
5499
  }
5412
5500
  },
5413
- "Column": {
5414
- "title": "Column",
5415
- "description": "Flex column layout primitive.",
5416
- "type": "object",
5417
- "allOf": [
5418
- {
5419
- "$ref": "#/$defs/ComponentCommon"
5420
- },
5421
- {
5422
- "$ref": "#/$defs/CatalogComponentCommon"
5423
- }
5424
- ],
5425
- "properties": {
5426
- "align": {
5427
- "description": "Align items",
5428
- "type": "string",
5429
- "default": "stretch"
5430
- },
5431
- "component": {
5432
- "const": "Column"
5433
- },
5434
- "gap": {
5435
- "description": "Gap between children. Accepts either the named scale (xs/sm/md/lg/xl) or a numeric rung on the spacing scale (\"1\"…\"16\", mapped to --a-space-N).",
5436
- "type": "string",
5437
- "default": "md"
5438
- },
5439
- "grow": {
5440
- "description": "Fills remaining space in a flex parent (e.g. inside a Row). CSS-only attribute via :scope[grow] in col.css.",
5441
- "type": "boolean",
5442
- "default": false
5443
- },
5444
- "justify": {
5445
- "description": "Justify content",
5446
- "type": "string",
5447
- "default": "start"
5448
- }
5449
- },
5450
- "required": [
5451
- "component"
5452
- ],
5453
- "unevaluatedProperties": false,
5454
- "x-adiaui": {
5455
- "anti_patterns": [],
5456
- "category": "layout",
5457
- "composes": [],
5458
- "events": {},
5459
- "examples": [
5460
- {
5461
- "description": "Chat interface with message bubbles containing avatar and text pairs, plus an input footer.",
5462
- "a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"children\": [\n \"hdr\",\n \"sec\",\n \"ftr\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"title\"\n ]\n },\n {\n \"id\": \"title\",\n \"component\": \"Text\",\n \"slot\": \"heading\",\n \"textContent\": \"Chat\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"messages\"\n ]\n },\n {\n \"id\": \"messages\",\n \"component\": \"Column\",\n \"gap\": \"3\",\n \"children\": [\n \"msg1\",\n \"msg2\",\n \"msg3\",\n \"msg4\"\n ]\n },\n {\n \"id\": \"msg1\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a1\",\n \"t1\"\n ]\n },\n {\n \"id\": \"a1\",\n \"component\": \"Avatar\",\n \"name\": \"User\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t1\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Hello! Can you help me with something?\"\n },\n {\n \"id\": \"msg2\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a2\",\n \"t2\"\n ]\n },\n {\n \"id\": \"a2\",\n \"component\": \"Avatar\",\n \"name\": \"Assistant\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t2\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Of course! I'd be happy to help. What do you need?\"\n },\n {\n \"id\": \"msg3\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a3\",\n \"t3\"\n ]\n },\n {\n \"id\": \"a3\",\n \"component\": \"Avatar\",\n \"name\": \"User\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t3\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"I need to build a dashboard layout.\"\n },\n {\n \"id\": \"msg4\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"a4\",\n \"t4\"\n ]\n },\n {\n \"id\": \"a4\",\n \"component\": \"Avatar\",\n \"name\": \"Assistant\",\n \"size\": \"sm\"\n },\n {\n \"id\": \"t4\",\n \"component\": \"Text\",\n \"variant\": \"body\",\n \"textContent\": \"Great choice! Let me suggest some patterns for that.\"\n },\n {\n \"id\": \"ftr\",\n \"component\": \"Footer\",\n \"children\": [\n \"input-row\"\n ]\n },\n {\n \"id\": \"input-row\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"chat-input\",\n \"send-btn\"\n ]\n },\n {\n \"id\": \"chat-input\",\n \"component\": \"Input\",\n \"placeholder\": \"Type a message...\"\n },\n {\n \"id\": \"send-btn\",\n \"component\": \"Button\",\n \"text\": \"Send\",\n \"icon\": \"send\",\n \"variant\": \"primary\"\n }\n]",
5463
- "name": "chat-interface"
5464
- },
5465
- {
5466
- "description": "Command palette card with search input and a list of command options.",
5467
- "a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"children\": [\n \"hdr\",\n \"sec\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"search\"\n ]\n },\n {\n \"id\": \"search\",\n \"component\": \"Input\",\n \"placeholder\": \"Type a command or search...\",\n \"icon\": \"search\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"options\"\n ]\n },\n {\n \"id\": \"options\",\n \"component\": \"Column\",\n \"gap\": \"1\",\n \"children\": [\n \"opt1\",\n \"opt2\",\n \"opt3\",\n \"opt4\",\n \"opt5\"\n ]\n },\n {\n \"id\": \"opt1\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i1\",\n \"l1\"\n ]\n },\n {\n \"id\": \"i1\",\n \"component\": \"Icon\",\n \"name\": \"file\"\n },\n {\n \"id\": \"l1\",\n \"component\": \"Text\",\n \"textContent\": \"Open File\"\n },\n {\n \"id\": \"opt2\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i2\",\n \"l2\"\n ]\n },\n {\n \"id\": \"i2\",\n \"component\": \"Icon\",\n \"name\": \"gear\"\n },\n {\n \"id\": \"l2\",\n \"component\": \"Text\",\n \"textContent\": \"Settings\"\n },\n {\n \"id\": \"opt3\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i3\",\n \"l3\"\n ]\n },\n {\n \"id\": \"i3\",\n \"component\": \"Icon\",\n \"name\": \"palette\"\n },\n {\n \"id\": \"l3\",\n \"component\": \"Text\",\n \"textContent\": \"Change Theme\"\n },\n {\n \"id\": \"opt4\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i4\",\n \"l4\"\n ]\n },\n {\n \"id\": \"i4\",\n \"component\": \"Icon\",\n \"name\": \"users\"\n },\n {\n \"id\": \"l4\",\n \"component\": \"Text\",\n \"textContent\": \"Manage Users\"\n },\n {\n \"id\": \"opt5\",\n \"component\": \"Row\",\n \"gap\": \"2\",\n \"children\": [\n \"i5\",\n \"l5\"\n ]\n },\n {\n \"id\": \"i5\",\n \"component\": \"Icon\",\n \"name\": \"sign-out\"\n },\n {\n \"id\": \"l5\",\n \"component\": \"Text\",\n \"textContent\": \"Sign Out\"\n }\n]",
5468
- "name": "command-palette"
5469
- }
5470
- ],
5471
- "keywords": [
5472
- "column",
5473
- "col"
5474
- ],
5475
- "name": "UIColumn",
5476
- "related": [
5477
- "avatar",
5478
- "input",
5479
- "button",
5480
- "empty-state",
5481
- "skeleton"
5482
- ],
5483
- "slots": {
5484
- "default": {
5485
- "description": "Default slot — primary child content."
5486
- }
5487
- },
5488
- "states": [
5489
- {
5490
- "description": "Default, ready for interaction.",
5491
- "name": "idle"
5492
- }
5493
- ],
5494
- "synonyms": {},
5495
- "tag": "col-ui",
5496
- "tokens": {},
5497
- "traits": [],
5498
- "version": 1
5499
- }
5500
- },
5501
5501
  "Command": {
5502
5502
  "title": "Command",
5503
5503
  "description": "Searchable command palette with keyboard navigation.",
@@ -6966,6 +6966,11 @@
6966
6966
  "description": "Icon name displayed above the heading",
6967
6967
  "type": "string",
6968
6968
  "default": ""
6969
+ },
6970
+ "minimal": {
6971
+ "description": "§223 (v0.5.9). Single-line muted layout — drops centered-column chrome\n(no vertical padding, no row-stack, no icon-size bump). Useful for\ninline empty-table-row / inline empty-list / placeholder cells where\nthe full-canvas placeholder is too prominent.",
6972
+ "type": "boolean",
6973
+ "default": false
6969
6974
  }
6970
6975
  },
6971
6976
  "required": [
@@ -8506,6 +8511,11 @@
8506
8511
  "type": "string",
8507
8512
  "default": ""
8508
8513
  },
8514
+ "throttle": {
8515
+ "description": "§220 (v0.5.9, FEEDBACK-14 §3). Trailing-debounce on the `input`\nevent in milliseconds. When > 0, value mutates immediately + the UI\nstays responsive, but `input` dispatch is collapsed so only the\nfinal value in the throttle window emits. Useful for expensive\n`input`-driven computation (palette regen, large list filter,\nserver-side autocomplete). `change` fires unthrottled on blur /\nEnter / stepper commit; any pending `input` flushes before `change`\nso consumers see input→input→…→input→change ordering. Default 0\npreserves synchronous emission.",
8516
+ "type": "number",
8517
+ "default": 0
8518
+ },
8509
8519
  "value": {
8510
8520
  "description": "Current input value, synced with contenteditable text surface. For `type=\"number\"`, this is the formatted numeric string; read `el.valueAsNumber` for the parsed Number.",
8511
8521
  "type": "string",
@@ -9374,6 +9384,120 @@
9374
9384
  "version": 1
9375
9385
  }
9376
9386
  },
9387
+ "MenuDivider": {
9388
+ "title": "MenuDivider",
9389
+ "description": "Visual separator between groups of `<menu-item-ui>` rows. Renders as a horizontal rule with role=\"separator\".",
9390
+ "type": "object",
9391
+ "allOf": [
9392
+ {
9393
+ "$ref": "#/$defs/ComponentCommon"
9394
+ },
9395
+ {
9396
+ "$ref": "#/$defs/CatalogComponentCommon"
9397
+ }
9398
+ ],
9399
+ "properties": {
9400
+ "component": {
9401
+ "const": "MenuDivider"
9402
+ }
9403
+ },
9404
+ "required": [
9405
+ "component"
9406
+ ],
9407
+ "unevaluatedProperties": false,
9408
+ "x-adiaui": {
9409
+ "anti_patterns": [],
9410
+ "category": "navigation",
9411
+ "composes": [],
9412
+ "events": {},
9413
+ "examples": [],
9414
+ "keywords": [],
9415
+ "name": "UIMenuDivider",
9416
+ "related": [],
9417
+ "slots": {},
9418
+ "states": [],
9419
+ "synonyms": {},
9420
+ "tag": "menu-divider-ui",
9421
+ "tokens": {},
9422
+ "traits": [],
9423
+ "version": 1
9424
+ }
9425
+ },
9426
+ "MenuItem": {
9427
+ "title": "MenuItem",
9428
+ "description": "Child of `<menu-ui>`. One actionable row inside a menu, with optional leading icon + label + value.",
9429
+ "type": "object",
9430
+ "allOf": [
9431
+ {
9432
+ "$ref": "#/$defs/ComponentCommon"
9433
+ },
9434
+ {
9435
+ "$ref": "#/$defs/CatalogComponentCommon"
9436
+ }
9437
+ ],
9438
+ "properties": {
9439
+ "component": {
9440
+ "const": "MenuItem"
9441
+ },
9442
+ "disabled": {
9443
+ "description": "Disabled state — blocks pointer + keyboard activation.",
9444
+ "type": "boolean",
9445
+ "default": false
9446
+ },
9447
+ "icon": {
9448
+ "description": "Optional leading Phosphor icon name.",
9449
+ "type": "string",
9450
+ "default": ""
9451
+ },
9452
+ "text": {
9453
+ "description": "Item label text.",
9454
+ "type": "string",
9455
+ "default": ""
9456
+ },
9457
+ "value": {
9458
+ "description": "Stable identifier emitted via the parent menu's `select` event.",
9459
+ "type": "string",
9460
+ "default": ""
9461
+ },
9462
+ "variant": {
9463
+ "description": "Semantic variant.",
9464
+ "type": "string",
9465
+ "enum": [
9466
+ "default",
9467
+ "danger"
9468
+ ],
9469
+ "default": "default"
9470
+ }
9471
+ },
9472
+ "required": [
9473
+ "component"
9474
+ ],
9475
+ "unevaluatedProperties": false,
9476
+ "x-adiaui": {
9477
+ "anti_patterns": [],
9478
+ "category": "navigation",
9479
+ "composes": [],
9480
+ "events": {},
9481
+ "examples": [],
9482
+ "keywords": [],
9483
+ "name": "UIMenuItem",
9484
+ "related": [],
9485
+ "slots": {
9486
+ "icon": {
9487
+ "description": "Custom leading element override; falls through to `[icon]` prop if not slotted."
9488
+ },
9489
+ "text": {
9490
+ "description": "Custom label content; falls through to `[text]` prop if not slotted."
9491
+ }
9492
+ },
9493
+ "states": [],
9494
+ "synonyms": {},
9495
+ "tag": "menu-item-ui",
9496
+ "tokens": {},
9497
+ "traits": [],
9498
+ "version": 1
9499
+ }
9500
+ },
9377
9501
  "Modal": {
9378
9502
  "title": "Modal",
9379
9503
  "description": "Centered dialog overlay using native <dialog>. Focus trapping, Escape key, backdrop.",
@@ -11779,8 +11903,8 @@
11779
11903
  "version": 1
11780
11904
  }
11781
11905
  },
11782
- "Richtext": {
11783
- "title": "Richtext",
11906
+ "RichText": {
11907
+ "title": "RichText",
11784
11908
  "description": "Renders markdown to styled HTML.",
11785
11909
  "type": "object",
11786
11910
  "allOf": [
@@ -11793,7 +11917,7 @@
11793
11917
  ],
11794
11918
  "properties": {
11795
11919
  "component": {
11796
- "const": "Richtext"
11920
+ "const": "RichText"
11797
11921
  },
11798
11922
  "markdown": {
11799
11923
  "description": "Component property: markdown.",
@@ -11840,7 +11964,7 @@
11840
11964
  "keywords": [
11841
11965
  "richtext"
11842
11966
  ],
11843
- "name": "UIRichtext",
11967
+ "name": "UIRichText",
11844
11968
  "related": [],
11845
11969
  "slots": {
11846
11970
  "default": {
@@ -13552,6 +13676,78 @@
13552
13676
  "version": 1
13553
13677
  }
13554
13678
  },
13679
+ "StepperItem": {
13680
+ "title": "StepperItem",
13681
+ "description": "Child of `<stepper-ui>`. One stage in a multi-step flow with status (idle | active | completed | error) + optional icon + description.",
13682
+ "type": "object",
13683
+ "allOf": [
13684
+ {
13685
+ "$ref": "#/$defs/ComponentCommon"
13686
+ },
13687
+ {
13688
+ "$ref": "#/$defs/CatalogComponentCommon"
13689
+ }
13690
+ ],
13691
+ "properties": {
13692
+ "description": {
13693
+ "description": "Secondary description line under the label.",
13694
+ "type": "string",
13695
+ "default": ""
13696
+ },
13697
+ "component": {
13698
+ "const": "StepperItem"
13699
+ },
13700
+ "icon": {
13701
+ "description": "Optional leading Phosphor icon name; overrides the auto-stamped numeric badge.",
13702
+ "type": "string",
13703
+ "default": ""
13704
+ },
13705
+ "status": {
13706
+ "description": "Canonical stage-progress state. Mutually exclusive (prevents the\n`active && completed` footgun the prior multi-Boolean shape allowed).",
13707
+ "type": "string",
13708
+ "enum": [
13709
+ "idle",
13710
+ "active",
13711
+ "completed",
13712
+ "error"
13713
+ ],
13714
+ "default": "idle"
13715
+ },
13716
+ "text": {
13717
+ "description": "Stage label.",
13718
+ "type": "string",
13719
+ "default": ""
13720
+ }
13721
+ },
13722
+ "required": [
13723
+ "component"
13724
+ ],
13725
+ "unevaluatedProperties": false,
13726
+ "x-adiaui": {
13727
+ "anti_patterns": [],
13728
+ "category": "navigation",
13729
+ "composes": [],
13730
+ "events": {},
13731
+ "examples": [],
13732
+ "keywords": [],
13733
+ "name": "UIStepperItem",
13734
+ "related": [],
13735
+ "slots": {
13736
+ "description": {
13737
+ "description": "Custom description content; falls through to `[description]` prop if not slotted."
13738
+ },
13739
+ "label": {
13740
+ "description": "Custom label content; falls through to `[text]` prop if not slotted."
13741
+ }
13742
+ },
13743
+ "states": [],
13744
+ "synonyms": {},
13745
+ "tag": "stepper-item-ui",
13746
+ "tokens": {},
13747
+ "traits": [],
13748
+ "version": 1
13749
+ }
13750
+ },
13555
13751
  "StepProgress": {
13556
13752
  "title": "StepProgress",
13557
13753
  "description": "Discrete-dash step-progress indicator. One <span> dash per step in\n[total]; the first [value] dashes are filled with --a-accent. Used\nin multi-step flows (registration, onboarding, wizards). Replaces\nthe bespoke `[data-onb-progress]` + `[data-reg-progress]` markup\nthat lived in onboarding.css + registration.css with a single\nprimitive.\n",
@@ -15561,6 +15757,11 @@
15561
15757
  "description": "Number of visible text rows (sets min-height).",
15562
15758
  "type": "number",
15563
15759
  "default": 3
15760
+ },
15761
+ "throttle": {
15762
+ "description": "§220 (v0.5.9, FEEDBACK-14 §3). Trailing-debounce on the `input`\nevent in milliseconds. When > 0, value mutates immediately + the UI\nstays responsive, but `input` dispatch is collapsed so only the\nfinal value in the throttle window emits. Useful for expensive\n`input`-driven computation (autosave preview, server-side\nautocomplete, large-doc reflow). `change` fires unthrottled on blur\n/ Enter; any pending `input` flushes before `change` so consumers\nsee input→input→…→input→change ordering. Default 0 preserves\nsynchronous emission.",
15763
+ "type": "number",
15764
+ "default": 0
15564
15765
  }
15565
15766
  },
15566
15767
  "required": [
@@ -16256,6 +16457,65 @@
16256
16457
  "version": 1
16257
16458
  }
16258
16459
  },
16460
+ "ToggleOption": {
16461
+ "title": "ToggleOption",
16462
+ "description": "Child of `<toggle-group-ui>`. One toggleable option inside a single-select or multi-select group. Pressed state mirrors `value` against the parent's selection.",
16463
+ "type": "object",
16464
+ "allOf": [
16465
+ {
16466
+ "$ref": "#/$defs/ComponentCommon"
16467
+ },
16468
+ {
16469
+ "$ref": "#/$defs/CatalogComponentCommon"
16470
+ }
16471
+ ],
16472
+ "properties": {
16473
+ "component": {
16474
+ "const": "ToggleOption"
16475
+ },
16476
+ "disabled": {
16477
+ "description": "Disabled state — blocks pointer + keyboard activation.",
16478
+ "type": "boolean",
16479
+ "default": false
16480
+ },
16481
+ "icon": {
16482
+ "description": "Optional Phosphor icon name; renders as a leading icon.",
16483
+ "type": "string",
16484
+ "default": ""
16485
+ },
16486
+ "text": {
16487
+ "description": "Visible label text.",
16488
+ "type": "string",
16489
+ "default": ""
16490
+ },
16491
+ "value": {
16492
+ "description": "Stable identifier matched against the parent group's `value`.",
16493
+ "type": "string",
16494
+ "default": ""
16495
+ }
16496
+ },
16497
+ "required": [
16498
+ "component"
16499
+ ],
16500
+ "unevaluatedProperties": false,
16501
+ "x-adiaui": {
16502
+ "anti_patterns": [],
16503
+ "category": "forms",
16504
+ "composes": [],
16505
+ "events": {},
16506
+ "examples": [],
16507
+ "keywords": [],
16508
+ "name": "UIToggleOption",
16509
+ "related": [],
16510
+ "slots": {},
16511
+ "states": [],
16512
+ "synonyms": {},
16513
+ "tag": "toggle-option-ui",
16514
+ "tokens": {},
16515
+ "traits": [],
16516
+ "version": 1
16517
+ }
16518
+ },
16259
16519
  "ToggleScheme": {
16260
16520
  "title": "ToggleScheme",
16261
16521
  "description": "Icon-button primitive that toggles `color-scheme` between light and dark on a target element (default `:root`). Encapsulates the prefers-color-scheme initial-resolution, the inline-style write to the target, optional localStorage persistence (sharing the `adia-theme-` namespace with <theme-panel>), and the moon/sun icon swap. Replaces the hand-wired `<button-ui id=\"theme-toggle\">` + `applyScheme()` pattern previously duplicated across apps/genui, apps/construct-canvas, playgrounds/chat.",
@@ -16573,6 +16833,45 @@
16573
16833
  "version": 1
16574
16834
  }
16575
16835
  },
16836
+ "ToolbarGroup": {
16837
+ "title": "ToolbarGroup",
16838
+ "description": "Visual cluster of related actions inside a `<toolbar-ui>`. Provides role=\"group\" for assistive-tech grouping; no own visual chrome beyond a margin-collapsing gap with sibling groups.",
16839
+ "type": "object",
16840
+ "allOf": [
16841
+ {
16842
+ "$ref": "#/$defs/ComponentCommon"
16843
+ },
16844
+ {
16845
+ "$ref": "#/$defs/CatalogComponentCommon"
16846
+ }
16847
+ ],
16848
+ "properties": {
16849
+ "component": {
16850
+ "const": "ToolbarGroup"
16851
+ }
16852
+ },
16853
+ "required": [
16854
+ "component"
16855
+ ],
16856
+ "unevaluatedProperties": false,
16857
+ "x-adiaui": {
16858
+ "anti_patterns": [],
16859
+ "category": "navigation",
16860
+ "composes": [],
16861
+ "events": {},
16862
+ "examples": [],
16863
+ "keywords": [],
16864
+ "name": "UIToolbarGroup",
16865
+ "related": [],
16866
+ "slots": {},
16867
+ "states": [],
16868
+ "synonyms": {},
16869
+ "tag": "toolbar-group-ui",
16870
+ "tokens": {},
16871
+ "traits": [],
16872
+ "version": 1
16873
+ }
16874
+ },
16576
16875
  "Tooltip": {
16577
16876
  "title": "Tooltip",
16578
16877
  "description": "Tooltip popup. Two modes — default `follows=\"trigger\"` shows on hover/focus anchored to wrapped children; `follows=\"pointer\"` subscribes to chart-hover events from [for] and renders a data-viz card that tracks the pointer.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adia-ai/a2ui-corpus",
3
- "version": "0.5.8",
3
+ "version": "0.5.10",
4
4
  "type": "module",
5
5
  "description": "AdiaUI A2UI training corpus — canonical v0.9 catalog + chunks + eval fixtures + feedback + gap registry. Consumed by the compose engine's retrieval layer + the MCP pipeline.",
6
6
  "exports": {