@aceshooting/lyra-ui 7.3.0 → 7.5.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 (377) hide show
  1. package/CHANGELOG.md +94 -0
  2. package/custom-elements.json +1747 -381
  3. package/dist/components/agent-tools/activity-feed/activity-feed.class.d.ts.map +1 -1
  4. package/dist/components/agent-tools/activity-feed/activity-feed.class.js +1 -0
  5. package/dist/components/agent-tools/activity-feed/activity-feed.class.js.map +1 -1
  6. package/dist/components/agent-tools/approval-queue/approval-queue.class.d.ts.map +1 -1
  7. package/dist/components/agent-tools/approval-queue/approval-queue.class.js +1 -0
  8. package/dist/components/agent-tools/approval-queue/approval-queue.class.js.map +1 -1
  9. package/dist/components/agent-tools/browser-frame/browser-frame.styles.d.ts.map +1 -1
  10. package/dist/components/agent-tools/browser-frame/browser-frame.styles.js +3 -0
  11. package/dist/components/agent-tools/browser-frame/browser-frame.styles.js.map +1 -1
  12. package/dist/components/agent-tools/commit-card/commit-card.class.d.ts +3 -0
  13. package/dist/components/agent-tools/commit-card/commit-card.class.d.ts.map +1 -1
  14. package/dist/components/agent-tools/commit-card/commit-card.class.js +21 -1
  15. package/dist/components/agent-tools/commit-card/commit-card.class.js.map +1 -1
  16. package/dist/components/agent-tools/compare-panel/compare-panel.class.d.ts.map +1 -1
  17. package/dist/components/agent-tools/compare-panel/compare-panel.class.js +7 -1
  18. package/dist/components/agent-tools/compare-panel/compare-panel.class.js.map +1 -1
  19. package/dist/components/agent-tools/confirm-bar/confirm-bar.class.d.ts +4 -0
  20. package/dist/components/agent-tools/confirm-bar/confirm-bar.class.d.ts.map +1 -1
  21. package/dist/components/agent-tools/confirm-bar/confirm-bar.class.js +4 -0
  22. package/dist/components/agent-tools/confirm-bar/confirm-bar.class.js.map +1 -1
  23. package/dist/components/agent-tools/confirm-bar/confirm-bar.styles.js +2 -2
  24. package/dist/components/agent-tools/prompt-studio/prompt-studio.class.d.ts +2 -0
  25. package/dist/components/agent-tools/prompt-studio/prompt-studio.class.d.ts.map +1 -1
  26. package/dist/components/agent-tools/prompt-studio/prompt-studio.class.js +24 -9
  27. package/dist/components/agent-tools/prompt-studio/prompt-studio.class.js.map +1 -1
  28. package/dist/components/agent-tools/prompt-studio/prompt-studio.styles.d.ts.map +1 -1
  29. package/dist/components/agent-tools/prompt-studio/prompt-studio.styles.js +23 -2
  30. package/dist/components/agent-tools/prompt-studio/prompt-studio.styles.js.map +1 -1
  31. package/dist/components/agent-tools/result-card/result-card.class.d.ts +4 -0
  32. package/dist/components/agent-tools/result-card/result-card.class.d.ts.map +1 -1
  33. package/dist/components/agent-tools/result-card/result-card.class.js +4 -0
  34. package/dist/components/agent-tools/result-card/result-card.class.js.map +1 -1
  35. package/dist/components/agent-tools/result-card/result-card.styles.d.ts.map +1 -1
  36. package/dist/components/agent-tools/result-card/result-card.styles.js +2 -0
  37. package/dist/components/agent-tools/result-card/result-card.styles.js.map +1 -1
  38. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.d.ts +2 -0
  39. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.d.ts.map +1 -1
  40. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.js +2 -0
  41. package/dist/components/agent-tools/schema-viewer/schema-viewer.class.js.map +1 -1
  42. package/dist/components/agent-tools/schema-viewer/schema-viewer.styles.d.ts.map +1 -1
  43. package/dist/components/agent-tools/schema-viewer/schema-viewer.styles.js +4 -0
  44. package/dist/components/agent-tools/schema-viewer/schema-viewer.styles.js.map +1 -1
  45. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.d.ts +6 -1
  46. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.d.ts.map +1 -1
  47. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js +61 -3
  48. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js.map +1 -1
  49. package/dist/components/agent-tools/task-list/task-list.class.d.ts +2 -0
  50. package/dist/components/agent-tools/task-list/task-list.class.d.ts.map +1 -1
  51. package/dist/components/agent-tools/task-list/task-list.class.js +2 -0
  52. package/dist/components/agent-tools/task-list/task-list.class.js.map +1 -1
  53. package/dist/components/agent-tools/task-list/task-list.styles.d.ts.map +1 -1
  54. package/dist/components/agent-tools/task-list/task-list.styles.js +1 -0
  55. package/dist/components/agent-tools/task-list/task-list.styles.js.map +1 -1
  56. package/dist/components/agent-tools/test-results/test-results.class.d.ts.map +1 -1
  57. package/dist/components/agent-tools/test-results/test-results.class.js +15 -10
  58. package/dist/components/agent-tools/test-results/test-results.class.js.map +1 -1
  59. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.d.ts +3 -0
  60. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.d.ts.map +1 -1
  61. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js +5 -0
  62. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js.map +1 -1
  63. package/dist/components/charts/chart/box-plot.class.d.ts.map +1 -1
  64. package/dist/components/charts/chart/box-plot.class.js +31 -0
  65. package/dist/components/charts/chart/box-plot.class.js.map +1 -1
  66. package/dist/components/charts/chart/chart-loader.d.ts +2 -2
  67. package/dist/components/charts/chart/chart-loader.d.ts.map +1 -1
  68. package/dist/components/charts/chart/chart-loader.js +7 -1
  69. package/dist/components/charts/chart/chart-loader.js.map +1 -1
  70. package/dist/components/charts/chart/chart.class.d.ts +5 -1
  71. package/dist/components/charts/chart/chart.class.d.ts.map +1 -1
  72. package/dist/components/charts/chart/chart.class.js +17 -2
  73. package/dist/components/charts/chart/chart.class.js.map +1 -1
  74. package/dist/components/charts/chart/chart.styles.d.ts.map +1 -1
  75. package/dist/components/charts/chart/chart.styles.js +5 -1
  76. package/dist/components/charts/chart/chart.styles.js.map +1 -1
  77. package/dist/components/charts/chart/lite-chart.class.d.ts.map +1 -1
  78. package/dist/components/charts/chart/lite-chart.class.js +2 -0
  79. package/dist/components/charts/chart/lite-chart.class.js.map +1 -1
  80. package/dist/components/conversation/code-block/code-block-core.class.d.ts +7 -8
  81. package/dist/components/conversation/code-block/code-block-core.class.d.ts.map +1 -1
  82. package/dist/components/conversation/code-block/code-block-core.class.js +75 -227
  83. package/dist/components/conversation/code-block/code-block-core.class.js.map +1 -1
  84. package/dist/components/conversation/code-block/code-block-shared.d.ts +173 -7
  85. package/dist/components/conversation/code-block/code-block-shared.d.ts.map +1 -1
  86. package/dist/components/conversation/code-block/code-block-shared.js +312 -6
  87. package/dist/components/conversation/code-block/code-block-shared.js.map +1 -1
  88. package/dist/components/conversation/code-block/code-block.class.d.ts +6 -7
  89. package/dist/components/conversation/code-block/code-block.class.d.ts.map +1 -1
  90. package/dist/components/conversation/code-block/code-block.class.js +70 -231
  91. package/dist/components/conversation/code-block/code-block.class.js.map +1 -1
  92. package/dist/components/conversation/markdown/markdown-core.class.d.ts +9 -22
  93. package/dist/components/conversation/markdown/markdown-core.class.d.ts.map +1 -1
  94. package/dist/components/conversation/markdown/markdown-core.class.js +87 -314
  95. package/dist/components/conversation/markdown/markdown-core.class.js.map +1 -1
  96. package/dist/components/conversation/markdown/markdown-shared.d.ts +213 -9
  97. package/dist/components/conversation/markdown/markdown-shared.d.ts.map +1 -1
  98. package/dist/components/conversation/markdown/markdown-shared.js +362 -8
  99. package/dist/components/conversation/markdown/markdown-shared.js.map +1 -1
  100. package/dist/components/conversation/markdown/markdown.class.d.ts +9 -22
  101. package/dist/components/conversation/markdown/markdown.class.d.ts.map +1 -1
  102. package/dist/components/conversation/markdown/markdown.class.js +81 -311
  103. package/dist/components/conversation/markdown/markdown.class.js.map +1 -1
  104. package/dist/components/conversation/message-feedback/message-feedback.class.d.ts.map +1 -1
  105. package/dist/components/conversation/message-feedback/message-feedback.class.js +4 -1
  106. package/dist/components/conversation/message-feedback/message-feedback.class.js.map +1 -1
  107. package/dist/components/conversation/prompt-input/prompt-input.styles.d.ts.map +1 -1
  108. package/dist/components/conversation/prompt-input/prompt-input.styles.js +9 -2
  109. package/dist/components/conversation/prompt-input/prompt-input.styles.js.map +1 -1
  110. package/dist/components/conversation/selection-toolbar/selection-toolbar.class.d.ts.map +1 -1
  111. package/dist/components/conversation/selection-toolbar/selection-toolbar.class.js +8 -1
  112. package/dist/components/conversation/selection-toolbar/selection-toolbar.class.js.map +1 -1
  113. package/dist/components/conversation/thread-list/thread-list.class.d.ts +11 -2
  114. package/dist/components/conversation/thread-list/thread-list.class.d.ts.map +1 -1
  115. package/dist/components/conversation/thread-list/thread-list.class.js +43 -25
  116. package/dist/components/conversation/thread-list/thread-list.class.js.map +1 -1
  117. package/dist/components/conversation/voice-picker/voice-picker.class.d.ts.map +1 -1
  118. package/dist/components/conversation/voice-picker/voice-picker.class.js +5 -1
  119. package/dist/components/conversation/voice-picker/voice-picker.class.js.map +1 -1
  120. package/dist/components/data/document-library/document-library.class.d.ts.map +1 -1
  121. package/dist/components/data/document-library/document-library.class.js +4 -1
  122. package/dist/components/data/document-library/document-library.class.js.map +1 -1
  123. package/dist/components/data/env-list/env-list.styles.d.ts.map +1 -1
  124. package/dist/components/data/env-list/env-list.styles.js +5 -0
  125. package/dist/components/data/env-list/env-list.styles.js.map +1 -1
  126. package/dist/components/data/flow-canvas/flow-canvas.class.js +1 -1
  127. package/dist/components/data/flow-canvas/flow-canvas.class.js.map +1 -1
  128. package/dist/components/data/flow-minimap/flow-minimap.styles.d.ts.map +1 -1
  129. package/dist/components/data/flow-minimap/flow-minimap.styles.js +6 -0
  130. package/dist/components/data/flow-minimap/flow-minimap.styles.js.map +1 -1
  131. package/dist/components/data/graph-query-builder/graph-query-builder.class.d.ts.map +1 -1
  132. package/dist/components/data/graph-query-builder/graph-query-builder.class.js +10 -1
  133. package/dist/components/data/graph-query-builder/graph-query-builder.class.js.map +1 -1
  134. package/dist/components/data/heatmap/heatmap.class.d.ts.map +1 -1
  135. package/dist/components/data/heatmap/heatmap.class.js +17 -2
  136. package/dist/components/data/heatmap/heatmap.class.js.map +1 -1
  137. package/dist/components/data/pagination/pagination.class.d.ts +2 -0
  138. package/dist/components/data/pagination/pagination.class.d.ts.map +1 -1
  139. package/dist/components/data/pagination/pagination.class.js +2 -0
  140. package/dist/components/data/pagination/pagination.class.js.map +1 -1
  141. package/dist/components/data/pagination/pagination.styles.d.ts.map +1 -1
  142. package/dist/components/data/pagination/pagination.styles.js +7 -2
  143. package/dist/components/data/pagination/pagination.styles.js.map +1 -1
  144. package/dist/components/data/table/table.class.d.ts +7 -2
  145. package/dist/components/data/table/table.class.d.ts.map +1 -1
  146. package/dist/components/data/table/table.class.js +40 -6
  147. package/dist/components/data/table/table.class.js.map +1 -1
  148. package/dist/components/data/tree/tree-node.class.d.ts +2 -0
  149. package/dist/components/data/tree/tree-node.class.d.ts.map +1 -1
  150. package/dist/components/data/tree/tree-node.class.js +2 -0
  151. package/dist/components/data/tree/tree-node.class.js.map +1 -1
  152. package/dist/components/forms/color-picker/color-picker.class.d.ts.map +1 -1
  153. package/dist/components/forms/color-picker/color-picker.class.js +9 -0
  154. package/dist/components/forms/color-picker/color-picker.class.js.map +1 -1
  155. package/dist/components/forms/date-picker/date-picker.class.d.ts +2 -0
  156. package/dist/components/forms/date-picker/date-picker.class.d.ts.map +1 -1
  157. package/dist/components/forms/date-picker/date-picker.class.js +2 -0
  158. package/dist/components/forms/date-picker/date-picker.class.js.map +1 -1
  159. package/dist/components/forms/date-picker/date-picker.styles.d.ts.map +1 -1
  160. package/dist/components/forms/date-picker/date-picker.styles.js +8 -3
  161. package/dist/components/forms/date-picker/date-picker.styles.js.map +1 -1
  162. package/dist/components/forms/emoji-picker/emoji-data-loader.js +28 -2
  163. package/dist/components/forms/emoji-picker/emoji-data-loader.js.map +1 -1
  164. package/dist/components/forms/emoji-picker/emoji-picker.class.d.ts +4 -0
  165. package/dist/components/forms/emoji-picker/emoji-picker.class.d.ts.map +1 -1
  166. package/dist/components/forms/emoji-picker/emoji-picker.class.js +8 -2
  167. package/dist/components/forms/emoji-picker/emoji-picker.class.js.map +1 -1
  168. package/dist/components/forms/emoji-picker/emoji-types.d.ts +9 -0
  169. package/dist/components/forms/emoji-picker/emoji-types.d.ts.map +1 -1
  170. package/dist/components/forms/input/input.styles.d.ts.map +1 -1
  171. package/dist/components/forms/input/input.styles.js +17 -4
  172. package/dist/components/forms/input/input.styles.js.map +1 -1
  173. package/dist/components/forms/locale-picker/locale-picker.class.d.ts +1 -1
  174. package/dist/components/forms/locale-picker/locale-picker.class.d.ts.map +1 -1
  175. package/dist/components/forms/locale-picker/locale-picker.class.js +3 -1
  176. package/dist/components/forms/locale-picker/locale-picker.class.js.map +1 -1
  177. package/dist/components/forms/radio/radio.class.d.ts +5 -0
  178. package/dist/components/forms/radio/radio.class.d.ts.map +1 -1
  179. package/dist/components/forms/radio/radio.class.js +5 -0
  180. package/dist/components/forms/radio/radio.class.js.map +1 -1
  181. package/dist/components/forms/radio/radio.styles.d.ts.map +1 -1
  182. package/dist/components/forms/radio/radio.styles.js +5 -2
  183. package/dist/components/forms/radio/radio.styles.js.map +1 -1
  184. package/dist/components/forms/select/select.class.d.ts +9 -1
  185. package/dist/components/forms/select/select.class.d.ts.map +1 -1
  186. package/dist/components/forms/select/select.class.js +9 -1
  187. package/dist/components/forms/select/select.class.js.map +1 -1
  188. package/dist/components/forms/slider/slider.class.d.ts +8 -0
  189. package/dist/components/forms/slider/slider.class.d.ts.map +1 -1
  190. package/dist/components/forms/slider/slider.class.js +14 -0
  191. package/dist/components/forms/slider/slider.class.js.map +1 -1
  192. package/dist/components/forms/swatch-picker/swatch-picker.class.d.ts +12 -0
  193. package/dist/components/forms/swatch-picker/swatch-picker.class.d.ts.map +1 -1
  194. package/dist/components/forms/swatch-picker/swatch-picker.class.js +22 -0
  195. package/dist/components/forms/swatch-picker/swatch-picker.class.js.map +1 -1
  196. package/dist/components/forms/textarea/textarea.class.d.ts +6 -0
  197. package/dist/components/forms/textarea/textarea.class.d.ts.map +1 -1
  198. package/dist/components/forms/textarea/textarea.class.js +16 -1
  199. package/dist/components/forms/textarea/textarea.class.js.map +1 -1
  200. package/dist/components/forms/time-range/time-range.class.d.ts +9 -0
  201. package/dist/components/forms/time-range/time-range.class.d.ts.map +1 -1
  202. package/dist/components/forms/time-range/time-range.class.js +15 -0
  203. package/dist/components/forms/time-range/time-range.class.js.map +1 -1
  204. package/dist/components/layout/button-group/button-group.styles.d.ts.map +1 -1
  205. package/dist/components/layout/button-group/button-group.styles.js +10 -1
  206. package/dist/components/layout/button-group/button-group.styles.js.map +1 -1
  207. package/dist/components/layout/drilldown-panel/drilldown-panel.class.d.ts.map +1 -1
  208. package/dist/components/layout/drilldown-panel/drilldown-panel.class.js +5 -1
  209. package/dist/components/layout/drilldown-panel/drilldown-panel.class.js.map +1 -1
  210. package/dist/components/layout/filter-bar/filter-bar.class.d.ts.map +1 -1
  211. package/dist/components/layout/filter-bar/filter-bar.class.js +4 -1
  212. package/dist/components/layout/filter-bar/filter-bar.class.js.map +1 -1
  213. package/dist/components/layout/split/split.class.d.ts +8 -0
  214. package/dist/components/layout/split/split.class.d.ts.map +1 -1
  215. package/dist/components/layout/split/split.class.js +8 -0
  216. package/dist/components/layout/split/split.class.js.map +1 -1
  217. package/dist/components/layout/split/split.styles.d.ts.map +1 -1
  218. package/dist/components/layout/split/split.styles.js +26 -10
  219. package/dist/components/layout/split/split.styles.js.map +1 -1
  220. package/dist/components/layout/virtual-list/virtual-list.styles.d.ts.map +1 -1
  221. package/dist/components/layout/virtual-list/virtual-list.styles.js +27 -7
  222. package/dist/components/layout/virtual-list/virtual-list.styles.js.map +1 -1
  223. package/dist/components/layout/widget/widget.class.d.ts +4 -0
  224. package/dist/components/layout/widget/widget.class.d.ts.map +1 -1
  225. package/dist/components/layout/widget/widget.class.js +4 -0
  226. package/dist/components/layout/widget/widget.class.js.map +1 -1
  227. package/dist/components/layout/widget/widget.styles.d.ts.map +1 -1
  228. package/dist/components/layout/widget/widget.styles.js +9 -3
  229. package/dist/components/layout/widget/widget.styles.js.map +1 -1
  230. package/dist/components/media/flag/flag.class.d.ts +1 -1
  231. package/dist/components/media/flag/flag.class.d.ts.map +1 -1
  232. package/dist/components/media/flag/flag.class.js +2 -1
  233. package/dist/components/media/flag/flag.class.js.map +1 -1
  234. package/dist/components/media/image-viewer/image-viewer.styles.d.ts.map +1 -1
  235. package/dist/components/media/image-viewer/image-viewer.styles.js +1 -0
  236. package/dist/components/media/image-viewer/image-viewer.styles.js.map +1 -1
  237. package/dist/components/overlays/chip/chip-group.class.d.ts +4 -0
  238. package/dist/components/overlays/chip/chip-group.class.d.ts.map +1 -1
  239. package/dist/components/overlays/chip/chip-group.class.js +4 -0
  240. package/dist/components/overlays/chip/chip-group.class.js.map +1 -1
  241. package/dist/components/overlays/chip/chip-group.styles.d.ts.map +1 -1
  242. package/dist/components/overlays/chip/chip-group.styles.js +7 -2
  243. package/dist/components/overlays/chip/chip-group.styles.js.map +1 -1
  244. package/dist/components/overlays/rating/rating.styles.d.ts.map +1 -1
  245. package/dist/components/overlays/rating/rating.styles.js +11 -4
  246. package/dist/components/overlays/rating/rating.styles.js.map +1 -1
  247. package/dist/components/retrieval/claim-evidence/claim-evidence.class.d.ts.map +1 -1
  248. package/dist/components/retrieval/claim-evidence/claim-evidence.class.js +4 -1
  249. package/dist/components/retrieval/claim-evidence/claim-evidence.class.js.map +1 -1
  250. package/dist/components/retrieval/graph/graph-canvas.d.ts +25 -0
  251. package/dist/components/retrieval/graph/graph-canvas.d.ts.map +1 -1
  252. package/dist/components/retrieval/graph/graph-canvas.js +30 -1
  253. package/dist/components/retrieval/graph/graph-canvas.js.map +1 -1
  254. package/dist/components/retrieval/graph/graph.class.d.ts +2 -1
  255. package/dist/components/retrieval/graph/graph.class.d.ts.map +1 -1
  256. package/dist/components/retrieval/graph/graph.class.js +12 -1
  257. package/dist/components/retrieval/graph/graph.class.js.map +1 -1
  258. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.d.ts +5 -0
  259. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.d.ts.map +1 -1
  260. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.js +5 -0
  261. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.js.map +1 -1
  262. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.styles.d.ts.map +1 -1
  263. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.styles.js +7 -3
  264. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.styles.js.map +1 -1
  265. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts.map +1 -1
  266. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js +10 -1
  267. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js.map +1 -1
  268. package/dist/components/utility/diff-view/diff-view.styles.d.ts.map +1 -1
  269. package/dist/components/utility/diff-view/diff-view.styles.js +11 -0
  270. package/dist/components/utility/diff-view/diff-view.styles.js.map +1 -1
  271. package/dist/components/viewers/archive-viewer/archive-viewer-register.js +16 -3
  272. package/dist/components/viewers/archive-viewer/archive-viewer-register.js.map +1 -1
  273. package/dist/components/viewers/document-viewer/document-viewer.class.d.ts.map +1 -1
  274. package/dist/components/viewers/document-viewer/document-viewer.class.js +1 -0
  275. package/dist/components/viewers/document-viewer/document-viewer.class.js.map +1 -1
  276. package/dist/components/viewers/docx-viewer/docx-viewer.js +6 -1
  277. package/dist/components/viewers/docx-viewer/docx-viewer.js.map +1 -1
  278. package/dist/components/viewers/ebook-viewer/ebook-viewer.class.d.ts +10 -4
  279. package/dist/components/viewers/ebook-viewer/ebook-viewer.class.d.ts.map +1 -1
  280. package/dist/components/viewers/ebook-viewer/ebook-viewer.class.js +31 -6
  281. package/dist/components/viewers/ebook-viewer/ebook-viewer.class.js.map +1 -1
  282. package/dist/components/viewers/html-viewer/html-viewer.js +7 -0
  283. package/dist/components/viewers/html-viewer/html-viewer.js.map +1 -1
  284. package/dist/components/viewers/notebook-viewer/notebook-viewer.class.d.ts +3 -0
  285. package/dist/components/viewers/notebook-viewer/notebook-viewer.class.d.ts.map +1 -1
  286. package/dist/components/viewers/notebook-viewer/notebook-viewer.class.js +7 -1
  287. package/dist/components/viewers/notebook-viewer/notebook-viewer.class.js.map +1 -1
  288. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.d.ts +4 -0
  289. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.d.ts.map +1 -1
  290. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.js +8 -4
  291. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.js.map +1 -1
  292. package/dist/components/viewers/pptx-viewer/pptx-viewer.js +11 -1
  293. package/dist/components/viewers/pptx-viewer/pptx-viewer.js.map +1 -1
  294. package/dist/components/viewers/svg-viewer/svg-viewer.class.d.ts +29 -17
  295. package/dist/components/viewers/svg-viewer/svg-viewer.class.d.ts.map +1 -1
  296. package/dist/components/viewers/svg-viewer/svg-viewer.class.js +27 -22
  297. package/dist/components/viewers/svg-viewer/svg-viewer.class.js.map +1 -1
  298. package/dist/components/viewers/svg-viewer/svg-viewer.d.ts.map +1 -1
  299. package/dist/components/viewers/svg-viewer/svg-viewer.js +7 -6
  300. package/dist/components/viewers/svg-viewer/svg-viewer.js.map +1 -1
  301. package/dist/internal/form-associated.d.ts +21 -0
  302. package/dist/internal/form-associated.d.ts.map +1 -1
  303. package/dist/internal/form-associated.js +25 -8
  304. package/dist/internal/form-associated.js.map +1 -1
  305. package/dist/internal/localization.d.ts +1 -1
  306. package/dist/internal/localization.d.ts.map +1 -1
  307. package/dist/internal/localization.js +17 -0
  308. package/dist/internal/localization.js.map +1 -1
  309. package/llms/components/lr-agent-run.md +3 -2
  310. package/llms/components/lr-approval-queue.md +6 -1
  311. package/llms/components/lr-archive-viewer.md +6 -2
  312. package/llms/components/lr-artifact-panel.md +7 -3
  313. package/llms/components/lr-attachment-chip.md +8 -6
  314. package/llms/components/lr-avatar.md +6 -4
  315. package/llms/components/lr-bar-chart.md +4 -2
  316. package/llms/components/lr-bubble-chart.md +4 -2
  317. package/llms/components/lr-button-group.md +10 -0
  318. package/llms/components/lr-button.md +11 -6
  319. package/llms/components/lr-chart.md +8 -2
  320. package/llms/components/lr-chip-group.md +9 -2
  321. package/llms/components/lr-chip.md +8 -1
  322. package/llms/components/lr-commit-card.md +11 -3
  323. package/llms/components/lr-confirm-bar.md +9 -1
  324. package/llms/components/lr-date-input.md +4 -0
  325. package/llms/components/lr-date-picker.md +5 -1
  326. package/llms/components/lr-document-viewer.md +1 -1
  327. package/llms/components/lr-doughnut-chart.md +4 -2
  328. package/llms/components/lr-emoji-picker.md +16 -4
  329. package/llms/components/lr-export-button.md +2 -1
  330. package/llms/components/lr-flag.md +9 -5
  331. package/llms/components/lr-graph-query-builder.md +6 -5
  332. package/llms/components/lr-heatmap.md +12 -7
  333. package/llms/components/lr-histogram.md +3 -2
  334. package/llms/components/lr-html-viewer.md +4 -1
  335. package/llms/components/lr-json-viewer.md +2 -1
  336. package/llms/components/lr-knowledge-base-admin.md +10 -1
  337. package/llms/components/lr-known-date.md +8 -4
  338. package/llms/components/lr-line-chart.md +4 -2
  339. package/llms/components/lr-locale-picker.md +1 -1
  340. package/llms/components/lr-model-select.md +3 -0
  341. package/llms/components/lr-notebook-viewer.md +4 -2
  342. package/llms/components/lr-pagination.md +6 -3
  343. package/llms/components/lr-pdf-viewer.md +5 -2
  344. package/llms/components/lr-pie-chart.md +4 -2
  345. package/llms/components/lr-polar-area-chart.md +4 -2
  346. package/llms/components/lr-pptx-viewer.md +3 -1
  347. package/llms/components/lr-push-to-talk.md +4 -0
  348. package/llms/components/lr-radar-chart.md +4 -2
  349. package/llms/components/lr-radio.md +7 -1
  350. package/llms/components/lr-result-card.md +9 -3
  351. package/llms/components/lr-result-field.md +8 -2
  352. package/llms/components/lr-retrieval-results.md +12 -7
  353. package/llms/components/lr-scatter-chart.md +4 -2
  354. package/llms/components/lr-schema-viewer.md +13 -1
  355. package/llms/components/lr-sequence-strip.md +21 -16
  356. package/llms/components/lr-slider.md +4 -0
  357. package/llms/components/lr-split.md +9 -1
  358. package/llms/components/lr-stepper.md +5 -3
  359. package/llms/components/lr-svg-viewer.md +24 -8
  360. package/llms/components/lr-table.md +21 -3
  361. package/llms/components/lr-task-list.md +7 -3
  362. package/llms/components/lr-terminal.md +10 -4
  363. package/llms/components/lr-textarea.md +5 -0
  364. package/llms/components/lr-thread-list.md +16 -4
  365. package/llms/components/lr-time-range.md +6 -0
  366. package/llms/components/lr-tool-call-chip.md +4 -3
  367. package/llms/components/lr-tool-param-form.md +7 -2
  368. package/llms/components/lr-tool-result-dialog.md +2 -1
  369. package/llms/components/lr-tree-node.md +1 -1
  370. package/llms/components/lr-virtual-list.md +8 -7
  371. package/llms/components/lr-widget.md +6 -1
  372. package/llms/shared.md +1 -1
  373. package/llms-full.txt +381 -127
  374. package/package.json +7 -4
  375. package/vscode-css-data.json +169 -1
  376. package/vscode-html-data.json +38 -38
  377. package/web-types.json +138 -37
@@ -26,9 +26,14 @@ Ships the same opt-in `label`/`hint`/`errorText` form-control chrome as `lr-sele
26
26
  `error` CSS parts) — left unset, none of that chrome renders.
27
27
 
28
28
  **Properties:** the shared form properties `name`, `value`, `disabled`, and `required`, plus
29
- `groups: EmojiPickerGroup[] = []` (attribute: false) — `EmojiPickerGroup { key, label, emojis:
30
- EmojiPickerItem[] }`, `EmojiPickerItem { emoji, name, shortcodes? }`; the search field matches `name`
31
- and every `shortcodes` entry, case-insensitively. Empty (the default, before the auto-loader
29
+ `groups: EmojiPickerGroup[] = []` (attribute: false) — `EmojiPickerGroup { key, label, labelKey?,
30
+ emojis: EmojiPickerItem[] }`, `EmojiPickerItem { emoji, name, shortcodes? }`; the search field matches
31
+ `name` and every `shortcodes` entry, case-insensitively. `labelKey` is an optional `LyraMessageKey`
32
+ naming `label`'s localized form — set only by the built-in `emoji-picker-element-data` adapter, whose
33
+ headings come from emojibase's fixed group ids, so an auto-loaded emoji set's group headings follow
34
+ `registerLyraLocale()`/`.strings` instead of staying English. A hand-authored group leaves it unset
35
+ and its `label` renders verbatim, because a consumer-supplied heading is caller-owned content this
36
+ library never translates. Empty (the default, before the auto-loader
32
37
  resolves) renders just the search input and the empty state. `accessibleLabel` (`aria-label`)
33
38
  forwards a host-supplied accessible name to the internal `role="listbox"` grid; empty falls back to
34
39
  the localized default grid label. `label: string = ''` — visible label rendered above the
@@ -100,7 +105,14 @@ windowed row are additionally capped at 20 regardless of available width.
100
105
  **Optional peer dependency:** install `emoji-picker-element-data` with
101
106
  `pnpm add emoji-picker-element-data` for the built-in auto-loaded default emoji set — omit it and
102
107
  supply `groups` directly instead. The loader never throws; a missing or failed peer logs one
103
- `console.warn` and simply leaves `groups` empty.
108
+ `console.warn` and simply leaves `groups` empty. The adapter buckets the peer's flat entry list by
109
+ its numeric `group` id and tags each bucket with both the English `label` and the matching
110
+ `labelKey` — `emojiPickerGroupSmileysEmotion`, `emojiPickerGroupPeopleBody`,
111
+ `emojiPickerGroupComponent`, `emojiPickerGroupAnimalsNature`, `emojiPickerGroupFoodDrink`,
112
+ `emojiPickerGroupTravelPlaces`, `emojiPickerGroupActivities`, `emojiPickerGroupObjects`,
113
+ `emojiPickerGroupSymbols`, `emojiPickerGroupFlags` (group ids 0–9, in that order). Override any of
114
+ them through `registerLyraLocale()` or a `.strings` object to translate the headings. An unknown
115
+ future group id gets no `labelKey` and falls back to a generated `Group {id}` label.
104
116
 
105
117
  **Additional API surface:**
106
118
 
@@ -84,7 +84,8 @@ shared-clamp note.
84
84
  ```
85
85
 
86
86
  Package-level CSV utilities (used internally, also exported for standalone use — `import {
87
- escapeCsvField, buildCsv, downloadBlob } from '@aceshooting/lyra-ui'`):
87
+ escapeCsvField, buildCsv, downloadBlob } from
88
+ '@aceshooting/lyra-ui/components/utility/export-button/csv.js'`):
88
89
  ```ts
89
90
  escapeCsvField(value: unknown): string // quotes/escapes; neutralizes formula-injection (=,+,@,tab,CR) with a leading apostrophe — a bare leading '-' is deliberately left alone (OWASP guidance: it's not itself formula syntax, and guarding it would mangle ordinary negative numbers)
90
91
  buildCsv(rows: Record<string, unknown>[], columns: CsvColumn[]): string // CRLF-joined, header row included
@@ -45,7 +45,8 @@ Country/language flag image. Flag artwork ships in a **separate, optional peer p
45
45
 
46
46
  **Slots:** none.
47
47
 
48
- **CSS parts:** `image`
48
+ **CSS parts:** `image` (the underlying `<img>`, present only once a URL has resolved), `error`
49
+ (the localized `role="alert"` rendered instead when the peer resolver is unavailable or rejects)
49
50
 
50
51
  **Themeable custom properties:** `--lr-flag-radius` (default `calc(var(--lr-radius) * 0.33)` —
51
52
  non-`round` corner radius), `--lr-flag-aspect-ratio` (default `4 / 3`), and
@@ -54,7 +55,7 @@ non-`round` corner radius), `--lr-flag-aspect-ratio` (default `4 / 3`), and
54
55
  **Optional peer deps:** `@aceshooting/lyra-flags` — required for the component to actually render an
55
56
  image when `country` or `language` is used. Import `components/flag/flag-peer.js` once to opt into
56
57
  that resolver; a pre-resolved `src` works without the peer registration entry. If the peer is not
57
- installed, renders an empty template (see gotchas).
58
+ installed, the component fails closed with a localized `[part="error"]` alert (see gotchas).
58
59
 
59
60
  Also exported from the package root:
60
61
  `languageToCountry(language: string): string | undefined` and the `LANGUAGE_TO_COUNTRY` lookup
@@ -94,7 +95,7 @@ pronounces the endonym in its own language, and use `variant="compact"` at icon
94
95
  ```
95
96
 
96
97
  ```js
97
- import { localeNativeName, languageToCountry } from '@aceshooting/lyra-ui';
98
+ import { localeNativeName, languageToCountry } from '@aceshooting/lyra-ui/components/media/flag/language-map.js';
98
99
 
99
100
  const rows = ['en', 'fr', 'de', 'pt-BR', 'ja', 'ar'].map((tag) => ({
100
101
  tag,
@@ -123,9 +124,12 @@ import '@aceshooting/lyra-ui/components/media/flag/flag-peer.js';
123
124
  registers the component without importing the optional flag asset graph. Requires the optional
124
125
  peer `@aceshooting/lyra-flags` to actually render an image; without it the component still shows a
125
126
  `<lr-skeleton variant="rect">` placeholder (with `aria-busy="true"` on
126
- the host) while resolving, then settles into an **empty template** plus a one-time `console.warn`
127
+ the host) while resolving, then **fails closed** into a localized `<span part="error" role="alert">`
128
+ (the `flagLoadError` message key, `"Flag unavailable"` by default) plus a one-time `console.warn`
127
129
  once the resolver rejects (lazy `import()`, cached module-wide so the warning fires only once per
128
- page even with many `<lr-flag>` instances).
130
+ page even with many `<lr-flag>` instances). An *empty* template is a different, non-error outcome:
131
+ the peer resolved fine but returned no URL for that code (e.g. `country="zz"`) — no `[part="error"]`,
132
+ no `<img>`, no warning.
129
133
  - Rendering is async even when the peer *is* installed: `src` resolves after an `import()` +
130
134
  resolver call, so there's a brief loading-skeleton window on first paint/attribute change — don't
131
135
  assume the `<img>` exists synchronously right after setting `country`/`language`.
@@ -21,11 +21,12 @@ relationship and node-type filters, hop limits, validation, and saved queries.
21
21
  `validationMessage`, `willValidate`, `checkValidity`, `reportValidity`, `formDisabledCallback`,
22
22
  `formResetCallback`, `formStateRestoreCallback`. **Events:** `lr-input`, `lr-validity-change`,
23
23
  `lr-query-run`, `lr-query-save`, `lr-query-load`, `lr-query-delete`. **Slots:** `actions`. **CSS
24
- parts:** `base`, `path-fields`, `start-input`, `end-input`, `relationship-picker`,
25
- `relationship-chips`, `node-type-picker`, `node-type-chips`, `direction`, `filter-group`,
26
- `min-hops`, `max-hops`, `footer`, `run-button`, `save-button`, `save-row`, `save-name-input`,
27
- `saved-queries`, `saved-queries-label`, `saved-list`, `saved-item`, `saved-load-button`,
28
- `saved-delete-button`, `saved-empty`.
24
+ parts:** `base`, `label`, `hint`, `error` (the three form-control chrome parts every
25
+ form-associated control in this library exposes — see `lr-select`), `path-fields`, `start-input`,
26
+ `end-input`, `relationship-picker`, `relationship-chips`, `node-type-picker`, `node-type-chips`,
27
+ `direction`, `filter-group`, `min-hops`, `max-hops`, `footer`, `run-button`, `save-button`,
28
+ `save-row`, `save-name-input`, `saved-queries`, `saved-queries-label`, `saved-list`, `saved-item`,
29
+ `saved-load-button`, `saved-delete-button`, `saved-empty`.
29
30
 
30
31
  **Additional API surface:**
31
32
 
@@ -172,13 +172,18 @@ bar between them, while `legendStops` is supplied), `legend-stop` (one per `lege
172
172
  closes the legend row, present in both the gradient and the `legendStops` branch),
173
173
  `legend-annotation` (one per labeled `annotations` entry)
174
174
 
175
- **Themeable custom properties:** `--lr-heatmap-scale-lo` (default `#cde2fb`),
176
- `--lr-heatmap-scale-hi` (default `#0969da`) — the sequential color-ramp endpoints (matrix mode) or
177
- quartile-bucket ramp endpoints (calendar mode), resolved via `getComputedStyle` each draw (any valid
178
- CSS color syntax — hex/rgb/hsl/oklch/named — works, resolved through a scratch canvas).
179
- `--lr-heatmap-no-data-fill` (default `rgba(128,128,128,0.25)` the no-data cell fill, same
180
- resolve-via-`getComputedStyle` pattern), `--lr-heatmap-label-font` (default `10px sans-serif` the
181
- canvas-drawn axis/month/weekday label font), `--lr-heatmap-focus-ring-color` (default
175
+ **Themeable custom properties:** `--lr-heatmap-scale-lo` (default `var(--lr-color-brand-quiet)`),
176
+ `--lr-heatmap-scale-hi` (default `var(--lr-color-brand)`) — the sequential color-ramp endpoints
177
+ (matrix mode) or quartile-bucket ramp endpoints (calendar mode), resolved via `getComputedStyle` each
178
+ draw (any valid CSS color syntax — hex/rgb/hsl/oklch/named — works, resolved through a scratch
179
+ canvas). These defaults are declared on `:host`, so they follow the theme (including dark mode)
180
+ rather than being pinned to a literal color; the hard-coded `#cde2fb`/`#0969da` pair in the source is
181
+ only a last-resort constant for the case where the custom property resolves to an empty string (no
182
+ stylesheet applied at all), not the shipped default.
183
+ `--lr-heatmap-no-data-fill` (default `var(--lr-color-no-data)` — the no-data cell fill, same
184
+ resolve-via-`getComputedStyle` pattern), `--lr-heatmap-label-font` (default
185
+ `var(--lr-size-10px) var(--lr-font)` — the canvas-drawn axis/month/weekday label font),
186
+ `--lr-heatmap-focus-ring-color` (default
182
187
  `var(--lr-focus-ring-color)` — the canvas-drawn ring stroked around the keyboard-focused cell;
183
188
  also reused by `[part="canvas"]`'s own `:focus-visible` outline so the two stay visually in sync),
184
189
  `--lr-heatmap-color-steps-gradient` (default
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraHistogram`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/histogram.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -48,7 +48,8 @@ dependency fails to load — inherited from `LyraChart`, unaffected by the binni
48
48
 
49
49
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
50
50
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
51
- `--lr-chart-tooltip-text` — inherited from `LyraChart`, identical in meaning.
51
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — inherited from `LyraChart`,
52
+ identical in meaning.
52
53
 
53
54
  **Optional peer deps:** the same `chart.js` (+ `chartjs-plugin-zoom` when `zoom` is set) peers.
54
55
 
@@ -30,7 +30,10 @@ inside a bounded, scrollable body.
30
30
  **Themeable custom properties:** `--lr-html-viewer-max-height` (default `none`) — maximum block size
31
31
  of `[part="body"]`; also settable via the `max-height` property, which writes this token inline.
32
32
 
33
- **Optional peer dependency:** `dompurify`.
33
+ **Optional peer dependency:** `dompurify`. The registry matches `text/html` and `.htm`/`.html`
34
+ filenames, declaring `{ anchors: ['text-quote', 'fragment'], search: true, textSelect: true }`
35
+ capabilities and forwarding `anchor`/`highlights` onto the created element, so a deep link opened
36
+ through `<lr-document-viewer>` survives the registry hop.
34
37
 
35
38
  Remote resources are capped at 25 MB; exceeding it surfaces the localized
36
39
  `documentPreviewResourceTooLarge` message instead of the document.
@@ -62,7 +62,8 @@ while it matches `search`, and `data-active` while it is the current cursor posi
62
62
  present for row alignment on leaf/empty nodes),
63
63
  `copy-button` (a copy-to-clipboard button — the top-level one in `toolbar` (aria-label "Copy JSON to
64
64
  clipboard") or a per-node one (aria-label `Copy ${key/type}`, e.g. "Copy age"); only rendered when
65
- `copyable`)
65
+ `copyable`), `limit` (the localized notice rendered below the tree when the depth/node traversal
66
+ budget truncates rendering or search — absent entirely for any document within budget)
66
67
 
67
68
  **Themeable custom properties:** `--lr-json-viewer-max-height` (default `none` — grows with content
68
69
  until `max-height` is set), `--lr-json-viewer-font` (default `var(--lr-font-mono)`),
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraKnowledgeBaseAdmin`, also available unregistered from `@aceshooting/lyra-ui/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.js`
7
7
  - **Family** `components/retrieval/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** none
9
- - **Themeable via** 6 parts, 0 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 6 parts, 2 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -28,3 +28,12 @@ correlated ids/details from their composed primitives).
28
28
  **Slots:** `settings` — host-owned KB configuration controls.
29
29
 
30
30
  **CSS parts:** `base`, `heading`, `tabs`, `tab`, `panel`, `settings`.
31
+
32
+ **Themeable custom properties:** `--lr-knowledge-base-admin-tab-selected-border` (default
33
+ `var(--lr-color-brand)`) and `--lr-knowledge-base-admin-tab-selected-color` (default
34
+ `var(--lr-color-text)`) — the bottom-border and text color of the selected `[part="tab"]`. State
35
+ hooks: inline `var()` fallbacks at the point of use rather than `:host` declarations, so either can
36
+ be set on the element *or on any ancestor*, and the rule wraps its `[aria-selected='true']` qualifier
37
+ in `:where()` so a consumer's own `::part(tab)` override still wins. They exist because
38
+ `::part(tab)[aria-selected='true']` is invalid CSS — Shadow Parts forbids an attribute selector after
39
+ `::part()`. Left unset, rendering is unchanged.
@@ -92,10 +92,14 @@ The two height knobs work as a pair on `[part='field-input']`, the same way
92
92
  - Auto-advance (typing a field's last digit moves to the next) and backspace-into-the-previous-field
93
93
  are this library's own additions, not Web Awesome parity. Auto-advance is purely digit-count
94
94
  based, never value based.
95
- - Each `<input>` shows exactly what was typed and is never reformatted or reverted; only the
96
- composite `value` is zero-padded.
97
- - Non-digit keystrokes are rejected before reaching field state — locale-specific numerals
98
- (e.g. Arabic-Indic digits) are not accepted as input.
95
+ - Each `<input>` keeps exactly the digits that were typed never zero-padded, range-clamped, or
96
+ reverted to a previous value; only the composite `value` is normalized to zero-padded ISO.
97
+ - Non-digit characters are stripped in the `input` handler before they reach field state (the
98
+ native `<input>`'s own value is rewritten in the same tick). Locale-specific numerals *are*
99
+ accepted and transliterated to ASCII, not rejected: Arabic-Indic (`٠`–`٩`) and Extended
100
+ Arabic-Indic/Persian (`۰`–`۹`) digits are mapped unconditionally, and the digits of
101
+ `effectiveLocale`'s own numbering system are added on top via `Intl.NumberFormat`, so typing
102
+ `٢٠٢٦` into the year field commits `2026`.
99
103
  - ArrowLeft/ArrowRight cross fields at a field's text boundary, and the *physical* key meaning
100
104
  "next field" flips under an inherited `dir="rtl"`; the locale-derived field order itself does not.
101
105
  - A blank composite is `valueMissing` only when **all three** fields are blank; a partially typed
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraLineChart`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/line-chart.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -46,7 +46,9 @@ dependency fails to load — see `llms/components/lr-chart.md`).
46
46
 
47
47
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
48
48
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
49
- `--lr-chart-tooltip-text`.
49
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — all inherited from `LyraChart`,
50
+ identical in meaning and default (see `lr-chart` above); each of the eight variants below reads the
51
+ same set, so one rule retunes them together.
50
52
 
51
53
  **Optional peer deps:** same as `lr-chart` — `chart.js`, plus `chartjs-plugin-zoom` only once
52
54
  `zoom` is set, and `chartjs-plugin-datalabels` only once `data-labels`/`stack-totals` is set.
@@ -73,7 +73,7 @@ peer warning duplication; `lr-flag` itself already logs one) when the optional
73
73
  ```html
74
74
  <lr-locale-picker label="Language"></lr-locale-picker>
75
75
  <script type="module">
76
- import { registerLyraLocale } from '@aceshooting/lyra-ui';
76
+ import { registerLyraLocale } from '@aceshooting/lyra-ui/localization.js';
77
77
  registerLyraLocale('fr', { close: 'Fermer' });
78
78
  document
79
79
  .querySelector('lr-locale-picker')
@@ -100,6 +100,9 @@ visually-distinct row (dashed border, italic label, "not in catalog" badge) comp
100
100
  from the listbox or committed in free-text mode; `inCatalog` reflects whether that value was
101
101
  actually present in `normalizedCatalog`, so a consumer can flag a freshly-typed custom value
102
102
  distinctly from a real catalog pick)
103
+ - `change` (`Event`, no detail) — fired alongside `lr-change`, mirroring `<lr-select>`/
104
+ `<lr-combobox>`'s native-style value-change pair so native form bindings/framework `v-model`
105
+ handlers behave consistently across the picker family.
103
106
  - `blur` (no detail) — re-dispatched from the free-text mode's internal `<input>`'s own `blur`,
104
107
  bubbling and composed unlike the native event. Closed-dropdown mode's trigger `<button>` has no
105
108
  equivalent re-dispatch, matching `<lr-select>`'s own trigger.
@@ -18,8 +18,10 @@ Execution is a hard non-goal. Markdown cells render through `lr-markdown`, code
18
18
  `lr-code-block` (using the notebook's kernel language for syntax highlighting), and raw cells as
19
19
  plain preformatted text. A code cell's `execute_result`/`display_data` outputs prefer, in order,
20
20
  `image/png`, `image/jpeg`, `image/svg+xml` (sanitized), `text/html` (sanitized), `application/json`
21
- (via `lr-json-viewer`), then `text/plain`. Stream/error outputs render as plain preformatted text
22
- (tinted `danger` for stderr/tracebacks). Sanitizing raw HTML/SVG output markup lazy-loads the
21
+ (via `lr-json-viewer`), then `text/plain`. Stream/error outputs render as preformatted text (tinted
22
+ `danger` for stderr/tracebacks) with embedded ANSI SGR color/style escapes interpreted through the
23
+ same shared `internal/ansi.ts` parser `lr-terminal` uses — a traceback keeps its coloring instead of
24
+ showing raw `ESC[` sequences. Sanitizing raw HTML/SVG output markup lazy-loads the
23
25
  optional peer `dompurify`; without it, the output renders a localized notice instead of raw markup.
24
26
  Cells are virtualized through `lr-virtual-list`. `node-path` anchors resolve `path[0]` as a cell
25
27
  index; `fragment` anchors resolve a cell's own `id`. No execution, no kernels, no editing, no
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraPagination`, also available unregistered from `@aceshooting/lyra-ui/components/data/pagination/pagination.class.js`
7
7
  - **Family** `components/data/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** none
9
- - **Themeable via** 11 parts, 4 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 11 parts, 5 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -61,8 +61,11 @@ The internal page input's `focus` and `blur` are also bridged as bubbling, compo
61
61
  `--lr-pagination-font-size` (both default from `size`), `--lr-pagination-control-padding` (default
62
62
  `var(--lr-space-xs)`) — inner padding of the previous/next buttons and the page input, deliberately
63
63
  uniform across every `size` tier because the control's outer footprint is already fixed by
64
- `--lr-pagination-control-size`, so this only adjusts the icon/digit inset — plus shared color,
65
- spacing, border, radius, disabled-opacity, and focus-ring tokens.
64
+ `--lr-pagination-control-size`, so this only adjusts the icon/digit inset —
65
+ `--lr-pagination-invalid-border` (default `var(--lr-color-danger)`) border color of
66
+ `[part="page-input"]` while the typed page is out of range (`aria-invalid="true"`); a state hook
67
+ declared as an inline `var()` fallback, since `::part(page-input)[aria-invalid='true']` is invalid
68
+ CSS — plus shared color, spacing, border, radius, disabled-opacity, and focus-ring tokens.
66
69
 
67
70
  **Optional peer deps:** none.
68
71
 
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraPdfViewer`, also available unregistered from `@aceshooting/lyra-ui/components/viewers/pdf-viewer/pdf-viewer.class.js`
7
7
  - **Family** `components/viewers/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `pdfjs-dist` — see `llms/peers.md`
9
- - **Themeable via** 13 parts, 1 custom property — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 17 parts, 1 custom property — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -62,7 +62,10 @@ table of contents as `PdfOutlineItem[]` (`{ title, page?, children? }`), `[]` wh
62
62
  `clearSearch()`); `searchNext()` and `searchPrevious()` advance/step back through matches (wrapping,
63
63
  resolving `false` when there are none); `clearSearch()` clears the query, matches, and painted marks.
64
64
 
65
- **CSS parts:** `base`, `toolbar`, `page-indicator`, `zoom-indicator`, `pages`, `page`, `page-canvas`
65
+ **CSS parts:** `base`, `toolbar`, `previous-button`, `next-button`, `zoom-out-button`,
66
+ `zoom-in-button` (the four toolbar controls — previously reachable only through `::part(toolbar)
67
+ button`, which is invalid: a descendant combinator after `::part()` never matches, so each button now
68
+ carries its own part name), `page-indicator`, `zoom-indicator`, `pages`, `page`, `page-canvas`
66
69
  (the canvas one page's content is painted onto), `text-layer`, `text-span` (one generated text run
67
70
  inside a page's text layer — PDF.js creates these imperatively, and they carry the part so a rule can
68
71
  reach them without a descendant combinator), `search-match` (a `<mark>` painted into a mounted page's
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraPieChart`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/pie-chart.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -46,7 +46,9 @@ dependency fails to load — see `llms/components/lr-chart.md`).
46
46
 
47
47
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
48
48
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
49
- `--lr-chart-tooltip-text`.
49
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — all inherited from `LyraChart`,
50
+ identical in meaning and default (see `lr-chart` above); each of the eight variants below reads the
51
+ same set, so one rule retunes them together.
50
52
 
51
53
  **Optional peer deps:** same as `lr-chart` — `chart.js`, plus `chartjs-plugin-zoom` only once
52
54
  `zoom` is set, and `chartjs-plugin-datalabels` only once `data-labels`/`stack-totals` is set.
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraPolarAreaChart`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/polar-area-chart.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -46,7 +46,9 @@ dependency fails to load — see `llms/components/lr-chart.md`).
46
46
 
47
47
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
48
48
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
49
- `--lr-chart-tooltip-text`.
49
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — all inherited from `LyraChart`,
50
+ identical in meaning and default (see `lr-chart` above); each of the eight variants below reads the
51
+ same set, so one rule retunes them together.
50
52
 
51
53
  **Optional peer deps:** same as `lr-chart` — `chart.js`, plus `chartjs-plugin-zoom` only once
52
54
  `zoom` is set, and `chartjs-plugin-datalabels` only once `data-labels`/`stack-totals` is set.
@@ -34,7 +34,9 @@ and `lr-render-error` with `detail.error`.
34
34
 
35
35
  **Optional peer dependency:** install `@aiden0z/pptx-renderer` with
36
36
  `pnpm add @aiden0z/pptx-renderer`. The registry matches the official PPTX MIME type and `.pptx`
37
- filenames.
37
+ filenames, declaring `{ anchors: ['text-quote', 'fragment'], search: true, textSelect: true }`
38
+ capabilities and forwarding `anchor`/`highlights` to the mounted viewer, so a deep link opened
39
+ through `<lr-document-viewer>` survives the registry hop.
38
40
 
39
41
  Remote resources are capped at 25 MB; exceeding it surfaces the localized
40
42
  `documentPreviewResourceTooLarge` message instead of the presentation.
@@ -61,3 +61,7 @@ and it repainted every other danger surface with it.
61
61
 
62
62
  - `blur()` — Forwards host blur to the internal push-to-talk control.
63
63
  - `focus()` — Forwards host focus to the internal push-to-talk control.
64
+ - `click()` — Programmatically starts or stops a take, mirroring a real pointer/keyboard
65
+ activation: in `mode="toggle"` it forwards to the trigger's native `click()`; otherwise it calls
66
+ `stop()` while `state` is `recording` or `start()` otherwise. A no-op while `disabled` or
67
+ unsupported.
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraRadarChart`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/radar-chart.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -46,7 +46,9 @@ dependency fails to load — see `llms/components/lr-chart.md`).
46
46
 
47
47
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
48
48
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
49
- `--lr-chart-tooltip-text`.
49
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — all inherited from `LyraChart`,
50
+ identical in meaning and default (see `lr-chart` above); each of the eight variants below reads the
51
+ same set, so one rule retunes them together.
50
52
 
51
53
  **Optional peer deps:** same as `lr-chart` — `chart.js`, plus `chartjs-plugin-zoom` only once
52
54
  `zoom` is set, and `chartjs-plugin-datalabels` only once `data-labels`/`stack-totals` is set.
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraRadio`, also available unregistered from `@aceshooting/lyra-ui/components/forms/radio/radio.class.js`
7
7
  - **Family** `components/forms/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** none
9
- - **Themeable via** 4 parts, 1 custom property — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 4 parts, 3 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -35,6 +35,12 @@ element (or on `lr-radio` in your own stylesheet) moves the label. Exactly the s
35
35
  purpose, and sideways-inheritance caveat as `--lr-checkbox-label-indent` — see `lr-checkbox` above
36
36
  for the formula to align a sibling hint element.
37
37
 
38
+ `--lr-radio-checked-border-color` (default `var(--lr-color-brand)`) and `--lr-radio-checked-dot-color`
39
+ (default `var(--lr-color-brand)`) recolor `[part='circle']`'s border and `[part='dot']`'s background
40
+ while `checked` — a component-scoped indirection (the same pattern `lr-checkbox`'s own
41
+ `--lr-checkbox-checked-bg`/`-border` pair uses) so a consumer can retint just this control's checked
42
+ ring/dot without hijacking the shared `--lr-color-brand` token everything else reads.
43
+
38
44
  ```html
39
45
  <lr-radio name="format" value="json">JSON</lr-radio>
40
46
  ```
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraResultCard`, also available unregistered from `@aceshooting/lyra-ui/components/agent-tools/result-card/result-card.class.js`
7
7
  - **Family** `components/agent-tools/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** none
9
- - **Themeable via** 5 parts, 2 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 5 parts, 4 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-result-field` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -52,8 +52,14 @@ whenever the slot has no assigned content), `body`.
52
52
 
53
53
  **Themeable custom properties:** `--lr-result-card-compact-header-padding` (default
54
54
  `var(--lr-space-xs)`) — `[part="header"]` block/inline padding while `compact`;
55
- `--lr-result-card-compact-body-padding` (default `var(--lr-space-xs)`) — `[part="body"]` padding
56
- while `compact`; plus shared tokens `--lr-space-xs`/`-s`, `--lr-color-border`/`-surface`/`-text`,
55
+ `--lr-result-card-compact-header-gap` (default `var(--lr-space-xs)`) — gap between
56
+ `[part="header"]`'s title and actions while `compact`, one step tighter than the uncompacted
57
+ `--lr-space-s`; `--lr-result-card-compact-body-padding` (default `var(--lr-space-xs)`) —
58
+ `[part="body"]` padding while `compact`; `--lr-result-card-compact-body-gap` (default
59
+ `var(--lr-space-2xs)`) — gap between `[part="body"]`'s children while `compact`, one step tighter
60
+ than the uncompacted `--lr-space-xs`. The two gap knobs mean `compact` now tightens interior spacing,
61
+ not only the padding box — a compact card no longer keeps full-size gaps inside a shrunken frame.
62
+ Plus shared tokens — `--lr-space-2xs`/`-xs`/`-s`, `--lr-color-border`/`-surface`/`-text`,
57
63
  `--lr-radius`.
58
64
 
59
65
  ### `lr-result-field`
@@ -52,8 +52,14 @@ whenever the slot has no assigned content), `body`.
52
52
 
53
53
  **Themeable custom properties:** `--lr-result-card-compact-header-padding` (default
54
54
  `var(--lr-space-xs)`) — `[part="header"]` block/inline padding while `compact`;
55
- `--lr-result-card-compact-body-padding` (default `var(--lr-space-xs)`) — `[part="body"]` padding
56
- while `compact`; plus shared tokens `--lr-space-xs`/`-s`, `--lr-color-border`/`-surface`/`-text`,
55
+ `--lr-result-card-compact-header-gap` (default `var(--lr-space-xs)`) — gap between
56
+ `[part="header"]`'s title and actions while `compact`, one step tighter than the uncompacted
57
+ `--lr-space-s`; `--lr-result-card-compact-body-padding` (default `var(--lr-space-xs)`) —
58
+ `[part="body"]` padding while `compact`; `--lr-result-card-compact-body-gap` (default
59
+ `var(--lr-space-2xs)`) — gap between `[part="body"]`'s children while `compact`, one step tighter
60
+ than the uncompacted `--lr-space-xs`. The two gap knobs mean `compact` now tightens interior spacing,
61
+ not only the padding box — a compact card no longer keeps full-size gaps inside a shrunken frame.
62
+ Plus shared tokens — `--lr-space-2xs`/`-xs`/`-s`, `--lr-color-border`/`-surface`/`-text`,
57
63
  `--lr-radius`.
58
64
 
59
65
  ### `lr-result-field`
@@ -22,19 +22,24 @@ Large sets window through an internal `lr-virtual-list`.
22
22
  **Properties:**
23
23
  - `chunks: RetrievalChunk[] = []` (attribute: false) — **`RetrievalChunk`, imported from
24
24
  `@aceshooting/lyra-ui/ai`** (`src/ai/types.ts`): `{ id: string; text: string; score: number;
25
- source: DocumentRef; metadata?: Record<string, unknown> }`. The raw, un-deduplicated/unsorted/
26
- ungrouped result set; host-owned. Internally mapped to `lr-chunk-inspector`'s flatter `LyraChunk`
27
- via `source.id sourceId`, `source.name title` (no `page`/`anchor` — `RetrievalChunk` carries
28
- neither, and they're left unset rather than guessed from `metadata`)
25
+ source: DocumentRef; metadata?: Record<string, unknown>; rank?: number; locator?: DocumentLocator;
26
+ queryId?: string; stage?: string; traceId?: string; scores?: RetrievalScoreBreakdown }`. The raw,
27
+ un-deduplicated/unsorted/ungrouped result set; host-owned. Internally mapped to
28
+ `lr-chunk-inspector`'s flatter `LyraChunk` via `source.id sourceId`, `source.name title`, and
29
+ `locator → anchor`; a `page`-kind `locator` additionally supplies the inspector's visible `page`.
30
+ Nothing is ever guessed from `metadata` — a chunk with no `locator` simply leaves `anchor`/`page`
31
+ unset
29
32
  - `selectedIds: string[] = []` (attribute: false) — controlled selection by chunk `id`. The component
30
33
  updates its own copy on toggle *then* emits `lr-select`; reassign to control. An id with no
31
34
  matching chunk is harmless
32
35
  - `selectable: boolean = true` (reflected) — shows a per-row `lr-checkbox`
33
36
  - `dedupe: boolean = true` (reflected) — drops duplicate `id`s, keeping the higher `score`
34
37
  - `sort: 'score' | 'none' = 'score'` — `'score'` sorts descending; `'none'` preserves given order
35
- - `grouping: 'source' | 'none' = 'none'` — `'source'` buckets rows under a header per `source.id`,
36
- each bucket ordered by its own best-scoring chunk, and **always** virtualizes regardless of
37
- `virtualizeAt`
38
+ - `grouping: 'source' | 'none' = 'none'` — `'source'` buckets rows under a header per `source.id`
39
+ (the header text is that source's `name`, or a localized "untitled source" when it has none).
40
+ Buckets appear in order of first appearance in the already-`sort`ed list, so with the default
41
+ `sort="score"` that is best-scoring-chunk order, and with `sort="none"` it is the order the chunks
42
+ arrived in. Grouping **always** virtualizes, regardless of `virtualizeAt`
38
43
  - `presentation: 'compact' | 'expanded' = 'expanded'` — `'expanded'` shows each chunk's full row
39
44
  (score bar, text preview with its own toggle) plus any `metadata`; `'compact'` shows title + score
40
45
  bar only and omits `metadata` entirely
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraScatterChart`, also available unregistered from `@aceshooting/lyra-ui/components/charts/chart/scatter-chart.class.js`
7
7
  - **Family** `components/charts/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** `chart.js`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
9
- - **Themeable via** 7 parts, 6 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 7 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart` (same section below)
11
11
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
12
12
 
@@ -46,7 +46,9 @@ dependency fails to load — see `llms/components/lr-chart.md`).
46
46
 
47
47
  **Themeable custom properties:** `--lr-chart-height`, `--lr-chart-grid-color`,
48
48
  `--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
49
- `--lr-chart-tooltip-text`.
49
+ `--lr-chart-tooltip-text`, `--lr-chart-canvas-hover-outline-width` — all inherited from `LyraChart`,
50
+ identical in meaning and default (see `lr-chart` above); each of the eight variants below reads the
51
+ same set, so one rule retunes them together.
50
52
 
51
53
  **Optional peer deps:** same as `lr-chart` — `chart.js`, plus `chartjs-plugin-zoom` only once
52
54
  `zoom` is set, and `chartjs-plugin-datalabels` only once `data-labels`/`stack-totals` is set.
@@ -6,7 +6,7 @@
6
6
  - **Class** `LyraSchemaViewer`, also available unregistered from `@aceshooting/lyra-ui/components/agent-tools/schema-viewer/schema-viewer.class.js`
7
7
  - **Family** `components/agent-tools/` — see `llms/index.md` for its siblings
8
8
  - **Optional peers** none
9
- - **Themeable via** 13 parts, 5 custom properties — see this component's own `@csspart`/`@cssprop` list below
9
+ - **Themeable via** 13 parts, 7 custom properties — see this component's own `@csspart`/`@cssprop` list below
10
10
  - **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
11
11
 
12
12
  ---
@@ -31,6 +31,18 @@ keywords. `SchemaValidationIssue = { path: string; message: string; severity?: '
31
31
  **CSS parts:** `base`, `tree`, `node`, `node-selected`, `node-trigger`, `name`, `type`, `required`,
32
32
  `description`, `constraints`, `issue`, `limit`, `empty`.
33
33
 
34
+ `[part='issue']` carries `data-severity` and each severity has its own styling: `error` reads the
35
+ danger tokens, `warning` the warning tokens, and `info` its own pair —
36
+ `--lr-schema-viewer-info-border` (default `var(--lr-color-brand)`) and `--lr-schema-viewer-info-bg`
37
+ (default `var(--lr-color-brand-quiet)`). Brand rather than a dedicated info palette because this
38
+ library has no `--lr-color-info-*` token; before these existed an `info` issue rendered identically
39
+ to an `error`, which read as a false alarm. Both are inline `var()` fallbacks at their point of use,
40
+ so either can be set on the element or on any ancestor — `::part(issue)[data-severity='info']` is
41
+ invalid CSS, so this is the only way to recolor one severity without touching the others.
42
+
43
+ **Themeable custom properties:** `--lr-schema-viewer-info-border`, `--lr-schema-viewer-info-bg` (see
44
+ above); otherwise shared tokens only.
45
+
34
46
  Rendering is capped at 500 schema nodes; `limit` reports truncation. Cycles stop at the repeated
35
47
  node rather than recursing. **Slots:** none. **Optional peer deps:** none.
36
48