@brainfish-ai/components 0.14.2 → 0.15.0-beta.1

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 (255) hide show
  1. package/dist/accordion.d.ts +12 -0
  2. package/dist/badge.d.ts +14 -0
  3. package/dist/button.d.ts +16 -0
  4. package/dist/calendar.d.ts +12 -0
  5. package/dist/card.d.ts +17 -0
  6. package/dist/chat-search.d.ts +424 -0
  7. package/dist/collapsible.d.ts +10 -0
  8. package/dist/{colors/index.d.ts → colors.d.ts} +133 -128
  9. package/dist/{components/combobox/combobox.d.ts → combobox.d.ts} +23 -18
  10. package/dist/command.d.ts +90 -0
  11. package/dist/data-table.d.ts +23 -0
  12. package/dist/{components/date-picker/date-picker.d.ts → date-picker.d.ts} +12 -9
  13. package/dist/dialog.d.ts +30 -0
  14. package/dist/div-button.d.ts +16 -0
  15. package/dist/dropdown-menu.d.ts +43 -0
  16. package/dist/esm/chunks/{ChatSearch.BVivOuWt.js → ChatSearch.nXLnU6TL.js} +7 -4
  17. package/dist/esm/chunks/ChatSearch.nXLnU6TL.js.map +1 -0
  18. package/dist/esm/chunks/{FormattedMessage.C7CKFL5X.js → FormattedMessage.aTY_CSO9.js} +3 -8
  19. package/dist/esm/chunks/{FormattedMessage.C7CKFL5X.js.map → FormattedMessage.aTY_CSO9.js.map} +1 -1
  20. package/dist/esm/chunks/_basePickBy-BRd8bulh.BihFF1eU.js +140 -0
  21. package/dist/esm/chunks/_basePickBy-BRd8bulh.BihFF1eU.js.map +1 -0
  22. package/dist/esm/chunks/_baseUniq-CjJl2kgN.C3Wg6Gzv.js +585 -0
  23. package/dist/esm/chunks/_baseUniq-CjJl2kgN.C3Wg6Gzv.js.map +1 -0
  24. package/dist/esm/chunks/_commonjsHelpers.BFTU3MAI.js +8 -0
  25. package/dist/esm/chunks/_commonjsHelpers.BFTU3MAI.js.map +1 -0
  26. package/dist/esm/chunks/arc-BwUz6pB-.CLjvikE5.js +84 -0
  27. package/dist/esm/chunks/arc-BwUz6pB-.CLjvikE5.js.map +1 -0
  28. package/dist/esm/chunks/architectureDiagram-W76B3OCA-Cb5kazGQ.1bO-o28W.js +4662 -0
  29. package/dist/esm/chunks/architectureDiagram-W76B3OCA-Cb5kazGQ.1bO-o28W.js.map +1 -0
  30. package/dist/esm/chunks/blockDiagram-QIGZ2CNN-DDf1fn8j.CbGMaSk6.js +2262 -0
  31. package/dist/esm/chunks/blockDiagram-QIGZ2CNN-DDf1fn8j.CbGMaSk6.js.map +1 -0
  32. package/dist/esm/chunks/c4Diagram-FPNF74CW-Bums6QOx.Cr4gEhB6.js +1581 -0
  33. package/dist/esm/chunks/c4Diagram-FPNF74CW-Bums6QOx.Cr4gEhB6.js.map +1 -0
  34. package/dist/esm/chunks/channel-0GCo3iLB.B41ZW7VC.js +6 -0
  35. package/dist/esm/chunks/channel-0GCo3iLB.B41ZW7VC.js.map +1 -0
  36. package/dist/esm/chunks/chunk-4BX2VUAB-BNEZvE0o.BzF9LZVo.js +9 -0
  37. package/dist/esm/chunks/chunk-4BX2VUAB-BNEZvE0o.BzF9LZVo.js.map +1 -0
  38. package/dist/esm/chunks/chunk-55IACEB6-DKe9mqg4.BScGh1GA.js +9 -0
  39. package/dist/esm/chunks/chunk-55IACEB6-DKe9mqg4.BScGh1GA.js.map +1 -0
  40. package/dist/esm/chunks/chunk-FMBD7UC4-crQF-lvP.eIOmyWTR.js +20 -0
  41. package/dist/esm/chunks/chunk-FMBD7UC4-crQF-lvP.eIOmyWTR.js.map +1 -0
  42. package/dist/esm/chunks/chunk-K7UQS3LO-Cfwyr-vZ.BAoAWAQk.js +1373 -0
  43. package/dist/esm/chunks/chunk-K7UQS3LO-Cfwyr-vZ.BAoAWAQk.js.map +1 -0
  44. package/dist/esm/chunks/chunk-QN33PNHL-DspJEonH.BH03Z53b.js +20 -0
  45. package/dist/esm/chunks/chunk-QN33PNHL-DspJEonH.BH03Z53b.js.map +1 -0
  46. package/dist/esm/chunks/chunk-QZHKN3VN-BCAuXuhM.Yv71fggY.js +16 -0
  47. package/dist/esm/chunks/chunk-QZHKN3VN-BCAuXuhM.Yv71fggY.js.map +1 -0
  48. package/dist/esm/chunks/chunk-TVAH2DTR-UAGFGTWa.DtaXLvO3.js +1368 -0
  49. package/dist/esm/chunks/chunk-TVAH2DTR-UAGFGTWa.DtaXLvO3.js.map +1 -0
  50. package/dist/esm/chunks/chunk-TZMSLE5B-BuOZ_3Ji.DWg5e95b.js +59 -0
  51. package/dist/esm/chunks/chunk-TZMSLE5B-BuOZ_3Ji.DWg5e95b.js.map +1 -0
  52. package/dist/esm/chunks/classDiagram-KNZD7YFC-DX7nurcU.CyPH6UHq.js +17 -0
  53. package/dist/esm/chunks/classDiagram-KNZD7YFC-DX7nurcU.CyPH6UHq.js.map +1 -0
  54. package/dist/esm/chunks/classDiagram-v2-RKCZMP56-DX7nurcU.CyPH6UHq.js +17 -0
  55. package/dist/esm/chunks/classDiagram-v2-RKCZMP56-DX7nurcU.CyPH6UHq.js.map +1 -0
  56. package/dist/esm/chunks/clone-Bqjztgu2.BFjA-F4h.js +9 -0
  57. package/dist/esm/chunks/clone-Bqjztgu2.BFjA-F4h.js.map +1 -0
  58. package/dist/esm/chunks/cose-bilkent-S5V4N54A-BQHziyWw.BZGNVFdw.js +2610 -0
  59. package/dist/esm/chunks/cose-bilkent-S5V4N54A-BQHziyWw.BZGNVFdw.js.map +1 -0
  60. package/dist/esm/chunks/cytoscape.esm-qgs_QMrm.Cg6eOcD7.js +18633 -0
  61. package/dist/esm/chunks/cytoscape.esm-qgs_QMrm.Cg6eOcD7.js.map +1 -0
  62. package/dist/esm/chunks/dagre-5GWH7T2D-lsJD5N-w.B1kdVc5w.js +445 -0
  63. package/dist/esm/chunks/dagre-5GWH7T2D-lsJD5N-w.B1kdVc5w.js.map +1 -0
  64. package/dist/esm/chunks/defaultLocale-D7EN2tov.B8F577Sx.js +168 -0
  65. package/dist/esm/chunks/defaultLocale-D7EN2tov.B8F577Sx.js.map +1 -0
  66. package/dist/esm/chunks/diagram-N5W7TBWH-BRbQQdVg.CLbXQp4w.js +533 -0
  67. package/dist/esm/chunks/diagram-N5W7TBWH-BRbQQdVg.CLbXQp4w.js.map +1 -0
  68. package/dist/esm/chunks/diagram-QEK2KX5R-8l9h9zsj.DLBRL8pH.js +218 -0
  69. package/dist/esm/chunks/diagram-QEK2KX5R-8l9h9zsj.DLBRL8pH.js.map +1 -0
  70. package/dist/esm/chunks/diagram-S2PKOQOG-Cqv8fzC4.BsV-iXxM.js +143 -0
  71. package/dist/esm/chunks/diagram-S2PKOQOG-Cqv8fzC4.BsV-iXxM.js.map +1 -0
  72. package/dist/esm/chunks/erDiagram-AWTI2OKA-CuacxCQc.BRxf9Bvb.js +842 -0
  73. package/dist/esm/chunks/erDiagram-AWTI2OKA-CuacxCQc.BRxf9Bvb.js.map +1 -0
  74. package/dist/esm/chunks/flowDiagram-PVAE7QVJ-CYALWpXg.DIYz6l2w.js +1621 -0
  75. package/dist/esm/chunks/flowDiagram-PVAE7QVJ-CYALWpXg.DIYz6l2w.js.map +1 -0
  76. package/dist/esm/chunks/ganttDiagram-OWAHRB6G-DasKdnJE.Dl2sI2Nk.js +2506 -0
  77. package/dist/esm/chunks/ganttDiagram-OWAHRB6G-DasKdnJE.Dl2sI2Nk.js.map +1 -0
  78. package/dist/esm/chunks/gitGraphDiagram-NY62KEGX-CBXt0yuv.mD35jpPG.js +700 -0
  79. package/dist/esm/chunks/gitGraphDiagram-NY62KEGX-CBXt0yuv.mD35jpPG.js.map +1 -0
  80. package/dist/esm/chunks/graph-DuS579Mj.CVtaKNIJ.js +248 -0
  81. package/dist/esm/chunks/graph-DuS579Mj.CVtaKNIJ.js.map +1 -0
  82. package/dist/esm/chunks/infoDiagram-STP46IZ2-D6dOD0xH.BLhsKnwz.js +25 -0
  83. package/dist/esm/chunks/infoDiagram-STP46IZ2-D6dOD0xH.BLhsKnwz.js.map +1 -0
  84. package/dist/esm/chunks/init-DjUOC4st.BOEiyheD.js +16 -0
  85. package/dist/esm/chunks/init-DjUOC4st.BOEiyheD.js.map +1 -0
  86. package/dist/esm/chunks/journeyDiagram-BIP6EPQ6-BVvhjpLT.Cy1B2LuZ.js +837 -0
  87. package/dist/esm/chunks/journeyDiagram-BIP6EPQ6-BVvhjpLT.Cy1B2LuZ.js.map +1 -0
  88. package/dist/esm/chunks/kanban-definition-6OIFK2YF-DXUNU6e4.YiYgNKI6.js +720 -0
  89. package/dist/esm/chunks/kanban-definition-6OIFK2YF-DXUNU6e4.YiYgNKI6.js.map +1 -0
  90. package/dist/esm/chunks/katex-CUSbq6rG.R-nwQ7Gi.js +11679 -0
  91. package/dist/esm/chunks/katex-CUSbq6rG.R-nwQ7Gi.js.map +1 -0
  92. package/dist/esm/chunks/layout-C51Wxzwk.D_mfdH7L.js +1322 -0
  93. package/dist/esm/chunks/layout-C51Wxzwk.D_mfdH7L.js.map +1 -0
  94. package/dist/esm/chunks/linear-CHlV0TT4.CvsRyKtq.js +256 -0
  95. package/dist/esm/chunks/linear-CHlV0TT4.CvsRyKtq.js.map +1 -0
  96. package/dist/esm/chunks/markdownTranslator-D7_8pMsF.-EYyJrCs.js +15985 -0
  97. package/dist/esm/chunks/markdownTranslator-D7_8pMsF.-EYyJrCs.js.map +1 -0
  98. package/dist/esm/chunks/mermaid.core-C5kBD6J-.BXPxVcVa.js +15491 -0
  99. package/dist/esm/chunks/mermaid.core-C5kBD6J-.BXPxVcVa.js.map +1 -0
  100. package/dist/esm/chunks/mindmap-definition-Q6HEUPPD-HFrYx80F.ysRA57eW.js +782 -0
  101. package/dist/esm/chunks/mindmap-definition-Q6HEUPPD-HFrYx80F.ysRA57eW.js.map +1 -0
  102. package/dist/esm/chunks/ordinal-DfAQgscy.J1PPD2vL.js +62 -0
  103. package/dist/esm/chunks/ordinal-DfAQgscy.J1PPD2vL.js.map +1 -0
  104. package/dist/esm/chunks/paragraph-node-C0kBl9gb.CIP8K4ND.js +61421 -0
  105. package/dist/esm/chunks/paragraph-node-C0kBl9gb.CIP8K4ND.js.map +1 -0
  106. package/dist/esm/chunks/pieDiagram-ADFJNKIX-CsslphWO.B4GbWuZv.js +162 -0
  107. package/dist/esm/chunks/pieDiagram-ADFJNKIX-CsslphWO.B4GbWuZv.js.map +1 -0
  108. package/dist/esm/chunks/quadrantDiagram-LMRXKWRM-5QFmGeOP.C_UxDQXe.js +1023 -0
  109. package/dist/esm/chunks/quadrantDiagram-LMRXKWRM-5QFmGeOP.C_UxDQXe.js.map +1 -0
  110. package/dist/esm/chunks/requirementDiagram-4UW4RH46-C22keu8n.C4-dnVVT.js +851 -0
  111. package/dist/esm/chunks/requirementDiagram-4UW4RH46-C22keu8n.C4-dnVVT.js.map +1 -0
  112. package/dist/esm/chunks/sankeyDiagram-GR3RE2ED-BpqD9_-e.ngMCnT6E.js +811 -0
  113. package/dist/esm/chunks/sankeyDiagram-GR3RE2ED-BpqD9_-e.ngMCnT6E.js.map +1 -0
  114. package/dist/esm/chunks/sequenceDiagram-C3RYC4MD-oePYpAJV.CBdzhzsP.js +2512 -0
  115. package/dist/esm/chunks/sequenceDiagram-C3RYC4MD-oePYpAJV.CBdzhzsP.js.map +1 -0
  116. package/dist/esm/chunks/simple-editor.BahVaPV_.js +17657 -0
  117. package/dist/esm/chunks/simple-editor.BahVaPV_.js.map +1 -0
  118. package/dist/esm/chunks/simple-viewer-BRtSPXgb.j1P0rnc3.js +5543 -0
  119. package/dist/esm/chunks/simple-viewer-BRtSPXgb.j1P0rnc3.js.map +1 -0
  120. package/dist/esm/chunks/stateDiagram-KXAO66HF-D4aLegBB.CQf3ipbf.js +264 -0
  121. package/dist/esm/chunks/stateDiagram-KXAO66HF-D4aLegBB.CQf3ipbf.js.map +1 -0
  122. package/dist/esm/chunks/stateDiagram-v2-UMBNRL4Z-EsHlUtVh.KT7g_d3p.js +17 -0
  123. package/dist/esm/chunks/stateDiagram-v2-UMBNRL4Z-EsHlUtVh.KT7g_d3p.js.map +1 -0
  124. package/dist/esm/chunks/timeline-definition-XQNQX7LJ-6YQdnQ9U.CyMubI5o.js +798 -0
  125. package/dist/esm/chunks/timeline-definition-XQNQX7LJ-6YQdnQ9U.CyMubI5o.js.map +1 -0
  126. package/dist/esm/chunks/treemap-75Q7IDZK-vsWUWgT4.STv98gDF.js +12982 -0
  127. package/dist/esm/chunks/treemap-75Q7IDZK-vsWUWgT4.STv98gDF.js.map +1 -0
  128. package/dist/esm/chunks/xychartDiagram-6GGTOJPD-M8ajOOsE.Ds3v-kkT.js +1341 -0
  129. package/dist/esm/chunks/xychartDiagram-6GGTOJPD-M8ajOOsE.Ds3v-kkT.js.map +1 -0
  130. package/dist/esm/components/chat-search.js +1 -1
  131. package/dist/esm/components/markdown-editor-viewer.js +2 -0
  132. package/dist/esm/components/markdown-editor-viewer.js.map +1 -0
  133. package/dist/esm/components/markdown.js +1 -1
  134. package/dist/esm/index.css +1 -1
  135. package/dist/esm/index.js +3 -2
  136. package/dist/esm/index.js.map +1 -1
  137. package/dist/{components/feedback/feedback.d.ts → feedback.d.ts} +21 -17
  138. package/dist/file-upload.d.ts +45 -0
  139. package/dist/{components/filter/types.d.ts → filter.d.ts} +82 -59
  140. package/dist/generating-star.d.ts +10 -0
  141. package/dist/icon.d.ts +26 -0
  142. package/dist/index.d.ts +1204 -28
  143. package/dist/input.d.ts +11 -0
  144. package/dist/label.d.ts +8 -0
  145. package/dist/markdown-editor-viewer.d.ts +113 -0
  146. package/dist/markdown.d.ts +55 -0
  147. package/dist/popover.d.ts +12 -0
  148. package/dist/progress.d.ts +8 -0
  149. package/dist/scroll-area.d.ts +8 -0
  150. package/dist/{components/select/simpleSelect.d.ts → select.d.ts} +20 -15
  151. package/dist/stats.html +1 -1
  152. package/dist/switch.d.ts +6 -0
  153. package/dist/table.d.ts +19 -0
  154. package/dist/textarea.d.ts +5 -0
  155. package/dist/tooltip.d.ts +18 -0
  156. package/dist/{components/two-level-combobox/two-level-combobox.d.ts → two-level-combobox.d.ts} +24 -15
  157. package/markdown-editor.plan.md +322 -0
  158. package/markdown-editor.spec.md +915 -0
  159. package/package.json +23 -4
  160. package/dist/colors/blue.d.ts +0 -13
  161. package/dist/colors/customColor.d.ts +0 -4
  162. package/dist/colors/dark.d.ts +0 -13
  163. package/dist/colors/green.d.ts +0 -13
  164. package/dist/colors/orange.d.ts +0 -13
  165. package/dist/colors/pink.d.ts +0 -13
  166. package/dist/colors/primary.d.ts +0 -20
  167. package/dist/colors/purple.d.ts +0 -13
  168. package/dist/colors/red.d.ts +0 -13
  169. package/dist/colors/yellow.d.ts +0 -13
  170. package/dist/components/chat-search/Answer.d.ts +0 -29
  171. package/dist/components/chat-search/AnswerActions.d.ts +0 -13
  172. package/dist/components/chat-search/AnswerBlock.d.ts +0 -8
  173. package/dist/components/chat-search/ChatSearch.d.ts +0 -11
  174. package/dist/components/chat-search/ChatSearchContext.d.ts +0 -36
  175. package/dist/components/chat-search/FollowUpQuestions.d.ts +0 -7
  176. package/dist/components/chat-search/FollowUpSearchBar.d.ts +0 -11
  177. package/dist/components/chat-search/Header.d.ts +0 -9
  178. package/dist/components/chat-search/LoadingConversation.d.ts +0 -2
  179. package/dist/components/chat-search/LoadingSkeleton.d.ts +0 -6
  180. package/dist/components/chat-search/NextBestActions.d.ts +0 -8
  181. package/dist/components/chat-search/PrimarySearch.d.ts +0 -35
  182. package/dist/components/chat-search/ScrollToBottomArrow.d.ts +0 -6
  183. package/dist/components/chat-search/Suggestions.d.ts +0 -9
  184. package/dist/components/chat-search/TimelineNavigation.d.ts +0 -9
  185. package/dist/components/chat-search/blocks/ActionButtons.d.ts +0 -5
  186. package/dist/components/chat-search/blocks/ActionInputForm.d.ts +0 -20
  187. package/dist/components/chat-search/blocks/MarkdownText.d.ts +0 -8
  188. package/dist/components/chat-search/blocks/utils.d.ts +0 -15
  189. package/dist/components/chat-search/helpers/excuteClientAction.d.ts +0 -9
  190. package/dist/components/chat-search/helpers/nextBestActions.d.ts +0 -7
  191. package/dist/components/chat-search/hooks/index.d.ts +0 -7
  192. package/dist/components/chat-search/hooks/useAccessibleColor.d.ts +0 -1
  193. package/dist/components/chat-search/hooks/useAnswerList.d.ts +0 -217
  194. package/dist/components/chat-search/hooks/useConversationId.d.ts +0 -5
  195. package/dist/components/chat-search/hooks/useConversationLoader.d.ts +0 -17
  196. package/dist/components/chat-search/hooks/useDarkMode.d.ts +0 -1
  197. package/dist/components/chat-search/hooks/useIsChatSearchDirty.d.ts +0 -1
  198. package/dist/components/chat-search/hooks/useScrollManager.d.ts +0 -6
  199. package/dist/components/chat-search/hooks/useSubscriptionManager.d.ts +0 -4
  200. package/dist/components/chat-search/hooks/useUrlManager.d.ts +0 -8
  201. package/dist/components/chat-search/index.d.ts +0 -5
  202. package/dist/components/chat-search/text-config.d.ts +0 -3
  203. package/dist/components/chat-search/theme.d.ts +0 -0
  204. package/dist/components/chat-search/types.d.ts +0 -260
  205. package/dist/components/combobox/index.d.ts +0 -1
  206. package/dist/components/data-table/data-table.d.ts +0 -17
  207. package/dist/components/data-table/index.d.ts +0 -2
  208. package/dist/components/date-picker/index.d.ts +0 -1
  209. package/dist/components/feedback/feedback-reason.d.ts +0 -10
  210. package/dist/components/feedback/index.d.ts +0 -1
  211. package/dist/components/file-upload/file-upload-status.d.ts +0 -17
  212. package/dist/components/file-upload/file-upload.d.ts +0 -4
  213. package/dist/components/file-upload/index.d.ts +0 -4
  214. package/dist/components/file-upload/types.d.ts +0 -18
  215. package/dist/components/file-upload/utils.d.ts +0 -1
  216. package/dist/components/filter/components/CustomValueInput.d.ts +0 -11
  217. package/dist/components/filter/components/MultiSelectDropdown.d.ts +0 -10
  218. package/dist/components/filter/components/SingleSelectDropdown.d.ts +0 -9
  219. package/dist/components/filter/filter.d.ts +0 -6
  220. package/dist/components/filter/filters.d.ts +0 -12
  221. package/dist/components/filter/hooks.d.ts +0 -9
  222. package/dist/components/filter/index.d.ts +0 -3
  223. package/dist/components/generating-star/generating-star.d.ts +0 -6
  224. package/dist/components/generating-star/index.d.ts +0 -2
  225. package/dist/components/markdown/CodeBlock.d.ts +0 -7
  226. package/dist/components/markdown/FormattedMessage.d.ts +0 -14
  227. package/dist/components/markdown/Frame.d.ts +0 -10
  228. package/dist/components/markdown/MemoizedReactMarkdown.d.ts +0 -6
  229. package/dist/components/markdown/MermaidDiagram.d.ts +0 -6
  230. package/dist/components/markdown/ZoomableImage.d.ts +0 -7
  231. package/dist/components/markdown/embeds/Loom.d.ts +0 -7
  232. package/dist/components/markdown/embeds/NativeVideo.d.ts +0 -6
  233. package/dist/components/markdown/embeds/Supademo.d.ts +0 -7
  234. package/dist/components/markdown/embeds/Typeform.d.ts +0 -7
  235. package/dist/components/markdown/embeds/VideoTimeline.d.ts +0 -9
  236. package/dist/components/markdown/embeds/Vimeo.d.ts +0 -7
  237. package/dist/components/markdown/embeds/Wistia.d.ts +0 -7
  238. package/dist/components/markdown/embeds/Youtube.d.ts +0 -7
  239. package/dist/components/markdown/embeds/index.d.ts +0 -9
  240. package/dist/components/markdown/index.d.ts +0 -6
  241. package/dist/components/markdown/utils/codeblock.d.ts +0 -6
  242. package/dist/components/markdown/utils/stripNewLines.d.ts +0 -1
  243. package/dist/components/markdown/utils/urls.d.ts +0 -6
  244. package/dist/components/select/index.d.ts +0 -1
  245. package/dist/components/two-level-combobox/index.d.ts +0 -1
  246. package/dist/env.d.ts +0 -5
  247. package/dist/esm/chunks/ChatSearch.BVivOuWt.js.map +0 -1
  248. package/dist/lib/addUtmParams.d.ts +0 -20
  249. package/dist/lib/api.d.ts +0 -96
  250. package/dist/lib/feature-flags.d.ts +0 -9
  251. package/dist/lib/features.d.ts +0 -3
  252. package/dist/lib/fetchClient.d.ts +0 -19
  253. package/dist/lib/getContentType.d.ts +0 -1
  254. package/dist/lib/hooks.d.ts +0 -15
  255. package/dist/lib/utils.d.ts +0 -8
@@ -0,0 +1,6 @@
1
+ import * as React_2 from 'react';
2
+ import * as SwitchPrimitives from '@radix-ui/react-switch';
3
+
4
+ export declare const Switch: React_2.ForwardRefExoticComponent<Omit<SwitchPrimitives.SwitchProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
5
+
6
+ export { }
@@ -0,0 +1,19 @@
1
+ import * as React_2 from 'react';
2
+
3
+ export declare const Table: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableElement> & React_2.RefAttributes<HTMLTableElement>>;
4
+
5
+ export declare const TableBody: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableSectionElement> & React_2.RefAttributes<HTMLTableSectionElement>>;
6
+
7
+ export declare const TableCaption: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableCaptionElement> & React_2.RefAttributes<HTMLTableCaptionElement>>;
8
+
9
+ export declare const TableCell: React_2.ForwardRefExoticComponent<React_2.TdHTMLAttributes<HTMLTableCellElement> & React_2.RefAttributes<HTMLTableCellElement>>;
10
+
11
+ export declare const TableFooter: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableSectionElement> & React_2.RefAttributes<HTMLTableSectionElement>>;
12
+
13
+ export declare const TableHead: React_2.ForwardRefExoticComponent<React_2.ThHTMLAttributes<HTMLTableCellElement> & React_2.RefAttributes<HTMLTableCellElement>>;
14
+
15
+ export declare const TableHeader: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableSectionElement> & React_2.RefAttributes<HTMLTableSectionElement>>;
16
+
17
+ export declare const TableRow: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableRowElement> & React_2.RefAttributes<HTMLTableRowElement>>;
18
+
19
+ export { }
@@ -0,0 +1,5 @@
1
+ import * as React_2 from 'react';
2
+
3
+ export declare const Textarea: React_2.ForwardRefExoticComponent<Omit<React_2.DetailedHTMLProps<React_2.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, "ref"> & React_2.RefAttributes<HTMLTextAreaElement>>;
4
+
5
+ export { }
@@ -0,0 +1,18 @@
1
+ import * as React_2 from 'react';
2
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
3
+
4
+ export declare const Tooltip: React_2.FC<TooltipPrimitive.TooltipProps>;
5
+
6
+ export declare const TooltipContent: React_2.ForwardRefExoticComponent<TooltipContentProps & React_2.RefAttributes<HTMLDivElement>>;
7
+
8
+ export declare interface TooltipContentProps extends React_2.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content> {
9
+ background?: string;
10
+ textColor?: string;
11
+ borderColor?: string;
12
+ }
13
+
14
+ export declare const TooltipProvider: ({ delayDuration, ...props }: TooltipPrimitive.TooltipProviderProps) => React_2.JSX.Element;
15
+
16
+ export declare const TooltipTrigger: React_2.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
17
+
18
+ export { }
@@ -1,15 +1,24 @@
1
- import { ComboboxItem } from '../combobox';
2
- import * as React from 'react';
3
- export interface TwoLevelComboboxProps {
4
- firstLevelItems: ComboboxItem[];
5
- fetchSecondLevelItems: (firstLevelId: string) => Promise<ComboboxItem[]>;
6
- onSelectionChange?: (firstLevel: ComboboxItem | null, secondLevel: ComboboxItem | null) => void;
7
- firstLevelLabel?: string;
8
- secondLevelLabel?: string;
9
- firstLevelPlaceholder?: string;
10
- secondLevelPlaceholder?: string;
11
- className?: string;
12
- debugMode?: boolean;
13
- displayLabel?: boolean;
14
- }
15
- export declare function TwoLevelCombobox({ firstLevelItems, fetchSecondLevelItems, onSelectionChange, firstLevelLabel, secondLevelLabel, firstLevelPlaceholder, className, debugMode, displayLabel, }: TwoLevelComboboxProps): React.JSX.Element;
1
+ import * as React_2 from 'react';
2
+
3
+ declare interface ComboboxItem {
4
+ value: string;
5
+ label: string;
6
+ icon?: React_2.ReactNode;
7
+ }
8
+
9
+ export declare function TwoLevelCombobox({ firstLevelItems, fetchSecondLevelItems, onSelectionChange, firstLevelLabel, secondLevelLabel, firstLevelPlaceholder, className, debugMode, displayLabel, }: TwoLevelComboboxProps): React_2.JSX.Element;
10
+
11
+ export declare interface TwoLevelComboboxProps {
12
+ firstLevelItems: ComboboxItem[];
13
+ fetchSecondLevelItems: (firstLevelId: string) => Promise<ComboboxItem[]>;
14
+ onSelectionChange?: (firstLevel: ComboboxItem | null, secondLevel: ComboboxItem | null) => void;
15
+ firstLevelLabel?: string;
16
+ secondLevelLabel?: string;
17
+ firstLevelPlaceholder?: string;
18
+ secondLevelPlaceholder?: string;
19
+ className?: string;
20
+ debugMode?: boolean;
21
+ displayLabel?: boolean;
22
+ }
23
+
24
+ export { }
@@ -0,0 +1,322 @@
1
+ # Markdown Editor/Viewer Component Implementation Checklist
2
+
3
+ ## Overview
4
+
5
+ This checklist tracks the implementation progress for the Markdown Editor/Viewer component based on `markdown-editor.spec.md`. The component will replace FormattedMessage.tsx while maintaining compatibility with the existing multimedia/embed system.
6
+
7
+ ### Implementation Strategy
8
+ - **6-Phase Approach**: Foundation → Multimedia → Suggestions → Streaming → Collaboration → Integration
9
+ - **Monorepo Strategy**:
10
+ - All editor-related development, including the main component (`SimpleEditor` evolving into `MarkdownEditorViewer`), UI primitives, hooks, and extensions, will be centralized within the **`@brainfish-ai/tiptap`** package.
11
+ - **Incremental Development**: Build on existing FormattedMessage.tsx and embed system patterns
12
+ - **TipTap Foundation**: Core editing engine with custom extensions
13
+ - **Backward Compatibility**: Seamless integration with existing codebase
14
+
15
+ ### Dependencies Setup
16
+ - [x] Install TipTap dependencies (@tiptap/react, @tiptap/starter-kit, @tiptap/extension-table, etc.)
17
+ - [ ] Install collaboration dependencies (yjs, y-webrtc, @tiptap/extension-collaboration)
18
+ - [x] Install markdown processing dependencies (remark, unified, rehype)
19
+ - [~] Verify existing dependencies (react-markdown, remark-gfm, @radix-ui/*, framer-motion)
20
+
21
+ ## Phase 1: Foundation and Basic Editor (Week 1-2)
22
+ **Objective**: Create basic TipTap editor with markdown conversion and mode switching
23
+
24
+ ### Core Component Structure
25
+ - [x] Create MarkdownEditorViewer component to lazy load ContentViewer and SimpleEditor component depending on mode
26
+ - [x] Adapt existing file structure in `packages/tiptap/` for new components (Viewer, Suggestions, etc.)
27
+ - [x] Implement lazy loading for Editor and Viewer modes within `MarkdownEditorViewer.tsx`
28
+ - [x] Add error boundaries
29
+
30
+ ### Markdown Translation Layer
31
+ - [x] Create `markdownTranslator.ts` utility
32
+ - [x] Implement markdown to TipTap JSON conversion using remark-gfm
33
+ - [x] Implement TipTap JSON to markdown conversion
34
+ - [x] Handle existing FormattedMessage content patterns (video prefixes, etc.)
35
+ - [x] Add proper error handling and fallbacks
36
+ - [x] Preserve multimedia embeds and custom HTML elements
37
+
38
+ ### Basic TipTap Editor
39
+ - [x] Initialize TipTap editor with StarterKit extensions
40
+ - [x] Apply consistent Tailwind classes matching FormattedMessage styling
41
+ - [x] Add focus management and event handling
42
+ - [x] Handle content updates and markdown conversion
43
+ - [x] Implement proper cleanup and memory management
44
+
45
+ ### Read-Only Viewer
46
+ - [x] Create `ViewerContent.tsx` component (as `SimpleViewer.tsx`)
47
+ - [x] Use TipTap's non-editable mode for viewing
48
+ - [x] Apply identical styling classes from FormattedMessage
49
+ - [x] Support all existing markdown features (tables, lists, headings)
50
+ - [~] Implement proper link handling and UTM parameter addition
51
+ - [x] Handle streaming content display
52
+ - [x] Maintain consistent component rendering patterns
53
+
54
+ ### Mode Switching
55
+ - [x] Implement seamless edit/readonly mode switching
56
+ - [x] Preserve content during mode changes
57
+ - [x] Handle focus management during switches
58
+ - [ ] Test content integrity across mode changes
59
+
60
+ ### **Phase 1 Success Criteria**
61
+ - [ ] Editor initializes in under 500ms
62
+ - [ ] Mode switching completes in under 100ms
63
+ - [ ] Content preservation across all operations
64
+ - [ ] Styling consistency with FormattedMessage
65
+ - [ ] Unit tests passing for core functionality
66
+
67
+ ---
68
+
69
+ ## Phase 2: Multimedia System Integration (Week 3)
70
+ **Objective**: Integrate existing embed system and add multimedia handling capabilities
71
+
72
+ ### Multimedia Extension
73
+ - [x] Create `MultimediaExtension.ts` for TipTap in `@brainfish-ai/tiptap` package (as `image-upload-node-extension.ts` and `video-embed-extension.ts`)
74
+ - [x] Integrate with existing EmbedComponent system from embeds/index.tsx
75
+ - [~] Support all existing embed types (YouTube, Vimeo, Loom, etc.)
76
+ - [x] Implement drag-and-drop file uploads using react-dropzone patterns
77
+ - [ ] Handle paste event handling for URLs and files
78
+ - [x] Maintain consistency with FormattedMessage multimedia rendering
79
+ - [x] Add proper error handling for unsupported media types
80
+
81
+ ### Media Upload Component
82
+ - [x] Create `MediaUpload.tsx` component (as `image-upload-node.tsx`)
83
+ - [x] Use react-dropzone for file upload UI (custom implementation)
84
+ - [x] Implement progress indicators and validation
85
+ - [~] Handle multiple file types (images, videos, documents)
86
+ - [x] Add file size and type validation with error messages
87
+ - [x] Support drag-and-drop and click-to-upload interactions
88
+ - [x] Integrate with existing file upload utilities and styles
89
+
90
+ ### Media Renderer
91
+ - [x] Create `MediaRenderer.tsx` component (logic is inside node views)
92
+ - [x] Reuse existing embed components (Youtube, Vimeo, ZoomableImage, etc.)
93
+ - [x] Handle video content type prefixes and attachment redirects
94
+ - [x] Implement proper error states and loading indicators
95
+ - [~] Support all multimedia types defined in specification
96
+ - [x] Provide consistent styling and responsive behavior
97
+
98
+ ### Media Toolbar
99
+ - [x] Create `MediaToolbar.tsx` component (as part of `simple-editor.tsx`)
100
+ - [~] Add buttons for different media insertion types
101
+ - [x] Use existing UI components (Button, Tooltip, DropdownMenu)
102
+ - [x] Implement keyboard shortcuts for media insertion
103
+ - [x] Show appropriate icons using @phosphor-icons/react (custom icons used)
104
+ - [x] Integrate with TipTap editor commands for media insertion
105
+ - [ ] Provide contextual media editing options (resize, align, etc.)
106
+
107
+ ### **Phase 2 Success Criteria**
108
+ - [ ] 100% compatibility with existing embed system
109
+ - [ ] All FormattedMessage media types supported
110
+ - [ ] Drag-and-drop functionality working
111
+ - [ ] File upload with progress indicators
112
+ - [ ] Error handling for unsupported media
113
+ - [ ] Integration tests passing
114
+
115
+ ---
116
+
117
+ ## Phase 3: Suggestion System (Week 4)
118
+ **Objective**: Implement visual suggestion system with accept/reject functionality
119
+
120
+ ### Suggestion Extension
121
+ - [ ] Create `SuggestionExtension.ts` for TipTap in `@brainfish-ai/tiptap` package
122
+ - [ ] Add suggestion marks to document nodes with visual styling
123
+ - [ ] Implement three suggestion types: insert, delete, replace
124
+ - [ ] Provide keyboard navigation through suggestions (Tab/Shift-Tab)
125
+ - [ ] Handle suggestion acceptance and rejection with proper cleanup
126
+ - [ ] Track suggestion metadata (author, timestamp, reason)
127
+ - [ ] Implement conflict resolution for overlapping suggestions
128
+
129
+ ### Suggestion Visual Styles
130
+ - [ ] Create suggestion CSS styles with consistent color schemes
131
+ - [ ] Provide clear visual distinction between insert/delete/replace
132
+ - [ ] Implement hover and focus states for suggestions
133
+ - [ ] Support dark mode with appropriate color adjustments
134
+ - [ ] Maintain accessibility standards for color contrast
135
+ - [ ] Add smooth transitions for suggestion state changes
136
+
137
+ ### Suggestion List Component
138
+ - [ ] Create `SuggestionList.tsx` component
139
+ - [ ] Display all suggestions in sidebar panel
140
+ - [ ] Group suggestions by type with filtering options
141
+ - [ ] Show suggestion metadata (author, timestamp, reason)
142
+ - [ ] Implement batch accept/reject operations
143
+ - [ ] Add search and sorting functionality
144
+ - [ ] Use existing UI components (ScrollArea, Button, Badge)
145
+ - [ ] Implement keyboard navigation and focus management
146
+
147
+ ### Suggestion Navigation
148
+ - [ ] Create `useSuggestionNavigation` hook
149
+ - [ ] Manage active suggestion focus state
150
+ - [ ] Implement keyboard navigation between suggestions
151
+ - [ ] Provide methods for programmatic navigation
152
+ - [ ] Handle edge cases (no suggestions, deleted suggestions)
153
+ - [ ] Integrate with TipTap editor focus management
154
+ - [ ] Implement smooth scrolling to active suggestions
155
+
156
+ ### **Phase 3 Success Criteria**
157
+ - [ ] All suggestion types visually distinct
158
+ - [ ] Keyboard navigation working smoothly
159
+ - [ ] Accept/reject operations functioning
160
+ - [ ] Conflict resolution working
161
+ - [ ] Accessibility compliance verified
162
+ - [ ] Performance with large suggestion lists
163
+
164
+ ---
165
+
166
+ ## Phase 4: Streaming Content Support (Week 5)
167
+ **Objective**: Implement real-time streaming content functionality
168
+
169
+ ### Streaming Extension
170
+ - [ ] Create `StreamingExtension.ts` for TipTap in `@brainfish-ai/tiptap` package
171
+ - [ ] Handle real-time content insertion at document end
172
+ - [ ] Manage streaming state and prevent editing during streams
173
+ - [ ] Implement content buffering and batch updates for performance
174
+ - [ ] Provide visual indicators for streaming content
175
+ - [ ] Handle stream interruption and recovery gracefully
176
+ - [ ] Maintain document structure during streaming updates
177
+
178
+ ### Streaming Hook
179
+ - [ ] Create `useStreaming` hook
180
+ - [ ] Manage streaming state and content buffering
181
+ - [ ] Implement debounced content updates for performance
182
+ - [ ] Handle streaming errors and connection issues
183
+ - [ ] Provide streaming progress and status information
184
+ - [ ] Integrate with TipTap editor streaming extension
185
+ - [ ] Implement proper cleanup and memory management
186
+
187
+ ### Streaming Indicator Component
188
+ - [ ] Create `StreamingIndicator.tsx` component
189
+ - [ ] Show visual feedback during content streaming
190
+ - [ ] Display streaming progress and connection status
191
+ - [ ] Implement pulsing animation for active streaming
192
+ - [ ] Provide error states and retry functionality
193
+ - [ ] Use existing UI components (Progress, Badge, Button)
194
+ - [ ] Maintain consistent styling with rest of editor
195
+
196
+ ### Streaming Buffer Management
197
+ - [ ] Create `StreamingBuffer` utility class
198
+ - [ ] Manage content buffering and batch processing
199
+ - [ ] Implement intelligent content chunking for performance
200
+ - [ ] Handle malformed or incomplete streaming content
201
+ - [ ] Provide content validation and sanitization
202
+ - [ ] Implement backpressure handling for fast streams
203
+ - [ ] Maintain content integrity during streaming
204
+
205
+ ### **Phase 4 Success Criteria**
206
+ - [ ] Streaming content updates at 1000+ chars/second
207
+ - [ ] Buffer overflow protection working
208
+ - [ ] Error handling and recovery functioning
209
+ - [ ] Performance with large streams maintained
210
+ - [ ] Integration with editor state working
211
+ - [ ] Memory usage under control
212
+
213
+ ---
214
+
215
+ ## Phase 5: Collaboration Features (Week 6)
216
+ **Objective**: Implement real-time collaboration with cursors and presence
217
+
218
+ ### Collaboration Extension
219
+ - [ ] Create `CollaborationExtension.ts` in `@brainfish-ai/tiptap` package
220
+ - [ ] Integrate with Yjs for operational transformation
221
+ - [ ] Implement real-time cursor tracking and presence
222
+ - [ ] Handle conflict resolution for simultaneous edits
223
+ - [ ] Provide user identification and avatar display
224
+ - [ ] Implement connection management and reconnection
225
+ - [ ] Maintain document consistency across all clients
226
+
227
+ ### Collaborator Components
228
+ - [ ] Create `CollaboratorList.tsx` component
229
+ - [ ] Show all active collaborators with avatars and names
230
+ - [ ] Display real-time presence indicators (typing, idle, away)
231
+ - [ ] Implement user color coding for cursor identification
232
+ - [ ] Show connection status for each collaborator
233
+ - [ ] Use existing UI components (Avatar, Badge, Tooltip)
234
+ - [ ] Handle user interactions like viewing collaborator location
235
+
236
+ ### Cursor Management System
237
+ - [ ] Create `CollaboratorCursor.tsx` component
238
+ - [ ] Render real-time cursor positions for all collaborators
239
+ - [ ] Show user names and colors for cursor identification
240
+ - [ ] Implement smooth cursor animations and transitions
241
+ - [ ] Handle cursor visibility based on viewport
242
+ - [ ] Provide selection range indicators for collaborators
243
+ - [ ] Integrate with TipTap collaboration cursor system
244
+
245
+ ### Presence Management
246
+ - [ ] Create `useCollaborationPresence` hook
247
+ - [ ] Manage user presence state (active, idle, away)
248
+ - [ ] Implement typing indicators with debounced updates
249
+ - [ ] Handle connection status and reconnection logic
250
+ - [ ] Provide methods for sending presence updates
251
+ - [ ] Manage awareness state for all collaborators
252
+ - [ ] Implement proper cleanup and memory management
253
+
254
+ ### **Phase 5 Success Criteria**
255
+ - [ ] Real-time collaboration working
256
+ - [ ] Cursor synchronization accurate
257
+ - [ ] Conflict resolution functioning
258
+ - [ ] Connection handling robust
259
+ - [ ] Presence indicators working
260
+ - [ ] Performance with multiple users maintained
261
+
262
+ ---
263
+
264
+ ## Phase 6: Integration and Polish (Week 7-8)
265
+ **Objective**: Complete integration, testing, and production readiness
266
+
267
+ ### FormattedMessage Migration
268
+ - [ ] Create migration utilities for seamless replacement
269
+ - [ ] Maintain backward compatibility with existing props
270
+ - [ ] Implement feature flags for gradual rollout
271
+ - [ ] Provide fallback mechanisms for unsupported features
272
+ - [ ] Handle existing content migration and formatting preservation
273
+ - [ ] Create migration wrapper component for compatibility
274
+
275
+ ### Comprehensive Error Handling
276
+ - [ ] Implement global error boundaries for graceful degradation
277
+ - [ ] Provide detailed error reporting and logging
278
+ - [ ] Handle network failures and API errors gracefully
279
+ - [ ] Implement retry mechanisms for recoverable errors
280
+ - [ ] Provide user-friendly error messages and recovery actions
281
+ - [ ] Integrate with existing error tracking systems
282
+
283
+ ### Performance Optimization
284
+ - [ ] Implement React.memo and useMemo for expensive operations
285
+ - [ ] Add virtual scrolling for large documents
286
+ - [ ] Optimize bundle size with dynamic imports
287
+ - [ ] Implement debouncing for frequent operations
288
+ - [ ] Use web workers for heavy computations
289
+ - [ ] Implement efficient re-rendering strategies
290
+
291
+ ### Accessibility Implementation
292
+ - [ ] Provide proper ARIA labels and roles for all interactive elements
293
+ - [ ] Implement keyboard navigation for all functionality
294
+ - [ ] Support screen readers with descriptive text and live regions
295
+ - [ ] Maintain focus management during mode switches and updates
296
+ - [ ] Provide high contrast mode support
297
+ - [ ] Verify color contrast ratios throughout interface
298
+
299
+ ### Comprehensive Testing Suite
300
+ - [ ] Create unit tests for all major components
301
+ - [ ] Implement integration tests for workflows
302
+ - [ ] Add visual regression testing for UI components
303
+ - [ ] Test accessibility features with automated tools
304
+ - [ ] Include performance benchmarks and memory leak detection
305
+ - [ ] Test cross-browser compatibility
306
+ - [ ] Implement end-to-end testing scenarios
307
+
308
+ ### Documentation and Migration Guide
309
+ - [ ] Create API documentation for all components
310
+ - [ ] Write migration guide from FormattedMessage
311
+ - [ ] Document all prop interfaces and callbacks
312
+ - [ ] Provide usage examples and best practices
313
+ - [ ] Create troubleshooting guide
314
+ - [ ] Document performance considerations
315
+
316
+ ### **Phase 6 Success Criteria**
317
+ - [ ] All functionality working end-to-end
318
+ - [ ] Performance benchmarks met (initialization < 500ms, typing lag < 50ms)
319
+ - [ ] Accessibility compliance verified (WCAG 2.1 AA)
320
+ - [ ] Cross-browser testing complete
321
+ - [ ] Migration path validated
322
+ - [ ] Production deployment ready