@aceshooting/lyra-ui 4.0.0 → 4.2.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 (432) hide show
  1. package/README.md +53 -2
  2. package/custom-elements.json +59005 -40073
  3. package/dist/ai/index.d.ts +3 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/index.js +3 -0
  6. package/dist/ai/index.js.map +1 -0
  7. package/dist/ai/types.contract.d.ts +2 -0
  8. package/dist/ai/types.contract.d.ts.map +1 -0
  9. package/dist/ai/types.contract.js +139 -0
  10. package/dist/ai/types.contract.js.map +1 -0
  11. package/dist/ai/types.d.ts +201 -0
  12. package/dist/ai/types.d.ts.map +1 -0
  13. package/dist/ai/types.js +2 -0
  14. package/dist/ai/types.js.map +1 -0
  15. package/dist/components/agent-run/agent-run.class.d.ts +184 -0
  16. package/dist/components/agent-run/agent-run.class.d.ts.map +1 -0
  17. package/dist/components/agent-run/agent-run.class.js +473 -0
  18. package/dist/components/agent-run/agent-run.class.js.map +1 -0
  19. package/dist/components/agent-run/agent-run.d.ts +2 -0
  20. package/dist/components/agent-run/agent-run.d.ts.map +1 -0
  21. package/dist/components/agent-run/agent-run.js +5 -0
  22. package/dist/components/agent-run/agent-run.js.map +1 -0
  23. package/dist/components/agent-run/agent-run.styles.d.ts +2 -0
  24. package/dist/components/agent-run/agent-run.styles.d.ts.map +1 -0
  25. package/dist/components/agent-run/agent-run.styles.js +159 -0
  26. package/dist/components/agent-run/agent-run.styles.js.map +1 -0
  27. package/dist/components/agent-trace/agent-trace.class.d.ts +111 -0
  28. package/dist/components/agent-trace/agent-trace.class.d.ts.map +1 -0
  29. package/dist/components/agent-trace/agent-trace.class.js +221 -0
  30. package/dist/components/agent-trace/agent-trace.class.js.map +1 -0
  31. package/dist/components/agent-trace/agent-trace.d.ts +5 -0
  32. package/dist/components/agent-trace/agent-trace.d.ts.map +1 -0
  33. package/dist/components/agent-trace/agent-trace.js +8 -0
  34. package/dist/components/agent-trace/agent-trace.js.map +1 -0
  35. package/dist/components/agent-trace/agent-trace.styles.d.ts +2 -0
  36. package/dist/components/agent-trace/agent-trace.styles.d.ts.map +1 -0
  37. package/dist/components/agent-trace/agent-trace.styles.js +61 -0
  38. package/dist/components/agent-trace/agent-trace.styles.js.map +1 -0
  39. package/dist/components/agent-workspace/agent-workspace.class.d.ts +146 -0
  40. package/dist/components/agent-workspace/agent-workspace.class.d.ts.map +1 -0
  41. package/dist/components/agent-workspace/agent-workspace.class.js +332 -0
  42. package/dist/components/agent-workspace/agent-workspace.class.js.map +1 -0
  43. package/dist/components/agent-workspace/agent-workspace.d.ts +2 -0
  44. package/dist/components/agent-workspace/agent-workspace.d.ts.map +1 -0
  45. package/dist/components/agent-workspace/agent-workspace.js +5 -0
  46. package/dist/components/agent-workspace/agent-workspace.js.map +1 -0
  47. package/dist/components/agent-workspace/agent-workspace.styles.d.ts +2 -0
  48. package/dist/components/agent-workspace/agent-workspace.styles.d.ts.map +1 -0
  49. package/dist/components/agent-workspace/agent-workspace.styles.js +134 -0
  50. package/dist/components/agent-workspace/agent-workspace.styles.js.map +1 -0
  51. package/dist/components/app-rail/app-rail.styles.d.ts.map +1 -1
  52. package/dist/components/app-rail/app-rail.styles.js +4 -0
  53. package/dist/components/app-rail/app-rail.styles.js.map +1 -1
  54. package/dist/components/avatar/avatar.class.d.ts +3 -3
  55. package/dist/components/avatar/avatar.class.d.ts.map +1 -1
  56. package/dist/components/avatar/avatar.class.js +8 -10
  57. package/dist/components/avatar/avatar.class.js.map +1 -1
  58. package/dist/components/chart/chart.class.d.ts +1 -0
  59. package/dist/components/chart/chart.class.d.ts.map +1 -1
  60. package/dist/components/chart/chart.class.js +9 -3
  61. package/dist/components/chart/chart.class.js.map +1 -1
  62. package/dist/components/chat-message/chat-message.class.d.ts +45 -4
  63. package/dist/components/chat-message/chat-message.class.d.ts.map +1 -1
  64. package/dist/components/chat-message/chat-message.class.js +98 -8
  65. package/dist/components/chat-message/chat-message.class.js.map +1 -1
  66. package/dist/components/chat-message/chat-message.styles.d.ts.map +1 -1
  67. package/dist/components/chat-message/chat-message.styles.js +14 -0
  68. package/dist/components/chat-message/chat-message.styles.js.map +1 -1
  69. package/dist/components/context-inspector/context-inspector.class.d.ts +114 -0
  70. package/dist/components/context-inspector/context-inspector.class.d.ts.map +1 -0
  71. package/dist/components/context-inspector/context-inspector.class.js +222 -0
  72. package/dist/components/context-inspector/context-inspector.class.js.map +1 -0
  73. package/dist/components/context-inspector/context-inspector.d.ts +7 -0
  74. package/dist/components/context-inspector/context-inspector.d.ts.map +1 -0
  75. package/dist/components/context-inspector/context-inspector.js +10 -0
  76. package/dist/components/context-inspector/context-inspector.js.map +1 -0
  77. package/dist/components/context-inspector/context-inspector.styles.d.ts +2 -0
  78. package/dist/components/context-inspector/context-inspector.styles.d.ts.map +1 -0
  79. package/dist/components/context-inspector/context-inspector.styles.js +98 -0
  80. package/dist/components/context-inspector/context-inspector.styles.js.map +1 -0
  81. package/dist/components/conversation-item/conversation-item.class.d.ts +8 -0
  82. package/dist/components/conversation-item/conversation-item.class.d.ts.map +1 -1
  83. package/dist/components/conversation-item/conversation-item.class.js +50 -22
  84. package/dist/components/conversation-item/conversation-item.class.js.map +1 -1
  85. package/dist/components/conversation-item/conversation-item.styles.d.ts.map +1 -1
  86. package/dist/components/conversation-item/conversation-item.styles.js +11 -0
  87. package/dist/components/conversation-item/conversation-item.styles.js.map +1 -1
  88. package/dist/components/csv-viewer/csv-viewer.styles.d.ts.map +1 -1
  89. package/dist/components/csv-viewer/csv-viewer.styles.js +8 -2
  90. package/dist/components/csv-viewer/csv-viewer.styles.js.map +1 -1
  91. package/dist/components/dashboard-grid/dashboard-grid.class.d.ts +162 -0
  92. package/dist/components/dashboard-grid/dashboard-grid.class.d.ts.map +1 -0
  93. package/dist/components/dashboard-grid/dashboard-grid.class.js +569 -0
  94. package/dist/components/dashboard-grid/dashboard-grid.class.js.map +1 -0
  95. package/dist/components/dashboard-grid/dashboard-grid.d.ts +6 -0
  96. package/dist/components/dashboard-grid/dashboard-grid.d.ts.map +1 -0
  97. package/dist/components/dashboard-grid/dashboard-grid.js +9 -0
  98. package/dist/components/dashboard-grid/dashboard-grid.js.map +1 -0
  99. package/dist/components/dashboard-grid/dashboard-grid.styles.d.ts +2 -0
  100. package/dist/components/dashboard-grid/dashboard-grid.styles.d.ts.map +1 -0
  101. package/dist/components/dashboard-grid/dashboard-grid.styles.js +86 -0
  102. package/dist/components/dashboard-grid/dashboard-grid.styles.js.map +1 -0
  103. package/dist/components/dashboard-grid/layout.d.ts +103 -0
  104. package/dist/components/dashboard-grid/layout.d.ts.map +1 -0
  105. package/dist/components/dashboard-grid/layout.js +94 -0
  106. package/dist/components/dashboard-grid/layout.js.map +1 -0
  107. package/dist/components/date-picker/date-input.class.d.ts +8 -0
  108. package/dist/components/date-picker/date-input.class.d.ts.map +1 -1
  109. package/dist/components/date-picker/date-input.class.js +10 -0
  110. package/dist/components/date-picker/date-input.class.js.map +1 -1
  111. package/dist/components/date-picker/date-input.styles.d.ts.map +1 -1
  112. package/dist/components/date-picker/date-input.styles.js +39 -2
  113. package/dist/components/date-picker/date-input.styles.js.map +1 -1
  114. package/dist/components/diff-view/diff-view.class.d.ts +20 -2
  115. package/dist/components/diff-view/diff-view.class.d.ts.map +1 -1
  116. package/dist/components/diff-view/diff-view.class.js +107 -13
  117. package/dist/components/diff-view/diff-view.class.js.map +1 -1
  118. package/dist/components/diff-view/diff-view.styles.d.ts.map +1 -1
  119. package/dist/components/diff-view/diff-view.styles.js +5 -0
  120. package/dist/components/diff-view/diff-view.styles.js.map +1 -1
  121. package/dist/components/document-compare/document-compare.class.d.ts +131 -0
  122. package/dist/components/document-compare/document-compare.class.d.ts.map +1 -0
  123. package/dist/components/document-compare/document-compare.class.js +214 -0
  124. package/dist/components/document-compare/document-compare.class.js.map +1 -0
  125. package/dist/components/document-compare/document-compare.d.ts +2 -0
  126. package/dist/components/document-compare/document-compare.d.ts.map +1 -0
  127. package/dist/components/document-compare/document-compare.js +5 -0
  128. package/dist/components/document-compare/document-compare.js.map +1 -0
  129. package/dist/components/document-compare/document-compare.styles.d.ts +2 -0
  130. package/dist/components/document-compare/document-compare.styles.d.ts.map +1 -0
  131. package/dist/components/document-compare/document-compare.styles.js +65 -0
  132. package/dist/components/document-compare/document-compare.styles.js.map +1 -0
  133. package/dist/components/document-library/document-library.class.d.ts +154 -0
  134. package/dist/components/document-library/document-library.class.d.ts.map +1 -0
  135. package/dist/components/document-library/document-library.class.js +399 -0
  136. package/dist/components/document-library/document-library.class.js.map +1 -0
  137. package/dist/components/document-library/document-library.d.ts +9 -0
  138. package/dist/components/document-library/document-library.d.ts.map +1 -0
  139. package/dist/components/document-library/document-library.js +12 -0
  140. package/dist/components/document-library/document-library.js.map +1 -0
  141. package/dist/components/document-library/document-library.styles.d.ts +2 -0
  142. package/dist/components/document-library/document-library.styles.d.ts.map +1 -0
  143. package/dist/components/document-library/document-library.styles.js +77 -0
  144. package/dist/components/document-library/document-library.styles.js.map +1 -0
  145. package/dist/components/drilldown-panel/drilldown-panel.class.d.ts +148 -0
  146. package/dist/components/drilldown-panel/drilldown-panel.class.d.ts.map +1 -0
  147. package/dist/components/drilldown-panel/drilldown-panel.class.js +241 -0
  148. package/dist/components/drilldown-panel/drilldown-panel.class.js.map +1 -0
  149. package/dist/components/drilldown-panel/drilldown-panel.d.ts +9 -0
  150. package/dist/components/drilldown-panel/drilldown-panel.d.ts.map +1 -0
  151. package/dist/components/drilldown-panel/drilldown-panel.js +12 -0
  152. package/dist/components/drilldown-panel/drilldown-panel.js.map +1 -0
  153. package/dist/components/drilldown-panel/drilldown-panel.styles.d.ts +2 -0
  154. package/dist/components/drilldown-panel/drilldown-panel.styles.d.ts.map +1 -0
  155. package/dist/components/drilldown-panel/drilldown-panel.styles.js +49 -0
  156. package/dist/components/drilldown-panel/drilldown-panel.styles.js.map +1 -0
  157. package/dist/components/emoji-picker/emoji-data-loader.d.ts.map +1 -1
  158. package/dist/components/emoji-picker/emoji-data-loader.js +1 -1
  159. package/dist/components/emoji-picker/emoji-data-loader.js.map +1 -1
  160. package/dist/components/emoji-picker/emoji-picker.class.d.ts +18 -1
  161. package/dist/components/emoji-picker/emoji-picker.class.d.ts.map +1 -1
  162. package/dist/components/emoji-picker/emoji-picker.class.js +152 -28
  163. package/dist/components/emoji-picker/emoji-picker.class.js.map +1 -1
  164. package/dist/components/emoji-picker/emoji-picker.styles.d.ts.map +1 -1
  165. package/dist/components/emoji-picker/emoji-picker.styles.js +26 -2
  166. package/dist/components/emoji-picker/emoji-picker.styles.js.map +1 -1
  167. package/dist/components/entity-dossier/entity-dossier.class.d.ts +132 -0
  168. package/dist/components/entity-dossier/entity-dossier.class.d.ts.map +1 -0
  169. package/dist/components/entity-dossier/entity-dossier.class.js +187 -0
  170. package/dist/components/entity-dossier/entity-dossier.class.js.map +1 -0
  171. package/dist/components/entity-dossier/entity-dossier.d.ts +9 -0
  172. package/dist/components/entity-dossier/entity-dossier.d.ts.map +1 -0
  173. package/dist/components/entity-dossier/entity-dossier.js +12 -0
  174. package/dist/components/entity-dossier/entity-dossier.js.map +1 -0
  175. package/dist/components/entity-dossier/entity-dossier.styles.d.ts +2 -0
  176. package/dist/components/entity-dossier/entity-dossier.styles.d.ts.map +1 -0
  177. package/dist/components/entity-dossier/entity-dossier.styles.js +30 -0
  178. package/dist/components/entity-dossier/entity-dossier.styles.js.map +1 -0
  179. package/dist/components/eval-dataset/eval-dataset.class.d.ts +145 -0
  180. package/dist/components/eval-dataset/eval-dataset.class.d.ts.map +1 -0
  181. package/dist/components/eval-dataset/eval-dataset.class.js +307 -0
  182. package/dist/components/eval-dataset/eval-dataset.class.js.map +1 -0
  183. package/dist/components/eval-dataset/eval-dataset.d.ts +7 -0
  184. package/dist/components/eval-dataset/eval-dataset.d.ts.map +1 -0
  185. package/dist/components/eval-dataset/eval-dataset.js +10 -0
  186. package/dist/components/eval-dataset/eval-dataset.js.map +1 -0
  187. package/dist/components/eval-dataset/eval-dataset.styles.d.ts +2 -0
  188. package/dist/components/eval-dataset/eval-dataset.styles.d.ts.map +1 -0
  189. package/dist/components/eval-dataset/eval-dataset.styles.js +76 -0
  190. package/dist/components/eval-dataset/eval-dataset.styles.js.map +1 -0
  191. package/dist/components/eval-result/eval-result.class.d.ts +115 -0
  192. package/dist/components/eval-result/eval-result.class.d.ts.map +1 -0
  193. package/dist/components/eval-result/eval-result.class.js +165 -0
  194. package/dist/components/eval-result/eval-result.class.js.map +1 -0
  195. package/dist/components/eval-result/eval-result.d.ts +5 -0
  196. package/dist/components/eval-result/eval-result.d.ts.map +1 -0
  197. package/dist/components/eval-result/eval-result.js +8 -0
  198. package/dist/components/eval-result/eval-result.js.map +1 -0
  199. package/dist/components/eval-result/eval-result.styles.d.ts +2 -0
  200. package/dist/components/eval-result/eval-result.styles.d.ts.map +1 -0
  201. package/dist/components/eval-result/eval-result.styles.js +47 -0
  202. package/dist/components/eval-result/eval-result.styles.js.map +1 -0
  203. package/dist/components/evaluation-run/evaluation-run.class.d.ts +168 -0
  204. package/dist/components/evaluation-run/evaluation-run.class.d.ts.map +1 -0
  205. package/dist/components/evaluation-run/evaluation-run.class.js +333 -0
  206. package/dist/components/evaluation-run/evaluation-run.class.js.map +1 -0
  207. package/dist/components/evaluation-run/evaluation-run.d.ts +2 -0
  208. package/dist/components/evaluation-run/evaluation-run.d.ts.map +1 -0
  209. package/dist/components/evaluation-run/evaluation-run.js +5 -0
  210. package/dist/components/evaluation-run/evaluation-run.js.map +1 -0
  211. package/dist/components/evaluation-run/evaluation-run.styles.d.ts +2 -0
  212. package/dist/components/evaluation-run/evaluation-run.styles.d.ts.map +1 -0
  213. package/dist/components/evaluation-run/evaluation-run.styles.js +73 -0
  214. package/dist/components/evaluation-run/evaluation-run.styles.js.map +1 -0
  215. package/dist/components/filter-bar/filter-bar.class.d.ts +200 -0
  216. package/dist/components/filter-bar/filter-bar.class.d.ts.map +1 -0
  217. package/dist/components/filter-bar/filter-bar.class.js +322 -0
  218. package/dist/components/filter-bar/filter-bar.class.js.map +1 -0
  219. package/dist/components/filter-bar/filter-bar.d.ts +10 -0
  220. package/dist/components/filter-bar/filter-bar.d.ts.map +1 -0
  221. package/dist/components/filter-bar/filter-bar.js +13 -0
  222. package/dist/components/filter-bar/filter-bar.js.map +1 -0
  223. package/dist/components/filter-bar/filter-bar.styles.d.ts +2 -0
  224. package/dist/components/filter-bar/filter-bar.styles.d.ts.map +1 -0
  225. package/dist/components/filter-bar/filter-bar.styles.js +37 -0
  226. package/dist/components/filter-bar/filter-bar.styles.js.map +1 -0
  227. package/dist/components/graph-query-builder/graph-query-builder.class.d.ts +242 -0
  228. package/dist/components/graph-query-builder/graph-query-builder.class.d.ts.map +1 -0
  229. package/dist/components/graph-query-builder/graph-query-builder.class.js +511 -0
  230. package/dist/components/graph-query-builder/graph-query-builder.class.js.map +1 -0
  231. package/dist/components/graph-query-builder/graph-query-builder.d.ts +7 -0
  232. package/dist/components/graph-query-builder/graph-query-builder.d.ts.map +1 -0
  233. package/dist/components/graph-query-builder/graph-query-builder.js +10 -0
  234. package/dist/components/graph-query-builder/graph-query-builder.js.map +1 -0
  235. package/dist/components/graph-query-builder/graph-query-builder.styles.d.ts +2 -0
  236. package/dist/components/graph-query-builder/graph-query-builder.styles.d.ts.map +1 -0
  237. package/dist/components/graph-query-builder/graph-query-builder.styles.js +170 -0
  238. package/dist/components/graph-query-builder/graph-query-builder.styles.js.map +1 -0
  239. package/dist/components/grounding-summary/grounding-summary.class.d.ts +80 -0
  240. package/dist/components/grounding-summary/grounding-summary.class.d.ts.map +1 -0
  241. package/dist/components/grounding-summary/grounding-summary.class.js +182 -0
  242. package/dist/components/grounding-summary/grounding-summary.class.js.map +1 -0
  243. package/dist/components/grounding-summary/grounding-summary.d.ts +5 -0
  244. package/dist/components/grounding-summary/grounding-summary.d.ts.map +1 -0
  245. package/dist/components/grounding-summary/grounding-summary.js +8 -0
  246. package/dist/components/grounding-summary/grounding-summary.js.map +1 -0
  247. package/dist/components/grounding-summary/grounding-summary.styles.d.ts +2 -0
  248. package/dist/components/grounding-summary/grounding-summary.styles.d.ts.map +1 -0
  249. package/dist/components/grounding-summary/grounding-summary.styles.js +88 -0
  250. package/dist/components/grounding-summary/grounding-summary.styles.js.map +1 -0
  251. package/dist/components/heatmap/heatmap.class.d.ts +14 -0
  252. package/dist/components/heatmap/heatmap.class.d.ts.map +1 -1
  253. package/dist/components/heatmap/heatmap.class.js +165 -0
  254. package/dist/components/heatmap/heatmap.class.js.map +1 -1
  255. package/dist/components/ingestion-queue/ingestion-queue.class.d.ts +125 -0
  256. package/dist/components/ingestion-queue/ingestion-queue.class.d.ts.map +1 -0
  257. package/dist/components/ingestion-queue/ingestion-queue.class.js +276 -0
  258. package/dist/components/ingestion-queue/ingestion-queue.class.js.map +1 -0
  259. package/dist/components/ingestion-queue/ingestion-queue.d.ts +2 -0
  260. package/dist/components/ingestion-queue/ingestion-queue.d.ts.map +1 -0
  261. package/dist/components/ingestion-queue/ingestion-queue.js +5 -0
  262. package/dist/components/ingestion-queue/ingestion-queue.js.map +1 -0
  263. package/dist/components/ingestion-queue/ingestion-queue.styles.d.ts +2 -0
  264. package/dist/components/ingestion-queue/ingestion-queue.styles.d.ts.map +1 -0
  265. package/dist/components/ingestion-queue/ingestion-queue.styles.js +138 -0
  266. package/dist/components/ingestion-queue/ingestion-queue.styles.js.map +1 -0
  267. package/dist/components/knowledge-base/knowledge-base.class.d.ts +136 -0
  268. package/dist/components/knowledge-base/knowledge-base.class.d.ts.map +1 -0
  269. package/dist/components/knowledge-base/knowledge-base.class.js +360 -0
  270. package/dist/components/knowledge-base/knowledge-base.class.js.map +1 -0
  271. package/dist/components/knowledge-base/knowledge-base.d.ts +7 -0
  272. package/dist/components/knowledge-base/knowledge-base.d.ts.map +1 -0
  273. package/dist/components/knowledge-base/knowledge-base.js +10 -0
  274. package/dist/components/knowledge-base/knowledge-base.js.map +1 -0
  275. package/dist/components/knowledge-base/knowledge-base.styles.d.ts +2 -0
  276. package/dist/components/knowledge-base/knowledge-base.styles.d.ts.map +1 -0
  277. package/dist/components/knowledge-base/knowledge-base.styles.js +94 -0
  278. package/dist/components/knowledge-base/knowledge-base.styles.js.map +1 -0
  279. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +196 -0
  280. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts.map +1 -0
  281. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.js +477 -0
  282. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.class.js.map +1 -0
  283. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.d.ts +11 -0
  284. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.d.ts.map +1 -0
  285. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.js +14 -0
  286. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.js.map +1 -0
  287. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.d.ts +2 -0
  288. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.d.ts.map +1 -0
  289. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.js +76 -0
  290. package/dist/components/knowledge-graph-explorer/knowledge-graph-explorer.styles.js.map +1 -0
  291. package/dist/components/markdown/markdown-core.class.d.ts +10 -3
  292. package/dist/components/markdown/markdown-core.class.d.ts.map +1 -1
  293. package/dist/components/markdown/markdown-core.class.js +33 -4
  294. package/dist/components/markdown/markdown-core.class.js.map +1 -1
  295. package/dist/components/markdown/markdown.class.d.ts +10 -3
  296. package/dist/components/markdown/markdown.class.d.ts.map +1 -1
  297. package/dist/components/markdown/markdown.class.js +33 -4
  298. package/dist/components/markdown/markdown.class.js.map +1 -1
  299. package/dist/components/memory-panel/memory-panel.class.d.ts +146 -0
  300. package/dist/components/memory-panel/memory-panel.class.d.ts.map +1 -0
  301. package/dist/components/memory-panel/memory-panel.class.js +303 -0
  302. package/dist/components/memory-panel/memory-panel.class.js.map +1 -0
  303. package/dist/components/memory-panel/memory-panel.d.ts +5 -0
  304. package/dist/components/memory-panel/memory-panel.d.ts.map +1 -0
  305. package/dist/components/memory-panel/memory-panel.js +8 -0
  306. package/dist/components/memory-panel/memory-panel.js.map +1 -0
  307. package/dist/components/memory-panel/memory-panel.styles.d.ts +2 -0
  308. package/dist/components/memory-panel/memory-panel.styles.d.ts.map +1 -0
  309. package/dist/components/memory-panel/memory-panel.styles.js +139 -0
  310. package/dist/components/memory-panel/memory-panel.styles.js.map +1 -0
  311. package/dist/components/notebook-viewer/notebook-viewer.class.d.ts +9 -2
  312. package/dist/components/notebook-viewer/notebook-viewer.class.d.ts.map +1 -1
  313. package/dist/components/notebook-viewer/notebook-viewer.class.js +27 -4
  314. package/dist/components/notebook-viewer/notebook-viewer.class.js.map +1 -1
  315. package/dist/components/overlay/popover.class.d.ts +39 -0
  316. package/dist/components/overlay/popover.class.d.ts.map +1 -1
  317. package/dist/components/overlay/popover.class.js +53 -3
  318. package/dist/components/overlay/popover.class.js.map +1 -1
  319. package/dist/components/overlay/tooltip.class.d.ts +43 -0
  320. package/dist/components/overlay/tooltip.class.d.ts.map +1 -1
  321. package/dist/components/overlay/tooltip.class.js +66 -4
  322. package/dist/components/overlay/tooltip.class.js.map +1 -1
  323. package/dist/components/policy-summary/policy-summary.class.d.ts +76 -0
  324. package/dist/components/policy-summary/policy-summary.class.d.ts.map +1 -0
  325. package/dist/components/policy-summary/policy-summary.class.js +125 -0
  326. package/dist/components/policy-summary/policy-summary.class.js.map +1 -0
  327. package/dist/components/policy-summary/policy-summary.d.ts +6 -0
  328. package/dist/components/policy-summary/policy-summary.d.ts.map +1 -0
  329. package/dist/components/policy-summary/policy-summary.js +9 -0
  330. package/dist/components/policy-summary/policy-summary.js.map +1 -0
  331. package/dist/components/policy-summary/policy-summary.styles.d.ts +2 -0
  332. package/dist/components/policy-summary/policy-summary.styles.d.ts.map +1 -0
  333. package/dist/components/policy-summary/policy-summary.styles.js +68 -0
  334. package/dist/components/policy-summary/policy-summary.styles.js.map +1 -0
  335. package/dist/components/query-builder/query-builder.class.d.ts +180 -0
  336. package/dist/components/query-builder/query-builder.class.d.ts.map +1 -0
  337. package/dist/components/query-builder/query-builder.class.js +415 -0
  338. package/dist/components/query-builder/query-builder.class.js.map +1 -0
  339. package/dist/components/query-builder/query-builder.d.ts +9 -0
  340. package/dist/components/query-builder/query-builder.d.ts.map +1 -0
  341. package/dist/components/query-builder/query-builder.js +12 -0
  342. package/dist/components/query-builder/query-builder.js.map +1 -0
  343. package/dist/components/query-builder/query-builder.styles.d.ts +2 -0
  344. package/dist/components/query-builder/query-builder.styles.d.ts.map +1 -0
  345. package/dist/components/query-builder/query-builder.styles.js +77 -0
  346. package/dist/components/query-builder/query-builder.styles.js.map +1 -0
  347. package/dist/components/retrieval-results/retrieval-results.class.d.ts +151 -0
  348. package/dist/components/retrieval-results/retrieval-results.class.d.ts.map +1 -0
  349. package/dist/components/retrieval-results/retrieval-results.class.js +340 -0
  350. package/dist/components/retrieval-results/retrieval-results.class.js.map +1 -0
  351. package/dist/components/retrieval-results/retrieval-results.d.ts +7 -0
  352. package/dist/components/retrieval-results/retrieval-results.d.ts.map +1 -0
  353. package/dist/components/retrieval-results/retrieval-results.js +10 -0
  354. package/dist/components/retrieval-results/retrieval-results.js.map +1 -0
  355. package/dist/components/retrieval-results/retrieval-results.styles.d.ts +2 -0
  356. package/dist/components/retrieval-results/retrieval-results.styles.d.ts.map +1 -0
  357. package/dist/components/retrieval-results/retrieval-results.styles.js +94 -0
  358. package/dist/components/retrieval-results/retrieval-results.styles.js.map +1 -0
  359. package/dist/components/retrieval-search/retrieval-search.class.d.ts +127 -0
  360. package/dist/components/retrieval-search/retrieval-search.class.d.ts.map +1 -0
  361. package/dist/components/retrieval-search/retrieval-search.class.js +267 -0
  362. package/dist/components/retrieval-search/retrieval-search.class.js.map +1 -0
  363. package/dist/components/retrieval-search/retrieval-search.d.ts +8 -0
  364. package/dist/components/retrieval-search/retrieval-search.d.ts.map +1 -0
  365. package/dist/components/retrieval-search/retrieval-search.js +11 -0
  366. package/dist/components/retrieval-search/retrieval-search.js.map +1 -0
  367. package/dist/components/retrieval-search/retrieval-search.styles.d.ts +2 -0
  368. package/dist/components/retrieval-search/retrieval-search.styles.d.ts.map +1 -0
  369. package/dist/components/retrieval-search/retrieval-search.styles.js +75 -0
  370. package/dist/components/retrieval-search/retrieval-search.styles.js.map +1 -0
  371. package/dist/components/retrieval-trace/retrieval-trace.class.d.ts +101 -0
  372. package/dist/components/retrieval-trace/retrieval-trace.class.d.ts.map +1 -0
  373. package/dist/components/retrieval-trace/retrieval-trace.class.js +215 -0
  374. package/dist/components/retrieval-trace/retrieval-trace.class.js.map +1 -0
  375. package/dist/components/retrieval-trace/retrieval-trace.d.ts +4 -0
  376. package/dist/components/retrieval-trace/retrieval-trace.d.ts.map +1 -0
  377. package/dist/components/retrieval-trace/retrieval-trace.js +7 -0
  378. package/dist/components/retrieval-trace/retrieval-trace.js.map +1 -0
  379. package/dist/components/retrieval-trace/retrieval-trace.styles.d.ts +2 -0
  380. package/dist/components/retrieval-trace/retrieval-trace.styles.d.ts.map +1 -0
  381. package/dist/components/retrieval-trace/retrieval-trace.styles.js +116 -0
  382. package/dist/components/retrieval-trace/retrieval-trace.styles.js.map +1 -0
  383. package/dist/components/rubric-form/rubric-form.class.d.ts.map +1 -1
  384. package/dist/components/rubric-form/rubric-form.class.js +1 -0
  385. package/dist/components/rubric-form/rubric-form.class.js.map +1 -1
  386. package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.d.ts.map +1 -1
  387. package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.js +8 -2
  388. package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.js.map +1 -1
  389. package/dist/components/thread-list/thread-list.class.d.ts +38 -2
  390. package/dist/components/thread-list/thread-list.class.d.ts.map +1 -1
  391. package/dist/components/thread-list/thread-list.class.js +41 -6
  392. package/dist/components/thread-list/thread-list.class.js.map +1 -1
  393. package/dist/components/tool-timeline/tool-timeline.class.d.ts +140 -0
  394. package/dist/components/tool-timeline/tool-timeline.class.d.ts.map +1 -0
  395. package/dist/components/tool-timeline/tool-timeline.class.js +293 -0
  396. package/dist/components/tool-timeline/tool-timeline.class.js.map +1 -0
  397. package/dist/components/tool-timeline/tool-timeline.d.ts +2 -0
  398. package/dist/components/tool-timeline/tool-timeline.d.ts.map +1 -0
  399. package/dist/components/tool-timeline/tool-timeline.js +5 -0
  400. package/dist/components/tool-timeline/tool-timeline.js.map +1 -0
  401. package/dist/components/tool-timeline/tool-timeline.styles.d.ts +2 -0
  402. package/dist/components/tool-timeline/tool-timeline.styles.d.ts.map +1 -0
  403. package/dist/components/tool-timeline/tool-timeline.styles.js +148 -0
  404. package/dist/components/tool-timeline/tool-timeline.styles.js.map +1 -0
  405. package/dist/components/trace-tree/trace-tree.class.d.ts.map +1 -1
  406. package/dist/components/trace-tree/trace-tree.class.js +3 -1
  407. package/dist/components/trace-tree/trace-tree.class.js.map +1 -1
  408. package/dist/internal/localization.d.ts +1 -1
  409. package/dist/internal/localization.d.ts.map +1 -1
  410. package/dist/internal/localization.js +238 -0
  411. package/dist/internal/localization.js.map +1 -1
  412. package/dist/internal/positioner.d.ts +28 -1
  413. package/dist/internal/positioner.d.ts.map +1 -1
  414. package/dist/internal/positioner.js +12 -1
  415. package/dist/internal/positioner.js.map +1 -1
  416. package/dist/internal/root-registration-allowlist.d.ts +2 -2
  417. package/dist/internal/root-registration-allowlist.d.ts.map +1 -1
  418. package/dist/internal/root-registration-allowlist.js +25 -0
  419. package/dist/internal/root-registration-allowlist.js.map +1 -1
  420. package/dist/internal/tokens.styles.d.ts.map +1 -1
  421. package/dist/internal/tokens.styles.js +2 -0
  422. package/dist/internal/tokens.styles.js.map +1 -1
  423. package/dist/lyra.d.ts +51 -1
  424. package/dist/lyra.d.ts.map +1 -1
  425. package/dist/lyra.js +49 -0
  426. package/dist/lyra.js.map +1 -1
  427. package/llms-full.txt +519 -15
  428. package/llms.txt +7 -0
  429. package/package.json +53 -1
  430. package/vscode-css-data.json +21 -0
  431. package/vscode-html-data.json +1205 -14
  432. package/web-types.json +1297 -60
@@ -39,7 +39,8 @@ declare const LyraEmojiPicker_base: typeof EmojiPickerBase & (new (...args: any[
39
39
  * under RTL; Up/Down move by one visual row, measured from the live wrap layout), Home/End jump to
40
40
  * the first/last option, and Enter/Space picks. The search input doubles as a `role="combobox"`
41
41
  * over the same listbox: the arrow keys and Enter also work there while focus stays in the input,
42
- * with `aria-activedescendant` tracking the active option.
42
+ * with `aria-activedescendant` tracking the active option. Large data sets automatically window
43
+ * their visible rows so scrolling does not create one button per supplied emoji in the DOM.
43
44
  *
44
45
  * @customElement lr-emoji-picker
45
46
  * @event lr-change - An emoji was picked. `detail: { emoji: string }`.
@@ -67,12 +68,23 @@ export declare class LyraEmojiPicker extends LyraEmojiPicker_base {
67
68
  connectedCallback(): void;
68
69
  private queryText;
69
70
  private activeIndex;
71
+ /** The large-data path keeps only visible rows in the DOM. The regular path remains unchanged
72
+ * for small sets so consumers keep the simple grouped light-DOM shape they already receive. */
73
+ private virtualScrollTop;
74
+ private virtualScrollRaf?;
75
+ private observedGrid?;
76
+ private observedGridVirtualized;
77
+ private gridResizeObserver?;
70
78
  private searchEl?;
71
79
  private readonly gridId;
72
80
  private readonly haystacks;
73
81
  private haystackFor;
74
82
  private get filteredGroups();
75
83
  private get flatItems();
84
+ private get isVirtualized();
85
+ private cssPixelValue;
86
+ private virtualRowHeight;
87
+ private virtualRows;
76
88
  private optionButtons;
77
89
  /** Options in the first rendered row. Measured from live layout at call time because the
78
90
  * flex-wrap column count is fluid (container width, emoji font metrics). */
@@ -86,7 +98,12 @@ export declare class LyraEmojiPicker extends LyraEmojiPicker_base {
86
98
  private pick;
87
99
  private onNavigationKeyDown;
88
100
  private onGridFocusIn;
101
+ private onGridScroll;
102
+ private syncGridObserver;
89
103
  protected updated(changed: PropertyValues): void;
104
+ disconnectedCallback(): void;
105
+ private renderEmojiButton;
106
+ private renderVirtualRows;
90
107
  render(): TemplateResult;
91
108
  }
92
109
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-picker.class.d.ts","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAM7D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd;oEACgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B;kFAC8E;IAC9E,WAAW,EAAE,WAAW,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7C;AAED,cAAM,eAAgB,SAAQ,WAAW,CAAC,uBAAuB,CAAC;CAAG;;AAErE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAgB,SAAQ,oBAA+B;IAClE,MAAM,CAAC,MAAM,iCAAgC;IAE7C;;mGAE+F;IAC/D,MAAM,EAAE,gBAAgB,EAAE,CAAM;IAEhE;4CACwC;IACD,eAAe,SAAM;IAE5D;;uFAEmF;IACnF,OAAO,CAAC,UAAU,CAAiE;IAEnF,iBAAiB,IAAI,IAAI,CAWxB;IAEQ,OAAO,CAAC,SAAS,CAAM;IAOhC,OAAO,CAAC,WAAW,CAAK;IAEE,OAAO,CAAC,QAAQ,CAAC,CAAmB;IAE9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IAMtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0C;IAEpE,OAAO,CAAC,WAAW;IASnB,OAAO,KAAK,cAAc,GASzB;IAED,OAAO,KAAK,SAAS,GAEpB;IAED,OAAO,CAAC,aAAa;IAIrB;iFAC6E;IAC7E,OAAO,CAAC,aAAa;IAYrB;;;yBAGqB;IACrB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,aAAa,CAGnB;IAEF,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,mBAAmB,CA2BzB;IAKF,OAAO,CAAC,aAAa,CAKnB;IAEF,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAY/C;IAED,MAAM,IAAI,cAAc,CAmDvB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,eAAe,CAAC;KACpC;CACF"}
1
+ {"version":3,"file":"emoji-picker.class.d.ts","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAe7D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd;oEACgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B;kFAC8E;IAC9E,WAAW,EAAE,WAAW,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7C;AAED,cAAM,eAAgB,SAAQ,WAAW,CAAC,uBAAuB,CAAC;CAAG;;AAErE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,eAAgB,SAAQ,oBAA+B;IAClE,MAAM,CAAC,MAAM,iCAAgC;IAE7C;;mGAE+F;IAC/D,MAAM,EAAE,gBAAgB,EAAE,CAAM;IAEhE;4CACwC;IACD,eAAe,SAAM;IAE5D;;uFAEmF;IACnF,OAAO,CAAC,UAAU,CAAiE;IAEnF,iBAAiB,IAAI,IAAI,CAWxB;IAEQ,OAAO,CAAC,SAAS,CAAM;IAOhC,OAAO,CAAC,WAAW,CAAK;IAExB;mGAC+F;IAC/F,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,kBAAkB,CAAC,CAAiB;IAElB,OAAO,CAAC,QAAQ,CAAC,CAAmB;IAE9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IAMtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0C;IAEpE,OAAO,CAAC,WAAW;IASnB,OAAO,KAAK,cAAc,GASzB;IAED,OAAO,KAAK,SAAS,GAEpB;IAED,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,aAAa;IAIrB;iFAC6E;IAC7E,OAAO,CAAC,aAAa;IAmBrB;;;yBAGqB;IACrB,OAAO,CAAC,cAAc;IAkCtB,OAAO,CAAC,aAAa,CAGnB;IAEF,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,mBAAmB,CA2BzB;IAKF,OAAO,CAAC,aAAa,CAMnB;IAEF,OAAO,CAAC,YAAY,CASlB;IAEF,OAAO,CAAC,gBAAgB;IAcxB,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAa/C;IAED,oBAAoB,IAAI,IAAI,CAW3B;IAED,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,iBAAiB;IAwBzB,MAAM,IAAI,cAAc,CAyCvB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,eAAe,CAAC;KACpC;CACF"}
@@ -12,6 +12,9 @@ import { FormAssociated } from '../../internal/form-associated.js';
12
12
  import { nextId } from '../../internal/a11y.js';
13
13
  import { styles } from './emoji-picker.styles.js';
14
14
  import { loadEmojiDataCached } from './emoji-data-loader.js';
15
+ const VIRTUALIZE_AT = 200;
16
+ const VIRTUAL_ROW_HEIGHT_FALLBACK = 64;
17
+ const MAX_VIRTUAL_COLUMNS = 20;
15
18
  class EmojiPickerBase extends LyraElement {
16
19
  }
17
20
  /**
@@ -26,7 +29,8 @@ class EmojiPickerBase extends LyraElement {
26
29
  * under RTL; Up/Down move by one visual row, measured from the live wrap layout), Home/End jump to
27
30
  * the first/last option, and Enter/Space picks. The search input doubles as a `role="combobox"`
28
31
  * over the same listbox: the arrow keys and Enter also work there while focus stays in the input,
29
- * with `aria-activedescendant` tracking the active option.
32
+ * with `aria-activedescendant` tracking the active option. Large data sets automatically window
33
+ * their visible rows so scrolling does not create one button per supplied emoji in the DOM.
30
34
  *
31
35
  * @customElement lr-emoji-picker
32
36
  * @event lr-change - An emoji was picked. `detail: { emoji: string }`.
@@ -59,6 +63,10 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
59
63
  // the `live()` bindings in `render()` reconcile the template against that imperative state
60
64
  // whenever a real re-render (a query/groups change) happens.
61
65
  this.activeIndex = 0;
66
+ /** The large-data path keeps only visible rows in the DOM. The regular path remains unchanged
67
+ * for small sets so consumers keep the simple grouped light-DOM shape they already receive. */
68
+ this.virtualScrollTop = 0;
69
+ this.observedGridVirtualized = false;
62
70
  this.gridId = nextId('emoji-picker-grid');
63
71
  // Lowercased search haystack per item, computed once per item object -- re-joining and
64
72
  // re-lowercasing every item on every keystroke dominates filter cost for large sets. Keyed by
@@ -116,10 +124,24 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
116
124
  const button = event.target;
117
125
  if (!(button instanceof HTMLButtonElement))
118
126
  return;
119
- const index = this.optionButtons().indexOf(button);
127
+ const indexed = Number(button.dataset.index);
128
+ const index = Number.isInteger(indexed) ? indexed : this.optionButtons().indexOf(button);
120
129
  if (index >= 0 && index !== this.activeIndex)
121
130
  this.setActiveIndex(index, false);
122
131
  };
132
+ this.onGridScroll = (event) => {
133
+ if (!this.isVirtualized)
134
+ return;
135
+ const grid = event.currentTarget;
136
+ this.virtualScrollTop = grid.scrollTop;
137
+ if (this.virtualScrollRaf !== undefined)
138
+ return;
139
+ this.virtualScrollRaf = requestAnimationFrame(() => {
140
+ this.virtualScrollRaf = undefined;
141
+ if (this.isConnected)
142
+ this.requestUpdate();
143
+ });
144
+ };
123
145
  }
124
146
  static { this.styles = [LyraElement.styles, styles]; }
125
147
  connectedCallback() {
@@ -158,12 +180,43 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
158
180
  get flatItems() {
159
181
  return this.filteredGroups.flatMap((group) => group.emojis);
160
182
  }
183
+ get isVirtualized() {
184
+ return this.flatItems.length >= VIRTUALIZE_AT;
185
+ }
186
+ cssPixelValue(name, fallback) {
187
+ const value = Number.parseFloat(getComputedStyle(this).getPropertyValue(name));
188
+ return Number.isFinite(value) && value > 0 ? value : fallback;
189
+ }
190
+ virtualRowHeight() {
191
+ return this.cssPixelValue('--lr-emoji-picker-row-height', VIRTUAL_ROW_HEIGHT_FALLBACK);
192
+ }
193
+ virtualRows() {
194
+ const columns = this.columnsPerRow();
195
+ let index = 0;
196
+ const rows = [];
197
+ for (const group of this.filteredGroups) {
198
+ for (let offset = 0; offset < group.emojis.length; offset += columns) {
199
+ rows.push({
200
+ label: offset === 0 ? group.label : undefined,
201
+ items: group.emojis.slice(offset, offset + columns).map((item) => ({ item, index: index++ })),
202
+ });
203
+ }
204
+ }
205
+ return rows;
206
+ }
161
207
  optionButtons() {
162
208
  return [...this.renderRoot.querySelectorAll('[part="emoji"]')];
163
209
  }
164
210
  /** Options in the first rendered row. Measured from live layout at call time because the
165
211
  * flex-wrap column count is fluid (container width, emoji font metrics). */
166
212
  columnsPerRow() {
213
+ if (this.isVirtualized) {
214
+ const grid = this.renderRoot.querySelector('[part="grid"]');
215
+ const width = grid?.clientWidth ?? 0;
216
+ const itemSize = this.cssPixelValue('--lr-emoji-picker-item-size', 40);
217
+ const gap = this.cssPixelValue('--lr-emoji-picker-gap', 4);
218
+ return Math.min(MAX_VIRTUAL_COLUMNS, Math.max(1, Math.floor((Math.max(width, itemSize) + gap) / (itemSize + gap))));
219
+ }
167
220
  const buttons = this.optionButtons();
168
221
  if (buttons.length === 0)
169
222
  return 1;
@@ -182,29 +235,59 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
182
235
  * in the input). */
183
236
  setActiveIndex(next, focusTarget) {
184
237
  const buttons = this.optionButtons();
185
- if (buttons.length === 0)
238
+ if (buttons.length === 0 && !this.isVirtualized)
186
239
  return;
187
- this.activeIndex = Math.max(0, Math.min(next, buttons.length - 1));
188
- const target = buttons[this.activeIndex];
240
+ this.activeIndex = Math.max(0, Math.min(next, this.flatItems.length - 1));
241
+ const target = this.isVirtualized
242
+ ? this.renderRoot.querySelector(`[part="emoji"][data-index="${this.activeIndex}"]`)
243
+ : buttons[this.activeIndex];
189
244
  const previous = this.renderRoot.querySelector('[part="emoji"][data-active]');
190
245
  if (previous && previous !== target) {
191
246
  previous.tabIndex = -1;
192
247
  previous.setAttribute('aria-selected', 'false');
193
248
  previous.removeAttribute('data-active');
194
249
  }
195
- target.tabIndex = 0;
196
- target.setAttribute('aria-selected', 'true');
197
- target.setAttribute('data-active', '');
198
- this.searchEl?.setAttribute('aria-activedescendant', target.id);
199
- target.scrollIntoView({ block: 'nearest' });
250
+ if (target) {
251
+ target.tabIndex = 0;
252
+ target.setAttribute('aria-selected', 'true');
253
+ target.setAttribute('data-active', '');
254
+ this.searchEl?.setAttribute('aria-activedescendant', target.id);
255
+ target.scrollIntoView({ block: 'nearest' });
256
+ }
257
+ else if (this.isVirtualized) {
258
+ this.searchEl?.setAttribute('aria-activedescendant', `${this.gridId}-item-${this.activeIndex}`);
259
+ const rowIndex = this.virtualRows().findIndex((row) => row.items.some(({ index }) => index === this.activeIndex));
260
+ const grid = this.renderRoot.querySelector('[part="grid"]');
261
+ if (rowIndex >= 0 && grid) {
262
+ grid.scrollTop = rowIndex * this.virtualRowHeight();
263
+ this.virtualScrollTop = grid.scrollTop;
264
+ this.requestUpdate();
265
+ }
266
+ }
200
267
  if (focusTarget)
201
- target.focus();
268
+ target?.focus();
202
269
  }
203
270
  pick(item) {
204
271
  this.value = item.emoji;
205
272
  this.emit('lr-change', { emoji: item.emoji });
206
273
  }
274
+ syncGridObserver() {
275
+ const grid = this.renderRoot.querySelector('[part="grid"]');
276
+ const virtualized = this.isVirtualized;
277
+ if (grid === this.observedGrid && virtualized === this.observedGridVirtualized)
278
+ return;
279
+ this.observedGrid?.removeEventListener('scroll', this.onGridScroll);
280
+ this.gridResizeObserver?.disconnect();
281
+ this.observedGrid = grid ?? undefined;
282
+ this.observedGridVirtualized = virtualized;
283
+ if (!grid || !virtualized)
284
+ return;
285
+ grid.addEventListener('scroll', this.onGridScroll, { passive: true });
286
+ this.gridResizeObserver = new ResizeObserver(() => this.requestUpdate());
287
+ this.gridResizeObserver.observe(grid);
288
+ }
207
289
  updated(changed) {
290
+ this.syncGridObserver();
208
291
  if (!changed.has('queryText') && !changed.has('groups'))
209
292
  return;
210
293
  const buttons = this.optionButtons();
@@ -213,12 +296,63 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
213
296
  this.searchEl?.removeAttribute('aria-activedescendant');
214
297
  return;
215
298
  }
216
- if (this.activeIndex >= buttons.length)
299
+ if (!this.isVirtualized && this.activeIndex >= buttons.length)
217
300
  this.activeIndex = 0;
218
301
  // The grid just re-rendered: re-assert the active option's imperative state (tabindex,
219
302
  // aria-selected, aria-activedescendant) against the fresh DOM and keep it scrolled into view.
220
303
  this.setActiveIndex(this.activeIndex, false);
221
304
  }
305
+ disconnectedCallback() {
306
+ super.disconnectedCallback();
307
+ this.observedGrid?.removeEventListener('scroll', this.onGridScroll);
308
+ this.gridResizeObserver?.disconnect();
309
+ this.gridResizeObserver = undefined;
310
+ this.observedGrid = undefined;
311
+ this.observedGridVirtualized = false;
312
+ if (this.virtualScrollRaf !== undefined) {
313
+ cancelAnimationFrame(this.virtualScrollRaf);
314
+ this.virtualScrollRaf = undefined;
315
+ }
316
+ }
317
+ renderEmojiButton(item, itemIndex, total) {
318
+ return html `<button
319
+ type="button"
320
+ part="emoji"
321
+ id=${`${this.gridId}-item-${itemIndex}`}
322
+ data-index=${itemIndex}
323
+ role="option"
324
+ tabindex=${live(itemIndex === this.activeIndex ? '0' : '-1')}
325
+ aria-selected=${live(itemIndex === this.activeIndex ? 'true' : 'false')}
326
+ aria-setsize=${total}
327
+ aria-posinset=${itemIndex + 1}
328
+ aria-label=${item.name}
329
+ ?data-active=${live(itemIndex === this.activeIndex)}
330
+ @click=${() => this.pick(item)}
331
+ @focusin=${this.onGridFocusIn}
332
+ @mouseenter=${() => this.setActiveIndex(itemIndex, false)}
333
+ >${item.emoji}</button>`;
334
+ }
335
+ renderVirtualRows() {
336
+ const rows = this.virtualRows();
337
+ const rowHeight = this.virtualRowHeight();
338
+ const grid = this.renderRoot.querySelector('[part="grid"]');
339
+ const viewportHeight = grid?.clientHeight || 256;
340
+ const start = Math.max(0, Math.floor(this.virtualScrollTop / rowHeight) - 3);
341
+ const end = Math.min(rows.length, Math.ceil((this.virtualScrollTop + viewportHeight) / rowHeight) + 3);
342
+ const total = this.flatItems.length;
343
+ return html `
344
+ <div part="virtual-spacer" style=${`block-size: ${rows.length * rowHeight}px`}>
345
+ ${rows.slice(start, end).map((row, offset) => html `
346
+ <div part="virtual-row" style=${`transform: translateY(${(start + offset) * rowHeight}px)`}>
347
+ ${row.label ? html `<div part="group-label">${row.label}</div>` : html `<div part="virtual-label" aria-hidden="true"></div>`}
348
+ <div part="virtual-items">
349
+ ${row.items.map(({ item, index }) => this.renderEmojiButton(item, index, total))}
350
+ </div>
351
+ </div>
352
+ `)}
353
+ </div>
354
+ `;
355
+ }
222
356
  render() {
223
357
  const items = this.flatItems;
224
358
  let index = -1;
@@ -246,24 +380,14 @@ export class LyraEmojiPicker extends FormAssociated(EmojiPickerBase) {
246
380
  >
247
381
  ${items.length === 0
248
382
  ? html `<div part="empty">${this.localize('emojiPickerEmpty')}</div>`
249
- : this.filteredGroups.map((group) => html `
383
+ : this.isVirtualized
384
+ ? this.renderVirtualRows()
385
+ : this.filteredGroups.map((group) => html `
250
386
  <div part="group-label">${group.label}</div>
251
387
  ${group.emojis.map((item) => {
252
- index++;
253
- const itemIndex = index;
254
- return html `<button
255
- type="button"
256
- part="emoji"
257
- id=${`${this.gridId}-item-${itemIndex}`}
258
- role="option"
259
- tabindex=${live(itemIndex === this.activeIndex ? '0' : '-1')}
260
- aria-selected=${live(itemIndex === this.activeIndex ? 'true' : 'false')}
261
- aria-label=${item.name}
262
- ?data-active=${live(itemIndex === this.activeIndex)}
263
- @click=${() => this.pick(item)}
264
- @mouseenter=${() => this.setActiveIndex(itemIndex, false)}
265
- >${item.emoji}</button>`;
266
- })}
388
+ index++;
389
+ return this.renderEmojiButton(item, index, items.length);
390
+ })}
267
391
  `)}
268
392
  </div>
269
393
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-picker.class.js","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emoji-picker.class.js","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.class.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-picker.styles.d.ts","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBAmElB,CAAC"}
1
+ {"version":3,"file":"emoji-picker.styles.d.ts","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBA2FlB,CAAC"}
@@ -3,6 +3,9 @@ export const styles = css `
3
3
  :host {
4
4
  display: block;
5
5
  inline-size: 100%;
6
+ --lr-emoji-picker-item-size: var(--lr-icon-button-size);
7
+ --lr-emoji-picker-gap: var(--lr-space-2xs);
8
+ --lr-emoji-picker-row-height: calc(var(--lr-emoji-picker-item-size) + var(--lr-space-l));
6
9
  }
7
10
  [part='base'] {
8
11
  display: flex;
@@ -32,6 +35,27 @@ export const styles = css `
32
35
  max-block-size: var(--lr-size-16rem);
33
36
  overflow-y: auto;
34
37
  }
38
+ [part='grid'] {
39
+ scrollbar-gutter: stable;
40
+ }
41
+ [part='virtual-spacer'] {
42
+ position: relative;
43
+ min-block-size: 100%;
44
+ }
45
+ [part='virtual-row'] {
46
+ position: absolute;
47
+ inset-inline: 0;
48
+ inset-block-start: 0;
49
+ min-block-size: var(--lr-emoji-picker-row-height);
50
+ }
51
+ [part='virtual-items'] {
52
+ display: flex;
53
+ gap: var(--lr-emoji-picker-gap);
54
+ min-block-size: var(--lr-emoji-picker-item-size);
55
+ }
56
+ [part='virtual-label'] {
57
+ block-size: var(--lr-space-l);
58
+ }
35
59
  [part='group-label'] {
36
60
  flex-basis: 100%;
37
61
  padding-block: var(--lr-space-2xs);
@@ -46,8 +70,8 @@ export const styles = css `
46
70
  display: inline-flex;
47
71
  align-items: center;
48
72
  justify-content: center;
49
- inline-size: var(--lr-size-2rem);
50
- block-size: var(--lr-size-2rem);
73
+ inline-size: var(--lr-emoji-picker-item-size);
74
+ block-size: var(--lr-emoji-picker-item-size);
51
75
  min-inline-size: var(--lr-icon-button-size);
52
76
  min-block-size: var(--lr-icon-button-size);
53
77
  border: none;
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-picker.styles.js","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmExB,CAAC"}
1
+ {"version":3,"file":"emoji-picker.styles.js","sourceRoot":"","sources":["../../../src/components/emoji-picker/emoji-picker.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2FxB,CAAC"}
@@ -0,0 +1,132 @@
1
+ import { type TemplateResult } from 'lit';
2
+ import { LyraElement } from '../../internal/lyra-element.js';
3
+ import type { LyraEntity } from '../entity-card/entity-card.class.js';
4
+ import type { LyraNeighborRow } from '../neighbor-list/neighbor-list.class.js';
5
+ import type { LyraChunk } from '../chunk-inspector/chunk-inspector.class.js';
6
+ import type { LyraProvenance } from '../provenance-panel/provenance-panel.class.js';
7
+ import type { StatVariant, StatRow } from '../stat/stat.class.js';
8
+ import '../entity-card/entity-card.class.js';
9
+ import '../neighbor-list/neighbor-list.class.js';
10
+ import '../chunk-inspector/chunk-inspector.class.js';
11
+ import '../provenance-panel/provenance-panel.class.js';
12
+ import '../stat/stat.class.js';
13
+ import '../tabs/tabs.class.js';
14
+ import '../empty/empty.class.js';
15
+ /** The exact `lr-graph.nodeTypes` entry shape -- see `lr-entity-card`'s and
16
+ * `lr-provenance-panel`'s identical local aliases for why this isn't imported from `lr-graph`
17
+ * itself. Shared verbatim with both of those, since it's forwarded to both nested components
18
+ * below without any mapping. */
19
+ type NodeTypeStyle = {
20
+ id: string;
21
+ label: string;
22
+ color?: string;
23
+ shape?: 'circle' | 'square' | 'diamond';
24
+ };
25
+ /** The three tab ids this component renders -- also `lr-tabs`' own `slot`/`tabId` values, so a
26
+ * `lr-tabs-change` listener can switch on these literally. */
27
+ export type LyraEntityDossierTab = 'relationships' | 'chunks' | 'provenance';
28
+ /**
29
+ * The headline confidence KPI shown next to the entity summary. Every field here is caller-supplied
30
+ * domain data -- the same convention `lr-stat`'s own `label`/`value`/`caption`/`rows` already use
31
+ * (a confidence metric's label is exactly as domain-specific as a "Revenue" or "Latency" stat's
32
+ * label), so none of it routes through `localize()`.
33
+ */
34
+ export interface LyraEntityDossierConfidence {
35
+ label: string;
36
+ value: string;
37
+ unit?: string;
38
+ variant?: StatVariant;
39
+ /** Exact value shown as a hover/focus tooltip on the headline value -- see `lr-stat.exactValue`. */
40
+ exactValue?: string;
41
+ caption?: string;
42
+ /** Breakdown rows (e.g. per-signal sub-scores) -- see `lr-stat.rows`. */
43
+ rows?: StatRow[];
44
+ }
45
+ /**
46
+ * `<lr-entity-dossier>` — a full entity detail surface: a persistent header (`lr-entity-card` plus
47
+ * an optional confidence `lr-stat`) above a `lr-tabs` strip for Relationships (`lr-neighbor-list`),
48
+ * Supporting chunks (`lr-chunk-inspector`), and Provenance (`lr-provenance-panel`). Pure layout —
49
+ * it never fetches, ranks, or mutates graph/document state, and never re-renders what any of those
50
+ * five composed components already render themselves; every one of their own events (`
51
+ * lr-entity-activate`, `lr-node-expand`, `lr-chunk-open`, `lr-expand`, `lr-toggle`, `lr-tabs-change`)
52
+ * bubbles through unmodified (`composed: true` crosses this component's own shadow boundary with no
53
+ * re-dispatch needed) rather than being re-declared as this component's own event.
54
+ *
55
+ * `chunks`/`thresholds` (the "supporting chunks" tab) and `provenance` (the "Provenance" tab) are
56
+ * deliberately separate inputs even though `lr-provenance-panel` can itself also show a chunks
57
+ * section: the "Supporting chunks" tab is the evidence for *this entity's own* summary/properties,
58
+ * while `provenance` is the broader grounding chain (which may span other entities, relationships,
59
+ * and communities, and may or may not reuse the same chunk set) — a host is free to pass the same
60
+ * array to both when the two concepts genuinely coincide.
61
+ *
62
+ * Tab labels reuse the exact `localize()` keys the composed child already uses for its own
63
+ * accessible name (`neighborListLabel`, `chunkInspectorLabel`, `provenancePanelLabel`) rather than
64
+ * new dossier-specific keys, so a translated locale only has to cover each string once and the tab
65
+ * strip and the panel underneath it always agree.
66
+ *
67
+ * This component declares no events of its own -- `lr-tabs-change` (`detail: { tabId:
68
+ * LyraEntityDossierTab }`) and every composed child's own event bubble through unmodified, the
69
+ * same "pure projection + event conduit" convention `lr-provenance-panel` and
70
+ * `lr-spreadsheet-viewer`'s internal `lr-tabs` already establish.
71
+ *
72
+ * @customElement lr-entity-dossier
73
+ * @csspart base - The root wrapper, or the empty state's wrapper when `entity` is `null`.
74
+ * @csspart header - The wrapper around the entity summary and the confidence stat.
75
+ * @csspart entity-card - The nested `lr-entity-card`.
76
+ * @csspart confidence - The nested confidence `lr-stat`, only rendered when `confidence` is set.
77
+ * @csspart tabs - The nested `lr-tabs` strip.
78
+ * @csspart neighbor-list - The nested `lr-neighbor-list`, inside the Relationships tab.
79
+ * @csspart chunk-inspector - The nested `lr-chunk-inspector`, inside the Supporting chunks tab.
80
+ * @csspart provenance-panel - The nested `lr-provenance-panel`, inside the Provenance tab.
81
+ * @csspart empty - The empty state shown when `entity` is `null`.
82
+ */
83
+ export declare class LyraEntityDossier extends LyraElement {
84
+ static styles: import("lit").CSSResultGroup[];
85
+ /** `null` renders the shared `lr-empty` `noData` state in place of the whole dossier. */
86
+ entity: LyraEntity | null;
87
+ /** `lr-graph` `nodeTypes` pass-through, forwarded to both `lr-entity-card` and
88
+ * `lr-provenance-panel` so the entity type badge and any provenance entity chips resolve
89
+ * identically. */
90
+ types: NodeTypeStyle[];
91
+ /** Forwarded to `lr-entity-card`'s own `communityLabel`. */
92
+ communityLabel: string;
93
+ /** Forwarded to `lr-entity-card`'s own `showFocusButton`. */
94
+ showFocusButton: boolean;
95
+ /** Headline confidence KPI, rendered as an `lr-stat` next to the entity summary. Omitted
96
+ * entirely (no placeholder, no empty stat) when `null`. */
97
+ confidence: LyraEntityDossierConfidence | null;
98
+ /** Forwarded to `lr-neighbor-list`'s own `rows`. */
99
+ neighbors: LyraNeighborRow[];
100
+ /** Forwarded to `lr-neighbor-list`'s own `groupByRelation`. */
101
+ groupByRelation: boolean;
102
+ /** Forwarded to `lr-neighbor-list`'s own `expandable`. */
103
+ expandable: boolean;
104
+ /** Forwarded to `lr-chunk-inspector`'s own `chunks` -- the evidence for this entity's own
105
+ * summary, distinct from `provenance` (see the class doc above). */
106
+ chunks: LyraChunk[];
107
+ /** Forwarded to both `lr-chunk-inspector`'s and `lr-provenance-panel`'s own `thresholds`, so
108
+ * the score tiers agree everywhere a score renders in this dossier. */
109
+ thresholds: {
110
+ high: number;
111
+ medium: number;
112
+ };
113
+ /** Forwarded to `lr-provenance-panel`'s own `provenance`. */
114
+ provenance: LyraProvenance | null;
115
+ /** Accessible name forwarded to the internal `lr-tabs` strip. Unset, the tab strip renders
116
+ * without an `aria-label` (matching `lr-tabs`' own unset-default behavior). */
117
+ accessibleLabel: string | null;
118
+ /** Which tab is active -- internal, not a controlled public property: `lr-tabs` already owns
119
+ * this state, and a one-way `.active=${...}` binding driven by a *stale* public property here
120
+ * would fight the user's own click the next time this component re-renders for an unrelated
121
+ * reason (see `lr-spreadsheet-viewer`'s identical `activeSheetIndex` pattern). */
122
+ private activeTab;
123
+ private onTabsChange;
124
+ render(): TemplateResult;
125
+ }
126
+ declare global {
127
+ interface HTMLElementTagNameMap {
128
+ 'lr-entity-dossier': LyraEntityDossier;
129
+ }
130
+ }
131
+ export {};
132
+ //# sourceMappingURL=entity-dossier.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-dossier.class.d.ts","sourceRoot":"","sources":["../../../src/components/entity-dossier/entity-dossier.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,qCAAqC,CAAC;AAC7C,OAAO,yCAAyC,CAAC;AACjD,OAAO,6CAA6C,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AAGjC;;;iCAGiC;AACjC,KAAK,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;CAAE,CAAC;AAE5G;+DAC+D;AAC/D,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAChD,MAAM,CAAC,MAAM,iCAAgC;IAE7C,yFAAyF;IACzD,MAAM,EAAE,UAAU,GAAG,IAAI,CAAQ;IACjE;;uBAEmB;IACa,KAAK,EAAE,aAAa,EAAE,CAAM;IAC5D,4DAA4D;IAChB,cAAc,SAAM;IAChE,6DAA6D;IACA,eAAe,UAAQ;IACpF;gEAC4D;IAC5B,UAAU,EAAE,2BAA2B,GAAG,IAAI,CAAQ;IACtF,oDAAoD;IACpB,SAAS,EAAE,eAAe,EAAE,CAAM;IAClE,+DAA+D;IACF,eAAe,UAAS;IACrF,0DAA0D;IAC7B,UAAU,UAAS;IAChD;yEACqE;IACrC,MAAM,EAAE,SAAS,EAAE,CAAM;IACzD;4EACwE;IACxC,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAA+B;IAC3G,6DAA6D;IAC7B,UAAU,EAAE,cAAc,GAAG,IAAI,CAAQ;IACzE;oFACgF;IACzC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7E;;;uFAGmF;IAC1E,OAAO,CAAC,SAAS,CAAyC;IAEnE,OAAO,CAAC,YAAY,CAElB;IAEF,MAAM,IAAI,cAAc,CAgDvB;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,iBAAiB,CAAC;KACxC;CACF"}