@aceshooting/lyra-ui 4.0.0 → 4.1.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 (356) hide show
  1. package/README.md +1 -0
  2. package/custom-elements.json +49430 -32305
  3. package/dist/ai/types.contract.d.ts +2 -0
  4. package/dist/ai/types.contract.d.ts.map +1 -0
  5. package/dist/ai/types.contract.js +139 -0
  6. package/dist/ai/types.contract.js.map +1 -0
  7. package/dist/ai/types.d.ts +199 -0
  8. package/dist/ai/types.d.ts.map +1 -0
  9. package/dist/ai/types.js +2 -0
  10. package/dist/ai/types.js.map +1 -0
  11. package/dist/components/agent-run/agent-run.class.d.ts +158 -0
  12. package/dist/components/agent-run/agent-run.class.d.ts.map +1 -0
  13. package/dist/components/agent-run/agent-run.class.js +400 -0
  14. package/dist/components/agent-run/agent-run.class.js.map +1 -0
  15. package/dist/components/agent-run/agent-run.d.ts +2 -0
  16. package/dist/components/agent-run/agent-run.d.ts.map +1 -0
  17. package/dist/components/agent-run/agent-run.js +5 -0
  18. package/dist/components/agent-run/agent-run.js.map +1 -0
  19. package/dist/components/agent-run/agent-run.styles.d.ts +2 -0
  20. package/dist/components/agent-run/agent-run.styles.d.ts.map +1 -0
  21. package/dist/components/agent-run/agent-run.styles.js +143 -0
  22. package/dist/components/agent-run/agent-run.styles.js.map +1 -0
  23. package/dist/components/agent-trace/agent-trace.class.d.ts +111 -0
  24. package/dist/components/agent-trace/agent-trace.class.d.ts.map +1 -0
  25. package/dist/components/agent-trace/agent-trace.class.js +221 -0
  26. package/dist/components/agent-trace/agent-trace.class.js.map +1 -0
  27. package/dist/components/agent-trace/agent-trace.d.ts +5 -0
  28. package/dist/components/agent-trace/agent-trace.d.ts.map +1 -0
  29. package/dist/components/agent-trace/agent-trace.js +8 -0
  30. package/dist/components/agent-trace/agent-trace.js.map +1 -0
  31. package/dist/components/agent-trace/agent-trace.styles.d.ts +2 -0
  32. package/dist/components/agent-trace/agent-trace.styles.d.ts.map +1 -0
  33. package/dist/components/agent-trace/agent-trace.styles.js +61 -0
  34. package/dist/components/agent-trace/agent-trace.styles.js.map +1 -0
  35. package/dist/components/app-rail/app-rail.styles.d.ts.map +1 -1
  36. package/dist/components/app-rail/app-rail.styles.js +4 -0
  37. package/dist/components/app-rail/app-rail.styles.js.map +1 -1
  38. package/dist/components/chat-message/chat-message.class.d.ts +37 -3
  39. package/dist/components/chat-message/chat-message.class.d.ts.map +1 -1
  40. package/dist/components/chat-message/chat-message.class.js +89 -7
  41. package/dist/components/chat-message/chat-message.class.js.map +1 -1
  42. package/dist/components/chat-message/chat-message.styles.d.ts.map +1 -1
  43. package/dist/components/chat-message/chat-message.styles.js +14 -0
  44. package/dist/components/chat-message/chat-message.styles.js.map +1 -1
  45. package/dist/components/context-inspector/context-inspector.class.d.ts +114 -0
  46. package/dist/components/context-inspector/context-inspector.class.d.ts.map +1 -0
  47. package/dist/components/context-inspector/context-inspector.class.js +222 -0
  48. package/dist/components/context-inspector/context-inspector.class.js.map +1 -0
  49. package/dist/components/context-inspector/context-inspector.d.ts +7 -0
  50. package/dist/components/context-inspector/context-inspector.d.ts.map +1 -0
  51. package/dist/components/context-inspector/context-inspector.js +10 -0
  52. package/dist/components/context-inspector/context-inspector.js.map +1 -0
  53. package/dist/components/context-inspector/context-inspector.styles.d.ts +2 -0
  54. package/dist/components/context-inspector/context-inspector.styles.d.ts.map +1 -0
  55. package/dist/components/context-inspector/context-inspector.styles.js +98 -0
  56. package/dist/components/context-inspector/context-inspector.styles.js.map +1 -0
  57. package/dist/components/dashboard-grid/dashboard-grid.class.d.ts +162 -0
  58. package/dist/components/dashboard-grid/dashboard-grid.class.d.ts.map +1 -0
  59. package/dist/components/dashboard-grid/dashboard-grid.class.js +570 -0
  60. package/dist/components/dashboard-grid/dashboard-grid.class.js.map +1 -0
  61. package/dist/components/dashboard-grid/dashboard-grid.d.ts +6 -0
  62. package/dist/components/dashboard-grid/dashboard-grid.d.ts.map +1 -0
  63. package/dist/components/dashboard-grid/dashboard-grid.js +9 -0
  64. package/dist/components/dashboard-grid/dashboard-grid.js.map +1 -0
  65. package/dist/components/dashboard-grid/dashboard-grid.styles.d.ts +2 -0
  66. package/dist/components/dashboard-grid/dashboard-grid.styles.d.ts.map +1 -0
  67. package/dist/components/dashboard-grid/dashboard-grid.styles.js +86 -0
  68. package/dist/components/dashboard-grid/dashboard-grid.styles.js.map +1 -0
  69. package/dist/components/dashboard-grid/layout.d.ts +103 -0
  70. package/dist/components/dashboard-grid/layout.d.ts.map +1 -0
  71. package/dist/components/dashboard-grid/layout.js +94 -0
  72. package/dist/components/dashboard-grid/layout.js.map +1 -0
  73. package/dist/components/date-picker/date-input.class.d.ts +8 -0
  74. package/dist/components/date-picker/date-input.class.d.ts.map +1 -1
  75. package/dist/components/date-picker/date-input.class.js +10 -0
  76. package/dist/components/date-picker/date-input.class.js.map +1 -1
  77. package/dist/components/date-picker/date-input.styles.d.ts.map +1 -1
  78. package/dist/components/date-picker/date-input.styles.js +39 -2
  79. package/dist/components/date-picker/date-input.styles.js.map +1 -1
  80. package/dist/components/document-compare/document-compare.class.d.ts +131 -0
  81. package/dist/components/document-compare/document-compare.class.d.ts.map +1 -0
  82. package/dist/components/document-compare/document-compare.class.js +214 -0
  83. package/dist/components/document-compare/document-compare.class.js.map +1 -0
  84. package/dist/components/document-compare/document-compare.d.ts +2 -0
  85. package/dist/components/document-compare/document-compare.d.ts.map +1 -0
  86. package/dist/components/document-compare/document-compare.js +5 -0
  87. package/dist/components/document-compare/document-compare.js.map +1 -0
  88. package/dist/components/document-compare/document-compare.styles.d.ts +2 -0
  89. package/dist/components/document-compare/document-compare.styles.d.ts.map +1 -0
  90. package/dist/components/document-compare/document-compare.styles.js +65 -0
  91. package/dist/components/document-compare/document-compare.styles.js.map +1 -0
  92. package/dist/components/document-library/document-library.class.d.ts +154 -0
  93. package/dist/components/document-library/document-library.class.d.ts.map +1 -0
  94. package/dist/components/document-library/document-library.class.js +399 -0
  95. package/dist/components/document-library/document-library.class.js.map +1 -0
  96. package/dist/components/document-library/document-library.d.ts +9 -0
  97. package/dist/components/document-library/document-library.d.ts.map +1 -0
  98. package/dist/components/document-library/document-library.js +12 -0
  99. package/dist/components/document-library/document-library.js.map +1 -0
  100. package/dist/components/document-library/document-library.styles.d.ts +2 -0
  101. package/dist/components/document-library/document-library.styles.d.ts.map +1 -0
  102. package/dist/components/document-library/document-library.styles.js +77 -0
  103. package/dist/components/document-library/document-library.styles.js.map +1 -0
  104. package/dist/components/drilldown-panel/drilldown-panel.class.d.ts +148 -0
  105. package/dist/components/drilldown-panel/drilldown-panel.class.d.ts.map +1 -0
  106. package/dist/components/drilldown-panel/drilldown-panel.class.js +241 -0
  107. package/dist/components/drilldown-panel/drilldown-panel.class.js.map +1 -0
  108. package/dist/components/drilldown-panel/drilldown-panel.d.ts +9 -0
  109. package/dist/components/drilldown-panel/drilldown-panel.d.ts.map +1 -0
  110. package/dist/components/drilldown-panel/drilldown-panel.js +12 -0
  111. package/dist/components/drilldown-panel/drilldown-panel.js.map +1 -0
  112. package/dist/components/drilldown-panel/drilldown-panel.styles.d.ts +2 -0
  113. package/dist/components/drilldown-panel/drilldown-panel.styles.d.ts.map +1 -0
  114. package/dist/components/drilldown-panel/drilldown-panel.styles.js +49 -0
  115. package/dist/components/drilldown-panel/drilldown-panel.styles.js.map +1 -0
  116. package/dist/components/entity-dossier/entity-dossier.class.d.ts +132 -0
  117. package/dist/components/entity-dossier/entity-dossier.class.d.ts.map +1 -0
  118. package/dist/components/entity-dossier/entity-dossier.class.js +187 -0
  119. package/dist/components/entity-dossier/entity-dossier.class.js.map +1 -0
  120. package/dist/components/entity-dossier/entity-dossier.d.ts +9 -0
  121. package/dist/components/entity-dossier/entity-dossier.d.ts.map +1 -0
  122. package/dist/components/entity-dossier/entity-dossier.js +12 -0
  123. package/dist/components/entity-dossier/entity-dossier.js.map +1 -0
  124. package/dist/components/entity-dossier/entity-dossier.styles.d.ts +2 -0
  125. package/dist/components/entity-dossier/entity-dossier.styles.d.ts.map +1 -0
  126. package/dist/components/entity-dossier/entity-dossier.styles.js +30 -0
  127. package/dist/components/entity-dossier/entity-dossier.styles.js.map +1 -0
  128. package/dist/components/eval-dataset/eval-dataset.class.d.ts +145 -0
  129. package/dist/components/eval-dataset/eval-dataset.class.d.ts.map +1 -0
  130. package/dist/components/eval-dataset/eval-dataset.class.js +307 -0
  131. package/dist/components/eval-dataset/eval-dataset.class.js.map +1 -0
  132. package/dist/components/eval-dataset/eval-dataset.d.ts +7 -0
  133. package/dist/components/eval-dataset/eval-dataset.d.ts.map +1 -0
  134. package/dist/components/eval-dataset/eval-dataset.js +10 -0
  135. package/dist/components/eval-dataset/eval-dataset.js.map +1 -0
  136. package/dist/components/eval-dataset/eval-dataset.styles.d.ts +2 -0
  137. package/dist/components/eval-dataset/eval-dataset.styles.d.ts.map +1 -0
  138. package/dist/components/eval-dataset/eval-dataset.styles.js +76 -0
  139. package/dist/components/eval-dataset/eval-dataset.styles.js.map +1 -0
  140. package/dist/components/eval-result/eval-result.class.d.ts +115 -0
  141. package/dist/components/eval-result/eval-result.class.d.ts.map +1 -0
  142. package/dist/components/eval-result/eval-result.class.js +165 -0
  143. package/dist/components/eval-result/eval-result.class.js.map +1 -0
  144. package/dist/components/eval-result/eval-result.d.ts +5 -0
  145. package/dist/components/eval-result/eval-result.d.ts.map +1 -0
  146. package/dist/components/eval-result/eval-result.js +8 -0
  147. package/dist/components/eval-result/eval-result.js.map +1 -0
  148. package/dist/components/eval-result/eval-result.styles.d.ts +2 -0
  149. package/dist/components/eval-result/eval-result.styles.d.ts.map +1 -0
  150. package/dist/components/eval-result/eval-result.styles.js +47 -0
  151. package/dist/components/eval-result/eval-result.styles.js.map +1 -0
  152. package/dist/components/evaluation-run/evaluation-run.class.d.ts +168 -0
  153. package/dist/components/evaluation-run/evaluation-run.class.d.ts.map +1 -0
  154. package/dist/components/evaluation-run/evaluation-run.class.js +329 -0
  155. package/dist/components/evaluation-run/evaluation-run.class.js.map +1 -0
  156. package/dist/components/evaluation-run/evaluation-run.d.ts +2 -0
  157. package/dist/components/evaluation-run/evaluation-run.d.ts.map +1 -0
  158. package/dist/components/evaluation-run/evaluation-run.js +5 -0
  159. package/dist/components/evaluation-run/evaluation-run.js.map +1 -0
  160. package/dist/components/evaluation-run/evaluation-run.styles.d.ts +2 -0
  161. package/dist/components/evaluation-run/evaluation-run.styles.d.ts.map +1 -0
  162. package/dist/components/evaluation-run/evaluation-run.styles.js +73 -0
  163. package/dist/components/evaluation-run/evaluation-run.styles.js.map +1 -0
  164. package/dist/components/filter-bar/filter-bar.class.d.ts +200 -0
  165. package/dist/components/filter-bar/filter-bar.class.d.ts.map +1 -0
  166. package/dist/components/filter-bar/filter-bar.class.js +322 -0
  167. package/dist/components/filter-bar/filter-bar.class.js.map +1 -0
  168. package/dist/components/filter-bar/filter-bar.d.ts +10 -0
  169. package/dist/components/filter-bar/filter-bar.d.ts.map +1 -0
  170. package/dist/components/filter-bar/filter-bar.js +13 -0
  171. package/dist/components/filter-bar/filter-bar.js.map +1 -0
  172. package/dist/components/filter-bar/filter-bar.styles.d.ts +2 -0
  173. package/dist/components/filter-bar/filter-bar.styles.d.ts.map +1 -0
  174. package/dist/components/filter-bar/filter-bar.styles.js +37 -0
  175. package/dist/components/filter-bar/filter-bar.styles.js.map +1 -0
  176. package/dist/components/graph-query-builder/graph-query-builder.class.d.ts +242 -0
  177. package/dist/components/graph-query-builder/graph-query-builder.class.d.ts.map +1 -0
  178. package/dist/components/graph-query-builder/graph-query-builder.class.js +511 -0
  179. package/dist/components/graph-query-builder/graph-query-builder.class.js.map +1 -0
  180. package/dist/components/graph-query-builder/graph-query-builder.d.ts +7 -0
  181. package/dist/components/graph-query-builder/graph-query-builder.d.ts.map +1 -0
  182. package/dist/components/graph-query-builder/graph-query-builder.js +10 -0
  183. package/dist/components/graph-query-builder/graph-query-builder.js.map +1 -0
  184. package/dist/components/graph-query-builder/graph-query-builder.styles.d.ts +2 -0
  185. package/dist/components/graph-query-builder/graph-query-builder.styles.d.ts.map +1 -0
  186. package/dist/components/graph-query-builder/graph-query-builder.styles.js +170 -0
  187. package/dist/components/graph-query-builder/graph-query-builder.styles.js.map +1 -0
  188. package/dist/components/grounding-summary/grounding-summary.class.d.ts +80 -0
  189. package/dist/components/grounding-summary/grounding-summary.class.d.ts.map +1 -0
  190. package/dist/components/grounding-summary/grounding-summary.class.js +182 -0
  191. package/dist/components/grounding-summary/grounding-summary.class.js.map +1 -0
  192. package/dist/components/grounding-summary/grounding-summary.d.ts +5 -0
  193. package/dist/components/grounding-summary/grounding-summary.d.ts.map +1 -0
  194. package/dist/components/grounding-summary/grounding-summary.js +8 -0
  195. package/dist/components/grounding-summary/grounding-summary.js.map +1 -0
  196. package/dist/components/grounding-summary/grounding-summary.styles.d.ts +2 -0
  197. package/dist/components/grounding-summary/grounding-summary.styles.d.ts.map +1 -0
  198. package/dist/components/grounding-summary/grounding-summary.styles.js +88 -0
  199. package/dist/components/grounding-summary/grounding-summary.styles.js.map +1 -0
  200. package/dist/components/ingestion-queue/ingestion-queue.class.d.ts +125 -0
  201. package/dist/components/ingestion-queue/ingestion-queue.class.d.ts.map +1 -0
  202. package/dist/components/ingestion-queue/ingestion-queue.class.js +276 -0
  203. package/dist/components/ingestion-queue/ingestion-queue.class.js.map +1 -0
  204. package/dist/components/ingestion-queue/ingestion-queue.d.ts +2 -0
  205. package/dist/components/ingestion-queue/ingestion-queue.d.ts.map +1 -0
  206. package/dist/components/ingestion-queue/ingestion-queue.js +5 -0
  207. package/dist/components/ingestion-queue/ingestion-queue.js.map +1 -0
  208. package/dist/components/ingestion-queue/ingestion-queue.styles.d.ts +2 -0
  209. package/dist/components/ingestion-queue/ingestion-queue.styles.d.ts.map +1 -0
  210. package/dist/components/ingestion-queue/ingestion-queue.styles.js +138 -0
  211. package/dist/components/ingestion-queue/ingestion-queue.styles.js.map +1 -0
  212. package/dist/components/knowledge-base/knowledge-base.class.d.ts +136 -0
  213. package/dist/components/knowledge-base/knowledge-base.class.d.ts.map +1 -0
  214. package/dist/components/knowledge-base/knowledge-base.class.js +360 -0
  215. package/dist/components/knowledge-base/knowledge-base.class.js.map +1 -0
  216. package/dist/components/knowledge-base/knowledge-base.d.ts +7 -0
  217. package/dist/components/knowledge-base/knowledge-base.d.ts.map +1 -0
  218. package/dist/components/knowledge-base/knowledge-base.js +10 -0
  219. package/dist/components/knowledge-base/knowledge-base.js.map +1 -0
  220. package/dist/components/knowledge-base/knowledge-base.styles.d.ts +2 -0
  221. package/dist/components/knowledge-base/knowledge-base.styles.d.ts.map +1 -0
  222. package/dist/components/knowledge-base/knowledge-base.styles.js +94 -0
  223. package/dist/components/knowledge-base/knowledge-base.styles.js.map +1 -0
  224. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +196 -0
  225. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts.map +1 -0
  226. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.js +477 -0
  227. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.js.map +1 -0
  228. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.d.ts +11 -0
  229. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.d.ts.map +1 -0
  230. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.js +14 -0
  231. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.js.map +1 -0
  232. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.d.ts +2 -0
  233. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.d.ts.map +1 -0
  234. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.js +76 -0
  235. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.js.map +1 -0
  236. package/dist/components/memory-panel/memory-panel.class.d.ts +146 -0
  237. package/dist/components/memory-panel/memory-panel.class.d.ts.map +1 -0
  238. package/dist/components/memory-panel/memory-panel.class.js +303 -0
  239. package/dist/components/memory-panel/memory-panel.class.js.map +1 -0
  240. package/dist/components/memory-panel/memory-panel.d.ts +5 -0
  241. package/dist/components/memory-panel/memory-panel.d.ts.map +1 -0
  242. package/dist/components/memory-panel/memory-panel.js +8 -0
  243. package/dist/components/memory-panel/memory-panel.js.map +1 -0
  244. package/dist/components/memory-panel/memory-panel.styles.d.ts +2 -0
  245. package/dist/components/memory-panel/memory-panel.styles.d.ts.map +1 -0
  246. package/dist/components/memory-panel/memory-panel.styles.js +139 -0
  247. package/dist/components/memory-panel/memory-panel.styles.js.map +1 -0
  248. package/dist/components/overlay/popover.class.d.ts +39 -0
  249. package/dist/components/overlay/popover.class.d.ts.map +1 -1
  250. package/dist/components/overlay/popover.class.js +53 -3
  251. package/dist/components/overlay/popover.class.js.map +1 -1
  252. package/dist/components/overlay/tooltip.class.d.ts +43 -0
  253. package/dist/components/overlay/tooltip.class.d.ts.map +1 -1
  254. package/dist/components/overlay/tooltip.class.js +66 -4
  255. package/dist/components/overlay/tooltip.class.js.map +1 -1
  256. package/dist/components/policy-summary/policy-summary.class.d.ts +76 -0
  257. package/dist/components/policy-summary/policy-summary.class.d.ts.map +1 -0
  258. package/dist/components/policy-summary/policy-summary.class.js +125 -0
  259. package/dist/components/policy-summary/policy-summary.class.js.map +1 -0
  260. package/dist/components/policy-summary/policy-summary.d.ts +6 -0
  261. package/dist/components/policy-summary/policy-summary.d.ts.map +1 -0
  262. package/dist/components/policy-summary/policy-summary.js +9 -0
  263. package/dist/components/policy-summary/policy-summary.js.map +1 -0
  264. package/dist/components/policy-summary/policy-summary.styles.d.ts +2 -0
  265. package/dist/components/policy-summary/policy-summary.styles.d.ts.map +1 -0
  266. package/dist/components/policy-summary/policy-summary.styles.js +68 -0
  267. package/dist/components/policy-summary/policy-summary.styles.js.map +1 -0
  268. package/dist/components/query-builder/query-builder.class.d.ts +180 -0
  269. package/dist/components/query-builder/query-builder.class.d.ts.map +1 -0
  270. package/dist/components/query-builder/query-builder.class.js +415 -0
  271. package/dist/components/query-builder/query-builder.class.js.map +1 -0
  272. package/dist/components/query-builder/query-builder.d.ts +9 -0
  273. package/dist/components/query-builder/query-builder.d.ts.map +1 -0
  274. package/dist/components/query-builder/query-builder.js +12 -0
  275. package/dist/components/query-builder/query-builder.js.map +1 -0
  276. package/dist/components/query-builder/query-builder.styles.d.ts +2 -0
  277. package/dist/components/query-builder/query-builder.styles.d.ts.map +1 -0
  278. package/dist/components/query-builder/query-builder.styles.js +77 -0
  279. package/dist/components/query-builder/query-builder.styles.js.map +1 -0
  280. package/dist/components/retrieval-results/retrieval-results.class.d.ts +151 -0
  281. package/dist/components/retrieval-results/retrieval-results.class.d.ts.map +1 -0
  282. package/dist/components/retrieval-results/retrieval-results.class.js +340 -0
  283. package/dist/components/retrieval-results/retrieval-results.class.js.map +1 -0
  284. package/dist/components/retrieval-results/retrieval-results.d.ts +7 -0
  285. package/dist/components/retrieval-results/retrieval-results.d.ts.map +1 -0
  286. package/dist/components/retrieval-results/retrieval-results.js +10 -0
  287. package/dist/components/retrieval-results/retrieval-results.js.map +1 -0
  288. package/dist/components/retrieval-results/retrieval-results.styles.d.ts +2 -0
  289. package/dist/components/retrieval-results/retrieval-results.styles.d.ts.map +1 -0
  290. package/dist/components/retrieval-results/retrieval-results.styles.js +94 -0
  291. package/dist/components/retrieval-results/retrieval-results.styles.js.map +1 -0
  292. package/dist/components/retrieval-search/retrieval-search.class.d.ts +127 -0
  293. package/dist/components/retrieval-search/retrieval-search.class.d.ts.map +1 -0
  294. package/dist/components/retrieval-search/retrieval-search.class.js +266 -0
  295. package/dist/components/retrieval-search/retrieval-search.class.js.map +1 -0
  296. package/dist/components/retrieval-search/retrieval-search.d.ts +8 -0
  297. package/dist/components/retrieval-search/retrieval-search.d.ts.map +1 -0
  298. package/dist/components/retrieval-search/retrieval-search.js +11 -0
  299. package/dist/components/retrieval-search/retrieval-search.js.map +1 -0
  300. package/dist/components/retrieval-search/retrieval-search.styles.d.ts +2 -0
  301. package/dist/components/retrieval-search/retrieval-search.styles.d.ts.map +1 -0
  302. package/dist/components/retrieval-search/retrieval-search.styles.js +75 -0
  303. package/dist/components/retrieval-search/retrieval-search.styles.js.map +1 -0
  304. package/dist/components/retrieval-trace/retrieval-trace.class.d.ts +101 -0
  305. package/dist/components/retrieval-trace/retrieval-trace.class.d.ts.map +1 -0
  306. package/dist/components/retrieval-trace/retrieval-trace.class.js +215 -0
  307. package/dist/components/retrieval-trace/retrieval-trace.class.js.map +1 -0
  308. package/dist/components/retrieval-trace/retrieval-trace.d.ts +4 -0
  309. package/dist/components/retrieval-trace/retrieval-trace.d.ts.map +1 -0
  310. package/dist/components/retrieval-trace/retrieval-trace.js +7 -0
  311. package/dist/components/retrieval-trace/retrieval-trace.js.map +1 -0
  312. package/dist/components/retrieval-trace/retrieval-trace.styles.d.ts +2 -0
  313. package/dist/components/retrieval-trace/retrieval-trace.styles.d.ts.map +1 -0
  314. package/dist/components/retrieval-trace/retrieval-trace.styles.js +116 -0
  315. package/dist/components/retrieval-trace/retrieval-trace.styles.js.map +1 -0
  316. package/dist/components/thread-list/thread-list.class.d.ts +19 -1
  317. package/dist/components/thread-list/thread-list.class.d.ts.map +1 -1
  318. package/dist/components/thread-list/thread-list.class.js +9 -2
  319. package/dist/components/thread-list/thread-list.class.js.map +1 -1
  320. package/dist/components/tool-timeline/tool-timeline.class.d.ts +140 -0
  321. package/dist/components/tool-timeline/tool-timeline.class.d.ts.map +1 -0
  322. package/dist/components/tool-timeline/tool-timeline.class.js +293 -0
  323. package/dist/components/tool-timeline/tool-timeline.class.js.map +1 -0
  324. package/dist/components/tool-timeline/tool-timeline.d.ts +2 -0
  325. package/dist/components/tool-timeline/tool-timeline.d.ts.map +1 -0
  326. package/dist/components/tool-timeline/tool-timeline.js +5 -0
  327. package/dist/components/tool-timeline/tool-timeline.js.map +1 -0
  328. package/dist/components/tool-timeline/tool-timeline.styles.d.ts +2 -0
  329. package/dist/components/tool-timeline/tool-timeline.styles.d.ts.map +1 -0
  330. package/dist/components/tool-timeline/tool-timeline.styles.js +148 -0
  331. package/dist/components/tool-timeline/tool-timeline.styles.js.map +1 -0
  332. package/dist/internal/localization.d.ts +1 -1
  333. package/dist/internal/localization.d.ts.map +1 -1
  334. package/dist/internal/localization.js +224 -0
  335. package/dist/internal/localization.js.map +1 -1
  336. package/dist/internal/positioner.d.ts +28 -1
  337. package/dist/internal/positioner.d.ts.map +1 -1
  338. package/dist/internal/positioner.js +12 -1
  339. package/dist/internal/positioner.js.map +1 -1
  340. package/dist/internal/root-registration-allowlist.d.ts +2 -2
  341. package/dist/internal/root-registration-allowlist.d.ts.map +1 -1
  342. package/dist/internal/root-registration-allowlist.js +24 -0
  343. package/dist/internal/root-registration-allowlist.js.map +1 -1
  344. package/dist/internal/tokens.styles.d.ts.map +1 -1
  345. package/dist/internal/tokens.styles.js +2 -0
  346. package/dist/internal/tokens.styles.js.map +1 -1
  347. package/dist/lyra.d.ts +48 -1
  348. package/dist/lyra.d.ts.map +1 -1
  349. package/dist/lyra.js +47 -0
  350. package/dist/lyra.js.map +1 -1
  351. package/llms-full.txt +462 -9
  352. package/llms.txt +7 -0
  353. package/package.json +50 -1
  354. package/vscode-css-data.json +21 -0
  355. package/vscode-html-data.json +1103 -47
  356. package/web-types.json +1131 -47
@@ -0,0 +1,127 @@
1
+ import { type TemplateResult } from 'lit';
2
+ import { LyraElement } from '../../internal/lyra-element.js';
3
+ import '../input/input.class.js';
4
+ import '../segmented/segmented.class.js';
5
+ import '../chip/chip.class.js';
6
+ import '../chip/chip-group.class.js';
7
+ import '../spinner/spinner.class.js';
8
+ import '../empty/empty.class.js';
9
+ import type { RetrievalQuery, CancelEventDetail } from '../../ai/types.js';
10
+ /** The three retrieval modes `RetrievalQuery.mode` supports, reused verbatim rather than
11
+ * redefining the union -- see `src/ai/types.ts`'s own header for why. */
12
+ export type LyraRetrievalMode = RetrievalQuery['mode'];
13
+ /** `detail` for `lr-filters-change` -- the complete, already-updated `filters`/`scope` state
14
+ * after a chip removal, mirroring `<lr-source-picker>`'s `lr-sources-change` "full next state"
15
+ * convention rather than a single-item delta. */
16
+ export interface RetrievalFiltersChangeDetail {
17
+ filters: Record<string, unknown>;
18
+ scope: string[];
19
+ }
20
+ export interface LyraRetrievalSearchEventMap {
21
+ 'lr-search': CustomEvent<RetrievalQuery>;
22
+ 'lr-cancel': CustomEvent<CancelEventDetail>;
23
+ 'lr-filters-change': CustomEvent<RetrievalFiltersChangeDetail>;
24
+ }
25
+ /**
26
+ * `<lr-retrieval-search>` -- the query bar for a retrieval/RAG surface: query text, an active-
27
+ * filter/scope chip row, a vector/keyword/hybrid mode selector, and loading/error/empty status
28
+ * feedback. Consumes `RetrievalQuery` (`src/ai/types.ts`) as the shape emitted on submit.
29
+ *
30
+ * Fully controlled, like every other Lyra input: `query`/`mode`/`filters`/`scope` are host-owned
31
+ * properties. This component never performs retrieval itself -- it only emits `lr-search`; the
32
+ * host owns the actual fetch and toggles `loading` around it. Because this component has no way
33
+ * to know when a request resolves (only `loading`, set from outside), submitting again (Enter, or
34
+ * clicking the button) while `loading` is already `true` is treated as **superseding** the
35
+ * in-flight request: `lr-cancel` fires immediately before the new `lr-search`. The submit button
36
+ * itself doubles as an explicit Cancel affordance while `loading` -- clicking it only emits
37
+ * `lr-cancel`, without resubmitting, the same "just stop" action `<lr-chat-composer>`'s Stop
38
+ * button offers for its own `stoppable` busy state.
39
+ *
40
+ * Composes `<lr-input type="search">` for the query field, `<lr-segmented>` for the mode
41
+ * selector (the same small-closed-set-choice-in-a-toolbar role it already fills, sized to sit
42
+ * flush beside `<lr-input>`), `<lr-chip>`/`<lr-chip-group>` for removable active-filter/scope
43
+ * chips, `<lr-spinner>` for the loading state, and `<lr-empty>` (compact) for the empty state.
44
+ * `filters`/`scope` chip removal updates this component's own copy first, then emits
45
+ * `lr-filters-change` with the complete next state -- the same "update, then emit; reassign to
46
+ * control" round-trip `<lr-source-picker>`'s `selectedIds` already establishes. `empty` is a
47
+ * host-driven flag (the last completed search returned zero results); this component holds no
48
+ * results data of its own -- see `<lr-retrieval-results>` for rendering the actual chunk list.
49
+ *
50
+ * @customElement lr-retrieval-search
51
+ * @event lr-search - The query was submitted (Enter in the query field, or the submit button
52
+ * while not `loading`). `detail`: the full `RetrievalQuery` (`{ text, mode, filters, scope }`).
53
+ * @event lr-cancel - The in-flight request should be cancelled: either the user clicked the
54
+ * button while `loading` (`detail: {}`), or a new submission superseded the in-flight one before
55
+ * it resolved (`detail: { reason: 'superseded' }`, fired immediately before the new `lr-search`).
56
+ * @event lr-filters-change - A `filters`/`scope` chip's remove button was activated. `detail`: the
57
+ * complete updated `{ filters, scope }` state.
58
+ * @csspart base - The `role="search"` root landmark.
59
+ * @csspart row - The row holding the query field, mode selector, and submit/cancel button.
60
+ * @csspart query - The query `<lr-input type="search">`.
61
+ * @csspart mode - The vector/keyword/hybrid `<lr-segmented>`.
62
+ * @csspart submit - The submit/cancel `<button>`. Reads "Search" while idle, "Cancel" while
63
+ * `loading`.
64
+ * @csspart filters - The active-filter/scope `<lr-chip-group>`. Omitted entirely when both
65
+ * `filters` and `scope` are empty.
66
+ * @csspart spinner - The busy `<lr-spinner>`, shown only while `loading`.
67
+ * @csspart error - The `role="alert"` error message, shown only when `errorText` is non-empty and
68
+ * not `loading`.
69
+ * @csspart empty - The compact `<lr-empty>`, shown only when `empty` is `true` and neither
70
+ * `loading` nor `errorText` is set.
71
+ */
72
+ export declare class LyraRetrievalSearch extends LyraElement<LyraRetrievalSearchEventMap> {
73
+ static styles: import("lit").CSSResultGroup[];
74
+ /** The current query text. Controlled -- the internal `lr-input` updates this optimistically as
75
+ * the user types (mirroring every other Lyra input's controlled-value convention), and a host
76
+ * reassignment always wins. */
77
+ query: string;
78
+ /** Retrieval mode. Defaults to `'hybrid'`, the common default for a search bar combining both
79
+ * vector and keyword retrieval. */
80
+ mode: LyraRetrievalMode;
81
+ /** Arbitrary metadata filters, rendered as removable `"{key}: {value}"` chips. Controlled --
82
+ * reassign to change what's shown; see the class doc's "update, then emit" round-trip. */
83
+ filters: Record<string, unknown>;
84
+ /** Source-scope ids/labels this query is restricted to, rendered as removable chips alongside
85
+ * `filters`. Same controlled round-trip as `filters`. */
86
+ scope: string[];
87
+ /** Host-driven busy flag. This component never performs retrieval itself and has no way to know
88
+ * when a request resolves, so the host toggles this explicitly around its own fetch -- see the
89
+ * class doc for the resulting submit/cancel/supersede behavior. */
90
+ loading: boolean;
91
+ /** Host-supplied error message from the last failed search, shown verbatim (caller-owned text,
92
+ * not localized) in a `role="alert"` region. Empty string (the default) shows nothing. */
93
+ errorText: string;
94
+ /** Host-driven flag: the last completed search returned zero results. Renders a compact
95
+ * `<lr-empty>` beneath the search row. Never inferred by this component itself -- see the
96
+ * class doc; it holds no results data of its own. */
97
+ empty: boolean;
98
+ /** Placeholder for the query field. Empty string (the default) falls back to the localized
99
+ * generic "Search" placeholder, which also becomes that field's accessible name (mirroring
100
+ * `<lr-input>`'s own placeholder-as-label fallback). */
101
+ placeholder: string;
102
+ /** Accessible name for the `role="search"` landmark. Falls back to the localized default; a
103
+ * host `aria-label` (via `accessibleLabel`) wins over both. */
104
+ label: string;
105
+ /** Overrides the computed accessible name for the `role="search"` landmark. Wins over `label`
106
+ * and the localized default. Attribute-reflects from a host-level `aria-label`. */
107
+ accessibleLabel: string | null;
108
+ private modeItems;
109
+ private formatFilterValue;
110
+ private buildQuery;
111
+ private submit;
112
+ private cancel;
113
+ private emitFiltersChange;
114
+ private removeScope;
115
+ private removeFilter;
116
+ private onQueryInput;
117
+ private onQueryKeyDown;
118
+ private onModeChange;
119
+ private onSubmitClick;
120
+ render(): TemplateResult;
121
+ }
122
+ declare global {
123
+ interface HTMLElementTagNameMap {
124
+ 'lr-retrieval-search': LyraRetrievalSearch;
125
+ }
126
+ }
127
+ //# sourceMappingURL=retrieval-search.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.class.d.ts","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE7D,OAAO,yBAAyB,CAAC;AACjC,OAAO,iCAAiC,CAAC;AACzC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3E;0EAC0E;AAC1E,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAEvD;;kDAEkD;AAClD,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;IACzC,WAAW,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC5C,mBAAmB,EAAE,WAAW,CAAC,4BAA4B,CAAC,CAAC;CAChE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,qBAAa,mBAAoB,SAAQ,WAAW,CAAC,2BAA2B,CAAC;IAC/E,MAAM,CAAC,MAAM,iCAAgC;IAE7C;;oCAEgC;IACpB,KAAK,SAAM;IAEvB;wCACoC;IACxB,IAAI,EAAE,iBAAiB,CAAY;IAE/C;+FAC2F;IAC3D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IAEtE;8DAC0D;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAM;IAErD;;wEAEoE;IACxB,OAAO,UAAS;IAE5D;+FAC2F;IACpD,SAAS,SAAM;IAEtD;;0DAEsD;IACV,KAAK,UAAS;IAE1D;;6DAEyD;IAC7C,WAAW,SAAM;IAE7B;oEACgE;IACpD,KAAK,SAAM;IAEvB;wFACoF;IAC7C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7E,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,cAAc,CASpB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,aAAa,CAMnB;IAEF,MAAM,IAAI,cAAc,CA+DvB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,qBAAqB,EAAE,mBAAmB,CAAC;KAC5C;CACF"}
@@ -0,0 +1,266 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { html, nothing } from 'lit';
8
+ import { property } from 'lit/decorators.js';
9
+ import { LyraElement } from '../../internal/lyra-element.js';
10
+ import '../input/input.class.js';
11
+ import '../segmented/segmented.class.js';
12
+ import '../chip/chip.class.js';
13
+ import '../chip/chip-group.class.js';
14
+ import '../spinner/spinner.class.js';
15
+ import '../empty/empty.class.js';
16
+ import { styles } from './retrieval-search.styles.js';
17
+ /**
18
+ * `<lr-retrieval-search>` -- the query bar for a retrieval/RAG surface: query text, an active-
19
+ * filter/scope chip row, a vector/keyword/hybrid mode selector, and loading/error/empty status
20
+ * feedback. Consumes `RetrievalQuery` (`src/ai/types.ts`) as the shape emitted on submit.
21
+ *
22
+ * Fully controlled, like every other Lyra input: `query`/`mode`/`filters`/`scope` are host-owned
23
+ * properties. This component never performs retrieval itself -- it only emits `lr-search`; the
24
+ * host owns the actual fetch and toggles `loading` around it. Because this component has no way
25
+ * to know when a request resolves (only `loading`, set from outside), submitting again (Enter, or
26
+ * clicking the button) while `loading` is already `true` is treated as **superseding** the
27
+ * in-flight request: `lr-cancel` fires immediately before the new `lr-search`. The submit button
28
+ * itself doubles as an explicit Cancel affordance while `loading` -- clicking it only emits
29
+ * `lr-cancel`, without resubmitting, the same "just stop" action `<lr-chat-composer>`'s Stop
30
+ * button offers for its own `stoppable` busy state.
31
+ *
32
+ * Composes `<lr-input type="search">` for the query field, `<lr-segmented>` for the mode
33
+ * selector (the same small-closed-set-choice-in-a-toolbar role it already fills, sized to sit
34
+ * flush beside `<lr-input>`), `<lr-chip>`/`<lr-chip-group>` for removable active-filter/scope
35
+ * chips, `<lr-spinner>` for the loading state, and `<lr-empty>` (compact) for the empty state.
36
+ * `filters`/`scope` chip removal updates this component's own copy first, then emits
37
+ * `lr-filters-change` with the complete next state -- the same "update, then emit; reassign to
38
+ * control" round-trip `<lr-source-picker>`'s `selectedIds` already establishes. `empty` is a
39
+ * host-driven flag (the last completed search returned zero results); this component holds no
40
+ * results data of its own -- see `<lr-retrieval-results>` for rendering the actual chunk list.
41
+ *
42
+ * @customElement lr-retrieval-search
43
+ * @event lr-search - The query was submitted (Enter in the query field, or the submit button
44
+ * while not `loading`). `detail`: the full `RetrievalQuery` (`{ text, mode, filters, scope }`).
45
+ * @event lr-cancel - The in-flight request should be cancelled: either the user clicked the
46
+ * button while `loading` (`detail: {}`), or a new submission superseded the in-flight one before
47
+ * it resolved (`detail: { reason: 'superseded' }`, fired immediately before the new `lr-search`).
48
+ * @event lr-filters-change - A `filters`/`scope` chip's remove button was activated. `detail`: the
49
+ * complete updated `{ filters, scope }` state.
50
+ * @csspart base - The `role="search"` root landmark.
51
+ * @csspart row - The row holding the query field, mode selector, and submit/cancel button.
52
+ * @csspart query - The query `<lr-input type="search">`.
53
+ * @csspart mode - The vector/keyword/hybrid `<lr-segmented>`.
54
+ * @csspart submit - The submit/cancel `<button>`. Reads "Search" while idle, "Cancel" while
55
+ * `loading`.
56
+ * @csspart filters - The active-filter/scope `<lr-chip-group>`. Omitted entirely when both
57
+ * `filters` and `scope` are empty.
58
+ * @csspart spinner - The busy `<lr-spinner>`, shown only while `loading`.
59
+ * @csspart error - The `role="alert"` error message, shown only when `errorText` is non-empty and
60
+ * not `loading`.
61
+ * @csspart empty - The compact `<lr-empty>`, shown only when `empty` is `true` and neither
62
+ * `loading` nor `errorText` is set.
63
+ */
64
+ export class LyraRetrievalSearch extends LyraElement {
65
+ constructor() {
66
+ super(...arguments);
67
+ /** The current query text. Controlled -- the internal `lr-input` updates this optimistically as
68
+ * the user types (mirroring every other Lyra input's controlled-value convention), and a host
69
+ * reassignment always wins. */
70
+ this.query = '';
71
+ /** Retrieval mode. Defaults to `'hybrid'`, the common default for a search bar combining both
72
+ * vector and keyword retrieval. */
73
+ this.mode = 'hybrid';
74
+ /** Arbitrary metadata filters, rendered as removable `"{key}: {value}"` chips. Controlled --
75
+ * reassign to change what's shown; see the class doc's "update, then emit" round-trip. */
76
+ this.filters = {};
77
+ /** Source-scope ids/labels this query is restricted to, rendered as removable chips alongside
78
+ * `filters`. Same controlled round-trip as `filters`. */
79
+ this.scope = [];
80
+ /** Host-driven busy flag. This component never performs retrieval itself and has no way to know
81
+ * when a request resolves, so the host toggles this explicitly around its own fetch -- see the
82
+ * class doc for the resulting submit/cancel/supersede behavior. */
83
+ this.loading = false;
84
+ /** Host-supplied error message from the last failed search, shown verbatim (caller-owned text,
85
+ * not localized) in a `role="alert"` region. Empty string (the default) shows nothing. */
86
+ this.errorText = '';
87
+ /** Host-driven flag: the last completed search returned zero results. Renders a compact
88
+ * `<lr-empty>` beneath the search row. Never inferred by this component itself -- see the
89
+ * class doc; it holds no results data of its own. */
90
+ this.empty = false;
91
+ /** Placeholder for the query field. Empty string (the default) falls back to the localized
92
+ * generic "Search" placeholder, which also becomes that field's accessible name (mirroring
93
+ * `<lr-input>`'s own placeholder-as-label fallback). */
94
+ this.placeholder = '';
95
+ /** Accessible name for the `role="search"` landmark. Falls back to the localized default; a
96
+ * host `aria-label` (via `accessibleLabel`) wins over both. */
97
+ this.label = '';
98
+ /** Overrides the computed accessible name for the `role="search"` landmark. Wins over `label`
99
+ * and the localized default. Attribute-reflects from a host-level `aria-label`. */
100
+ this.accessibleLabel = null;
101
+ this.onQueryInput = (e) => {
102
+ this.query = e.detail.value;
103
+ };
104
+ this.onQueryKeyDown = (e) => {
105
+ if (e.key !== 'Enter')
106
+ return;
107
+ // An IME composition step (e.g. confirming a Japanese/Chinese/Korean candidate) must never be
108
+ // treated as "the user pressed Enter to search" -- keyCode 229 is a defense-in-depth fallback
109
+ // for browsers that report isComposing inconsistently on the compositionend-adjacent keydown.
110
+ // Mirrors <lr-chat-composer>'s identical guard.
111
+ if (e.isComposing || e.keyCode === 229)
112
+ return;
113
+ e.preventDefault();
114
+ this.submit();
115
+ };
116
+ this.onModeChange = (e) => {
117
+ this.mode = e.detail.value;
118
+ };
119
+ this.onSubmitClick = () => {
120
+ if (this.loading) {
121
+ this.cancel();
122
+ return;
123
+ }
124
+ this.submit();
125
+ };
126
+ }
127
+ static { this.styles = [LyraElement.styles, styles]; }
128
+ modeItems() {
129
+ return [
130
+ { value: 'vector', label: this.localize('retrievalModeVector') },
131
+ { value: 'keyword', label: this.localize('retrievalModeKeyword') },
132
+ { value: 'hybrid', label: this.localize('retrievalModeHybrid') },
133
+ ];
134
+ }
135
+ formatFilterValue(value) {
136
+ if (typeof value === 'string')
137
+ return value;
138
+ if (typeof value === 'number' || typeof value === 'boolean')
139
+ return String(value);
140
+ if (Array.isArray(value))
141
+ return value.map((v) => this.formatFilterValue(v)).join(', ');
142
+ if (value == null)
143
+ return '';
144
+ try {
145
+ return JSON.stringify(value);
146
+ }
147
+ catch {
148
+ return String(value);
149
+ }
150
+ }
151
+ buildQuery() {
152
+ return { text: this.query, mode: this.mode, filters: { ...this.filters }, scope: [...this.scope] };
153
+ }
154
+ submit() {
155
+ if (this.loading)
156
+ this.emit('lr-cancel', { reason: 'superseded' });
157
+ this.emit('lr-search', this.buildQuery());
158
+ }
159
+ cancel() {
160
+ this.emit('lr-cancel', {});
161
+ }
162
+ emitFiltersChange() {
163
+ this.emit('lr-filters-change', {
164
+ filters: { ...this.filters },
165
+ scope: [...this.scope],
166
+ });
167
+ }
168
+ removeScope(value) {
169
+ this.scope = this.scope.filter((s) => s !== value);
170
+ this.emitFiltersChange();
171
+ }
172
+ removeFilter(key) {
173
+ const next = { ...this.filters };
174
+ delete next[key];
175
+ this.filters = next;
176
+ this.emitFiltersChange();
177
+ }
178
+ render() {
179
+ const label = this.accessibleLabel || this.label || this.localize('retrievalSearchLabel');
180
+ const hasFilters = Object.keys(this.filters).length > 0 || this.scope.length > 0;
181
+ return html `
182
+ <div part="base" role="search" aria-label=${label}>
183
+ <div part="row">
184
+ <lr-input
185
+ part="query"
186
+ type="search"
187
+ placeholder=${this.placeholder || this.localize('search')}
188
+ .value=${this.query}
189
+ @lr-input=${this.onQueryInput}
190
+ @keydown=${this.onQueryKeyDown}
191
+ ></lr-input>
192
+ <lr-segmented
193
+ part="mode"
194
+ .items=${this.modeItems()}
195
+ .value=${this.mode}
196
+ label=${this.localize('retrievalModeLabel')}
197
+ @lr-change=${this.onModeChange}
198
+ ></lr-segmented>
199
+ <button part="submit" type="button" @click=${this.onSubmitClick}>
200
+ ${this.loading ? this.localize('cancel') : this.localize('search')}
201
+ </button>
202
+ </div>
203
+ ${hasFilters
204
+ ? html `<lr-chip-group
205
+ part="filters"
206
+ role="group"
207
+ aria-label=${this.localize('retrievalFiltersLabel')}
208
+ >
209
+ ${this.scope.map((s) => html `<lr-chip tone="brand" removable value=${s} @lr-remove=${() => this.removeScope(s)}
210
+ >${s}</lr-chip
211
+ >`)}
212
+ ${Object.entries(this.filters).map(([k, v]) => html `<lr-chip removable value=${k} @lr-remove=${() => this.removeFilter(k)}
213
+ >${this.localize('retrievalFilterChipLabel', undefined, {
214
+ key: k,
215
+ value: this.formatFilterValue(v),
216
+ })}</lr-chip
217
+ >`)}
218
+ </lr-chip-group>`
219
+ : nothing}
220
+ ${this.loading
221
+ ? html `<lr-spinner part="spinner"></lr-spinner>`
222
+ : this.errorText
223
+ ? html `<div part="error" role="alert">${this.errorText}</div>`
224
+ : this.empty
225
+ ? html `<lr-empty
226
+ part="empty"
227
+ compact
228
+ heading=${this.localize('noMatches')}
229
+ description=${this.localize('retrievalSearchEmptyDescription', undefined)}
230
+ ></lr-empty>`
231
+ : nothing}
232
+ </div>
233
+ `;
234
+ }
235
+ }
236
+ __decorate([
237
+ property()
238
+ ], LyraRetrievalSearch.prototype, "query", void 0);
239
+ __decorate([
240
+ property()
241
+ ], LyraRetrievalSearch.prototype, "mode", void 0);
242
+ __decorate([
243
+ property({ attribute: false })
244
+ ], LyraRetrievalSearch.prototype, "filters", void 0);
245
+ __decorate([
246
+ property({ attribute: false })
247
+ ], LyraRetrievalSearch.prototype, "scope", void 0);
248
+ __decorate([
249
+ property({ type: Boolean, reflect: true })
250
+ ], LyraRetrievalSearch.prototype, "loading", void 0);
251
+ __decorate([
252
+ property({ attribute: 'error-text' })
253
+ ], LyraRetrievalSearch.prototype, "errorText", void 0);
254
+ __decorate([
255
+ property({ type: Boolean, reflect: true })
256
+ ], LyraRetrievalSearch.prototype, "empty", void 0);
257
+ __decorate([
258
+ property()
259
+ ], LyraRetrievalSearch.prototype, "placeholder", void 0);
260
+ __decorate([
261
+ property()
262
+ ], LyraRetrievalSearch.prototype, "label", void 0);
263
+ __decorate([
264
+ property({ attribute: 'aria-label' })
265
+ ], LyraRetrievalSearch.prototype, "accessibleLabel", void 0);
266
+ //# sourceMappingURL=retrieval-search.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.class.js","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.class.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export * from './retrieval-search.class.js';
2
+ import '../input/input.js';
3
+ import '../segmented/segmented.js';
4
+ import '../chip/chip.js';
5
+ import '../chip/chip-group.js';
6
+ import '../spinner/spinner.js';
7
+ import '../empty/empty.js';
8
+ //# sourceMappingURL=retrieval-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.d.ts","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAG5C,OAAO,mBAAmB,CAAC;AAC3B,OAAO,2BAA2B,CAAC;AACnC,OAAO,iBAAiB,CAAC;AACzB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,mBAAmB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from './retrieval-search.class.js';
2
+ import { LyraRetrievalSearch } from './retrieval-search.class.js';
3
+ import { defineElement } from '../../internal/prefix.js';
4
+ import '../input/input.js';
5
+ import '../segmented/segmented.js';
6
+ import '../chip/chip.js';
7
+ import '../chip/chip-group.js';
8
+ import '../spinner/spinner.js';
9
+ import '../empty/empty.js';
10
+ defineElement('retrieval-search', LyraRetrievalSearch);
11
+ //# sourceMappingURL=retrieval-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.js","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,2BAA2B,CAAC;AACnC,OAAO,iBAAiB,CAAC;AACzB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,mBAAmB,CAAC;AAC3B,aAAa,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const styles: import("lit").CSSResult;
2
+ //# sourceMappingURL=retrieval-search.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.styles.d.ts","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBAwElB,CAAC"}
@@ -0,0 +1,75 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `
3
+ :host {
4
+ display: block;
5
+ min-inline-size: 0;
6
+ }
7
+ [part='base'] {
8
+ display: flex;
9
+ flex-direction: column;
10
+ gap: var(--lr-space-s);
11
+ }
12
+ [part='row'] {
13
+ display: flex;
14
+ align-items: center;
15
+ flex-wrap: wrap;
16
+ gap: var(--lr-space-xs);
17
+ }
18
+ [part='query'] {
19
+ flex: 1 1 var(--lr-size-12rem);
20
+ min-inline-size: 0;
21
+ }
22
+ [part='mode'] {
23
+ flex: 0 0 auto;
24
+ }
25
+ [part='submit'] {
26
+ flex: 0 0 auto;
27
+ box-sizing: border-box;
28
+ min-block-size: var(--lr-icon-button-size);
29
+ padding-inline: var(--lr-space-m);
30
+ border: var(--lr-border-width-thin) solid var(--lr-color-brand);
31
+ border-radius: var(--lr-radius);
32
+ background: var(--lr-color-brand);
33
+ color: var(--lr-color-on-brand);
34
+ font: inherit;
35
+ font-size: var(--lr-font-size-sm);
36
+ font-weight: var(--lr-font-weight-semibold);
37
+ cursor: pointer;
38
+ transition:
39
+ background-color var(--lr-transition-fast),
40
+ border-color var(--lr-transition-fast);
41
+ }
42
+ [part='submit']:hover {
43
+ background: var(--lr-color-brand);
44
+ filter: brightness(0.92);
45
+ }
46
+ [part='submit']:focus-visible {
47
+ outline: var(--lr-focus-ring-width) solid var(--lr-focus-ring-color);
48
+ outline-offset: var(--lr-focus-ring-offset);
49
+ }
50
+ :host([loading]) [part='submit'] {
51
+ background: var(--lr-color-surface);
52
+ color: var(--lr-color-text);
53
+ border-color: var(--lr-color-border);
54
+ }
55
+ [part='filters'] {
56
+ display: flex;
57
+ }
58
+ [part='spinner'] {
59
+ align-self: flex-start;
60
+ }
61
+ [part='error'] {
62
+ font-size: var(--lr-font-size-sm);
63
+ color: var(--lr-color-danger);
64
+ }
65
+ [part='empty'] {
66
+ align-self: stretch;
67
+ }
68
+
69
+ @media (prefers-reduced-motion: reduce) {
70
+ [part='submit'] {
71
+ transition: none !important;
72
+ }
73
+ }
74
+ `;
75
+ //# sourceMappingURL=retrieval-search.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-search.styles.js","sourceRoot":"","sources":["../../../src/components/retrieval-search/retrieval-search.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwExB,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { type TemplateResult, type PropertyValues } from 'lit';
2
+ import { LyraElement } from '../../internal/lyra-element.js';
3
+ import type { RetrievalChunk } from '../../ai/types.js';
4
+ import '../span-waterfall/span-waterfall.class.js';
5
+ import '../chunk-inspector/chunk-inspector.class.js';
6
+ /** One of the five fixed stages a retrieval pipeline moves through, in order. */
7
+ export type RetrievalStageKind = 'query-rewrite' | 'embed' | 'retrieve' | 'rerank' | 'filter';
8
+ /**
9
+ * Evidence backing one `RetrievalStage`, rendered in that stage's expandable evidence panel.
10
+ * `chunks` reuses `RetrievalChunk` (`src/ai/types.ts`) verbatim -- the same shape a retrieval
11
+ * step already produces -- and renders through `<lr-chunk-inspector>` rather than new chunk
12
+ * markup, mapping `source.id -> sourceId` / `source.name -> title`.
13
+ */
14
+ export interface RetrievalStageEvidence {
15
+ /** Free-form text, e.g. the rewritten query string or an embedding model identifier. */
16
+ text?: string;
17
+ /** Chunks this stage produced or retained, in this stage's own order. */
18
+ chunks?: RetrievalChunk[];
19
+ /** Arbitrary stage facts (e.g. filter criteria, embedding dimensions), rendered as a plain key/value list. */
20
+ metadata?: Record<string, unknown>;
21
+ }
22
+ /**
23
+ * One stage in a retrieval pipeline. Projected to one `LyraSpan` for the internal
24
+ * `<lr-span-waterfall>` timeline -- `id`/`startMs`/`endMs`/`status` map straight across, `kind`
25
+ * maps onto whichever existing `LyraSpan['kind']` fits best (`embed` -> `'embedding'`, `retrieve`
26
+ * -> `'retriever'`, `query-rewrite` -> `'llm'`, `rerank`/`filter` -> `'tool'`), and the visible
27
+ * bar name is `label` (if set) or the stage's own localized default for `kind`.
28
+ */
29
+ export interface RetrievalStage {
30
+ id: string;
31
+ kind: RetrievalStageKind;
32
+ /** Overrides the localized default label for `kind` (e.g. a specific embedding-model name). */
33
+ label?: string;
34
+ /** Milliseconds relative to the trace start. */
35
+ startMs: number;
36
+ /** Milliseconds relative to the trace start. Absent while the stage is still running. */
37
+ endMs?: number;
38
+ /** Same vocabulary as `LyraSpan.status`. */
39
+ status: 'pending' | 'running' | 'success' | 'error' | 'denied';
40
+ /** Secondary text under the stage name, e.g. "12 chunks, top score 0.87". */
41
+ detail?: string;
42
+ evidence?: RetrievalStageEvidence;
43
+ }
44
+ export interface LyraRetrievalTraceEventMap {
45
+ 'lr-stage-select': CustomEvent<{
46
+ id: string;
47
+ }>;
48
+ 'lr-stage-toggle': CustomEvent<{
49
+ id: string;
50
+ expanded: boolean;
51
+ }>;
52
+ }
53
+ /**
54
+ * `<lr-retrieval-trace>` — a retrieval pipeline's stage timeline (query rewriting, embedding,
55
+ * retrieval, reranking, filtering), rendered through `<lr-span-waterfall>`'s existing
56
+ * time-scaled bar rendering, plus a disclosure list below it exposing each stage's evidence:
57
+ * free-form text, retrieved/reranked/filtered chunks via `<lr-chunk-inspector>`, and/or arbitrary
58
+ * stage metadata. Never fetches, ranks, or computes retrieval results itself.
59
+ *
60
+ * @customElement lr-retrieval-trace
61
+ * @event lr-stage-select - A stage's bar was activated in the timeline (click, Enter, Space). `detail: { id }`.
62
+ * @event lr-stage-toggle - A stage's evidence panel was expanded or collapsed (via its own toggle,
63
+ * or implicitly by selecting that stage in the timeline for the first time). `detail: { id, expanded }`.
64
+ * @csspart base - The root wrapper.
65
+ * @csspart timeline - The internal `<lr-span-waterfall>` element.
66
+ * @csspart evidence-list - The wrapper around every stage's evidence disclosure row. Omitted when no stage has evidence.
67
+ * @csspart evidence-row - One stage's evidence disclosure row. Omitted for a stage with no evidence.
68
+ * @csspart evidence-toggle - A stage's evidence disclosure `<button>`.
69
+ * @csspart evidence-toggle-icon - The disclosure button's chevron glyph.
70
+ * @csspart evidence-body - A stage's evidence content wrapper, hidden while collapsed.
71
+ * @csspart evidence-text - A stage's free-form text evidence.
72
+ * @csspart evidence-metadata - A stage's key/value metadata list (a `<dl>`).
73
+ * @csspart evidence-metadata-key - One metadata entry's key (a `<dt>`).
74
+ * @csspart evidence-metadata-value - One metadata entry's value (a `<dd>`).
75
+ */
76
+ export declare class LyraRetrievalTrace extends LyraElement<LyraRetrievalTraceEventMap> {
77
+ static styles: import("lit").CSSResultGroup[];
78
+ /** The pipeline's stages, in any order -- the internal timeline sorts them by `startMs`. */
79
+ stages: RetrievalStage[];
80
+ /** Controlled selection, forwarded verbatim to the internal `<lr-span-waterfall>`'s `activeSpanId`. */
81
+ activeStageId: string | null;
82
+ /** Accessible name for the internal timeline. Falls back to a host `aria-label`, then the timeline's own localized default. */
83
+ label: string;
84
+ /** Ids of stages whose evidence panel is open. Absence means collapsed -- every stage starts collapsed. */
85
+ private expandedStageIds;
86
+ private readonly evidenceIdBase;
87
+ private stageLabel;
88
+ private toSpans;
89
+ private toggleEvidence;
90
+ private onStageSelect;
91
+ protected willUpdate(changed: PropertyValues): void;
92
+ private renderEvidenceBody;
93
+ private renderEvidenceRow;
94
+ render(): TemplateResult;
95
+ }
96
+ declare global {
97
+ interface HTMLElementTagNameMap {
98
+ 'lr-retrieval-trace': LyraRetrievalTrace;
99
+ }
100
+ }
101
+ //# sourceMappingURL=retrieval-trace.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-trace.class.d.ts","sourceRoot":"","sources":["../../../src/components/retrieval-trace/retrieval-trace.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,2CAA2C,CAAC;AACnD,OAAO,6CAA6C,CAAC;AAGrD,iFAAiF;AACjF,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9F;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,8GAA8G;IAC9G,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC/D,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AA2CD,MAAM,WAAW,0BAA0B;IACzC,iBAAiB,EAAE,WAAW,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,iBAAiB,EAAE,WAAW,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACnE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,kBAAmB,SAAQ,WAAW,CAAC,0BAA0B,CAAC;IAC7E,MAAM,CAAC,MAAM,iCAAgC;IAE7C,4FAA4F;IAC5D,MAAM,EAAE,cAAc,EAAE,CAAM;IAC9D,uGAAuG;IAC3D,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChF,+HAA+H;IACnH,KAAK,SAAM;IAEvB,2GAA2G;IAClG,OAAO,CAAC,gBAAgB,CAAqB;IAEtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAE5D,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,OAAO;IAcf,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa,CAcnB;IAEF,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAYlD;IAED,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,iBAAiB;IAsBzB,MAAM,IAAI,cAAc,CAiBvB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,kBAAkB,CAAC;KAC1C;CACF"}