@dxos/plugin-markdown 0.8.4-main.c4373fc → 0.8.4-main.c85a9c8dae

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 (392) hide show
  1. package/dist/lib/browser/MarkdownCard-5NPSEJ2M.mjs +61 -0
  2. package/dist/lib/browser/MarkdownCard-5NPSEJ2M.mjs.map +7 -0
  3. package/dist/lib/browser/MarkdownContainer-KER2N5M2.mjs +108 -0
  4. package/dist/lib/browser/MarkdownContainer-KER2N5M2.mjs.map +7 -0
  5. package/dist/lib/browser/MarkdownSettings-2N4TT2FG.mjs +106 -0
  6. package/dist/lib/browser/MarkdownSettings-2N4TT2FG.mjs.map +7 -0
  7. package/dist/lib/browser/anchor-sort-EHJGOCYW.mjs +34 -0
  8. package/dist/lib/browser/anchor-sort-EHJGOCYW.mjs.map +7 -0
  9. package/dist/lib/browser/app-graph-serializer-QBZDVASK.mjs +60 -0
  10. package/dist/lib/browser/app-graph-serializer-QBZDVASK.mjs.map +7 -0
  11. package/dist/lib/browser/blueprint-definition-ASGDSKKE.mjs +18 -0
  12. package/dist/lib/browser/blueprint-definition-ASGDSKKE.mjs.map +7 -0
  13. package/dist/lib/browser/blueprints/index.mjs +9 -0
  14. package/dist/lib/browser/chunk-7JEOX3X6.mjs +783 -0
  15. package/dist/lib/browser/chunk-7JEOX3X6.mjs.map +7 -0
  16. package/dist/lib/browser/chunk-HK6EGNP5.mjs +8 -0
  17. package/dist/lib/browser/chunk-HK6EGNP5.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-P3TN2W6M.mjs +154 -0
  19. package/dist/lib/browser/chunk-P3TN2W6M.mjs.map +7 -0
  20. package/dist/lib/browser/{chunk-NGXGBWSS.mjs → chunk-RJO5W5YX.mjs} +12 -6
  21. package/dist/lib/browser/chunk-RJO5W5YX.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-W24NJ6WB.mjs +178 -0
  23. package/dist/lib/browser/chunk-W24NJ6WB.mjs.map +7 -0
  24. package/dist/lib/browser/{chunk-ODB2PTBP.mjs → chunk-YBMRREXE.mjs} +4 -4
  25. package/dist/lib/browser/chunk-YBMRREXE.mjs.map +7 -0
  26. package/dist/lib/browser/cli/index.mjs +35 -0
  27. package/dist/lib/browser/cli/index.mjs.map +7 -0
  28. package/dist/lib/browser/index.mjs +127 -143
  29. package/dist/lib/browser/index.mjs.map +4 -4
  30. package/dist/lib/browser/meta.json +1 -1
  31. package/dist/lib/browser/operation-resolver-3KOXJM7P.mjs +54 -0
  32. package/dist/lib/browser/operation-resolver-3KOXJM7P.mjs.map +7 -0
  33. package/dist/lib/browser/react-surface-WU4VTE43.mjs +115 -0
  34. package/dist/lib/browser/react-surface-WU4VTE43.mjs.map +7 -0
  35. package/dist/lib/browser/settings-7FMWKB7N.mjs +38 -0
  36. package/dist/lib/browser/settings-7FMWKB7N.mjs.map +7 -0
  37. package/dist/lib/browser/state-7UJKJDGE.mjs +31 -0
  38. package/dist/lib/browser/state-7UJKJDGE.mjs.map +7 -0
  39. package/dist/lib/browser/types/index.mjs +11 -3
  40. package/dist/lib/node-esm/MarkdownCard-4MXS7AQR.mjs +62 -0
  41. package/dist/lib/node-esm/MarkdownCard-4MXS7AQR.mjs.map +7 -0
  42. package/dist/lib/node-esm/MarkdownContainer-BZ637MS3.mjs +109 -0
  43. package/dist/lib/node-esm/MarkdownContainer-BZ637MS3.mjs.map +7 -0
  44. package/dist/lib/node-esm/MarkdownSettings-FQTYCTD7.mjs +107 -0
  45. package/dist/lib/node-esm/MarkdownSettings-FQTYCTD7.mjs.map +7 -0
  46. package/dist/lib/node-esm/anchor-sort-QWZO6B2R.mjs +35 -0
  47. package/dist/lib/node-esm/anchor-sort-QWZO6B2R.mjs.map +7 -0
  48. package/dist/lib/node-esm/app-graph-serializer-3UVXEHJG.mjs +61 -0
  49. package/dist/lib/node-esm/app-graph-serializer-3UVXEHJG.mjs.map +7 -0
  50. package/dist/lib/node-esm/blueprint-definition-TG7OZIWW.mjs +19 -0
  51. package/dist/lib/node-esm/blueprint-definition-TG7OZIWW.mjs.map +7 -0
  52. package/dist/lib/node-esm/blueprints/index.mjs +10 -0
  53. package/dist/lib/node-esm/{chunk-YGSNWTGP.mjs → chunk-ANIFP6M2.mjs} +12 -6
  54. package/dist/lib/node-esm/chunk-ANIFP6M2.mjs.map +7 -0
  55. package/dist/lib/node-esm/chunk-KCH3EL53.mjs +10 -0
  56. package/dist/lib/node-esm/chunk-KCH3EL53.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-N73JZ4CD.mjs +784 -0
  58. package/dist/lib/node-esm/chunk-N73JZ4CD.mjs.map +7 -0
  59. package/dist/lib/node-esm/chunk-NBGAJPVH.mjs +179 -0
  60. package/dist/lib/node-esm/chunk-NBGAJPVH.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-VCG2U522.mjs → chunk-W7AM4HCG.mjs} +4 -4
  62. package/dist/lib/node-esm/chunk-W7AM4HCG.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-WBZQ246U.mjs +155 -0
  64. package/dist/lib/node-esm/chunk-WBZQ246U.mjs.map +7 -0
  65. package/dist/lib/node-esm/cli/index.mjs +36 -0
  66. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  67. package/dist/lib/node-esm/index.mjs +127 -143
  68. package/dist/lib/node-esm/index.mjs.map +4 -4
  69. package/dist/lib/node-esm/meta.json +1 -1
  70. package/dist/lib/node-esm/operation-resolver-2MEWKRFP.mjs +55 -0
  71. package/dist/lib/node-esm/operation-resolver-2MEWKRFP.mjs.map +7 -0
  72. package/dist/lib/node-esm/react-surface-LC5CI6VP.mjs +116 -0
  73. package/dist/lib/node-esm/react-surface-LC5CI6VP.mjs.map +7 -0
  74. package/dist/lib/node-esm/settings-DBK2SPWT.mjs +39 -0
  75. package/dist/lib/node-esm/settings-DBK2SPWT.mjs.map +7 -0
  76. package/dist/lib/node-esm/state-EEPLRAOT.mjs +32 -0
  77. package/dist/lib/node-esm/state-EEPLRAOT.mjs.map +7 -0
  78. package/dist/lib/node-esm/types/index.mjs +11 -3
  79. package/dist/types/src/MarkdownPlugin.d.ts +2 -1
  80. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  81. package/dist/types/src/{functions/open.d.ts → blueprints/functions/create.d.ts} +5 -4
  82. package/dist/types/src/blueprints/functions/create.d.ts.map +1 -0
  83. package/dist/types/src/blueprints/functions/create.test.d.ts +2 -0
  84. package/dist/types/src/blueprints/functions/create.test.d.ts.map +1 -0
  85. package/dist/types/src/blueprints/functions/index.d.ts +42 -0
  86. package/dist/types/src/blueprints/functions/index.d.ts.map +1 -0
  87. package/dist/types/src/blueprints/functions/open.d.ts +14 -0
  88. package/dist/types/src/blueprints/functions/open.d.ts.map +1 -0
  89. package/dist/types/src/blueprints/functions/update.d.ts +19 -0
  90. package/dist/types/src/blueprints/functions/update.d.ts.map +1 -0
  91. package/dist/types/src/blueprints/functions/update.test.d.ts +2 -0
  92. package/dist/types/src/blueprints/functions/update.test.d.ts.map +1 -0
  93. package/dist/types/src/blueprints/index.d.ts +2 -0
  94. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  95. package/dist/types/src/blueprints/markdown-blueprint.d.ts +4 -0
  96. package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +6 -0
  98. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +1 -0
  99. package/dist/types/src/capabilities/anchor-sort/index.d.ts +3 -0
  100. package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +1 -0
  101. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +5 -0
  102. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +1 -0
  103. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +3 -0
  104. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +1 -0
  105. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +5 -0
  106. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +1 -0
  107. package/dist/types/src/capabilities/artifact-definition/index.d.ts +3 -0
  108. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +1 -0
  109. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +6 -0
  110. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  111. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  112. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  113. package/dist/types/src/capabilities/index.d.ts +6 -17
  114. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  115. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  116. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  117. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  118. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  119. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  120. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  121. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  122. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  123. package/dist/types/src/capabilities/settings/index.d.ts +3 -0
  124. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  125. package/dist/types/src/capabilities/settings/settings.d.ts +7 -0
  126. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  127. package/dist/types/src/capabilities/state/index.d.ts +3 -0
  128. package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
  129. package/dist/types/src/capabilities/state/state.d.ts +5 -0
  130. package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
  131. package/dist/types/src/cli/index.d.ts +2 -0
  132. package/dist/types/src/cli/index.d.ts.map +1 -0
  133. package/dist/types/src/cli/plugin.d.ts +3 -0
  134. package/dist/types/src/cli/plugin.d.ts.map +1 -0
  135. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +11 -0
  136. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -0
  137. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +43 -23
  138. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  139. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +5 -110
  140. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  141. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +30 -0
  142. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -0
  143. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +12 -0
  144. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -0
  145. package/dist/types/src/components/index.d.ts +1 -3
  146. package/dist/types/src/components/index.d.ts.map +1 -1
  147. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts +8 -0
  148. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  149. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts +9 -0
  150. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  151. package/dist/types/src/{components → containers}/MarkdownCard/index.d.ts +0 -1
  152. package/dist/types/src/containers/MarkdownCard/index.d.ts.map +1 -0
  153. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts +27 -0
  154. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts.map +1 -0
  155. package/dist/types/src/{components → containers/MarkdownContainer}/MarkdownContainer.stories.d.ts +34 -1
  156. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts.map +1 -0
  157. package/dist/types/src/containers/MarkdownContainer/index.d.ts +3 -0
  158. package/dist/types/src/containers/MarkdownContainer/index.d.ts.map +1 -0
  159. package/dist/types/src/containers/MarkdownSettings/MarkdownSettings.d.ts +8 -0
  160. package/dist/types/src/containers/MarkdownSettings/MarkdownSettings.d.ts.map +1 -0
  161. package/dist/types/src/containers/MarkdownSettings/index.d.ts +3 -0
  162. package/dist/types/src/containers/MarkdownSettings/index.d.ts.map +1 -0
  163. package/dist/types/src/containers/index.d.ts +6 -0
  164. package/dist/types/src/containers/index.d.ts.map +1 -0
  165. package/dist/types/src/hooks/index.d.ts +3 -0
  166. package/dist/types/src/hooks/index.d.ts.map +1 -1
  167. package/dist/types/src/hooks/useEditorMenuOptions.d.ts +9 -0
  168. package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -0
  169. package/dist/types/src/hooks/useExtensions.d.ts +21 -0
  170. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -0
  171. package/dist/types/src/hooks/useLinkQuery.d.ts +4 -0
  172. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -0
  173. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
  174. package/dist/types/src/index.d.ts +2 -2
  175. package/dist/types/src/index.d.ts.map +1 -1
  176. package/dist/types/src/meta.d.ts +2 -2
  177. package/dist/types/src/meta.d.ts.map +1 -1
  178. package/dist/types/src/testing.d.ts +6 -0
  179. package/dist/types/src/testing.d.ts.map +1 -0
  180. package/dist/types/src/translations.d.ts +33 -0
  181. package/dist/types/src/translations.d.ts.map +1 -1
  182. package/dist/types/src/types/Markdown.d.ts +16 -14
  183. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  184. package/dist/types/src/types/MarkdownAction.d.ts +63 -30
  185. package/dist/types/src/types/MarkdownAction.d.ts.map +1 -1
  186. package/dist/types/src/types/capabilities.d.ts +22 -0
  187. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  188. package/dist/types/src/types/events.d.ts +5 -0
  189. package/dist/types/src/types/events.d.ts.map +1 -0
  190. package/dist/types/src/types/index.d.ts +3 -0
  191. package/dist/types/src/types/index.d.ts.map +1 -1
  192. package/dist/types/src/types/types.d.ts +2 -2
  193. package/dist/types/src/types/types.d.ts.map +1 -1
  194. package/dist/types/src/util.d.ts +6 -3
  195. package/dist/types/src/util.d.ts.map +1 -1
  196. package/dist/types/src/util.test.d.ts +2 -0
  197. package/dist/types/src/util.test.d.ts.map +1 -0
  198. package/dist/types/tsconfig.tsbuildinfo +1 -1
  199. package/package.json +95 -57
  200. package/src/MarkdownPlugin.tsx +65 -94
  201. package/src/blueprints/functions/create.conversations.json +1 -0
  202. package/src/blueprints/functions/create.test.ts +92 -0
  203. package/src/blueprints/functions/create.ts +35 -0
  204. package/src/blueprints/functions/index.ts +15 -0
  205. package/src/{functions → blueprints/functions}/open.ts +11 -10
  206. package/src/blueprints/functions/update.conversations.json +1 -0
  207. package/src/blueprints/functions/update.test.ts +215 -0
  208. package/src/blueprints/functions/update.ts +79 -0
  209. package/src/blueprints/index.ts +5 -0
  210. package/src/blueprints/markdown-blueprint.ts +46 -0
  211. package/src/capabilities/anchor-sort/anchor-sort.ts +37 -0
  212. package/src/capabilities/anchor-sort/index.ts +7 -0
  213. package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +60 -0
  214. package/src/capabilities/app-graph-serializer/index.ts +7 -0
  215. package/src/capabilities/artifact-definition/artifact-definition.ts +110 -0
  216. package/src/capabilities/artifact-definition/index.ts +7 -0
  217. package/src/capabilities/blueprint-definition/blueprint-definition.ts +17 -0
  218. package/src/capabilities/blueprint-definition/index.ts +7 -0
  219. package/src/capabilities/index.ts +6 -12
  220. package/src/capabilities/operation-resolver/index.ts +7 -0
  221. package/src/capabilities/operation-resolver/operation-resolver.ts +45 -0
  222. package/src/capabilities/react-surface/index.ts +7 -0
  223. package/src/capabilities/react-surface/react-surface.tsx +102 -0
  224. package/src/capabilities/settings/index.ts +7 -0
  225. package/src/capabilities/settings/settings.ts +37 -0
  226. package/src/capabilities/state/index.ts +7 -0
  227. package/src/capabilities/state/state.ts +31 -0
  228. package/src/cli/index.ts +5 -0
  229. package/src/cli/plugin.ts +30 -0
  230. package/src/components/MarkdownEditor/FileUpload.tsx +63 -0
  231. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +59 -39
  232. package/src/components/MarkdownEditor/MarkdownEditor.tsx +235 -271
  233. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +161 -0
  234. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +67 -0
  235. package/src/components/index.ts +2 -7
  236. package/src/containers/MarkdownCard/MarkdownCard.stories.tsx +68 -0
  237. package/src/containers/MarkdownCard/MarkdownCard.tsx +61 -0
  238. package/src/{components → containers}/MarkdownCard/index.ts +0 -2
  239. package/src/containers/MarkdownContainer/MarkdownContainer.stories.tsx +136 -0
  240. package/src/containers/MarkdownContainer/MarkdownContainer.tsx +114 -0
  241. package/src/containers/MarkdownContainer/index.ts +7 -0
  242. package/src/containers/MarkdownSettings/MarkdownSettings.tsx +122 -0
  243. package/src/containers/MarkdownSettings/index.ts +7 -0
  244. package/src/containers/index.ts +11 -0
  245. package/src/hooks/index.ts +3 -0
  246. package/src/hooks/useEditorMenuOptions.ts +68 -0
  247. package/src/hooks/useExtensions.tsx +245 -0
  248. package/src/hooks/useLinkQuery.ts +83 -0
  249. package/src/hooks/useSelectCurrentThread.tsx +37 -32
  250. package/src/index.ts +3 -2
  251. package/src/meta.ts +5 -5
  252. package/src/testing.ts +27 -0
  253. package/src/translations.ts +6 -0
  254. package/src/types/Markdown.ts +20 -11
  255. package/src/types/MarkdownAction.ts +48 -18
  256. package/src/types/capabilities.ts +38 -0
  257. package/src/types/events.ts +14 -0
  258. package/src/types/index.ts +4 -0
  259. package/src/types/types.ts +3 -2
  260. package/src/util.test.ts +44 -0
  261. package/src/util.tsx +82 -7
  262. package/dist/lib/browser/MarkdownCard-ZHTH6EVA.mjs +0 -80
  263. package/dist/lib/browser/MarkdownCard-ZHTH6EVA.mjs.map +0 -7
  264. package/dist/lib/browser/MarkdownContainer-XDYFBDCI.mjs +0 -750
  265. package/dist/lib/browser/MarkdownContainer-XDYFBDCI.mjs.map +0 -7
  266. package/dist/lib/browser/anchor-sort-53E7TJGF.mjs +0 -32
  267. package/dist/lib/browser/anchor-sort-53E7TJGF.mjs.map +0 -7
  268. package/dist/lib/browser/app-graph-serializer-IEPNJZBR.mjs +0 -51
  269. package/dist/lib/browser/app-graph-serializer-IEPNJZBR.mjs.map +0 -7
  270. package/dist/lib/browser/blueprint-definition-XDLVVSUN.mjs +0 -11
  271. package/dist/lib/browser/chunk-EVQGTH3P.mjs +0 -22
  272. package/dist/lib/browser/chunk-EVQGTH3P.mjs.map +0 -7
  273. package/dist/lib/browser/chunk-NGXGBWSS.mjs.map +0 -7
  274. package/dist/lib/browser/chunk-ODB2PTBP.mjs.map +0 -7
  275. package/dist/lib/browser/chunk-OY6CGPOO.mjs +0 -16
  276. package/dist/lib/browser/chunk-OY6CGPOO.mjs.map +0 -7
  277. package/dist/lib/browser/chunk-PMBWHKDI.mjs +0 -78
  278. package/dist/lib/browser/chunk-PMBWHKDI.mjs.map +0 -7
  279. package/dist/lib/browser/chunk-VZU7BRGW.mjs +0 -106
  280. package/dist/lib/browser/chunk-VZU7BRGW.mjs.map +0 -7
  281. package/dist/lib/browser/chunk-XYQDM6PM.mjs +0 -50
  282. package/dist/lib/browser/chunk-XYQDM6PM.mjs.map +0 -7
  283. package/dist/lib/browser/intent-resolver-66ZUQ6JC.mjs +0 -62
  284. package/dist/lib/browser/intent-resolver-66ZUQ6JC.mjs.map +0 -7
  285. package/dist/lib/browser/react-surface-ONX5RNFM.mjs +0 -215
  286. package/dist/lib/browser/react-surface-ONX5RNFM.mjs.map +0 -7
  287. package/dist/lib/browser/settings-HXM36BCZ.mjs +0 -28
  288. package/dist/lib/browser/settings-HXM36BCZ.mjs.map +0 -7
  289. package/dist/lib/browser/state-6QODXCSZ.mjs +0 -37
  290. package/dist/lib/browser/state-6QODXCSZ.mjs.map +0 -7
  291. package/dist/lib/browser/toolkit-73U3A7SD.mjs +0 -76
  292. package/dist/lib/browser/toolkit-73U3A7SD.mjs.map +0 -7
  293. package/dist/lib/node-esm/MarkdownCard-MEA4QAAI.mjs +0 -81
  294. package/dist/lib/node-esm/MarkdownCard-MEA4QAAI.mjs.map +0 -7
  295. package/dist/lib/node-esm/MarkdownContainer-7GYMOJVT.mjs +0 -751
  296. package/dist/lib/node-esm/MarkdownContainer-7GYMOJVT.mjs.map +0 -7
  297. package/dist/lib/node-esm/anchor-sort-V2FWEYDN.mjs +0 -33
  298. package/dist/lib/node-esm/anchor-sort-V2FWEYDN.mjs.map +0 -7
  299. package/dist/lib/node-esm/app-graph-serializer-HIN4NMUG.mjs +0 -52
  300. package/dist/lib/node-esm/app-graph-serializer-HIN4NMUG.mjs.map +0 -7
  301. package/dist/lib/node-esm/blueprint-definition-PDXZ67UQ.mjs +0 -12
  302. package/dist/lib/node-esm/chunk-35WAARP4.mjs +0 -79
  303. package/dist/lib/node-esm/chunk-35WAARP4.mjs.map +0 -7
  304. package/dist/lib/node-esm/chunk-CB2R4YIY.mjs +0 -17
  305. package/dist/lib/node-esm/chunk-CB2R4YIY.mjs.map +0 -7
  306. package/dist/lib/node-esm/chunk-IOC54NCF.mjs +0 -51
  307. package/dist/lib/node-esm/chunk-IOC54NCF.mjs.map +0 -7
  308. package/dist/lib/node-esm/chunk-VCG2U522.mjs.map +0 -7
  309. package/dist/lib/node-esm/chunk-VELFUWUH.mjs +0 -107
  310. package/dist/lib/node-esm/chunk-VELFUWUH.mjs.map +0 -7
  311. package/dist/lib/node-esm/chunk-W4XXBX33.mjs +0 -24
  312. package/dist/lib/node-esm/chunk-W4XXBX33.mjs.map +0 -7
  313. package/dist/lib/node-esm/chunk-YGSNWTGP.mjs.map +0 -7
  314. package/dist/lib/node-esm/intent-resolver-TNRIFHNH.mjs +0 -63
  315. package/dist/lib/node-esm/intent-resolver-TNRIFHNH.mjs.map +0 -7
  316. package/dist/lib/node-esm/react-surface-X2GV6WQH.mjs +0 -216
  317. package/dist/lib/node-esm/react-surface-X2GV6WQH.mjs.map +0 -7
  318. package/dist/lib/node-esm/settings-KPLQ5ONI.mjs +0 -29
  319. package/dist/lib/node-esm/settings-KPLQ5ONI.mjs.map +0 -7
  320. package/dist/lib/node-esm/state-W3PECOJX.mjs +0 -38
  321. package/dist/lib/node-esm/state-W3PECOJX.mjs.map +0 -7
  322. package/dist/lib/node-esm/toolkit-GUBDYF72.mjs +0 -77
  323. package/dist/lib/node-esm/toolkit-GUBDYF72.mjs.map +0 -7
  324. package/dist/types/src/capabilities/anchor-sort.d.ts +0 -6
  325. package/dist/types/src/capabilities/anchor-sort.d.ts.map +0 -1
  326. package/dist/types/src/capabilities/app-graph-serializer.d.ts +0 -4
  327. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +0 -1
  328. package/dist/types/src/capabilities/artifact-definition.d.ts +0 -3
  329. package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
  330. package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
  331. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
  332. package/dist/types/src/capabilities/capabilities.d.ts +0 -12
  333. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  334. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  335. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  336. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  337. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  338. package/dist/types/src/capabilities/settings.d.ts +0 -4
  339. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  340. package/dist/types/src/capabilities/state.d.ts +0 -11
  341. package/dist/types/src/capabilities/state.d.ts.map +0 -1
  342. package/dist/types/src/capabilities/toolkit.d.ts +0 -4
  343. package/dist/types/src/capabilities/toolkit.d.ts.map +0 -1
  344. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +0 -7
  345. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +0 -1
  346. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +0 -9
  347. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +0 -1
  348. package/dist/types/src/components/MarkdownCard/index.d.ts.map +0 -1
  349. package/dist/types/src/components/MarkdownContainer.d.ts +0 -18
  350. package/dist/types/src/components/MarkdownContainer.d.ts.map +0 -1
  351. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +0 -1
  352. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +0 -6
  353. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +0 -1
  354. package/dist/types/src/components/MarkdownSettings/index.d.ts +0 -2
  355. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +0 -1
  356. package/dist/types/src/components/Suggestions.stories.d.ts +0 -11
  357. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  358. package/dist/types/src/components/Toolbar.stories.d.ts +0 -48
  359. package/dist/types/src/components/Toolbar.stories.d.ts.map +0 -1
  360. package/dist/types/src/events.d.ts +0 -4
  361. package/dist/types/src/events.d.ts.map +0 -1
  362. package/dist/types/src/extensions.d.ts +0 -22
  363. package/dist/types/src/extensions.d.ts.map +0 -1
  364. package/dist/types/src/functions/diff.d.ts +0 -6
  365. package/dist/types/src/functions/diff.d.ts.map +0 -1
  366. package/dist/types/src/functions/index.d.ts +0 -3
  367. package/dist/types/src/functions/index.d.ts.map +0 -1
  368. package/dist/types/src/functions/open.d.ts.map +0 -1
  369. package/src/capabilities/anchor-sort.ts +0 -30
  370. package/src/capabilities/app-graph-serializer.ts +0 -54
  371. package/src/capabilities/artifact-definition.ts +0 -112
  372. package/src/capabilities/blueprint-definition.ts +0 -39
  373. package/src/capabilities/capabilities.ts +0 -21
  374. package/src/capabilities/intent-resolver.ts +0 -58
  375. package/src/capabilities/react-surface.tsx +0 -115
  376. package/src/capabilities/settings.ts +0 -25
  377. package/src/capabilities/state.ts +0 -31
  378. package/src/capabilities/toolkit.ts +0 -49
  379. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +0 -76
  380. package/src/components/MarkdownCard/MarkdownCard.tsx +0 -75
  381. package/src/components/MarkdownContainer.stories.tsx +0 -109
  382. package/src/components/MarkdownContainer.tsx +0 -257
  383. package/src/components/MarkdownSettings/MarkdownSettings.tsx +0 -108
  384. package/src/components/MarkdownSettings/index.ts +0 -5
  385. package/src/components/Suggestions.stories.tsx +0 -221
  386. package/src/components/Toolbar.stories.tsx +0 -118
  387. package/src/events.ts +0 -11
  388. package/src/extensions.tsx +0 -300
  389. package/src/functions/diff.ts +0 -37
  390. package/src/functions/index.ts +0 -6
  391. /package/dist/lib/browser/{blueprint-definition-XDLVVSUN.mjs.map → blueprints/index.mjs.map} +0 -0
  392. /package/dist/lib/node-esm/{blueprint-definition-PDXZ67UQ.mjs.map → blueprints/index.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,9 +1,13 @@
1
1
  {
2
2
  "name": "@dxos/plugin-markdown",
3
- "version": "0.8.4-main.c4373fc",
3
+ "version": "0.8.4-main.c85a9c8dae",
4
4
  "description": "DXOS Surface plugin for interacting with Markdown",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/dxos/dxos"
10
+ },
7
11
  "license": "MIT",
8
12
  "author": "DXOS.org",
9
13
  "sideEffects": true,
@@ -15,16 +19,40 @@
15
19
  "browser": "./dist/lib/browser/index.mjs",
16
20
  "node": "./dist/lib/node-esm/index.mjs"
17
21
  },
22
+ "./blueprints": {
23
+ "source": "./src/blueprints/index.ts",
24
+ "types": "./dist/types/src/blueprints/index.d.ts",
25
+ "browser": "./dist/lib/browser/blueprints/index.mjs",
26
+ "node": "./dist/lib/node-esm/blueprints/index.mjs"
27
+ },
28
+ "./cli": {
29
+ "source": "./src/cli/index.ts",
30
+ "types": "./dist/types/src/cli/index.d.ts",
31
+ "browser": "./dist/lib/browser/cli/index.mjs",
32
+ "node": "./dist/lib/node-esm/cli/index.mjs"
33
+ },
18
34
  "./types": {
19
35
  "source": "./src/types/index.ts",
20
36
  "types": "./dist/types/src/types/index.d.ts",
21
37
  "browser": "./dist/lib/browser/types/index.mjs",
22
38
  "node": "./dist/lib/node-esm/types/index.mjs"
39
+ },
40
+ "./testing": {
41
+ "source": "./src/testing.ts",
42
+ "types": "./dist/types/src/testing.d.ts",
43
+ "browser": "./dist/lib/browser/testing.mjs",
44
+ "node": "./dist/lib/node-esm/testing.mjs"
23
45
  }
24
46
  },
25
47
  "types": "dist/types/src/index.d.ts",
26
48
  "typesVersions": {
27
49
  "*": {
50
+ "blueprints": [
51
+ "dist/types/src/blueprints/index.d.ts"
52
+ ],
53
+ "toolkit": [
54
+ "dist/types/src/toolkit.d.ts"
55
+ ],
28
56
  "types": [
29
57
  "dist/types/src/types/index.d.ts"
30
58
  ]
@@ -35,69 +63,79 @@
35
63
  "src"
36
64
  ],
37
65
  "dependencies": {
38
- "@automerge/automerge": "3.1.2",
66
+ "@automerge/automerge": "3.2.3",
39
67
  "@codemirror/search": "^6.5.11",
68
+ "@codemirror/state": "^6.5.2",
40
69
  "@codemirror/view": "^6.38.4",
41
- "@effect/ai": "0.29.1",
42
- "@effect/experimental": "0.56.0",
43
- "@preact-signals/safe-react": "^0.9.0",
44
- "@preact/signals-core": "^1.12.1",
70
+ "@effect-atom/atom": "^0.5.1",
71
+ "@effect-atom/atom-react": "^0.5.0",
72
+ "@effect/ai": "0.33.2",
73
+ "@effect/experimental": "0.58.0",
74
+ "@radix-ui/react-context": "1.1.1",
45
75
  "react-dropzone": "^14.2.3",
46
- "@dxos/ai": "0.8.4-main.c4373fc",
47
- "@dxos/app-framework": "0.8.4-main.c4373fc",
48
- "@dxos/assistant": "0.8.4-main.c4373fc",
49
- "@dxos/async": "0.8.4-main.c4373fc",
50
- "@dxos/echo": "0.8.4-main.c4373fc",
51
- "@dxos/blueprints": "0.8.4-main.c4373fc",
52
- "@dxos/echo-db": "0.8.4-main.c4373fc",
53
- "@dxos/invariant": "0.8.4-main.c4373fc",
54
- "@dxos/keys": "0.8.4-main.c4373fc",
55
- "@dxos/functions": "0.8.4-main.c4373fc",
56
- "@dxos/live-object": "0.8.4-main.c4373fc",
57
- "@dxos/local-storage": "0.8.4-main.c4373fc",
58
- "@dxos/lit-ui": "0.8.4-main.c4373fc",
59
- "@dxos/log": "0.8.4-main.c4373fc",
60
- "@dxos/plugin-attention": "0.8.4-main.c4373fc",
61
- "@dxos/plugin-client": "0.8.4-main.c4373fc",
62
- "@dxos/plugin-deck": "0.8.4-main.c4373fc",
63
- "@dxos/plugin-graph": "0.8.4-main.c4373fc",
64
- "@dxos/plugin-space": "0.8.4-main.c4373fc",
65
- "@dxos/plugin-preview": "0.8.4-main.c4373fc",
66
- "@dxos/plugin-theme": "0.8.4-main.c4373fc",
67
- "@dxos/react-hooks": "0.8.4-main.c4373fc",
68
- "@dxos/react-ui-editor": "0.8.4-main.c4373fc",
69
- "@dxos/react-ui-attention": "0.8.4-main.c4373fc",
70
- "@dxos/react-ui-form": "0.8.4-main.c4373fc",
71
- "@dxos/react-ui-stack": "0.8.4-main.c4373fc",
72
- "@dxos/react-client": "0.8.4-main.c4373fc",
73
- "@dxos/util": "0.8.4-main.c4373fc",
74
- "@dxos/schema": "0.8.4-main.c4373fc"
76
+ "@dxos/ai": "0.8.4-main.c85a9c8dae",
77
+ "@dxos/app-toolkit": "0.8.4-main.c85a9c8dae",
78
+ "@dxos/async": "0.8.4-main.c85a9c8dae",
79
+ "@dxos/assistant": "0.8.4-main.c85a9c8dae",
80
+ "@dxos/app-framework": "0.8.4-main.c85a9c8dae",
81
+ "@dxos/blueprints": "0.8.4-main.c85a9c8dae",
82
+ "@dxos/client-protocol": "0.8.4-main.c85a9c8dae",
83
+ "@dxos/echo": "0.8.4-main.c85a9c8dae",
84
+ "@dxos/echo-db": "0.8.4-main.c85a9c8dae",
85
+ "@dxos/effect": "0.8.4-main.c85a9c8dae",
86
+ "@dxos/functions-runtime": "0.8.4-main.c85a9c8dae",
87
+ "@dxos/functions": "0.8.4-main.c85a9c8dae",
88
+ "@dxos/invariant": "0.8.4-main.c85a9c8dae",
89
+ "@dxos/keys": "0.8.4-main.c85a9c8dae",
90
+ "@dxos/operation": "0.8.4-main.c85a9c8dae",
91
+ "@dxos/log": "0.8.4-main.c85a9c8dae",
92
+ "@dxos/plugin-attention": "0.8.4-main.c85a9c8dae",
93
+ "@dxos/lit-ui": "0.8.4-main.c85a9c8dae",
94
+ "@dxos/plugin-client": "0.8.4-main.c85a9c8dae",
95
+ "@dxos/plugin-deck": "0.8.4-main.c85a9c8dae",
96
+ "@dxos/plugin-graph": "0.8.4-main.c85a9c8dae",
97
+ "@dxos/plugin-preview": "0.8.4-main.c85a9c8dae",
98
+ "@dxos/plugin-theme": "0.8.4-main.c85a9c8dae",
99
+ "@dxos/react-client": "0.8.4-main.c85a9c8dae",
100
+ "@dxos/react-hooks": "0.8.4-main.c85a9c8dae",
101
+ "@dxos/react-ui-attention": "0.8.4-main.c85a9c8dae",
102
+ "@dxos/plugin-space": "0.8.4-main.c85a9c8dae",
103
+ "@dxos/react-ui-form": "0.8.4-main.c85a9c8dae",
104
+ "@dxos/react-ui-editor": "0.8.4-main.c85a9c8dae",
105
+ "@dxos/react-ui-menu": "0.8.4-main.c85a9c8dae",
106
+ "@dxos/react-ui-stack": "0.8.4-main.c85a9c8dae",
107
+ "@dxos/schema": "0.8.4-main.c85a9c8dae",
108
+ "@dxos/react-ui-mosaic": "0.8.4-main.c85a9c8dae",
109
+ "@dxos/types": "0.8.4-main.c85a9c8dae",
110
+ "@dxos/ui": "0.8.4-main.c85a9c8dae",
111
+ "@dxos/ui-editor": "0.8.4-main.c85a9c8dae",
112
+ "@dxos/util": "0.8.4-main.c85a9c8dae"
75
113
  },
76
114
  "devDependencies": {
77
- "@effect-rx/rx-react": "0.42.4",
78
- "@effect/platform": "0.92.1",
79
- "@types/react": "~19.2.2",
80
- "@types/react-dom": "~19.2.1",
81
- "effect": "3.18.3",
82
- "react": "~19.2.0",
83
- "react-dom": "~19.2.0",
84
- "vite": "7.1.9",
85
- "@dxos/debug": "0.8.4-main.c4373fc",
86
- "@dxos/plugin-storybook-layout": "0.8.4-main.c4373fc",
87
- "@dxos/plugin-theme": "0.8.4-main.c4373fc",
88
- "@dxos/random": "0.8.4-main.c4373fc",
89
- "@dxos/react-ui": "0.8.4-main.c4373fc",
90
- "@dxos/storybook-utils": "0.8.4-main.c4373fc",
91
- "@dxos/react-ui-theme": "0.8.4-main.c4373fc"
115
+ "@effect-atom/atom-react": "^0.5.0",
116
+ "@effect/platform": "0.94.4",
117
+ "@types/react": "~19.2.7",
118
+ "@types/react-dom": "~19.2.3",
119
+ "effect": "3.19.16",
120
+ "react": "~19.2.3",
121
+ "react-dom": "~19.2.3",
122
+ "vite": "^7.1.11",
123
+ "@dxos/debug": "0.8.4-main.c85a9c8dae",
124
+ "@dxos/plugin-testing": "0.8.4-main.c85a9c8dae",
125
+ "@dxos/plugin-theme": "0.8.4-main.c85a9c8dae",
126
+ "@dxos/random": "0.8.4-main.c85a9c8dae",
127
+ "@dxos/react-ui": "0.8.4-main.c85a9c8dae",
128
+ "@dxos/storybook-utils": "0.8.4-main.c85a9c8dae",
129
+ "@dxos/ui-theme": "0.8.4-main.c85a9c8dae"
92
130
  },
93
131
  "peerDependencies": {
94
- "@effect-rx/rx-react": "^0.34.1",
95
- "@effect/platform": "^0.80.12",
96
- "effect": "^3.13.3",
97
- "react": "^19.0.0",
98
- "react-dom": "^19.0.0",
99
- "@dxos/react-ui": "0.8.4-main.c4373fc",
100
- "@dxos/react-ui-theme": "0.8.4-main.c4373fc"
132
+ "@effect-atom/atom-react": "^0.5.0",
133
+ "@effect/platform": "0.94.4",
134
+ "effect": "3.19.16",
135
+ "react": "~19.2.3",
136
+ "react-dom": "~19.2.3",
137
+ "@dxos/react-ui": "0.8.4-main.c85a9c8dae",
138
+ "@dxos/ui-theme": "0.8.4-main.c85a9c8dae"
101
139
  },
102
140
  "publishConfig": {
103
141
  "access": "public"
@@ -2,128 +2,99 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from '@dxos/app-framework';
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Capability, Plugin } from '@dxos/app-framework';
8
+ import { AppActivationEvents, AppPlugin } from '@dxos/app-toolkit';
6
9
  import { type Obj, Ref } from '@dxos/echo';
7
- import { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';
8
- import { SpaceCapabilities } from '@dxos/plugin-space';
9
- import { defineObjectForm } from '@dxos/plugin-space/types';
10
- import { createDocAccessor, getTextInRange } from '@dxos/react-client/echo';
10
+ import { createDocAccessor, getTextInRange } from '@dxos/echo-db';
11
+ import { Operation } from '@dxos/operation';
12
+ import { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';
13
+ import { type CreateObject } from '@dxos/plugin-space/types';
11
14
  import { translations as editorTranslations } from '@dxos/react-ui-editor';
12
- import { DataType } from '@dxos/schema';
15
+ import { Text } from '@dxos/schema';
13
16
 
17
+ import { MarkdownBlueprint } from './blueprints';
14
18
  import {
15
19
  AnchorSort,
16
20
  AppGraphSerializer,
17
- BLUEPRINT_KEY,
18
21
  BlueprintDefinition,
19
- IntentResolver,
20
22
  MarkdownSettings,
21
23
  MarkdownState,
24
+ OperationResolver,
22
25
  ReactSurface,
23
- Toolkit,
24
26
  } from './capabilities';
25
- import { MarkdownEvents } from './events';
26
27
  import { meta } from './meta';
27
28
  import { translations } from './translations';
28
- import { Markdown, MarkdownAction } from './types';
29
+ import { Markdown, MarkdownEvents, MarkdownOperation } from './types';
29
30
  import { serializer } from './util';
30
31
 
31
- export const MarkdownPlugin = definePlugin(meta, () => [
32
- defineModule({
33
- id: `${meta.id}/module/translations`,
34
- activatesOn: Events.SetupTranslations,
35
- activate: () => contributes(Capabilities.Translations, [...translations, ...editorTranslations]),
32
+ export const MarkdownPlugin = Plugin.define(meta).pipe(
33
+ AppPlugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),
34
+ AppPlugin.addMetadataModule({
35
+ metadata: {
36
+ id: Markdown.Document.typename,
37
+ metadata: {
38
+ label: (object: Markdown.Document) => object.name || object.fallbackName,
39
+ icon: 'ph--text-aa--regular',
40
+ iconHue: 'indigo',
41
+ blueprints: [MarkdownBlueprint.key],
42
+ graphProps: {
43
+ managesAutofocus: true,
44
+ },
45
+ // TODO(wittjosiah): Move out of metadata.
46
+ loadReferences: async (doc: Markdown.Document) => await Ref.Array.loadAll<Obj.Unknown>([doc.content]),
47
+ serializer,
48
+ // TODO(wittjosiah): Consider how to do generic comments without these.
49
+ comments: 'anchored',
50
+ selectionMode: 'multi-range',
51
+ getAnchorLabel: (doc: Markdown.Document, anchor: string): string | undefined => {
52
+ if (doc.content) {
53
+ const [start, end] = anchor.split(':');
54
+ return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);
55
+ }
56
+ },
57
+ createObject: ((props) => Effect.sync(() => Markdown.make(props))) satisfies CreateObject,
58
+ },
59
+ },
60
+ }),
61
+ AppPlugin.addOperationResolverModule({ activate: OperationResolver }),
62
+ AppPlugin.addSchemaModule({ schema: [Markdown.Document, Text.Text] }),
63
+ AppPlugin.addSurfaceModule({
64
+ activate: ReactSurface,
65
+ activatesBefore: [MarkdownEvents.SetupExtensions],
36
66
  }),
37
- defineModule({
38
- id: `${meta.id}/module/settings`,
39
- activatesOn: Events.SetupSettings,
67
+ AppPlugin.addTranslationsModule({ translations: [...translations, ...editorTranslations] }),
68
+ Plugin.addModule({
69
+ activatesOn: AppActivationEvents.SetupSettings,
40
70
  activate: MarkdownSettings,
41
71
  }),
42
- defineModule({
43
- id: `${meta.id}/module/state`,
72
+ Plugin.addModule({
73
+ id: 'state',
44
74
  // TODO(wittjosiah): Does not integrate with settings store.
45
75
  // Should this be a different event?
46
76
  // Should settings store be renamed to be more generic?
47
- activatesOn: Events.SetupSettings,
77
+ activatesOn: AppActivationEvents.SetupSettings,
48
78
  activate: MarkdownState,
49
79
  }),
50
- defineModule({
51
- id: `${meta.id}/module/metadata`,
52
- activatesOn: Events.SetupMetadata,
53
- activate: () =>
54
- contributes(Capabilities.Metadata, {
55
- id: Markdown.Document.typename,
56
- metadata: {
57
- label: (object: Markdown.Document) => object.name || object.fallbackName,
58
- icon: 'ph--text-aa--regular',
59
- blueprints: [BLUEPRINT_KEY],
60
- graphProps: {
61
- managesAutofocus: true,
62
- },
63
- // TODO(wittjosiah): Move out of metadata.
64
- loadReferences: async (doc: Markdown.Document) => await Ref.Array.loadAll<Obj.Any>([doc.content]),
65
- serializer,
66
- // TODO(wittjosiah): Consider how to do generic comments without these.
67
- comments: 'anchored',
68
- selectionMode: 'multi-range',
69
- getAnchorLabel: (doc: Markdown.Document, anchor: string): string | undefined => {
70
- if (doc.content) {
71
- const [start, end] = anchor.split(':');
72
- return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);
73
- }
74
- },
75
- },
76
- }),
77
- }),
78
- defineModule({
79
- id: `${meta.id}/module/object-form`,
80
- activatesOn: ClientEvents.SetupSchema,
80
+ Plugin.addModule({
81
+ id: 'on-space-created',
82
+ activatesOn: SpaceEvents.SpaceCreated,
81
83
  activate: () =>
82
- contributes(
83
- SpaceCapabilities.ObjectForm,
84
- defineObjectForm({
85
- objectSchema: Markdown.Document,
86
- getIntent: () => createIntent(MarkdownAction.Create, {}),
87
- }),
84
+ Effect.succeed(
85
+ Capability.contributes(SpaceCapabilities.OnCreateSpace, (params) =>
86
+ Operation.invoke(MarkdownOperation.OnCreateSpace, params),
87
+ ),
88
88
  ),
89
89
  }),
90
- defineModule({
91
- id: `${meta.id}/module/schema`,
92
- activatesOn: ClientEvents.SetupSchema,
93
- activate: () => contributes(ClientCapabilities.Schema, [DataType.Text]),
94
- }),
95
- defineModule({
96
- id: `${meta.id}/module/react-surface`,
97
- activatesOn: Events.SetupReactSurface,
98
- // TODO(wittjosiah): Should occur before the editor is loaded when surfaces activation is more granular.
99
- activatesBefore: [MarkdownEvents.SetupExtensions],
100
- activate: ReactSurface,
101
- }),
102
- defineModule({
103
- id: `${meta.id}/module/intent-resolver`,
104
- activatesOn: Events.SetupIntentResolver,
105
- activate: IntentResolver,
106
- }),
107
- defineModule({
108
- id: `${meta.id}/module/app-graph-serializer`,
109
- activatesOn: Events.AppGraphReady,
90
+ Plugin.addModule({
91
+ activatesOn: AppActivationEvents.AppGraphReady,
110
92
  activate: AppGraphSerializer,
111
93
  }),
112
- defineModule({
113
- id: `${meta.id}/module/anchor-sort`,
94
+ Plugin.addModule({
114
95
  // TODO(wittjosiah): More relevant event?
115
- activatesOn: Events.AppGraphReady,
96
+ activatesOn: AppActivationEvents.AppGraphReady,
116
97
  activate: AnchorSort,
117
98
  }),
118
- defineModule({
119
- id: `${meta.id}/module/blueprint`,
120
- activatesOn: Events.SetupArtifactDefinition,
121
- activate: BlueprintDefinition,
122
- }),
123
- defineModule({
124
- id: `${meta.id}/module/toolkit`,
125
- // TODO(wittjosiah): Use a different event.
126
- activatesOn: Events.Startup,
127
- activate: Toolkit,
128
- }),
129
- ]);
99
+ Plugin.make,
100
+ );
@@ -0,0 +1 @@
1
+ {"conversations":[{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"create","description":"Creates a new markdown document and adds it to the space.","inputSchema":{"type":"object","required":["name","content"],"properties":{"name":{"type":"string"},"content":{"type":"string"}},"additionalProperties":false}},{"name":"open","description":"Opens and reads the contents of a new markdown document.","inputSchema":{"type":"object","required":["doc"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update","description":"Applies a set of edits to the markdown document.","inputSchema":{"type":"object","required":["doc","edits"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"edits":{"type":"array","items":{"type":"object","required":["oldString","newString"],"properties":{"oldString":{"type":"string","description":"The text to find in the document."},"newString":{"type":"string","description":"The text to replace it with."},"replaceAll":{"type":"boolean","description":"If true, replaces all occurrences. Defaults to false (first occurrence only)."}},"additionalProperties":false},"description":"The edits to apply to the document. Each edit finds oldString and replaces it with newString."}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can create, read and update markdown documents.\n When asked to edit or update documents return updates as a set of compact diff string pairs.\n For each diff, respond with the smallest possible matching span.\n \n Example:\n ```diff\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id good.\"\n + \"This sentence is really good.\"\n ```\n</blueprint>","options":{}},{"role":"user","content":"Create a document with a cookie recipe.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_012u3Dc1U1Ajz41Sbdi3Ki7x","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants me to create a ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"document with a cookie recipe. I'll","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" use the create function to make a new","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" markdown document containing","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" a cookie recipe.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" I need to provide a name","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d content for the document.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EvUCCkYICxgCKkC5nwEtq9qckQ423iHc9Ln0OFnVtHRR7sUEV4ICNF8g2BxjGyutcobSpcWevhOsMSriOUhG2jxfh6c4rx/oA5SXEgzdSd4wUO5MEMKtBncaDMZiA93auhLoVS7bcCIwzYQWtY5OzjsTnzu9wwdqpV/0uFXqL/GYGchJCX+KoBmMRO+ze2WWOMbJA1+DTWKAKtwBfEcuem7ZDKl6SOwSe+zkgauQnFNAA4SwCuYOuH6Avqk3Jb/7Em3Y979foER8EyRLLrhlZGWDQsQ+4S0gF/5V4t1A/pSAwrejLYBfXE4QoLtMQcgfThDvH5h/ADe4DvPuVY3opqKc3/LcurvAeqf3ak5F4uiLpRs5VKL3fZVWEMeU4S/7fMGRaAiBKw6tYPFJUi+YUdL/26f0lw3nkqZV/f1QyhdYKf3uhfCZ1ljHDgwhBdGM1fQBzZqWmJk8C1jl8fouWHtX79ZbGVncuD2G00hUNdxIUfCXlQtYzBgB"}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll create","metadata":{}},{"type":"text-delta","id":"1","delta":" a ","metadata":{}},{"type":"text-delta","id":"1","delta":"document with a del","metadata":{}},{"type":"text-delta","id":"1","delta":"icious chocolate","metadata":{}},{"type":"text-delta","id":"1","delta":" chip cookie recipe for you.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"{\"na","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"me\": \"Choco","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"la","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"te Ch","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ip","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" Cookie R","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ecipe\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":", \"co","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nt","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ent\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" \"# Clas","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"sic Choco","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"late Chip","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" Cookies","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n\\n## Ingr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"edients\\n\\n#","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"## Dry ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Ingredients","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n- 2","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"¼ ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"cup","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s al","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"l-purpos","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"e flour\\n-","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" 1","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"sp ba","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"king ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"soda\\","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n-","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" 1 ts","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"p salt","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n\\n### We","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"t Ingr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"edients\\n- 1","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" cup ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"(2 sti","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"cks) butter","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":", soften","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ed\\n- ¾ cup ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"granulated s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ugar\\n- ¾ c","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"up packed","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" brown su","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"gar\\n- 2 ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"large eggs\\","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n- 2 tsp van","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"illa ext","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ract\\n\\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"### Mi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"x-ins\\n- 2 ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"cups chocola","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"te ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"chi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ps (s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"emi-sweet ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"or ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"milk cho","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"colat","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"e)\\n-","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" 1 cup c","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"hopped w","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"alnut","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s (optional","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":")\\n\\n#","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"# In","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"structions","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n\\n1. **Pr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"eheat oven*","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"* to 375","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"°F ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"(190","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"°C).\\n\\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"2. **Mix ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"dry ingr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ed","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ie","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nts**: I","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n a mediu","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"m ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"bowl, whisk ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"toget","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"her flour,","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" baking so","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"da","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":", and s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"al","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"t. Set asi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"de.\\n\\n3. ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**C","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ream","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" butte","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"r and sug","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ars**: In","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" a large bow","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"l, beat soft","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ened","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" butter, gr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"anulat","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ed su","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"gar, ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"and brown s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ugar ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"until","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" creamy ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"(about 3","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"-4 mi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nutes).\\","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n\\n4. **Add","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" egg","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s and va","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nil","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"la*","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*: Beat ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"in eggs","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" one at a ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ti","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"me, t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"hen add ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"vanilla e","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"xtrac","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"t.\\n\\n5. *","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*Combi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ne wet a","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nd dry**: ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Gradually be","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"at in ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"the ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"flour","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" mixture ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"unti","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"l just combi","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ned.","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" Do","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n't ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"overmix.\\n\\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"6. *","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*Fold ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"in chocola","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"te chips**: ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Stir in cho","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"colate ch","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ip","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s and ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nuts (if u","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"si","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ng).\\n\\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"7. *","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*S","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"hape cookie","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s**: Drop r","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ounded tab","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"lespoons ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"of dough ont","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"o ungreased","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" cookie shee","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ts, s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"pacing t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"he","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"m a","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"bout 2 inche","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s apart.\\n\\","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n8. ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**B","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ake**","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":": Bake f","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"or 9-11 m","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"inutes, or ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"until gol","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"den brown ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"aroun","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"d the","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" edges. Th","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"e cent","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ers may lo","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ok slight","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ly under","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"done.\\n\\","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n9","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":". **Cool**: ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Let co","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"okies cool o","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n the","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" bak","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ing sheet fo","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"r 2 minute","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s, then tra","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nsfe","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"r to a ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"wir","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"e rack.","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n\\n##","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" Tip","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s for Perf","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ect Co","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"okies\\n\\n-","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" **Room ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"temp","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"era","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ture i","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ngredients**","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" mix be","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"tter and c","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"reate a ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"smooth","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"er do","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ugh\\n- **","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Don't","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" ov","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"erbake**","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" - ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"cookie","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s will con","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"tin","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ue cooking o","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"n the hot p","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"an ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"after r","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"emoval\\n- ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**Chill ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"dou","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"gh","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"** for 30","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" minute","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s before ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"baking","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" for thick","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"er co","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"okies\\n- **","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"Use parch","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ment paper*","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"* ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"for ea","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"sy clea","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"nu","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"p and even","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" ba","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"kin","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"g\\n\\n## Stor","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ag","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"e\\n\\n- St","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ore ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"in an airt","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ight c","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ontainer a","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"t room t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"emp","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"erat","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ure for u","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"p to 1 we","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ek","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n- Freeze ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"bak","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ed cookies","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" for up to 3","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" months\\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"- Cookie do","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ug","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"h can be fro","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"zen for ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"up to 3 ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"mon","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ths","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"\\n\\n*","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*Yield","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**: About 4","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"8 cookie","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" \\n**Pre","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"p ti","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"me","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**: 15 min","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"utes \\n","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"**Bake time*","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"*:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" 9-11 ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"minute","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"s per batch","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" \\n\\nEnjoy","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":" your homem","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"ade cookies","metadata":{}},{"type":"tool-params-delta","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","delta":"! 🍪\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","metadata":{}},{"type":"tool-call","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","params":{"name":"Chocolate Chip Cookie Recipe","content":"# Classic Chocolate Chip Cookies\n\n## Ingredients\n\n### Dry Ingredients\n- 2¼ cups all-purpose flour\n- 1 tsp baking soda\n- 1 tsp salt\n\n### Wet Ingredients\n- 1 cup (2 sticks) butter, softened\n- ¾ cup granulated sugar\n- ¾ cup packed brown sugar\n- 2 large eggs\n- 2 tsp vanilla extract\n\n### Mix-ins\n- 2 cups chocolate chips (semi-sweet or milk chocolate)\n- 1 cup chopped walnuts (optional)\n\n## Instructions\n\n1. **Preheat oven** to 375°F (190°C).\n\n2. **Mix dry ingredients**: In a medium bowl, whisk together flour, baking soda, and salt. Set aside.\n\n3. **Cream butter and sugars**: In a large bowl, beat softened butter, granulated sugar, and brown sugar until creamy (about 3-4 minutes).\n\n4. **Add eggs and vanilla**: Beat in eggs one at a time, then add vanilla extract.\n\n5. **Combine wet and dry**: Gradually beat in the flour mixture until just combined. Don't overmix.\n\n6. **Fold in chocolate chips**: Stir in chocolate chips and nuts (if using).\n\n7. **Shape cookies**: Drop rounded tablespoons of dough onto ungreased cookie sheets, spacing them about 2 inches apart.\n\n8. **Bake**: Bake for 9-11 minutes, or until golden brown around the edges. The centers may look slightly underdone.\n\n9. **Cool**: Let cookies cool on the baking sheet for 2 minutes, then transfer to a wire rack.\n\n## Tips for Perfect Cookies\n\n- **Room temperature ingredients** mix better and create a smoother dough\n- **Don't overbake** - cookies will continue cooking on the hot pan after removal\n- **Chill dough** for 30 minutes before baking for thicker cookies\n- **Use parchment paper** for easy cleanup and even baking\n\n## Storage\n\n- Store in an airtight container at room temperature for up to 1 week\n- Freeze baked cookies for up to 3 months\n- Cookie dough can be frozen for up to 3 months\n\n**Yield**: About 48 cookies \n**Prep time**: 15 minutes \n**Bake time**: 9-11 minutes per batch \n\nEnjoy your homemade cookies! 🍪"},"providerExecuted":false,"metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":721,"totalTokens":731},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":1400},"cache_creation_input_tokens":1400,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"create","description":"Creates a new markdown document and adds it to the space.","inputSchema":{"type":"object","required":["name","content"],"properties":{"name":{"type":"string"},"content":{"type":"string"}},"additionalProperties":false}},{"name":"open","description":"Opens and reads the contents of a new markdown document.","inputSchema":{"type":"object","required":["doc"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update","description":"Applies a set of edits to the markdown document.","inputSchema":{"type":"object","required":["doc","edits"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"edits":{"type":"array","items":{"type":"object","required":["oldString","newString"],"properties":{"oldString":{"type":"string","description":"The text to find in the document."},"newString":{"type":"string","description":"The text to replace it with."},"replaceAll":{"type":"boolean","description":"If true, replaces all occurrences. Defaults to false (first occurrence only)."}},"additionalProperties":false},"description":"The edits to apply to the document. Each edit finds oldString and replaces it with newString."}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can create, read and update markdown documents.\n When asked to edit or update documents return updates as a set of compact diff string pairs.\n For each diff, respond with the smallest possible matching span.\n \n Example:\n ```diff\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id good.\"\n + \"This sentence is really good.\"\n ```\n</blueprint>","options":{}},{"role":"user","content":"Create a document with a cookie recipe.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants me to create a document with a cookie recipe. I'll use the create function to make a new markdown document containing a cookie recipe. I need to provide a name and content for the document.","options":{}},{"type":"text","text":"I'll create a document with a delicious chocolate chip cookie recipe for you.","options":{}},{"type":"tool-call","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","params":{"name":"Chocolate Chip Cookie Recipe","content":"# Classic Chocolate Chip Cookies\n\n## Ingredients\n\n### Dry Ingredients\n- 2¼ cups all-purpose flour\n- 1 tsp baking soda\n- 1 tsp salt\n\n### Wet Ingredients\n- 1 cup (2 sticks) butter, softened\n- ¾ cup granulated sugar\n- ¾ cup packed brown sugar\n- 2 large eggs\n- 2 tsp vanilla extract\n\n### Mix-ins\n- 2 cups chocolate chips (semi-sweet or milk chocolate)\n- 1 cup chopped walnuts (optional)\n\n## Instructions\n\n1. **Preheat oven** to 375°F (190°C).\n\n2. **Mix dry ingredients**: In a medium bowl, whisk together flour, baking soda, and salt. Set aside.\n\n3. **Cream butter and sugars**: In a large bowl, beat softened butter, granulated sugar, and brown sugar until creamy (about 3-4 minutes).\n\n4. **Add eggs and vanilla**: Beat in eggs one at a time, then add vanilla extract.\n\n5. **Combine wet and dry**: Gradually beat in the flour mixture until just combined. Don't overmix.\n\n6. **Fold in chocolate chips**: Stir in chocolate chips and nuts (if using).\n\n7. **Shape cookies**: Drop rounded tablespoons of dough onto ungreased cookie sheets, spacing them about 2 inches apart.\n\n8. **Bake**: Bake for 9-11 minutes, or until golden brown around the edges. The centers may look slightly underdone.\n\n9. **Cool**: Let cookies cool on the baking sheet for 2 minutes, then transfer to a wire rack.\n\n## Tips for Perfect Cookies\n\n- **Room temperature ingredients** mix better and create a smoother dough\n- **Don't overbake** - cookies will continue cooking on the hot pan after removal\n- **Chill dough** for 30 minutes before baking for thicker cookies\n- **Use parchment paper** for easy cleanup and even baking\n\n## Storage\n\n- Store in an airtight container at room temperature for up to 1 week\n- Freeze baked cookies for up to 3 months\n- Cookie dough can be frozen for up to 3 months\n\n**Yield**: About 48 cookies \n**Prep time**: 15 minutes \n**Bake time**: 9-11 minutes per batch \n\nEnjoy your homemade cookies! 🍪"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","isFailure":false,"result":{"id":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNT8X"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01WzwZqUk2X7iaec8CSSXgt7","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve create","metadata":{}},{"type":"text-delta","id":"0","delta":"d a ","metadata":{}},{"type":"text-delta","id":"0","delta":"document with a classic chocolate chip cookie recipe!","metadata":{}},{"type":"text-delta","id":"0","delta":" The recipe","metadata":{}},{"type":"text-delta","id":"0","delta":" includes:\n\n- A complete ingredient list","metadata":{}},{"type":"text-delta","id":"0","delta":" with measurements\n- Step-by-","metadata":{}},{"type":"text-delta","id":"0","delta":"step instructions\n- Helpful tips for","metadata":{}},{"type":"text-delta","id":"0","delta":" getting","metadata":{}},{"type":"text-delta","id":"0","delta":" perfect cookies\n- Storage instructions","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- Yield an","metadata":{}},{"type":"text-delta","id":"0","delta":"d timing information\n\nThe recipe","metadata":{}},{"type":"text-delta","id":"0","delta":" is for","metadata":{}},{"type":"text-delta","id":"0","delta":" traditional","metadata":{}},{"type":"text-delta","id":"0","delta":" chocolate chip cookies that","metadata":{}},{"type":"text-delta","id":"0","delta":" yiel","metadata":{}},{"type":"text-delta","id":"0","delta":"d about 48 cookies. It","metadata":{}},{"type":"text-delta","id":"0","delta":" includes","metadata":{}},{"type":"text-delta","id":"0","delta":" optional","metadata":{}},{"type":"text-delta","id":"0","delta":" w","metadata":{}},{"type":"text-delta","id":"0","delta":"alnuts and tips","metadata":{}},{"type":"text-delta","id":"0","delta":" for achieving","metadata":{}},{"type":"text-delta","id":"0","delta":" the best texture","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-delta","id":"0","delta":" Would you like me to modify anything in","metadata":{}},{"type":"text-delta","id":"0","delta":" the recipe or add any additional sections?","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":103,"totalTokens":109},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":2116},"cache_creation_input_tokens":2116,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"create","description":"Creates a new markdown document and adds it to the space.","inputSchema":{"type":"object","required":["name","content"],"properties":{"name":{"type":"string"},"content":{"type":"string"}},"additionalProperties":false}},{"name":"open","description":"Opens and reads the contents of a new markdown document.","inputSchema":{"type":"object","required":["doc"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update","description":"Applies a set of edits to the markdown document.","inputSchema":{"type":"object","required":["doc","edits"],"properties":{"doc":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"edits":{"type":"array","items":{"type":"object","required":["oldString","newString"],"properties":{"oldString":{"type":"string","description":"The text to find in the document."},"newString":{"type":"string","description":"The text to replace it with."},"replaceAll":{"type":"boolean","description":"If true, replaces all occurrences. Defaults to false (first occurrence only)."}},"additionalProperties":false},"description":"The edits to apply to the document. Each edit finds oldString and replaces it with newString."}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can create, read and update markdown documents.\n When asked to edit or update documents return updates as a set of compact diff string pairs.\n For each diff, respond with the smallest possible matching span.\n \n Example:\n ```diff\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id good.\"\n + \"This sentence is really good.\"\n ```\n</blueprint>","options":{}},{"role":"user","content":"Create a document with a cookie recipe.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants me to create a document with a cookie recipe. I'll use the create function to make a new markdown document containing a cookie recipe. I need to provide a name and content for the document.","options":{}},{"type":"text","text":"I'll create a document with a delicious chocolate chip cookie recipe for you.","options":{}},{"type":"tool-call","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","params":{"name":"Chocolate Chip Cookie Recipe","content":"# Classic Chocolate Chip Cookies\n\n## Ingredients\n\n### Dry Ingredients\n- 2¼ cups all-purpose flour\n- 1 tsp baking soda\n- 1 tsp salt\n\n### Wet Ingredients\n- 1 cup (2 sticks) butter, softened\n- ¾ cup granulated sugar\n- ¾ cup packed brown sugar\n- 2 large eggs\n- 2 tsp vanilla extract\n\n### Mix-ins\n- 2 cups chocolate chips (semi-sweet or milk chocolate)\n- 1 cup chopped walnuts (optional)\n\n## Instructions\n\n1. **Preheat oven** to 375°F (190°C).\n\n2. **Mix dry ingredients**: In a medium bowl, whisk together flour, baking soda, and salt. Set aside.\n\n3. **Cream butter and sugars**: In a large bowl, beat softened butter, granulated sugar, and brown sugar until creamy (about 3-4 minutes).\n\n4. **Add eggs and vanilla**: Beat in eggs one at a time, then add vanilla extract.\n\n5. **Combine wet and dry**: Gradually beat in the flour mixture until just combined. Don't overmix.\n\n6. **Fold in chocolate chips**: Stir in chocolate chips and nuts (if using).\n\n7. **Shape cookies**: Drop rounded tablespoons of dough onto ungreased cookie sheets, spacing them about 2 inches apart.\n\n8. **Bake**: Bake for 9-11 minutes, or until golden brown around the edges. The centers may look slightly underdone.\n\n9. **Cool**: Let cookies cool on the baking sheet for 2 minutes, then transfer to a wire rack.\n\n## Tips for Perfect Cookies\n\n- **Room temperature ingredients** mix better and create a smoother dough\n- **Don't overbake** - cookies will continue cooking on the hot pan after removal\n- **Chill dough** for 30 minutes before baking for thicker cookies\n- **Use parchment paper** for easy cleanup and even baking\n\n## Storage\n\n- Store in an airtight container at room temperature for up to 1 week\n- Freeze baked cookies for up to 3 months\n- Cookie dough can be frozen for up to 3 months\n\n**Yield**: About 48 cookies \n**Prep time**: 15 minutes \n**Bake time**: 9-11 minutes per batch \n\nEnjoy your homemade cookies! 🍪"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01HuKer6SH3fbApR4kTiyNPH","name":"create","isFailure":false,"result":{"id":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNT90"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01NHwfxknTwKcQC1P8hrbg6Z","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I've create","metadata":{}},{"type":"text-delta","id":"0","delta":"d a ","metadata":{}},{"type":"text-delta","id":"0","delta":"document with a classic chocolate chip cookie recipe!","metadata":{}},{"type":"text-delta","id":"0","delta":" The recipe","metadata":{}},{"type":"text-delta","id":"0","delta":" includes:\n\n- A complete list","metadata":{}},{"type":"text-delta","id":"0","delta":" of ingredients with measurements\n- Step-","metadata":{}},{"type":"text-delta","id":"0","delta":"by-step instructions that","metadata":{}},{"type":"text-delta","id":"0","delta":" are easy to follow\n- Helpful","metadata":{}},{"type":"text-delta","id":"0","delta":" tips for achieving","metadata":{}},{"type":"text-delta","id":"0","delta":" perfect cookies\n- Storage instructions for both","metadata":{}},{"type":"text-delta","id":"0","delta":" cookies","metadata":{}},{"type":"text-delta","id":"0","delta":" and dough\n- Recipe","metadata":{}},{"type":"text-delta","id":"0","delta":" yield and timing information","metadata":{}},{"type":"text-delta","id":"0","delta":"\n\nThe recipe","metadata":{}},{"type":"text-delta","id":"0","delta":" makes","metadata":{}},{"type":"text-delta","id":"0","delta":" about 48 cookies an","metadata":{}},{"type":"text-delta","id":"0","delta":"d includes","metadata":{}},{"type":"text-delta","id":"0","delta":" optional","metadata":{}},{"type":"text-delta","id":"0","delta":" w","metadata":{}},{"type":"text-delta","id":"0","delta":"alnuts for those","metadata":{}},{"type":"text-delta","id":"0","delta":" who enjoy","metadata":{}},{"type":"text-delta","id":"0","delta":" nuts","metadata":{}},{"type":"text-delta","id":"0","delta":" in","metadata":{}},{"type":"text-delta","id":"0","delta":" their cookies. Feel","metadata":{}},{"type":"text-delta","id":"0","delta":" free to let","metadata":{}},{"type":"text-delta","id":"0","delta":" me know if you'd like me","metadata":{}},{"type":"text-delta","id":"0","delta":" to modify the","metadata":{}},{"type":"text-delta","id":"0","delta":" recipe in any way,","metadata":{}},{"type":"text-delta","id":"0","delta":" such","metadata":{}},{"type":"text-delta","id":"0","delta":" as making","metadata":{}},{"type":"text-delta","id":"0","delta":" it gl","metadata":{}},{"type":"text-delta","id":"0","delta":"uten-free,","metadata":{}},{"type":"text-delta","id":"0","delta":" adding different","metadata":{}},{"type":"text-delta","id":"0","delta":" mix-ins, or adjust","metadata":{}},{"type":"text-delta","id":"0","delta":"ing the batch","metadata":{}},{"type":"text-delta","id":"0","delta":" size!","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":133,"totalTokens":139},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":2115},"cache_creation_input_tokens":2115,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]}]}