@aceshooting/lyra-ui 19.0.0 → 20.0.0

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 (419) hide show
  1. package/CHANGELOG.md +163 -0
  2. package/custom-elements.json +1 -1
  3. package/dist/cli/migration-contract.json +1 -1
  4. package/dist/components/agent-tools/activity-feed/activity-feed.class.d.ts +14 -4
  5. package/dist/components/agent-tools/activity-feed/activity-feed.styles.js +1 -1
  6. package/dist/components/agent-tools/approval-queue/approval-queue.class.d.ts +1 -0
  7. package/dist/components/agent-tools/approval-queue/approval-queue.class.js +4 -3
  8. package/dist/components/agent-tools/approval-queue/approval-queue.styles.js +1 -1
  9. package/dist/components/agent-tools/artifact-panel/artifact-panel.class.d.ts +3 -1
  10. package/dist/components/agent-tools/context-inspector/context-inspector.class.d.ts +1 -0
  11. package/dist/components/agent-tools/context-inspector/context-inspector.class.js +4 -3
  12. package/dist/components/agent-tools/context-inspector/context-inspector.styles.js +1 -1
  13. package/dist/components/agent-tools/eval-dataset/eval-dataset.class.js +1 -1
  14. package/dist/components/agent-tools/eval-result/eval-result.class.js +1 -1
  15. package/dist/components/agent-tools/evaluation-run/evaluation-run.class.d.ts +1 -0
  16. package/dist/components/agent-tools/evaluation-run/evaluation-run.class.js +4 -3
  17. package/dist/components/agent-tools/evaluation-run/evaluation-run.styles.js +1 -1
  18. package/dist/components/agent-tools/policy-summary/policy-summary.class.d.ts +1 -0
  19. package/dist/components/agent-tools/policy-summary/policy-summary.class.js +4 -3
  20. package/dist/components/agent-tools/policy-summary/policy-summary.styles.js +1 -1
  21. package/dist/components/agent-tools/prompt-studio/prompt-studio.class.js +1 -1
  22. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.d.ts +10 -1
  23. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.js +3 -3
  24. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js +1 -1
  25. package/dist/components/agent-tools/thinking-panel/thinking-panel.class.d.ts +6 -3
  26. package/dist/components/agent-tools/thinking-panel/thinking-panel.styles.js +1 -1
  27. package/dist/components/agent-tools/tool-call-chip/tool-call-chip.class.d.ts +14 -3
  28. package/dist/components/agent-tools/tool-call-chip/tool-call-chip.class.js +2 -2
  29. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.d.ts +12 -2
  30. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js +3 -1
  31. package/dist/components/charts/chart/box-plot.class.d.ts +15 -3
  32. package/dist/components/charts/chart/box-plot.class.js +3 -3
  33. package/dist/components/charts/chart/box-plot.styles.js +1 -1
  34. package/dist/components/charts/chart/chart.class.d.ts +24 -6
  35. package/dist/components/charts/chart/chart.class.js +3 -3
  36. package/dist/components/charts/chart/chart.styles.js +1 -1
  37. package/dist/components/charts/chart/lite-chart.class.js +1 -1
  38. package/dist/components/charts/chart/lite-chart.styles.js +1 -1
  39. package/dist/components/conversation/audio-visualizer/audio-visualizer.class.d.ts +4 -2
  40. package/dist/components/conversation/audio-visualizer/audio-visualizer.class.js +1 -1
  41. package/dist/components/conversation/branch-picker/branch-picker.class.d.ts +4 -2
  42. package/dist/components/conversation/branch-picker/branch-picker.class.js +1 -1
  43. package/dist/components/conversation/chat-viewport/chat-viewport.class.d.ts +4 -3
  44. package/dist/components/conversation/chat-viewport/chat-viewport.class.js +1 -1
  45. package/dist/components/conversation/code-block/code-block-core.class.d.ts +6 -11
  46. package/dist/components/conversation/code-block/code-block-core.class.js +1 -1
  47. package/dist/components/conversation/code-block/code-block-shared.d.ts +29 -1
  48. package/dist/components/conversation/code-block/code-block-shared.js +1 -1
  49. package/dist/components/conversation/code-block/code-block.class.d.ts +6 -11
  50. package/dist/components/conversation/code-block/code-block.class.js +1 -1
  51. package/dist/components/conversation/markdown/markdown-shared.js +2 -2
  52. package/dist/components/conversation/message-actions/message-actions.class.d.ts +4 -2
  53. package/dist/components/conversation/message-actions/message-actions.class.js +2 -2
  54. package/dist/components/conversation/message-parts/message-parts.class.d.ts +17 -2
  55. package/dist/components/conversation/model-select/model-select.class.js +1 -0
  56. package/dist/components/conversation/model-select/model-select.styles.js +1 -1
  57. package/dist/components/conversation/prompt-input/prompt-input.class.d.ts +5 -1
  58. package/dist/components/conversation/prompt-input/prompt-input.class.js +2 -2
  59. package/dist/components/conversation/prompt-queue/prompt-queue.class.d.ts +6 -1
  60. package/dist/components/conversation/prompt-queue/prompt-queue.class.js +2 -2
  61. package/dist/components/conversation/realtime-session/realtime-session.class.d.ts +5 -1
  62. package/dist/components/conversation/realtime-session/realtime-session.class.js +1 -1
  63. package/dist/components/conversation/selection-toolbar/selection-toolbar.class.d.ts +5 -1
  64. package/dist/components/conversation/selection-toolbar/selection-toolbar.class.js +1 -1
  65. package/dist/components/conversation/voice-picker/voice-picker.class.d.ts +13 -2
  66. package/dist/components/conversation/voice-picker/voice-picker.class.js +5 -3
  67. package/dist/components/conversation/voice-picker/voice-picker.styles.js +1 -1
  68. package/dist/components/data/calendar/calendar.class.d.ts +9 -0
  69. package/dist/components/data/calendar/calendar.class.js +2 -2
  70. package/dist/components/data/calendar/calendar.styles.js +1 -1
  71. package/dist/components/data/condition-builder/condition-builder.class.d.ts +5 -1
  72. package/dist/components/data/context-meter/context-meter.class.d.ts +4 -0
  73. package/dist/components/data/context-meter/context-meter.styles.js +1 -1
  74. package/dist/components/data/data-grid/data-grid.class.d.ts +8 -2
  75. package/dist/components/data/data-grid/data-grid.class.js +1 -2
  76. package/dist/components/data/flow-node/flow-node.class.d.ts +7 -4
  77. package/dist/components/data/flow-node/flow-node.styles.js +1 -1
  78. package/dist/components/data/funnel/funnel.class.d.ts +5 -0
  79. package/dist/components/data/funnel/funnel.class.js +4 -3
  80. package/dist/components/data/funnel/funnel.styles.js +1 -1
  81. package/dist/components/data/gauge/gauge.class.d.ts +12 -1
  82. package/dist/components/data/gauge/gauge.styles.js +1 -1
  83. package/dist/components/data/graph-query-builder/graph-query-builder.class.d.ts +50 -13
  84. package/dist/components/data/graph-query-builder/graph-query-builder.class.js +2 -2
  85. package/dist/components/data/graph-query-builder/graph-query-builder.styles.js +1 -1
  86. package/dist/components/data/heatmap/heatmap.class.d.ts +27 -9
  87. package/dist/components/data/heatmap/heatmap.class.js +5 -3
  88. package/dist/components/data/sequence-strip/sequence-strip.class.d.ts +2 -0
  89. package/dist/components/data/sequence-strip/sequence-strip.styles.js +1 -1
  90. package/dist/components/data/table/table.class.d.ts +10 -1
  91. package/dist/components/data/table/table.class.js +3 -2
  92. package/dist/components/data/tree/tree.class.d.ts +20 -1
  93. package/dist/components/data/tree/tree.class.js +1 -1
  94. package/dist/components/data/word-cloud/word-cloud.class.d.ts +4 -1
  95. package/dist/components/data/word-cloud/word-cloud.class.js +2 -2
  96. package/dist/components/forms/button/button.class.js +1 -1
  97. package/dist/components/forms/checkbox/checkbox.class.d.ts +11 -8
  98. package/dist/components/forms/checkbox/checkbox.class.js +1 -1
  99. package/dist/components/forms/checkbox/checkbox.styles.js +1 -1
  100. package/dist/components/forms/checkbox-group/checkbox-group.class.d.ts +2 -2
  101. package/dist/components/forms/checkbox-group/checkbox-group.class.js +1 -1
  102. package/dist/components/forms/code-editor/code-editor.class.d.ts +2 -0
  103. package/dist/components/forms/code-editor/code-editor.class.js +1 -1
  104. package/dist/components/forms/code-editor/code-editor.styles.js +1 -1
  105. package/dist/components/forms/color-picker/color-picker.class.d.ts +11 -1
  106. package/dist/components/forms/color-picker/color-picker.class.js +4 -3
  107. package/dist/components/forms/combobox/combobox.class.d.ts +69 -20
  108. package/dist/components/forms/combobox/combobox.class.js +8 -6
  109. package/dist/components/forms/combobox/combobox.styles.js +1 -1
  110. package/dist/components/forms/date-picker/date-input.class.d.ts +22 -2
  111. package/dist/components/forms/date-picker/date-input.class.js +4 -2
  112. package/dist/components/forms/date-picker/date-input.styles.js +1 -1
  113. package/dist/components/forms/emoji-picker/emoji-data-loader.d.ts +18 -4
  114. package/dist/components/forms/emoji-picker/emoji-data-loader.js +1 -1
  115. package/dist/components/forms/emoji-picker/emoji-picker.class.d.ts +18 -4
  116. package/dist/components/forms/emoji-picker/emoji-picker.class.js +1 -1
  117. package/dist/components/forms/emoji-picker/emoji-picker.styles.js +1 -1
  118. package/dist/components/forms/icon-button/icon-button.class.d.ts +1 -1
  119. package/dist/components/forms/input/time-input.class.d.ts +11 -1
  120. package/dist/components/forms/input/time-input.class.js +4 -3
  121. package/dist/components/forms/input/time-input.styles.js +1 -1
  122. package/dist/components/forms/locale-picker/locale-picker.class.d.ts +17 -3
  123. package/dist/components/forms/locale-picker/locale-picker.class.js +3 -2
  124. package/dist/components/forms/locale-picker/locale-picker.styles.js +1 -1
  125. package/dist/components/forms/otp-input/otp-input.class.d.ts +13 -5
  126. package/dist/components/forms/otp-input/otp-input.class.js +2 -2
  127. package/dist/components/forms/otp-input/otp-input.styles.js +1 -1
  128. package/dist/components/forms/phone-input/phone-input.class.d.ts +10 -3
  129. package/dist/components/forms/phone-input/phone-input.class.js +6 -2
  130. package/dist/components/forms/phone-input/phone-input.styles.js +1 -1
  131. package/dist/components/forms/radio/radio-group.class.d.ts +1 -1
  132. package/dist/components/forms/radio/radio-group.class.js +2 -2
  133. package/dist/components/forms/rubric-form/rubric-form.class.d.ts +9 -1
  134. package/dist/components/forms/rubric-form/rubric-form.class.js +5 -3
  135. package/dist/components/forms/select/select.class.d.ts +6 -2
  136. package/dist/components/forms/select/select.class.js +4 -2
  137. package/dist/components/forms/select/select.styles.js +1 -1
  138. package/dist/components/forms/slider/slider.class.d.ts +5 -1
  139. package/dist/components/forms/slider/slider.class.js +3 -3
  140. package/dist/components/forms/switch/switch.class.d.ts +6 -5
  141. package/dist/components/forms/switch/switch.class.js +1 -1
  142. package/dist/components/forms/time-range/time-range.class.d.ts +2 -2
  143. package/dist/components/forms/token-input/token-input.class.d.ts +13 -3
  144. package/dist/components/forms/token-input/token-input.class.js +3 -1
  145. package/dist/components/layout/carousel/carousel.class.d.ts +4 -1
  146. package/dist/components/layout/carousel/carousel.class.js +1 -1
  147. package/dist/components/layout/command-palette/command-palette.class.d.ts +8 -2
  148. package/dist/components/layout/command-palette/command-palette.class.js +1 -1
  149. package/dist/components/layout/command-palette/command-palette.styles.js +1 -1
  150. package/dist/components/layout/details/accordion.class.js +1 -1
  151. package/dist/components/layout/dock-panel/dock-panel.class.d.ts +10 -7
  152. package/dist/components/layout/dock-panel/dock-panel.class.js +2 -2
  153. package/dist/components/layout/dock-panel/dock-panel.styles.js +1 -1
  154. package/dist/components/layout/menu/menu.class.d.ts +13 -3
  155. package/dist/components/layout/menu/menu.class.js +4 -3
  156. package/dist/components/layout/menu/menu.styles.js +1 -1
  157. package/dist/components/layout/page/page.class.d.ts +7 -1
  158. package/dist/components/layout/reorder-list/reorder-list.class.d.ts +1 -1
  159. package/dist/components/layout/reorder-list/reorder-list.class.js +1 -1
  160. package/dist/components/layout/segmented/segmented.class.d.ts +2 -0
  161. package/dist/components/layout/segmented/segmented.styles.js +1 -1
  162. package/dist/components/layout/virtual-list/virtual-list.styles.js +1 -1
  163. package/dist/components/layout/widget/widget.class.d.ts +15 -2
  164. package/dist/components/layout/widget/widget.class.js +1 -1
  165. package/dist/components/layout/widget/widget.styles.js +1 -1
  166. package/dist/components/media/avatar/avatar.class.d.ts +4 -0
  167. package/dist/components/media/avatar/avatar.styles.js +1 -1
  168. package/dist/components/media/avatar-group/avatar-group.class.d.ts +8 -1
  169. package/dist/components/media/avatar-group/avatar-group.styles.js +1 -1
  170. package/dist/components/media/drop-zone/drop-zone.class.d.ts +10 -4
  171. package/dist/components/media/drop-zone/drop-zone.class.js +2 -2
  172. package/dist/components/media/drop-zone/drop-zone.styles.js +1 -1
  173. package/dist/components/media/flag/flag.class.js +1 -1
  174. package/dist/components/media/map/map.class.d.ts +19 -5
  175. package/dist/components/media/map/map.class.js +3 -3
  176. package/dist/components/media/video-playlist/video-playlist.class.d.ts +6 -3
  177. package/dist/components/media/video-playlist/video-playlist.class.js +1 -1
  178. package/dist/components/overlays/callout/callout.class.d.ts +4 -1
  179. package/dist/components/overlays/dialog/dialog.class.d.ts +4 -1
  180. package/dist/components/overlays/overlay/overlay.styles.js +1 -1
  181. package/dist/components/overlays/overlay/popover.class.d.ts +9 -1
  182. package/dist/components/overlays/overlay/popover.class.js +3 -2
  183. package/dist/components/overlays/overlay/tooltip.class.d.ts +14 -4
  184. package/dist/components/overlays/overlay/tooltip.class.js +3 -2
  185. package/dist/components/overlays/popup/popup.class.d.ts +15 -1
  186. package/dist/components/overlays/popup/popup.class.js +3 -3
  187. package/dist/components/overlays/popup/popup.styles.js +1 -1
  188. package/dist/components/overlays/progress/progress-bar.class.d.ts +2 -0
  189. package/dist/components/overlays/progress/progress.styles.js +1 -1
  190. package/dist/components/retrieval/citation-badge/citation-badge.class.d.ts +4 -2
  191. package/dist/components/retrieval/citation-badge/citation-badge.class.js +1 -1
  192. package/dist/components/retrieval/claim-evidence/claim-evidence.class.d.ts +4 -0
  193. package/dist/components/retrieval/claim-evidence/claim-evidence.class.js +4 -3
  194. package/dist/components/retrieval/claim-evidence/claim-evidence.styles.js +1 -1
  195. package/dist/components/retrieval/community-card/community-card.class.d.ts +6 -1
  196. package/dist/components/retrieval/community-card/community-card.styles.js +1 -1
  197. package/dist/components/retrieval/embedding-explorer/embedding-explorer.class.d.ts +9 -1
  198. package/dist/components/retrieval/embedding-explorer/embedding-explorer.class.js +4 -3
  199. package/dist/components/retrieval/entity-card/entity-card.styles.js +1 -1
  200. package/dist/components/retrieval/entity-chip/entity-chip.class.d.ts +4 -2
  201. package/dist/components/retrieval/entity-chip/entity-chip.class.js +1 -1
  202. package/dist/components/retrieval/entity-dossier/entity-dossier.class.js +2 -2
  203. package/dist/components/retrieval/graph-legend/graph-legend.class.d.ts +18 -4
  204. package/dist/components/retrieval/graph-legend/graph-legend.class.js +2 -2
  205. package/dist/components/retrieval/grounding-summary/grounding-summary.class.d.ts +7 -0
  206. package/dist/components/retrieval/grounding-summary/grounding-summary.class.js +4 -3
  207. package/dist/components/retrieval/grounding-summary/grounding-summary.styles.js +1 -1
  208. package/dist/components/retrieval/memory-panel/memory-panel.class.d.ts +6 -0
  209. package/dist/components/retrieval/memory-panel/memory-panel.class.js +4 -3
  210. package/dist/components/retrieval/memory-panel/memory-panel.styles.js +1 -1
  211. package/dist/components/retrieval/mind-map/mind-map-layout.d.ts +17 -1
  212. package/dist/components/retrieval/mind-map/mind-map-layout.js +1 -1
  213. package/dist/components/retrieval/mind-map/mind-map.class.d.ts +8 -1
  214. package/dist/components/retrieval/mind-map/mind-map.class.js +3 -2
  215. package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.class.d.ts +5 -0
  216. package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.class.js +6 -5
  217. package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.styles.js +1 -1
  218. package/dist/components/retrieval/retrieval-compare/retrieval-compare.class.js +5 -5
  219. package/dist/components/retrieval/retrieval-compare/retrieval-compare.styles.js +1 -1
  220. package/dist/components/retrieval/source-list/source-list.class.d.ts +21 -2
  221. package/dist/components/retrieval/source-list/source-list.class.js +2 -2
  222. package/dist/components/retrieval/source-list/source-list.styles.js +1 -1
  223. package/dist/components/retrieval/source-picker/source-picker.class.d.ts +3 -1
  224. package/dist/components/retrieval/source-picker/source-picker.class.js +2 -2
  225. package/dist/components/utility/diff-view/diff-view.class.d.ts +105 -8
  226. package/dist/components/utility/diff-view/diff-view.class.js +21 -5
  227. package/dist/components/utility/diff-view/diff-view.styles.js +1 -1
  228. package/dist/components/utility/export-button/export-button.class.d.ts +26 -2
  229. package/dist/components/utility/export-button/export-button.class.js +4 -2
  230. package/dist/components/utility/export-button/export-button.styles.js +1 -1
  231. package/dist/components/utility/mention-popover/mention-popover.class.d.ts +19 -1
  232. package/dist/components/utility/mention-popover/mention-popover.class.js +3 -2
  233. package/dist/components/utility/mention-popover/mention-popover.styles.js +1 -1
  234. package/dist/components/utility/tour/tour.class.d.ts +1 -3
  235. package/dist/components/utility/tour/tour.class.js +1 -1
  236. package/dist/components/viewers/archive-viewer/archive-viewer.class.d.ts +20 -3
  237. package/dist/components/viewers/archive-viewer/archive-viewer.class.js +1 -1
  238. package/dist/components/viewers/ebook-viewer/ebook-viewer.class.js +1 -1
  239. package/dist/components/viewers/geojson-view/geojson-view.styles.js +1 -1
  240. package/dist/components/viewers/geojson-view/geojson-viewer.class.d.ts +5 -0
  241. package/dist/components/viewers/geojson-view/geojson-viewer.class.js +6 -3
  242. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.d.ts +7 -1
  243. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.js +1 -1
  244. package/dist/components/viewers/pptx-viewer/pptx-viewer.class.d.ts +7 -1
  245. package/dist/components/viewers/pptx-viewer/pptx-viewer.class.js +1 -1
  246. package/dist/components/viewers/xml-viewer/xml-viewer.class.d.ts +5 -0
  247. package/dist/components/viewers/xml-viewer/xml-viewer.class.js +1 -1
  248. package/dist/custom-elements-jsx.d.ts +1 -1
  249. package/dist/events.d.ts +79 -30
  250. package/dist/internal/accessibility-visibility.js +1 -1
  251. package/dist/internal/aria-reflection.js +1 -1
  252. package/dist/internal/catalog-picker.d.ts +14 -3
  253. package/dist/internal/catalog-picker.js +1 -1
  254. package/dist/internal/default-strings.generated.d.ts +1 -1
  255. package/dist/internal/default-strings.generated.js +2 -2
  256. package/dist/internal/localization-types.d.ts +1 -1
  257. package/dist/internal/localization.js +2 -2
  258. package/dist/internal/lyra-element.d.ts +17 -0
  259. package/dist/internal/lyra-element.js +2 -2
  260. package/dist/internal/package-metadata.d.ts +1 -1
  261. package/dist/internal/package-metadata.js +1 -1
  262. package/dist/svelte.d.ts +1 -1
  263. package/dist/testing/lyra-tag-event-map.js +1 -1
  264. package/dist/translations/ar/agent-tools.js +1 -1
  265. package/dist/translations/ar/data.js +1 -1
  266. package/dist/translations/ar/retrieval.js +1 -1
  267. package/dist/translations/ar/shared.js +1 -1
  268. package/dist/translations/ar/viewers.js +1 -1
  269. package/dist/translations/de/agent-tools.js +1 -1
  270. package/dist/translations/de/data.js +1 -1
  271. package/dist/translations/de/retrieval.js +1 -1
  272. package/dist/translations/de/shared.js +1 -1
  273. package/dist/translations/de/viewers.js +1 -1
  274. package/dist/translations/es/agent-tools.js +1 -1
  275. package/dist/translations/es/data.js +1 -1
  276. package/dist/translations/es/retrieval.js +1 -1
  277. package/dist/translations/es/shared.js +1 -1
  278. package/dist/translations/es/viewers.js +1 -1
  279. package/dist/translations/fa/agent-tools.js +1 -1
  280. package/dist/translations/fa/data.js +1 -1
  281. package/dist/translations/fa/retrieval.js +1 -1
  282. package/dist/translations/fa/shared.js +1 -1
  283. package/dist/translations/fa/viewers.js +1 -1
  284. package/dist/translations/fr/agent-tools.js +1 -1
  285. package/dist/translations/fr/data.js +1 -1
  286. package/dist/translations/fr/retrieval.js +1 -1
  287. package/dist/translations/fr/shared.js +1 -1
  288. package/dist/translations/fr/viewers.js +1 -1
  289. package/dist/translations/he/agent-tools.js +1 -1
  290. package/dist/translations/he/data.js +1 -1
  291. package/dist/translations/he/retrieval.js +1 -1
  292. package/dist/translations/he/shared.js +1 -1
  293. package/dist/translations/he/viewers.js +1 -1
  294. package/dist/translations/it/agent-tools.js +1 -1
  295. package/dist/translations/it/data.js +1 -1
  296. package/dist/translations/it/retrieval.js +1 -1
  297. package/dist/translations/it/shared.js +1 -1
  298. package/dist/translations/it/viewers.js +1 -1
  299. package/dist/translations/ja/agent-tools.js +1 -1
  300. package/dist/translations/ja/data.js +1 -1
  301. package/dist/translations/ja/retrieval.js +1 -1
  302. package/dist/translations/ja/shared.js +1 -1
  303. package/dist/translations/ja/viewers.js +1 -1
  304. package/dist/translations/pt-BR/agent-tools.js +1 -1
  305. package/dist/translations/pt-BR/data.js +1 -1
  306. package/dist/translations/pt-BR/retrieval.js +1 -1
  307. package/dist/translations/pt-BR/shared.js +1 -1
  308. package/dist/translations/pt-BR/viewers.js +1 -1
  309. package/dist/translations/ro/agent-tools.js +1 -1
  310. package/dist/translations/ro/data.js +1 -1
  311. package/dist/translations/ro/retrieval.js +1 -1
  312. package/dist/translations/ro/shared.js +1 -1
  313. package/dist/translations/ro/viewers.js +1 -1
  314. package/dist/translations/ru/agent-tools.js +1 -1
  315. package/dist/translations/ru/data.js +1 -1
  316. package/dist/translations/ru/retrieval.js +1 -1
  317. package/dist/translations/ru/shared.js +1 -1
  318. package/dist/translations/ru/viewers.js +1 -1
  319. package/dist/translations/zh-CN/agent-tools.js +1 -1
  320. package/dist/translations/zh-CN/data.js +1 -1
  321. package/dist/translations/zh-CN/retrieval.js +1 -1
  322. package/dist/translations/zh-CN/shared.js +1 -1
  323. package/dist/translations/zh-CN/viewers.js +1 -1
  324. package/dist/vue.d.ts +1 -1
  325. package/llms/components/lr-activity-feed.md +20 -9
  326. package/llms/components/lr-approval-queue.md +3 -2
  327. package/llms/components/lr-archive-viewer.md +8 -1
  328. package/llms/components/lr-artifact-panel.md +3 -1
  329. package/llms/components/lr-audio-visualizer.md +3 -1
  330. package/llms/components/lr-avatar-group.md +13 -6
  331. package/llms/components/lr-avatar.md +6 -2
  332. package/llms/components/lr-bar-chart.md +6 -3
  333. package/llms/components/lr-box-plot.md +6 -2
  334. package/llms/components/lr-branch-picker.md +3 -1
  335. package/llms/components/lr-bubble-chart.md +6 -3
  336. package/llms/components/lr-calendar.md +10 -3
  337. package/llms/components/lr-carousel.md +4 -2
  338. package/llms/components/lr-chart.md +12 -4
  339. package/llms/components/lr-chat-viewport.md +3 -2
  340. package/llms/components/lr-checkbox.md +8 -5
  341. package/llms/components/lr-citation-badge.md +2 -0
  342. package/llms/components/lr-claim-evidence.md +6 -2
  343. package/llms/components/lr-code-editor.md +3 -1
  344. package/llms/components/lr-color-picker.md +20 -8
  345. package/llms/components/lr-combobox.md +26 -3
  346. package/llms/components/lr-command-palette.md +6 -3
  347. package/llms/components/lr-community-card.md +7 -4
  348. package/llms/components/lr-context-inspector.md +3 -2
  349. package/llms/components/lr-context-meter.md +13 -5
  350. package/llms/components/lr-data-grid.md +2 -0
  351. package/llms/components/lr-date-input.md +12 -3
  352. package/llms/components/lr-date-picker.md +11 -2
  353. package/llms/components/lr-diff-view.md +46 -5
  354. package/llms/components/lr-doughnut-chart.md +6 -3
  355. package/llms/components/lr-drop-zone.md +7 -3
  356. package/llms/components/lr-embedding-explorer.md +8 -2
  357. package/llms/components/lr-emoji-picker.md +5 -1
  358. package/llms/components/lr-entity-chip.md +2 -0
  359. package/llms/components/lr-eval-run.md +3 -2
  360. package/llms/components/lr-export-button.md +5 -2
  361. package/llms/components/lr-flow-node.md +7 -4
  362. package/llms/components/lr-funnel.md +7 -2
  363. package/llms/components/lr-gauge.md +7 -2
  364. package/llms/components/lr-geojson-view.md +10 -2
  365. package/llms/components/lr-geojson-viewer.md +10 -2
  366. package/llms/components/lr-graph-legend.md +6 -3
  367. package/llms/components/lr-graph-query-builder.md +21 -11
  368. package/llms/components/lr-grounding-summary.md +8 -2
  369. package/llms/components/lr-heatmap.md +5 -2
  370. package/llms/components/lr-histogram.md +4 -2
  371. package/llms/components/lr-json-schema-viewer.md +7 -5
  372. package/llms/components/lr-line-chart.md +6 -3
  373. package/llms/components/lr-locale-picker.md +4 -1
  374. package/llms/components/lr-map.md +5 -3
  375. package/llms/components/lr-memory-panel.md +6 -2
  376. package/llms/components/lr-mention-popover.md +7 -4
  377. package/llms/components/lr-message-actions.md +3 -1
  378. package/llms/components/lr-message-parts.md +8 -2
  379. package/llms/components/lr-mind-map.md +11 -2
  380. package/llms/components/lr-option.md +25 -2
  381. package/llms/components/lr-otp-input.md +3 -1
  382. package/llms/components/lr-phone-input.md +9 -5
  383. package/llms/components/lr-pie-chart.md +6 -3
  384. package/llms/components/lr-polar-area-chart.md +6 -3
  385. package/llms/components/lr-policy-summary.md +3 -2
  386. package/llms/components/lr-progress-bar.md +4 -1
  387. package/llms/components/lr-prompt-input.md +4 -1
  388. package/llms/components/lr-prompt-queue.md +5 -2
  389. package/llms/components/lr-radar-chart.md +6 -3
  390. package/llms/components/lr-rag-eval-dashboard.md +7 -2
  391. package/llms/components/lr-realtime-session.md +3 -1
  392. package/llms/components/lr-rubric-form.md +6 -1
  393. package/llms/components/lr-scatter-chart.md +6 -3
  394. package/llms/components/lr-segmented.md +3 -1
  395. package/llms/components/lr-select.md +7 -1
  396. package/llms/components/lr-selection-toolbar.md +4 -1
  397. package/llms/components/lr-sequence-strip.md +7 -3
  398. package/llms/components/lr-source-card.md +16 -1
  399. package/llms/components/lr-source-list.md +17 -2
  400. package/llms/components/lr-source-picker.md +3 -1
  401. package/llms/components/lr-subagent-panel.md +6 -3
  402. package/llms/components/lr-switch.md +4 -3
  403. package/llms/components/lr-table.md +6 -1
  404. package/llms/components/lr-thinking-panel.md +8 -5
  405. package/llms/components/lr-token-input.md +15 -1
  406. package/llms/components/lr-tool-call-chip.md +2 -0
  407. package/llms/components/lr-tool-param-form.md +15 -4
  408. package/llms/components/lr-tooltip.md +8 -4
  409. package/llms/components/lr-trace-tree.md +7 -4
  410. package/llms/components/lr-video-playlist.md +7 -5
  411. package/llms/components/lr-voice-picker.md +7 -4
  412. package/llms/components/lr-widget.md +15 -2
  413. package/llms/migration.md +4 -4
  414. package/llms-full.txt +552 -159
  415. package/package.json +10 -8
  416. package/registrations.json +1 -1
  417. package/vscode-css-data.json +1 -1
  418. package/vscode-html-data.json +1 -1
  419. package/web-types.json +1 -1
@@ -43,7 +43,10 @@ discriminated union is `ScoreRubricKey | CategoryRubricKey | CommentRubricKey`.
43
43
  first-wins identity and retained valid spelling is not rewritten. Shared fields are
44
44
  `key`, `label?`, `description?`, and `required?`; only scores expose `min?`/`max?`/`step?`, only
45
45
  categories expose readonly `RubricKeyOption[]` plus `multiple?`, and only comments expose
46
- `placeholder?`. Runtime schema normalization retains the first occurrence of each nonempty key and
46
+ `placeholder?`. Each `RubricKeyOption` also accepts an optional `icon?: unknown` -- a decorative
47
+ leading visual rendered into `<lr-option>`'s `start` slot in the single-select branch, or inline
48
+ before the label in the multiple-select `<lr-checkbox>` branch, inert and `aria-hidden` either way,
49
+ matching `LyraFilterBarOption.icon`. Runtime schema normalization retains the first occurrence of each nonempty key and
47
50
  rejects malformed rows. `value: RubricValue = {}` is a defensive readonly snapshot and
48
51
  `defaultValue: RubricValue = {}` is its explicit form-reset baseline (both attribute: false).
49
52
  `itemId: string = ''`
@@ -90,6 +93,8 @@ state exposed as `errors.base`, rather than being attributed to one rubric key.
90
93
  clearing it hides that region unless the `error` slot supplies other content.
91
94
  `click()` forwards to the active field (the same one a submit-and-next transition auto-focuses),
92
95
  so the host behaves like a single control under both a `<label>`-driven and a programmatic click.
96
+ `focus(options?)` moves focus to that same active field, matching `click()`'s target; this is also
97
+ what lets the native `autofocus` attribute reach the rubric.
93
98
 
94
99
  **CSS parts:** `base` (the outer `role="group"` wrapper), `form-control` (aggregate chrome wrapper),
95
100
  `aggregate-label` / `form-control-label`, `fields` / `form-control-input`, `aggregate-hint` /
@@ -41,11 +41,14 @@ of every entry in these lists.**
41
41
  `refreshTheme()`.
42
42
 
43
43
  **Events:** `lr-zoom` (`detail: { zoomed: boolean }`), `lr-datum-activate`, `lr-point-click` (`detail: { datasetIndex,
44
- index, label, value }`), `lr-before-legend-visibility-change` (cancelable), and
44
+ index, label, value }`), `lr-legend-visibility-change-request` (cancelable), and
45
45
  `lr-legend-visibility-change` (commit; both legend events carry `datasetIndex`, `visible`, and the
46
- complete `hiddenDatasets` snapshot).
47
- Radial category legends additionally emit `lr-before-datum-visibility-change` (cancelable) and
46
+ complete `hiddenDatasets` snapshot). `lr-before-legend-visibility-change` is a **deprecated** alias
47
+ of `lr-legend-visibility-change-request` (removal not before 21.0.0).
48
+ Radial category legends additionally emit `lr-datum-visibility-change-request` (cancelable) and
48
49
  `lr-datum-visibility-change`, carrying `index`, `visible` and the frozen `hiddenDatums` snapshot.
50
+ `lr-before-datum-visibility-change` is a **deprecated** alias of `lr-datum-visibility-change-request`
51
+ (removal not before 21.0.0).
49
52
 
50
53
  **Slots:** default JSON configuration script, `data-table`, `center`.
51
54
 
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 4 parts, 19 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 4 parts, 20 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -159,6 +159,8 @@ resolves.
159
159
 
160
160
  - `--lr-segmented-track-gap` — Gap between segments. Default: `var(--lr-size-0-125rem)`.
161
161
  - `--lr-segmented-track-radius` — Track corner radius. Default: `var(--lr-radius)`.
162
+ - `--lr-segmented-segment-radius` — Each segment's own corner radius, independent of the track's.
163
+ Default: `calc(var(--lr-form-control-radius) * 0.7)`.
162
164
  - `--lr-segmented-track-padding` — Track inset padding. Default: `var(--lr-size-0-125rem)`.
163
165
  - `--lr-segmented-track-bg` — Background of the `base` track. Undeclared by default (transparent),
164
166
  matching its own current absence of a background.
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 34 parts, 35 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 34 parts, 36 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -407,6 +407,12 @@ invalid CSS and never matches — which is exactly why these tokens exist.
407
407
  `[part='option-badge']` "not in catalog" badge `show-unknown-option` renders on the synthetic
408
408
  listbox row, independent of the unknown-value chip's border above.
409
409
 
410
+ `--lr-select-tag-remove-hover-bg` (default `var(--lr-color-brand-quiet)`) retints a hovered
411
+ `[part='tag__remove-button']`'s background without a `::part(tag__remove-button)` rule; the pressed
412
+ state mixes from this same token. Scoped independently of `--lr-select-trigger-hover-bg` and
413
+ `--lr-select-option-active-bg` above, which already scope the identical shared token for their own
414
+ purposes.
415
+
410
416
  **Optional peer deps:** none.
411
417
 
412
418
  ```html
@@ -22,7 +22,10 @@ Nonmodal, Escape-dismissible text-selection toolbar carrying selected text plus
22
22
  **Properties:** `open: boolean = false` (reflected); `text: string = ''`;
23
23
  clone-owned `anchor: DocumentLocator | null = null`, `rect: DOMRectReadOnly | null = null`, and
24
24
  clone-owned `actions: readonly SelectionAction[] = ['ask', 'quote', 'cite', 'copy']` (attribute: false);
25
- `label: string = ''`; `accessibleLabel: string | null = null` (attribute `aria-label`).
25
+ `label?: string` — accessible name for the toolbar. Omitting it localizes the default
26
+ `selectionToolbarLabel` message; an explicit empty string suppresses that default and renders no
27
+ label. `accessibleLabel: string | null = null` (attribute `aria-label`) — wins over `label` and
28
+ the localized default.
26
29
  `SelectionAction = 'ask' | 'quote' | 'cite' | 'copy'`. Duplicate built-in names are omitted
27
30
  first-wins before rendering, roving focus, and action events. The anchor (including any path) and
28
31
  actions are bounded frozen snapshots; reassign a new record or array after changes.
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 11 parts, 5 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 11 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -148,8 +148,12 @@ block-size), `--lr-sequence-strip-marker-color` (default `var(--lr-color-text)`
148
148
  (default `0.625rem` — a legend swatch's inline- and block-size, category and marker rows alike), and
149
149
  `--lr-sequence-strip-legend-marker-bg` (default `var(--lr-color-surface-raised)` — the neutral chip
150
150
  background behind the marker legend row's bar; it stands in for "any cell", so it deliberately
151
- matches no category color), and `--lr-sequence-strip-disabled-opacity` (default `var(--lr-opacity-disabled)` — opacity of
152
- a cell whose activated item sets `disabled`); the tooltip also consumes shared tokens
151
+ matches no category color), `--lr-sequence-strip-disabled-opacity` (default `var(--lr-opacity-disabled)` — opacity of
152
+ a cell whose activated item sets `disabled`), `--lr-sequence-strip-selected-color` (default
153
+ `var(--lr-color-text)` — colour of the persistent selection ring on a cell whose index is in
154
+ `selectedIndex`), and `--lr-sequence-strip-selected-focus-color` (default
155
+ `var(--lr-focus-ring-color)` — colour of that same ring while the cell also has keyboard focus); the
156
+ tooltip also consumes shared tokens
153
157
  `--lr-color-surface`, `--lr-color-text`, `--lr-font-size-xs`, `--lr-radius`, and `--lr-shadow`, and
154
158
  the legend consumes `--lr-space-2xs`, `--lr-space-xs`, `--lr-space-s`, `--lr-font-size-xs`,
155
159
  `--lr-color-text-quiet`, and `--lr-radius-xs`.
@@ -33,6 +33,15 @@ direct light-DOM children of the list (plain composition — no `.items` array p
33
33
  header summary, e.g. `"3 sources"` or `"1 source"`; this component never counts or pluralizes on
34
34
  its own. Takes precedence over `label` when both are set. If neither is set, the header falls back
35
35
  to the localized `sourceListDefaultLabel` string (English default: `"Sources"`).
36
+ - `compact: boolean = false` (reflected) — tighter header and list padding/gap, for a panel
37
+ rendered repeatedly down a message transcript — same convention as this list's own slotted
38
+ `lr-source-card` children's `compact`. Purely a density knob: the outer border and surface stay,
39
+ so pair it with `frame="plain"` to remove card chrome.
40
+ - `frame: LyraFrame = 'card'` (reflected) — container treatment, in the library-wide `frame`
41
+ vocabulary (`'card' | 'plain'`). `'card'` (the default) keeps the bordered, filled outer
42
+ container. `'plain'` removes that outer border, background, and corner radius so a list nested
43
+ inside existing message chrome does not double it. Plain preserves the header/list divider and
44
+ whichever regular or compact padding applies.
36
45
 
37
46
  **Getters:** `sourceCount: number` — read-only, live-updated count of the currently-slotted children,
38
47
  handy for building a `label-plural` string reactively, e.g. `` list.labelPlural = `${list.sourceCount} sources` ``.
@@ -52,7 +61,13 @@ list/listitem semantics return.
52
61
  `toggle` (the chevron indicator inside the header), `list` (wrapper around the default slot, `hidden`
53
62
  while collapsed).
54
63
 
55
- **Themeable custom properties:** shared tokens only — `--lr-color-border`, `--lr-color-surface`,
64
+ **Themeable custom properties:** `--lr-source-list-compact-header-padding` (default
65
+ `var(--lr-space-2xs) var(--lr-space-s)`) and `--lr-source-list-compact-header-gap` (default
66
+ `var(--lr-space-2xs)`) — `[part="header"]` padding/gap while `compact`; `--lr-source-list-compact-gap`
67
+ (default `var(--lr-space-2xs)`) and `--lr-source-list-compact-list-padding` (default
68
+ `var(--lr-space-s)`) — `[part="list"]` gap/padding while `compact`. All four are inline `var()`
69
+ fallbacks at their point of use, so any can be set on the element or an ancestor. Otherwise shared
70
+ tokens — `--lr-color-border`, `--lr-color-surface`,
56
71
  `--lr-color-text`, `--lr-color-brand` / `-brand-quiet`, `--lr-radius`, `--lr-space-xs`/`-s`/
57
72
  `-m`, `--lr-transition-fast`, `--lr-focus-ring-*`.
58
73
 
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 4 parts, 0 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 4 parts, 4 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Documented with** `lr-source-card` (same section below)
14
14
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
15
15
 
@@ -33,6 +33,15 @@ direct light-DOM children of the list (plain composition — no `.items` array p
33
33
  header summary, e.g. `"3 sources"` or `"1 source"`; this component never counts or pluralizes on
34
34
  its own. Takes precedence over `label` when both are set. If neither is set, the header falls back
35
35
  to the localized `sourceListDefaultLabel` string (English default: `"Sources"`).
36
+ - `compact: boolean = false` (reflected) — tighter header and list padding/gap, for a panel
37
+ rendered repeatedly down a message transcript — same convention as this list's own slotted
38
+ `lr-source-card` children's `compact`. Purely a density knob: the outer border and surface stay,
39
+ so pair it with `frame="plain"` to remove card chrome.
40
+ - `frame: LyraFrame = 'card'` (reflected) — container treatment, in the library-wide `frame`
41
+ vocabulary (`'card' | 'plain'`). `'card'` (the default) keeps the bordered, filled outer
42
+ container. `'plain'` removes that outer border, background, and corner radius so a list nested
43
+ inside existing message chrome does not double it. Plain preserves the header/list divider and
44
+ whichever regular or compact padding applies.
36
45
 
37
46
  **Getters:** `sourceCount: number` — read-only, live-updated count of the currently-slotted children,
38
47
  handy for building a `label-plural` string reactively, e.g. `` list.labelPlural = `${list.sourceCount} sources` ``.
@@ -52,7 +61,13 @@ list/listitem semantics return.
52
61
  `toggle` (the chevron indicator inside the header), `list` (wrapper around the default slot, `hidden`
53
62
  while collapsed).
54
63
 
55
- **Themeable custom properties:** shared tokens only — `--lr-color-border`, `--lr-color-surface`,
64
+ **Themeable custom properties:** `--lr-source-list-compact-header-padding` (default
65
+ `var(--lr-space-2xs) var(--lr-space-s)`) and `--lr-source-list-compact-header-gap` (default
66
+ `var(--lr-space-2xs)`) — `[part="header"]` padding/gap while `compact`; `--lr-source-list-compact-gap`
67
+ (default `var(--lr-space-2xs)`) and `--lr-source-list-compact-list-padding` (default
68
+ `var(--lr-space-s)`) — `[part="list"]` gap/padding while `compact`. All four are inline `var()`
69
+ fallbacks at their point of use, so any can be set on the element or an ancestor. Otherwise shared
70
+ tokens — `--lr-color-border`, `--lr-color-surface`,
56
71
  `--lr-color-text`, `--lr-color-brand` / `-brand-quiet`, `--lr-radius`, `--lr-space-xs`/`-s`/
57
72
  `-m`, `--lr-transition-fast`, `--lr-focus-ring-*`.
58
73
 
@@ -53,7 +53,9 @@ string; mimeType?: string; name?: string; children?: LyraSourceEntry[] }`; flat
53
53
  omitted state and removes the attribute
54
54
 
55
55
  **Events:** `lr-sources-change` (`detail: { selectedSourceIds }`, the complete updated leaf-id array,
56
- fired after every toggle including select-all).
56
+ fired after every toggle including select-all. Also fired when a `sources` reassignment prunes a
57
+ previously-selected id that is no longer a valid leaf. Not fired when a consumer sets
58
+ `selectedSourceIds` directly; that assignment is normalized silently).
57
59
 
58
60
  **Slots:** none.
59
61
 
@@ -45,9 +45,12 @@ counts, selection, and events.
45
45
  `task`, `model`, `progress`, `actions`, `cancel`, `retry`, `limit`, `empty`.
46
46
 
47
47
  At most 500 runs render, and visual indentation is capped at 12 levels while ARIA hierarchy keeps
48
- the logical depth. The visible `limit` text is ordinary and non-live; newly reaching or changing the
49
- run ceiling after the initial baseline appends the localized message to the shared polite light-DOM
50
- announcement sink, while initial and reconnect renders stay silent. The roving treeitem accepts
48
+ the logical depth. When `selectedRunId` names a run beyond the 500-run ceiling, that run and its
49
+ resolvable ancestor chain reserve positions inside the cap ahead of ordinary array order, so the
50
+ controlled selection remains visible. The visible `limit` text is ordinary and non-live; newly
51
+ reaching or changing the run ceiling after the initial baseline appends the localized message to the
52
+ shared polite light-DOM announcement sink, while initial and reconnect renders stay silent. The
53
+ roving treeitem accepts
51
54
  Enter/Space as well as pointer activation for `lr-run-activate`; cancel/retry action names include the
52
55
  run label so repeated row actions remain distinguishable to assistive technology. Progress is finite
53
56
  and clamped. **Slots:** none.
@@ -57,7 +57,7 @@ normally.
57
57
  **Events:** a user state change (click, Space, a logical ArrowLeft/ArrowRight change, or the
58
58
  programmatic `click()` activation path) emits
59
59
  `input`, then `lr-input`, then `change`, then `lr-change` (both aliases carry
60
- `detail: { checked: boolean }`) — in that order, matching
60
+ `detail: { checked: boolean, value: string }`, matching `lr-radio`'s shape) — in that order, matching
61
61
  the native checkbox/radio contract. The two native-style events are **new in 8.0.0**: a boolean
62
62
  control that emitted only the `lr-`-prefixed alias was invisible to every form library, validation
63
63
  helper, and `<form>`-level `change` listener that binds the native names, which is the ordinary way
@@ -69,8 +69,9 @@ assignment, `form.reset()`, or session-state restoration. The internal control's
69
69
  check finds the switch invalid.
70
70
  **Refusing a toggle.** `lr-switch-toggle-request` is cancelable and fires *before* `checked` moves,
71
71
  on every user path (click, Space, a logical ArrowLeft/ArrowRight change, and the host `click()`
72
- activation it forwards). `detail: { checked: boolean }` is the state the switch **would** take;
73
- `checked` itself still holds the old value while the event dispatches. `preventDefault()` keeps the
72
+ activation it forwards). `detail: { checked: boolean, value: string }` is the state the switch
73
+ **would** take (`value` is the current `.value`, unaffected by the toggle); `checked` itself still
74
+ holds the old value while the event dispatches. `preventDefault()` keeps the
74
75
  current state, so the switch never slides at all rather than sliding and snapping back, and none of
75
76
  `input`/`lr-input`/`change`/`lr-change` follow. A listener can instead answer by assigning `checked`
76
77
  itself during the dispatch, which suppresses the built-in write the same way. It does not fire for a
@@ -57,7 +57,7 @@ unchanged.
57
57
 
58
58
  - `columns: readonly TableColumn<T>[] = []` (attribute: false; clone-owned frozen collection,
59
59
  bounded to the first 10,000 source positions; blank keys and later duplicates are omitted first-wins
60
- before header, cell, sort, focus, and event paths; reassign to update) — `{ key, label,
60
+ before header, cell, sort, focus, and event paths; reassign to update) — `{ key, label, ariaLabel?,
61
61
  headerCell?, width?, minWidth?, maxWidth?,
62
62
  resizable?, sortable?, sortValue?, defaultSortDir?: 'asc'|'desc', align?: 'start'|'end',
63
63
  priority?: 'medium'|'low',
@@ -66,6 +66,11 @@ editType?: 'text'|'number'|'select',
66
66
  editOptions?: { value: string; label: string }[], footer?, cellStyle?, heatValue?,
67
67
  cell: (row) => unknown }` — `cell` is required for every `editTrigger` except `'always'`, whose
68
68
  persistent editor renders unconditionally so the table's render path never falls back to it —
69
+ `ariaLabel` overrides that column header's accessible name (applied as the `<th>`'s `aria-label`
70
+ whenever set) — e.g. an icon-only `headerCell` with no plain-text `label` to fall back on; when
71
+ `label` is blank (or whitespace-only) and `ariaLabel` is also omitted, the header's accessible
72
+ name falls back to `key` while the visible header itself stays blank, matching a deliberate
73
+ icon-only column —
69
74
  `sortValue(row) => string | number | null | undefined` supplies the comparable value backing
70
75
  client-mode sorting for that column: a finite number sorts numerically, a string sorts through an
71
76
  `Intl.Collator` built from the component's effective locale with `numeric: true` (so `item2`
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 6 parts, 13 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 6 parts, 14 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -27,9 +27,10 @@ plain text) — this component has no dependency on either.
27
27
  - `label?: string` — omitted localizes `thinkingPanelLabel` (`'Thinking'` in the built-in English
28
28
  catalog). Any supplied string is an explicit override and renders verbatim, including
29
29
  `label="Thinking"` under a non-English `.strings` catalog and `label=""`.
30
- - `compact: boolean = false` (reflected) — tightens the header/body padding and the header's
31
- internal gap for dense transcript rows. This is only a density control: its card border and
32
- surface remain, so use `frame="plain"` when surrounding message chrome already supplies them.
30
+ - `compact: boolean = false` (reflected) — tightens the header/body padding, the header's internal
31
+ gap, and the header/body font size for dense transcript rows. This is only a density control: its
32
+ card border and surface remain, so use `frame="plain"` when surrounding message chrome already
33
+ supplies them.
33
34
  - `frame: LyraFrame = 'card'` (reflected) — the library-wide container-frame vocabulary
34
35
  (`'card' | 'plain'`). `'card'` keeps the bordered, filled outer container. `'plain'` removes its
35
36
  border, background, and corner radius so a nested panel does not double an existing frame;
@@ -82,7 +83,9 @@ pending duration/toggle accent without changing the shared brand token;
82
83
  `--lr-thinking-panel-compact-header-font-size` (default `var(--lr-font-size-sm)`) — font size of
83
84
  `[part="header"]` while `compact`; and
84
85
  `--lr-thinking-panel-compact-body-padding` (default `var(--lr-space-s)`) — `[part="body"]`
85
- padding while `compact`. `--lr-thinking-panel-background` (default `var(--lr-color-surface)`),
86
+ padding while `compact`; and `--lr-thinking-panel-compact-body-font-size` (default
87
+ `var(--lr-font-size-sm)`) — font size of `[part="body"]` while `compact`.
88
+ `--lr-thinking-panel-background` (default `var(--lr-color-surface)`),
86
89
  `--lr-thinking-panel-border-color` (default `var(--lr-color-border)`) and
87
90
  `--lr-thinking-panel-radius` (default `var(--lr-radius)`) retune `[part="base"]`'s card chrome
88
91
  without a `::part(base)` override; the border-color hook also colors the header/body divider that
@@ -38,7 +38,12 @@ noneditable token layout remains the default.
38
38
  **Properties:** live, non-reflecting `value`, reflected `defaultValue` (attribute `value`, encoded
39
39
  as a JSON string array), `customError` (`custom-error`), `label`, `hint`, `errorText`
40
40
  (`error-text`), `placeholder`, `name`,
41
- `required`, `disabled`, `accessibleLabel` (attribute `aria-label` — forwarded to the input wrapper
41
+ `required`, `disabled`,
42
+ `readonly: boolean = false` (reflected — forwards native read-only behavior to the draft input and
43
+ the inline token editor, and blocks adding, removing or editing a token while leaving the draft
44
+ input, tokens and remove buttons focusable and the current value submitted with the form, mirroring
45
+ `lr-input`'s `readonly`),
46
+ `accessibleLabel` (attribute `aria-label` — forwarded to the input wrapper
42
47
  and draft text input; precedence is presence-based, so `aria-label=""` remains an explicit empty
43
48
  override and suppresses visible-label linkage), `spellcheck: boolean = true`, `autocapitalize: string = ''`, and `autocorrect` (read: `boolean = true`; write: `boolean | string`, attribute values
44
49
  `on`/`off`) — all three native text-entry hints are forwarded to both the draft input and the inline
@@ -122,6 +127,15 @@ controlled `value`/pristine `defaultValue` shrink, DOM focus moves to the neares
122
127
  equivalent surface at the clamped index. If no token remains it moves to the draft input; a newer
123
128
  explicit focus destination outside the component is never reclaimed.
124
129
 
130
+ **`readonly` — locking the committed list.** Reflects native read-only behavior onto both the draft
131
+ input and the inline token editor, and blocks every other value-committing affordance: typing (or a
132
+ programmatic `input`/`change` dispatch) into the draft, Enter/delimiter/Tab draft commits,
133
+ Backspace-removes-last-token, clicking a remove button, and opening or committing the inline
134
+ editor (`editable`). Unlike `disabled`, it never removes the draft input, a token label, or a
135
+ remove button from the tab order, never blocks `focus()`, and never excludes the current value from
136
+ `FormData` on submit — only `disabled` does that. Turning it on while a draft is half-typed or an
137
+ inline editor is open discards that uncommitted state without moving focus.
138
+
125
139
  **`delimiter` is nullable, and only a single character acts as a commit key.** It does two separate
126
140
  jobs: it splits a committed draft into several tokens, and — _only when it is exactly one
127
141
  character_ — it is the keystroke that commits the draft. A multi-character delimiter still splits a
@@ -133,5 +133,7 @@ duration"`). A host `aria-label` remains on the host and is not cloned onto that
133
133
  not place links, buttons, or other controls there; use the chip activation or detail slot instead
134
134
  - Escape only dismisses the tooltip when it's open; it does not fire any event or otherwise affect
135
135
  `status`/`open` state, since the chip has no "open" state of its own beyond the tooltip
136
+ - An open tooltip participates in shared Escape ordering even while only hovered, deferring to a
137
+ genuinely topmost overlay opened on top of it
136
138
 
137
139
  ---
@@ -50,7 +50,12 @@ boolean; readonly autocapitalize?: string; readonly autoCorrect?: string; readon
50
50
  string; readonly enterKeyHint?: string }` — one `schema.properties`
51
51
  entry. `enum` is only meaningful when `type` is `'string'` (rendered as a `<lr-select>`); `const`
52
52
  enforces one exact primitive value; `title` is the display label; `description` is helper text;
53
- `default` pre-fills a field whenever `value` doesn't already have that key. For a free-form
53
+ `default` pre-fills a field whenever `value` doesn't already have that key. For a `'string'`
54
+ (non-enum) or `'number'`/`'integer'` field, `const` also pre-fills the field (taking priority
55
+ over `default` when both are present) and renders its native control `readonly` — visible,
56
+ focusable and copyable, but not editable, and still submitted as the locked value. The
57
+ `'boolean'`/enum `<lr-select>` fields are unaffected: `const` there remains pure post-touch
58
+ validation, as before. For a free-form
54
59
  string field, `autocomplete`, `spellcheck`, `autocapitalize`, `autoCorrect`, `inputMode`, and
55
60
  `enterKeyHint` forward the corresponding native editing hints to the rendered text input;
56
61
  `spellcheck` defaults to `true`, and the other hints are omitted unless supplied.
@@ -74,7 +79,9 @@ Readonly<Record<string, ToolParamFormProperty>>; readonly required?: readonly st
74
79
  `lr-input`) as that default, but the `value` property itself is left alone until the user actually
75
80
  edits that field. JSON Schema ordinarily treats `default` as an annotation; this renderer
76
81
  deliberately materializes it before validation/submission, so a valid default can satisfy
77
- `required`.
82
+ `required`. A `const` on a `'string'` (non-enum) or `'number'`/`'integer'` field takes priority
83
+ over `default` for this same materialization, and additionally renders that field's control
84
+ `readonly` so the locked value is visible and submitted but not editable.
78
85
  - `name: string = ''` — submission key for optional native `<form>` participation
79
86
  - `disabled: boolean = false` (reflected)
80
87
  - `customError: string | null = null` (attribute `custom-error`) — reflected consumer validation
@@ -87,9 +94,10 @@ Readonly<Record<string, ToolParamFormProperty>>; readonly required?: readonly st
87
94
 
88
95
  - `effectiveValue: ToolParamFormValue` — a detached, deeply frozen `value` snapshot with every
89
96
  property missing from it filled in
90
- from `schema`'s own `default`; this is what actually renders and what `lr-input`'s detail carries.
97
+ from `schema`'s own `const` (when present) or `default`; this is what actually renders and what
98
+ `lr-input`'s detail carries.
91
99
  A key the user has explicitly cleared (a real own property set to `undefined`) stays cleared rather
92
- than snapping back to its default — only a key genuinely absent from `value` falls back.
100
+ than snapping back to its `const`/default — only a key genuinely absent from `value` falls back.
93
101
  - `errors: Readonly<Record<string, string>>` — a frozen effective validation-error snapshot.
94
102
  Intrinsic errors use their schema property key; a schema-wide/serialization error or consumer
95
103
  custom-validity message uses `base`, the whole-control part. It is independent of which fields
@@ -121,6 +129,9 @@ Readonly<Record<string, ToolParamFormProperty>>; readonly required?: readonly st
121
129
  - `click(): void` — forwards a host click to the first generated field's control, so the form
122
130
  behaves like a single control under both a `<label>`-driven and a programmatic click; a no-op
123
131
  while `disabled`.
132
+ - `focus(options?: FocusOptions): void` — moves focus to the first generated field's control,
133
+ mirroring `click()`; a no-op while `disabled`.
134
+ - `blur(): void` — blurs whichever generated field currently holds focus.
124
135
 
125
136
  **Events:** `lr-input` (deeply frozen `detail: { value: ToolParamFormValue }` — the full detached
126
137
  current value snapshot, every property with defaults resolved, not just the field that changed),
@@ -102,10 +102,14 @@ Tooltip motion resolves `tooltip.show` / `tooltip.hide` through the public anima
102
102
  The same per-element/global precedence, RTL keyframe selection, token-timing fallback,
103
103
  reduced-motion flattening, and null-disable lifecycle rules documented for `lr-popover` apply.
104
104
 
105
- **Slots:** both mapped shapes are supported. Web Awesome uses named `trigger` plus default tooltip
106
- content. Shoelace uses the default slot for the trigger and `slot="content"` (or the `content`
107
- property) for tooltip content. A named trigger always selects the first shape; without one, an
108
- explicit content source makes the default slot unambiguously the trigger.
105
+ **Slots:** both mapped shapes are supported, plus a Lyra-original addition. `trigger` (the
106
+ highest-priority interaction/ARIA owner, mirroring `<lr-popover>`'s own `trigger` slot) is not a
107
+ Web Awesome shape: `wa-tooltip` has only its single unnamed default slot for tooltip content, and
108
+ its own anchor mechanism is the `for` attribute plus the unrelated `trigger` activation-mode
109
+ attribute documented above. Shoelace uses the default slot for the trigger and `slot="content"`
110
+ (or the `content` property) for tooltip content. A named `trigger` slot always selects that shape;
111
+ without one, an explicit content source (`slot="content"` or the `content` property) makes the
112
+ default slot unambiguously the trigger, matching Shoelace.
109
113
 
110
114
  **CSS parts:** `popup base tooltip base__popup` are aliases on the same wrapper; `trigger`; `body`;
111
115
  and `arrow base__arrow` (rendered unless suppressed). The arrow also carries the resolved side —
@@ -65,13 +65,16 @@ element or any ancestor, and they exist because `::part(row)[data-active]` is in
65
65
  `--lr-trace-tree-max-indent` (default `var(--lr-size-12rem)`) caps visual nesting indentation;
66
66
  semantic `aria-level` remains exact at deeper levels.
67
67
 
68
- **Contrast note:** the active row is more than a tint. Its secondary text would sit at ~4.25:1
68
+ **Contrast note:** the active row is more than a tint. Its secondary text would sit at ~4.17:1
69
69
  against the default tint if it stayed at `--lr-color-text-quiet`, so it rises to full-strength
70
70
  `--lr-color-text` while the row is active, and the semantic `status-text` labels are rendered as
71
71
  `color-mix(in srgb, var(--lr-color-<tone>) 75%, var(--lr-color-text))` — keeping the status hue
72
- (an error row stays red) while clearing the 4.5:1 floor (success 4.46 → 6.18, `denied` 4.28 →
73
- 5.96). Both adjustments are theme-symmetric, because `--lr-color-text` flips with the color
74
- scheme. `[part='bar']` is deliberately untouched: it is a non-text graphic on a 3:1 floor, and its
72
+ (an error row stays red) while clearing the 4.5:1 floor with a full point of margin or more for
73
+ every currently shipped default tone. The exact ratio moves with every palette ramp revision
74
+ (`src/internal/tokens/palette.styles.ts`), so no specific number is pinned here — recompute against
75
+ the live tokens before quoting one. Both adjustments are theme-symmetric, because `--lr-color-text`
76
+ flips with the color scheme. `[part='bar']` is deliberately untouched: it is a non-text graphic on
77
+ a 3:1 floor, and its
75
78
  saturation is the row's primary status signal.
76
79
 
77
80
  The two properties are a **pair**. The defaults assume the active background stays on the same
@@ -46,11 +46,13 @@ convenience; every enabled row is independently reachable through ordinary seque
46
46
  native `FocusEvent`s (bubbling and composed, preserving `relatedTarget`).
47
47
  `lr-video-change` is bubbling and composed but non-cancelable, with exact
48
48
  detail `{ previousIndex, currentIndex, video }`. `video` is a fresh detached, recursively frozen plain-data snapshot with
49
- exact shape `{ title, poster, sources, tracks }`, not the live child element. `sources` contains
50
- fresh `{ src, type, media }` records for the child's direct `src` and `<source>` declarations;
51
- `tracks` contains fresh `{ src, kind, srclang, label, default }` records. A listener that needs to
52
- annotate or reshape the payload must create its own mutable copy; the dispatched detail and every
53
- nested record/array reject mutation.
49
+ exact shape `{ title, poster, sources, tracks }`, not the live child element, or `null`. `sources`
50
+ contains fresh `{ src, type, media }` records for the child's direct `src` and `<source>`
51
+ declarations; `tracks` contains fresh `{ src, kind, srclang, label, default }` records. A listener
52
+ that needs to annotate or reshape the payload must create its own mutable copy; the dispatched
53
+ detail and every nested record/array reject mutation. Also fired when a light-DOM mutation (a video
54
+ removed, or every remaining video made `inert`/disabled) leaves no enabled video to replace a
55
+ previously active one: `video` is `null` and `currentIndex` is `-1` in that case.
54
56
 
55
57
  **Slot:** the default slot accepts direct `<lr-video>` children. Nested videos and other elements
56
58
  are not playlist items.
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 17 parts, 28 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 18 parts, 28 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -41,8 +41,10 @@ custom-value editor: they do not navigate options, commit a selection or custom
41
41
  popup. Ordinary keyboard behavior resumes after composition.
42
42
 
43
43
  **Exported types:** `LyraVoiceCatalogEntry extends LyraCatalogEntry { language?: string;
44
- description?: string; previewUrl?: string }` — `language`/`description` render as a quiet
45
- `[part="option-meta"]` second line. Voice catalogs use the shared
44
+ description?: string; previewUrl?: string; icon?: string }` — `language`/`description` render as a
45
+ quiet `[part="option-meta"]` second line; `icon` is an optional literal icon hint (for example, an
46
+ emoji), rendered decoratively as the leading `[part="option-icon"]`, matching
47
+ `lr-model-select`'s identical `LyraModelCatalogEntry.icon` field. Voice catalogs use the shared
46
48
  `LyraCatalog<LyraVoiceCatalogEntry>` homogeneous readonly union documented under `lr-model-select`,
47
49
  including the shared `disabled` field: a disabled voice row cannot be selected by click or keyboard
48
50
  and is stepped over by arrow-key/Home/End navigation, but its own `[part="option-preview"]` stays
@@ -133,7 +135,8 @@ reports no violation and publishes neither `:state(invalid)` nor
133
135
  `:state(user-invalid)`.
134
136
 
135
137
  **CSS parts:** `form-control` (the complete field frame), `form-control-label`, `trigger` (closed-dropdown mode), `combobox`/`combobox-input`
136
- (free-text mode), `provider-badge`, `listbox`, `option`, `option-label`, `option-meta` (the quiet
138
+ (free-text mode), `provider-badge`, `listbox`, `option`, `option-icon` (an object-shaped catalog
139
+ row's optional decorative leading icon), `option-label`, `option-meta` (the quiet
137
140
  `language · description` second line), `option-badge` (the "not in catalog" badge on a synthetic
138
141
  stale-value row), `option-preview` (a pointer-only per-row preview icon, `tabindex="-1"`,
139
142
  `aria-hidden`), `preview-button` (the standalone, keyboard-reachable preview toggle beside the
@@ -9,7 +9,7 @@
9
9
  - **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
10
10
  - **Deprecations** none
11
11
  - **Optional peers** none
12
- - **Themeable via** 16 parts, 9 custom properties — see this component's own `@csspart`/`@cssprop` list below
12
+ - **Themeable via** 16 parts, 13 custom properties — see this component's own `@csspart`/`@cssprop` list below
13
13
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
14
14
 
15
15
  ---
@@ -78,7 +78,9 @@ toggle button. Not emitted when a consumer assigns `fullscreen` directly), `lr-v
78
78
  (cancelable; `detail: { viewId }` is the view proposed by a header view-toggle click. Call
79
79
  `preventDefault()` to leave `activeViewId` unchanged. Not emitted when a consumer assigns
80
80
  `activeViewId` directly), `lr-view-change` (non-cancelable; `detail: { viewId }`, the accepted
81
- active view's `viewId`. Not emitted when a consumer sets `activeViewId` directly), and
81
+ active view's `viewId`. Also emitted when a `views` reassignment drops the currently-active view,
82
+ forcing a fallback to the first remaining view. Not emitted when a consumer sets `activeViewId`
83
+ directly, even to a now-invalid id), and
82
84
  `lr-activate` (non-cancelable; `detail: { value }` — note the key is `value`, not `viewId` — is the
83
85
  activated view's `viewId`, fired on **every** accepted header view-toggle activation whether or not
84
86
  `activeViewId` actually moved. `lr-view-request` stays the veto point, and a vetoed activation emits
@@ -142,6 +144,17 @@ rendering is unchanged.
142
144
  _hover_ state, and the `:hover` rule wraps its selector in `:where()` so a consumer's own
143
145
  `::part(view-toggle):hover` override wins without `!important`.
144
146
 
147
+ `--lr-widget-collapse-button-hover-bg` (default `var(--lr-color-brand-quiet)`) and
148
+ `--lr-widget-collapse-button-hover-color` (default `var(--lr-color-brand)`), plus
149
+ `--lr-widget-fullscreen-button-hover-bg` (default `var(--lr-color-brand-quiet)`) and
150
+ `--lr-widget-fullscreen-button-hover-color` (default `var(--lr-color-brand)`), are
151
+ the same inline-`var()`-fallback shape for `[part="collapse-button"]` and `[part="fullscreen-button"]`
152
+ respectively; each button's pressed fill mixes from its own `-hover-bg` token. Before these existed,
153
+ both buttons read the library-wide `--lr-color-brand-quiet`/`--lr-color-brand` tokens directly, so a
154
+ consumer retinting those tokens upstream to change only the view toggle's hover (the reason the
155
+ view-toggle pair above exists) also silently repainted these two buttons; each now has its own scoped
156
+ escape hatch, independent of the other and of the view toggle.
157
+
145
158
  **Optional peer deps:** none.
146
159
 
147
160
  ```html
package/llms/migration.md CHANGED
@@ -72,9 +72,9 @@ set with a warning. Expand or classify them before applying, then rerun to verif
72
72
 
73
73
  | Ecosystem | Exact | Rewritten | Warning required | Conceptual only | Unsupported | Automatic | Manual |
74
74
  |---|---:|---:|---:|---:|---:|---:|---:|
75
- | Web Awesome | 34 | 38 | 15 | 0 | 0 | 72 | 15 |
75
+ | Web Awesome | 34 | 37 | 16 | 0 | 0 | 71 | 16 |
76
76
  | Shoelace | 18 | 28 | 12 | 0 | 0 | 46 | 12 |
77
- | **Total** | **52** | **66** | **27** | **0** | **0** | **118** | **27** |
77
+ | **Total** | **52** | **65** | **28** | **0** | **0** | **117** | **28** |
78
78
 
79
79
  ## Web Awesome (87)
80
80
 
@@ -102,11 +102,11 @@ The pinned Web Awesome manifest is authoritative for this inventory; only rows m
102
102
  | `<wa-checkbox>` | `<lr-checkbox>` | `rewritten` | Automatic: tag/import plus events: wa-invalid → lr-invalid. Equivalent surface representation: name defaults null ≡ ; no source rewrite. |
103
103
  | `<wa-checkbox-group>` | `<lr-checkbox-group>` | `exact` | Automatic: tag and supported side-effect registration import. Form-associated group of checkboxes with array values and group validation. |
104
104
  | `<wa-color-picker>` | `<lr-color-picker>` | `rewritten` | Automatic: tag/import plus events: wa-after-hide → lr-after-hide; events: wa-after-show → lr-after-show; events: wa-hide → lr-hide; events: wa-invalid → lr-invalid; events: wa-show → lr-show. Equivalent surface representation: name defaults null ≡ ; no source rewrite. |
105
- | `<wa-combobox>` | `<lr-combobox>` | `warning-required` | Manual: Lyra snapshots each input/change event's value into a frozen readonly value at dispatch time, and since 16.0.0 narrows it through the picker value generic, so the detail reads as string when multiple is false rather than the upstream union; migrated handlers that mutate the event detail in place, or that rely on the union being present on a single-select combobox, must be reviewed. |
105
+ | `<wa-combobox>` | `<lr-combobox>` | `warning-required` | Manual: Lyra snapshots each input/change event's value into a frozen readonly value at dispatch time, and since 16.0.0 narrows it through the picker value generic, so the detail reads as string when multiple is false rather than the upstream union; migrated handlers that mutate the event detail in place, or that rely on the union being present on a single-select combobox, must be reviewed. Its appearance also accepts the full shared LyraAppearance vocabulary (accent and plain in addition to the three upstream values) since 20.0.0; every upstream value keeps its meaning, so only exhaustive TypeScript switches over the narrower upstream union need review. |
106
106
  | `<wa-comparison>` | `<lr-image-comparer>` | `exact` | Automatic: tag and supported side-effect registration import. Before/after slotted surfaces with a keyboard-accessible range divider. |
107
107
  | `<wa-copy-button>` | `<lr-copy-button>` | `rewritten` | Automatic: tag/import plus events: wa-copy → lr-copy; events: wa-error → lr-error. |
108
108
  | `<wa-data-grid>` | `<lr-data-grid>` | `warning-required` | Manual: Lyra snapshots collection inputs and event details synchronously into frozen readonly values, and removes the redundant wa-data-request alias in favor of the typed request event. Migrated code that mutates arrays or event details in place, assigns derived collections, or listens for the removed alias must be reviewed. |
109
- | `<wa-date-input>` | `<lr-date-input>` | `rewritten` | Automatic: tag/import plus events: wa-after-hide → lr-after-hide; events: wa-after-show → lr-after-show; events: wa-clear → lr-clear; events: wa-hide → lr-hide; events: wa-invalid → lr-invalid; events: wa-show → lr-show. |
109
+ | `<wa-date-input>` | `<lr-date-input>` | `warning-required` | Manual: Since 20.0.0 lr-date-input accepts the full shared LyraAppearance vocabulary (accent and plain in addition to the three upstream values). Every upstream value keeps its meaning, so migrated markup is unaffected; only exhaustive TypeScript switches over the narrower upstream union need review. |
110
110
  | `<wa-date-picker>` | `<lr-date-picker>` | `rewritten` | Automatic: tag/import plus events: wa-focus-day → lr-focus-day; events: wa-view-change → lr-view-change. |
111
111
  | `<wa-details>` | `<lr-details>` | `rewritten` | Automatic: tag/import plus events: wa-after-hide → lr-after-hide; events: wa-after-show → lr-after-show; events: wa-hide → lr-hide; events: wa-show → lr-show. |
112
112
  | `<wa-dialog>` | `<lr-dialog>` | `rewritten` | Automatic: tag/import plus events: wa-after-hide → lr-after-hide; events: wa-after-show → lr-after-show; events: wa-hide → lr-hide; events: wa-show → lr-show. |