@cognivo/components 0.8.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 (879) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +119 -0
  3. package/dist/ai.d.ts +102 -0
  4. package/dist/ai.d.ts.map +1 -0
  5. package/dist/ai.js +181 -0
  6. package/dist/ai.js.map +1 -0
  7. package/dist/bias.d.ts +21 -0
  8. package/dist/bias.d.ts.map +1 -0
  9. package/dist/bias.js +15 -0
  10. package/dist/bias.js.map +1 -0
  11. package/dist/chunks/floating-DfsaYJnh.js +103 -0
  12. package/dist/chunks/floating-DfsaYJnh.js.map +1 -0
  13. package/dist/chunks/focus-trap-BdRNhSPD.js +53 -0
  14. package/dist/chunks/focus-trap-BdRNhSPD.js.map +1 -0
  15. package/dist/chunks/outside-click-CP1P1fK3.js +15 -0
  16. package/dist/chunks/outside-click-CP1P1fK3.js.map +1 -0
  17. package/dist/chunks/premium.css-9I4kHrsl.js +466 -0
  18. package/dist/chunks/premium.css-9I4kHrsl.js.map +1 -0
  19. package/dist/chunks/roving-index-BuO0tTba.js +31 -0
  20. package/dist/chunks/roving-index-BuO0tTba.js.map +1 -0
  21. package/dist/cognivo.min.js +33066 -0
  22. package/dist/cognivo.min.js.map +1 -0
  23. package/dist/components/ai-ab-test/ai-ab-test.d.ts +22 -0
  24. package/dist/components/ai-ab-test/ai-ab-test.d.ts.map +1 -0
  25. package/dist/components/ai-ab-test/ai-ab-test.js +173 -0
  26. package/dist/components/ai-ab-test/ai-ab-test.js.map +1 -0
  27. package/dist/components/ai-accessibility-report/ai-accessibility-report.d.ts +33 -0
  28. package/dist/components/ai-accessibility-report/ai-accessibility-report.d.ts.map +1 -0
  29. package/dist/components/ai-accessibility-report/ai-accessibility-report.js +380 -0
  30. package/dist/components/ai-accessibility-report/ai-accessibility-report.js.map +1 -0
  31. package/dist/components/ai-action-preview/ai-action-preview.d.ts +32 -0
  32. package/dist/components/ai-action-preview/ai-action-preview.d.ts.map +1 -0
  33. package/dist/components/ai-action-preview/ai-action-preview.js +295 -0
  34. package/dist/components/ai-action-preview/ai-action-preview.js.map +1 -0
  35. package/dist/components/ai-agent-card/ai-agent-card.d.ts +18 -0
  36. package/dist/components/ai-agent-card/ai-agent-card.d.ts.map +1 -0
  37. package/dist/components/ai-agent-card/ai-agent-card.js +267 -0
  38. package/dist/components/ai-agent-card/ai-agent-card.js.map +1 -0
  39. package/dist/components/ai-agent-steps/ai-agent-steps.d.ts +53 -0
  40. package/dist/components/ai-agent-steps/ai-agent-steps.d.ts.map +1 -0
  41. package/dist/components/ai-agent-steps/ai-agent-steps.js +297 -0
  42. package/dist/components/ai-agent-steps/ai-agent-steps.js.map +1 -0
  43. package/dist/components/ai-alert-card/ai-alert-card.d.ts +25 -0
  44. package/dist/components/ai-alert-card/ai-alert-card.d.ts.map +1 -0
  45. package/dist/components/ai-alert-card/ai-alert-card.js +235 -0
  46. package/dist/components/ai-alert-card/ai-alert-card.js.map +1 -0
  47. package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts +51 -0
  48. package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts.map +1 -0
  49. package/dist/components/ai-analytics-chart/ai-analytics-chart.js +334 -0
  50. package/dist/components/ai-analytics-chart/ai-analytics-chart.js.map +1 -0
  51. package/dist/components/ai-annotation/ai-annotation.d.ts +34 -0
  52. package/dist/components/ai-annotation/ai-annotation.d.ts.map +1 -0
  53. package/dist/components/ai-annotation/ai-annotation.js +254 -0
  54. package/dist/components/ai-annotation/ai-annotation.js.map +1 -0
  55. package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts +35 -0
  56. package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts.map +1 -0
  57. package/dist/components/ai-api-key-manager/ai-api-key-manager.js +443 -0
  58. package/dist/components/ai-api-key-manager/ai-api-key-manager.js.map +1 -0
  59. package/dist/components/ai-app-sidebar/ai-app-sidebar.d.ts +26 -0
  60. package/dist/components/ai-app-sidebar/ai-app-sidebar.d.ts.map +1 -0
  61. package/dist/components/ai-app-sidebar/ai-app-sidebar.js +206 -0
  62. package/dist/components/ai-app-sidebar/ai-app-sidebar.js.map +1 -0
  63. package/dist/components/ai-assistant-widget/ai-assistant-widget.d.ts +28 -0
  64. package/dist/components/ai-assistant-widget/ai-assistant-widget.d.ts.map +1 -0
  65. package/dist/components/ai-assistant-widget/ai-assistant-widget.js +335 -0
  66. package/dist/components/ai-assistant-widget/ai-assistant-widget.js.map +1 -0
  67. package/dist/components/ai-audio-player/ai-audio-player.d.ts +31 -0
  68. package/dist/components/ai-audio-player/ai-audio-player.d.ts.map +1 -0
  69. package/dist/components/ai-audio-player/ai-audio-player.js +274 -0
  70. package/dist/components/ai-audio-player/ai-audio-player.js.map +1 -0
  71. package/dist/components/ai-avatar/ai-avatar.d.ts +20 -0
  72. package/dist/components/ai-avatar/ai-avatar.d.ts.map +1 -0
  73. package/dist/components/ai-avatar/ai-avatar.js +77 -0
  74. package/dist/components/ai-avatar/ai-avatar.js.map +1 -0
  75. package/dist/components/ai-badge/ai-badge.d.ts +20 -0
  76. package/dist/components/ai-badge/ai-badge.d.ts.map +1 -0
  77. package/dist/components/ai-badge/ai-badge.js +69 -0
  78. package/dist/components/ai-badge/ai-badge.js.map +1 -0
  79. package/dist/components/ai-batch-progress/ai-batch-progress.d.ts +21 -0
  80. package/dist/components/ai-batch-progress/ai-batch-progress.d.ts.map +1 -0
  81. package/dist/components/ai-batch-progress/ai-batch-progress.js +334 -0
  82. package/dist/components/ai-batch-progress/ai-batch-progress.js.map +1 -0
  83. package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts +31 -0
  84. package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts.map +1 -0
  85. package/dist/components/ai-cache-indicator/ai-cache-indicator.js +314 -0
  86. package/dist/components/ai-cache-indicator/ai-cache-indicator.js.map +1 -0
  87. package/dist/components/ai-capture-flow/ai-capture-flow.d.ts +33 -0
  88. package/dist/components/ai-capture-flow/ai-capture-flow.d.ts.map +1 -0
  89. package/dist/components/ai-capture-flow/ai-capture-flow.js +336 -0
  90. package/dist/components/ai-capture-flow/ai-capture-flow.js.map +1 -0
  91. package/dist/components/ai-changelog/ai-changelog.d.ts +24 -0
  92. package/dist/components/ai-changelog/ai-changelog.d.ts.map +1 -0
  93. package/dist/components/ai-changelog/ai-changelog.js +292 -0
  94. package/dist/components/ai-changelog/ai-changelog.js.map +1 -0
  95. package/dist/components/ai-chart-summary/ai-chart-summary.d.ts +30 -0
  96. package/dist/components/ai-chart-summary/ai-chart-summary.d.ts.map +1 -0
  97. package/dist/components/ai-chart-summary/ai-chart-summary.js +269 -0
  98. package/dist/components/ai-chart-summary/ai-chart-summary.js.map +1 -0
  99. package/dist/components/ai-chat/ai-chat.d.ts +70 -0
  100. package/dist/components/ai-chat/ai-chat.d.ts.map +1 -0
  101. package/dist/components/ai-chat/ai-chat.js +707 -0
  102. package/dist/components/ai-chat/ai-chat.js.map +1 -0
  103. package/dist/components/ai-citation/ai-citation.d.ts +27 -0
  104. package/dist/components/ai-citation/ai-citation.d.ts.map +1 -0
  105. package/dist/components/ai-citation/ai-citation.js +277 -0
  106. package/dist/components/ai-citation/ai-citation.js.map +1 -0
  107. package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts +54 -0
  108. package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts.map +1 -0
  109. package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js +387 -0
  110. package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js.map +1 -0
  111. package/dist/components/ai-command-palette/ai-command-palette.d.ts +34 -0
  112. package/dist/components/ai-command-palette/ai-command-palette.d.ts.map +1 -0
  113. package/dist/components/ai-command-palette/ai-command-palette.js +119 -0
  114. package/dist/components/ai-command-palette/ai-command-palette.js.map +1 -0
  115. package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts +31 -0
  116. package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts.map +1 -0
  117. package/dist/components/ai-confidence-badge/ai-confidence-badge.js +200 -0
  118. package/dist/components/ai-confidence-badge/ai-confidence-badge.js.map +1 -0
  119. package/dist/components/ai-confidence-slider/ai-confidence-slider.d.ts +16 -0
  120. package/dist/components/ai-confidence-slider/ai-confidence-slider.d.ts.map +1 -0
  121. package/dist/components/ai-confidence-slider/ai-confidence-slider.js +212 -0
  122. package/dist/components/ai-confidence-slider/ai-confidence-slider.js.map +1 -0
  123. package/dist/components/ai-consent-manager/ai-consent-manager.d.ts +26 -0
  124. package/dist/components/ai-consent-manager/ai-consent-manager.d.ts.map +1 -0
  125. package/dist/components/ai-consent-manager/ai-consent-manager.js +169 -0
  126. package/dist/components/ai-consent-manager/ai-consent-manager.js.map +1 -0
  127. package/dist/components/ai-context-window/ai-context-window.d.ts +20 -0
  128. package/dist/components/ai-context-window/ai-context-window.d.ts.map +1 -0
  129. package/dist/components/ai-context-window/ai-context-window.js +201 -0
  130. package/dist/components/ai-context-window/ai-context-window.js.map +1 -0
  131. package/dist/components/ai-copy-button/ai-copy-button.d.ts +23 -0
  132. package/dist/components/ai-copy-button/ai-copy-button.d.ts.map +1 -0
  133. package/dist/components/ai-copy-button/ai-copy-button.js +193 -0
  134. package/dist/components/ai-copy-button/ai-copy-button.js.map +1 -0
  135. package/dist/components/ai-cost-dashboard/ai-cost-dashboard.d.ts +28 -0
  136. package/dist/components/ai-cost-dashboard/ai-cost-dashboard.d.ts.map +1 -0
  137. package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js +328 -0
  138. package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js.map +1 -0
  139. package/dist/components/ai-data-card/ai-data-card.d.ts +50 -0
  140. package/dist/components/ai-data-card/ai-data-card.d.ts.map +1 -0
  141. package/dist/components/ai-data-card/ai-data-card.js +358 -0
  142. package/dist/components/ai-data-card/ai-data-card.js.map +1 -0
  143. package/dist/components/ai-data-lineage/ai-data-lineage.d.ts +28 -0
  144. package/dist/components/ai-data-lineage/ai-data-lineage.d.ts.map +1 -0
  145. package/dist/components/ai-data-lineage/ai-data-lineage.js +200 -0
  146. package/dist/components/ai-data-lineage/ai-data-lineage.js.map +1 -0
  147. package/dist/components/ai-data-preview/ai-data-preview.d.ts +31 -0
  148. package/dist/components/ai-data-preview/ai-data-preview.d.ts.map +1 -0
  149. package/dist/components/ai-data-preview/ai-data-preview.js +415 -0
  150. package/dist/components/ai-data-preview/ai-data-preview.js.map +1 -0
  151. package/dist/components/ai-data-table/ai-data-table.d.ts +62 -0
  152. package/dist/components/ai-data-table/ai-data-table.d.ts.map +1 -0
  153. package/dist/components/ai-data-table/ai-data-table.js +388 -0
  154. package/dist/components/ai-data-table/ai-data-table.js.map +1 -0
  155. package/dist/components/ai-debug-console/ai-debug-console.d.ts +39 -0
  156. package/dist/components/ai-debug-console/ai-debug-console.d.ts.map +1 -0
  157. package/dist/components/ai-debug-console/ai-debug-console.js +517 -0
  158. package/dist/components/ai-debug-console/ai-debug-console.js.map +1 -0
  159. package/dist/components/ai-detection-canvas/ai-detection-canvas.d.ts +26 -0
  160. package/dist/components/ai-detection-canvas/ai-detection-canvas.d.ts.map +1 -0
  161. package/dist/components/ai-detection-canvas/ai-detection-canvas.js +233 -0
  162. package/dist/components/ai-detection-canvas/ai-detection-canvas.js.map +1 -0
  163. package/dist/components/ai-diff-panel/ai-diff-panel.d.ts +35 -0
  164. package/dist/components/ai-diff-panel/ai-diff-panel.d.ts.map +1 -0
  165. package/dist/components/ai-diff-panel/ai-diff-panel.js +374 -0
  166. package/dist/components/ai-diff-panel/ai-diff-panel.js.map +1 -0
  167. package/dist/components/ai-embedding-viz/ai-embedding-viz.d.ts +31 -0
  168. package/dist/components/ai-embedding-viz/ai-embedding-viz.d.ts.map +1 -0
  169. package/dist/components/ai-embedding-viz/ai-embedding-viz.js +256 -0
  170. package/dist/components/ai-embedding-viz/ai-embedding-viz.js.map +1 -0
  171. package/dist/components/ai-empty-state/ai-empty-state.d.ts +18 -0
  172. package/dist/components/ai-empty-state/ai-empty-state.d.ts.map +1 -0
  173. package/dist/components/ai-empty-state/ai-empty-state.js +58 -0
  174. package/dist/components/ai-empty-state/ai-empty-state.js.map +1 -0
  175. package/dist/components/ai-error-boundary/ai-error-boundary.d.ts +17 -0
  176. package/dist/components/ai-error-boundary/ai-error-boundary.d.ts.map +1 -0
  177. package/dist/components/ai-error-boundary/ai-error-boundary.js +212 -0
  178. package/dist/components/ai-error-boundary/ai-error-boundary.js.map +1 -0
  179. package/dist/components/ai-eval-scorecard/ai-eval-scorecard.d.ts +19 -0
  180. package/dist/components/ai-eval-scorecard/ai-eval-scorecard.d.ts.map +1 -0
  181. package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js +199 -0
  182. package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js.map +1 -0
  183. package/dist/components/ai-feature-flag/ai-feature-flag.d.ts +43 -0
  184. package/dist/components/ai-feature-flag/ai-feature-flag.d.ts.map +1 -0
  185. package/dist/components/ai-feature-flag/ai-feature-flag.js +457 -0
  186. package/dist/components/ai-feature-flag/ai-feature-flag.js.map +1 -0
  187. package/dist/components/ai-feedback/ai-feedback.d.ts +28 -0
  188. package/dist/components/ai-feedback/ai-feedback.d.ts.map +1 -0
  189. package/dist/components/ai-feedback/ai-feedback.js +478 -0
  190. package/dist/components/ai-feedback/ai-feedback.js.map +1 -0
  191. package/dist/components/ai-file-upload/ai-file-upload.d.ts +18 -0
  192. package/dist/components/ai-file-upload/ai-file-upload.d.ts.map +1 -0
  193. package/dist/components/ai-file-upload/ai-file-upload.js +70 -0
  194. package/dist/components/ai-file-upload/ai-file-upload.js.map +1 -0
  195. package/dist/components/ai-form-generator/ai-form-generator.d.ts +39 -0
  196. package/dist/components/ai-form-generator/ai-form-generator.d.ts.map +1 -0
  197. package/dist/components/ai-form-generator/ai-form-generator.js +225 -0
  198. package/dist/components/ai-form-generator/ai-form-generator.js.map +1 -0
  199. package/dist/components/ai-guardrail/ai-guardrail.d.ts +22 -0
  200. package/dist/components/ai-guardrail/ai-guardrail.d.ts.map +1 -0
  201. package/dist/components/ai-guardrail/ai-guardrail.js +229 -0
  202. package/dist/components/ai-guardrail/ai-guardrail.js.map +1 -0
  203. package/dist/components/ai-heatmap/ai-heatmap.d.ts +38 -0
  204. package/dist/components/ai-heatmap/ai-heatmap.d.ts.map +1 -0
  205. package/dist/components/ai-heatmap/ai-heatmap.js +250 -0
  206. package/dist/components/ai-heatmap/ai-heatmap.js.map +1 -0
  207. package/dist/components/ai-insight-card/ai-insight-card.d.ts +28 -0
  208. package/dist/components/ai-insight-card/ai-insight-card.d.ts.map +1 -0
  209. package/dist/components/ai-insight-card/ai-insight-card.js +319 -0
  210. package/dist/components/ai-insight-card/ai-insight-card.js.map +1 -0
  211. package/dist/components/ai-json-viewer/ai-json-viewer.d.ts +24 -0
  212. package/dist/components/ai-json-viewer/ai-json-viewer.d.ts.map +1 -0
  213. package/dist/components/ai-json-viewer/ai-json-viewer.js +173 -0
  214. package/dist/components/ai-json-viewer/ai-json-viewer.js.map +1 -0
  215. package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.d.ts +25 -0
  216. package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.d.ts.map +1 -0
  217. package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js +240 -0
  218. package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js.map +1 -0
  219. package/dist/components/ai-kpi-grid/ai-kpi-grid.d.ts +26 -0
  220. package/dist/components/ai-kpi-grid/ai-kpi-grid.d.ts.map +1 -0
  221. package/dist/components/ai-kpi-grid/ai-kpi-grid.js +180 -0
  222. package/dist/components/ai-kpi-grid/ai-kpi-grid.js.map +1 -0
  223. package/dist/components/ai-labeling-board/ai-labeling-board.d.ts +31 -0
  224. package/dist/components/ai-labeling-board/ai-labeling-board.d.ts.map +1 -0
  225. package/dist/components/ai-labeling-board/ai-labeling-board.js +393 -0
  226. package/dist/components/ai-labeling-board/ai-labeling-board.js.map +1 -0
  227. package/dist/components/ai-memory-panel/ai-memory-panel.d.ts +24 -0
  228. package/dist/components/ai-memory-panel/ai-memory-panel.d.ts.map +1 -0
  229. package/dist/components/ai-memory-panel/ai-memory-panel.js +238 -0
  230. package/dist/components/ai-memory-panel/ai-memory-panel.js.map +1 -0
  231. package/dist/components/ai-model-comparison/ai-model-comparison.d.ts +25 -0
  232. package/dist/components/ai-model-comparison/ai-model-comparison.d.ts.map +1 -0
  233. package/dist/components/ai-model-comparison/ai-model-comparison.js +321 -0
  234. package/dist/components/ai-model-comparison/ai-model-comparison.js.map +1 -0
  235. package/dist/components/ai-model-selector/ai-model-selector.d.ts +29 -0
  236. package/dist/components/ai-model-selector/ai-model-selector.d.ts.map +1 -0
  237. package/dist/components/ai-model-selector/ai-model-selector.js +200 -0
  238. package/dist/components/ai-model-selector/ai-model-selector.js.map +1 -0
  239. package/dist/components/ai-notification-center/ai-notification-center.d.ts +34 -0
  240. package/dist/components/ai-notification-center/ai-notification-center.d.ts.map +1 -0
  241. package/dist/components/ai-notification-center/ai-notification-center.js +334 -0
  242. package/dist/components/ai-notification-center/ai-notification-center.js.map +1 -0
  243. package/dist/components/ai-onboarding/ai-onboarding.d.ts +35 -0
  244. package/dist/components/ai-onboarding/ai-onboarding.d.ts.map +1 -0
  245. package/dist/components/ai-onboarding/ai-onboarding.js +375 -0
  246. package/dist/components/ai-onboarding/ai-onboarding.js.map +1 -0
  247. package/dist/components/ai-permission-gate/ai-permission-gate.d.ts +27 -0
  248. package/dist/components/ai-permission-gate/ai-permission-gate.d.ts.map +1 -0
  249. package/dist/components/ai-permission-gate/ai-permission-gate.js +193 -0
  250. package/dist/components/ai-permission-gate/ai-permission-gate.js.map +1 -0
  251. package/dist/components/ai-personalization-dash/ai-personalization-dash.d.ts +27 -0
  252. package/dist/components/ai-personalization-dash/ai-personalization-dash.d.ts.map +1 -0
  253. package/dist/components/ai-personalization-dash/ai-personalization-dash.js +181 -0
  254. package/dist/components/ai-personalization-dash/ai-personalization-dash.js.map +1 -0
  255. package/dist/components/ai-presence/ai-presence.d.ts +27 -0
  256. package/dist/components/ai-presence/ai-presence.d.ts.map +1 -0
  257. package/dist/components/ai-presence/ai-presence.js +261 -0
  258. package/dist/components/ai-presence/ai-presence.js.map +1 -0
  259. package/dist/components/ai-progress-steps/ai-progress-steps.d.ts +20 -0
  260. package/dist/components/ai-progress-steps/ai-progress-steps.d.ts.map +1 -0
  261. package/dist/components/ai-progress-steps/ai-progress-steps.js +201 -0
  262. package/dist/components/ai-progress-steps/ai-progress-steps.js.map +1 -0
  263. package/dist/components/ai-prompt-editor/ai-prompt-editor.d.ts +25 -0
  264. package/dist/components/ai-prompt-editor/ai-prompt-editor.d.ts.map +1 -0
  265. package/dist/components/ai-prompt-editor/ai-prompt-editor.js +294 -0
  266. package/dist/components/ai-prompt-editor/ai-prompt-editor.js.map +1 -0
  267. package/dist/components/ai-prompt-template/ai-prompt-template.d.ts +20 -0
  268. package/dist/components/ai-prompt-template/ai-prompt-template.d.ts.map +1 -0
  269. package/dist/components/ai-prompt-template/ai-prompt-template.js +288 -0
  270. package/dist/components/ai-prompt-template/ai-prompt-template.js.map +1 -0
  271. package/dist/components/ai-rag-panel/ai-rag-panel.d.ts +24 -0
  272. package/dist/components/ai-rag-panel/ai-rag-panel.d.ts.map +1 -0
  273. package/dist/components/ai-rag-panel/ai-rag-panel.js +226 -0
  274. package/dist/components/ai-rag-panel/ai-rag-panel.js.map +1 -0
  275. package/dist/components/ai-reasoning-tree/ai-reasoning-tree.d.ts +20 -0
  276. package/dist/components/ai-reasoning-tree/ai-reasoning-tree.d.ts.map +1 -0
  277. package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js +180 -0
  278. package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js.map +1 -0
  279. package/dist/components/ai-result-panel/ai-result-panel.d.ts +35 -0
  280. package/dist/components/ai-result-panel/ai-result-panel.d.ts.map +1 -0
  281. package/dist/components/ai-result-panel/ai-result-panel.js +412 -0
  282. package/dist/components/ai-result-panel/ai-result-panel.js.map +1 -0
  283. package/dist/components/ai-reveal-animation/ai-reveal-animation.d.ts +28 -0
  284. package/dist/components/ai-reveal-animation/ai-reveal-animation.d.ts.map +1 -0
  285. package/dist/components/ai-reveal-animation/ai-reveal-animation.js +146 -0
  286. package/dist/components/ai-reveal-animation/ai-reveal-animation.js.map +1 -0
  287. package/dist/components/ai-reward-signal/ai-reward-signal.d.ts +22 -0
  288. package/dist/components/ai-reward-signal/ai-reward-signal.d.ts.map +1 -0
  289. package/dist/components/ai-reward-signal/ai-reward-signal.js +231 -0
  290. package/dist/components/ai-reward-signal/ai-reward-signal.js.map +1 -0
  291. package/dist/components/ai-rich-message/ai-rich-message.d.ts +38 -0
  292. package/dist/components/ai-rich-message/ai-rich-message.d.ts.map +1 -0
  293. package/dist/components/ai-rich-message/ai-rich-message.js +285 -0
  294. package/dist/components/ai-rich-message/ai-rich-message.js.map +1 -0
  295. package/dist/components/ai-scenario-panel/ai-scenario-panel.d.ts +19 -0
  296. package/dist/components/ai-scenario-panel/ai-scenario-panel.d.ts.map +1 -0
  297. package/dist/components/ai-scenario-panel/ai-scenario-panel.js +182 -0
  298. package/dist/components/ai-scenario-panel/ai-scenario-panel.js.map +1 -0
  299. package/dist/components/ai-search/ai-search.d.ts +38 -0
  300. package/dist/components/ai-search/ai-search.d.ts.map +1 -0
  301. package/dist/components/ai-search/ai-search.js +397 -0
  302. package/dist/components/ai-search/ai-search.js.map +1 -0
  303. package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.d.ts +21 -0
  304. package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.d.ts.map +1 -0
  305. package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js +185 -0
  306. package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js.map +1 -0
  307. package/dist/components/ai-sidebar/ai-sidebar.d.ts +19 -0
  308. package/dist/components/ai-sidebar/ai-sidebar.d.ts.map +1 -0
  309. package/dist/components/ai-sidebar/ai-sidebar.js +59 -0
  310. package/dist/components/ai-sidebar/ai-sidebar.js.map +1 -0
  311. package/dist/components/ai-similarity-card/ai-similarity-card.d.ts +23 -0
  312. package/dist/components/ai-similarity-card/ai-similarity-card.d.ts.map +1 -0
  313. package/dist/components/ai-similarity-card/ai-similarity-card.js +224 -0
  314. package/dist/components/ai-similarity-card/ai-similarity-card.js.map +1 -0
  315. package/dist/components/ai-source-graph/ai-source-graph.d.ts +19 -0
  316. package/dist/components/ai-source-graph/ai-source-graph.d.ts.map +1 -0
  317. package/dist/components/ai-source-graph/ai-source-graph.js +226 -0
  318. package/dist/components/ai-source-graph/ai-source-graph.js.map +1 -0
  319. package/dist/components/ai-status-page/ai-status-page.d.ts +32 -0
  320. package/dist/components/ai-status-page/ai-status-page.d.ts.map +1 -0
  321. package/dist/components/ai-status-page/ai-status-page.js +304 -0
  322. package/dist/components/ai-status-page/ai-status-page.js.map +1 -0
  323. package/dist/components/ai-streaming-text/ai-streaming-text.d.ts +23 -0
  324. package/dist/components/ai-streaming-text/ai-streaming-text.d.ts.map +1 -0
  325. package/dist/components/ai-streaming-text/ai-streaming-text.js +80 -0
  326. package/dist/components/ai-streaming-text/ai-streaming-text.js.map +1 -0
  327. package/dist/components/ai-test-runner/ai-test-runner.d.ts +37 -0
  328. package/dist/components/ai-test-runner/ai-test-runner.d.ts.map +1 -0
  329. package/dist/components/ai-test-runner/ai-test-runner.js +448 -0
  330. package/dist/components/ai-test-runner/ai-test-runner.js.map +1 -0
  331. package/dist/components/ai-thinking/ai-thinking.d.ts +33 -0
  332. package/dist/components/ai-thinking/ai-thinking.d.ts.map +1 -0
  333. package/dist/components/ai-thinking/ai-thinking.js +371 -0
  334. package/dist/components/ai-thinking/ai-thinking.js.map +1 -0
  335. package/dist/components/ai-timeline/ai-timeline.d.ts +28 -0
  336. package/dist/components/ai-timeline/ai-timeline.d.ts.map +1 -0
  337. package/dist/components/ai-timeline/ai-timeline.js +378 -0
  338. package/dist/components/ai-timeline/ai-timeline.js.map +1 -0
  339. package/dist/components/ai-toast/ai-toast.d.ts +27 -0
  340. package/dist/components/ai-toast/ai-toast.d.ts.map +1 -0
  341. package/dist/components/ai-toast/ai-toast.js +68 -0
  342. package/dist/components/ai-toast/ai-toast.js.map +1 -0
  343. package/dist/components/ai-token-tracker/ai-token-tracker.d.ts +20 -0
  344. package/dist/components/ai-token-tracker/ai-token-tracker.d.ts.map +1 -0
  345. package/dist/components/ai-token-tracker/ai-token-tracker.js +235 -0
  346. package/dist/components/ai-token-tracker/ai-token-tracker.js.map +1 -0
  347. package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.d.ts +31 -0
  348. package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.d.ts.map +1 -0
  349. package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js +225 -0
  350. package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js.map +1 -0
  351. package/dist/components/ai-tool-indicator/ai-tool-indicator.d.ts +18 -0
  352. package/dist/components/ai-tool-indicator/ai-tool-indicator.d.ts.map +1 -0
  353. package/dist/components/ai-tool-indicator/ai-tool-indicator.js +186 -0
  354. package/dist/components/ai-tool-indicator/ai-tool-indicator.js.map +1 -0
  355. package/dist/components/ai-transform-slider/ai-transform-slider.d.ts +21 -0
  356. package/dist/components/ai-transform-slider/ai-transform-slider.d.ts.map +1 -0
  357. package/dist/components/ai-transform-slider/ai-transform-slider.js +270 -0
  358. package/dist/components/ai-transform-slider/ai-transform-slider.js.map +1 -0
  359. package/dist/components/ai-translation-panel/ai-translation-panel.d.ts +24 -0
  360. package/dist/components/ai-translation-panel/ai-translation-panel.d.ts.map +1 -0
  361. package/dist/components/ai-translation-panel/ai-translation-panel.js +347 -0
  362. package/dist/components/ai-translation-panel/ai-translation-panel.js.map +1 -0
  363. package/dist/components/ai-usage-meter/ai-usage-meter.d.ts +33 -0
  364. package/dist/components/ai-usage-meter/ai-usage-meter.d.ts.map +1 -0
  365. package/dist/components/ai-usage-meter/ai-usage-meter.js +286 -0
  366. package/dist/components/ai-usage-meter/ai-usage-meter.js.map +1 -0
  367. package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts +35 -0
  368. package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts.map +1 -0
  369. package/dist/components/ai-validation-checklist/ai-validation-checklist.js +360 -0
  370. package/dist/components/ai-validation-checklist/ai-validation-checklist.js.map +1 -0
  371. package/dist/components/ai-version-selector/ai-version-selector.d.ts +28 -0
  372. package/dist/components/ai-version-selector/ai-version-selector.d.ts.map +1 -0
  373. package/dist/components/ai-version-selector/ai-version-selector.js +326 -0
  374. package/dist/components/ai-version-selector/ai-version-selector.js.map +1 -0
  375. package/dist/components/ai-voice-panel/ai-voice-panel.d.ts +46 -0
  376. package/dist/components/ai-voice-panel/ai-voice-panel.d.ts.map +1 -0
  377. package/dist/components/ai-voice-panel/ai-voice-panel.js +363 -0
  378. package/dist/components/ai-voice-panel/ai-voice-panel.js.map +1 -0
  379. package/dist/components/ai-webhook-config/ai-webhook-config.d.ts +46 -0
  380. package/dist/components/ai-webhook-config/ai-webhook-config.d.ts.map +1 -0
  381. package/dist/components/ai-webhook-config/ai-webhook-config.js +358 -0
  382. package/dist/components/ai-webhook-config/ai-webhook-config.js.map +1 -0
  383. package/dist/components/ai-workflow-builder/ai-workflow-builder.d.ts +26 -0
  384. package/dist/components/ai-workflow-builder/ai-workflow-builder.d.ts.map +1 -0
  385. package/dist/components/ai-workflow-builder/ai-workflow-builder.js +179 -0
  386. package/dist/components/ai-workflow-builder/ai-workflow-builder.js.map +1 -0
  387. package/dist/components/bias-anchoring/bias-anchoring.d.ts +35 -0
  388. package/dist/components/bias-anchoring/bias-anchoring.d.ts.map +1 -0
  389. package/dist/components/bias-anchoring/bias-anchoring.js +107 -0
  390. package/dist/components/bias-anchoring/bias-anchoring.js.map +1 -0
  391. package/dist/components/bias-authority/bias-authority.d.ts +31 -0
  392. package/dist/components/bias-authority/bias-authority.d.ts.map +1 -0
  393. package/dist/components/bias-authority/bias-authority.js +97 -0
  394. package/dist/components/bias-authority/bias-authority.js.map +1 -0
  395. package/dist/components/bias-commitment/bias-commitment.d.ts +39 -0
  396. package/dist/components/bias-commitment/bias-commitment.d.ts.map +1 -0
  397. package/dist/components/bias-commitment/bias-commitment.js +115 -0
  398. package/dist/components/bias-commitment/bias-commitment.js.map +1 -0
  399. package/dist/components/bias-reciprocity/bias-reciprocity.d.ts +30 -0
  400. package/dist/components/bias-reciprocity/bias-reciprocity.d.ts.map +1 -0
  401. package/dist/components/bias-reciprocity/bias-reciprocity.js +86 -0
  402. package/dist/components/bias-reciprocity/bias-reciprocity.js.map +1 -0
  403. package/dist/components/bias-scarcity/bias-scarcity.d.ts +39 -0
  404. package/dist/components/bias-scarcity/bias-scarcity.d.ts.map +1 -0
  405. package/dist/components/bias-scarcity/bias-scarcity.js +120 -0
  406. package/dist/components/bias-scarcity/bias-scarcity.js.map +1 -0
  407. package/dist/components/bias-social-proof/bias-social-proof.d.ts +37 -0
  408. package/dist/components/bias-social-proof/bias-social-proof.d.ts.map +1 -0
  409. package/dist/components/bias-social-proof/bias-social-proof.js +112 -0
  410. package/dist/components/bias-social-proof/bias-social-proof.js.map +1 -0
  411. package/dist/components/cg-accordion/cg-accordion.d.ts +34 -0
  412. package/dist/components/cg-accordion/cg-accordion.d.ts.map +1 -0
  413. package/dist/components/cg-accordion/cg-accordion.js +219 -0
  414. package/dist/components/cg-accordion/cg-accordion.js.map +1 -0
  415. package/dist/components/cg-alert-dialog/cg-alert-dialog.d.ts +53 -0
  416. package/dist/components/cg-alert-dialog/cg-alert-dialog.d.ts.map +1 -0
  417. package/dist/components/cg-alert-dialog/cg-alert-dialog.js +220 -0
  418. package/dist/components/cg-alert-dialog/cg-alert-dialog.js.map +1 -0
  419. package/dist/components/cg-app-shell/cg-app-shell.d.ts +54 -0
  420. package/dist/components/cg-app-shell/cg-app-shell.d.ts.map +1 -0
  421. package/dist/components/cg-app-shell/cg-app-shell.js +135 -0
  422. package/dist/components/cg-app-shell/cg-app-shell.js.map +1 -0
  423. package/dist/components/cg-aspect-ratio/cg-aspect-ratio.d.ts +34 -0
  424. package/dist/components/cg-aspect-ratio/cg-aspect-ratio.d.ts.map +1 -0
  425. package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js +47 -0
  426. package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js.map +1 -0
  427. package/dist/components/cg-auth-shell/cg-auth-shell.d.ts +61 -0
  428. package/dist/components/cg-auth-shell/cg-auth-shell.d.ts.map +1 -0
  429. package/dist/components/cg-auth-shell/cg-auth-shell.js +163 -0
  430. package/dist/components/cg-auth-shell/cg-auth-shell.js.map +1 -0
  431. package/dist/components/cg-autocomplete/cg-autocomplete.d.ts +50 -0
  432. package/dist/components/cg-autocomplete/cg-autocomplete.d.ts.map +1 -0
  433. package/dist/components/cg-autocomplete/cg-autocomplete.js +279 -0
  434. package/dist/components/cg-autocomplete/cg-autocomplete.js.map +1 -0
  435. package/dist/components/cg-avatar/cg-avatar.d.ts +35 -0
  436. package/dist/components/cg-avatar/cg-avatar.d.ts.map +1 -0
  437. package/dist/components/cg-avatar/cg-avatar.js +171 -0
  438. package/dist/components/cg-avatar/cg-avatar.js.map +1 -0
  439. package/dist/components/cg-avatar-group/cg-avatar-group.d.ts +39 -0
  440. package/dist/components/cg-avatar-group/cg-avatar-group.d.ts.map +1 -0
  441. package/dist/components/cg-avatar-group/cg-avatar-group.js +218 -0
  442. package/dist/components/cg-avatar-group/cg-avatar-group.js.map +1 -0
  443. package/dist/components/cg-badge/cg-badge.d.ts +37 -0
  444. package/dist/components/cg-badge/cg-badge.d.ts.map +1 -0
  445. package/dist/components/cg-badge/cg-badge.js +125 -0
  446. package/dist/components/cg-badge/cg-badge.js.map +1 -0
  447. package/dist/components/cg-badge-group/cg-badge-group.d.ts +28 -0
  448. package/dist/components/cg-badge-group/cg-badge-group.d.ts.map +1 -0
  449. package/dist/components/cg-badge-group/cg-badge-group.js +78 -0
  450. package/dist/components/cg-badge-group/cg-badge-group.js.map +1 -0
  451. package/dist/components/cg-breadcrumbs/cg-breadcrumbs.d.ts +52 -0
  452. package/dist/components/cg-breadcrumbs/cg-breadcrumbs.d.ts.map +1 -0
  453. package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js +286 -0
  454. package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js.map +1 -0
  455. package/dist/components/cg-button/cg-button.d.ts +106 -0
  456. package/dist/components/cg-button/cg-button.d.ts.map +1 -0
  457. package/dist/components/cg-button/cg-button.js +355 -0
  458. package/dist/components/cg-button/cg-button.js.map +1 -0
  459. package/dist/components/cg-button-group/cg-button-group.d.ts +25 -0
  460. package/dist/components/cg-button-group/cg-button-group.d.ts.map +1 -0
  461. package/dist/components/cg-button-group/cg-button-group.js +89 -0
  462. package/dist/components/cg-button-group/cg-button-group.js.map +1 -0
  463. package/dist/components/cg-calendar/cg-calendar.d.ts +52 -0
  464. package/dist/components/cg-calendar/cg-calendar.d.ts.map +1 -0
  465. package/dist/components/cg-calendar/cg-calendar.js +346 -0
  466. package/dist/components/cg-calendar/cg-calendar.js.map +1 -0
  467. package/dist/components/cg-callout/cg-callout.d.ts +32 -0
  468. package/dist/components/cg-callout/cg-callout.d.ts.map +1 -0
  469. package/dist/components/cg-callout/cg-callout.js +197 -0
  470. package/dist/components/cg-callout/cg-callout.js.map +1 -0
  471. package/dist/components/cg-card/cg-card.d.ts +60 -0
  472. package/dist/components/cg-card/cg-card.d.ts.map +1 -0
  473. package/dist/components/cg-card/cg-card.js +207 -0
  474. package/dist/components/cg-card/cg-card.js.map +1 -0
  475. package/dist/components/cg-carousel/cg-carousel.d.ts +52 -0
  476. package/dist/components/cg-carousel/cg-carousel.d.ts.map +1 -0
  477. package/dist/components/cg-carousel/cg-carousel.js +262 -0
  478. package/dist/components/cg-carousel/cg-carousel.js.map +1 -0
  479. package/dist/components/cg-chart/cg-chart.d.ts +55 -0
  480. package/dist/components/cg-chart/cg-chart.d.ts.map +1 -0
  481. package/dist/components/cg-chart/cg-chart.js +381 -0
  482. package/dist/components/cg-chart/cg-chart.js.map +1 -0
  483. package/dist/components/cg-checkbox/cg-checkbox.d.ts +50 -0
  484. package/dist/components/cg-checkbox/cg-checkbox.d.ts.map +1 -0
  485. package/dist/components/cg-checkbox/cg-checkbox.js +294 -0
  486. package/dist/components/cg-checkbox/cg-checkbox.js.map +1 -0
  487. package/dist/components/cg-chip/cg-chip.d.ts +36 -0
  488. package/dist/components/cg-chip/cg-chip.d.ts.map +1 -0
  489. package/dist/components/cg-chip/cg-chip.js +256 -0
  490. package/dist/components/cg-chip/cg-chip.js.map +1 -0
  491. package/dist/components/cg-code-block/cg-code-block.d.ts +23 -0
  492. package/dist/components/cg-code-block/cg-code-block.d.ts.map +1 -0
  493. package/dist/components/cg-code-block/cg-code-block.js +327 -0
  494. package/dist/components/cg-code-block/cg-code-block.js.map +1 -0
  495. package/dist/components/cg-collapsible/cg-collapsible.d.ts +34 -0
  496. package/dist/components/cg-collapsible/cg-collapsible.d.ts.map +1 -0
  497. package/dist/components/cg-collapsible/cg-collapsible.js +160 -0
  498. package/dist/components/cg-collapsible/cg-collapsible.js.map +1 -0
  499. package/dist/components/cg-color-picker/cg-color-picker.d.ts +51 -0
  500. package/dist/components/cg-color-picker/cg-color-picker.d.ts.map +1 -0
  501. package/dist/components/cg-color-picker/cg-color-picker.js +492 -0
  502. package/dist/components/cg-color-picker/cg-color-picker.js.map +1 -0
  503. package/dist/components/cg-combobox/cg-combobox.d.ts +56 -0
  504. package/dist/components/cg-combobox/cg-combobox.d.ts.map +1 -0
  505. package/dist/components/cg-combobox/cg-combobox.js +374 -0
  506. package/dist/components/cg-combobox/cg-combobox.js.map +1 -0
  507. package/dist/components/cg-command/cg-command.d.ts +65 -0
  508. package/dist/components/cg-command/cg-command.d.ts.map +1 -0
  509. package/dist/components/cg-command/cg-command.js +339 -0
  510. package/dist/components/cg-command/cg-command.js.map +1 -0
  511. package/dist/components/cg-context-menu/cg-context-menu.d.ts +66 -0
  512. package/dist/components/cg-context-menu/cg-context-menu.d.ts.map +1 -0
  513. package/dist/components/cg-context-menu/cg-context-menu.js +165 -0
  514. package/dist/components/cg-context-menu/cg-context-menu.js.map +1 -0
  515. package/dist/components/cg-date-picker/cg-date-picker.d.ts +44 -0
  516. package/dist/components/cg-date-picker/cg-date-picker.d.ts.map +1 -0
  517. package/dist/components/cg-date-picker/cg-date-picker.js +240 -0
  518. package/dist/components/cg-date-picker/cg-date-picker.js.map +1 -0
  519. package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts +45 -0
  520. package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts.map +1 -0
  521. package/dist/components/cg-date-range-picker/cg-date-range-picker.js +266 -0
  522. package/dist/components/cg-date-range-picker/cg-date-range-picker.js.map +1 -0
  523. package/dist/components/cg-date-time-picker/cg-date-time-picker.d.ts +66 -0
  524. package/dist/components/cg-date-time-picker/cg-date-time-picker.d.ts.map +1 -0
  525. package/dist/components/cg-date-time-picker/cg-date-time-picker.js +521 -0
  526. package/dist/components/cg-date-time-picker/cg-date-time-picker.js.map +1 -0
  527. package/dist/components/cg-definition-list/cg-definition-list.d.ts +99 -0
  528. package/dist/components/cg-definition-list/cg-definition-list.d.ts.map +1 -0
  529. package/dist/components/cg-definition-list/cg-definition-list.js +332 -0
  530. package/dist/components/cg-definition-list/cg-definition-list.js.map +1 -0
  531. package/dist/components/cg-draggable/cg-draggable.d.ts +53 -0
  532. package/dist/components/cg-draggable/cg-draggable.d.ts.map +1 -0
  533. package/dist/components/cg-draggable/cg-draggable.js +136 -0
  534. package/dist/components/cg-draggable/cg-draggable.js.map +1 -0
  535. package/dist/components/cg-drawer/cg-drawer.d.ts +57 -0
  536. package/dist/components/cg-drawer/cg-drawer.d.ts.map +1 -0
  537. package/dist/components/cg-drawer/cg-drawer.js +421 -0
  538. package/dist/components/cg-drawer/cg-drawer.js.map +1 -0
  539. package/dist/components/cg-dropdown/cg-dropdown.d.ts +63 -0
  540. package/dist/components/cg-dropdown/cg-dropdown.d.ts.map +1 -0
  541. package/dist/components/cg-dropdown/cg-dropdown.js +232 -0
  542. package/dist/components/cg-dropdown/cg-dropdown.js.map +1 -0
  543. package/dist/components/cg-droppable/cg-droppable.d.ts +57 -0
  544. package/dist/components/cg-droppable/cg-droppable.d.ts.map +1 -0
  545. package/dist/components/cg-droppable/cg-droppable.js +114 -0
  546. package/dist/components/cg-droppable/cg-droppable.js.map +1 -0
  547. package/dist/components/cg-empty-state/cg-empty-state.d.ts +54 -0
  548. package/dist/components/cg-empty-state/cg-empty-state.d.ts.map +1 -0
  549. package/dist/components/cg-empty-state/cg-empty-state.js +201 -0
  550. package/dist/components/cg-empty-state/cg-empty-state.js.map +1 -0
  551. package/dist/components/cg-file-input/cg-file-input.d.ts +101 -0
  552. package/dist/components/cg-file-input/cg-file-input.d.ts.map +1 -0
  553. package/dist/components/cg-file-input/cg-file-input.js +684 -0
  554. package/dist/components/cg-file-input/cg-file-input.js.map +1 -0
  555. package/dist/components/cg-filter-bar/cg-filter-bar.d.ts +50 -0
  556. package/dist/components/cg-filter-bar/cg-filter-bar.d.ts.map +1 -0
  557. package/dist/components/cg-filter-bar/cg-filter-bar.js +115 -0
  558. package/dist/components/cg-filter-bar/cg-filter-bar.js.map +1 -0
  559. package/dist/components/cg-filter-chip/cg-filter-chip.d.ts +55 -0
  560. package/dist/components/cg-filter-chip/cg-filter-chip.d.ts.map +1 -0
  561. package/dist/components/cg-filter-chip/cg-filter-chip.js +213 -0
  562. package/dist/components/cg-filter-chip/cg-filter-chip.js.map +1 -0
  563. package/dist/components/cg-focus-scope/cg-focus-scope.d.ts +38 -0
  564. package/dist/components/cg-focus-scope/cg-focus-scope.d.ts.map +1 -0
  565. package/dist/components/cg-focus-scope/cg-focus-scope.js +47 -0
  566. package/dist/components/cg-focus-scope/cg-focus-scope.js.map +1 -0
  567. package/dist/components/cg-follow-up/cg-follow-up.d.ts +32 -0
  568. package/dist/components/cg-follow-up/cg-follow-up.d.ts.map +1 -0
  569. package/dist/components/cg-follow-up/cg-follow-up.js +233 -0
  570. package/dist/components/cg-follow-up/cg-follow-up.js.map +1 -0
  571. package/dist/components/cg-form/cg-form.d.ts +32 -0
  572. package/dist/components/cg-form/cg-form.d.ts.map +1 -0
  573. package/dist/components/cg-form/cg-form.js +109 -0
  574. package/dist/components/cg-form/cg-form.js.map +1 -0
  575. package/dist/components/cg-hover-card/cg-hover-card.d.ts +49 -0
  576. package/dist/components/cg-hover-card/cg-hover-card.d.ts.map +1 -0
  577. package/dist/components/cg-hover-card/cg-hover-card.js +149 -0
  578. package/dist/components/cg-hover-card/cg-hover-card.js.map +1 -0
  579. package/dist/components/cg-icon/cg-icon.d.ts +28 -0
  580. package/dist/components/cg-icon/cg-icon.d.ts.map +1 -0
  581. package/dist/components/cg-icon/cg-icon.js +339 -0
  582. package/dist/components/cg-icon/cg-icon.js.map +1 -0
  583. package/dist/components/cg-icon/solar-icons.d.ts +12 -0
  584. package/dist/components/cg-icon/solar-icons.d.ts.map +1 -0
  585. package/dist/components/cg-image/cg-image.d.ts +31 -0
  586. package/dist/components/cg-image/cg-image.d.ts.map +1 -0
  587. package/dist/components/cg-image/cg-image.js +168 -0
  588. package/dist/components/cg-image/cg-image.js.map +1 -0
  589. package/dist/components/cg-image-block/cg-image-block.d.ts +36 -0
  590. package/dist/components/cg-image-block/cg-image-block.d.ts.map +1 -0
  591. package/dist/components/cg-image-block/cg-image-block.js +214 -0
  592. package/dist/components/cg-image-block/cg-image-block.js.map +1 -0
  593. package/dist/components/cg-image-gallery/cg-image-gallery.d.ts +34 -0
  594. package/dist/components/cg-image-gallery/cg-image-gallery.d.ts.map +1 -0
  595. package/dist/components/cg-image-gallery/cg-image-gallery.js +158 -0
  596. package/dist/components/cg-image-gallery/cg-image-gallery.js.map +1 -0
  597. package/dist/components/cg-input/cg-input.d.ts +65 -0
  598. package/dist/components/cg-input/cg-input.d.ts.map +1 -0
  599. package/dist/components/cg-input/cg-input.js +425 -0
  600. package/dist/components/cg-input/cg-input.js.map +1 -0
  601. package/dist/components/cg-kanban/cg-kanban.d.ts +44 -0
  602. package/dist/components/cg-kanban/cg-kanban.d.ts.map +1 -0
  603. package/dist/components/cg-kanban/cg-kanban.js +86 -0
  604. package/dist/components/cg-kanban/cg-kanban.js.map +1 -0
  605. package/dist/components/cg-kanban-column/cg-kanban-column.d.ts +58 -0
  606. package/dist/components/cg-kanban-column/cg-kanban-column.d.ts.map +1 -0
  607. package/dist/components/cg-kanban-column/cg-kanban-column.js +144 -0
  608. package/dist/components/cg-kanban-column/cg-kanban-column.js.map +1 -0
  609. package/dist/components/cg-kbd/cg-kbd.d.ts +27 -0
  610. package/dist/components/cg-kbd/cg-kbd.d.ts.map +1 -0
  611. package/dist/components/cg-kbd/cg-kbd.js +91 -0
  612. package/dist/components/cg-kbd/cg-kbd.js.map +1 -0
  613. package/dist/components/cg-label/cg-label.d.ts +26 -0
  614. package/dist/components/cg-label/cg-label.d.ts.map +1 -0
  615. package/dist/components/cg-label/cg-label.js +89 -0
  616. package/dist/components/cg-label/cg-label.js.map +1 -0
  617. package/dist/components/cg-link/cg-link.d.ts +27 -0
  618. package/dist/components/cg-link/cg-link.d.ts.map +1 -0
  619. package/dist/components/cg-link/cg-link.js +152 -0
  620. package/dist/components/cg-link/cg-link.js.map +1 -0
  621. package/dist/components/cg-list/cg-list.d.ts +37 -0
  622. package/dist/components/cg-list/cg-list.d.ts.map +1 -0
  623. package/dist/components/cg-list/cg-list.js +314 -0
  624. package/dist/components/cg-list/cg-list.js.map +1 -0
  625. package/dist/components/cg-listbox/cg-listbox.d.ts +38 -0
  626. package/dist/components/cg-listbox/cg-listbox.d.ts.map +1 -0
  627. package/dist/components/cg-listbox/cg-listbox.js +258 -0
  628. package/dist/components/cg-listbox/cg-listbox.js.map +1 -0
  629. package/dist/components/cg-markdown/cg-markdown.d.ts +41 -0
  630. package/dist/components/cg-markdown/cg-markdown.d.ts.map +1 -0
  631. package/dist/components/cg-markdown/cg-markdown.js +542 -0
  632. package/dist/components/cg-markdown/cg-markdown.js.map +1 -0
  633. package/dist/components/cg-menubar/cg-menubar.d.ts +64 -0
  634. package/dist/components/cg-menubar/cg-menubar.d.ts.map +1 -0
  635. package/dist/components/cg-menubar/cg-menubar.js +338 -0
  636. package/dist/components/cg-menubar/cg-menubar.js.map +1 -0
  637. package/dist/components/cg-meter/cg-meter.d.ts +36 -0
  638. package/dist/components/cg-meter/cg-meter.d.ts.map +1 -0
  639. package/dist/components/cg-meter/cg-meter.js +204 -0
  640. package/dist/components/cg-meter/cg-meter.js.map +1 -0
  641. package/dist/components/cg-metric-card/cg-metric-card.d.ts +51 -0
  642. package/dist/components/cg-metric-card/cg-metric-card.d.ts.map +1 -0
  643. package/dist/components/cg-metric-card/cg-metric-card.js +312 -0
  644. package/dist/components/cg-metric-card/cg-metric-card.js.map +1 -0
  645. package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts +77 -0
  646. package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts.map +1 -0
  647. package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js +245 -0
  648. package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js.map +1 -0
  649. package/dist/components/cg-modal/cg-modal.d.ts +55 -0
  650. package/dist/components/cg-modal/cg-modal.d.ts.map +1 -0
  651. package/dist/components/cg-modal/cg-modal.js +409 -0
  652. package/dist/components/cg-modal/cg-modal.js.map +1 -0
  653. package/dist/components/cg-navbar/cg-navbar.d.ts +87 -0
  654. package/dist/components/cg-navbar/cg-navbar.d.ts.map +1 -0
  655. package/dist/components/cg-navbar/cg-navbar.js +473 -0
  656. package/dist/components/cg-navbar/cg-navbar.js.map +1 -0
  657. package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts +46 -0
  658. package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts.map +1 -0
  659. package/dist/components/cg-navigation-menu/cg-navigation-menu.js +257 -0
  660. package/dist/components/cg-navigation-menu/cg-navigation-menu.js.map +1 -0
  661. package/dist/components/cg-number-input/cg-number-input.d.ts +47 -0
  662. package/dist/components/cg-number-input/cg-number-input.d.ts.map +1 -0
  663. package/dist/components/cg-number-input/cg-number-input.js +266 -0
  664. package/dist/components/cg-number-input/cg-number-input.js.map +1 -0
  665. package/dist/components/cg-otp-input/cg-otp-input.d.ts +44 -0
  666. package/dist/components/cg-otp-input/cg-otp-input.d.ts.map +1 -0
  667. package/dist/components/cg-otp-input/cg-otp-input.js +188 -0
  668. package/dist/components/cg-otp-input/cg-otp-input.js.map +1 -0
  669. package/dist/components/cg-pagination/cg-pagination.d.ts +34 -0
  670. package/dist/components/cg-pagination/cg-pagination.d.ts.map +1 -0
  671. package/dist/components/cg-pagination/cg-pagination.js +232 -0
  672. package/dist/components/cg-pagination/cg-pagination.js.map +1 -0
  673. package/dist/components/cg-password-input/cg-password-input.d.ts +43 -0
  674. package/dist/components/cg-password-input/cg-password-input.d.ts.map +1 -0
  675. package/dist/components/cg-password-input/cg-password-input.js +261 -0
  676. package/dist/components/cg-password-input/cg-password-input.js.map +1 -0
  677. package/dist/components/cg-phone-input/cg-phone-input.d.ts +93 -0
  678. package/dist/components/cg-phone-input/cg-phone-input.d.ts.map +1 -0
  679. package/dist/components/cg-phone-input/cg-phone-input.js +972 -0
  680. package/dist/components/cg-phone-input/cg-phone-input.js.map +1 -0
  681. package/dist/components/cg-phone-input/countries.d.ts +38 -0
  682. package/dist/components/cg-phone-input/countries.d.ts.map +1 -0
  683. package/dist/components/cg-popover/cg-popover.d.ts +53 -0
  684. package/dist/components/cg-popover/cg-popover.d.ts.map +1 -0
  685. package/dist/components/cg-popover/cg-popover.js +215 -0
  686. package/dist/components/cg-popover/cg-popover.js.map +1 -0
  687. package/dist/components/cg-portal/cg-portal.d.ts +73 -0
  688. package/dist/components/cg-portal/cg-portal.d.ts.map +1 -0
  689. package/dist/components/cg-portal/cg-portal.js +80 -0
  690. package/dist/components/cg-portal/cg-portal.js.map +1 -0
  691. package/dist/components/cg-progress-bar/cg-progress-bar.d.ts +51 -0
  692. package/dist/components/cg-progress-bar/cg-progress-bar.d.ts.map +1 -0
  693. package/dist/components/cg-progress-bar/cg-progress-bar.js +267 -0
  694. package/dist/components/cg-progress-bar/cg-progress-bar.js.map +1 -0
  695. package/dist/components/cg-radio/cg-radio.d.ts +43 -0
  696. package/dist/components/cg-radio/cg-radio.d.ts.map +1 -0
  697. package/dist/components/cg-radio/cg-radio.js +268 -0
  698. package/dist/components/cg-radio/cg-radio.js.map +1 -0
  699. package/dist/components/cg-radio-group/cg-radio-group.d.ts +49 -0
  700. package/dist/components/cg-radio-group/cg-radio-group.d.ts.map +1 -0
  701. package/dist/components/cg-radio-group/cg-radio-group.js +142 -0
  702. package/dist/components/cg-radio-group/cg-radio-group.js.map +1 -0
  703. package/dist/components/cg-rating/cg-rating.d.ts +41 -0
  704. package/dist/components/cg-rating/cg-rating.d.ts.map +1 -0
  705. package/dist/components/cg-rating/cg-rating.js +201 -0
  706. package/dist/components/cg-rating/cg-rating.js.map +1 -0
  707. package/dist/components/cg-resizable/cg-resizable.d.ts +33 -0
  708. package/dist/components/cg-resizable/cg-resizable.d.ts.map +1 -0
  709. package/dist/components/cg-resizable/cg-resizable.js +236 -0
  710. package/dist/components/cg-resizable/cg-resizable.js.map +1 -0
  711. package/dist/components/cg-scroll-area/cg-scroll-area.d.ts +27 -0
  712. package/dist/components/cg-scroll-area/cg-scroll-area.d.ts.map +1 -0
  713. package/dist/components/cg-scroll-area/cg-scroll-area.js +111 -0
  714. package/dist/components/cg-scroll-area/cg-scroll-area.js.map +1 -0
  715. package/dist/components/cg-search-input/cg-search-input.d.ts +62 -0
  716. package/dist/components/cg-search-input/cg-search-input.d.ts.map +1 -0
  717. package/dist/components/cg-search-input/cg-search-input.js +106 -0
  718. package/dist/components/cg-search-input/cg-search-input.js.map +1 -0
  719. package/dist/components/cg-segmented-control/cg-segmented-control.d.ts +52 -0
  720. package/dist/components/cg-segmented-control/cg-segmented-control.d.ts.map +1 -0
  721. package/dist/components/cg-segmented-control/cg-segmented-control.js +182 -0
  722. package/dist/components/cg-segmented-control/cg-segmented-control.js.map +1 -0
  723. package/dist/components/cg-select/cg-select.d.ts +67 -0
  724. package/dist/components/cg-select/cg-select.d.ts.map +1 -0
  725. package/dist/components/cg-select/cg-select.js +302 -0
  726. package/dist/components/cg-select/cg-select.js.map +1 -0
  727. package/dist/components/cg-separator/cg-separator.d.ts +25 -0
  728. package/dist/components/cg-separator/cg-separator.d.ts.map +1 -0
  729. package/dist/components/cg-separator/cg-separator.js +105 -0
  730. package/dist/components/cg-separator/cg-separator.js.map +1 -0
  731. package/dist/components/cg-sheet/cg-sheet.d.ts +39 -0
  732. package/dist/components/cg-sheet/cg-sheet.d.ts.map +1 -0
  733. package/dist/components/cg-sheet/cg-sheet.js +211 -0
  734. package/dist/components/cg-sheet/cg-sheet.js.map +1 -0
  735. package/dist/components/cg-sidebar/cg-sidebar.d.ts +56 -0
  736. package/dist/components/cg-sidebar/cg-sidebar.d.ts.map +1 -0
  737. package/dist/components/cg-sidebar/cg-sidebar.js +266 -0
  738. package/dist/components/cg-sidebar/cg-sidebar.js.map +1 -0
  739. package/dist/components/cg-skeleton/cg-skeleton.d.ts +31 -0
  740. package/dist/components/cg-skeleton/cg-skeleton.d.ts.map +1 -0
  741. package/dist/components/cg-skeleton/cg-skeleton.js +136 -0
  742. package/dist/components/cg-skeleton/cg-skeleton.js.map +1 -0
  743. package/dist/components/cg-slider/cg-slider.d.ts +51 -0
  744. package/dist/components/cg-slider/cg-slider.d.ts.map +1 -0
  745. package/dist/components/cg-slider/cg-slider.js +375 -0
  746. package/dist/components/cg-slider/cg-slider.js.map +1 -0
  747. package/dist/components/cg-sortable/cg-sortable.d.ts +72 -0
  748. package/dist/components/cg-sortable/cg-sortable.d.ts.map +1 -0
  749. package/dist/components/cg-sortable/cg-sortable.js +177 -0
  750. package/dist/components/cg-sortable/cg-sortable.js.map +1 -0
  751. package/dist/components/cg-spinner/cg-spinner.d.ts +28 -0
  752. package/dist/components/cg-spinner/cg-spinner.d.ts.map +1 -0
  753. package/dist/components/cg-spinner/cg-spinner.js +119 -0
  754. package/dist/components/cg-spinner/cg-spinner.js.map +1 -0
  755. package/dist/components/cg-split-button/cg-split-button.d.ts +66 -0
  756. package/dist/components/cg-split-button/cg-split-button.d.ts.map +1 -0
  757. package/dist/components/cg-split-button/cg-split-button.js +330 -0
  758. package/dist/components/cg-split-button/cg-split-button.js.map +1 -0
  759. package/dist/components/cg-stack/cg-stack.d.ts +25 -0
  760. package/dist/components/cg-stack/cg-stack.d.ts.map +1 -0
  761. package/dist/components/cg-stack/cg-stack.js +85 -0
  762. package/dist/components/cg-stack/cg-stack.js.map +1 -0
  763. package/dist/components/cg-steps/cg-steps.d.ts +37 -0
  764. package/dist/components/cg-steps/cg-steps.d.ts.map +1 -0
  765. package/dist/components/cg-steps/cg-steps.js +251 -0
  766. package/dist/components/cg-steps/cg-steps.js.map +1 -0
  767. package/dist/components/cg-switch/cg-switch.d.ts +38 -0
  768. package/dist/components/cg-switch/cg-switch.d.ts.map +1 -0
  769. package/dist/components/cg-switch/cg-switch.js +210 -0
  770. package/dist/components/cg-switch/cg-switch.js.map +1 -0
  771. package/dist/components/cg-table/cg-table.d.ts +67 -0
  772. package/dist/components/cg-table/cg-table.d.ts.map +1 -0
  773. package/dist/components/cg-table/cg-table.js +395 -0
  774. package/dist/components/cg-table/cg-table.js.map +1 -0
  775. package/dist/components/cg-tabs/cg-tabs.d.ts +39 -0
  776. package/dist/components/cg-tabs/cg-tabs.d.ts.map +1 -0
  777. package/dist/components/cg-tabs/cg-tabs.js +241 -0
  778. package/dist/components/cg-tabs/cg-tabs.js.map +1 -0
  779. package/dist/components/cg-tag-input/cg-tag-input.d.ts +50 -0
  780. package/dist/components/cg-tag-input/cg-tag-input.d.ts.map +1 -0
  781. package/dist/components/cg-tag-input/cg-tag-input.js +307 -0
  782. package/dist/components/cg-tag-input/cg-tag-input.js.map +1 -0
  783. package/dist/components/cg-text/cg-text.d.ts +30 -0
  784. package/dist/components/cg-text/cg-text.d.ts.map +1 -0
  785. package/dist/components/cg-text/cg-text.js +126 -0
  786. package/dist/components/cg-text/cg-text.js.map +1 -0
  787. package/dist/components/cg-textarea/cg-textarea.d.ts +57 -0
  788. package/dist/components/cg-textarea/cg-textarea.d.ts.map +1 -0
  789. package/dist/components/cg-textarea/cg-textarea.js +295 -0
  790. package/dist/components/cg-textarea/cg-textarea.js.map +1 -0
  791. package/dist/components/cg-theme/cg-theme.d.ts +82 -0
  792. package/dist/components/cg-theme/cg-theme.d.ts.map +1 -0
  793. package/dist/components/cg-theme/cg-theme.js +91 -0
  794. package/dist/components/cg-theme/cg-theme.js.map +1 -0
  795. package/dist/components/cg-theme-editor/cg-theme-editor.d.ts +98 -0
  796. package/dist/components/cg-theme-editor/cg-theme-editor.d.ts.map +1 -0
  797. package/dist/components/cg-theme-editor/cg-theme-editor.js +341 -0
  798. package/dist/components/cg-theme-editor/cg-theme-editor.js.map +1 -0
  799. package/dist/components/cg-time-picker/cg-time-picker.d.ts +55 -0
  800. package/dist/components/cg-time-picker/cg-time-picker.d.ts.map +1 -0
  801. package/dist/components/cg-time-picker/cg-time-picker.js +417 -0
  802. package/dist/components/cg-time-picker/cg-time-picker.js.map +1 -0
  803. package/dist/components/cg-timeline/cg-timeline.d.ts +70 -0
  804. package/dist/components/cg-timeline/cg-timeline.d.ts.map +1 -0
  805. package/dist/components/cg-timeline/cg-timeline.js +131 -0
  806. package/dist/components/cg-timeline/cg-timeline.js.map +1 -0
  807. package/dist/components/cg-timeline-event/cg-timeline-event.d.ts +59 -0
  808. package/dist/components/cg-timeline-event/cg-timeline-event.d.ts.map +1 -0
  809. package/dist/components/cg-timeline-event/cg-timeline-event.js +190 -0
  810. package/dist/components/cg-timeline-event/cg-timeline-event.js.map +1 -0
  811. package/dist/components/cg-toaster/cg-toaster.d.ts +44 -0
  812. package/dist/components/cg-toaster/cg-toaster.d.ts.map +1 -0
  813. package/dist/components/cg-toaster/cg-toaster.js +226 -0
  814. package/dist/components/cg-toaster/cg-toaster.js.map +1 -0
  815. package/dist/components/cg-toggle/cg-toggle.d.ts +38 -0
  816. package/dist/components/cg-toggle/cg-toggle.d.ts.map +1 -0
  817. package/dist/components/cg-toggle/cg-toggle.js +204 -0
  818. package/dist/components/cg-toggle/cg-toggle.js.map +1 -0
  819. package/dist/components/cg-toggle-group/cg-toggle-group.d.ts +39 -0
  820. package/dist/components/cg-toggle-group/cg-toggle-group.d.ts.map +1 -0
  821. package/dist/components/cg-toggle-group/cg-toggle-group.js +112 -0
  822. package/dist/components/cg-toggle-group/cg-toggle-group.js.map +1 -0
  823. package/dist/components/cg-tooltip/cg-tooltip.d.ts +59 -0
  824. package/dist/components/cg-tooltip/cg-tooltip.d.ts.map +1 -0
  825. package/dist/components/cg-tooltip/cg-tooltip.js +277 -0
  826. package/dist/components/cg-tooltip/cg-tooltip.js.map +1 -0
  827. package/dist/components/cg-tree-view/cg-tree-view.d.ts +42 -0
  828. package/dist/components/cg-tree-view/cg-tree-view.d.ts.map +1 -0
  829. package/dist/components/cg-tree-view/cg-tree-view.js +244 -0
  830. package/dist/components/cg-tree-view/cg-tree-view.js.map +1 -0
  831. package/dist/components/cg-visually-hidden/cg-visually-hidden.d.ts +42 -0
  832. package/dist/components/cg-visually-hidden/cg-visually-hidden.d.ts.map +1 -0
  833. package/dist/components/cg-visually-hidden/cg-visually-hidden.js +40 -0
  834. package/dist/components/cg-visually-hidden/cg-visually-hidden.js.map +1 -0
  835. package/dist/foundation.d.ts +116 -0
  836. package/dist/foundation.d.ts.map +1 -0
  837. package/dist/foundation.js +211 -0
  838. package/dist/foundation.js.map +1 -0
  839. package/dist/index.d.ts +228 -0
  840. package/dist/index.d.ts.map +1 -0
  841. package/dist/index.js +407 -0
  842. package/dist/index.js.map +1 -0
  843. package/dist/lazy.d.ts +9 -0
  844. package/dist/lazy.d.ts.map +1 -0
  845. package/dist/lazy.js +38 -0
  846. package/dist/lazy.js.map +1 -0
  847. package/dist/styles/ai-effects.css.d.ts +11 -0
  848. package/dist/styles/ai-effects.css.d.ts.map +1 -0
  849. package/dist/styles/base.css.d.ts +12 -0
  850. package/dist/styles/base.css.d.ts.map +1 -0
  851. package/dist/styles/elevation.css.d.ts +11 -0
  852. package/dist/styles/elevation.css.d.ts.map +1 -0
  853. package/dist/styles/focus.css.d.ts +11 -0
  854. package/dist/styles/focus.css.d.ts.map +1 -0
  855. package/dist/styles/index.d.ts +8 -0
  856. package/dist/styles/index.d.ts.map +1 -0
  857. package/dist/styles/menu.css.d.ts +14 -0
  858. package/dist/styles/menu.css.d.ts.map +1 -0
  859. package/dist/styles/motion.css.d.ts +41 -0
  860. package/dist/styles/motion.css.d.ts.map +1 -0
  861. package/dist/styles/premium.css.d.ts +75 -0
  862. package/dist/styles/premium.css.d.ts.map +1 -0
  863. package/dist/utils/drag-manager.d.ts +40 -0
  864. package/dist/utils/drag-manager.d.ts.map +1 -0
  865. package/dist/utils/floating.d.ts +55 -0
  866. package/dist/utils/floating.d.ts.map +1 -0
  867. package/dist/utils/focus-trap.d.ts +37 -0
  868. package/dist/utils/focus-trap.d.ts.map +1 -0
  869. package/dist/utils/lazy.d.ts +47 -0
  870. package/dist/utils/lazy.d.ts.map +1 -0
  871. package/dist/utils/outside-click.d.ts +24 -0
  872. package/dist/utils/outside-click.d.ts.map +1 -0
  873. package/dist/utils/roving-index.d.ts +54 -0
  874. package/dist/utils/roving-index.d.ts.map +1 -0
  875. package/dist/utils/sanitize.d.ts +7 -0
  876. package/dist/utils/sanitize.d.ts.map +1 -0
  877. package/dist/utils/text-scramble.d.ts +144 -0
  878. package/dist/utils/text-scramble.d.ts.map +1 -0
  879. package/package.json +887 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-insight-card.js","sources":["../../../src/components/ai-insight-card/ai-insight-card.ts"],"sourcesContent":["/**\n * @element ai-insight-card\n * Actionable AI insight card with type icons, expandable detail, sources, and status.\n *\n * @fires {CustomEvent<{type, text}>} ai-insight-click\n * @fires {CustomEvent<{type, text, expanded}>} ai-insight-expand\n * @fires {CustomEvent<{type, text}>} ai-insight-dismiss\n * @fires {CustomEvent<{type, text}>} ai-insight-bookmark\n */\nimport { LitElement, html, css, nothing } from 'lit';\nimport { property, customElement } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion, shimmerKeyframes } from '../../styles/index.js';\n\ninterface Source {\n title: string;\n url?: string;\n relevance?: number;\n}\n\n@customElement('ai-insight-card')\nexport class AiInsightCard extends LitElement {\n static override styles = [hostBlock, reducedMotion, shimmerKeyframes, css`\n :host { display: block; }\n\n .card {\n display: flex;\n gap: var(--cg-spacing-16);\n padding: var(--cg-spacing-20);\n background: var(--cg-color-surface-cards-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-radius: var(--cg-component-card-radius);\n cursor: pointer;\n position: relative;\n transition:\n border-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default),\n transform var(--cg-transition-duration-fast) var(--cg-transition-easing-default),\n box-shadow var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .card:hover {\n border-color: var(--cg-color-surface-cards-hover-border);\n transform: translateY(-1px);\n }\n .card:active { transform: scale(var(--cg-interaction-press-scale)); }\n .card:focus-visible {\n outline: none;\n box-shadow: 0 0 0 3px var(--cg-overlay-accent-strong);\n }\n .card:focus-within .actions { opacity: 1; }\n .card.selected {\n border-color: var(--cg-color-action-primary-background-default);\n background: var(--cg-overlay-accent-subtle);\n }\n\n /* ── Status dot ── */\n .status-dot {\n position: absolute;\n top: var(--cg-spacing-12);\n right: var(--cg-spacing-12);\n width: var(--cg-spacing-6);\n height: var(--cg-spacing-6);\n border-radius: var(--cg-border-radius-full);\n }\n .status-dot.new { background: var(--cg-color-action-primary-background-default); }\n .status-dot.read { background: var(--cg-color-input-text-placeholder); }\n\n /* ── Icon ── */\n .icon-area {\n width: var(--cg-spacing-40);\n height: var(--cg-spacing-40);\n border-radius: var(--cg-border-radius-full);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n .icon-area svg { width: var(--cg-icon-size-100); height: var(--cg-icon-size-100); }\n .icon-area.explanation { background: var(--cg-color-status-info-background-default); border: var(--cg-border-width-50) solid var(--cg-color-status-info-border-default); color: var(--cg-color-status-info-text-default); }\n .icon-area.forecast { background: var(--cg-overlay-accent-light); border: var(--cg-border-width-50) solid var(--cg-overlay-accent-medium); color: var(--cg-color-surface-base-text); }\n .icon-area.anomaly { background: var(--cg-color-status-error-background-default); border: var(--cg-border-width-50) solid var(--cg-color-status-error-border-default); color: var(--cg-color-status-error-text-default); }\n .icon-area.optimization { background: var(--cg-color-status-warning-background-default); border: var(--cg-border-width-50) solid var(--cg-color-status-warning-border-default); color: var(--cg-color-status-warning-text-default); }\n .icon-area.classification { background: var(--cg-color-status-success-background-default); border: var(--cg-border-width-50) solid var(--cg-color-status-success-border-default); color: var(--cg-color-status-success-text-default); }\n\n .content { flex: 1; min-width: 0; }\n\n .type-label {\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-medium);\n text-transform: uppercase;\n letter-spacing: var(--cg-letter-spacing-wide);\n color: var(--cg-color-input-text-placeholder);\n margin-bottom: var(--cg-spacing-4);\n }\n\n .insight-text {\n font-size: var(--cg-font-size-sm);\n color: var(--cg-color-surface-base-text);\n line-height: var(--cg-line-height-normal);\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n .card.expanded .insight-text {\n -webkit-line-clamp: unset;\n display: block;\n }\n\n /* ── Meta row ── */\n .meta {\n display: flex;\n align-items: center;\n gap: var(--cg-spacing-8);\n margin-top: var(--cg-spacing-12);\n padding-top: var(--cg-spacing-8);\n border-top: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-input-text-placeholder);\n }\n .meta-dot {\n width: var(--cg-spacing-2);\n height: var(--cg-spacing-2);\n border-radius: var(--cg-border-radius-full);\n background: var(--cg-color-input-text-placeholder);\n }\n .confidence { font-weight: var(--cg-font-weight-medium); }\n\n /* ── Expanded detail ── */\n .detail {\n margin-top: var(--cg-spacing-12);\n padding-top: var(--cg-spacing-12);\n border-top: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n animation: detailReveal var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out) both;\n }\n @keyframes detailReveal {\n from { opacity: 0; transform: translateY(-4px); }\n to { opacity: 1; transform: translateY(0); }\n }\n .sources-label {\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-medium);\n color: var(--cg-color-input-text-placeholder);\n margin-bottom: var(--cg-spacing-8);\n text-transform: uppercase;\n letter-spacing: var(--cg-letter-spacing-wide);\n }\n .source {\n display: flex;\n align-items: center;\n gap: var(--cg-spacing-6);\n padding: var(--cg-spacing-4) 0;\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-input-text-placeholder);\n }\n .source a {\n color: var(--cg-color-surface-base-text);\n text-decoration: none;\n font-weight: var(--cg-font-weight-medium);\n }\n .source a:hover { text-decoration: underline; }\n .source a:focus-visible {\n outline: none;\n box-shadow: 0 0 0 3px var(--cg-overlay-accent-strong);\n border-radius: var(--cg-border-radius-50);\n }\n .source-dot { width: var(--cg-spacing-4); height: var(--cg-spacing-4); border-radius: var(--cg-border-radius-full); flex-shrink: 0; }\n .source-dot.high { background: var(--cg-color-status-success-text-default); }\n .source-dot.medium { background: var(--cg-color-status-warning-text-default); }\n .source-dot.low { background: var(--cg-color-input-text-placeholder); }\n\n /* ── Action buttons ── */\n .actions {\n display: flex;\n gap: var(--cg-spacing-4);\n position: absolute;\n top: var(--cg-spacing-8);\n right: var(--cg-spacing-8);\n opacity: 0;\n transition: opacity var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .card:hover .actions { opacity: 1; }\n\n /* ── Skeleton ── */\n .skeleton {\n display: flex;\n gap: var(--cg-spacing-16);\n padding: var(--cg-spacing-20);\n background: var(--cg-color-surface-cards-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-radius: var(--cg-component-card-radius);\n }\n .skel-icon {\n width: var(--cg-spacing-40); height: var(--cg-spacing-40);\n border-radius: var(--cg-border-radius-50);\n background: linear-gradient(90deg, var(--cg-color-surface-container-background) 25%, var(--cg-color-surface-container-border) 50%, var(--cg-color-surface-container-background) 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s linear infinite;\n }\n .skel-lines { flex: 1; display: flex; flex-direction: column; gap: var(--cg-spacing-8); }\n .skel-line {\n height: var(--cg-spacing-8);\n border-radius: var(--cg-border-radius-50);\n background: linear-gradient(90deg, var(--cg-color-surface-container-background) 25%, var(--cg-color-surface-container-border) 50%, var(--cg-color-surface-container-background) 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s linear infinite;\n }\n .skel-line:nth-child(1) { width: 40%; }\n .skel-line:nth-child(2) { width: 90%; }\n .skel-line:nth-child(3) { width: 60%; }\n\n @media (prefers-reduced-motion: reduce) {\n .card:hover { transform: none; }\n .detail { animation: none; }\n }\n `];\n\n @property() type: 'explanation' | 'forecast' | 'anomaly' | 'optimization' | 'classification' = 'explanation';\n @property() text = '';\n @property({ type: Number }) confidence = 0;\n @property() timestamp = '';\n @property({ type: Boolean }) expandable = false;\n @property({ type: Boolean }) expanded = false;\n @property({ type: Array }) sources: Source[] = [];\n @property() status: 'new' | 'read' | 'dismissed' | '' = '';\n @property({ type: Boolean }) loading = false;\n @property({ type: Boolean }) selected = false;\n\n private _getIconName(): string {\n const icons: Record<string, string> = {\n explanation: 'info',\n forecast: 'chart',\n anomaly: 'warning',\n optimization: 'sparkle',\n classification: 'filter',\n };\n return icons[this.type] || 'info';\n }\n\n private _handleClick() {\n if (this.expandable) {\n this.expanded = !this.expanded;\n this.dispatchEvent(new CustomEvent('ai-insight-expand', { bubbles: true, composed: true, detail: { expanded: this.expanded, type: this.type } }));\n }\n this.dispatchEvent(new CustomEvent('ai-insight-click', { bubbles: true, composed: true, detail: { type: this.type, text: this.text, confidence: this.confidence } }));\n }\n\n private _handleDismiss(e: Event) {\n e.stopPropagation();\n this.dispatchEvent(new CustomEvent('ai-insight-dismiss', { bubbles: true, composed: true, detail: { type: this.type, text: this.text } }));\n }\n\n private _handleBookmark(e: Event) {\n e.stopPropagation();\n this.dispatchEvent(new CustomEvent('ai-insight-bookmark', { bubbles: true, composed: true, detail: { type: this.type, text: this.text } }));\n }\n\n private _handleKeyDown(e: KeyboardEvent) {\n if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); this._handleClick(); }\n }\n\n private _relevanceClass(r?: number): string {\n if (!r) return 'low';\n return r >= 0.7 ? 'high' : r >= 0.4 ? 'medium' : 'low';\n }\n\n override render() {\n if (this.loading) {\n return html`\n <div class=\"skeleton\" aria-label=\"Loading insight\">\n <div class=\"skel-icon\"></div>\n <div class=\"skel-lines\"><div class=\"skel-line\"></div><div class=\"skel-line\"></div><div class=\"skel-line\"></div></div>\n </div>\n `;\n }\n if (!this.text) return nothing;\n\n return html`\n <div class=\"card ${this.expanded ? 'expanded' : ''} ${this.selected ? 'selected' : ''}\"\n role=\"article\" tabindex=\"0\" aria-label=\"${this.type} insight\"\n aria-expanded=${this.expandable ? String(this.expanded) : nothing}\n @click=${this._handleClick} @keydown=${this._handleKeyDown}>\n\n ${this.status && this.status !== 'dismissed' ? html`<div class=\"status-dot ${this.status}\" aria-hidden=\"true\"></div>` : nothing}\n\n <div class=\"actions\">\n <cg-button variant=\"tertiary\" size=\"sm\" rounded=\"full\" label=\"Bookmark\" @click=${this._handleBookmark}>\n <cg-icon name=\"star\" size=\"xs\"></cg-icon>\n </cg-button>\n <cg-button variant=\"tertiary\" size=\"sm\" rounded=\"full\" label=\"Dismiss\" @click=${this._handleDismiss}>\n <cg-icon name=\"close\" size=\"xs\"></cg-icon>\n </cg-button>\n </div>\n\n <div class=\"icon-area ${this.type}\" aria-hidden=\"true\"><cg-icon name=\"${this._getIconName()}\" size=\"sm\"></cg-icon></div>\n\n <div class=\"content\">\n <div class=\"type-label\">${this.type}</div>\n <div class=\"insight-text\">${this.text}</div>\n\n <div class=\"meta\">\n ${this.confidence > 0 ? html`<span class=\"confidence\">${Math.round(this.confidence * 100)}%</span>` : nothing}\n ${this.confidence > 0 && this.timestamp ? html`<span class=\"meta-dot\"></span>` : nothing}\n ${this.timestamp ? html`<span>${this.timestamp}</span>` : nothing}\n ${(this.confidence > 0 || this.timestamp) && this.sources.length > 0 ? html`<span class=\"meta-dot\"></span>` : nothing}\n ${this.sources.length > 0 ? html`<span>${this.sources.length} source${this.sources.length > 1 ? 's' : ''}</span>` : nothing}\n </div>\n\n ${this.expanded && this.sources.length > 0 ? html`\n <div class=\"detail\">\n <div class=\"sources-label\">Sources</div>\n ${this.sources.map(s => html`\n <div class=\"source\">\n <div class=\"source-dot ${this._relevanceClass(s.relevance)}\"></div>\n ${s.url ? html`<a href=\"${s.url}\" target=\"_blank\" rel=\"noopener\">${s.title}</a>` : html`<span>${s.title}</span>`}\n </div>\n `)}\n </div>\n ` : nothing}\n </div>\n </div>\n `;\n }\n}\n"],"names":["AiInsightCard","LitElement","r","html","nothing","s","hostBlock","reducedMotion","shimmerKeyframes","css","__decorateClass","property","customElement"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { LitElement } from 'lit';
2
+ export declare class AiJsonViewer extends LitElement {
3
+ static styles: import('lit').CSSResult[];
4
+ rounded: 'none' | 'sm' | 'md' | 'lg' | 'full';
5
+ data: unknown;
6
+ expanded: boolean;
7
+ maxDepth: number;
8
+ private _collapsed;
9
+ private _isCollapsed;
10
+ private _togglePath;
11
+ private _emitPathClick;
12
+ private _countItems;
13
+ private _seen;
14
+ private _renderValue;
15
+ private _renderArray;
16
+ private _renderObject;
17
+ render(): import('lit').TemplateResult<1>;
18
+ }
19
+ declare global {
20
+ interface HTMLElementTagNameMap {
21
+ 'ai-json-viewer': AiJsonViewer;
22
+ }
23
+ }
24
+ //# sourceMappingURL=ai-json-viewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-json-viewer.d.ts","sourceRoot":"","sources":["../../../src/components/ai-json-viewer/ai-json-viewer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD,qBACa,YAAa,SAAQ,UAAU;IAC1C,OAAgB,MAAM,4BAuFnB;IAC0B,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAQ;IAClD,IAAI,EAAE,OAAO,CAAQ;IACxB,QAAQ,UAAQ;IACO,QAAQ,SAAK;IAExD,OAAO,CAAC,UAAU,CAA0B;IAErD,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,KAAK,CAAiB;IAE9B,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,aAAa;IAuBZ,MAAM;CAQhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,YAAY,CAAC;KAChC;CACF"}
@@ -0,0 +1,173 @@
1
+ import { css as v, LitElement as y, html as a } from "lit";
2
+ import { property as p, state as $, customElement as x } from "lit/decorators.js";
3
+ import { h as _, r as m, f as k } from "../../chunks/premium.css-9I4kHrsl.js";
4
+ var w = Object.defineProperty, C = Object.getOwnPropertyDescriptor, d = (e, t, s, o) => {
5
+ for (var r = o > 1 ? void 0 : o ? C(t, s) : t, n = e.length - 1, i; n >= 0; n--)
6
+ (i = e[n]) && (r = (o ? i(t, s, r) : i(r)) || r);
7
+ return o && r && w(t, s, r), r;
8
+ };
9
+ let l = class extends y {
10
+ constructor() {
11
+ super(...arguments), this.rounded = "lg", this.data = null, this.expanded = !0, this.maxDepth = 5, this._collapsed = /* @__PURE__ */ new Set(), this._seen = /* @__PURE__ */ new WeakSet();
12
+ }
13
+ _isCollapsed(e) {
14
+ return this.expanded ? this._collapsed.has(e) : !this._collapsed.has(e);
15
+ }
16
+ _togglePath(e) {
17
+ const t = new Set(this._collapsed);
18
+ t.has(e) ? t.delete(e) : t.add(e), this._collapsed = t;
19
+ }
20
+ _emitPathClick(e) {
21
+ this.dispatchEvent(new CustomEvent("ai-json-path-click", {
22
+ detail: { path: e },
23
+ bubbles: !0,
24
+ composed: !0
25
+ }));
26
+ }
27
+ _countItems(e) {
28
+ return Array.isArray(e) ? e.length : e && typeof e == "object" ? Object.keys(e).length : 0;
29
+ }
30
+ _renderValue(e, t, s, o) {
31
+ const r = o ? "" : ",";
32
+ if (e !== null && typeof e == "object") {
33
+ if (this._seen.has(e))
34
+ return a`<span class="null">[Circular]</span>${r}`;
35
+ this._seen.add(e);
36
+ }
37
+ return e === null ? a`<span class="null">null</span>${r}` : typeof e == "string" ? a`<span class="string">"${e}"</span>${r}` : typeof e == "number" ? a`<span class="number">${e}</span>${r}` : typeof e == "boolean" ? a`<span class="boolean">${e}</span>${r}` : Array.isArray(e) ? this._renderArray(e, t, s, r) : typeof e == "object" ? this._renderObject(e, t, s, r) : a`<span class="string">${String(e)}</span>${r}`;
38
+ }
39
+ _renderArray(e, t, s, o) {
40
+ const r = this._isCollapsed(t), n = e.length, i = " ".repeat(s), g = " ".repeat(s + 1);
41
+ return n === 0 ? a`<span class="bracket">[]</span>${o}` : r || s >= this.maxDepth ? a`<button class="toggle" tabindex="0" aria-label="Expand array" @click=${() => this._togglePath(t)}>\u25B6</button><span class="bracket">[</span><span class="collapsed-hint"> ${n} items </span><span class="bracket">]</span>${o}` : a`<button class="toggle" tabindex="0" aria-label="Collapse array" @click=${() => this._togglePath(t)}>\u25BC</button><span class="bracket">[</span>
42
+ ${e.map((b, c) => a`<div class="line">${g}${this._renderValue(b, `${t}[${c}]`, s + 1, c === n - 1)}</div>`)}
43
+ <div class="line">${i}<span class="bracket">]</span>${o}<span class="line-count">// ${n} items</span></div>`;
44
+ }
45
+ _renderObject(e, t, s, o) {
46
+ const r = this._isCollapsed(t), n = Object.keys(e), i = n.length, g = " ".repeat(s), b = " ".repeat(s + 1);
47
+ return i === 0 ? a`<span class="bracket">{}</span>${o}` : r || s >= this.maxDepth ? a`<button class="toggle" tabindex="0" aria-label="Expand object" @click=${() => this._togglePath(t)}>\u25B6</button><span class="bracket">{</span><span class="collapsed-hint"> ${i} keys </span><span class="bracket">}</span>${o}` : a`<button class="toggle" tabindex="0" aria-label="Collapse object" @click=${() => this._togglePath(t)}>\u25BC</button><span class="bracket">{</span>
48
+ ${n.map((c, f) => {
49
+ const u = t ? `${t}.${c}` : c;
50
+ return a`<div class="line">${b}<span class="key" tabindex="0" role="button" aria-label="Copy path: ${u}" @click=${() => this._emitPathClick(u)} @keydown=${(h) => {
51
+ h.key === "Enter" && this._emitPathClick(u);
52
+ }}>"${c}"</span>: ${this._renderValue(e[c], u, s + 1, f === i - 1)}</div>`;
53
+ })}
54
+ <div class="line">${g}<span class="bracket">}</span>${o}<span class="line-count">// ${i} keys</span></div>`;
55
+ }
56
+ render() {
57
+ return this._seen = /* @__PURE__ */ new WeakSet(), a`
58
+ <div class="root" role="tree" aria-label="JSON viewer">
59
+ <div class="line">${this._renderValue(this.data, "$", 0, !0)}</div>
60
+ </div>
61
+ `;
62
+ }
63
+ };
64
+ l.styles = [_, m, k, v`
65
+ :host {
66
+ font-family: var(--cg-font-family-mono);
67
+ font-size: var(--cg-font-size-sm);
68
+ line-height: 1.6;
69
+ color: var(--cg-color-surface-base-text);
70
+ animation: fadeSlideIn var(--cg-transition-duration-fast) var(--cg-transition-easing-ease-out) both;
71
+ }
72
+ :host([hidden]) { display: none; }
73
+
74
+ .root {
75
+ background: var(--cg-color-surface-cards-background);
76
+ border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
77
+ border-radius: var(--cg-border-radius-100);
78
+ padding: var(--cg-spacing-12) var(--cg-spacing-16);
79
+ overflow-x: auto;
80
+ }
81
+
82
+ .line {
83
+ white-space: pre;
84
+ }
85
+
86
+ .key {
87
+ color: var(--cg-color-status-info-text);
88
+ cursor: pointer;
89
+ }
90
+ .key:hover {
91
+ text-decoration: underline;
92
+ }
93
+ .key:focus-visible {
94
+ outline: 2px solid var(--cg-overlay-accent-strong);
95
+ outline-offset: 1px;
96
+ border-radius: var(--cg-border-radius-25);
97
+ }
98
+
99
+ .string { color: var(--cg-color-status-success-text-default); }
100
+ .number { color: var(--cg-color-surface-base-text); }
101
+ .boolean { color: var(--cg-color-status-success-text-default); }
102
+ .null { color: var(--cg-color-input-text-placeholder); font-style: italic; }
103
+
104
+ .toggle {
105
+ display: inline-flex;
106
+ align-items: center;
107
+ justify-content: center;
108
+ width: var(--cg-spacing-16);
109
+ height: var(--cg-spacing-16);
110
+ background: none;
111
+ border: none;
112
+ color: var(--cg-color-input-text-placeholder);
113
+ cursor: pointer;
114
+ padding: 0;
115
+ font-size: var(--cg-font-size-xs);
116
+ vertical-align: middle;
117
+ border-radius: var(--cg-border-radius-25);
118
+ transition: color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);
119
+ }
120
+ .toggle:hover {
121
+ color: var(--cg-color-surface-base-text);
122
+ }
123
+ .toggle:focus-visible {
124
+ outline: 2px solid var(--cg-overlay-accent-strong);
125
+ outline-offset: 1px;
126
+ }
127
+
128
+ .collapsed-hint {
129
+ color: var(--cg-color-input-text-placeholder);
130
+ font-style: italic;
131
+ font-size: var(--cg-font-size-xs);
132
+ }
133
+
134
+ .line-count {
135
+ display: inline;
136
+ color: var(--cg-color-input-text-placeholder);
137
+ font-size: var(--cg-font-size-xs);
138
+ margin-left: var(--cg-spacing-4);
139
+ }
140
+
141
+ .bracket {
142
+ color: var(--cg-color-input-text-placeholder);
143
+ }
144
+
145
+ /* ── Rounded variants ── */
146
+ :host([rounded="none"]) .root { border-radius: 0; }
147
+ :host([rounded="sm"]) .root { border-radius: var(--cg-border-radius-50); }
148
+ :host([rounded="md"]) .root { border-radius: var(--cg-border-radius-100); }
149
+ :host([rounded="lg"]) .root { border-radius: var(--cg-border-radius-150); }
150
+ :host([rounded="full"]) .root { border-radius: var(--cg-border-radius-full); }
151
+ `];
152
+ d([
153
+ p({ reflect: !0 })
154
+ ], l.prototype, "rounded", 2);
155
+ d([
156
+ p({ attribute: !1 })
157
+ ], l.prototype, "data", 2);
158
+ d([
159
+ p({ type: Boolean })
160
+ ], l.prototype, "expanded", 2);
161
+ d([
162
+ p({ type: Number, attribute: "max-depth" })
163
+ ], l.prototype, "maxDepth", 2);
164
+ d([
165
+ $()
166
+ ], l.prototype, "_collapsed", 2);
167
+ l = d([
168
+ x("ai-json-viewer")
169
+ ], l);
170
+ export {
171
+ l as AiJsonViewer
172
+ };
173
+ //# sourceMappingURL=ai-json-viewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-json-viewer.js","sources":["../../../src/components/ai-json-viewer/ai-json-viewer.ts"],"sourcesContent":["/**\n * @element ai-json-viewer\n * Interactive JSON tree viewer with collapsible nodes, syntax highlighting,\n * and circular reference detection. Supports nested objects and arrays\n * with expand/collapse per node and item counts.\n *\n * @example\n * ```html\n * <ai-json-viewer .data=${{ name: 'Claude', version: 3 }} expanded max-depth=\"4\"></ai-json-viewer>\n * ```\n *\n * @prop {unknown} data - JSON-serializable data to display\n * @prop {boolean} expanded - Whether nodes start expanded (default true)\n * @prop {number} maxDepth - Maximum nesting depth before auto-collapse (default 5)\n *\n * @fires {CustomEvent<{path: string}>} ai-json-path-click - When a key label is clicked\n *\n * @cssprop [--cg-font-family-mono] - Monospace font for the viewer\n * @cssprop [--cg-color-surface] - Background color of the root container\n * @cssprop [--cg-color-accent] - Accent color for number values\n */\nimport { LitElement, html, css, nothing } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion, fadeSlideInKeyframes } from '../../styles/index.js';\n\n@customElement('ai-json-viewer')\nexport class AiJsonViewer extends LitElement {\n static override styles = [hostBlock, reducedMotion, fadeSlideInKeyframes, css`\n :host {\n font-family: var(--cg-font-family-mono);\n font-size: var(--cg-font-size-sm);\n line-height: 1.6;\n color: var(--cg-color-surface-base-text);\n animation: fadeSlideIn var(--cg-transition-duration-fast) var(--cg-transition-easing-ease-out) both;\n }\n :host([hidden]) { display: none; }\n\n .root {\n background: var(--cg-color-surface-cards-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-radius: var(--cg-border-radius-100);\n padding: var(--cg-spacing-12) var(--cg-spacing-16);\n overflow-x: auto;\n }\n\n .line {\n white-space: pre;\n }\n\n .key {\n color: var(--cg-color-status-info-text);\n cursor: pointer;\n }\n .key:hover {\n text-decoration: underline;\n }\n .key:focus-visible {\n outline: 2px solid var(--cg-overlay-accent-strong);\n outline-offset: 1px;\n border-radius: var(--cg-border-radius-25);\n }\n\n .string { color: var(--cg-color-status-success-text-default); }\n .number { color: var(--cg-color-surface-base-text); }\n .boolean { color: var(--cg-color-status-success-text-default); }\n .null { color: var(--cg-color-input-text-placeholder); font-style: italic; }\n\n .toggle {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--cg-spacing-16);\n height: var(--cg-spacing-16);\n background: none;\n border: none;\n color: var(--cg-color-input-text-placeholder);\n cursor: pointer;\n padding: 0;\n font-size: var(--cg-font-size-xs);\n vertical-align: middle;\n border-radius: var(--cg-border-radius-25);\n transition: color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .toggle:hover {\n color: var(--cg-color-surface-base-text);\n }\n .toggle:focus-visible {\n outline: 2px solid var(--cg-overlay-accent-strong);\n outline-offset: 1px;\n }\n\n .collapsed-hint {\n color: var(--cg-color-input-text-placeholder);\n font-style: italic;\n font-size: var(--cg-font-size-xs);\n }\n\n .line-count {\n display: inline;\n color: var(--cg-color-input-text-placeholder);\n font-size: var(--cg-font-size-xs);\n margin-left: var(--cg-spacing-4);\n }\n\n .bracket {\n color: var(--cg-color-input-text-placeholder);\n }\n\n /* ── Rounded variants ── */\n :host([rounded=\"none\"]) .root { border-radius: 0; }\n :host([rounded=\"sm\"]) .root { border-radius: var(--cg-border-radius-50); }\n :host([rounded=\"md\"]) .root { border-radius: var(--cg-border-radius-100); }\n :host([rounded=\"lg\"]) .root { border-radius: var(--cg-border-radius-150); }\n :host([rounded=\"full\"]) .root { border-radius: var(--cg-border-radius-full); }\n `];\n @property({ reflect: true }) rounded: 'none' | 'sm' | 'md' | 'lg' | 'full' = 'lg';\n @property({ attribute: false }) data: unknown = null;\n @property({ type: Boolean }) expanded = true;\n @property({ type: Number, attribute: 'max-depth' }) maxDepth = 5;\n\n @state() private _collapsed: Set<string> = new Set();\n\n private _isCollapsed(path: string): boolean {\n if (this.expanded) {\n return this._collapsed.has(path);\n }\n return !this._collapsed.has(path);\n }\n\n private _togglePath(path: string): void {\n const next = new Set(this._collapsed);\n if (next.has(path)) {\n next.delete(path);\n } else {\n next.add(path);\n }\n this._collapsed = next;\n }\n\n private _emitPathClick(path: string): void {\n this.dispatchEvent(new CustomEvent('ai-json-path-click', {\n detail: { path },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _countItems(val: unknown): number {\n if (Array.isArray(val)) return val.length;\n if (val && typeof val === 'object') return Object.keys(val).length;\n return 0;\n }\n\n private _seen = new WeakSet();\n\n private _renderValue(val: unknown, path: string, depth: number, isLast: boolean): unknown {\n const comma = isLast ? '' : ',';\n\n // Circular reference detection\n if (val !== null && typeof val === 'object') {\n if (this._seen.has(val as object)) {\n return html`<span class=\"null\">[Circular]</span>${comma}`;\n }\n this._seen.add(val as object);\n }\n\n if (val === null) {\n return html`<span class=\"null\">null</span>${comma}`;\n }\n if (typeof val === 'string') {\n return html`<span class=\"string\">\"${val}\"</span>${comma}`;\n }\n if (typeof val === 'number') {\n return html`<span class=\"number\">${val}</span>${comma}`;\n }\n if (typeof val === 'boolean') {\n return html`<span class=\"boolean\">${val}</span>${comma}`;\n }\n\n if (Array.isArray(val)) {\n return this._renderArray(val, path, depth, comma);\n }\n if (typeof val === 'object') {\n return this._renderObject(val as Record<string, unknown>, path, depth, comma);\n }\n\n return html`<span class=\"string\">${String(val)}</span>${comma}`;\n }\n\n private _renderArray(arr: unknown[], path: string, depth: number, comma: string): unknown {\n const collapsed = this._isCollapsed(path);\n const count = arr.length;\n const indent = ' '.repeat(depth);\n const childIndent = ' '.repeat(depth + 1);\n\n if (count === 0) {\n return html`<span class=\"bracket\">[]</span>${comma}`;\n }\n\n if (collapsed || depth >= this.maxDepth) {\n return html`<button class=\"toggle\" tabindex=\"0\" aria-label=\"Expand array\" @click=${() => this._togglePath(path)}>\\u25B6</button><span class=\"bracket\">[</span><span class=\"collapsed-hint\"> ${count} items </span><span class=\"bracket\">]</span>${comma}`;\n }\n\n return html`<button class=\"toggle\" tabindex=\"0\" aria-label=\"Collapse array\" @click=${() => this._togglePath(path)}>\\u25BC</button><span class=\"bracket\">[</span>\n${arr.map((item, i) => html`<div class=\"line\">${childIndent}${this._renderValue(item, `${path}[${i}]`, depth + 1, i === count - 1)}</div>`)}\n<div class=\"line\">${indent}<span class=\"bracket\">]</span>${comma}<span class=\"line-count\">// ${count} items</span></div>`;\n }\n\n private _renderObject(obj: Record<string, unknown>, path: string, depth: number, comma: string): unknown {\n const collapsed = this._isCollapsed(path);\n const keys = Object.keys(obj);\n const count = keys.length;\n const indent = ' '.repeat(depth);\n const childIndent = ' '.repeat(depth + 1);\n\n if (count === 0) {\n return html`<span class=\"bracket\">{}</span>${comma}`;\n }\n\n if (collapsed || depth >= this.maxDepth) {\n return html`<button class=\"toggle\" tabindex=\"0\" aria-label=\"Expand object\" @click=${() => this._togglePath(path)}>\\u25B6</button><span class=\"bracket\">{</span><span class=\"collapsed-hint\"> ${count} keys </span><span class=\"bracket\">}</span>${comma}`;\n }\n\n return html`<button class=\"toggle\" tabindex=\"0\" aria-label=\"Collapse object\" @click=${() => this._togglePath(path)}>\\u25BC</button><span class=\"bracket\">{</span>\n${keys.map((key, i) => {\n const childPath = path ? `${path}.${key}` : key;\n return html`<div class=\"line\">${childIndent}<span class=\"key\" tabindex=\"0\" role=\"button\" aria-label=\"Copy path: ${childPath}\" @click=${() => this._emitPathClick(childPath)} @keydown=${(e: KeyboardEvent) => { if (e.key === 'Enter') this._emitPathClick(childPath); }}>\"${key}\"</span>: ${this._renderValue(obj[key], childPath, depth + 1, i === count - 1)}</div>`;\n})}\n<div class=\"line\">${indent}<span class=\"bracket\">}</span>${comma}<span class=\"line-count\">// ${count} keys</span></div>`;\n }\n\n override render() {\n this._seen = new WeakSet(); // Reset cycle detection each render\n return html`\n <div class=\"root\" role=\"tree\" aria-label=\"JSON viewer\">\n <div class=\"line\">${this._renderValue(this.data, '$', 0, true)}</div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ai-json-viewer': AiJsonViewer;\n }\n}\n"],"names":["AiJsonViewer","LitElement","path","next","val","depth","isLast","comma","html","arr","collapsed","count","indent","childIndent","item","i","obj","keys","key","childPath","e","hostBlock","reducedMotion","fadeSlideInKeyframes","css","__decorateClass","property","state","customElement"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { LitElement, nothing } from 'lit';
2
+ export interface ShortcutEntry {
3
+ keys: string[];
4
+ description: string;
5
+ category?: string;
6
+ }
7
+ export declare class AiKeyboardShortcuts extends LitElement {
8
+ static styles: import('lit').CSSResult[];
9
+ shortcuts: ShortcutEntry[];
10
+ open: boolean;
11
+ private _search;
12
+ private _handleKeyDown;
13
+ connectedCallback(): void;
14
+ disconnectedCallback(): void;
15
+ private _close;
16
+ private _filtered;
17
+ private _grouped;
18
+ render(): import('lit').TemplateResult<1> | typeof nothing;
19
+ }
20
+ declare global {
21
+ interface HTMLElementTagNameMap {
22
+ 'ai-keyboard-shortcuts': AiKeyboardShortcuts;
23
+ }
24
+ }
25
+ //# sourceMappingURL=ai-keyboard-shortcuts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-keyboard-shortcuts.d.ts","sourceRoot":"","sources":["../../../src/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,UAAU,EAAa,OAAO,EAAE,MAAM,KAAK,CAAC;AAIrD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBACa,mBAAoB,SAAQ,UAAU;IACjD,OAAgB,MAAM,4BA8InB;IACwB,SAAS,EAAE,aAAa,EAAE,CAAM;IACf,IAAI,UAAS;IAEhD,OAAO,CAAC,OAAO,CAAM;IAE9B,OAAO,CAAC,cAAc,CAIpB;IAEO,iBAAiB;IAKjB,oBAAoB;IAK7B,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,QAAQ;IAUP,MAAM;CA0ChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,uBAAuB,EAAE,mBAAmB,CAAC;KAC9C;CACF"}
@@ -0,0 +1,240 @@
1
+ import { css as p, LitElement as u, nothing as d, html as a } from "lit";
2
+ import { property as g, state as h, customElement as v } from "lit/decorators.js";
3
+ import { h as f, r as b, f as m } from "../../chunks/premium.css-9I4kHrsl.js";
4
+ var y = Object.defineProperty, x = Object.getOwnPropertyDescriptor, l = (t, e, r, o) => {
5
+ for (var s = o > 1 ? void 0 : o ? x(e, r) : e, i = t.length - 1, n; i >= 0; i--)
6
+ (n = t[i]) && (s = (o ? n(e, r, s) : n(s)) || s);
7
+ return o && s && y(e, r, s), s;
8
+ };
9
+ let c = class extends u {
10
+ constructor() {
11
+ super(...arguments), this.shortcuts = [], this.open = !1, this._search = "", this._handleKeyDown = (t) => {
12
+ t.key === "Escape" && this.open && this._close();
13
+ };
14
+ }
15
+ connectedCallback() {
16
+ super.connectedCallback(), document.addEventListener("keydown", this._handleKeyDown);
17
+ }
18
+ disconnectedCallback() {
19
+ super.disconnectedCallback(), document.removeEventListener("keydown", this._handleKeyDown);
20
+ }
21
+ _close() {
22
+ this.open = !1, this._search = "", this.dispatchEvent(new CustomEvent("ai-shortcuts-close", { bubbles: !0, composed: !0 }));
23
+ }
24
+ _filtered() {
25
+ if (!this._search) return this.shortcuts;
26
+ const t = this._search.toLowerCase();
27
+ return this.shortcuts.filter(
28
+ (e) => e.description.toLowerCase().includes(t) || e.keys.some((r) => r.toLowerCase().includes(t)) || e.category?.toLowerCase().includes(t)
29
+ );
30
+ }
31
+ _grouped(t) {
32
+ const e = /* @__PURE__ */ new Map();
33
+ for (const r of t) {
34
+ const o = r.category || "General";
35
+ e.has(o) || e.set(o, []), e.get(o).push(r);
36
+ }
37
+ return e;
38
+ }
39
+ render() {
40
+ if (!this.open) return d;
41
+ const t = this._filtered(), e = this._grouped(t);
42
+ return a`
43
+ <div class="overlay" @click=${(r) => {
44
+ r.target === r.currentTarget && this._close();
45
+ }}>
46
+ <div class="modal" role="dialog" aria-label="Keyboard shortcuts" aria-modal="true">
47
+ <div class="modal-header">
48
+ <span class="modal-title">Keyboard Shortcuts</span>
49
+ <button class="close-btn" aria-label="Close shortcuts" @click=${this._close}><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round"><path d="M18 6L6 18M6 6l12 12"/></svg></button>
50
+ </div>
51
+ <input
52
+ class="search-input"
53
+ type="text"
54
+ placeholder="Search shortcuts..."
55
+ .value=${this._search}
56
+ @input=${(r) => {
57
+ this._search = r.target.value;
58
+ }}
59
+ aria-label="Search shortcuts"
60
+ />
61
+ <div class="shortcuts-list" role="list">
62
+ ${t.length === 0 ? a`<div class="no-results">No shortcuts found</div>` : Array.from(e.entries()).map(([r, o]) => a`
63
+ <div class="category-label">${r}</div>
64
+ ${o.map((s) => a`
65
+ <div class="shortcut-row" role="listitem">
66
+ <span class="shortcut-desc">${s.description}</span>
67
+ <span class="key-group">
68
+ ${s.keys.map((i, n) => a`
69
+ ${n > 0 ? a`<span class="key-plus">+</span>` : d}
70
+ <span class="key-badge">${i}</span>
71
+ `)}
72
+ </span>
73
+ </div>
74
+ `)}
75
+ `)}
76
+ </div>
77
+ </div>
78
+ </div>
79
+ `;
80
+ }
81
+ };
82
+ c.styles = [f, b, m, p`
83
+ :host {
84
+ animation: fadeSlideIn var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out) both;
85
+ }
86
+ :host([hidden]) { display: none; }
87
+
88
+ .overlay {
89
+ position: fixed;
90
+ inset: 0;
91
+ background: var(--cg-overlay-dark-strong);
92
+ backdrop-filter: blur(2px);
93
+ display: flex;
94
+ align-items: center;
95
+ justify-content: center;
96
+ z-index: var(--cg-z-index-top);
97
+ }
98
+
99
+ .modal {
100
+ background: var(--cg-color-surface-base-background);
101
+ border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
102
+ border-radius: var(--cg-border-radius-150);
103
+ padding: var(--cg-spacing-24);
104
+ max-width: 520px;
105
+ width: 90vw;
106
+ max-height: 70vh;
107
+ display: flex;
108
+ flex-direction: column;
109
+ }
110
+
111
+ .modal-header {
112
+ display: flex;
113
+ align-items: center;
114
+ justify-content: space-between;
115
+ margin-bottom: var(--cg-spacing-16);
116
+ }
117
+
118
+ .modal-title {
119
+ color: var(--cg-color-surface-base-text);
120
+ font-size: var(--cg-font-size-lg);
121
+ font-weight: var(--cg-font-weight-bold);
122
+ }
123
+
124
+ .close-btn {
125
+ background: none;
126
+ border: none;
127
+ color: var(--cg-color-input-text-placeholder);
128
+ font-size: var(--cg-font-size-xl);
129
+ cursor: pointer;
130
+ padding: var(--cg-spacing-4);
131
+ border-radius: var(--cg-border-radius-50);
132
+ line-height: 1;
133
+ }
134
+ .close-btn:hover { color: var(--cg-color-surface-base-text); }
135
+ .close-btn:focus-visible {
136
+ outline: 2px solid var(--cg-overlay-accent-strong);
137
+ outline-offset: var(--cg-outline-offset-default);
138
+ }
139
+
140
+ .search-input {
141
+ width: 100%;
142
+ padding: var(--cg-spacing-8) var(--cg-spacing-12);
143
+ border-radius: var(--cg-border-radius-100);
144
+ border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
145
+ background: var(--cg-color-surface-container-background);
146
+ color: var(--cg-color-surface-base-text);
147
+ font-size: var(--cg-font-size-sm);
148
+ font-family: inherit;
149
+ margin-bottom: var(--cg-spacing-16);
150
+ box-sizing: border-box;
151
+ }
152
+ .search-input::placeholder {
153
+ color: var(--cg-color-input-text-placeholder);
154
+ }
155
+ .search-input:focus-visible {
156
+ outline: 2px solid var(--cg-overlay-accent-strong);
157
+ outline-offset: var(--cg-outline-offset-default);
158
+ }
159
+
160
+ .shortcuts-list {
161
+ overflow-y: auto;
162
+ flex: 1;
163
+ }
164
+
165
+ .category-label {
166
+ color: var(--cg-color-input-text-placeholder);
167
+ font-size: var(--cg-font-size-xs);
168
+ font-weight: var(--cg-font-weight-bold);
169
+ text-transform: uppercase;
170
+ letter-spacing: 0.5px;
171
+ padding: var(--cg-spacing-8) 0 var(--cg-spacing-6);
172
+ border-bottom: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
173
+ margin-bottom: var(--cg-spacing-4);
174
+ }
175
+
176
+ .shortcut-row {
177
+ display: flex;
178
+ align-items: center;
179
+ justify-content: space-between;
180
+ padding: var(--cg-spacing-8) var(--cg-spacing-4);
181
+ }
182
+
183
+ .shortcut-desc {
184
+ color: var(--cg-color-surface-base-text);
185
+ font-size: var(--cg-font-size-sm);
186
+ }
187
+
188
+ .key-group {
189
+ display: flex;
190
+ align-items: center;
191
+ gap: var(--cg-spacing-4);
192
+ flex-shrink: 0;
193
+ }
194
+
195
+ .key-badge {
196
+ display: inline-flex;
197
+ align-items: center;
198
+ justify-content: center;
199
+ min-width: var(--cg-spacing-24);
200
+ height: var(--cg-spacing-24);
201
+ padding: 0 var(--cg-spacing-6);
202
+ background: var(--cg-color-surface-container-background);
203
+ border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
204
+ border-bottom-width: 3px;
205
+ border-radius: var(--cg-border-radius-50);
206
+ color: var(--cg-color-surface-base-text);
207
+ font-size: var(--cg-font-size-xs);
208
+ font-weight: var(--cg-font-weight-bold);
209
+ font-family: var(--cg-font-family-mono);
210
+ white-space: nowrap;
211
+ }
212
+
213
+ .key-plus {
214
+ color: var(--cg-color-input-text-placeholder);
215
+ font-size: var(--cg-font-size-xs);
216
+ }
217
+
218
+ .no-results {
219
+ color: var(--cg-color-input-text-placeholder);
220
+ font-size: var(--cg-font-size-sm);
221
+ text-align: center;
222
+ padding: var(--cg-spacing-16);
223
+ }
224
+ `];
225
+ l([
226
+ g({ type: Array })
227
+ ], c.prototype, "shortcuts", 2);
228
+ l([
229
+ g({ type: Boolean, reflect: !0 })
230
+ ], c.prototype, "open", 2);
231
+ l([
232
+ h()
233
+ ], c.prototype, "_search", 2);
234
+ c = l([
235
+ v("ai-keyboard-shortcuts")
236
+ ], c);
237
+ export {
238
+ c as AiKeyboardShortcuts
239
+ };
240
+ //# sourceMappingURL=ai-keyboard-shortcuts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-keyboard-shortcuts.js","sources":["../../../src/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.ts"],"sourcesContent":["/**\n * @element ai-keyboard-shortcuts\n * Modal overlay displaying grouped keyboard shortcuts with searchable\n * key badge UI. Closes on Escape or backdrop click.\n *\n * @example\n * ```html\n * <ai-keyboard-shortcuts\n * .shortcuts=${[{ keys: ['Ctrl', 'K'], description: 'Open search', category: 'Navigation' }]}\n * open\n * ></ai-keyboard-shortcuts>\n * ```\n *\n * @prop {ShortcutEntry[]} shortcuts - Array of shortcut definitions with keys, description, category\n * @prop {boolean} open - Whether the modal is visible\n *\n * @fires ai-shortcuts-close - When the modal is dismissed\n *\n * @cssprop [--cg-font-family-mono] - Font for key badges\n * @cssprop [--cg-color-bg-primary] - Modal background color\n */\nimport { LitElement, html, css, nothing } from 'lit';\nimport { property, state, customElement } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion, fadeSlideInKeyframes } from '../../styles/index.js';\n\nexport interface ShortcutEntry {\n keys: string[];\n description: string;\n category?: string;\n}\n\n@customElement('ai-keyboard-shortcuts')\nexport class AiKeyboardShortcuts extends LitElement {\n static override styles = [hostBlock, reducedMotion, fadeSlideInKeyframes, css`\n :host {\n animation: fadeSlideIn var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out) both;\n }\n :host([hidden]) { display: none; }\n\n .overlay {\n position: fixed;\n inset: 0;\n background: var(--cg-overlay-dark-strong);\n backdrop-filter: blur(2px);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: var(--cg-z-index-top);\n }\n\n .modal {\n background: var(--cg-color-surface-base-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-radius: var(--cg-border-radius-150);\n padding: var(--cg-spacing-24);\n max-width: 520px;\n width: 90vw;\n max-height: 70vh;\n display: flex;\n flex-direction: column;\n }\n\n .modal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: var(--cg-spacing-16);\n }\n\n .modal-title {\n color: var(--cg-color-surface-base-text);\n font-size: var(--cg-font-size-lg);\n font-weight: var(--cg-font-weight-bold);\n }\n\n .close-btn {\n background: none;\n border: none;\n color: var(--cg-color-input-text-placeholder);\n font-size: var(--cg-font-size-xl);\n cursor: pointer;\n padding: var(--cg-spacing-4);\n border-radius: var(--cg-border-radius-50);\n line-height: 1;\n }\n .close-btn:hover { color: var(--cg-color-surface-base-text); }\n .close-btn:focus-visible {\n outline: 2px solid var(--cg-overlay-accent-strong);\n outline-offset: var(--cg-outline-offset-default);\n }\n\n .search-input {\n width: 100%;\n padding: var(--cg-spacing-8) var(--cg-spacing-12);\n border-radius: var(--cg-border-radius-100);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n background: var(--cg-color-surface-container-background);\n color: var(--cg-color-surface-base-text);\n font-size: var(--cg-font-size-sm);\n font-family: inherit;\n margin-bottom: var(--cg-spacing-16);\n box-sizing: border-box;\n }\n .search-input::placeholder {\n color: var(--cg-color-input-text-placeholder);\n }\n .search-input:focus-visible {\n outline: 2px solid var(--cg-overlay-accent-strong);\n outline-offset: var(--cg-outline-offset-default);\n }\n\n .shortcuts-list {\n overflow-y: auto;\n flex: 1;\n }\n\n .category-label {\n color: var(--cg-color-input-text-placeholder);\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-bold);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n padding: var(--cg-spacing-8) 0 var(--cg-spacing-6);\n border-bottom: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n margin-bottom: var(--cg-spacing-4);\n }\n\n .shortcut-row {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--cg-spacing-8) var(--cg-spacing-4);\n }\n\n .shortcut-desc {\n color: var(--cg-color-surface-base-text);\n font-size: var(--cg-font-size-sm);\n }\n\n .key-group {\n display: flex;\n align-items: center;\n gap: var(--cg-spacing-4);\n flex-shrink: 0;\n }\n\n .key-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: var(--cg-spacing-24);\n height: var(--cg-spacing-24);\n padding: 0 var(--cg-spacing-6);\n background: var(--cg-color-surface-container-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-bottom-width: 3px;\n border-radius: var(--cg-border-radius-50);\n color: var(--cg-color-surface-base-text);\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-bold);\n font-family: var(--cg-font-family-mono);\n white-space: nowrap;\n }\n\n .key-plus {\n color: var(--cg-color-input-text-placeholder);\n font-size: var(--cg-font-size-xs);\n }\n\n .no-results {\n color: var(--cg-color-input-text-placeholder);\n font-size: var(--cg-font-size-sm);\n text-align: center;\n padding: var(--cg-spacing-16);\n }\n `];\n @property({ type: Array }) shortcuts: ShortcutEntry[] = [];\n @property({ type: Boolean, reflect: true }) open = false;\n\n @state() private _search = '';\n\n private _handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && this.open) {\n this._close();\n }\n };\n\n override connectedCallback() {\n super.connectedCallback();\n document.addEventListener('keydown', this._handleKeyDown);\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback();\n document.removeEventListener('keydown', this._handleKeyDown);\n }\n\n private _close() {\n this.open = false;\n this._search = '';\n this.dispatchEvent(new CustomEvent('ai-shortcuts-close', { bubbles: true, composed: true }));\n }\n\n private _filtered(): ShortcutEntry[] {\n if (!this._search) return this.shortcuts;\n const q = this._search.toLowerCase();\n return this.shortcuts.filter(s =>\n s.description.toLowerCase().includes(q) ||\n s.keys.some(k => k.toLowerCase().includes(q)) ||\n (s.category?.toLowerCase().includes(q))\n );\n }\n\n private _grouped(items: ShortcutEntry[]): Map<string, ShortcutEntry[]> {\n const map = new Map<string, ShortcutEntry[]>();\n for (const item of items) {\n const cat = item.category || 'General';\n if (!map.has(cat)) map.set(cat, []);\n map.get(cat)!.push(item);\n }\n return map;\n }\n\n override render() {\n if (!this.open) return nothing;\n const filtered = this._filtered();\n const grouped = this._grouped(filtered);\n\n return html`\n <div class=\"overlay\" @click=${(e: Event) => { if (e.target === e.currentTarget) this._close(); }}>\n <div class=\"modal\" role=\"dialog\" aria-label=\"Keyboard shortcuts\" aria-modal=\"true\">\n <div class=\"modal-header\">\n <span class=\"modal-title\">Keyboard Shortcuts</span>\n <button class=\"close-btn\" aria-label=\"Close shortcuts\" @click=${this._close}><svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\"><path d=\"M18 6L6 18M6 6l12 12\"/></svg></button>\n </div>\n <input\n class=\"search-input\"\n type=\"text\"\n placeholder=\"Search shortcuts...\"\n .value=${this._search}\n @input=${(e: Event) => { this._search = (e.target as HTMLInputElement).value; }}\n aria-label=\"Search shortcuts\"\n />\n <div class=\"shortcuts-list\" role=\"list\">\n ${filtered.length === 0\n ? html`<div class=\"no-results\">No shortcuts found</div>`\n : Array.from(grouped.entries()).map(([cat, items]) => html`\n <div class=\"category-label\">${cat}</div>\n ${items.map(s => html`\n <div class=\"shortcut-row\" role=\"listitem\">\n <span class=\"shortcut-desc\">${s.description}</span>\n <span class=\"key-group\">\n ${s.keys.map((k, i) => html`\n ${i > 0 ? html`<span class=\"key-plus\">+</span>` : nothing}\n <span class=\"key-badge\">${k}</span>\n `)}\n </span>\n </div>\n `)}\n `)}\n </div>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'ai-keyboard-shortcuts': AiKeyboardShortcuts;\n }\n}\n"],"names":["AiKeyboardShortcuts","LitElement","e","q","s","k","items","map","item","cat","nothing","filtered","grouped","html","i","hostBlock","reducedMotion","fadeSlideInKeyframes","css","__decorateClass","property","state","customElement"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { LitElement } from 'lit';
2
+ interface KpiItem {
3
+ label: string;
4
+ value: string;
5
+ delta?: string;
6
+ trend?: 'up' | 'down' | 'neutral';
7
+ icon?: string;
8
+ }
9
+ export declare class AiKpiGrid extends LitElement {
10
+ static styles: import('lit').CSSResult[];
11
+ title: string;
12
+ kpis: KpiItem[];
13
+ columns: number;
14
+ loading: boolean;
15
+ private _handleKpiClick;
16
+ private _trendArrow;
17
+ private _renderSkeleton;
18
+ render(): import('lit').TemplateResult<1>;
19
+ }
20
+ declare global {
21
+ interface HTMLElementTagNameMap {
22
+ 'ai-kpi-grid': AiKpiGrid;
23
+ }
24
+ }
25
+ export {};
26
+ //# sourceMappingURL=ai-kpi-grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-kpi-grid.d.ts","sourceRoot":"","sources":["../../../src/components/ai-kpi-grid/ai-kpi-grid.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD,UAAU,OAAO;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBACa,SAAU,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BAkGnB;IACkC,KAAK,SAAM;IAChB,IAAI,EAAE,OAAO,EAAE,CAAM;IACV,OAAO,SAAK;IAC1B,OAAO,UAAS;IAE7C,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,eAAe;IAWd,MAAM;CA4BhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,SAAS,CAAC;KAC1B;CACF"}