@agent-native/toolkit 0.0.0-beta-20260819143124

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 (1070) hide show
  1. package/README.md +151 -0
  2. package/agent-native.eject.json +588 -0
  3. package/dist/app-shell/header-actions.d.ts +18 -0
  4. package/dist/app-shell/header-actions.d.ts.map +1 -0
  5. package/dist/app-shell/header-actions.js +52 -0
  6. package/dist/app-shell/header-actions.js.map +1 -0
  7. package/dist/app-shell/index.d.ts +3 -0
  8. package/dist/app-shell/index.d.ts.map +1 -0
  9. package/dist/app-shell/index.js +3 -0
  10. package/dist/app-shell/index.js.map +1 -0
  11. package/dist/app-shell/sidebar-footer-actions.d.ts +14 -0
  12. package/dist/app-shell/sidebar-footer-actions.d.ts.map +1 -0
  13. package/dist/app-shell/sidebar-footer-actions.js +10 -0
  14. package/dist/app-shell/sidebar-footer-actions.js.map +1 -0
  15. package/dist/app-shell/sidebar-footer-actions.spec.d.ts +2 -0
  16. package/dist/app-shell/sidebar-footer-actions.spec.d.ts.map +1 -0
  17. package/dist/app-shell/sidebar-footer-actions.spec.js +43 -0
  18. package/dist/app-shell/sidebar-footer-actions.spec.js.map +1 -0
  19. package/dist/canvas-annotations/CanvasCommentPins.d.ts +68 -0
  20. package/dist/canvas-annotations/CanvasCommentPins.d.ts.map +1 -0
  21. package/dist/canvas-annotations/CanvasCommentPins.js +513 -0
  22. package/dist/canvas-annotations/CanvasCommentPins.js.map +1 -0
  23. package/dist/canvas-annotations/DrawOverlay.d.ts +108 -0
  24. package/dist/canvas-annotations/DrawOverlay.d.ts.map +1 -0
  25. package/dist/canvas-annotations/DrawOverlay.js +746 -0
  26. package/dist/canvas-annotations/DrawOverlay.js.map +1 -0
  27. package/dist/canvas-annotations/DrawOverlay.spec.d.ts +2 -0
  28. package/dist/canvas-annotations/DrawOverlay.spec.d.ts.map +1 -0
  29. package/dist/canvas-annotations/DrawOverlay.spec.js +111 -0
  30. package/dist/canvas-annotations/DrawOverlay.spec.js.map +1 -0
  31. package/dist/canvas-annotations/index.d.ts +4 -0
  32. package/dist/canvas-annotations/index.d.ts.map +1 -0
  33. package/dist/canvas-annotations/index.js +3 -0
  34. package/dist/canvas-annotations/index.js.map +1 -0
  35. package/dist/canvas-annotations/types.d.ts +8 -0
  36. package/dist/canvas-annotations/types.d.ts.map +1 -0
  37. package/dist/canvas-annotations/types.js +2 -0
  38. package/dist/canvas-annotations/types.js.map +1 -0
  39. package/dist/canvas-interactions/canvas-interactions.d.ts +334 -0
  40. package/dist/canvas-interactions/canvas-interactions.d.ts.map +1 -0
  41. package/dist/canvas-interactions/canvas-interactions.js +486 -0
  42. package/dist/canvas-interactions/canvas-interactions.js.map +1 -0
  43. package/dist/canvas-interactions/canvas-interactions.spec.d.ts +2 -0
  44. package/dist/canvas-interactions/canvas-interactions.spec.d.ts.map +1 -0
  45. package/dist/canvas-interactions/canvas-interactions.spec.js +593 -0
  46. package/dist/canvas-interactions/canvas-interactions.spec.js.map +1 -0
  47. package/dist/canvas-interactions/index.d.ts +2 -0
  48. package/dist/canvas-interactions/index.d.ts.map +1 -0
  49. package/dist/canvas-interactions/index.js +2 -0
  50. package/dist/canvas-interactions/index.js.map +1 -0
  51. package/dist/chat-history/ChatHistoryList.d.ts +103 -0
  52. package/dist/chat-history/ChatHistoryList.d.ts.map +1 -0
  53. package/dist/chat-history/ChatHistoryList.js +102 -0
  54. package/dist/chat-history/ChatHistoryList.js.map +1 -0
  55. package/dist/chat-history/ChatHistoryList.spec.d.ts +2 -0
  56. package/dist/chat-history/ChatHistoryList.spec.d.ts.map +1 -0
  57. package/dist/chat-history/ChatHistoryList.spec.js +293 -0
  58. package/dist/chat-history/ChatHistoryList.spec.js.map +1 -0
  59. package/dist/chat-history/ChatHistoryRail.d.ts +33 -0
  60. package/dist/chat-history/ChatHistoryRail.d.ts.map +1 -0
  61. package/dist/chat-history/ChatHistoryRail.js +35 -0
  62. package/dist/chat-history/ChatHistoryRail.js.map +1 -0
  63. package/dist/chat-history/ChatHistoryRail.spec.d.ts +2 -0
  64. package/dist/chat-history/ChatHistoryRail.spec.d.ts.map +1 -0
  65. package/dist/chat-history/ChatHistoryRail.spec.js +157 -0
  66. package/dist/chat-history/ChatHistoryRail.spec.js.map +1 -0
  67. package/dist/chat-history/index.d.ts +4 -0
  68. package/dist/chat-history/index.d.ts.map +1 -0
  69. package/dist/chat-history/index.js +4 -0
  70. package/dist/chat-history/index.js.map +1 -0
  71. package/dist/chat-history/useChatHistoryRailController.d.ts +26 -0
  72. package/dist/chat-history/useChatHistoryRailController.d.ts.map +1 -0
  73. package/dist/chat-history/useChatHistoryRailController.js +36 -0
  74. package/dist/chat-history/useChatHistoryRailController.js.map +1 -0
  75. package/dist/chat-history/useChatHistoryRailController.spec.d.ts +2 -0
  76. package/dist/chat-history/useChatHistoryRailController.spec.d.ts.map +1 -0
  77. package/dist/chat-history/useChatHistoryRailController.spec.js +101 -0
  78. package/dist/chat-history/useChatHistoryRailController.spec.js.map +1 -0
  79. package/dist/chat-history.css +469 -0
  80. package/dist/collab-ui/AgentPresenceChip.d.ts +12 -0
  81. package/dist/collab-ui/AgentPresenceChip.d.ts.map +1 -0
  82. package/dist/collab-ui/AgentPresenceChip.js +42 -0
  83. package/dist/collab-ui/AgentPresenceChip.js.map +1 -0
  84. package/dist/collab-ui/LiveCursorOverlay.d.ts +46 -0
  85. package/dist/collab-ui/LiveCursorOverlay.d.ts.map +1 -0
  86. package/dist/collab-ui/LiveCursorOverlay.js +125 -0
  87. package/dist/collab-ui/LiveCursorOverlay.js.map +1 -0
  88. package/dist/collab-ui/PresenceBar.d.ts +30 -0
  89. package/dist/collab-ui/PresenceBar.d.ts.map +1 -0
  90. package/dist/collab-ui/PresenceBar.js +172 -0
  91. package/dist/collab-ui/PresenceBar.js.map +1 -0
  92. package/dist/collab-ui/PresenceBar.spec.d.ts +2 -0
  93. package/dist/collab-ui/PresenceBar.spec.d.ts.map +1 -0
  94. package/dist/collab-ui/PresenceBar.spec.js +30 -0
  95. package/dist/collab-ui/PresenceBar.spec.js.map +1 -0
  96. package/dist/collab-ui/RecentEditHighlights.d.ts +46 -0
  97. package/dist/collab-ui/RecentEditHighlights.d.ts.map +1 -0
  98. package/dist/collab-ui/RecentEditHighlights.js +154 -0
  99. package/dist/collab-ui/RecentEditHighlights.js.map +1 -0
  100. package/dist/collab-ui/RemoteSelectionRings.d.ts +53 -0
  101. package/dist/collab-ui/RemoteSelectionRings.d.ts.map +1 -0
  102. package/dist/collab-ui/RemoteSelectionRings.js +130 -0
  103. package/dist/collab-ui/RemoteSelectionRings.js.map +1 -0
  104. package/dist/collab-ui/agent-identity.d.ts +9 -0
  105. package/dist/collab-ui/agent-identity.d.ts.map +1 -0
  106. package/dist/collab-ui/agent-identity.js +9 -0
  107. package/dist/collab-ui/agent-identity.js.map +1 -0
  108. package/dist/collab-ui/index.d.ts +9 -0
  109. package/dist/collab-ui/index.d.ts.map +1 -0
  110. package/dist/collab-ui/index.js +9 -0
  111. package/dist/collab-ui/index.js.map +1 -0
  112. package/dist/collab-ui/lead-client.d.ts +3 -0
  113. package/dist/collab-ui/lead-client.d.ts.map +1 -0
  114. package/dist/collab-ui/lead-client.js +29 -0
  115. package/dist/collab-ui/lead-client.js.map +1 -0
  116. package/dist/collab-ui/types.d.ts +48 -0
  117. package/dist/collab-ui/types.d.ts.map +1 -0
  118. package/dist/collab-ui/types.js +52 -0
  119. package/dist/collab-ui/types.js.map +1 -0
  120. package/dist/collab-ui/types.spec.d.ts +2 -0
  121. package/dist/collab-ui/types.spec.d.ts.map +1 -0
  122. package/dist/collab-ui/types.spec.js +15 -0
  123. package/dist/collab-ui/types.spec.js.map +1 -0
  124. package/dist/composer/AgentComposerFrame.d.ts +19 -0
  125. package/dist/composer/AgentComposerFrame.d.ts.map +1 -0
  126. package/dist/composer/AgentComposerFrame.js +17 -0
  127. package/dist/composer/AgentComposerFrame.js.map +1 -0
  128. package/dist/composer/ComposerPlusMenu.d.ts +30 -0
  129. package/dist/composer/ComposerPlusMenu.d.ts.map +1 -0
  130. package/dist/composer/ComposerPlusMenu.js +635 -0
  131. package/dist/composer/ComposerPlusMenu.js.map +1 -0
  132. package/dist/composer/ComposerPlusMenu.spec.d.ts +2 -0
  133. package/dist/composer/ComposerPlusMenu.spec.d.ts.map +1 -0
  134. package/dist/composer/ComposerPlusMenu.spec.js +12 -0
  135. package/dist/composer/ComposerPlusMenu.spec.js.map +1 -0
  136. package/dist/composer/MentionPopover.d.ts +29 -0
  137. package/dist/composer/MentionPopover.d.ts.map +1 -0
  138. package/dist/composer/MentionPopover.js +221 -0
  139. package/dist/composer/MentionPopover.js.map +1 -0
  140. package/dist/composer/PastedTextChip.d.ts +9 -0
  141. package/dist/composer/PastedTextChip.d.ts.map +1 -0
  142. package/dist/composer/PastedTextChip.js +71 -0
  143. package/dist/composer/PastedTextChip.js.map +1 -0
  144. package/dist/composer/PastedTextChip.spec.d.ts +2 -0
  145. package/dist/composer/PastedTextChip.spec.d.ts.map +1 -0
  146. package/dist/composer/PastedTextChip.spec.js +42 -0
  147. package/dist/composer/PastedTextChip.spec.js.map +1 -0
  148. package/dist/composer/PromptComposer.d.ts +151 -0
  149. package/dist/composer/PromptComposer.d.ts.map +1 -0
  150. package/dist/composer/PromptComposer.js +322 -0
  151. package/dist/composer/PromptComposer.js.map +1 -0
  152. package/dist/composer/PromptComposer.spec.d.ts +2 -0
  153. package/dist/composer/PromptComposer.spec.d.ts.map +1 -0
  154. package/dist/composer/PromptComposer.spec.js +87 -0
  155. package/dist/composer/PromptComposer.spec.js.map +1 -0
  156. package/dist/composer/RealtimeVoiceMode.d.ts +108 -0
  157. package/dist/composer/RealtimeVoiceMode.d.ts.map +1 -0
  158. package/dist/composer/RealtimeVoiceMode.js +312 -0
  159. package/dist/composer/RealtimeVoiceMode.js.map +1 -0
  160. package/dist/composer/RealtimeVoiceMode.spec.d.ts +2 -0
  161. package/dist/composer/RealtimeVoiceMode.spec.d.ts.map +1 -0
  162. package/dist/composer/RealtimeVoiceMode.spec.js +540 -0
  163. package/dist/composer/RealtimeVoiceMode.spec.js.map +1 -0
  164. package/dist/composer/TiptapComposer.d.ts +288 -0
  165. package/dist/composer/TiptapComposer.d.ts.map +1 -0
  166. package/dist/composer/TiptapComposer.js +2233 -0
  167. package/dist/composer/TiptapComposer.js.map +1 -0
  168. package/dist/composer/TiptapComposer.spec.d.ts +2 -0
  169. package/dist/composer/TiptapComposer.spec.d.ts.map +1 -0
  170. package/dist/composer/TiptapComposer.spec.js +415 -0
  171. package/dist/composer/TiptapComposer.spec.js.map +1 -0
  172. package/dist/composer/VoiceButton.d.ts +27 -0
  173. package/dist/composer/VoiceButton.d.ts.map +1 -0
  174. package/dist/composer/VoiceButton.js +151 -0
  175. package/dist/composer/VoiceButton.js.map +1 -0
  176. package/dist/composer/VoiceButton.spec.d.ts +2 -0
  177. package/dist/composer/VoiceButton.spec.d.ts.map +1 -0
  178. package/dist/composer/VoiceButton.spec.js +27 -0
  179. package/dist/composer/VoiceButton.spec.js.map +1 -0
  180. package/dist/composer/asset-picker-url.d.ts +16 -0
  181. package/dist/composer/asset-picker-url.d.ts.map +1 -0
  182. package/dist/composer/asset-picker-url.js +64 -0
  183. package/dist/composer/asset-picker-url.js.map +1 -0
  184. package/dist/composer/asset-picker-url.spec.d.ts +2 -0
  185. package/dist/composer/asset-picker-url.spec.d.ts.map +1 -0
  186. package/dist/composer/asset-picker-url.spec.js +23 -0
  187. package/dist/composer/asset-picker-url.spec.js.map +1 -0
  188. package/dist/composer/attachment-accept.d.ts +9 -0
  189. package/dist/composer/attachment-accept.d.ts.map +1 -0
  190. package/dist/composer/attachment-accept.js +69 -0
  191. package/dist/composer/attachment-accept.js.map +1 -0
  192. package/dist/composer/attachment-accept.spec.d.ts +2 -0
  193. package/dist/composer/attachment-accept.spec.d.ts.map +1 -0
  194. package/dist/composer/attachment-accept.spec.js +24 -0
  195. package/dist/composer/attachment-accept.spec.js.map +1 -0
  196. package/dist/composer/draft-key.d.ts +2 -0
  197. package/dist/composer/draft-key.d.ts.map +1 -0
  198. package/dist/composer/draft-key.js +8 -0
  199. package/dist/composer/draft-key.js.map +1 -0
  200. package/dist/composer/draft-key.spec.d.ts +2 -0
  201. package/dist/composer/draft-key.spec.d.ts.map +1 -0
  202. package/dist/composer/draft-key.spec.js +13 -0
  203. package/dist/composer/draft-key.spec.js.map +1 -0
  204. package/dist/composer/extensions/FileReference.d.ts +3 -0
  205. package/dist/composer/extensions/FileReference.d.ts.map +1 -0
  206. package/dist/composer/extensions/FileReference.js +36 -0
  207. package/dist/composer/extensions/FileReference.js.map +1 -0
  208. package/dist/composer/extensions/MentionReference.d.ts +3 -0
  209. package/dist/composer/extensions/MentionReference.d.ts.map +1 -0
  210. package/dist/composer/extensions/MentionReference.js +66 -0
  211. package/dist/composer/extensions/MentionReference.js.map +1 -0
  212. package/dist/composer/extensions/SkillReference.d.ts +3 -0
  213. package/dist/composer/extensions/SkillReference.d.ts.map +1 -0
  214. package/dist/composer/extensions/SkillReference.js +40 -0
  215. package/dist/composer/extensions/SkillReference.js.map +1 -0
  216. package/dist/composer/index.d.ts +16 -0
  217. package/dist/composer/index.d.ts.map +1 -0
  218. package/dist/composer/index.js +14 -0
  219. package/dist/composer/index.js.map +1 -0
  220. package/dist/composer/model-selection.d.ts +12 -0
  221. package/dist/composer/model-selection.d.ts.map +1 -0
  222. package/dist/composer/model-selection.js +31 -0
  223. package/dist/composer/model-selection.js.map +1 -0
  224. package/dist/composer/model-selection.spec.d.ts +2 -0
  225. package/dist/composer/model-selection.spec.d.ts.map +1 -0
  226. package/dist/composer/model-selection.spec.js +38 -0
  227. package/dist/composer/model-selection.spec.js.map +1 -0
  228. package/dist/composer/pasted-text.d.ts +31 -0
  229. package/dist/composer/pasted-text.d.ts.map +1 -0
  230. package/dist/composer/pasted-text.js +130 -0
  231. package/dist/composer/pasted-text.js.map +1 -0
  232. package/dist/composer/pasted-text.spec.d.ts +2 -0
  233. package/dist/composer/pasted-text.spec.d.ts.map +1 -0
  234. package/dist/composer/pasted-text.spec.js +107 -0
  235. package/dist/composer/pasted-text.spec.js.map +1 -0
  236. package/dist/composer/prompt-attachments.d.ts +18 -0
  237. package/dist/composer/prompt-attachments.d.ts.map +1 -0
  238. package/dist/composer/prompt-attachments.js +65 -0
  239. package/dist/composer/prompt-attachments.js.map +1 -0
  240. package/dist/composer/prompt-attachments.spec.d.ts +2 -0
  241. package/dist/composer/prompt-attachments.spec.d.ts.map +1 -0
  242. package/dist/composer/prompt-attachments.spec.js +63 -0
  243. package/dist/composer/prompt-attachments.spec.js.map +1 -0
  244. package/dist/composer/realtime-voice-audio-level.d.ts +14 -0
  245. package/dist/composer/realtime-voice-audio-level.d.ts.map +1 -0
  246. package/dist/composer/realtime-voice-audio-level.js +48 -0
  247. package/dist/composer/realtime-voice-audio-level.js.map +1 -0
  248. package/dist/composer/realtime-voice-audio-level.spec.d.ts +2 -0
  249. package/dist/composer/realtime-voice-audio-level.spec.d.ts.map +1 -0
  250. package/dist/composer/realtime-voice-audio-level.spec.js +32 -0
  251. package/dist/composer/realtime-voice-audio-level.spec.js.map +1 -0
  252. package/dist/composer/realtime-voice-transcript.d.ts +26 -0
  253. package/dist/composer/realtime-voice-transcript.d.ts.map +1 -0
  254. package/dist/composer/realtime-voice-transcript.js +103 -0
  255. package/dist/composer/realtime-voice-transcript.js.map +1 -0
  256. package/dist/composer/realtime-voice-transcript.spec.d.ts +2 -0
  257. package/dist/composer/realtime-voice-transcript.spec.d.ts.map +1 -0
  258. package/dist/composer/realtime-voice-transcript.spec.js +76 -0
  259. package/dist/composer/realtime-voice-transcript.spec.js.map +1 -0
  260. package/dist/composer/runtime-adapters.d.ts +169 -0
  261. package/dist/composer/runtime-adapters.d.ts.map +1 -0
  262. package/dist/composer/runtime-adapters.js +141 -0
  263. package/dist/composer/runtime-adapters.js.map +1 -0
  264. package/dist/composer/runtime-adapters.spec.d.ts +2 -0
  265. package/dist/composer/runtime-adapters.spec.d.ts.map +1 -0
  266. package/dist/composer/runtime-adapters.spec.js +69 -0
  267. package/dist/composer/runtime-adapters.spec.js.map +1 -0
  268. package/dist/composer/types.d.ts +60 -0
  269. package/dist/composer/types.d.ts.map +1 -0
  270. package/dist/composer/types.js +2 -0
  271. package/dist/composer/types.js.map +1 -0
  272. package/dist/composer/use-file-search.d.ts +6 -0
  273. package/dist/composer/use-file-search.d.ts.map +1 -0
  274. package/dist/composer/use-file-search.js +53 -0
  275. package/dist/composer/use-file-search.js.map +1 -0
  276. package/dist/composer/use-mention-search.d.ts +6 -0
  277. package/dist/composer/use-mention-search.d.ts.map +1 -0
  278. package/dist/composer/use-mention-search.js +75 -0
  279. package/dist/composer/use-mention-search.js.map +1 -0
  280. package/dist/composer/use-skills.d.ts +7 -0
  281. package/dist/composer/use-skills.d.ts.map +1 -0
  282. package/dist/composer/use-skills.js +40 -0
  283. package/dist/composer/use-skills.js.map +1 -0
  284. package/dist/composer/useRealtimeVoiceMode.d.ts +189 -0
  285. package/dist/composer/useRealtimeVoiceMode.d.ts.map +1 -0
  286. package/dist/composer/useRealtimeVoiceMode.js +1899 -0
  287. package/dist/composer/useRealtimeVoiceMode.js.map +1 -0
  288. package/dist/composer/useRealtimeVoiceMode.spec.d.ts +2 -0
  289. package/dist/composer/useRealtimeVoiceMode.spec.d.ts.map +1 -0
  290. package/dist/composer/useRealtimeVoiceMode.spec.js +716 -0
  291. package/dist/composer/useRealtimeVoiceMode.spec.js.map +1 -0
  292. package/dist/composer/useVoiceDictation.browser.spec.d.ts +2 -0
  293. package/dist/composer/useVoiceDictation.browser.spec.d.ts.map +1 -0
  294. package/dist/composer/useVoiceDictation.browser.spec.js +220 -0
  295. package/dist/composer/useVoiceDictation.browser.spec.js.map +1 -0
  296. package/dist/composer/useVoiceDictation.d.ts +58 -0
  297. package/dist/composer/useVoiceDictation.d.ts.map +1 -0
  298. package/dist/composer/useVoiceDictation.js +1058 -0
  299. package/dist/composer/useVoiceDictation.js.map +1 -0
  300. package/dist/composer/useVoiceDictation.spec.d.ts +2 -0
  301. package/dist/composer/useVoiceDictation.spec.d.ts.map +1 -0
  302. package/dist/composer/useVoiceDictation.spec.js +32 -0
  303. package/dist/composer/useVoiceDictation.spec.js.map +1 -0
  304. package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts +7 -0
  305. package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts.map +1 -0
  306. package/dist/conformance/__fixtures__/css-in-js-adapter.js +84 -0
  307. package/dist/conformance/__fixtures__/css-in-js-adapter.js.map +1 -0
  308. package/dist/conformance/conformance.spec.d.ts +2 -0
  309. package/dist/conformance/conformance.spec.d.ts.map +1 -0
  310. package/dist/conformance/conformance.spec.js +87 -0
  311. package/dist/conformance/conformance.spec.js.map +1 -0
  312. package/dist/conformance/index.d.ts +4 -0
  313. package/dist/conformance/index.d.ts.map +1 -0
  314. package/dist/conformance/index.js +4 -0
  315. package/dist/conformance/index.js.map +1 -0
  316. package/dist/conformance/runner.d.ts +12 -0
  317. package/dist/conformance/runner.d.ts.map +1 -0
  318. package/dist/conformance/runner.js +515 -0
  319. package/dist/conformance/runner.js.map +1 -0
  320. package/dist/conformance/types.d.ts +26 -0
  321. package/dist/conformance/types.d.ts.map +1 -0
  322. package/dist/conformance/types.js +13 -0
  323. package/dist/conformance/types.js.map +1 -0
  324. package/dist/conformance/version.d.ts +6 -0
  325. package/dist/conformance/version.d.ts.map +1 -0
  326. package/dist/conformance/version.js +14 -0
  327. package/dist/conformance/version.js.map +1 -0
  328. package/dist/context-ui/ContextMeter.d.ts +11 -0
  329. package/dist/context-ui/ContextMeter.d.ts.map +1 -0
  330. package/dist/context-ui/ContextMeter.js +40 -0
  331. package/dist/context-ui/ContextMeter.js.map +1 -0
  332. package/dist/context-ui/ContextMeter.spec.d.ts +2 -0
  333. package/dist/context-ui/ContextMeter.spec.d.ts.map +1 -0
  334. package/dist/context-ui/ContextMeter.spec.js +52 -0
  335. package/dist/context-ui/ContextMeter.spec.js.map +1 -0
  336. package/dist/context-ui/ContextSegmentRow.d.ts +16 -0
  337. package/dist/context-ui/ContextSegmentRow.d.ts.map +1 -0
  338. package/dist/context-ui/ContextSegmentRow.js +92 -0
  339. package/dist/context-ui/ContextSegmentRow.js.map +1 -0
  340. package/dist/context-ui/ContextTreemap.d.ts +8 -0
  341. package/dist/context-ui/ContextTreemap.d.ts.map +1 -0
  342. package/dist/context-ui/ContextTreemap.js +58 -0
  343. package/dist/context-ui/ContextTreemap.js.map +1 -0
  344. package/dist/context-ui/ContextXRayPanel.d.ts +14 -0
  345. package/dist/context-ui/ContextXRayPanel.d.ts.map +1 -0
  346. package/dist/context-ui/ContextXRayPanel.js +209 -0
  347. package/dist/context-ui/ContextXRayPanel.js.map +1 -0
  348. package/dist/context-ui/format.d.ts +6 -0
  349. package/dist/context-ui/format.d.ts.map +1 -0
  350. package/dist/context-ui/format.js +58 -0
  351. package/dist/context-ui/format.js.map +1 -0
  352. package/dist/context-ui/index.d.ts +7 -0
  353. package/dist/context-ui/index.d.ts.map +1 -0
  354. package/dist/context-ui/index.js +6 -0
  355. package/dist/context-ui/index.js.map +1 -0
  356. package/dist/context-ui/types.d.ts +41 -0
  357. package/dist/context-ui/types.d.ts.map +1 -0
  358. package/dist/context-ui/types.js +8 -0
  359. package/dist/context-ui/types.js.map +1 -0
  360. package/dist/dashboard/DataTable.d.ts +20 -0
  361. package/dist/dashboard/DataTable.d.ts.map +1 -0
  362. package/dist/dashboard/DataTable.js +87 -0
  363. package/dist/dashboard/DataTable.js.map +1 -0
  364. package/dist/dashboard/DateRangePicker.d.ts +15 -0
  365. package/dist/dashboard/DateRangePicker.d.ts.map +1 -0
  366. package/dist/dashboard/DateRangePicker.js +15 -0
  367. package/dist/dashboard/DateRangePicker.js.map +1 -0
  368. package/dist/dashboard/GenericChartPanel.d.ts +57 -0
  369. package/dist/dashboard/GenericChartPanel.d.ts.map +1 -0
  370. package/dist/dashboard/GenericChartPanel.js +119 -0
  371. package/dist/dashboard/GenericChartPanel.js.map +1 -0
  372. package/dist/dashboard/GenericChartPanel.spec.d.ts +2 -0
  373. package/dist/dashboard/GenericChartPanel.spec.d.ts.map +1 -0
  374. package/dist/dashboard/GenericChartPanel.spec.js +41 -0
  375. package/dist/dashboard/GenericChartPanel.spec.js.map +1 -0
  376. package/dist/dashboard/MetricCard.d.ts +14 -0
  377. package/dist/dashboard/MetricCard.d.ts.map +1 -0
  378. package/dist/dashboard/MetricCard.js +10 -0
  379. package/dist/dashboard/MetricCard.js.map +1 -0
  380. package/dist/dashboard/StatsCard.d.ts +16 -0
  381. package/dist/dashboard/StatsCard.d.ts.map +1 -0
  382. package/dist/dashboard/StatsCard.js +8 -0
  383. package/dist/dashboard/StatsCard.js.map +1 -0
  384. package/dist/dashboard/dashboard-layout.d.ts +49 -0
  385. package/dist/dashboard/dashboard-layout.d.ts.map +1 -0
  386. package/dist/dashboard/dashboard-layout.js +231 -0
  387. package/dist/dashboard/dashboard-layout.js.map +1 -0
  388. package/dist/dashboard/dashboard-layout.spec.d.ts +2 -0
  389. package/dist/dashboard/dashboard-layout.spec.d.ts.map +1 -0
  390. package/dist/dashboard/dashboard-layout.spec.js +52 -0
  391. package/dist/dashboard/dashboard-layout.spec.js.map +1 -0
  392. package/dist/dashboard/index.d.ts +7 -0
  393. package/dist/dashboard/index.d.ts.map +1 -0
  394. package/dist/dashboard/index.js +7 -0
  395. package/dist/dashboard/index.js.map +1 -0
  396. package/dist/data-grid/DataGrid.d.ts +92 -0
  397. package/dist/data-grid/DataGrid.d.ts.map +1 -0
  398. package/dist/data-grid/DataGrid.js +315 -0
  399. package/dist/data-grid/DataGrid.js.map +1 -0
  400. package/dist/data-grid/DataGrid.spec.d.ts +2 -0
  401. package/dist/data-grid/DataGrid.spec.d.ts.map +1 -0
  402. package/dist/data-grid/DataGrid.spec.js +134 -0
  403. package/dist/data-grid/DataGrid.spec.js.map +1 -0
  404. package/dist/data-grid/index.d.ts +2 -0
  405. package/dist/data-grid/index.d.ts.map +1 -0
  406. package/dist/data-grid/index.js +2 -0
  407. package/dist/data-grid/index.js.map +1 -0
  408. package/dist/design-system/components.d.ts +58 -0
  409. package/dist/design-system/components.d.ts.map +1 -0
  410. package/dist/design-system/components.js +88 -0
  411. package/dist/design-system/components.js.map +1 -0
  412. package/dist/design-system/context.d.ts +11 -0
  413. package/dist/design-system/context.d.ts.map +1 -0
  414. package/dist/design-system/context.js +17 -0
  415. package/dist/design-system/context.js.map +1 -0
  416. package/dist/design-system/default-adapter.d.ts +3 -0
  417. package/dist/design-system/default-adapter.d.ts.map +1 -0
  418. package/dist/design-system/default-adapter.js +172 -0
  419. package/dist/design-system/default-adapter.js.map +1 -0
  420. package/dist/design-system/default-adapter.spec.d.ts +2 -0
  421. package/dist/design-system/default-adapter.spec.d.ts.map +1 -0
  422. package/dist/design-system/default-adapter.spec.js +108 -0
  423. package/dist/design-system/default-adapter.spec.js.map +1 -0
  424. package/dist/design-system/definition.d.ts +9 -0
  425. package/dist/design-system/definition.d.ts.map +1 -0
  426. package/dist/design-system/definition.js +4 -0
  427. package/dist/design-system/definition.js.map +1 -0
  428. package/dist/design-system/design-system.spec.d.ts +2 -0
  429. package/dist/design-system/design-system.spec.d.ts.map +1 -0
  430. package/dist/design-system/design-system.spec.js +208 -0
  431. package/dist/design-system/design-system.spec.js.map +1 -0
  432. package/dist/design-system/error-boundary.d.ts +18 -0
  433. package/dist/design-system/error-boundary.d.ts.map +1 -0
  434. package/dist/design-system/error-boundary.js +16 -0
  435. package/dist/design-system/error-boundary.js.map +1 -0
  436. package/dist/design-system/index.d.ts +8 -0
  437. package/dist/design-system/index.d.ts.map +1 -0
  438. package/dist/design-system/index.js +8 -0
  439. package/dist/design-system/index.js.map +1 -0
  440. package/dist/design-system/theme.d.ts +30 -0
  441. package/dist/design-system/theme.d.ts.map +1 -0
  442. package/dist/design-system/theme.js +95 -0
  443. package/dist/design-system/theme.js.map +1 -0
  444. package/dist/design-system/theme.spec.d.ts +2 -0
  445. package/dist/design-system/theme.spec.d.ts.map +1 -0
  446. package/dist/design-system/theme.spec.js +43 -0
  447. package/dist/design-system/theme.spec.js.map +1 -0
  448. package/dist/design-system/types.d.ts +292 -0
  449. package/dist/design-system/types.d.ts.map +1 -0
  450. package/dist/design-system/types.js +2 -0
  451. package/dist/design-system/types.js.map +1 -0
  452. package/dist/design-tweaks/index.d.ts +2 -0
  453. package/dist/design-tweaks/index.d.ts.map +1 -0
  454. package/dist/design-tweaks/index.js +2 -0
  455. package/dist/design-tweaks/index.js.map +1 -0
  456. package/dist/design-tweaks/scrub-input-utils.d.ts +61 -0
  457. package/dist/design-tweaks/scrub-input-utils.d.ts.map +1 -0
  458. package/dist/design-tweaks/scrub-input-utils.js +235 -0
  459. package/dist/design-tweaks/scrub-input-utils.js.map +1 -0
  460. package/dist/design-tweaks/scrub-input.d.ts +70 -0
  461. package/dist/design-tweaks/scrub-input.d.ts.map +1 -0
  462. package/dist/design-tweaks/scrub-input.js +319 -0
  463. package/dist/design-tweaks/scrub-input.js.map +1 -0
  464. package/dist/design-tweaks/visual-style-controls.d.ts +90 -0
  465. package/dist/design-tweaks/visual-style-controls.d.ts.map +1 -0
  466. package/dist/design-tweaks/visual-style-controls.js +423 -0
  467. package/dist/design-tweaks/visual-style-controls.js.map +1 -0
  468. package/dist/design-tweaks/visual-style-controls.spec.d.ts +2 -0
  469. package/dist/design-tweaks/visual-style-controls.spec.d.ts.map +1 -0
  470. package/dist/design-tweaks/visual-style-controls.spec.js +84 -0
  471. package/dist/design-tweaks/visual-style-controls.spec.js.map +1 -0
  472. package/dist/editor/BubbleToolbar.d.ts +37 -0
  473. package/dist/editor/BubbleToolbar.d.ts.map +1 -0
  474. package/dist/editor/BubbleToolbar.js +171 -0
  475. package/dist/editor/BubbleToolbar.js.map +1 -0
  476. package/dist/editor/CodeBlockNode.d.ts +49 -0
  477. package/dist/editor/CodeBlockNode.d.ts.map +1 -0
  478. package/dist/editor/CodeBlockNode.js +127 -0
  479. package/dist/editor/CodeBlockNode.js.map +1 -0
  480. package/dist/editor/DragHandle.d.ts +103 -0
  481. package/dist/editor/DragHandle.d.ts.map +1 -0
  482. package/dist/editor/DragHandle.js +1101 -0
  483. package/dist/editor/DragHandle.js.map +1 -0
  484. package/dist/editor/DragHandle.spec.d.ts +2 -0
  485. package/dist/editor/DragHandle.spec.d.ts.map +1 -0
  486. package/dist/editor/DragHandle.spec.js +495 -0
  487. package/dist/editor/DragHandle.spec.js.map +1 -0
  488. package/dist/editor/ImageExtension.d.ts +63 -0
  489. package/dist/editor/ImageExtension.d.ts.map +1 -0
  490. package/dist/editor/ImageExtension.js +243 -0
  491. package/dist/editor/ImageExtension.js.map +1 -0
  492. package/dist/editor/ImageExtension.roundtrip.spec.d.ts +2 -0
  493. package/dist/editor/ImageExtension.roundtrip.spec.d.ts.map +1 -0
  494. package/dist/editor/ImageExtension.roundtrip.spec.js +103 -0
  495. package/dist/editor/ImageExtension.roundtrip.spec.js.map +1 -0
  496. package/dist/editor/RegistryBlockContext.d.ts +68 -0
  497. package/dist/editor/RegistryBlockContext.d.ts.map +1 -0
  498. package/dist/editor/RegistryBlockContext.js +10 -0
  499. package/dist/editor/RegistryBlockContext.js.map +1 -0
  500. package/dist/editor/RegistryBlockNode.d.ts +66 -0
  501. package/dist/editor/RegistryBlockNode.d.ts.map +1 -0
  502. package/dist/editor/RegistryBlockNode.js +406 -0
  503. package/dist/editor/RegistryBlockNode.js.map +1 -0
  504. package/dist/editor/RegistryBlockNode.spec.d.ts +2 -0
  505. package/dist/editor/RegistryBlockNode.spec.d.ts.map +1 -0
  506. package/dist/editor/RegistryBlockNode.spec.js +215 -0
  507. package/dist/editor/RegistryBlockNode.spec.js.map +1 -0
  508. package/dist/editor/RichMarkdownEditor.collab.spec.d.ts +2 -0
  509. package/dist/editor/RichMarkdownEditor.collab.spec.d.ts.map +1 -0
  510. package/dist/editor/RichMarkdownEditor.collab.spec.js +65 -0
  511. package/dist/editor/RichMarkdownEditor.collab.spec.js.map +1 -0
  512. package/dist/editor/RichMarkdownEditor.d.ts +52 -0
  513. package/dist/editor/RichMarkdownEditor.d.ts.map +1 -0
  514. package/dist/editor/RichMarkdownEditor.js +38 -0
  515. package/dist/editor/RichMarkdownEditor.js.map +1 -0
  516. package/dist/editor/RichMarkdownEditor.roundtrip.spec.d.ts +2 -0
  517. package/dist/editor/RichMarkdownEditor.roundtrip.spec.d.ts.map +1 -0
  518. package/dist/editor/RichMarkdownEditor.roundtrip.spec.js +186 -0
  519. package/dist/editor/RichMarkdownEditor.roundtrip.spec.js.map +1 -0
  520. package/dist/editor/RunId.d.ts +28 -0
  521. package/dist/editor/RunId.d.ts.map +1 -0
  522. package/dist/editor/RunId.js +60 -0
  523. package/dist/editor/RunId.js.map +1 -0
  524. package/dist/editor/SharedRichEditor.d.ts +112 -0
  525. package/dist/editor/SharedRichEditor.d.ts.map +1 -0
  526. package/dist/editor/SharedRichEditor.js +159 -0
  527. package/dist/editor/SharedRichEditor.js.map +1 -0
  528. package/dist/editor/SharedRichEditor.spec.d.ts +2 -0
  529. package/dist/editor/SharedRichEditor.spec.d.ts.map +1 -0
  530. package/dist/editor/SharedRichEditor.spec.js +63 -0
  531. package/dist/editor/SharedRichEditor.spec.js.map +1 -0
  532. package/dist/editor/SlashCommandMenu.d.ts +59 -0
  533. package/dist/editor/SlashCommandMenu.d.ts.map +1 -0
  534. package/dist/editor/SlashCommandMenu.js +279 -0
  535. package/dist/editor/SlashCommandMenu.js.map +1 -0
  536. package/dist/editor/SlashCommandMenu.spec.d.ts +2 -0
  537. package/dist/editor/SlashCommandMenu.spec.d.ts.map +1 -0
  538. package/dist/editor/SlashCommandMenu.spec.js +67 -0
  539. package/dist/editor/SlashCommandMenu.spec.js.map +1 -0
  540. package/dist/editor/disableHistory.spec.d.ts +2 -0
  541. package/dist/editor/disableHistory.spec.d.ts.map +1 -0
  542. package/dist/editor/disableHistory.spec.js +73 -0
  543. package/dist/editor/disableHistory.spec.js.map +1 -0
  544. package/dist/editor/extensions.d.ts +178 -0
  545. package/dist/editor/extensions.d.ts.map +1 -0
  546. package/dist/editor/extensions.js +264 -0
  547. package/dist/editor/extensions.js.map +1 -0
  548. package/dist/editor/gfmDoc.d.ts +24 -0
  549. package/dist/editor/gfmDoc.d.ts.map +1 -0
  550. package/dist/editor/gfmDoc.js +83 -0
  551. package/dist/editor/gfmDoc.js.map +1 -0
  552. package/dist/editor/gfmDoc.spec.d.ts +2 -0
  553. package/dist/editor/gfmDoc.spec.d.ts.map +1 -0
  554. package/dist/editor/gfmDoc.spec.js +194 -0
  555. package/dist/editor/gfmDoc.spec.js.map +1 -0
  556. package/dist/editor/index.d.ts +16 -0
  557. package/dist/editor/index.d.ts.map +1 -0
  558. package/dist/editor/index.js +15 -0
  559. package/dist/editor/index.js.map +1 -0
  560. package/dist/editor/registrySlashCommands.d.ts +68 -0
  561. package/dist/editor/registrySlashCommands.d.ts.map +1 -0
  562. package/dist/editor/registrySlashCommands.js +51 -0
  563. package/dist/editor/registrySlashCommands.js.map +1 -0
  564. package/dist/editor/structuralReorderUndo.spec.d.ts +2 -0
  565. package/dist/editor/structuralReorderUndo.spec.d.ts.map +1 -0
  566. package/dist/editor/structuralReorderUndo.spec.js +120 -0
  567. package/dist/editor/structuralReorderUndo.spec.js.map +1 -0
  568. package/dist/editor/surgical-apply.d.ts +66 -0
  569. package/dist/editor/surgical-apply.d.ts.map +1 -0
  570. package/dist/editor/surgical-apply.js +147 -0
  571. package/dist/editor/surgical-apply.js.map +1 -0
  572. package/dist/editor/surgical-apply.spec.d.ts +2 -0
  573. package/dist/editor/surgical-apply.spec.d.ts.map +1 -0
  574. package/dist/editor/surgical-apply.spec.js +257 -0
  575. package/dist/editor/surgical-apply.spec.js.map +1 -0
  576. package/dist/editor/useCollabReconcile.concurrent.spec.d.ts +2 -0
  577. package/dist/editor/useCollabReconcile.concurrent.spec.d.ts.map +1 -0
  578. package/dist/editor/useCollabReconcile.concurrent.spec.js +641 -0
  579. package/dist/editor/useCollabReconcile.concurrent.spec.js.map +1 -0
  580. package/dist/editor/useCollabReconcile.d.ts +117 -0
  581. package/dist/editor/useCollabReconcile.d.ts.map +1 -0
  582. package/dist/editor/useCollabReconcile.idempotent.spec.d.ts +2 -0
  583. package/dist/editor/useCollabReconcile.idempotent.spec.d.ts.map +1 -0
  584. package/dist/editor/useCollabReconcile.idempotent.spec.js +248 -0
  585. package/dist/editor/useCollabReconcile.idempotent.spec.js.map +1 -0
  586. package/dist/editor/useCollabReconcile.js +521 -0
  587. package/dist/editor/useCollabReconcile.js.map +1 -0
  588. package/dist/editor.css +587 -0
  589. package/dist/hooks/index.d.ts +3 -0
  590. package/dist/hooks/index.d.ts.map +1 -0
  591. package/dist/hooks/index.js +3 -0
  592. package/dist/hooks/index.js.map +1 -0
  593. package/dist/hooks/use-mobile.d.ts +2 -0
  594. package/dist/hooks/use-mobile.d.ts.map +1 -0
  595. package/dist/hooks/use-mobile.js +16 -0
  596. package/dist/hooks/use-mobile.js.map +1 -0
  597. package/dist/hooks/use-toast.d.ts +45 -0
  598. package/dist/hooks/use-toast.d.ts.map +1 -0
  599. package/dist/hooks/use-toast.js +127 -0
  600. package/dist/hooks/use-toast.js.map +1 -0
  601. package/dist/index.d.ts +11 -0
  602. package/dist/index.d.ts.map +1 -0
  603. package/dist/index.js +11 -0
  604. package/dist/index.js.map +1 -0
  605. package/dist/onboarding/index.d.ts +2 -0
  606. package/dist/onboarding/index.d.ts.map +1 -0
  607. package/dist/onboarding/index.js +2 -0
  608. package/dist/onboarding/index.js.map +1 -0
  609. package/dist/provider.d.ts +15 -0
  610. package/dist/provider.d.ts.map +1 -0
  611. package/dist/provider.js +60 -0
  612. package/dist/provider.js.map +1 -0
  613. package/dist/sharing/SharePrimitives.d.ts +42 -0
  614. package/dist/sharing/SharePrimitives.d.ts.map +1 -0
  615. package/dist/sharing/SharePrimitives.js +53 -0
  616. package/dist/sharing/SharePrimitives.js.map +1 -0
  617. package/dist/sharing/VisibilityBadge.d.ts +11 -0
  618. package/dist/sharing/VisibilityBadge.d.ts.map +1 -0
  619. package/dist/sharing/VisibilityBadge.js +19 -0
  620. package/dist/sharing/VisibilityBadge.js.map +1 -0
  621. package/dist/sharing/VisibilityBadge.spec.d.ts +2 -0
  622. package/dist/sharing/VisibilityBadge.spec.d.ts.map +1 -0
  623. package/dist/sharing/VisibilityBadge.spec.js +60 -0
  624. package/dist/sharing/VisibilityBadge.spec.js.map +1 -0
  625. package/dist/sharing/index.d.ts +3 -0
  626. package/dist/sharing/index.d.ts.map +1 -0
  627. package/dist/sharing/index.js +3 -0
  628. package/dist/sharing/index.js.map +1 -0
  629. package/dist/styles.css +232 -0
  630. package/dist/ui/accordion.d.ts +8 -0
  631. package/dist/ui/accordion.d.ts.map +1 -0
  632. package/dist/ui/accordion.js +14 -0
  633. package/dist/ui/accordion.js.map +1 -0
  634. package/dist/ui/alert-dialog.d.ts +21 -0
  635. package/dist/ui/alert-dialog.d.ts.map +1 -0
  636. package/dist/ui/alert-dialog.js +27 -0
  637. package/dist/ui/alert-dialog.js.map +1 -0
  638. package/dist/ui/alert.d.ts +9 -0
  639. package/dist/ui/alert.d.ts.map +1 -0
  640. package/dist/ui/alert.js +23 -0
  641. package/dist/ui/alert.js.map +1 -0
  642. package/dist/ui/aspect-ratio.d.ts +4 -0
  643. package/dist/ui/aspect-ratio.d.ts.map +1 -0
  644. package/dist/ui/aspect-ratio.js +4 -0
  645. package/dist/ui/aspect-ratio.js.map +1 -0
  646. package/dist/ui/avatar.d.ts +7 -0
  647. package/dist/ui/avatar.d.ts.map +1 -0
  648. package/dist/ui/avatar.js +12 -0
  649. package/dist/ui/avatar.js.map +1 -0
  650. package/dist/ui/badge.d.ts +10 -0
  651. package/dist/ui/badge.d.ts.map +1 -0
  652. package/dist/ui/badge.js +21 -0
  653. package/dist/ui/badge.js.map +1 -0
  654. package/dist/ui/breadcrumb.d.ts +20 -0
  655. package/dist/ui/breadcrumb.d.ts.map +1 -0
  656. package/dist/ui/breadcrumb.js +24 -0
  657. package/dist/ui/breadcrumb.js.map +1 -0
  658. package/dist/ui/button.d.ts +18 -0
  659. package/dist/ui/button.d.ts.map +1 -0
  660. package/dist/ui/button.js +67 -0
  661. package/dist/ui/button.js.map +1 -0
  662. package/dist/ui/calendar.d.ts +9 -0
  663. package/dist/ui/calendar.d.ts.map +1 -0
  664. package/dist/ui/calendar.js +74 -0
  665. package/dist/ui/calendar.js.map +1 -0
  666. package/dist/ui/card.d.ts +9 -0
  667. package/dist/ui/card.d.ts.map +1 -0
  668. package/dist/ui/card.js +17 -0
  669. package/dist/ui/card.js.map +1 -0
  670. package/dist/ui/carousel.d.ts +19 -0
  671. package/dist/ui/carousel.d.ts.map +1 -0
  672. package/dist/ui/carousel.js +99 -0
  673. package/dist/ui/carousel.js.map +1 -0
  674. package/dist/ui/chart.d.ts +80 -0
  675. package/dist/ui/chart.d.ts.map +1 -0
  676. package/dist/ui/chart.js +131 -0
  677. package/dist/ui/chart.js.map +1 -0
  678. package/dist/ui/checkbox.d.ts +5 -0
  679. package/dist/ui/checkbox.d.ts.map +1 -0
  680. package/dist/ui/checkbox.js +9 -0
  681. package/dist/ui/checkbox.js.map +1 -0
  682. package/dist/ui/collapsible.d.ts +6 -0
  683. package/dist/ui/collapsible.d.ts.map +1 -0
  684. package/dist/ui/collapsible.js +6 -0
  685. package/dist/ui/collapsible.js.map +1 -0
  686. package/dist/ui/command.d.ts +85 -0
  687. package/dist/ui/command.d.ts.map +1 -0
  688. package/dist/ui/command.js +29 -0
  689. package/dist/ui/command.js.map +1 -0
  690. package/dist/ui/command.spec.d.ts +2 -0
  691. package/dist/ui/command.spec.d.ts.map +1 -0
  692. package/dist/ui/command.spec.js +29 -0
  693. package/dist/ui/command.spec.js.map +1 -0
  694. package/dist/ui/context-menu.d.ts +28 -0
  695. package/dist/ui/context-menu.d.ts.map +1 -0
  696. package/dist/ui/context-menu.js +34 -0
  697. package/dist/ui/context-menu.js.map +1 -0
  698. package/dist/ui/date-picker.d.ts +10 -0
  699. package/dist/ui/date-picker.d.ts.map +1 -0
  700. package/dist/ui/date-picker.js +20 -0
  701. package/dist/ui/date-picker.js.map +1 -0
  702. package/dist/ui/dialog.d.ts +32 -0
  703. package/dist/ui/dialog.d.ts.map +1 -0
  704. package/dist/ui/dialog.js +26 -0
  705. package/dist/ui/dialog.js.map +1 -0
  706. package/dist/ui/dialog.spec.d.ts +2 -0
  707. package/dist/ui/dialog.spec.d.ts.map +1 -0
  708. package/dist/ui/dialog.spec.js +21 -0
  709. package/dist/ui/dialog.spec.js.map +1 -0
  710. package/dist/ui/drawer.d.ts +35 -0
  711. package/dist/ui/drawer.d.ts.map +1 -0
  712. package/dist/ui/drawer.js +25 -0
  713. package/dist/ui/drawer.js.map +1 -0
  714. package/dist/ui/dropdown-menu.d.ts +32 -0
  715. package/dist/ui/dropdown-menu.d.ts.map +1 -0
  716. package/dist/ui/dropdown-menu.js +42 -0
  717. package/dist/ui/dropdown-menu.js.map +1 -0
  718. package/dist/ui/form.d.ts +26 -0
  719. package/dist/ui/form.d.ts.map +1 -0
  720. package/dist/ui/form.js +63 -0
  721. package/dist/ui/form.js.map +1 -0
  722. package/dist/ui/hover-card.d.ts +7 -0
  723. package/dist/ui/hover-card.d.ts.map +1 -0
  724. package/dist/ui/hover-card.js +10 -0
  725. package/dist/ui/hover-card.js.map +1 -0
  726. package/dist/ui/index.d.ts +53 -0
  727. package/dist/ui/index.d.ts.map +1 -0
  728. package/dist/ui/index.js +53 -0
  729. package/dist/ui/index.js.map +1 -0
  730. package/dist/ui/input-otp.d.ts +35 -0
  731. package/dist/ui/input-otp.d.ts.map +1 -0
  732. package/dist/ui/input-otp.js +19 -0
  733. package/dist/ui/input-otp.js.map +1 -0
  734. package/dist/ui/input.d.ts +4 -0
  735. package/dist/ui/input.d.ts.map +1 -0
  736. package/dist/ui/input.js +9 -0
  737. package/dist/ui/input.js.map +1 -0
  738. package/dist/ui/label.d.ts +6 -0
  739. package/dist/ui/label.d.ts.map +1 -0
  740. package/dist/ui/label.js +10 -0
  741. package/dist/ui/label.js.map +1 -0
  742. package/dist/ui/logo.d.ts +7 -0
  743. package/dist/ui/logo.d.ts.map +1 -0
  744. package/dist/ui/logo.js +10 -0
  745. package/dist/ui/logo.js.map +1 -0
  746. package/dist/ui/menubar.d.ts +29 -0
  747. package/dist/ui/menubar.d.ts.map +1 -0
  748. package/dist/ui/menubar.js +36 -0
  749. package/dist/ui/menubar.js.map +1 -0
  750. package/dist/ui/navigation-menu.d.ts +13 -0
  751. package/dist/ui/navigation-menu.d.ts.map +1 -0
  752. package/dist/ui/navigation-menu.js +25 -0
  753. package/dist/ui/navigation-menu.js.map +1 -0
  754. package/dist/ui/pagination.d.ts +29 -0
  755. package/dist/ui/pagination.d.ts.map +1 -0
  756. package/dist/ui/pagination.js +24 -0
  757. package/dist/ui/pagination.js.map +1 -0
  758. package/dist/ui/popover.d.ts +11 -0
  759. package/dist/ui/popover.d.ts.map +1 -0
  760. package/dist/ui/popover.js +16 -0
  761. package/dist/ui/popover.js.map +1 -0
  762. package/dist/ui/progress.d.ts +5 -0
  763. package/dist/ui/progress.d.ts.map +1 -0
  764. package/dist/ui/progress.js +8 -0
  765. package/dist/ui/progress.js.map +1 -0
  766. package/dist/ui/radio-group.d.ts +6 -0
  767. package/dist/ui/radio-group.d.ts.map +1 -0
  768. package/dist/ui/radio-group.js +15 -0
  769. package/dist/ui/radio-group.js.map +1 -0
  770. package/dist/ui/resizable.d.ts +8 -0
  771. package/dist/ui/resizable.d.ts.map +1 -0
  772. package/dist/ui/resizable.js +9 -0
  773. package/dist/ui/resizable.js.map +1 -0
  774. package/dist/ui/scroll-area.d.ts +6 -0
  775. package/dist/ui/scroll-area.d.ts.map +1 -0
  776. package/dist/ui/scroll-area.js +12 -0
  777. package/dist/ui/scroll-area.js.map +1 -0
  778. package/dist/ui/select.d.ts +16 -0
  779. package/dist/ui/select.d.ts.map +1 -0
  780. package/dist/ui/select.js +27 -0
  781. package/dist/ui/select.js.map +1 -0
  782. package/dist/ui/separator.d.ts +5 -0
  783. package/dist/ui/separator.d.ts.map +1 -0
  784. package/dist/ui/separator.js +8 -0
  785. package/dist/ui/separator.js.map +1 -0
  786. package/dist/ui/sheet.d.ts +29 -0
  787. package/dist/ui/sheet.d.ts.map +1 -0
  788. package/dist/ui/sheet.js +37 -0
  789. package/dist/ui/sheet.js.map +1 -0
  790. package/dist/ui/sidebar.d.ts +71 -0
  791. package/dist/ui/sidebar.d.ts.map +1 -0
  792. package/dist/ui/sidebar.js +230 -0
  793. package/dist/ui/sidebar.js.map +1 -0
  794. package/dist/ui/skeleton.d.ts +3 -0
  795. package/dist/ui/skeleton.d.ts.map +1 -0
  796. package/dist/ui/skeleton.js +7 -0
  797. package/dist/ui/skeleton.js.map +1 -0
  798. package/dist/ui/slider.d.ts +5 -0
  799. package/dist/ui/slider.d.ts.map +1 -0
  800. package/dist/ui/slider.js +8 -0
  801. package/dist/ui/slider.js.map +1 -0
  802. package/dist/ui/sonner.d.ts +5 -0
  803. package/dist/ui/sonner.d.ts.map +1 -0
  804. package/dist/ui/sonner.js +25 -0
  805. package/dist/ui/sonner.js.map +1 -0
  806. package/dist/ui/spinner.d.ts +3 -0
  807. package/dist/ui/spinner.d.ts.map +1 -0
  808. package/dist/ui/spinner.js +7 -0
  809. package/dist/ui/spinner.js.map +1 -0
  810. package/dist/ui/switch.d.ts +5 -0
  811. package/dist/ui/switch.d.ts.map +1 -0
  812. package/dist/ui/switch.js +8 -0
  813. package/dist/ui/switch.js.map +1 -0
  814. package/dist/ui/table.d.ts +11 -0
  815. package/dist/ui/table.d.ts.map +1 -0
  816. package/dist/ui/table.js +21 -0
  817. package/dist/ui/table.js.map +1 -0
  818. package/dist/ui/tabs.d.ts +8 -0
  819. package/dist/ui/tabs.d.ts.map +1 -0
  820. package/dist/ui/tabs.js +13 -0
  821. package/dist/ui/tabs.js.map +1 -0
  822. package/dist/ui/textarea.d.ts +6 -0
  823. package/dist/ui/textarea.d.ts.map +1 -0
  824. package/dist/ui/textarea.js +9 -0
  825. package/dist/ui/textarea.js.map +1 -0
  826. package/dist/ui/toast.d.ts +16 -0
  827. package/dist/ui/toast.d.ts.map +1 -0
  828. package/dist/ui/toast.js +34 -0
  829. package/dist/ui/toast.js.map +1 -0
  830. package/dist/ui/toaster.d.ts +2 -0
  831. package/dist/ui/toaster.d.ts.map +1 -0
  832. package/dist/ui/toaster.js +10 -0
  833. package/dist/ui/toaster.js.map +1 -0
  834. package/dist/ui/toggle-group.d.ts +13 -0
  835. package/dist/ui/toggle-group.d.ts.map +1 -0
  836. package/dist/ui/toggle-group.js +21 -0
  837. package/dist/ui/toggle-group.js.map +1 -0
  838. package/dist/ui/toggle.d.ts +13 -0
  839. package/dist/ui/toggle.d.ts.map +1 -0
  840. package/dist/ui/toggle.js +26 -0
  841. package/dist/ui/toggle.js.map +1 -0
  842. package/dist/ui/tooltip.d.ts +11 -0
  843. package/dist/ui/tooltip.d.ts.map +1 -0
  844. package/dist/ui/tooltip.js +18 -0
  845. package/dist/ui/tooltip.js.map +1 -0
  846. package/dist/ui/use-toast.d.ts +3 -0
  847. package/dist/ui/use-toast.d.ts.map +1 -0
  848. package/dist/ui/use-toast.js +3 -0
  849. package/dist/ui/use-toast.js.map +1 -0
  850. package/dist/utils.d.ts +4 -0
  851. package/dist/utils.d.ts.map +1 -0
  852. package/dist/utils.js +7 -0
  853. package/dist/utils.js.map +1 -0
  854. package/migration-manifest.json +4 -0
  855. package/package.json +369 -0
  856. package/src/app-shell/header-actions.tsx +84 -0
  857. package/src/app-shell/index.ts +2 -0
  858. package/src/app-shell/sidebar-footer-actions.spec.tsx +81 -0
  859. package/src/app-shell/sidebar-footer-actions.tsx +45 -0
  860. package/src/canvas-annotations/CanvasCommentPins.tsx +861 -0
  861. package/src/canvas-annotations/DrawOverlay.spec.tsx +145 -0
  862. package/src/canvas-annotations/DrawOverlay.tsx +1233 -0
  863. package/src/canvas-annotations/index.ts +15 -0
  864. package/src/canvas-annotations/types.ts +14 -0
  865. package/src/canvas-interactions/canvas-interactions.spec.ts +765 -0
  866. package/src/canvas-interactions/canvas-interactions.ts +965 -0
  867. package/src/canvas-interactions/index.ts +67 -0
  868. package/src/chat-history/ChatHistoryList.spec.tsx +485 -0
  869. package/src/chat-history/ChatHistoryList.tsx +481 -0
  870. package/src/chat-history/ChatHistoryRail.spec.tsx +312 -0
  871. package/src/chat-history/ChatHistoryRail.tsx +150 -0
  872. package/src/chat-history/index.ts +21 -0
  873. package/src/chat-history/useChatHistoryRailController.spec.tsx +131 -0
  874. package/src/chat-history/useChatHistoryRailController.ts +76 -0
  875. package/src/chat-history.css +469 -0
  876. package/src/collab-ui/AgentPresenceChip.tsx +69 -0
  877. package/src/collab-ui/LiveCursorOverlay.tsx +241 -0
  878. package/src/collab-ui/PresenceBar.spec.tsx +44 -0
  879. package/src/collab-ui/PresenceBar.tsx +373 -0
  880. package/src/collab-ui/RecentEditHighlights.tsx +239 -0
  881. package/src/collab-ui/RemoteSelectionRings.tsx +227 -0
  882. package/src/collab-ui/agent-identity.ts +16 -0
  883. package/src/collab-ui/index.ts +39 -0
  884. package/src/collab-ui/lead-client.ts +32 -0
  885. package/src/collab-ui/types.spec.ts +18 -0
  886. package/src/collab-ui/types.ts +96 -0
  887. package/src/composer/AgentComposerFrame.tsx +62 -0
  888. package/src/composer/ComposerPlusMenu.spec.ts +14 -0
  889. package/src/composer/ComposerPlusMenu.tsx +1266 -0
  890. package/src/composer/MentionPopover.tsx +483 -0
  891. package/src/composer/PastedTextChip.spec.tsx +58 -0
  892. package/src/composer/PastedTextChip.tsx +178 -0
  893. package/src/composer/PromptComposer.spec.ts +110 -0
  894. package/src/composer/PromptComposer.tsx +796 -0
  895. package/src/composer/RealtimeVoiceMode.spec.tsx +998 -0
  896. package/src/composer/RealtimeVoiceMode.tsx +1019 -0
  897. package/src/composer/TiptapComposer.spec.ts +592 -0
  898. package/src/composer/TiptapComposer.tsx +3746 -0
  899. package/src/composer/VoiceButton.spec.ts +49 -0
  900. package/src/composer/VoiceButton.tsx +329 -0
  901. package/src/composer/asset-picker-url.spec.ts +56 -0
  902. package/src/composer/asset-picker-url.ts +80 -0
  903. package/src/composer/attachment-accept.spec.ts +32 -0
  904. package/src/composer/attachment-accept.ts +75 -0
  905. package/src/composer/draft-key.spec.ts +19 -0
  906. package/src/composer/draft-key.ts +7 -0
  907. package/src/composer/extensions/FileReference.tsx +55 -0
  908. package/src/composer/extensions/MentionReference.tsx +93 -0
  909. package/src/composer/extensions/SkillReference.tsx +56 -0
  910. package/src/composer/index.ts +86 -0
  911. package/src/composer/model-selection.spec.ts +45 -0
  912. package/src/composer/model-selection.ts +51 -0
  913. package/src/composer/pasted-text.spec.ts +162 -0
  914. package/src/composer/pasted-text.ts +160 -0
  915. package/src/composer/prompt-attachments.spec.ts +80 -0
  916. package/src/composer/prompt-attachments.ts +93 -0
  917. package/src/composer/realtime-voice-audio-level.spec.ts +47 -0
  918. package/src/composer/realtime-voice-audio-level.ts +65 -0
  919. package/src/composer/realtime-voice-transcript.spec.ts +95 -0
  920. package/src/composer/realtime-voice-transcript.ts +134 -0
  921. package/src/composer/runtime-adapters.spec.tsx +102 -0
  922. package/src/composer/runtime-adapters.tsx +364 -0
  923. package/src/composer/types.ts +66 -0
  924. package/src/composer/use-file-search.ts +64 -0
  925. package/src/composer/use-mention-search.ts +90 -0
  926. package/src/composer/use-skills.ts +45 -0
  927. package/src/composer/useRealtimeVoiceMode.spec.ts +952 -0
  928. package/src/composer/useRealtimeVoiceMode.tsx +2388 -0
  929. package/src/composer/useVoiceDictation.browser.spec.tsx +265 -0
  930. package/src/composer/useVoiceDictation.spec.ts +45 -0
  931. package/src/composer/useVoiceDictation.ts +1256 -0
  932. package/src/conformance/__fixtures__/css-in-js-adapter.tsx +401 -0
  933. package/src/conformance/conformance.spec.tsx +143 -0
  934. package/src/conformance/index.ts +3 -0
  935. package/src/conformance/runner.tsx +862 -0
  936. package/src/conformance/types.ts +45 -0
  937. package/src/conformance/version.ts +22 -0
  938. package/src/context-ui/ContextMeter.spec.tsx +73 -0
  939. package/src/context-ui/ContextMeter.tsx +131 -0
  940. package/src/context-ui/ContextSegmentRow.tsx +273 -0
  941. package/src/context-ui/ContextTreemap.tsx +131 -0
  942. package/src/context-ui/ContextXRayPanel.tsx +491 -0
  943. package/src/context-ui/format.ts +42 -0
  944. package/src/context-ui/index.ts +15 -0
  945. package/src/context-ui/types.ts +57 -0
  946. package/src/dashboard/DataTable.tsx +273 -0
  947. package/src/dashboard/DateRangePicker.tsx +57 -0
  948. package/src/dashboard/GenericChartPanel.spec.tsx +53 -0
  949. package/src/dashboard/GenericChartPanel.tsx +461 -0
  950. package/src/dashboard/MetricCard.tsx +54 -0
  951. package/src/dashboard/StatsCard.tsx +49 -0
  952. package/src/dashboard/dashboard-layout.spec.ts +79 -0
  953. package/src/dashboard/dashboard-layout.ts +329 -0
  954. package/src/dashboard/index.ts +6 -0
  955. package/src/data-grid/DataGrid.spec.tsx +243 -0
  956. package/src/data-grid/DataGrid.tsx +754 -0
  957. package/src/data-grid/index.ts +15 -0
  958. package/src/design-system/components.tsx +196 -0
  959. package/src/design-system/context.tsx +31 -0
  960. package/src/design-system/default-adapter.spec.tsx +158 -0
  961. package/src/design-system/default-adapter.tsx +923 -0
  962. package/src/design-system/definition.ts +14 -0
  963. package/src/design-system/design-system.spec.tsx +356 -0
  964. package/src/design-system/error-boundary.tsx +37 -0
  965. package/src/design-system/index.ts +7 -0
  966. package/src/design-system/theme.spec.ts +61 -0
  967. package/src/design-system/theme.ts +145 -0
  968. package/src/design-system/types.ts +367 -0
  969. package/src/design-tweaks/index.ts +1 -0
  970. package/src/design-tweaks/scrub-input-utils.ts +311 -0
  971. package/src/design-tweaks/scrub-input.tsx +525 -0
  972. package/src/design-tweaks/visual-style-controls.spec.tsx +172 -0
  973. package/src/design-tweaks/visual-style-controls.tsx +1043 -0
  974. package/src/editor/BubbleToolbar.tsx +253 -0
  975. package/src/editor/CodeBlockNode.tsx +254 -0
  976. package/src/editor/DragHandle.spec.ts +694 -0
  977. package/src/editor/DragHandle.ts +1491 -0
  978. package/src/editor/ImageExtension.roundtrip.spec.ts +117 -0
  979. package/src/editor/ImageExtension.ts +306 -0
  980. package/src/editor/RegistryBlockContext.tsx +107 -0
  981. package/src/editor/RegistryBlockNode.spec.ts +279 -0
  982. package/src/editor/RegistryBlockNode.tsx +652 -0
  983. package/src/editor/RichMarkdownEditor.collab.spec.ts +79 -0
  984. package/src/editor/RichMarkdownEditor.roundtrip.spec.ts +226 -0
  985. package/src/editor/RichMarkdownEditor.tsx +81 -0
  986. package/src/editor/RunId.ts +61 -0
  987. package/src/editor/SharedRichEditor.spec.tsx +82 -0
  988. package/src/editor/SharedRichEditor.tsx +353 -0
  989. package/src/editor/SlashCommandMenu.spec.ts +90 -0
  990. package/src/editor/SlashCommandMenu.tsx +396 -0
  991. package/src/editor/disableHistory.spec.ts +85 -0
  992. package/src/editor/extensions.ts +454 -0
  993. package/src/editor/gfmDoc.spec.ts +230 -0
  994. package/src/editor/gfmDoc.ts +92 -0
  995. package/src/editor/index.ts +96 -0
  996. package/src/editor/registrySlashCommands.ts +131 -0
  997. package/src/editor/structuralReorderUndo.spec.ts +144 -0
  998. package/src/editor/surgical-apply.spec.ts +279 -0
  999. package/src/editor/surgical-apply.ts +192 -0
  1000. package/src/editor/useCollabReconcile.concurrent.spec.ts +781 -0
  1001. package/src/editor/useCollabReconcile.idempotent.spec.ts +324 -0
  1002. package/src/editor/useCollabReconcile.ts +684 -0
  1003. package/src/editor.css +587 -0
  1004. package/src/hooks/index.ts +2 -0
  1005. package/src/hooks/use-mobile.tsx +21 -0
  1006. package/src/hooks/use-toast.ts +188 -0
  1007. package/src/index.ts +10 -0
  1008. package/src/onboarding/index.ts +1 -0
  1009. package/src/provider.tsx +148 -0
  1010. package/src/sharing/SharePrimitives.tsx +224 -0
  1011. package/src/sharing/VisibilityBadge.spec.ts +96 -0
  1012. package/src/sharing/VisibilityBadge.tsx +37 -0
  1013. package/src/sharing/index.ts +16 -0
  1014. package/src/styles.css +232 -0
  1015. package/src/ui/accordion.tsx +56 -0
  1016. package/src/ui/alert-dialog.tsx +141 -0
  1017. package/src/ui/alert.tsx +59 -0
  1018. package/src/ui/aspect-ratio.tsx +5 -0
  1019. package/src/ui/avatar.tsx +48 -0
  1020. package/src/ui/badge.tsx +37 -0
  1021. package/src/ui/breadcrumb.tsx +115 -0
  1022. package/src/ui/button.tsx +167 -0
  1023. package/src/ui/calendar.tsx +214 -0
  1024. package/src/ui/card.tsx +86 -0
  1025. package/src/ui/carousel.tsx +260 -0
  1026. package/src/ui/chart.tsx +375 -0
  1027. package/src/ui/checkbox.tsx +28 -0
  1028. package/src/ui/collapsible.tsx +9 -0
  1029. package/src/ui/command.spec.tsx +51 -0
  1030. package/src/ui/command.tsx +174 -0
  1031. package/src/ui/context-menu.tsx +202 -0
  1032. package/src/ui/date-picker.tsx +67 -0
  1033. package/src/ui/dialog.spec.tsx +43 -0
  1034. package/src/ui/dialog.tsx +171 -0
  1035. package/src/ui/drawer.tsx +126 -0
  1036. package/src/ui/dropdown-menu.tsx +222 -0
  1037. package/src/ui/form.tsx +177 -0
  1038. package/src/ui/hover-card.tsx +27 -0
  1039. package/src/ui/index.ts +52 -0
  1040. package/src/ui/input-otp.tsx +69 -0
  1041. package/src/ui/input.tsx +22 -0
  1042. package/src/ui/label.tsx +24 -0
  1043. package/src/ui/logo.tsx +36 -0
  1044. package/src/ui/menubar.tsx +235 -0
  1045. package/src/ui/navigation-menu.tsx +128 -0
  1046. package/src/ui/pagination.tsx +121 -0
  1047. package/src/ui/popover.tsx +58 -0
  1048. package/src/ui/progress.tsx +27 -0
  1049. package/src/ui/radio-group.tsx +42 -0
  1050. package/src/ui/resizable.tsx +43 -0
  1051. package/src/ui/scroll-area.tsx +46 -0
  1052. package/src/ui/select.tsx +162 -0
  1053. package/src/ui/separator.tsx +29 -0
  1054. package/src/ui/sheet.tsx +160 -0
  1055. package/src/ui/sidebar.tsx +776 -0
  1056. package/src/ui/skeleton.tsx +18 -0
  1057. package/src/ui/slider.tsx +26 -0
  1058. package/src/ui/sonner.tsx +58 -0
  1059. package/src/ui/spinner.tsx +17 -0
  1060. package/src/ui/switch.tsx +27 -0
  1061. package/src/ui/table.tsx +110 -0
  1062. package/src/ui/tabs.tsx +53 -0
  1063. package/src/ui/textarea.tsx +23 -0
  1064. package/src/ui/toast.tsx +127 -0
  1065. package/src/ui/toaster.tsx +33 -0
  1066. package/src/ui/toggle-group.tsx +59 -0
  1067. package/src/ui/toggle.tsx +43 -0
  1068. package/src/ui/tooltip.tsx +57 -0
  1069. package/src/ui/use-toast.ts +3 -0
  1070. package/src/utils.ts +8 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegistryBlockNode.spec.js","sourceRoot":"","sources":["../../src/editor/RegistryBlockNode.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RichMarkdownEditor.collab.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.collab.spec.d.ts","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.collab.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,65 @@
1
+ // @vitest-environment happy-dom
2
+ import { describe, expect, it } from "vitest";
3
+ import { Awareness } from "y-protocols/awareness";
4
+ import * as Y from "yjs";
5
+ import { createRichMarkdownExtensions } from "./RichMarkdownEditor.js";
6
+ /**
7
+ * The optional collaboration wiring on the shared rich-markdown editor must be
8
+ * strictly additive: with no `ydoc`, the editor behaves exactly as the existing
9
+ * controlled single-user editor (no Collaboration extensions, undo/redo on);
10
+ * with a `ydoc`, it binds Collaboration (+ a CollaborationCaret when awareness
11
+ * is present) and disables StarterKit's undo/redo so Yjs owns history.
12
+ */
13
+ function extensionNames(opts) {
14
+ return createRichMarkdownExtensions(opts).map((ext) => ext.name);
15
+ }
16
+ describe("createRichMarkdownExtensions collaboration wiring", () => {
17
+ it("adds no collaboration extensions when ydoc is absent", () => {
18
+ const names = extensionNames();
19
+ expect(names).not.toContain("collaboration");
20
+ expect(names).not.toContain("collaborationCaret");
21
+ });
22
+ it("adds Collaboration only when a ydoc is provided", () => {
23
+ const ydoc = new Y.Doc();
24
+ try {
25
+ const names = extensionNames({ ydoc });
26
+ expect(names).toContain("collaboration");
27
+ // No awareness → no caret extension, but core collab still binds.
28
+ expect(names).not.toContain("collaborationCaret");
29
+ }
30
+ finally {
31
+ ydoc.destroy();
32
+ }
33
+ });
34
+ it("adds CollaborationCaret when ydoc and awareness are both provided", () => {
35
+ const ydoc = new Y.Doc();
36
+ const awareness = new Awareness(ydoc);
37
+ try {
38
+ const names = extensionNames({
39
+ ydoc,
40
+ awareness,
41
+ user: { name: "Ada", color: "#60a5fa", email: "ada@example.com" },
42
+ });
43
+ expect(names).toContain("collaboration");
44
+ expect(names).toContain("collaborationCaret");
45
+ }
46
+ finally {
47
+ awareness.destroy();
48
+ ydoc.destroy();
49
+ }
50
+ });
51
+ it("disables StarterKit undo/redo only in collab mode", () => {
52
+ const findStarterKit = (opts) => createRichMarkdownExtensions(opts).find((ext) => ext.name === "starterKit");
53
+ const standalone = findStarterKit();
54
+ expect(standalone?.options?.undoRedo).toBe(undefined);
55
+ const ydoc = new Y.Doc();
56
+ try {
57
+ const collab = findStarterKit({ ydoc });
58
+ expect(collab?.options?.undoRedo).toBe(false);
59
+ }
60
+ finally {
61
+ ydoc.destroy();
62
+ }
63
+ });
64
+ });
65
+ //# sourceMappingURL=RichMarkdownEditor.collab.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.collab.spec.js","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.collab.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import type { Awareness } from "y-protocols/awareness";
2
+ import type { Doc as YDoc } from "yjs";
3
+ /**
4
+ * Back-compat surface for the shared rich markdown editor.
5
+ *
6
+ * The editor core now lives in dedicated modules:
7
+ * - {@link createSharedEditorExtensions} — the ONE extension factory.
8
+ * - {@link useCollabReconcile} — seed / reconcile / lead-client logic.
9
+ * - {@link SlashCommandMenu} / {@link BubbleToolbar} — shared menus.
10
+ * - {@link SharedRichEditor} — the editor component.
11
+ *
12
+ * This file keeps the historical `RichMarkdownEditor` component name (aliased to
13
+ * {@link SharedRichEditor}) and the `createRichMarkdownExtensions` factory so
14
+ * existing embedders and the round-trip / collab specs keep working unchanged.
15
+ */
16
+ import { type RichMarkdownDialect, type RichMarkdownEditorPreset, type RichMarkdownCollabUser } from "./extensions.js";
17
+ import { SharedRichEditor, type SharedRichEditorProps } from "./SharedRichEditor.js";
18
+ export type { RichMarkdownDialect, RichMarkdownEditorPreset, RichMarkdownCollabUser, };
19
+ /** @deprecated Prefer {@link CreateSharedEditorExtensionsOptions}. */
20
+ export interface CreateRichMarkdownExtensionsOptions {
21
+ dialect?: RichMarkdownDialect;
22
+ placeholder?: string;
23
+ /**
24
+ * Yjs document for collaborative editing. When present, the editor binds the
25
+ * shared Collaboration + CollaborationCaret extensions and StarterKit's
26
+ * built-in undo/redo is disabled (Yjs owns history).
27
+ */
28
+ ydoc?: YDoc | null;
29
+ /** Shared awareness instance for live multi-user cursors. */
30
+ awareness?: Awareness | null;
31
+ /** Current user info for the collaborative cursor label. */
32
+ user?: RichMarkdownCollabUser | null;
33
+ }
34
+ /**
35
+ * Back-compat factory preserving today's GFM/plan behavior EXACTLY. Implemented
36
+ * in terms of {@link createSharedEditorExtensions}: it maps the flat
37
+ * `{ ydoc, awareness, user }` collab options into the nested `collab` shape the
38
+ * shared factory expects. The round-trip and collab specs build their `Editor`
39
+ * from this, so its output must stay byte-stable.
40
+ */
41
+ export declare function createRichMarkdownExtensions({ dialect, placeholder, ydoc, awareness, user, }?: CreateRichMarkdownExtensionsOptions): (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Mark<any, any> | import("@tiptap/core").Node<any, any>)[];
42
+ /** @deprecated Prefer {@link SharedRichEditorProps}. */
43
+ export type RichMarkdownEditorProps = SharedRichEditorProps;
44
+ /**
45
+ * Historical name for {@link SharedRichEditor}. Kept so existing imports
46
+ * (`import { RichMarkdownEditor } from "@agent-native/core/client"`) and the
47
+ * plan editor tests (which assert the source mentions `RichMarkdownEditor`)
48
+ * keep working through the Core compatibility re-export. New code should import
49
+ * `SharedRichEditor` from `@agent-native/toolkit/editor`.
50
+ */
51
+ export declare const RichMarkdownEditor: typeof SharedRichEditor;
52
+ //# sourceMappingURL=RichMarkdownEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.d.ts","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,KAAK,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,EAC3B,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,GACvB,CAAC;AAEF,sEAAsE;AACtE,MAAM,WAAW,mCAAmC;IAClD,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAC7B,4DAA4D;IAC5D,IAAI,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACtC;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,OAAe,EACf,WAAwC,EACxC,IAAW,EACX,SAAgB,EAChB,IAAW,GACZ,GAAE,mCAAwC,kIAM1C;AAED,wDAAwD;AACxD,MAAM,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,yBAAmB,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Back-compat surface for the shared rich markdown editor.
3
+ *
4
+ * The editor core now lives in dedicated modules:
5
+ * - {@link createSharedEditorExtensions} — the ONE extension factory.
6
+ * - {@link useCollabReconcile} — seed / reconcile / lead-client logic.
7
+ * - {@link SlashCommandMenu} / {@link BubbleToolbar} — shared menus.
8
+ * - {@link SharedRichEditor} — the editor component.
9
+ *
10
+ * This file keeps the historical `RichMarkdownEditor` component name (aliased to
11
+ * {@link SharedRichEditor}) and the `createRichMarkdownExtensions` factory so
12
+ * existing embedders and the round-trip / collab specs keep working unchanged.
13
+ */
14
+ import { createSharedEditorExtensions, } from "./extensions.js";
15
+ import { SharedRichEditor, } from "./SharedRichEditor.js";
16
+ /**
17
+ * Back-compat factory preserving today's GFM/plan behavior EXACTLY. Implemented
18
+ * in terms of {@link createSharedEditorExtensions}: it maps the flat
19
+ * `{ ydoc, awareness, user }` collab options into the nested `collab` shape the
20
+ * shared factory expects. The round-trip and collab specs build their `Editor`
21
+ * from this, so its output must stay byte-stable.
22
+ */
23
+ export function createRichMarkdownExtensions({ dialect = "gfm", placeholder = "Type '/' for commands...", ydoc = null, awareness = null, user = null, } = {}) {
24
+ return createSharedEditorExtensions({
25
+ dialect,
26
+ placeholder,
27
+ collab: ydoc ? { ydoc, awareness, user } : null,
28
+ });
29
+ }
30
+ /**
31
+ * Historical name for {@link SharedRichEditor}. Kept so existing imports
32
+ * (`import { RichMarkdownEditor } from "@agent-native/core/client"`) and the
33
+ * plan editor tests (which assert the source mentions `RichMarkdownEditor`)
34
+ * keep working through the Core compatibility re-export. New code should import
35
+ * `SharedRichEditor` from `@agent-native/toolkit/editor`.
36
+ */
37
+ export const RichMarkdownEditor = SharedRichEditor;
38
+ //# sourceMappingURL=RichMarkdownEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.js","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.tsx"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,OAAO,EACL,4BAA4B,GAI7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,gBAAgB,GAEjB,MAAM,uBAAuB,CAAC;AAwB/B;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAAC,EAC3C,OAAO,GAAG,KAAK,EACf,WAAW,GAAG,0BAA0B,EACxC,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,IAAI,EAChB,IAAI,GAAG,IAAI,GACZ,GAAwC,EAAE;IACzC,OAAO,4BAA4B,CAAC;QAClC,OAAO;QACP,WAAW;QACX,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;KAChD,CAAC,CAAC;AACL,CAAC;AAKD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RichMarkdownEditor.roundtrip.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.roundtrip.spec.d.ts","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.roundtrip.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,186 @@
1
+ // @vitest-environment happy-dom
2
+ import { Editor } from "@tiptap/core";
3
+ import { describe, expect, it } from "vitest";
4
+ import { createRichMarkdownExtensions } from "./RichMarkdownEditor.js";
5
+ /**
6
+ * Round-trip fidelity for the Plan rich-text editor.
7
+ *
8
+ * tiptap-markdown re-serializes the ENTIRE document on every edit. If
9
+ * `serialize(parse(markdown)) !== markdown` for the markdown that plans
10
+ * actually contain, then the FIRST edit of an existing block emits a fully
11
+ * normalized version of text the user never touched — a noisy one-time git
12
+ * diff plus an update-rich-text write that rewrites untouched prose.
13
+ *
14
+ * This suite mounts an `Editor` from the SAME extension factory the component
15
+ * uses ({@link createRichMarkdownExtensions}) so the test and the component can
16
+ * never disagree about the dialect, then pins the round-trip output for a
17
+ * representative plan corpus. Cases fall into two buckets:
18
+ *
19
+ * - byte-stable: `roundTrip(x) === x`. Asserted via `expectStable`.
20
+ * - pinned-lossy: tiptap-markdown 0.9.0 normalizes the input in a way that
21
+ * CANNOT be removed through the public `Markdown.configure` surface
22
+ * (the relevant internals — prosemirror-markdown's `em` serializer and the
23
+ * non-exported `MarkdownTightLists` extension — are not configurable). We
24
+ * are forbidden from reformatting/post-processing stored markdown to chase
25
+ * stability, so these are pinned to their ACTUAL normalized output via
26
+ * `expectNormalizesTo`. That keeps each normalization visible and
27
+ * regression-guarded instead of silently churning.
28
+ *
29
+ * The only lever we are allowed to pull is the tiptap-markdown
30
+ * `Markdown.configure` options in the shared factory. The current config
31
+ * (`bulletListMarker: "-"`, `tightLists: true`, `linkify: false`,
32
+ * `breaks: false`) already minimizes normalization for everything below; the
33
+ * remaining lossy cases are inherent to the library at this version.
34
+ */
35
+ function roundTrip(markdown) {
36
+ const editor = new Editor({
37
+ element: document.createElement("div"),
38
+ extensions: createRichMarkdownExtensions({ dialect: "gfm" }),
39
+ content: markdown,
40
+ });
41
+ try {
42
+ const storage = editor.storage;
43
+ return storage.markdown?.getMarkdown?.() ?? "";
44
+ }
45
+ finally {
46
+ editor.destroy();
47
+ }
48
+ }
49
+ /** Asserts the markdown survives parse→serialize unchanged (byte-stable). */
50
+ function expectStable(markdown) {
51
+ expect(roundTrip(markdown)).toBe(markdown);
52
+ }
53
+ /**
54
+ * Asserts an inherently-lossy case serializes to a KNOWN normalized form.
55
+ * Pins the normalization so it stays visible and regression-guarded; also
56
+ * guards that the case is genuinely lossy (otherwise it belongs in the
57
+ * byte-stable bucket).
58
+ */
59
+ function expectNormalizesTo(input, normalized) {
60
+ expect(roundTrip(input)).toBe(normalized);
61
+ expect(normalized).not.toBe(input);
62
+ }
63
+ describe("RichMarkdownEditor markdown round-trip", () => {
64
+ describe("byte-stable cases", () => {
65
+ it("headings H1-H4 (ATX)", () => {
66
+ expectStable("# Heading 1");
67
+ expectStable("## Heading 2");
68
+ expectStable("### Heading 3");
69
+ expectStable("#### Heading 4");
70
+ });
71
+ it("paragraphs", () => {
72
+ expectStable("A single plain paragraph.");
73
+ expectStable("First paragraph.\n\nSecond paragraph.");
74
+ });
75
+ it("bold and inline code marks", () => {
76
+ expectStable("Text with **bold** words.");
77
+ expectStable("Text with `inline code` words.");
78
+ expectStable("Mixed **bold** and `code` together.");
79
+ });
80
+ it("bulleted list (tight)", () => {
81
+ expectStable("- One\n- Two\n- Three");
82
+ });
83
+ it("numbered list (tight)", () => {
84
+ expectStable("1. One\n2. Two\n3. Three");
85
+ });
86
+ it("nested bulleted list", () => {
87
+ expectStable("- One\n - Nested A\n - Nested B\n- Two");
88
+ });
89
+ it("a single task item", () => {
90
+ expectStable("- [ ] Todo item");
91
+ expectStable("- [x] Done item");
92
+ });
93
+ it("blockquote", () => {
94
+ expectStable("> A quoted line.");
95
+ });
96
+ it("fenced code block with a language", () => {
97
+ expectStable("```ts\nconst x: number = 1;\n```");
98
+ });
99
+ it("links", () => {
100
+ expectStable("See [the docs](https://example.com/docs) for details.");
101
+ });
102
+ it("horizontal rule", () => {
103
+ expectStable("Above.\n\n---\n\nBelow.");
104
+ });
105
+ it("GFM pipe table when followed by more content", () => {
106
+ // A table in the middle of a body (the common case in a plan) is stable.
107
+ // The trailing-newline normalization only happens when a table is the
108
+ // very last block — see pinned-lossy cases below.
109
+ expectStable([
110
+ "Intro paragraph.",
111
+ "",
112
+ "| Name | Status |",
113
+ "| --- | --- |",
114
+ "| Alpha | Done |",
115
+ "| Beta | Open |",
116
+ "",
117
+ "Closing paragraph.",
118
+ ].join("\n"));
119
+ });
120
+ it("a representative mixed plan body (no italics, table not last)", () => {
121
+ expectStable([
122
+ "# Project Plan",
123
+ "",
124
+ "## Overview",
125
+ "",
126
+ "This plan covers the **rollout** of the new flow.",
127
+ "",
128
+ "## Notes",
129
+ "",
130
+ "See [the brief](https://example.com/brief) and run `pnpm test`.",
131
+ "",
132
+ "```ts",
133
+ "const ready = true;",
134
+ "```",
135
+ ].join("\n"));
136
+ });
137
+ });
138
+ describe("pinned-lossy cases (inherent to tiptap-markdown 0.9.0)", () => {
139
+ it("italic: underscore markers normalize to asterisks", () => {
140
+ // tiptap-markdown serializes the italic mark via prosemirror-markdown's
141
+ // `defaultMarkdownSerializer.marks.em`, which hardcodes `*` open/close.
142
+ // There is NO `Markdown.configure` option for the emphasis marker
143
+ // (`bulletListMarker` only controls bullet lists), so `_x_` always
144
+ // re-emits as `*x*`. Asterisk-delimited italics are already stable.
145
+ expectNormalizesTo("Text with _italic_ words.", "Text with *italic* words.");
146
+ expectStable("Text with *italic* words.");
147
+ });
148
+ it("multi-item task lists serialize loose (blank line between items)", () => {
149
+ // tiptap-markdown's tight-list support (MarkdownTightLists) only
150
+ // registers the `tight` attribute for `bulletList`/`orderedList`, never
151
+ // `taskList`, and that extension is not exported for reconfiguration.
152
+ // So task lists with 2+ items always gain a blank line between items.
153
+ // A single task item (above) stays stable.
154
+ expectNormalizesTo("- [ ] Todo item\n- [x] Done item", "- [ ] Todo item\n\n- [x] Done item");
155
+ });
156
+ it("nested task list also serializes loose", () => {
157
+ expectNormalizesTo("- [ ] parent\n - [x] child", "- [ ] parent\n\n - [x] child");
158
+ });
159
+ it("a table as the LAST block gains a trailing newline", () => {
160
+ // When a pipe table is the final block in the document the serializer
161
+ // appends a trailing "\n". (Mid-body tables — see byte-stable cases —
162
+ // do not.) Not removable via public config.
163
+ expectNormalizesTo([
164
+ "| Name | Status |",
165
+ "| --- | --- |",
166
+ "| Alpha | Done |",
167
+ "| Beta | Open |",
168
+ ].join("\n"), [
169
+ "| Name | Status |",
170
+ "| --- | --- |",
171
+ "| Alpha | Done |",
172
+ "| Beta | Open |",
173
+ "",
174
+ ].join("\n"));
175
+ });
176
+ });
177
+ describe("intentional normalizations (desired, GFM-canonical)", () => {
178
+ it("`*` bullet markers normalize to `-` per bulletListMarker config", () => {
179
+ // We deliberately keep bulletListMarker: "-" so all bullets converge on
180
+ // the GFM-canonical dash. `*`/`+` bullets becoming `-` is intended.
181
+ expectNormalizesTo("* One\n* Two", "- One\n- Two");
182
+ expectNormalizesTo("+ One\n+ Two", "- One\n- Two");
183
+ });
184
+ });
185
+ });
186
+ //# sourceMappingURL=RichMarkdownEditor.roundtrip.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichMarkdownEditor.roundtrip.spec.js","sourceRoot":"","sources":["../../src/editor/RichMarkdownEditor.roundtrip.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { Extension } from "@tiptap/core";
2
+ /**
3
+ * Node types that carry the optional `runId` attribute.
4
+ *
5
+ * These are exactly the top-level block nodes a plan's `rich-text` block can
6
+ * serialize to. The plan's `doc ↔ blocks[]` bridge stamps `runId` onto the
7
+ * FIRST node of each rich-text run so a re-parse can map the run back to its
8
+ * originating block id (stable ids across edits). Atom/structured blocks live
9
+ * in their own `planBlock` node and do not need this attribute.
10
+ */
11
+ export declare const RUN_ID_NODE_TYPES: readonly ["paragraph", "heading", "bulletList", "orderedList", "taskList", "blockquote", "codeBlock"];
12
+ /**
13
+ * Tiptap extension that adds a GLOBAL `runId` attribute (default `null`) to the
14
+ * block node types in {@link RUN_ID_NODE_TYPES}.
15
+ *
16
+ * - `renderHTML` emits `data-run-id` only when the attribute is set, so the
17
+ * live editor's DOM carries the id for the doc↔blocks bridge.
18
+ * - `parseHTML` reads `data-run-id` back so a paste / re-parse preserves it.
19
+ * - Markdown serialization deliberately IGNORES `runId`: GFM never emits it.
20
+ * `tiptap-markdown` drops attributes it has no serializer for, so we simply
21
+ * don't register a markdown serializer here — the attribute is invisible to
22
+ * the GFM round-trip and only lives in the ProseMirror JSON / DOM.
23
+ *
24
+ * Used by BOTH the headless `gfmDoc` editor and the live plan editor so the
25
+ * schema is identical on both sides of the bridge.
26
+ */
27
+ export declare const RunId: Extension<any, any>;
28
+ //# sourceMappingURL=RunId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunId.d.ts","sourceRoot":"","sources":["../../src/editor/RunId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,YAC5B,WAAW,EACX,SAAS,EACT,YAAY,EACZ,aAAa,EACb,UAAU,EACV,YAAY,EACZ,WAAW,CACH,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,KAAK,qBAwBhB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { Extension } from "@tiptap/core";
2
+ /**
3
+ * Node types that carry the optional `runId` attribute.
4
+ *
5
+ * These are exactly the top-level block nodes a plan's `rich-text` block can
6
+ * serialize to. The plan's `doc ↔ blocks[]` bridge stamps `runId` onto the
7
+ * FIRST node of each rich-text run so a re-parse can map the run back to its
8
+ * originating block id (stable ids across edits). Atom/structured blocks live
9
+ * in their own `planBlock` node and do not need this attribute.
10
+ */
11
+ export const RUN_ID_NODE_TYPES = [
12
+ "paragraph",
13
+ "heading",
14
+ "bulletList",
15
+ "orderedList",
16
+ "taskList",
17
+ "blockquote",
18
+ "codeBlock",
19
+ ];
20
+ /**
21
+ * Tiptap extension that adds a GLOBAL `runId` attribute (default `null`) to the
22
+ * block node types in {@link RUN_ID_NODE_TYPES}.
23
+ *
24
+ * - `renderHTML` emits `data-run-id` only when the attribute is set, so the
25
+ * live editor's DOM carries the id for the doc↔blocks bridge.
26
+ * - `parseHTML` reads `data-run-id` back so a paste / re-parse preserves it.
27
+ * - Markdown serialization deliberately IGNORES `runId`: GFM never emits it.
28
+ * `tiptap-markdown` drops attributes it has no serializer for, so we simply
29
+ * don't register a markdown serializer here — the attribute is invisible to
30
+ * the GFM round-trip and only lives in the ProseMirror JSON / DOM.
31
+ *
32
+ * Used by BOTH the headless `gfmDoc` editor and the live plan editor so the
33
+ * schema is identical on both sides of the bridge.
34
+ */
35
+ export const RunId = Extension.create({
36
+ name: "runId",
37
+ addGlobalAttributes() {
38
+ return [
39
+ {
40
+ types: [...RUN_ID_NODE_TYPES],
41
+ attributes: {
42
+ runId: {
43
+ default: null,
44
+ // Read the id off the rendered DOM so paste / re-parse round-trips.
45
+ parseHTML: (element) => element.getAttribute("data-run-id"),
46
+ // Only emit the attribute when set; an unset (null) runId adds
47
+ // nothing to the DOM so untouched nodes stay clean.
48
+ renderHTML: (attributes) => {
49
+ const runId = attributes.runId;
50
+ if (!runId)
51
+ return {};
52
+ return { "data-run-id": runId };
53
+ },
54
+ },
55
+ },
56
+ },
57
+ ];
58
+ },
59
+ });
60
+ //# sourceMappingURL=RunId.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunId.js","sourceRoot":"","sources":["../../src/editor/RunId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,WAAW;IACX,SAAS;IACT,YAAY;IACZ,aAAa;IACb,UAAU;IACV,YAAY;IACZ,WAAW;CACH,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,OAAO;IAEb,mBAAmB;QACjB,OAAO;YACL;gBACE,KAAK,EAAE,CAAC,GAAG,iBAAiB,CAAC;gBAC7B,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI;wBACb,oEAAoE;wBACpE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC;wBAC3D,+DAA+D;wBAC/D,oDAAoD;wBACpD,UAAU,EAAE,CAAC,UAAU,EAAE,EAAE;4BACzB,MAAM,KAAK,GAAI,UAAwC,CAAC,KAAK,CAAC;4BAC9D,IAAI,CAAC,KAAK;gCAAE,OAAO,EAAE,CAAC;4BACtB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;wBAClC,CAAC;qBACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,112 @@
1
+ import type { Extension, Node, Mark } from "@tiptap/core";
2
+ import type { Awareness } from "y-protocols/awareness";
3
+ import type { Doc as YDoc } from "yjs";
4
+ import { type BubbleToolbarItem } from "./BubbleToolbar.js";
5
+ import { type RichMarkdownDialect, type RichMarkdownEditorPreset, type RichMarkdownCollabUser, type SharedEditorFeatures } from "./extensions.js";
6
+ import type { ImageUploadFn } from "./ImageExtension.js";
7
+ import { type SlashCommandItem } from "./SlashCommandMenu.js";
8
+ import { type UseCollabReconcileOptions } from "./useCollabReconcile.js";
9
+ export interface SharedRichEditorProps {
10
+ value: string;
11
+ onChange: (markdown: string) => void;
12
+ onBlur?: () => void;
13
+ contentUpdatedAt?: string | null;
14
+ editable?: boolean;
15
+ dialect?: RichMarkdownDialect;
16
+ preset?: RichMarkdownEditorPreset;
17
+ /** Toggle individual base extensions (tables/tasks/link/codeBlock/image). */
18
+ features?: SharedEditorFeatures;
19
+ /** Show the Notion-style block grip and action menu. Defaults to `true`. */
20
+ dragHandle?: boolean;
21
+ /**
22
+ * Injectable image uploader for the shared image block. Used only when
23
+ * `features.image` is on. Pass `uploadEditorImage` (the framework
24
+ * `upload-image` action) for a real uploading image block.
25
+ */
26
+ onImageUpload?: ImageUploadFn | null;
27
+ /**
28
+ * App-specific extensions (Notion nodes, media, drag handles, comment
29
+ * anchors, …) appended after the shared base schema.
30
+ */
31
+ extraExtensions?: Array<Extension | Node | Mark>;
32
+ placeholder?: string;
33
+ className?: string;
34
+ editorClassName?: string;
35
+ ariaLabel?: string;
36
+ interactive?: boolean;
37
+ /**
38
+ * Yjs document for real-time multi-user editing. When provided, prose is
39
+ * authored against the shared Y.Doc and mirrored back to `value` as markdown
40
+ * (still the source of truth). When omitted, the editor is a plain controlled
41
+ * `value`/`onChange` editor — the existing, non-collaborative behavior.
42
+ */
43
+ ydoc?: YDoc | null;
44
+ /** True after the collab provider has loaded persisted Y.Doc state. */
45
+ collabSynced?: boolean;
46
+ /** Shared awareness instance for live cursors/presence. */
47
+ awareness?: Awareness | null;
48
+ /** Current user info for the collaborative cursor label. */
49
+ user?: RichMarkdownCollabUser | null;
50
+ /**
51
+ * Disable StarterKit's built-in undo/redo for a controlled (non-collab)
52
+ * editor whose host owns its own undo authority (see
53
+ * {@link CreateSharedEditorExtensionsOptions.disableHistory}). Ignored when a
54
+ * `ydoc` is present (Yjs always owns history then). Default `false`, so every
55
+ * existing embedder is unchanged.
56
+ */
57
+ disableHistory?: boolean;
58
+ /** Override the slash-menu block command list. */
59
+ slashItems?: SlashCommandItem[];
60
+ /** Override the bubble-toolbar item builder. */
61
+ buildBubbleItems?: (editor: import("@tiptap/react").Editor, toggleLink: () => void) => BubbleToolbarItem[];
62
+ /**
63
+ * Override how the editor's content is read into the canonical `value`.
64
+ * Defaults to the tiptap-markdown storage reader. Apps with a custom on-disk
65
+ * format (Content's NFM, the plan's `blocks[]` JSON) pass their serializer so
66
+ * seed/reconcile/onChange all speak the same value space.
67
+ */
68
+ getMarkdown?: (editor: import("@tiptap/react").Editor) => string;
69
+ /** Override how the canonical `value` is applied into the editor (seed + reconcile). */
70
+ setContent?: (editor: import("@tiptap/react").Editor, value: string, options: {
71
+ emitUpdate?: boolean;
72
+ addToHistory?: boolean;
73
+ }) => void;
74
+ /**
75
+ * Optional parser for surgical reconcile. Custom value formats that already
76
+ * handle surgical writes inside `setContent` can pass `false` so the default
77
+ * markdown parser never treats their source bytes as literal markdown.
78
+ */
79
+ parseValue?: UseCollabReconcileOptions["parseValue"];
80
+ /** Canonicalize `value` for the echo / already-in-sync equality checks. */
81
+ normalizeValue?: (value: string) => string;
82
+ /** Override the empty-doc seed predicate (see {@link useCollabReconcile}). */
83
+ shouldSeed?: (info: {
84
+ value: string;
85
+ currentMarkdown: string;
86
+ fragmentLength: number;
87
+ }) => boolean;
88
+ /** Initial "applied" watermark (see {@link useCollabReconcile}). */
89
+ initialAppliedUpdatedAt?: string | null;
90
+ /** Extra class on the editor wrapper (e.g. a drag-handle `wrapperSelector` hook). */
91
+ wrapperClassName?: string;
92
+ /**
93
+ * Fires once the editor instance exists. Lets a host capture the root
94
+ * `editor.view` — e.g. to repaint the WHOLE document after a structural block
95
+ * move (a column emptied and its container dissolved) that a surgical
96
+ * per-region patch can't express, since the change is in the root doc itself.
97
+ */
98
+ onEditorReady?: (editor: import("@tiptap/react").Editor) => void;
99
+ }
100
+ /**
101
+ * The single shared rich markdown editor surface. Combines
102
+ * {@link createSharedEditorExtensions} (schema + dialect-keyed markdown +
103
+ * optional collab + app extras), {@link useCollabReconcile} (seed / reconcile /
104
+ * lead-client logic), and the shared {@link SlashCommandMenu} +
105
+ * {@link BubbleToolbar}.
106
+ *
107
+ * With no `ydoc` it is a controlled `value`/`onChange` single-user editor.
108
+ * With a `ydoc` it binds the framework collaboration stack; markdown stays the
109
+ * canonical saved representation while the Y.Doc is transient live state.
110
+ */
111
+ export declare function SharedRichEditor({ value, onChange, onBlur, contentUpdatedAt, editable, dialect, preset, features, dragHandle, onImageUpload, extraExtensions, placeholder, className, editorClassName, ariaLabel, interactive, ydoc, collabSynced, awareness, user, disableHistory, slashItems, buildBubbleItems, getMarkdown, setContent, parseValue, normalizeValue, shouldSeed, initialAppliedUpdatedAt, wrapperClassName, onEditorReady, }: SharedRichEditorProps): import("react").JSX.Element;
112
+ //# sourceMappingURL=SharedRichEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedRichEditor.d.ts","sourceRoot":"","sources":["../../src/editor/SharedRichEditor.tsx"],"names":[],"mappings":"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"}