@signalflare-ai/ui 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/CHANGELOG.md +25 -4
  2. package/README.md +1 -1
  3. package/ai/component-registry.json +976 -182
  4. package/ai/component-registry.md +4183 -49
  5. package/ai/schemas.ts +99 -502
  6. package/dist/.build-complete +1 -1
  7. package/dist/ai/schemas.d.ts +76 -58
  8. package/dist/ai/schemas.d.ts.map +1 -1
  9. package/dist/{ai-actions-DSVeQn4e.js → ai-actions-BdUZI3Gk.js} +3 -3
  10. package/dist/{ai-actions-DSVeQn4e.js.map → ai-actions-BdUZI3Gk.js.map} +1 -1
  11. package/dist/{ai-agent-card-BXHwhWAU.js → ai-agent-card-BR2NIYhi.js} +1 -1
  12. package/dist/{ai-agent-card-BXHwhWAU.js.map → ai-agent-card-BR2NIYhi.js.map} +1 -1
  13. package/dist/{ai-approval-aa0qvjFN.js → ai-approval-Ba7mrKba.js} +2 -2
  14. package/dist/{ai-approval-aa0qvjFN.js.map → ai-approval-Ba7mrKba.js.map} +1 -1
  15. package/dist/{ai-code-block-BgtIxtZZ.js → ai-code-block-CZtoL73R.js} +3 -3
  16. package/dist/{ai-code-block-BgtIxtZZ.js.map → ai-code-block-CZtoL73R.js.map} +1 -1
  17. package/dist/ai-conversation-Cc7WlaBg.js +242 -0
  18. package/dist/ai-conversation-Cc7WlaBg.js.map +1 -0
  19. package/dist/{ai-info-banner-uFxHHwBA.js → ai-info-banner-C7EWPBj7.js} +7 -3
  20. package/dist/ai-info-banner-C7EWPBj7.js.map +1 -0
  21. package/dist/{ai-message-BjnFznXy.js → ai-message-Bp7L68U_.js} +27 -8
  22. package/dist/ai-message-Bp7L68U_.js.map +1 -0
  23. package/dist/{ai-mission-header-08__gULL.js → ai-mission-header-TiCJfTNt.js} +1 -1
  24. package/dist/{ai-mission-header-08__gULL.js.map → ai-mission-header-TiCJfTNt.js.map} +1 -1
  25. package/dist/{ai-part-group-DBtgTgAn.js → ai-part-group-DNb9I446.js} +3 -3
  26. package/dist/{ai-part-group-DBtgTgAn.js.map → ai-part-group-DNb9I446.js.map} +1 -1
  27. package/dist/{ai-prompt-input-CuluUzpf.js → ai-prompt-input-BVvov_KF.js} +29 -42
  28. package/dist/ai-prompt-input-BVvov_KF.js.map +1 -0
  29. package/dist/{ai-question-CHHoDJMg.js → ai-question-GPPMk7YM.js} +2 -2
  30. package/dist/{ai-question-CHHoDJMg.js.map → ai-question-GPPMk7YM.js.map} +1 -1
  31. package/dist/{ai-reasoning-CnL6ZSr5.js → ai-reasoning-_feFjk56.js} +2 -2
  32. package/dist/{ai-reasoning-CnL6ZSr5.js.map → ai-reasoning-_feFjk56.js.map} +1 -1
  33. package/dist/{ai-response-BEUg3xvd.js → ai-response-CvjV3WhV.js} +8 -3
  34. package/dist/ai-response-CvjV3WhV.js.map +1 -0
  35. package/dist/{ai-shimmer-By5_L05p.js → ai-shimmer-j6lKIrjj.js} +1 -1
  36. package/dist/{ai-shimmer-By5_L05p.js.map → ai-shimmer-j6lKIrjj.js.map} +1 -1
  37. package/dist/{ai-status-badge-BGYGWYF6.js → ai-status-badge-CSU_QOdz.js} +1 -1
  38. package/dist/{ai-status-badge-BGYGWYF6.js.map → ai-status-badge-CSU_QOdz.js.map} +1 -1
  39. package/dist/{ai-streaming-text-CMfoThV0.js → ai-streaming-text-IWW1BhvZ.js} +44 -16
  40. package/dist/ai-streaming-text-IWW1BhvZ.js.map +1 -0
  41. package/dist/{ai-subagent-DcPRqkAA.js → ai-subagent-JA4iIMW3.js} +13 -5
  42. package/dist/ai-subagent-JA4iIMW3.js.map +1 -0
  43. package/dist/{ai-suggestion-MgeCg5Ar.js → ai-suggestion-BdO6MBuH.js} +2 -2
  44. package/dist/{ai-suggestion-MgeCg5Ar.js.map → ai-suggestion-BdO6MBuH.js.map} +1 -1
  45. package/dist/{ai-task-list-Da9zIm00.js → ai-task-list-DYw4R1FA.js} +12 -5
  46. package/dist/ai-task-list-DYw4R1FA.js.map +1 -0
  47. package/dist/{ai-timeline-Cwu045IR.js → ai-timeline-C42tOUT8.js} +1 -1
  48. package/dist/{ai-timeline-Cwu045IR.js.map → ai-timeline-C42tOUT8.js.map} +1 -1
  49. package/dist/{ai-tool-Cn1O4xjP.js → ai-tool-03jOTwUI.js} +23 -10
  50. package/dist/ai-tool-03jOTwUI.js.map +1 -0
  51. package/dist/{ai-usage-bar-DjS12DMp.js → ai-usage-bar-BRf5LC_b.js} +1 -1
  52. package/dist/{ai-usage-bar-DjS12DMp.js.map → ai-usage-bar-BRf5LC_b.js.map} +1 -1
  53. package/dist/{badge-D_eaA6wv.js → badge-BheXjMc8.js} +2 -2
  54. package/dist/{badge-D_eaA6wv.js.map → badge-BheXjMc8.js.map} +1 -1
  55. package/dist/{banner-B_6oBrsu.js → banner-CcsjunJg.js} +7 -2
  56. package/dist/banner-CcsjunJg.js.map +1 -0
  57. package/dist/{breadcrumbs-BlmeYfgq.js → breadcrumbs-CouSyy3H.js} +3 -3
  58. package/dist/{breadcrumbs-BlmeYfgq.js.map → breadcrumbs-CouSyy3H.js.map} +1 -1
  59. package/dist/{button-De0267YU.js → button-CO6-qPax.js} +1 -1
  60. package/dist/{button-De0267YU.js.map → button-CO6-qPax.js.map} +1 -1
  61. package/dist/catalog.js +1 -1
  62. package/dist/{chart-BK3sVPnD.js → chart-Dg0qUeSc.js} +2 -2
  63. package/dist/{chart-BK3sVPnD.js.map → chart-Dg0qUeSc.js.map} +1 -1
  64. package/dist/{checkbox-DYhUmZNw.js → checkbox-D7p4QKsC.js} +2 -2
  65. package/dist/{checkbox-DYhUmZNw.js.map → checkbox-D7p4QKsC.js.map} +1 -1
  66. package/dist/{clipboard-text-ssybngLw.js → clipboard-text-kLaMogs3.js} +3 -3
  67. package/dist/{clipboard-text-ssybngLw.js.map → clipboard-text-kLaMogs3.js.map} +1 -1
  68. package/dist/{code-Cx-QSoOT.js → code-BN8InC0G.js} +2 -2
  69. package/dist/{code-Cx-QSoOT.js.map → code-BN8InC0G.js.map} +1 -1
  70. package/dist/{collapsible-DWsXeXmS.js → collapsible-D_ueZ0jz.js} +1 -1
  71. package/dist/{collapsible-DWsXeXmS.js.map → collapsible-D_ueZ0jz.js.map} +1 -1
  72. package/dist/{combobox-C0iW6a0r.js → combobox-B7TOK0U2.js} +3 -3
  73. package/dist/{combobox-C0iW6a0r.js.map → combobox-B7TOK0U2.js.map} +1 -1
  74. package/dist/{command-palette-DGzioeki.js → command-palette-CuNUyJca.js} +2 -2
  75. package/dist/{command-palette-DGzioeki.js.map → command-palette-CuNUyJca.js.map} +1 -1
  76. package/dist/components/ai-actions.js +1 -1
  77. package/dist/components/ai-agent-card.js +1 -1
  78. package/dist/components/ai-approval.js +1 -1
  79. package/dist/components/ai-code-block.js +1 -1
  80. package/dist/components/ai-conversation.js +2 -2
  81. package/dist/components/ai-info-banner.js +1 -1
  82. package/dist/components/ai-message.js +1 -1
  83. package/dist/components/ai-mission-header.js +1 -1
  84. package/dist/components/ai-part-group.js +1 -1
  85. package/dist/components/ai-prompt-input.js +1 -1
  86. package/dist/components/ai-question.js +1 -1
  87. package/dist/components/ai-reasoning.js +1 -1
  88. package/dist/components/ai-response.js +1 -1
  89. package/dist/components/ai-shimmer.js +1 -1
  90. package/dist/components/ai-status-badge.js +1 -1
  91. package/dist/components/ai-streaming-text.js +2 -2
  92. package/dist/components/ai-subagent.js +1 -1
  93. package/dist/components/ai-suggestion.js +1 -1
  94. package/dist/components/ai-task-list.js +1 -1
  95. package/dist/components/ai-timeline.js +1 -1
  96. package/dist/components/ai-tool.js +1 -1
  97. package/dist/components/ai-usage-bar.js +1 -1
  98. package/dist/components/badge.js +1 -1
  99. package/dist/components/banner.js +1 -1
  100. package/dist/components/breadcrumbs.js +1 -1
  101. package/dist/components/button.js +1 -1
  102. package/dist/components/chart.js +2 -2
  103. package/dist/components/checkbox.js +1 -1
  104. package/dist/components/clipboard-text.js +1 -1
  105. package/dist/components/code.js +1 -1
  106. package/dist/components/collapsible.js +1 -1
  107. package/dist/components/combobox.js +1 -1
  108. package/dist/components/command-palette.js +1 -1
  109. package/dist/components/data-grid.js +1 -1
  110. package/dist/components/date-picker.js +1 -1
  111. package/dist/components/date-range-picker.js +1 -1
  112. package/dist/components/dialog.js +1 -1
  113. package/dist/components/dropdown.js +1 -1
  114. package/dist/components/empty.js +1 -1
  115. package/dist/components/field.js +1 -1
  116. package/dist/components/filters.js +1 -1
  117. package/dist/components/flow.js +1 -1
  118. package/dist/components/grid.js +1 -1
  119. package/dist/components/input.js +2 -2
  120. package/dist/components/label.js +1 -1
  121. package/dist/components/layer-card.js +1 -1
  122. package/dist/components/loader.js +1 -1
  123. package/dist/components/menubar.js +1 -1
  124. package/dist/components/meter.js +1 -1
  125. package/dist/components/pagination.js +1 -1
  126. package/dist/components/popover.js +1 -1
  127. package/dist/components/radio.js +1 -1
  128. package/dist/components/select.js +1 -1
  129. package/dist/components/sensitive-input.js +1 -1
  130. package/dist/components/sidebar.js +1 -1
  131. package/dist/components/signalflare-ai-logo.js +1 -1
  132. package/dist/components/sparkline.js +1 -1
  133. package/dist/components/stat-card.js +1 -1
  134. package/dist/components/surface.js +1 -1
  135. package/dist/components/switch.js +1 -1
  136. package/dist/components/table.js +1 -1
  137. package/dist/components/tabs.js +1 -1
  138. package/dist/components/text-roll.js +1 -1
  139. package/dist/components/text.js +1 -1
  140. package/dist/components/theme-toggle.js +1 -1
  141. package/dist/components/toast.js +1 -1
  142. package/dist/components/tooltip.js +1 -1
  143. package/dist/components/use-agent-harness.js +1 -1
  144. package/dist/{data-grid-CG76N_hK.js → data-grid-DGHmU0w3.js} +8 -8
  145. package/dist/{data-grid-CG76N_hK.js.map → data-grid-DGHmU0w3.js.map} +1 -1
  146. package/dist/{date-picker-Dqg9L4xu.js → date-picker--ox89RBy.js} +1 -1
  147. package/dist/{date-picker-Dqg9L4xu.js.map → date-picker--ox89RBy.js.map} +1 -1
  148. package/dist/{date-range-picker-D75LLINc.js → date-range-picker-DVa7QBqE.js} +1 -1
  149. package/dist/{date-range-picker-D75LLINc.js.map → date-range-picker-DVa7QBqE.js.map} +1 -1
  150. package/dist/{dialog-CyHEQXEY.js → dialog-Bv1oSFOd.js} +2 -2
  151. package/dist/{dialog-CyHEQXEY.js.map → dialog-Bv1oSFOd.js.map} +1 -1
  152. package/dist/{dist-1-gcEL2L.js → dist-B6iWiWwp.js} +25 -25
  153. package/dist/{dist-1-gcEL2L.js.map → dist-B6iWiWwp.js.map} +1 -1
  154. package/dist/{dropdown-qnEYRFXZ.js → dropdown-B_nrGXjV.js} +2 -2
  155. package/dist/{dropdown-qnEYRFXZ.js.map → dropdown-B_nrGXjV.js.map} +1 -1
  156. package/dist/{echart-DURZEyai.js → echart-CdOUaT-r.js} +1 -1
  157. package/dist/{echart-DURZEyai.js.map → echart-CdOUaT-r.js.map} +1 -1
  158. package/dist/{empty-D2TypIId.js → empty-DZnN0zKX.js} +11 -6
  159. package/dist/empty-DZnN0zKX.js.map +1 -0
  160. package/dist/{field-Y_UK1_Cg.js → field-B_yVof52.js} +2 -2
  161. package/dist/{field-Y_UK1_Cg.js.map → field-B_yVof52.js.map} +1 -1
  162. package/dist/{filters-Bw_U6ZTx.js → filters-cpJCY21R.js} +7 -7
  163. package/dist/{filters-Bw_U6ZTx.js.map → filters-cpJCY21R.js.map} +1 -1
  164. package/dist/{flow-BRsYUCJa.js → flow-B4v198ot.js} +1 -1
  165. package/dist/{flow-BRsYUCJa.js.map → flow-B4v198ot.js.map} +1 -1
  166. package/dist/genui.js +1 -1
  167. package/dist/{grid-qUAN9hFx.js → grid-CEd64Lnh.js} +1 -1
  168. package/dist/{grid-qUAN9hFx.js.map → grid-CEd64Lnh.js.map} +1 -1
  169. package/dist/{highlight-to-react-ClEfL81q.js → highlight-to-react-D0Yav4jk.js} +1 -1
  170. package/dist/{highlight-to-react-ClEfL81q.js.map → highlight-to-react-D0Yav4jk.js.map} +1 -1
  171. package/dist/index.js +69 -69
  172. package/dist/{input-DXYUjGgD.js → input-B2bbijRh.js} +2 -2
  173. package/dist/{input-DXYUjGgD.js.map → input-B2bbijRh.js.map} +1 -1
  174. package/dist/{input-DddtBN-g.js → input-ClB_E4Lb.js} +4 -4
  175. package/dist/{input-DddtBN-g.js.map → input-ClB_E4Lb.js.map} +1 -1
  176. package/dist/{label-QtJxtJ4u.js → label-DUv_urO1.js} +2 -2
  177. package/dist/{label-QtJxtJ4u.js.map → label-DUv_urO1.js.map} +1 -1
  178. package/dist/{layer-card-BME0eljh.js → layer-card-BK7eYfwn.js} +1 -1
  179. package/dist/{layer-card-BME0eljh.js.map → layer-card-BK7eYfwn.js.map} +1 -1
  180. package/dist/layout-DJHMMap2.js +6103 -0
  181. package/dist/layout-DJHMMap2.js.map +1 -0
  182. package/dist/measured-text-BI3dTJmH.js +290 -0
  183. package/dist/measured-text-BI3dTJmH.js.map +1 -0
  184. package/dist/{menubar-C8NzAjfd.js → menubar-Cxf3xeAt.js} +2 -2
  185. package/dist/{menubar-C8NzAjfd.js.map → menubar-Cxf3xeAt.js.map} +1 -1
  186. package/dist/{meter-CpmTenEr.js → meter-BFFe9l5b.js} +1 -1
  187. package/dist/{meter-CpmTenEr.js.map → meter-BFFe9l5b.js.map} +1 -1
  188. package/dist/{pagination-BVqdlONY.js → pagination-yS372Tr4.js} +2 -2
  189. package/dist/{pagination-BVqdlONY.js.map → pagination-yS372Tr4.js.map} +1 -1
  190. package/dist/{popover-BRQZ2b6z.js → popover-SRoJaCZr.js} +1 -1
  191. package/dist/{popover-BRQZ2b6z.js.map → popover-SRoJaCZr.js.map} +1 -1
  192. package/dist/{radio-BNSwOt3B.js → radio-BcwhwYNB.js} +1 -1
  193. package/dist/{radio-BNSwOt3B.js.map → radio-BcwhwYNB.js.map} +1 -1
  194. package/dist/{select-1w2aebGQ.js → select-DMhdoHMa.js} +4 -4
  195. package/dist/{select-1w2aebGQ.js.map → select-DMhdoHMa.js.map} +1 -1
  196. package/dist/{sensitive-input-82Cez3vj.js → sensitive-input-CJUpIRal.js} +3 -3
  197. package/dist/{sensitive-input-82Cez3vj.js.map → sensitive-input-CJUpIRal.js.map} +1 -1
  198. package/dist/{sidebar-CAsCmSpM.js → sidebar-D4zrlYpn.js} +2 -2
  199. package/dist/{sidebar-CAsCmSpM.js.map → sidebar-D4zrlYpn.js.map} +1 -1
  200. package/dist/{signalflare-ai-logo-DDhxMJD6.js → signalflare-ai-logo-Bipogceq.js} +1 -1
  201. package/dist/{signalflare-ai-logo-DDhxMJD6.js.map → signalflare-ai-logo-Bipogceq.js.map} +1 -1
  202. package/dist/{skeleton-line-Do3UmGk9.js → skeleton-line-CH1-h6e2.js} +1 -1
  203. package/dist/{skeleton-line-Do3UmGk9.js.map → skeleton-line-CH1-h6e2.js.map} +1 -1
  204. package/dist/{sparkline-DdbeM4Ai.js → sparkline-DHmgj1d0.js} +2 -2
  205. package/dist/{sparkline-DdbeM4Ai.js.map → sparkline-DHmgj1d0.js.map} +1 -1
  206. package/dist/src/blocks/agent-harness/agent-harness.d.ts.map +1 -1
  207. package/dist/src/blocks/agent-harness/agent-harness.tsx +29 -5
  208. package/dist/src/components/ai-conversation/ai-conversation.d.ts +69 -37
  209. package/dist/src/components/ai-conversation/ai-conversation.d.ts.map +1 -1
  210. package/dist/src/components/ai-conversation/index.d.ts +2 -1
  211. package/dist/src/components/ai-conversation/index.d.ts.map +1 -1
  212. package/dist/src/components/ai-conversation/measurement-constants.d.ts +30 -0
  213. package/dist/src/components/ai-conversation/measurement-constants.d.ts.map +1 -0
  214. package/dist/src/components/ai-info-banner/ai-info-banner.d.ts.map +1 -1
  215. package/dist/src/components/ai-message/ai-message.d.ts +3 -0
  216. package/dist/src/components/ai-message/ai-message.d.ts.map +1 -1
  217. package/dist/src/components/ai-prompt-input/ai-prompt-input.d.ts +13 -3
  218. package/dist/src/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -1
  219. package/dist/src/components/ai-prompt-input/index.d.ts +1 -1
  220. package/dist/src/components/ai-prompt-input/index.d.ts.map +1 -1
  221. package/dist/src/components/ai-response/ai-response.d.ts +12 -1
  222. package/dist/src/components/ai-response/ai-response.d.ts.map +1 -1
  223. package/dist/src/components/ai-streaming-text/ai-streaming-text.d.ts +27 -0
  224. package/dist/src/components/ai-streaming-text/ai-streaming-text.d.ts.map +1 -1
  225. package/dist/src/components/ai-streaming-text/index.d.ts +1 -1
  226. package/dist/src/components/ai-streaming-text/index.d.ts.map +1 -1
  227. package/dist/src/components/ai-subagent/ai-subagent.d.ts.map +1 -1
  228. package/dist/src/components/ai-task-list/ai-task-list.d.ts.map +1 -1
  229. package/dist/src/components/ai-tool/ai-tool.d.ts.map +1 -1
  230. package/dist/src/components/banner/banner.d.ts.map +1 -1
  231. package/dist/src/components/empty/empty.d.ts.map +1 -1
  232. package/dist/src/components/stat-card/stat-card.d.ts +5 -0
  233. package/dist/src/components/stat-card/stat-card.d.ts.map +1 -1
  234. package/dist/src/components/text/text.d.ts +35 -1
  235. package/dist/src/components/text/text.d.ts.map +1 -1
  236. package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
  237. package/dist/src/index.d.ts +2 -2
  238. package/dist/src/index.d.ts.map +1 -1
  239. package/dist/src/utils/index.d.ts +2 -0
  240. package/dist/src/utils/index.d.ts.map +1 -1
  241. package/dist/src/utils/measured-text.d.ts +40 -0
  242. package/dist/src/utils/measured-text.d.ts.map +1 -0
  243. package/dist/src/utils/use-measured-text.d.ts +59 -0
  244. package/dist/src/utils/use-measured-text.d.ts.map +1 -0
  245. package/dist/{stat-card-CEZscNh8.js → stat-card-Ew-ofzEm.js} +28 -10
  246. package/dist/stat-card-Ew-ofzEm.js.map +1 -0
  247. package/dist/styles/sf-binding.css +1 -1
  248. package/dist/styles/sf-standalone.css +2 -2
  249. package/dist/styles/shadcn.css +1 -1
  250. package/dist/styles/theme-fedramp.css +12 -3
  251. package/dist/styles/theme-minimal.css +104 -26
  252. package/dist/styles/theme-sf.css +138 -39
  253. package/dist/styles/theme-vesper.css +91 -0
  254. package/dist/{surface-BduI7Ehl.js → surface-DGwRlC0o.js} +1 -1
  255. package/dist/{surface-BduI7Ehl.js.map → surface-DGwRlC0o.js.map} +1 -1
  256. package/dist/{switch-CzZBRBL7.js → switch-BxAMfHdt.js} +2 -2
  257. package/dist/{switch-CzZBRBL7.js.map → switch-BxAMfHdt.js.map} +1 -1
  258. package/dist/{table-Rv4JMy0B.js → table-BBeAtYVZ.js} +2 -2
  259. package/dist/{table-Rv4JMy0B.js.map → table-BBeAtYVZ.js.map} +1 -1
  260. package/dist/{tabs-1cHrYoel.js → tabs-CeHu7Scn.js} +1 -1
  261. package/dist/{tabs-1cHrYoel.js.map → tabs-CeHu7Scn.js.map} +1 -1
  262. package/dist/{text-KJmGkwnf.js → text-Cqryz7rk.js} +27 -5
  263. package/dist/text-Cqryz7rk.js.map +1 -0
  264. package/dist/{text-roll-BZ3I1umc.js → text-roll-Ch52hcQj.js} +1 -1
  265. package/dist/{text-roll-BZ3I1umc.js.map → text-roll-Ch52hcQj.js.map} +1 -1
  266. package/dist/{theme-toggle-Bhu681D7.js → theme-toggle-LDfIKEqx.js} +3 -3
  267. package/dist/{theme-toggle-Bhu681D7.js.map → theme-toggle-LDfIKEqx.js.map} +1 -1
  268. package/dist/{toast-Nw28a5Cx.js → toast-CaFQNYng.js} +2 -2
  269. package/dist/{toast-Nw28a5Cx.js.map → toast-CaFQNYng.js.map} +1 -1
  270. package/dist/{tooltip-Cb7QW-7H.js → tooltip-g9lFsvcT.js} +8 -2
  271. package/dist/tooltip-g9lFsvcT.js.map +1 -0
  272. package/dist/{use-agent-harness-BMyF8pTq.js → use-agent-harness-BTcNJdw4.js} +1 -1
  273. package/dist/{use-agent-harness-BMyF8pTq.js.map → use-agent-harness-BTcNJdw4.js.map} +1 -1
  274. package/dist/utils.js +2 -1
  275. package/package.json +2 -1
  276. package/scripts/css-build.ts +1 -1
  277. package/scripts/theme-generator/config.ts +27 -141
  278. package/scripts/theme-generator/generate-css.ts +0 -1
  279. package/scripts/theme-generator/index.ts +0 -1
  280. package/dist/ai-conversation-CArP7C8K.js +0 -184
  281. package/dist/ai-conversation-CArP7C8K.js.map +0 -1
  282. package/dist/ai-info-banner-uFxHHwBA.js.map +0 -1
  283. package/dist/ai-message-BjnFznXy.js.map +0 -1
  284. package/dist/ai-prompt-input-CuluUzpf.js.map +0 -1
  285. package/dist/ai-response-BEUg3xvd.js.map +0 -1
  286. package/dist/ai-streaming-text-CMfoThV0.js.map +0 -1
  287. package/dist/ai-subagent-DcPRqkAA.js.map +0 -1
  288. package/dist/ai-task-list-Da9zIm00.js.map +0 -1
  289. package/dist/ai-tool-Cn1O4xjP.js.map +0 -1
  290. package/dist/banner-B_6oBrsu.js.map +0 -1
  291. package/dist/empty-D2TypIId.js.map +0 -1
  292. package/dist/stat-card-CEZscNh8.js.map +0 -1
  293. package/dist/styles/theme-blue-tint.css +0 -98
  294. package/dist/text-KJmGkwnf.js.map +0 -1
  295. package/dist/tooltip-Cb7QW-7H.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"signalflare-ai-logo-DDhxMJD6.js","names":[],"sources":["../src/components/signalflare-ai-logo/signalflare-ai-logo.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { cn } from \"../../utils/cn\";\n\n// =============================================================================\n// Brand Colors (internal)\n// =============================================================================\n\nconst SIGNALFLARE_BLUE = \"#4188ff\";\nconst SIGNALFLARE_TEAL = \"#00a7a8\";\nconst SIGNALFLARE_GRAY = \"#766c69\";\n\n// =============================================================================\n// SVG Path Data (internal)\n// =============================================================================\n\n// Glyph (map pin icon) - from favicon.svg\nconst SIGNALFLARE_GLYPH_PATH =\n \"M 383.980469 199.453125 C 316.03125 199.453125 260.953125 254.539062 260.953125 322.484375 C 260.953125 345.546875 267.296875 367.117188 278.339844 385.566406 L 383.976562 568.550781 L 489.699219 385.4375 C 500.6875 367.019531 507.007812 345.492188 507.007812 322.488281 C 507.007812 254.535156 451.929688 199.453125 383.980469 199.453125 Z M 383.980469 363.65625 C 361.246094 363.65625 342.8125 345.222656 342.816406 322.484375 C 342.816406 299.75 361.25 281.316406 383.980469 281.316406 C 406.722656 281.316406 425.15625 299.75 425.15625 322.484375 C 425.15625 345.222656 406.722656 363.65625 383.980469 363.65625 Z\";\n\nconst SIGNALFLARE_GLYPH_VIEWBOX = \"0 0 768 768\";\n\n// Full logo paths - from logo.svg (cls-1 = blue, cls-2 = teal)\nconst SIGNALFLARE_FULL_LOGO_VIEWBOX = \"0 0 286.96 55.03\";\n\n// Teal paths (cls-2) - dot on \"i\", \"ai\" text, decorative star element\nconst SIGNALFLARE_TEAL_PATHS = [\n // Dot on \"i\" in \".ai\"\n \"M285.05,10.58c-1-.7-2.22-1-3.45-.78-1.22.22-2.3.89-3.04,1.89-.74,1-1.04,2.26-.85,3.48s.85,2.3,1.85,3.04c1,.7,2.22,1,3.45.78,1.22-.22,2.3-.89,3.04-1.89s1.04-2.26.85-3.48c-.22-1.22-.89-2.33-1.85-3.04Z\",\n // \"a\" in \".ai\"\n \"M273.11,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.04-.07-1.56-.63-1.56-1.74h.02ZM265.51,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.07.67-.04,1.22-.26,1.67h0Z\",\n // Period in \".ai\"\n \"M244.91,38.31c-1.33,0-2.37.33-3.15,1.04-.78.7-1.19,1.67-1.19,2.89s.37,2.15,1.19,2.85c.78.7,1.82,1.04,3.15,1.04s2.41-.33,3.15-1.04c.78-.7,1.19-1.63,1.19-2.85s-.37-2.19-1.19-2.89c-.74-.67-1.82-1.04-3.15-1.04Z\",\n // \"i\" stem in \".ai\"\n \"M286.11,24.16h-7.34v21.56h7.34v-21.56Z\",\n // Decorative star/compass element\n \"M184.7,18.26v-.02c-5.88-1.14-11.76-2.28-17.64-3.43,0-.05,0-.1-.02-.15,9.65-3.57,19.3-7.15,29.02-10.75-.23-.12-.35-.05-.47,0-3.14.95-6.28,1.9-9.43,2.86-7.19,2.18-14.39,4.35-21.58,6.54-.49.15-.62.15-.52-.44.51-3,.98-6,1.45-9.01.2-1.25.39-2.51.58-3.76-.04,0-.07-.02-.11-.03,0-.02,0-.04,0-.06v.06h-.03c-1.09,3.57-2.19,7.14-3.33,10.87-.37-1.35-.68-2.52-1-3.69-.05,0-.1.01-.15.02v4.36s-.1.03-.15.04c-1.76-2.54-3.53-5.09-5.29-7.63-.03.03-.06.06-.09.09,1.61,3.19,3.22,6.39,4.88,9.68-6.91-.65-13.65-1.29-20.4-1.93v.07h-.12l.12.02v.02c5.89,1.14,11.79,2.29,17.69,3.43v.13c-9.77,3.62-19.55,7.25-29.38,10.89.17.12.27.04.37.01,3-.91,6-1.81,8.99-2.72,7.48-2.26,14.97-4.53,22.45-6.79.23-.07.67-.44.55.29-.59,3.55-1.15,7.11-1.72,10.67-.12.74-.22,1.48-.33,2.21.03,0,.06.01.1.02v.08l.02-.08h.03c1.09-3.56,2.18-7.11,3.32-10.84.37,1.35.68,2.52,1,3.69l.14-.02v-4.34c.05-.02.11-.03.16-.05,1.76,2.54,3.52,5.07,5.29,7.61.03-.02.07-.04.1-.07-1.61-3.2-3.22-6.39-4.88-9.68,6.9.65,13.65,1.29,20.4,1.93v-.07h.13l-.13-.02h-.03Z\",\n];\n\n// Blue paths (cls-1) - \"Signal\", \"Fl\", \"are\" text\nconst SIGNALFLARE_BLUE_PATHS = [\n // Dot on first \"i\" in \"Signal\"\n \"M33.33,14.64c-1.48,0-2.59.3-3.26.85s-1,1.44-1,2.67.33,2.11,1,2.67,1.74.85,3.26.85,2.56-.26,3.22-.82c.7-.59,1.04-1.48,1.04-2.67s-.33-2.11-1.04-2.67c-.7-.59-1.78-.89-3.22-.89h0Z\",\n // \"a\" in \"Signal\" (second a)\n \"M112.39,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.04-.07-1.56-.63-1.56-1.74h.02ZM104.84,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.04.67-.07,1.22-.26,1.67h0Z\",\n // \"n\" in \"Signal\"\n \"M84.38,24.6c-1.07-.59-2.37-.85-3.89-.85-1.37,0-2.63.26-3.74.82-1.07.52-2,1.3-2.78,2.33-.33.48-.59,1-.85,1.59l-.22-4.33h-6.56v21.6h7.34v-11.45c0-1.22.19-2.19.52-2.89s.82-1.22,1.41-1.56c.59-.33,1.26-.52,1.93-.52.89,0,1.63.3,2.19.85.59.59.85,1.59.85,3.11v12.45h7.34v-14.37c0-1.7-.33-3.11-.96-4.22-.56-1.15-1.44-1.96-2.56-2.56h-.02Z\",\n // \"S\" in \"Signal\"\n \"M10.84,22.93c.67-.22,1.52-.33,2.59-.33,1.82,0,3.41.33,4.82,1,1.44.63,2.78,1.59,4,2.89l3.63-4.82c-1.48-1.59-3.26-2.78-5.3-3.59-2-.85-4.33-1.26-7-1.26s-4.78.41-6.59,1.22c-1.85.82-3.26,1.93-4.22,3.33-.96,1.37-1.48,2.96-1.48,4.74,0,1.59.37,2.89,1.07,3.96.7,1.04,1.7,1.89,2.93,2.52,1.26.59,2.7,1.07,4.3,1.48l5.26,1.15c1.22.3,2.04.63,2.45,1.07.44.41.63.93.63,1.52s-.15,1-.48,1.41-.82.7-1.52.93c-.67.19-1.48.3-2.52.3-1.3,0-2.56-.19-3.85-.56-1.22-.37-2.37-.89-3.45-1.52-1.04-.67-1.93-1.41-2.63-2.26l-3.48,4.96c.96,1,2.11,1.89,3.48,2.67,1.37.78,2.93,1.37,4.67,1.82,1.74.41,3.52.59,5.45.59,2.33,0,4.41-.33,6.22-1.04,1.82-.7,3.22-1.78,4.26-3.15,1.04-1.41,1.56-3.11,1.56-5.15s-.67-3.78-2-5.04c-1.33-1.26-3.41-2.22-6.26-2.89l-4.78-1.07c-1.26-.3-2.19-.63-2.78-1.04-.56-.44-.82-.96-.82-1.56,0-.52.15-.96.44-1.37s.78-.7,1.41-.93v.02Z\",\n // \"i\" stem in \"Signal\"\n \"M36.96,24.16h-7.3v21.56h7.34v-21.56h-.04Z\",\n // \"g\" in \"Signal\"\n \"M62.64,23.19c.19,0,.33,0,.52.04.19,0,.33.04.52.07l-.59-4.93c-.11-.04-.26-.04-.37-.04h-.3c-1.37,0-2.52.33-3.45,1.04-.89.7-1.56,1.59-2,2.67-.3.7-.44,1.44-.56,2.22-1.33-.37-2.82-.52-4.52-.52-2.22,0-4.11.3-5.67.85-1.56.59-2.74,1.41-3.59,2.52-.82,1.07-1.22,2.37-1.22,3.96,0,2.33.89,4.11,2.63,5.41.26.19.56.37.85.52-.67.22-1.26.56-1.78.96-1.07.85-1.63,2-1.63,3.37s.44,2.48,1.3,3.26c.48.44,1.07.82,1.85,1.07-1.15.19-2,.52-2.63,1-.96.74-1.48,1.7-1.48,2.93,0,1.67.85,3,2.59,3.96s4.56,1.48,8.45,1.48c2.41,0,4.48-.3,6.26-.93,1.78-.59,3.15-1.44,4.15-2.63.96-1.19,1.48-2.67,1.48-4.45,0-1.96-.67-3.45-2.04-4.48-1.33-1.07-3.22-1.59-5.74-1.59h-6.85c-.82,0-1.41-.11-1.82-.33-.41-.26-.59-.63-.59-1.11,0-.44.22-.85.7-1.15.19-.15.44-.22.78-.33,1.19.26,2.52.37,4,.37,2.19,0,4.04-.26,5.59-.82,1.56-.59,2.74-1.41,3.52-2.52.85-1.07,1.26-2.41,1.26-3.96s-.41-2.89-1.26-3.96c-.52-.67-1.15-1.26-1.96-1.74.15-.48.37-.89.74-1.26.67-.67,1.59-.96,2.85-.96h0ZM47.86,46.68h7.71c.85,0,1.41.11,1.74.33.33.26.48.59.48,1.04s-.22.82-.7,1.11c-.44.33-1.15.59-2.07.78-.89.19-2.04.3-3.41.3-1.74,0-3.11-.19-4.11-.56-.96-.33-1.48-.85-1.48-1.52,0-.44.15-.78.48-1.07.37-.26.82-.41,1.37-.41h0ZM54.15,33.34c-.59.56-1.37.82-2.3.82s-1.74-.26-2.33-.82-.85-1.3-.85-2.3.3-1.78.85-2.33c.59-.56,1.37-.82,2.33-.82s1.67.26,2.3.82c.59.56.93,1.33.93,2.33-.04,1-.33,1.78-.93,2.3Z\",\n // \"F\" in \"Flare\"\n \"M132.7,45.76h7.41v-10.97h11.74v-5.74h-11.74v-6.04h14.71v-5.74h-22.12v28.49h0Z\",\n // \"l\" (first) in \"Flare\"\n \"M127.4,41.05c-.74,0-1.3-.19-1.59-.59-.33-.41-.48-1.07-.48-2.04V15.01h-7.34v24.34c0,2.41.52,4.15,1.56,5.22s2.7,1.59,5,1.59c.82,0,1.63-.11,2.45-.3.85-.19,1.52-.44,2.04-.78l.48-4.41c-.41.11-.74.19-1.04.26-.3.07-.67.11-1.07.11h0Z\",\n // \"l\" (second) in \"Flare\"\n \"M167.89,41.05c-.74,0-1.3-.19-1.59-.59-.33-.41-.48-1.07-.48-2.04V15.01h-7.34v24.34c0,2.41.52,4.15,1.56,5.22s2.7,1.59,5,1.59c.82,0,1.63-.11,2.45-.3.85-.19,1.52-.44,2.04-.78l.48-4.41c-.41.11-.74.19-1.04.26-.26.07-.63.11-1.07.11h0Z\",\n // \"e\" in \"Flare\"\n \"M232.24,25.08c-1.59-.89-3.52-1.33-5.78-1.33s-4.19.44-5.89,1.33-3,2.19-3.96,3.85c-.96,1.67-1.41,3.67-1.41,6.04s.48,4.37,1.41,6.04c.96,1.67,2.3,2.96,4,3.85,1.74.89,3.82,1.33,6.22,1.33,1.48,0,2.93-.22,4.26-.63,1.37-.44,2.56-1.07,3.52-1.89,1-.85,1.7-1.93,2.11-3.15l-5.85-1.93c-.33.78-.82,1.37-1.48,1.82-.63.44-1.48.63-2.59.63-.96,0-1.82-.19-2.52-.56-.7-.41-1.22-1.04-1.59-1.89-.19-.48-.37-1.07-.44-1.74h14.71c.04-.33.11-.78.11-1.3.04-.52.04-1.04.04-1.56,0-2-.41-3.74-1.26-5.26-.74-1.59-1.96-2.82-3.59-3.67l-.02.02ZM224.13,29.53c.67-.44,1.44-.63,2.37-.63,1.3,0,2.26.44,2.85,1.37.44.67.74,1.56.85,2.63h-7.85c.07-.48.19-.93.3-1.33.33-.93.82-1.63,1.48-2.04Z\",\n // \"a\" in \"Flare\"\n \"M192.38,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.07-.07-1.56-.63-1.56-1.74h.02ZM184.78,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.04.67-.07,1.22-.26,1.67h0Z\",\n // \"r\" in \"Flare\"\n \"M211.35,23.75c-1.67,0-3.04.44-4.15,1.33-1.07.89-1.89,2.15-2.41,3.74l-.3-4.67h-6.48v21.56h7.34v-10.86c0-1.11.22-2.04.63-2.78.44-.74,1.07-1.3,1.82-1.67s1.56-.56,2.41-.56c.63,0,1.15.04,1.59.11.44.04.85.15,1.11.26l.74-6.04c-.22-.15-.56-.26-.96-.33-.33-.07-.78-.11-1.33-.11v.02Z\",\n];\n\n// =============================================================================\n// Component Variants\n// =============================================================================\n\nexport const SF_SIGNALFLARE_AI_LOGO_VARIANTS = {\n variant: {\n glyph: {\n description: \"Map pin icon only (logomark)\",\n },\n full: {\n description: \"Full logo with icon, wordmark, and decorative element\",\n },\n },\n color: {\n brand: {\n description: \"Brand colors (blue primary, teal secondary)\",\n },\n mono: {\n description: \"Monochrome gray\",\n },\n black: {\n description: \"Solid black logo\",\n },\n white: {\n description: \"Solid white logo (for dark backgrounds)\",\n },\n },\n} as const;\n\nexport const SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS = {\n variant: \"full\",\n color: \"brand\",\n} as const;\n\nexport type SignalFlareAILogoVariant =\n keyof typeof SF_SIGNALFLARE_AI_LOGO_VARIANTS.variant;\nexport type SignalFlareAILogoColor =\n keyof typeof SF_SIGNALFLARE_AI_LOGO_VARIANTS.color;\n\nexport interface SignalFlareAILogoProps extends React.SVGAttributes<SVGSVGElement> {\n /**\n * Logo variant\n * - `glyph`: Map pin icon only\n * - `full`: Full logo with wordmark and decorative element\n * @default \"full\"\n */\n variant?: SignalFlareAILogoVariant;\n /**\n * Color scheme\n * - `brand`: Brand colors (blue #4188ff, teal #00a7a8)\n * - `mono`: Monochrome gray (#766c69)\n * - `black`: Solid black\n * - `white`: Solid white (for dark backgrounds)\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * SignalFlare AI logo component.\n *\n * @example Glyph only (map pin icon)\n * ```tsx\n * <SignalFlareAILogo variant=\"glyph\" className=\"w-8\" />\n * ```\n *\n * @example Full logo with wordmark\n * ```tsx\n * <SignalFlareAILogo variant=\"full\" className=\"w-48\" />\n * ```\n *\n * @example White logo for dark backgrounds\n * ```tsx\n * <SignalFlareAILogo color=\"white\" className=\"w-32\" />\n * ```\n *\n * @example Monochrome logo\n * ```tsx\n * <SignalFlareAILogo color=\"mono\" className=\"w-32\" />\n * ```\n */\nexport const SignalFlareAILogo = forwardRef<\n SVGSVGElement,\n SignalFlareAILogoProps\n>(\n (\n {\n variant = SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS.variant,\n color = SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS.color,\n className,\n ...props\n },\n ref\n ) => {\n const isGlyph = variant === \"glyph\";\n\n // Determine fill colors based on color prop\n const getFillColors = () => {\n switch (color) {\n case \"brand\":\n return { primary: SIGNALFLARE_BLUE, secondary: SIGNALFLARE_TEAL };\n case \"mono\":\n return { primary: SIGNALFLARE_GRAY, secondary: SIGNALFLARE_GRAY };\n case \"black\":\n return { primary: \"currentColor\", secondary: \"currentColor\" };\n case \"white\":\n return { primary: \"currentColor\", secondary: \"currentColor\" };\n }\n };\n\n const { primary, secondary } = getFillColors();\n\n if (isGlyph) {\n return (\n <svg\n ref={ref}\n viewBox={SIGNALFLARE_GLYPH_VIEWBOX}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-label=\"SignalFlare AI logo\"\n className={cn(\n color === \"white\" && \"text-white\",\n color === \"black\" && \"text-black\",\n className\n )}\n {...props}\n >\n <path d={SIGNALFLARE_GLYPH_PATH} fill={primary} />\n </svg>\n );\n }\n\n // Full logo with wordmark\n return (\n <svg\n ref={ref}\n viewBox={SIGNALFLARE_FULL_LOGO_VIEWBOX}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-label=\"SignalFlare AI logo\"\n className={cn(\n color === \"white\" && \"text-white\",\n color === \"black\" && \"text-black\",\n className\n )}\n {...props}\n >\n {/* Blue paths (primary) - \"SignalFlare\" wordmark */}\n {SIGNALFLARE_BLUE_PATHS.map((d, i) => (\n <path key={`blue-${i}`} d={d} fill={primary} />\n ))}\n {/* Teal paths (secondary) - \".ai\" and decorative star */}\n {SIGNALFLARE_TEAL_PATHS.map((d, i) => (\n <path key={`teal-${i}`} d={d} fill={secondary} />\n ))}\n </svg>\n );\n }\n);\n\nSignalFlareAILogo.displayName = \"SignalFlareAILogo\";\n\n// =============================================================================\n// PoweredBySignalFlareAI Component\n// =============================================================================\n\nexport interface PoweredBySignalFlareAIProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Color scheme for the logo and text\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * \"Powered by SignalFlare AI\" badge component.\n *\n * Renders a link to signalflare.ai with the logo glyph and \"Powered by SignalFlare AI\" text.\n *\n * @example Basic usage\n * ```tsx\n * <PoweredBySignalFlareAI />\n * ```\n *\n * @example White variant for dark backgrounds\n * ```tsx\n * <PoweredBySignalFlareAI color=\"white\" />\n * ```\n *\n * @example Custom link\n * ```tsx\n * <PoweredBySignalFlareAI href=\"https://signalflare.ai/docs\" />\n * ```\n */\nexport const PoweredBySignalFlareAI = forwardRef<\n HTMLAnchorElement,\n PoweredBySignalFlareAIProps\n>(\n (\n { color = \"brand\", href = \"https://signalflare.ai\", className, ...props },\n ref\n ) => {\n return (\n <a\n ref={ref}\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={cn(\n // Base badge styles\n \"inline-flex items-center gap-2 rounded-lg py-2 pl-2.5 pr-3 text-sm font-medium\",\n \"ring-1 ring-inset transition-all hover:shadow-sm\",\n // Color variants using semantic tokens\n (color === \"brand\" || color === \"mono\") &&\n \"bg-sf-base text-sf-default ring-sf-line\",\n color === \"black\" && \"bg-white text-black ring-black/20\",\n color === \"white\" && \"bg-black text-white ring-white/20\",\n className\n )}\n {...props}\n >\n <SignalFlareAILogo\n variant=\"glyph\"\n color={color}\n className=\"h-4 w-auto\"\n />\n <span>\n Powered by <span className=\"font-semibold\">SignalFlare AI</span>\n </span>\n </a>\n );\n }\n);\n\nPoweredBySignalFlareAI.displayName = \"PoweredBySignalFlareAI\";\n\n// =============================================================================\n// PoweredByNavigator Component\n// =============================================================================\n\nexport interface PoweredByNavigatorProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Color scheme for the logo and text\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * \"Powered by Navigator\" badge component.\n *\n * Renders a link to signalflare.ai with the logo glyph and \"Powered by Navigator\" text.\n * Navigator is SignalFlare AI's AI product.\n *\n * @example Basic usage\n * ```tsx\n * <PoweredByNavigator />\n * ```\n *\n * @example White variant for dark backgrounds\n * ```tsx\n * <PoweredByNavigator color=\"white\" />\n * ```\n *\n * @example Custom link\n * ```tsx\n * <PoweredByNavigator href=\"https://signalflare.ai/navigator\" />\n * ```\n */\nexport const PoweredByNavigator = forwardRef<\n HTMLAnchorElement,\n PoweredByNavigatorProps\n>(\n (\n { color = \"brand\", href = \"https://signalflare.ai\", className, ...props },\n ref\n ) => {\n return (\n <a\n ref={ref}\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={cn(\n // Base badge styles\n \"inline-flex items-center gap-2 rounded-lg py-2 pl-2.5 pr-3 text-sm font-medium\",\n \"ring-1 ring-inset transition-all hover:shadow-sm\",\n // Color variants using semantic tokens\n (color === \"brand\" || color === \"mono\") &&\n \"bg-sf-base text-sf-default ring-sf-line\",\n color === \"black\" && \"bg-white text-black ring-black/20\",\n color === \"white\" && \"bg-black text-white ring-white/20\",\n className\n )}\n {...props}\n >\n <SignalFlareAILogo\n variant=\"glyph\"\n color={color}\n className=\"h-4 w-auto\"\n />\n <span>\n Powered by <span className=\"font-semibold\">Navigator</span>\n </span>\n </a>\n );\n }\n);\n\nPoweredByNavigator.displayName = \"PoweredByNavigator\";\n\n// =============================================================================\n// SVG Generation Helper\n// =============================================================================\n\nexport type SignalFlareAILogoSvgVariant = \"glyph\" | \"full\";\nexport type SignalFlareAILogoSvgColor = \"brand\" | \"mono\" | \"black\" | \"white\";\n\nexport interface GenerateSignalFlareAILogoSvgOptions {\n /**\n * Logo variant\n * - `glyph`: Map pin icon only\n * - `full`: Full logo with wordmark and decorative element\n * @default \"full\"\n */\n variant?: SignalFlareAILogoSvgVariant;\n /**\n * Color scheme\n * - `brand`: Brand colors (blue #4188ff, teal #00a7a8)\n * - `mono`: Monochrome gray (#766c69)\n * - `black`: Solid black\n * - `white`: Solid white\n * @default \"brand\"\n */\n color?: SignalFlareAILogoSvgColor;\n}\n\n/**\n * Generates SVG markup string for the SignalFlare AI logo.\n *\n * Useful for copying to clipboard or embedding in non-React contexts.\n *\n * @example Copy glyph SVG to clipboard\n * ```tsx\n * const svg = generateSignalFlareAILogoSvg({ variant: \"glyph\" });\n * await navigator.clipboard.writeText(svg);\n * ```\n *\n * @example Generate full logo in black\n * ```tsx\n * const svg = generateSignalFlareAILogoSvg({ variant: \"full\", color: \"black\" });\n * ```\n */\nexport function generateSignalFlareAILogoSvg(\n options: GenerateSignalFlareAILogoSvgOptions = {}\n): string {\n const { variant = \"full\", color = \"brand\" } = options;\n\n const isGlyph = variant === \"glyph\";\n\n // Determine fill colors\n const getFillColor = () => {\n switch (color) {\n case \"brand\":\n return { primary: SIGNALFLARE_BLUE, secondary: SIGNALFLARE_TEAL };\n case \"mono\":\n return { primary: SIGNALFLARE_GRAY, secondary: SIGNALFLARE_GRAY };\n case \"black\":\n return { primary: \"black\", secondary: \"black\" };\n case \"white\":\n return { primary: \"white\", secondary: \"white\" };\n }\n };\n\n const { primary, secondary } = getFillColor();\n\n if (isGlyph) {\n return `<svg viewBox=\"${SIGNALFLARE_GLYPH_VIEWBOX}\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SignalFlare AI logo\">\n <path d=\"${SIGNALFLARE_GLYPH_PATH}\" fill=\"${primary}\"/>\n</svg>`;\n }\n\n // Full logo with wordmark\n const bluePaths = SIGNALFLARE_BLUE_PATHS.map(\n (d) => ` <path d=\"${d}\" fill=\"${primary}\"/>`\n ).join(\"\\n\");\n const tealPaths = SIGNALFLARE_TEAL_PATHS.map(\n (d) => ` <path d=\"${d}\" fill=\"${secondary}\"/>`\n ).join(\"\\n\");\n\n return `<svg viewBox=\"${SIGNALFLARE_FULL_LOGO_VIEWBOX}\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SignalFlare AI logo\">\n${bluePaths}\n${tealPaths}\n</svg>`;\n}\n\n// =============================================================================\n// Legacy export alias (scaffolded name)\n// =============================================================================\n\n/** @deprecated Use SignalFlareAILogo instead */\nexport const SignalflareAiLogo = SignalFlareAILogo;\n/** @deprecated Use SignalFlareAILogoProps instead */\nexport type SignalflareAiLogoProps = SignalFlareAILogoProps;\n"],"mappings":"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"}
1
+ {"version":3,"file":"signalflare-ai-logo-Bipogceq.js","names":[],"sources":["../src/components/signalflare-ai-logo/signalflare-ai-logo.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { cn } from \"../../utils/cn\";\n\n// =============================================================================\n// Brand Colors (internal)\n// =============================================================================\n\nconst SIGNALFLARE_BLUE = \"#4188ff\";\nconst SIGNALFLARE_TEAL = \"#00a7a8\";\nconst SIGNALFLARE_GRAY = \"#766c69\";\n\n// =============================================================================\n// SVG Path Data (internal)\n// =============================================================================\n\n// Glyph (map pin icon) - from favicon.svg\nconst SIGNALFLARE_GLYPH_PATH =\n \"M 383.980469 199.453125 C 316.03125 199.453125 260.953125 254.539062 260.953125 322.484375 C 260.953125 345.546875 267.296875 367.117188 278.339844 385.566406 L 383.976562 568.550781 L 489.699219 385.4375 C 500.6875 367.019531 507.007812 345.492188 507.007812 322.488281 C 507.007812 254.535156 451.929688 199.453125 383.980469 199.453125 Z M 383.980469 363.65625 C 361.246094 363.65625 342.8125 345.222656 342.816406 322.484375 C 342.816406 299.75 361.25 281.316406 383.980469 281.316406 C 406.722656 281.316406 425.15625 299.75 425.15625 322.484375 C 425.15625 345.222656 406.722656 363.65625 383.980469 363.65625 Z\";\n\nconst SIGNALFLARE_GLYPH_VIEWBOX = \"0 0 768 768\";\n\n// Full logo paths - from logo.svg (cls-1 = blue, cls-2 = teal)\nconst SIGNALFLARE_FULL_LOGO_VIEWBOX = \"0 0 286.96 55.03\";\n\n// Teal paths (cls-2) - dot on \"i\", \"ai\" text, decorative star element\nconst SIGNALFLARE_TEAL_PATHS = [\n // Dot on \"i\" in \".ai\"\n \"M285.05,10.58c-1-.7-2.22-1-3.45-.78-1.22.22-2.3.89-3.04,1.89-.74,1-1.04,2.26-.85,3.48s.85,2.3,1.85,3.04c1,.7,2.22,1,3.45.78,1.22-.22,2.3-.89,3.04-1.89s1.04-2.26.85-3.48c-.22-1.22-.89-2.33-1.85-3.04Z\",\n // \"a\" in \".ai\"\n \"M273.11,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.04-.07-1.56-.63-1.56-1.74h.02ZM265.51,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.07.67-.04,1.22-.26,1.67h0Z\",\n // Period in \".ai\"\n \"M244.91,38.31c-1.33,0-2.37.33-3.15,1.04-.78.7-1.19,1.67-1.19,2.89s.37,2.15,1.19,2.85c.78.7,1.82,1.04,3.15,1.04s2.41-.33,3.15-1.04c.78-.7,1.19-1.63,1.19-2.85s-.37-2.19-1.19-2.89c-.74-.67-1.82-1.04-3.15-1.04Z\",\n // \"i\" stem in \".ai\"\n \"M286.11,24.16h-7.34v21.56h7.34v-21.56Z\",\n // Decorative star/compass element\n \"M184.7,18.26v-.02c-5.88-1.14-11.76-2.28-17.64-3.43,0-.05,0-.1-.02-.15,9.65-3.57,19.3-7.15,29.02-10.75-.23-.12-.35-.05-.47,0-3.14.95-6.28,1.9-9.43,2.86-7.19,2.18-14.39,4.35-21.58,6.54-.49.15-.62.15-.52-.44.51-3,.98-6,1.45-9.01.2-1.25.39-2.51.58-3.76-.04,0-.07-.02-.11-.03,0-.02,0-.04,0-.06v.06h-.03c-1.09,3.57-2.19,7.14-3.33,10.87-.37-1.35-.68-2.52-1-3.69-.05,0-.1.01-.15.02v4.36s-.1.03-.15.04c-1.76-2.54-3.53-5.09-5.29-7.63-.03.03-.06.06-.09.09,1.61,3.19,3.22,6.39,4.88,9.68-6.91-.65-13.65-1.29-20.4-1.93v.07h-.12l.12.02v.02c5.89,1.14,11.79,2.29,17.69,3.43v.13c-9.77,3.62-19.55,7.25-29.38,10.89.17.12.27.04.37.01,3-.91,6-1.81,8.99-2.72,7.48-2.26,14.97-4.53,22.45-6.79.23-.07.67-.44.55.29-.59,3.55-1.15,7.11-1.72,10.67-.12.74-.22,1.48-.33,2.21.03,0,.06.01.1.02v.08l.02-.08h.03c1.09-3.56,2.18-7.11,3.32-10.84.37,1.35.68,2.52,1,3.69l.14-.02v-4.34c.05-.02.11-.03.16-.05,1.76,2.54,3.52,5.07,5.29,7.61.03-.02.07-.04.1-.07-1.61-3.2-3.22-6.39-4.88-9.68,6.9.65,13.65,1.29,20.4,1.93v-.07h.13l-.13-.02h-.03Z\",\n];\n\n// Blue paths (cls-1) - \"Signal\", \"Fl\", \"are\" text\nconst SIGNALFLARE_BLUE_PATHS = [\n // Dot on first \"i\" in \"Signal\"\n \"M33.33,14.64c-1.48,0-2.59.3-3.26.85s-1,1.44-1,2.67.33,2.11,1,2.67,1.74.85,3.26.85,2.56-.26,3.22-.82c.7-.59,1.04-1.48,1.04-2.67s-.33-2.11-1.04-2.67c-.7-.59-1.78-.89-3.22-.89h0Z\",\n // \"a\" in \"Signal\" (second a)\n \"M112.39,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.04-.07-1.56-.63-1.56-1.74h.02ZM104.84,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.04.67-.07,1.22-.26,1.67h0Z\",\n // \"n\" in \"Signal\"\n \"M84.38,24.6c-1.07-.59-2.37-.85-3.89-.85-1.37,0-2.63.26-3.74.82-1.07.52-2,1.3-2.78,2.33-.33.48-.59,1-.85,1.59l-.22-4.33h-6.56v21.6h7.34v-11.45c0-1.22.19-2.19.52-2.89s.82-1.22,1.41-1.56c.59-.33,1.26-.52,1.93-.52.89,0,1.63.3,2.19.85.59.59.85,1.59.85,3.11v12.45h7.34v-14.37c0-1.7-.33-3.11-.96-4.22-.56-1.15-1.44-1.96-2.56-2.56h-.02Z\",\n // \"S\" in \"Signal\"\n \"M10.84,22.93c.67-.22,1.52-.33,2.59-.33,1.82,0,3.41.33,4.82,1,1.44.63,2.78,1.59,4,2.89l3.63-4.82c-1.48-1.59-3.26-2.78-5.3-3.59-2-.85-4.33-1.26-7-1.26s-4.78.41-6.59,1.22c-1.85.82-3.26,1.93-4.22,3.33-.96,1.37-1.48,2.96-1.48,4.74,0,1.59.37,2.89,1.07,3.96.7,1.04,1.7,1.89,2.93,2.52,1.26.59,2.7,1.07,4.3,1.48l5.26,1.15c1.22.3,2.04.63,2.45,1.07.44.41.63.93.63,1.52s-.15,1-.48,1.41-.82.7-1.52.93c-.67.19-1.48.3-2.52.3-1.3,0-2.56-.19-3.85-.56-1.22-.37-2.37-.89-3.45-1.52-1.04-.67-1.93-1.41-2.63-2.26l-3.48,4.96c.96,1,2.11,1.89,3.48,2.67,1.37.78,2.93,1.37,4.67,1.82,1.74.41,3.52.59,5.45.59,2.33,0,4.41-.33,6.22-1.04,1.82-.7,3.22-1.78,4.26-3.15,1.04-1.41,1.56-3.11,1.56-5.15s-.67-3.78-2-5.04c-1.33-1.26-3.41-2.22-6.26-2.89l-4.78-1.07c-1.26-.3-2.19-.63-2.78-1.04-.56-.44-.82-.96-.82-1.56,0-.52.15-.96.44-1.37s.78-.7,1.41-.93v.02Z\",\n // \"i\" stem in \"Signal\"\n \"M36.96,24.16h-7.3v21.56h7.34v-21.56h-.04Z\",\n // \"g\" in \"Signal\"\n \"M62.64,23.19c.19,0,.33,0,.52.04.19,0,.33.04.52.07l-.59-4.93c-.11-.04-.26-.04-.37-.04h-.3c-1.37,0-2.52.33-3.45,1.04-.89.7-1.56,1.59-2,2.67-.3.7-.44,1.44-.56,2.22-1.33-.37-2.82-.52-4.52-.52-2.22,0-4.11.3-5.67.85-1.56.59-2.74,1.41-3.59,2.52-.82,1.07-1.22,2.37-1.22,3.96,0,2.33.89,4.11,2.63,5.41.26.19.56.37.85.52-.67.22-1.26.56-1.78.96-1.07.85-1.63,2-1.63,3.37s.44,2.48,1.3,3.26c.48.44,1.07.82,1.85,1.07-1.15.19-2,.52-2.63,1-.96.74-1.48,1.7-1.48,2.93,0,1.67.85,3,2.59,3.96s4.56,1.48,8.45,1.48c2.41,0,4.48-.3,6.26-.93,1.78-.59,3.15-1.44,4.15-2.63.96-1.19,1.48-2.67,1.48-4.45,0-1.96-.67-3.45-2.04-4.48-1.33-1.07-3.22-1.59-5.74-1.59h-6.85c-.82,0-1.41-.11-1.82-.33-.41-.26-.59-.63-.59-1.11,0-.44.22-.85.7-1.15.19-.15.44-.22.78-.33,1.19.26,2.52.37,4,.37,2.19,0,4.04-.26,5.59-.82,1.56-.59,2.74-1.41,3.52-2.52.85-1.07,1.26-2.41,1.26-3.96s-.41-2.89-1.26-3.96c-.52-.67-1.15-1.26-1.96-1.74.15-.48.37-.89.74-1.26.67-.67,1.59-.96,2.85-.96h0ZM47.86,46.68h7.71c.85,0,1.41.11,1.74.33.33.26.48.59.48,1.04s-.22.82-.7,1.11c-.44.33-1.15.59-2.07.78-.89.19-2.04.3-3.41.3-1.74,0-3.11-.19-4.11-.56-.96-.33-1.48-.85-1.48-1.52,0-.44.15-.78.48-1.07.37-.26.82-.41,1.37-.41h0ZM54.15,33.34c-.59.56-1.37.82-2.3.82s-1.74-.26-2.33-.82-.85-1.3-.85-2.3.3-1.78.85-2.33c.59-.56,1.37-.82,2.33-.82s1.67.26,2.3.82c.59.56.93,1.33.93,2.33-.04,1-.33,1.78-.93,2.3Z\",\n // \"F\" in \"Flare\"\n \"M132.7,45.76h7.41v-10.97h11.74v-5.74h-11.74v-6.04h14.71v-5.74h-22.12v28.49h0Z\",\n // \"l\" (first) in \"Flare\"\n \"M127.4,41.05c-.74,0-1.3-.19-1.59-.59-.33-.41-.48-1.07-.48-2.04V15.01h-7.34v24.34c0,2.41.52,4.15,1.56,5.22s2.7,1.59,5,1.59c.82,0,1.63-.11,2.45-.3.85-.19,1.52-.44,2.04-.78l.48-4.41c-.41.11-.74.19-1.04.26-.3.07-.67.11-1.07.11h0Z\",\n // \"l\" (second) in \"Flare\"\n \"M167.89,41.05c-.74,0-1.3-.19-1.59-.59-.33-.41-.48-1.07-.48-2.04V15.01h-7.34v24.34c0,2.41.52,4.15,1.56,5.22s2.7,1.59,5,1.59c.82,0,1.63-.11,2.45-.3.85-.19,1.52-.44,2.04-.78l.48-4.41c-.41.11-.74.19-1.04.26-.26.07-.63.11-1.07.11h0Z\",\n // \"e\" in \"Flare\"\n \"M232.24,25.08c-1.59-.89-3.52-1.33-5.78-1.33s-4.19.44-5.89,1.33-3,2.19-3.96,3.85c-.96,1.67-1.41,3.67-1.41,6.04s.48,4.37,1.41,6.04c.96,1.67,2.3,2.96,4,3.85,1.74.89,3.82,1.33,6.22,1.33,1.48,0,2.93-.22,4.26-.63,1.37-.44,2.56-1.07,3.52-1.89,1-.85,1.7-1.93,2.11-3.15l-5.85-1.93c-.33.78-.82,1.37-1.48,1.82-.63.44-1.48.63-2.59.63-.96,0-1.82-.19-2.52-.56-.7-.41-1.22-1.04-1.59-1.89-.19-.48-.37-1.07-.44-1.74h14.71c.04-.33.11-.78.11-1.3.04-.52.04-1.04.04-1.56,0-2-.41-3.74-1.26-5.26-.74-1.59-1.96-2.82-3.59-3.67l-.02.02ZM224.13,29.53c.67-.44,1.44-.63,2.37-.63,1.3,0,2.26.44,2.85,1.37.44.67.74,1.56.85,2.63h-7.85c.07-.48.19-.93.3-1.33.33-.93.82-1.63,1.48-2.04Z\",\n // \"a\" in \"Flare\"\n \"M192.38,39.83v-7.89c0-1.78-.41-3.26-1.22-4.48-.78-1.22-1.93-2.15-3.41-2.78-1.48-.63-3.26-.96-5.33-.96-3.15,0-5.56.63-7.3,1.85s-2.78,2.89-3.19,4.96l6.22,1.48c.26-1.22.7-2.04,1.37-2.52.7-.48,1.52-.74,2.45-.74s1.7.3,2.26.93c.59.59.85,1.37.85,2.37v.63l-7.45,1.56c-2,.41-3.48,1.11-4.45,2.15-.93,1-1.37,2.3-1.37,3.85,0,1.3.3,2.37.85,3.26.59.85,1.44,1.52,2.56,2,1.07.44,2.37.7,3.85.7,1.26,0,2.48-.19,3.63-.59,1.19-.41,2.11-1.04,2.85-1.85.22-.26.41-.52.56-.82.11.37.26.74.48,1.07.48.7,1.15,1.26,2.04,1.63.85.33,1.85.52,2.96.52,1.22,0,2.3-.19,3.15-.59l.44-4.19c-.33.11-.74.19-1.26.19-1.07-.07-1.56-.63-1.56-1.74h.02ZM184.78,39.38c-.19.44-.48.85-.82,1.19-.33.3-.74.52-1.22.63-.44.15-.89.22-1.37.22-.63,0-1.19-.15-1.63-.48-.44-.33-.7-.78-.7-1.41,0-.67.19-1.15.59-1.48.44-.33,1.07-.59,1.93-.78l3.48-.74v1.19c.04.67-.07,1.22-.26,1.67h0Z\",\n // \"r\" in \"Flare\"\n \"M211.35,23.75c-1.67,0-3.04.44-4.15,1.33-1.07.89-1.89,2.15-2.41,3.74l-.3-4.67h-6.48v21.56h7.34v-10.86c0-1.11.22-2.04.63-2.78.44-.74,1.07-1.3,1.82-1.67s1.56-.56,2.41-.56c.63,0,1.15.04,1.59.11.44.04.85.15,1.11.26l.74-6.04c-.22-.15-.56-.26-.96-.33-.33-.07-.78-.11-1.33-.11v.02Z\",\n];\n\n// =============================================================================\n// Component Variants\n// =============================================================================\n\nexport const SF_SIGNALFLARE_AI_LOGO_VARIANTS = {\n variant: {\n glyph: {\n description: \"Map pin icon only (logomark)\",\n },\n full: {\n description: \"Full logo with icon, wordmark, and decorative element\",\n },\n },\n color: {\n brand: {\n description: \"Brand colors (blue primary, teal secondary)\",\n },\n mono: {\n description: \"Monochrome gray\",\n },\n black: {\n description: \"Solid black logo\",\n },\n white: {\n description: \"Solid white logo (for dark backgrounds)\",\n },\n },\n} as const;\n\nexport const SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS = {\n variant: \"full\",\n color: \"brand\",\n} as const;\n\nexport type SignalFlareAILogoVariant =\n keyof typeof SF_SIGNALFLARE_AI_LOGO_VARIANTS.variant;\nexport type SignalFlareAILogoColor =\n keyof typeof SF_SIGNALFLARE_AI_LOGO_VARIANTS.color;\n\nexport interface SignalFlareAILogoProps extends React.SVGAttributes<SVGSVGElement> {\n /**\n * Logo variant\n * - `glyph`: Map pin icon only\n * - `full`: Full logo with wordmark and decorative element\n * @default \"full\"\n */\n variant?: SignalFlareAILogoVariant;\n /**\n * Color scheme\n * - `brand`: Brand colors (blue #4188ff, teal #00a7a8)\n * - `mono`: Monochrome gray (#766c69)\n * - `black`: Solid black\n * - `white`: Solid white (for dark backgrounds)\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * SignalFlare AI logo component.\n *\n * @example Glyph only (map pin icon)\n * ```tsx\n * <SignalFlareAILogo variant=\"glyph\" className=\"w-8\" />\n * ```\n *\n * @example Full logo with wordmark\n * ```tsx\n * <SignalFlareAILogo variant=\"full\" className=\"w-48\" />\n * ```\n *\n * @example White logo for dark backgrounds\n * ```tsx\n * <SignalFlareAILogo color=\"white\" className=\"w-32\" />\n * ```\n *\n * @example Monochrome logo\n * ```tsx\n * <SignalFlareAILogo color=\"mono\" className=\"w-32\" />\n * ```\n */\nexport const SignalFlareAILogo = forwardRef<\n SVGSVGElement,\n SignalFlareAILogoProps\n>(\n (\n {\n variant = SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS.variant,\n color = SF_SIGNALFLARE_AI_LOGO_DEFAULT_VARIANTS.color,\n className,\n ...props\n },\n ref\n ) => {\n const isGlyph = variant === \"glyph\";\n\n // Determine fill colors based on color prop\n const getFillColors = () => {\n switch (color) {\n case \"brand\":\n return { primary: SIGNALFLARE_BLUE, secondary: SIGNALFLARE_TEAL };\n case \"mono\":\n return { primary: SIGNALFLARE_GRAY, secondary: SIGNALFLARE_GRAY };\n case \"black\":\n return { primary: \"currentColor\", secondary: \"currentColor\" };\n case \"white\":\n return { primary: \"currentColor\", secondary: \"currentColor\" };\n }\n };\n\n const { primary, secondary } = getFillColors();\n\n if (isGlyph) {\n return (\n <svg\n ref={ref}\n viewBox={SIGNALFLARE_GLYPH_VIEWBOX}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-label=\"SignalFlare AI logo\"\n className={cn(\n color === \"white\" && \"text-white\",\n color === \"black\" && \"text-black\",\n className\n )}\n {...props}\n >\n <path d={SIGNALFLARE_GLYPH_PATH} fill={primary} />\n </svg>\n );\n }\n\n // Full logo with wordmark\n return (\n <svg\n ref={ref}\n viewBox={SIGNALFLARE_FULL_LOGO_VIEWBOX}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-label=\"SignalFlare AI logo\"\n className={cn(\n color === \"white\" && \"text-white\",\n color === \"black\" && \"text-black\",\n className\n )}\n {...props}\n >\n {/* Blue paths (primary) - \"SignalFlare\" wordmark */}\n {SIGNALFLARE_BLUE_PATHS.map((d, i) => (\n <path key={`blue-${i}`} d={d} fill={primary} />\n ))}\n {/* Teal paths (secondary) - \".ai\" and decorative star */}\n {SIGNALFLARE_TEAL_PATHS.map((d, i) => (\n <path key={`teal-${i}`} d={d} fill={secondary} />\n ))}\n </svg>\n );\n }\n);\n\nSignalFlareAILogo.displayName = \"SignalFlareAILogo\";\n\n// =============================================================================\n// PoweredBySignalFlareAI Component\n// =============================================================================\n\nexport interface PoweredBySignalFlareAIProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Color scheme for the logo and text\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * \"Powered by SignalFlare AI\" badge component.\n *\n * Renders a link to signalflare.ai with the logo glyph and \"Powered by SignalFlare AI\" text.\n *\n * @example Basic usage\n * ```tsx\n * <PoweredBySignalFlareAI />\n * ```\n *\n * @example White variant for dark backgrounds\n * ```tsx\n * <PoweredBySignalFlareAI color=\"white\" />\n * ```\n *\n * @example Custom link\n * ```tsx\n * <PoweredBySignalFlareAI href=\"https://signalflare.ai/docs\" />\n * ```\n */\nexport const PoweredBySignalFlareAI = forwardRef<\n HTMLAnchorElement,\n PoweredBySignalFlareAIProps\n>(\n (\n { color = \"brand\", href = \"https://signalflare.ai\", className, ...props },\n ref\n ) => {\n return (\n <a\n ref={ref}\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={cn(\n // Base badge styles\n \"inline-flex items-center gap-2 rounded-lg py-2 pl-2.5 pr-3 text-sm font-medium\",\n \"ring-1 ring-inset transition-all hover:shadow-sm\",\n // Color variants using semantic tokens\n (color === \"brand\" || color === \"mono\") &&\n \"bg-sf-base text-sf-default ring-sf-line\",\n color === \"black\" && \"bg-white text-black ring-black/20\",\n color === \"white\" && \"bg-black text-white ring-white/20\",\n className\n )}\n {...props}\n >\n <SignalFlareAILogo\n variant=\"glyph\"\n color={color}\n className=\"h-4 w-auto\"\n />\n <span>\n Powered by <span className=\"font-semibold\">SignalFlare AI</span>\n </span>\n </a>\n );\n }\n);\n\nPoweredBySignalFlareAI.displayName = \"PoweredBySignalFlareAI\";\n\n// =============================================================================\n// PoweredByNavigator Component\n// =============================================================================\n\nexport interface PoweredByNavigatorProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Color scheme for the logo and text\n * @default \"brand\"\n */\n color?: SignalFlareAILogoColor;\n}\n\n/**\n * \"Powered by Navigator\" badge component.\n *\n * Renders a link to signalflare.ai with the logo glyph and \"Powered by Navigator\" text.\n * Navigator is SignalFlare AI's AI product.\n *\n * @example Basic usage\n * ```tsx\n * <PoweredByNavigator />\n * ```\n *\n * @example White variant for dark backgrounds\n * ```tsx\n * <PoweredByNavigator color=\"white\" />\n * ```\n *\n * @example Custom link\n * ```tsx\n * <PoweredByNavigator href=\"https://signalflare.ai/navigator\" />\n * ```\n */\nexport const PoweredByNavigator = forwardRef<\n HTMLAnchorElement,\n PoweredByNavigatorProps\n>(\n (\n { color = \"brand\", href = \"https://signalflare.ai\", className, ...props },\n ref\n ) => {\n return (\n <a\n ref={ref}\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={cn(\n // Base badge styles\n \"inline-flex items-center gap-2 rounded-lg py-2 pl-2.5 pr-3 text-sm font-medium\",\n \"ring-1 ring-inset transition-all hover:shadow-sm\",\n // Color variants using semantic tokens\n (color === \"brand\" || color === \"mono\") &&\n \"bg-sf-base text-sf-default ring-sf-line\",\n color === \"black\" && \"bg-white text-black ring-black/20\",\n color === \"white\" && \"bg-black text-white ring-white/20\",\n className\n )}\n {...props}\n >\n <SignalFlareAILogo\n variant=\"glyph\"\n color={color}\n className=\"h-4 w-auto\"\n />\n <span>\n Powered by <span className=\"font-semibold\">Navigator</span>\n </span>\n </a>\n );\n }\n);\n\nPoweredByNavigator.displayName = \"PoweredByNavigator\";\n\n// =============================================================================\n// SVG Generation Helper\n// =============================================================================\n\nexport type SignalFlareAILogoSvgVariant = \"glyph\" | \"full\";\nexport type SignalFlareAILogoSvgColor = \"brand\" | \"mono\" | \"black\" | \"white\";\n\nexport interface GenerateSignalFlareAILogoSvgOptions {\n /**\n * Logo variant\n * - `glyph`: Map pin icon only\n * - `full`: Full logo with wordmark and decorative element\n * @default \"full\"\n */\n variant?: SignalFlareAILogoSvgVariant;\n /**\n * Color scheme\n * - `brand`: Brand colors (blue #4188ff, teal #00a7a8)\n * - `mono`: Monochrome gray (#766c69)\n * - `black`: Solid black\n * - `white`: Solid white\n * @default \"brand\"\n */\n color?: SignalFlareAILogoSvgColor;\n}\n\n/**\n * Generates SVG markup string for the SignalFlare AI logo.\n *\n * Useful for copying to clipboard or embedding in non-React contexts.\n *\n * @example Copy glyph SVG to clipboard\n * ```tsx\n * const svg = generateSignalFlareAILogoSvg({ variant: \"glyph\" });\n * await navigator.clipboard.writeText(svg);\n * ```\n *\n * @example Generate full logo in black\n * ```tsx\n * const svg = generateSignalFlareAILogoSvg({ variant: \"full\", color: \"black\" });\n * ```\n */\nexport function generateSignalFlareAILogoSvg(\n options: GenerateSignalFlareAILogoSvgOptions = {}\n): string {\n const { variant = \"full\", color = \"brand\" } = options;\n\n const isGlyph = variant === \"glyph\";\n\n // Determine fill colors\n const getFillColor = () => {\n switch (color) {\n case \"brand\":\n return { primary: SIGNALFLARE_BLUE, secondary: SIGNALFLARE_TEAL };\n case \"mono\":\n return { primary: SIGNALFLARE_GRAY, secondary: SIGNALFLARE_GRAY };\n case \"black\":\n return { primary: \"black\", secondary: \"black\" };\n case \"white\":\n return { primary: \"white\", secondary: \"white\" };\n }\n };\n\n const { primary, secondary } = getFillColor();\n\n if (isGlyph) {\n return `<svg viewBox=\"${SIGNALFLARE_GLYPH_VIEWBOX}\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SignalFlare AI logo\">\n <path d=\"${SIGNALFLARE_GLYPH_PATH}\" fill=\"${primary}\"/>\n</svg>`;\n }\n\n // Full logo with wordmark\n const bluePaths = SIGNALFLARE_BLUE_PATHS.map(\n (d) => ` <path d=\"${d}\" fill=\"${primary}\"/>`\n ).join(\"\\n\");\n const tealPaths = SIGNALFLARE_TEAL_PATHS.map(\n (d) => ` <path d=\"${d}\" fill=\"${secondary}\"/>`\n ).join(\"\\n\");\n\n return `<svg viewBox=\"${SIGNALFLARE_FULL_LOGO_VIEWBOX}\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SignalFlare AI logo\">\n${bluePaths}\n${tealPaths}\n</svg>`;\n}\n\n// =============================================================================\n// Legacy export alias (scaffolded name)\n// =============================================================================\n\n/** @deprecated Use SignalFlareAILogo instead */\nexport const SignalflareAiLogo = SignalFlareAILogo;\n/** @deprecated Use SignalFlareAILogoProps instead */\nexport type SignalflareAiLogoProps = SignalFlareAILogoProps;\n"],"mappings":"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"}
@@ -33,4 +33,4 @@ var SkeletonLine = ({ minWidth = 30, maxWidth = 100, minDuration = 1.3, maxDurat
33
33
  //#endregion
34
34
  export { SkeletonLine as t };
35
35
 
36
- //# sourceMappingURL=skeleton-line-Do3UmGk9.js.map
36
+ //# sourceMappingURL=skeleton-line-CH1-h6e2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-line-Do3UmGk9.js","names":[],"sources":["../src/components/loader/skeleton-line.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useMemo } from \"react\";\n\nimport { cn } from \"../../utils/cn\";\n\nconst getRandomWidth = (min: number, max: number) =>\n Math.floor(Math.random() * (max - min + 1) + min);\n\nconst getRandomFloat = (min: number, max: number) =>\n (Math.random() * (max - min) + min).toFixed(2);\n\nexport const SkeletonLine = ({\n minWidth = 30,\n maxWidth = 100,\n minDuration = 1.3,\n maxDuration = 1.7,\n minDelay = 0,\n maxDelay = 0.5,\n className,\n}: {\n minWidth?: number;\n maxWidth?: number;\n minDuration?: number;\n maxDuration?: number;\n minDelay?: number;\n maxDelay?: number;\n className?: string;\n}) => {\n const { width, duration, delay } = useMemo(() => {\n return {\n width: getRandomWidth(minWidth, maxWidth),\n duration: getRandomFloat(minDuration, maxDuration),\n delay: getRandomFloat(minDelay, maxDelay),\n };\n }, [minWidth, maxWidth, minDuration, maxDuration, minDelay, maxDelay]);\n\n const lineStyle: React.CSSProperties & { [key: string]: string } = {\n \"--skeleton-width\": `${width}%`,\n \"--shimmer-duration\": `${duration}s`,\n \"--shimmer-delay\": `${delay}s`,\n };\n\n return (\n <div className={cn(\"skeleton-line\", className)} style={lineStyle}></div>\n );\n};\n"],"mappings":";;;;;AAMA,IAAM,kBAAkB,KAAa,QACnC,KAAK,MAAM,KAAK,QAAQ,IAAI,MAAM,MAAM,KAAK,IAAI;AAEnD,IAAM,kBAAkB,KAAa,SAClC,KAAK,QAAQ,IAAI,MAAM,OAAO,KAAK,QAAQ,EAAE;AAEhD,IAAa,gBAAgB,EAC3B,WAAW,IACX,WAAW,KACX,cAAc,KACd,cAAc,KACd,WAAW,GACX,WAAW,IACX,gBASI;CACJ,MAAM,EAAE,OAAO,UAAU,UAAU,cAAc;AAC/C,SAAO;GACL,OAAO,eAAe,UAAU,SAAS;GACzC,UAAU,eAAe,aAAa,YAAY;GAClD,OAAO,eAAe,UAAU,SAAS;GAC1C;IACA;EAAC;EAAU;EAAU;EAAa;EAAa;EAAU;EAAS,CAAC;CAEtE,MAAM,YAA6D;EACjE,oBAAoB,GAAG,MAAM;EAC7B,sBAAsB,GAAG,SAAS;EAClC,mBAAmB,GAAG,MAAM;EAC7B;AAED,QACE,oBAAC,OAAD;EAAK,WAAW,GAAG,iBAAiB,UAAU;EAAE,OAAO;EAAiB,CAAA"}
1
+ {"version":3,"file":"skeleton-line-CH1-h6e2.js","names":[],"sources":["../src/components/loader/skeleton-line.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useMemo } from \"react\";\n\nimport { cn } from \"../../utils/cn\";\n\nconst getRandomWidth = (min: number, max: number) =>\n Math.floor(Math.random() * (max - min + 1) + min);\n\nconst getRandomFloat = (min: number, max: number) =>\n (Math.random() * (max - min) + min).toFixed(2);\n\nexport const SkeletonLine = ({\n minWidth = 30,\n maxWidth = 100,\n minDuration = 1.3,\n maxDuration = 1.7,\n minDelay = 0,\n maxDelay = 0.5,\n className,\n}: {\n minWidth?: number;\n maxWidth?: number;\n minDuration?: number;\n maxDuration?: number;\n minDelay?: number;\n maxDelay?: number;\n className?: string;\n}) => {\n const { width, duration, delay } = useMemo(() => {\n return {\n width: getRandomWidth(minWidth, maxWidth),\n duration: getRandomFloat(minDuration, maxDuration),\n delay: getRandomFloat(minDelay, maxDelay),\n };\n }, [minWidth, maxWidth, minDuration, maxDuration, minDelay, maxDelay]);\n\n const lineStyle: React.CSSProperties & { [key: string]: string } = {\n \"--skeleton-width\": `${width}%`,\n \"--shimmer-duration\": `${duration}s`,\n \"--shimmer-delay\": `${delay}s`,\n };\n\n return (\n <div className={cn(\"skeleton-line\", className)} style={lineStyle}></div>\n );\n};\n"],"mappings":";;;;;AAMA,IAAM,kBAAkB,KAAa,QACnC,KAAK,MAAM,KAAK,QAAQ,IAAI,MAAM,MAAM,KAAK,IAAI;AAEnD,IAAM,kBAAkB,KAAa,SAClC,KAAK,QAAQ,IAAI,MAAM,OAAO,KAAK,QAAQ,EAAE;AAEhD,IAAa,gBAAgB,EAC3B,WAAW,IACX,WAAW,KACX,cAAc,KACd,cAAc,KACd,WAAW,GACX,WAAW,IACX,gBASI;CACJ,MAAM,EAAE,OAAO,UAAU,UAAU,cAAc;AAC/C,SAAO;GACL,OAAO,eAAe,UAAU,SAAS;GACzC,UAAU,eAAe,aAAa,YAAY;GAClD,OAAO,eAAe,UAAU,SAAS;GAC1C;IACA;EAAC;EAAU;EAAU;EAAa;EAAa;EAAU;EAAS,CAAC;CAEtE,MAAM,YAA6D;EACjE,oBAAoB,GAAG,MAAM;EAC7B,sBAAsB,GAAG,SAAS;EAClC,mBAAmB,GAAG,MAAM;EAC7B;AAED,QACE,oBAAC,OAAD;EAAK,WAAW,GAAG,iBAAiB,UAAU;EAAE,OAAO;EAAiB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as Chart } from "./echart-DURZEyai.js";
2
+ import { t as Chart } from "./echart-CdOUaT-r.js";
3
3
  import { useMemo } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  //#region src/components/sparkline/sparkline.tsx
@@ -105,4 +105,4 @@ function Sparkline({ echarts, data, color, height = 32, width = 80, variant = "l
105
105
  //#endregion
106
106
  export { SF_SPARKLINE_VARIANTS as n, Sparkline as r, SF_SPARKLINE_DEFAULT_VARIANTS as t };
107
107
 
108
- //# sourceMappingURL=sparkline-DdbeM4Ai.js.map
108
+ //# sourceMappingURL=sparkline-DHmgj1d0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sparkline-DdbeM4Ai.js","names":[],"sources":["../src/components/sparkline/sparkline.tsx"],"sourcesContent":["import type { EChartsOption } from \"echarts\";\nimport type * as echarts from \"echarts/core\";\nimport { useMemo } from \"react\";\n\nimport { Chart } from \"../chart/echart\";\n\n/** Tailwind variant classes for Sparkline. */\nexport const SF_SPARKLINE_VARIANTS = {\n variant: {\n line: \"\",\n area: \"\",\n bars: \"\",\n },\n} as const;\n\n/** Default variants for Sparkline. */\nexport const SF_SPARKLINE_DEFAULT_VARIANTS = {\n variant: \"line\",\n} as const;\n\n/** Props for `Sparkline` */\nexport interface SparklineProps {\n /**\n * The ECharts core instance imported by the consumer.\n * Passed in rather than imported directly so the consumer controls which\n * ECharts modules are bundled (tree-shaking).\n */\n echarts: typeof echarts;\n /**\n * Series data. Accepts either plain numbers (evenly spaced on the x-axis) or\n * `[x, y]` tuples when the x-axis has meaningful values.\n */\n data: number[] | [number, number][];\n /** Stroke/fill color. Defaults to the first categorical palette entry. */\n color?: string;\n /** Height of the sparkline in pixels. Defaults to `32`. */\n height?: number;\n /** Width of the sparkline in pixels. Defaults to `80`. */\n width?: number;\n /** Visual variant. Defaults to `\"line\"`. */\n variant?: \"line\" | \"area\" | \"bars\";\n /** When `true`, enables a tooltip on hover (disabled by default). */\n tooltip?: boolean;\n /** When `true`, switches ECharts to its built-in dark theme */\n isDarkMode?: boolean;\n /** Additional CSS classes applied to the chart container */\n className?: string;\n}\n\n/**\n * Sparkline — a tiny inline chart intended for embedding in cards, tables, or\n * row-level cells. Renders without axes, grid, or legend by default.\n *\n * @example\n * ```tsx\n * <Sparkline echarts={echarts} data={[1, 3, 2, 5, 4, 6]} />\n * ```\n */\nexport function Sparkline({\n echarts,\n data,\n color,\n height = 32,\n width = 80,\n variant = \"line\",\n tooltip,\n isDarkMode,\n className,\n}: SparklineProps) {\n const options = useMemo<EChartsOption>(() => {\n const normalised: [number, number][] =\n typeof data[0] === \"number\"\n ? (data as number[]).map((v, i) => [i, v])\n : (data as [number, number][]);\n\n const strokeColor = color ?? \"#086FFF\";\n\n const common = {\n grid: { left: 0, right: 0, top: 2, bottom: 2 },\n xAxis: { type: \"value\" as const, show: false },\n yAxis: { type: \"value\" as const, show: false, scale: true },\n tooltip: tooltip ? { trigger: \"axis\" as const } : { show: false },\n };\n\n if (variant === \"bars\") {\n return {\n ...common,\n series: [\n {\n type: \"bar\",\n data: normalised,\n itemStyle: { color: strokeColor },\n barCategoryGap: \"20%\",\n },\n ],\n };\n }\n\n return {\n ...common,\n series: [\n {\n type: \"line\",\n smooth: true,\n showSymbol: false,\n data: normalised,\n lineStyle: { color: strokeColor, width: 1.5 },\n itemStyle: { color: strokeColor },\n areaStyle:\n variant === \"area\"\n ? {\n color: {\n type: \"linear\" as const,\n x: 0,\n y: 0,\n x2: 0,\n y2: 1,\n colorStops: [\n { offset: 0, color: strokeColor },\n { offset: 1, color: \"rgba(0,0,0,0)\" },\n ],\n },\n opacity: 0.4,\n }\n : undefined,\n },\n ],\n };\n }, [data, color, variant, tooltip]);\n\n return (\n <div style={{ width, height }} className={className}>\n <Chart\n echarts={echarts}\n options={options}\n height={height}\n isDarkMode={isDarkMode}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAOA,IAAa,wBAAwB,EACnC,SAAS;CACP,MAAM;CACN,MAAM;CACN,MAAM;CACP,EACF;;AAGD,IAAa,gCAAgC,EAC3C,SAAS,QACV;;;;;;;;;;AAwCD,SAAgB,UAAU,EACxB,SACA,MACA,OACA,SAAS,IACT,QAAQ,IACR,UAAU,QACV,SACA,YACA,aACiB;CACjB,MAAM,UAAU,cAA6B;EAC3C,MAAM,aACJ,OAAO,KAAK,OAAO,WACd,KAAkB,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GACvC;EAEP,MAAM,cAAc,SAAS;EAE7B,MAAM,SAAS;GACb,MAAM;IAAE,MAAM;IAAG,OAAO;IAAG,KAAK;IAAG,QAAQ;IAAG;GAC9C,OAAO;IAAE,MAAM;IAAkB,MAAM;IAAO;GAC9C,OAAO;IAAE,MAAM;IAAkB,MAAM;IAAO,OAAO;IAAM;GAC3D,SAAS,UAAU,EAAE,SAAS,QAAiB,GAAG,EAAE,MAAM,OAAO;GAClE;AAED,MAAI,YAAY,OACd,QAAO;GACL,GAAG;GACH,QAAQ,CACN;IACE,MAAM;IACN,MAAM;IACN,WAAW,EAAE,OAAO,aAAa;IACjC,gBAAgB;IACjB,CACF;GACF;AAGH,SAAO;GACL,GAAG;GACH,QAAQ,CACN;IACE,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,WAAW;KAAE,OAAO;KAAa,OAAO;KAAK;IAC7C,WAAW,EAAE,OAAO,aAAa;IACjC,WACE,YAAY,SACR;KACE,OAAO;MACL,MAAM;MACN,GAAG;MACH,GAAG;MACH,IAAI;MACJ,IAAI;MACJ,YAAY,CACV;OAAE,QAAQ;OAAG,OAAO;OAAa,EACjC;OAAE,QAAQ;OAAG,OAAO;OAAiB,CACtC;MACF;KACD,SAAS;KACV,GACD,KAAA;IACP,CACF;GACF;IACA;EAAC;EAAM;EAAO;EAAS;EAAQ,CAAC;AAEnC,QACE,oBAAC,OAAD;EAAK,OAAO;GAAE;GAAO;GAAQ;EAAa;YACxC,oBAAC,OAAD;GACW;GACA;GACD;GACI;GACZ,CAAA;EACE,CAAA"}
1
+ {"version":3,"file":"sparkline-DHmgj1d0.js","names":[],"sources":["../src/components/sparkline/sparkline.tsx"],"sourcesContent":["import type { EChartsOption } from \"echarts\";\nimport type * as echarts from \"echarts/core\";\nimport { useMemo } from \"react\";\n\nimport { Chart } from \"../chart/echart\";\n\n/** Tailwind variant classes for Sparkline. */\nexport const SF_SPARKLINE_VARIANTS = {\n variant: {\n line: \"\",\n area: \"\",\n bars: \"\",\n },\n} as const;\n\n/** Default variants for Sparkline. */\nexport const SF_SPARKLINE_DEFAULT_VARIANTS = {\n variant: \"line\",\n} as const;\n\n/** Props for `Sparkline` */\nexport interface SparklineProps {\n /**\n * The ECharts core instance imported by the consumer.\n * Passed in rather than imported directly so the consumer controls which\n * ECharts modules are bundled (tree-shaking).\n */\n echarts: typeof echarts;\n /**\n * Series data. Accepts either plain numbers (evenly spaced on the x-axis) or\n * `[x, y]` tuples when the x-axis has meaningful values.\n */\n data: number[] | [number, number][];\n /** Stroke/fill color. Defaults to the first categorical palette entry. */\n color?: string;\n /** Height of the sparkline in pixels. Defaults to `32`. */\n height?: number;\n /** Width of the sparkline in pixels. Defaults to `80`. */\n width?: number;\n /** Visual variant. Defaults to `\"line\"`. */\n variant?: \"line\" | \"area\" | \"bars\";\n /** When `true`, enables a tooltip on hover (disabled by default). */\n tooltip?: boolean;\n /** When `true`, switches ECharts to its built-in dark theme */\n isDarkMode?: boolean;\n /** Additional CSS classes applied to the chart container */\n className?: string;\n}\n\n/**\n * Sparkline — a tiny inline chart intended for embedding in cards, tables, or\n * row-level cells. Renders without axes, grid, or legend by default.\n *\n * @example\n * ```tsx\n * <Sparkline echarts={echarts} data={[1, 3, 2, 5, 4, 6]} />\n * ```\n */\nexport function Sparkline({\n echarts,\n data,\n color,\n height = 32,\n width = 80,\n variant = \"line\",\n tooltip,\n isDarkMode,\n className,\n}: SparklineProps) {\n const options = useMemo<EChartsOption>(() => {\n const normalised: [number, number][] =\n typeof data[0] === \"number\"\n ? (data as number[]).map((v, i) => [i, v])\n : (data as [number, number][]);\n\n const strokeColor = color ?? \"#086FFF\";\n\n const common = {\n grid: { left: 0, right: 0, top: 2, bottom: 2 },\n xAxis: { type: \"value\" as const, show: false },\n yAxis: { type: \"value\" as const, show: false, scale: true },\n tooltip: tooltip ? { trigger: \"axis\" as const } : { show: false },\n };\n\n if (variant === \"bars\") {\n return {\n ...common,\n series: [\n {\n type: \"bar\",\n data: normalised,\n itemStyle: { color: strokeColor },\n barCategoryGap: \"20%\",\n },\n ],\n };\n }\n\n return {\n ...common,\n series: [\n {\n type: \"line\",\n smooth: true,\n showSymbol: false,\n data: normalised,\n lineStyle: { color: strokeColor, width: 1.5 },\n itemStyle: { color: strokeColor },\n areaStyle:\n variant === \"area\"\n ? {\n color: {\n type: \"linear\" as const,\n x: 0,\n y: 0,\n x2: 0,\n y2: 1,\n colorStops: [\n { offset: 0, color: strokeColor },\n { offset: 1, color: \"rgba(0,0,0,0)\" },\n ],\n },\n opacity: 0.4,\n }\n : undefined,\n },\n ],\n };\n }, [data, color, variant, tooltip]);\n\n return (\n <div style={{ width, height }} className={className}>\n <Chart\n echarts={echarts}\n options={options}\n height={height}\n isDarkMode={isDarkMode}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAOA,IAAa,wBAAwB,EACnC,SAAS;CACP,MAAM;CACN,MAAM;CACN,MAAM;CACP,EACF;;AAGD,IAAa,gCAAgC,EAC3C,SAAS,QACV;;;;;;;;;;AAwCD,SAAgB,UAAU,EACxB,SACA,MACA,OACA,SAAS,IACT,QAAQ,IACR,UAAU,QACV,SACA,YACA,aACiB;CACjB,MAAM,UAAU,cAA6B;EAC3C,MAAM,aACJ,OAAO,KAAK,OAAO,WACd,KAAkB,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GACvC;EAEP,MAAM,cAAc,SAAS;EAE7B,MAAM,SAAS;GACb,MAAM;IAAE,MAAM;IAAG,OAAO;IAAG,KAAK;IAAG,QAAQ;IAAG;GAC9C,OAAO;IAAE,MAAM;IAAkB,MAAM;IAAO;GAC9C,OAAO;IAAE,MAAM;IAAkB,MAAM;IAAO,OAAO;IAAM;GAC3D,SAAS,UAAU,EAAE,SAAS,QAAiB,GAAG,EAAE,MAAM,OAAO;GAClE;AAED,MAAI,YAAY,OACd,QAAO;GACL,GAAG;GACH,QAAQ,CACN;IACE,MAAM;IACN,MAAM;IACN,WAAW,EAAE,OAAO,aAAa;IACjC,gBAAgB;IACjB,CACF;GACF;AAGH,SAAO;GACL,GAAG;GACH,QAAQ,CACN;IACE,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,WAAW;KAAE,OAAO;KAAa,OAAO;KAAK;IAC7C,WAAW,EAAE,OAAO,aAAa;IACjC,WACE,YAAY,SACR;KACE,OAAO;MACL,MAAM;MACN,GAAG;MACH,GAAG;MACH,IAAI;MACJ,IAAI;MACJ,YAAY,CACV;OAAE,QAAQ;OAAG,OAAO;OAAa,EACjC;OAAE,QAAQ;OAAG,OAAO;OAAiB,CACtC;MACF;KACD,SAAS;KACV,GACD,KAAA;IACP,CACF;GACF;IACA;EAAC;EAAM;EAAO;EAAS;EAAQ,CAAC;AAEnC,QACE,oBAAC,OAAD;EAAK,OAAO;GAAE;GAAO;GAAQ;EAAa;YACxC,oBAAC,OAAD;GACW;GACA;GACD;GACI;GACZ,CAAA;EACE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-harness.d.ts","sourceRoot":"","sources":["../../../../src/blocks/agent-harness/agent-harness.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-harness.d.ts","sourceRoot":"","sources":["../../../../src/blocks/agent-harness/agent-harness.tsx"],"names":[],"mappings":"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"}
@@ -64,6 +64,11 @@ import {
64
64
  PromptInputTools,
65
65
  cn,
66
66
  useConversationVirtualizer,
67
+ SF_AI_MEASURE_FONT,
68
+ SF_AI_MEASURE_LINE_HEIGHT,
69
+ SF_AI_USER_WIDTH_FRACTION,
70
+ SF_AI_USER_HORIZONTAL_PADDING,
71
+ SF_AI_USER_VERTICAL_PADDING,
67
72
  type ConversationItem,
68
73
  } from "../../index";
69
74
 
@@ -848,6 +853,12 @@ export function AgentHarness({
848
853
 
849
854
  const isEmpty = state.messageIds.length === 0;
850
855
 
856
+ // Plain-text predictive height is only meaningful for user messages — they're
857
+ // always typed input (no markdown). Assistant messages render via
858
+ // <AiResponse> + side-content (tool calls, reasoning, subagents) which can't
859
+ // be modeled by single-font/line-height pretext, so we omit `measure` for
860
+ // them and let the virtualizer fall back to DOM measurement.
861
+
851
862
  // ── Build flat item list for virtualizer ───────────────────────────────────
852
863
  const conversationItems: ConversationItem[] = useMemo(() => {
853
864
  const items: ConversationItem[] = [];
@@ -931,19 +942,32 @@ export function AgentHarness({
931
942
  }
932
943
 
933
944
  if (msg.role === "user") {
945
+ // User messages are always plain text (typed input). Render without
946
+ // <AiResponse> so DOM matches pretext's plain-text prediction exactly.
934
947
  items.push({
935
948
  key: msgId,
936
949
  render: () => (
937
950
  <div>
938
951
  <AiMessage from="user">
939
- <AiMessageContent>
940
- <AiResponse>{msg.content}</AiResponse>
941
- </AiMessageContent>
952
+ <AiMessageContent>{msg.content}</AiMessageContent>
942
953
  </AiMessage>
943
954
  </div>
944
955
  ),
956
+ measure: {
957
+ text: msg.content,
958
+ font: SF_AI_MEASURE_FONT,
959
+ lineHeight: SF_AI_MEASURE_LINE_HEIGHT,
960
+ padding: SF_AI_USER_VERTICAL_PADDING,
961
+ widthFraction: SF_AI_USER_WIDTH_FRACTION,
962
+ horizontalPadding: SF_AI_USER_HORIZONTAL_PADDING,
963
+ whiteSpace: "pre-wrap",
964
+ },
945
965
  });
946
966
  } else {
967
+ // Assistant messages render markdown via <AiResponse> alongside tool
968
+ // calls, reasoning blocks, subagents, etc. These blocks have varying
969
+ // typography that pretext (single font/line-height) cannot model, so
970
+ // we omit `measure` and let the virtualizer use DOM measurement.
947
971
  items.push({
948
972
  key: msgId,
949
973
  render: () => (
@@ -1040,7 +1064,7 @@ export function AgentHarness({
1040
1064
  ]);
1041
1065
 
1042
1066
  // ── Virtualizer ────────────────────────────────────────────────────────────
1043
- const { virtualItems, totalSize, measureRef, isAtBottom, scrollToBottom } =
1067
+ const { virtualItems, totalSize, getMeasureRef, isAtBottom, scrollToBottom } =
1044
1068
  useConversationVirtualizer({
1045
1069
  scrollRef,
1046
1070
  items: conversationItems,
@@ -1069,7 +1093,7 @@ export function AgentHarness({
1069
1093
  return (
1070
1094
  <div
1071
1095
  key={item.key}
1072
- ref={measureRef}
1096
+ ref={getMeasureRef(vi.index)}
1073
1097
  data-index={vi.index}
1074
1098
  className="absolute left-0 w-full px-4"
1075
1099
  style={{ top: vi.start }}
@@ -39,6 +39,43 @@ export type AiConversationScrollButtonProps = ComponentProps<typeof Button> & {
39
39
  * more than `threshold` pixels from the bottom.
40
40
  */
41
41
  export declare function AiConversationScrollButton({ scrollRef, threshold, className, onClick, ...props }: AiConversationScrollButtonProps): import("react/jsx-runtime").JSX.Element | null;
42
+ /** Measurement spec for predictive height calculation using pretext. */
43
+ export interface ConversationItemMeasureSpec {
44
+ /** Text content to measure */
45
+ text: string;
46
+ /** CSS font shorthand (e.g. "14px Inter, sans-serif"). Auto-detected if omitted. */
47
+ font?: string;
48
+ /** Line height in pixels. Auto-detected if omitted. */
49
+ lineHeight?: number;
50
+ /** Additional vertical padding (top + bottom) in pixels @default 0 */
51
+ padding?: number;
52
+ /**
53
+ * Fraction of column width this item occupies (0-1). Used to compute the
54
+ * actual content width for items that are constrained (e.g. user message
55
+ * bubbles at max-w-[70%]). @default 1
56
+ */
57
+ widthFraction?: number;
58
+ /**
59
+ * Horizontal padding (left + right) inside the content box, subtracted from
60
+ * the available width before line wrapping. @default 0
61
+ */
62
+ horizontalPadding?: number;
63
+ /**
64
+ * Margin below this item (gap to next item). @default 0
65
+ */
66
+ gapAfter?: number;
67
+ /**
68
+ * White-space handling — must match the rendered CSS. Use `"pre-wrap"` when
69
+ * the rendered content preserves explicit newlines (e.g. plain text inside
70
+ * a <pre> or `whitespace-pre-wrap` div). @default "normal"
71
+ */
72
+ whiteSpace?: "normal" | "pre-wrap";
73
+ /**
74
+ * Word-break handling — match CSS `word-break`. Use `"keep-all"` for CJK
75
+ * text that should not break mid-word. @default "normal"
76
+ */
77
+ wordBreak?: "normal" | "keep-all";
78
+ }
42
79
  /** A single item in the virtualized conversation list. */
43
80
  export interface ConversationItem {
44
81
  /** Unique key for this item. */
@@ -48,6 +85,28 @@ export interface ConversationItem {
48
85
  * positioning on the wrapper — just return the content.
49
86
  */
50
87
  render: () => ReactNode;
88
+ /**
89
+ * Optional predictive height measurement. When provided, the virtualizer
90
+ * uses pretext to compute exact height without DOM measurement, eliminating
91
+ * layout shift during streaming. Falls back to estimateSize + DOM measurement
92
+ * when omitted.
93
+ *
94
+ * **Attach this only when rendering plain text** (no markdown). If your
95
+ * `render` output uses `<AiResponse>` or any rich-content component whose
96
+ * blocks have varying typography (headings, code, lists, blockquotes), omit
97
+ * `measure` to let the virtualizer use DOM measurement instead. Pretext
98
+ * predicts heights from a single (font, line-height) pair and cannot
99
+ * accurately model multi-block markdown.
100
+ *
101
+ * Plain-text + `measure` gives jitter-free virtualization (no estimate-then-
102
+ * adjust feedback loop). Rich content + DOM measurement is rendering-correct
103
+ * but slightly less smooth on first paint.
104
+ *
105
+ * For streaming items, update `measure.text` as text grows so the virtualizer
106
+ * can recalculate height per tick (rebuild the `items` array with the latest
107
+ * text on each token arrival).
108
+ */
109
+ measure?: ConversationItemMeasureSpec;
51
110
  }
52
111
  export interface UseConversationVirtualizerOptions {
53
112
  /** Ref to the scroll container element. */
@@ -82,44 +141,17 @@ export interface UseConversationVirtualizerReturn {
82
141
  isAtBottom: boolean;
83
142
  /** Smoothly scroll to the bottom. */
84
143
  scrollToBottom: (behavior?: ScrollBehavior) => void;
85
- /** Get the measurement ref for a virtual item by index. */
144
+ /**
145
+ * Get the measurement ref for a virtual item by index.
146
+ * @deprecated Use `getMeasureRef(index)` instead to respect predictive heights.
147
+ */
86
148
  measureRef: (node: HTMLElement | null) => void;
149
+ /**
150
+ * Get the measurement ref for a specific item index.
151
+ * Returns `null` for items with predictive height (no DOM measurement needed),
152
+ * or the measurement callback for legacy items.
153
+ */
154
+ getMeasureRef: (index: number) => ((node: HTMLElement | null) => void) | null;
87
155
  }
88
- /**
89
- * `useConversationVirtualizer` — virtualizes a conversation list with
90
- * dynamic item heights and automatic stick-to-bottom behavior.
91
- *
92
- * Built on `@tanstack/react-virtual`. Items are measured dynamically via
93
- * `ResizeObserver`, so tool calls expanding, subagents collapsing, and
94
- * streaming text growing all work correctly.
95
- *
96
- * **Stick-to-bottom**: When the user is scrolled to (or near) the bottom,
97
- * new items and item resizes automatically keep the viewport pinned to the
98
- * bottom. When the user scrolls up, stick-to-bottom disengages until they
99
- * scroll back down.
100
- *
101
- * @example
102
- * ```tsx
103
- * const { virtualItems, totalSize, measureRef, isAtBottom, scrollToBottom } =
104
- * useConversationVirtualizer({ scrollRef, items });
105
- *
106
- * return (
107
- * <AiConversation ref={scrollRef}>
108
- * <div style={{ height: totalSize, position: "relative" }}>
109
- * {virtualItems.map((vi) => {
110
- * const item = items[vi.index];
111
- * return (
112
- * <div key={item.key} ref={measureRef} data-index={vi.index}
113
- * style={{ position: "absolute", top: vi.start, width: "100%" }}>
114
- * {item.render()}
115
- * </div>
116
- * );
117
- * })}
118
- * </div>
119
- * {!isAtBottom && <button onClick={() => scrollToBottom()}>↓</button>}
120
- * </AiConversation>
121
- * );
122
- * ```
123
- */
124
156
  export declare function useConversationVirtualizer({ scrollRef, items, estimateSize, overscan, stickThreshold, }: UseConversationVirtualizerOptions): UseConversationVirtualizerReturn;
125
157
  //# sourceMappingURL=ai-conversation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-conversation.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-conversation/ai-conversation.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAInC,eAAO,MAAM,2BAA2B,IAAc,CAAC;AACvD,eAAO,MAAM,mCAAmC,IAAc,CAAC;AAI/D,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAExD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,2MAe1B,CAAC;AAMF,MAAM,MAAM,0BAA0B,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE/D;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,0BAA0B,2CAS5B;AAID,MAAM,MAAM,+BAA+B,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IAC5E;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC1C,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,SAAS,EACT,SAAe,EACf,SAAS,EACT,OAAO,EACP,GAAG,KAAK,EACT,EAAE,+BAA+B,kDA6CjC;AAID,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,EAAE,MAAM,SAAS,CAAC;CACzB;AAED,MAAM,WAAW,iCAAiC;IAChD,2CAA2C;IAC3C,SAAS,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACzC,4CAA4C;IAC5C,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,yCAAyC;IACzC,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC/C,mCAAmC;IACnC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,UAAU,EAAE,OAAO,CAAC;IACpB,qCAAqC;IACrC,cAAc,EAAE,CAAC,QAAQ,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IACpD,2DAA2D;IAC3D,UAAU,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,SAAS,EACT,KAAK,EACL,YAAiB,EACjB,QAAY,EACZ,cAAmB,GACpB,EAAE,iCAAiC,GAAG,gCAAgC,CAmGtE"}
1
+ {"version":3,"file":"ai-conversation.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-conversation/ai-conversation.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- export { AiConversation, AiConversationContent, AiConversationScrollButton, useConversationVirtualizer, SF_AI_CONVERSATION_VARIANTS, SF_AI_CONVERSATION_DEFAULT_VARIANTS, type AiConversationProps, type AiConversationContentProps, type AiConversationScrollButtonProps, type ConversationItem, type UseConversationVirtualizerOptions, type UseConversationVirtualizerReturn, } from './ai-conversation';
1
+ export { AiConversation, AiConversationContent, AiConversationScrollButton, useConversationVirtualizer, SF_AI_CONVERSATION_VARIANTS, SF_AI_CONVERSATION_DEFAULT_VARIANTS, type AiConversationProps, type AiConversationContentProps, type AiConversationScrollButtonProps, type ConversationItem, type ConversationItemMeasureSpec, type UseConversationVirtualizerOptions, type UseConversationVirtualizerReturn, } from './ai-conversation';
2
+ export { SF_AI_MEASURE_FONT, SF_AI_MEASURE_LINE_HEIGHT, SF_AI_USER_WIDTH_FRACTION, SF_AI_USER_HORIZONTAL_PADDING, SF_AI_USER_VERTICAL_PADDING, SF_AI_ASSISTANT_WIDTH_FRACTION, SF_AI_ASSISTANT_HORIZONTAL_PADDING, SF_AI_ASSISTANT_VERTICAL_PADDING, SF_AI_DEFAULT_MESSAGE_GAP, } from './measurement-constants';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-conversation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,gBAAgB,EACrB,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,GACtC,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-conversation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,gBAAgB,EACrB,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,GACtC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,EAC3B,8BAA8B,EAC9B,kCAAkC,EAClC,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Shared pretext measurement constants for `useConversationVirtualizer`.
3
+ *
4
+ * These match the rendered styling of `<AiMessage>` + `<AiMessageContent>`
5
+ * (text-sm = 14px / line-height 20px, user bubble `max-w-[70%]` with `px-4 py-3`).
6
+ *
7
+ * Anywhere that builds `ConversationItem.measure` for plain-text AI chat messages
8
+ * should import from here so calibration stays in one place. If production CSS
9
+ * for `<AiMessage>` ever changes (font size, padding, bubble width), update these
10
+ * constants — pretext predictions will then automatically follow.
11
+ */
12
+ /** CSS `font` shorthand matching `text-sm` rendering. */
13
+ export declare const SF_AI_MEASURE_FONT = "14px \"Inter\", ui-sans-serif, system-ui, sans-serif";
14
+ /** Line height in pixels, matching `text-sm`. */
15
+ export declare const SF_AI_MEASURE_LINE_HEIGHT = 20;
16
+ /** User bubbles: `max-w-[70%]`. */
17
+ export declare const SF_AI_USER_WIDTH_FRACTION = 0.7;
18
+ /** User bubbles: `px-4` → 16px × 2 horizontal padding. */
19
+ export declare const SF_AI_USER_HORIZONTAL_PADDING = 32;
20
+ /** User bubbles: `py-3` → 12px × 2 vertical padding. */
21
+ export declare const SF_AI_USER_VERTICAL_PADDING = 24;
22
+ /** Assistant text: full width column, no bubble. */
23
+ export declare const SF_AI_ASSISTANT_WIDTH_FRACTION = 1;
24
+ /** Assistant text: no horizontal padding inside the bubble. */
25
+ export declare const SF_AI_ASSISTANT_HORIZONTAL_PADDING = 0;
26
+ /** Assistant text: no vertical padding inside the bubble. */
27
+ export declare const SF_AI_ASSISTANT_VERTICAL_PADDING = 0;
28
+ /** Default gap between conversation items. */
29
+ export declare const SF_AI_DEFAULT_MESSAGE_GAP = 12;
30
+ //# sourceMappingURL=measurement-constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measurement-constants.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-conversation/measurement-constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,yDAAyD;AACzD,eAAO,MAAM,kBAAkB,yDACuB,CAAC;AAEvD,iDAAiD;AACjD,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,mCAAmC;AACnC,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,0DAA0D;AAC1D,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,wDAAwD;AACxD,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,oDAAoD;AACpD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,+DAA+D;AAC/D,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAEpD,6DAA6D;AAC7D,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD,8CAA8C;AAC9C,eAAO,MAAM,yBAAyB,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-info-banner.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-info-banner/ai-info-banner.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMpE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;CAS7B,CAAC;AAEX,eAAO,MAAM,kCAAkC;;CAErC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,0BAA0B,CAAC,KAAK,CAAC;AAIhF,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC/D,sDAAsD;IACtD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,4BAA4B;IAC5B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AA2BF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAc,EACd,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAoBnB;yBA1Be,YAAY"}
1
+ {"version":3,"file":"ai-info-banner.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-info-banner/ai-info-banner.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOpE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;CAS7B,CAAC;AAEX,eAAO,MAAM,kCAAkC;;CAErC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,0BAA0B,CAAC,KAAK,CAAC;AAIhF,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC/D,sDAAsD;IACtD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,4BAA4B;IAC5B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AA2BF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAc,EACd,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAsBnB;yBA5Be,YAAY"}
@@ -44,6 +44,9 @@ export declare function AiMessage({ className, from, ...props }: AiMessageProps)
44
44
  export type AiMessageContentProps = HTMLAttributes<HTMLDivElement>;
45
45
  /**
46
46
  * Content bubble. Applies user/assistant bubble styles via group selectors.
47
+ *
48
+ * For user messages with plain text content, uses `Text wrap="shrink"` so short
49
+ * messages don't stretch to the full 70% container width.
47
50
  */
48
51
  export declare function AiMessageContent({ children, className, ...props }: AiMessageContentProps): import("react/jsx-runtime").JSX.Element;
49
52
  export type AiMessageToolbarProps = ComponentProps<"div">;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-message.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-message/ai-message.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-message.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-message/ai-message.tsx"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export declare const SF_AI_PROMPT_INPUT_DEFAULT_VARIANTS: {
26
26
  readonly status: "idle";
27
27
  };
28
28
  export type SFAiPromptInputStatus = keyof typeof SF_AI_PROMPT_INPUT_VARIANTS.status;
29
+ export type PromptInputBackLayerStatus = "idle" | "running" | "error";
29
30
  export type AttachmentFile = {
30
31
  id: string;
31
32
  url: string;
@@ -98,9 +99,18 @@ export type PromptInputProps = Omit<HTMLAttributes<HTMLFormElement>, "onSubmit"
98
99
  */
99
100
  backLayer?: ReactNode;
100
101
  /**
101
- * Title shown in the back layer header row. Defaults to `"Context"`.
102
+ * Header content shown in the back layer header row. Strings render as plain
103
+ * text; pass JSX to compose with icons/spinners/badges. Defaults to
104
+ * `"Context"`.
102
105
  */
103
- backLayerTitle?: string;
106
+ backLayerTitle?: ReactNode;
107
+ /**
108
+ * Optional status indicator rendered next to the title. `"running"` shows a
109
+ * small spinner; `"error"` shows an inline error icon. Use this instead of
110
+ * composing JSX into `backLayerTitle` for the common case of an agent doing
111
+ * work.
112
+ */
113
+ backLayerStatus?: PromptInputBackLayerStatus;
104
114
  /**
105
115
  * Controls whether the back layer is visible. Pair with `onBackLayerOpenChange`
106
116
  * for a controlled pattern.
@@ -131,7 +141,7 @@ export type PromptInputProps = Omit<HTMLAttributes<HTMLFormElement>, "onSubmit"
131
141
  * </PromptInput>
132
142
  * ```
133
143
  */
134
- export declare function PromptInput({ className, accept, multiple, globalDrop, maxFiles, maxFileSize, onError, onSubmit, children, backLayer, backLayerTitle, backLayerOpen, onBackLayerOpenChange, autoOpenBackLayerWhen, ...props }: PromptInputProps): import("react/jsx-runtime").JSX.Element;
144
+ export declare function PromptInput({ className, accept, multiple, globalDrop, maxFiles, maxFileSize, onError, onSubmit, children, backLayer, backLayerTitle, backLayerStatus, backLayerOpen, onBackLayerOpenChange, autoOpenBackLayerWhen, ...props }: PromptInputProps): import("react/jsx-runtime").JSX.Element;
135
145
  export declare namespace PromptInput {
136
146
  var BackLayer: typeof PromptInputBackLayer;
137
147
  var Textarea: ({ onChange, className, placeholder, ...props }: PromptInputTextareaProps) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-prompt-input.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/ai-prompt-input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-prompt-input.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/ai-prompt-input.tsx"],"names":[],"mappings":"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"}