@dxos/plugin-thread 0.8.1-staging.5be625a → 0.8.1-staging.9eaf14f

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 (152) hide show
  1. package/dist/lib/browser/ChatContainer-IOOAQW6S.mjs +138 -0
  2. package/dist/lib/browser/ChatContainer-IOOAQW6S.mjs.map +7 -0
  3. package/dist/lib/browser/app-graph-builder-6W4UKJDI.mjs +41 -0
  4. package/dist/lib/browser/app-graph-builder-6W4UKJDI.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-NOOMCX5E.mjs → chunk-EP6MRLY7.mjs} +1 -2
  6. package/dist/lib/browser/chunk-EP6MRLY7.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-SMQYULO6.mjs → chunk-QDJ3Y6WF.mjs} +15 -32
  8. package/dist/lib/browser/chunk-QDJ3Y6WF.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-S5ZR4FYW.mjs +17 -0
  10. package/dist/lib/browser/chunk-S5ZR4FYW.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-NRMJGYMA.mjs → chunk-TFVPUPOO.mjs} +19 -131
  12. package/dist/lib/browser/chunk-TFVPUPOO.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-SJPT347G.mjs → chunk-WOG72DWE.mjs} +8 -7
  14. package/dist/lib/browser/chunk-WOG72DWE.mjs.map +7 -0
  15. package/dist/lib/browser/index.mjs +16 -29
  16. package/dist/lib/browser/index.mjs.map +3 -3
  17. package/dist/lib/browser/{intent-resolver-FSG3ZOIM.mjs → intent-resolver-QAY4FLLM.mjs} +76 -39
  18. package/dist/lib/browser/intent-resolver-QAY4FLLM.mjs.map +7 -0
  19. package/dist/lib/browser/{markdown-MYZQDQFY.mjs → markdown-7KXBXCUS.mjs} +6 -7
  20. package/dist/lib/browser/{markdown-MYZQDQFY.mjs.map → markdown-7KXBXCUS.mjs.map} +3 -3
  21. package/dist/lib/browser/meta.json +1 -1
  22. package/dist/lib/browser/{react-surface-KOYRIK3E.mjs → react-surface-MT3OWULR.mjs} +47 -36
  23. package/dist/lib/browser/react-surface-MT3OWULR.mjs.map +7 -0
  24. package/dist/lib/browser/{settings-5CREE7BH.mjs → settings-4FEC7EAX.mjs} +2 -2
  25. package/dist/lib/browser/{state-HPUFZBB7.mjs → state-PNMSLKAH.mjs} +2 -2
  26. package/dist/lib/browser/types.mjs +1 -1
  27. package/dist/lib/node/ChatContainer-4FNDRF3G.cjs +163 -0
  28. package/dist/lib/node/ChatContainer-4FNDRF3G.cjs.map +7 -0
  29. package/dist/lib/node/app-graph-builder-HZNWT4QU.cjs +57 -0
  30. package/dist/lib/node/app-graph-builder-HZNWT4QU.cjs.map +7 -0
  31. package/dist/lib/node/{chunk-AXTPNGRI.cjs → chunk-46BSFPBV.cjs} +10 -9
  32. package/dist/lib/node/chunk-46BSFPBV.cjs.map +7 -0
  33. package/dist/lib/node/{chunk-JBOC6MIE.cjs → chunk-AKINTFBH.cjs} +17 -47
  34. package/dist/lib/node/chunk-AKINTFBH.cjs.map +7 -0
  35. package/dist/lib/node/chunk-E7Z3BKRQ.cjs +232 -0
  36. package/dist/lib/node/chunk-E7Z3BKRQ.cjs.map +7 -0
  37. package/dist/lib/node/{chunk-VEVJBOWK.cjs → chunk-NQ5DTPOY.cjs} +4 -5
  38. package/dist/lib/node/chunk-NQ5DTPOY.cjs.map +7 -0
  39. package/dist/lib/node/chunk-S2A6BXEA.cjs +53 -0
  40. package/dist/lib/node/chunk-S2A6BXEA.cjs.map +7 -0
  41. package/dist/lib/node/index.cjs +19 -34
  42. package/dist/lib/node/index.cjs.map +3 -3
  43. package/dist/lib/node/{intent-resolver-NBME5QSW.cjs → intent-resolver-S6FE5OR7.cjs} +99 -62
  44. package/dist/lib/node/intent-resolver-S6FE5OR7.cjs.map +7 -0
  45. package/dist/lib/node/{markdown-QBQTARMD.cjs → markdown-L2WMCQKM.cjs} +10 -11
  46. package/dist/lib/node/{markdown-QBQTARMD.cjs.map → markdown-L2WMCQKM.cjs.map} +3 -3
  47. package/dist/lib/node/meta.json +1 -1
  48. package/dist/lib/node/{react-surface-ICWYXRJU.cjs → react-surface-Z45BYECE.cjs} +54 -43
  49. package/dist/lib/node/react-surface-Z45BYECE.cjs.map +7 -0
  50. package/dist/lib/node/{settings-XOLYNUHH.cjs → settings-IXCPE55J.cjs} +6 -6
  51. package/dist/lib/node/{state-JMI5ZXZI.cjs → state-AT73KPGZ.cjs} +6 -6
  52. package/dist/lib/node/types.cjs +3 -3
  53. package/dist/lib/node/types.cjs.map +1 -1
  54. package/dist/lib/node-esm/ChatContainer-NYLCL6QA.mjs +139 -0
  55. package/dist/lib/node-esm/ChatContainer-NYLCL6QA.mjs.map +7 -0
  56. package/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs +42 -0
  57. package/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs.map +7 -0
  58. package/dist/lib/node-esm/{chunk-TW2NME6Z.mjs → chunk-ADTVMESP.mjs} +19 -131
  59. package/dist/lib/node-esm/chunk-ADTVMESP.mjs.map +7 -0
  60. package/dist/lib/node-esm/{chunk-FZXTP57V.mjs → chunk-E446MGLP.mjs} +8 -7
  61. package/dist/lib/node-esm/chunk-E446MGLP.mjs.map +7 -0
  62. package/dist/lib/node-esm/{chunk-XQO5DGHF.mjs → chunk-J56FORYF.mjs} +15 -32
  63. package/dist/lib/node-esm/chunk-J56FORYF.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-TXW5SIBN.mjs → chunk-WLY2HMDB.mjs} +1 -2
  65. package/dist/lib/node-esm/chunk-WLY2HMDB.mjs.map +7 -0
  66. package/dist/lib/node-esm/chunk-WSE23GSG.mjs +19 -0
  67. package/dist/lib/node-esm/chunk-WSE23GSG.mjs.map +7 -0
  68. package/dist/lib/node-esm/index.mjs +16 -29
  69. package/dist/lib/node-esm/index.mjs.map +3 -3
  70. package/dist/lib/node-esm/{intent-resolver-QQCCKVEW.mjs → intent-resolver-OURFRSSF.mjs} +76 -39
  71. package/dist/lib/node-esm/intent-resolver-OURFRSSF.mjs.map +7 -0
  72. package/dist/lib/node-esm/{markdown-QO5HK24O.mjs → markdown-ZKU23UVD.mjs} +6 -7
  73. package/dist/lib/node-esm/{markdown-QO5HK24O.mjs.map → markdown-ZKU23UVD.mjs.map} +3 -3
  74. package/dist/lib/node-esm/meta.json +1 -1
  75. package/dist/lib/node-esm/{react-surface-Z4CLCKTN.mjs → react-surface-KIJ767JK.mjs} +47 -36
  76. package/dist/lib/node-esm/react-surface-KIJ767JK.mjs.map +7 -0
  77. package/dist/lib/node-esm/{settings-32PBKVBB.mjs → settings-ZUJQ4LWI.mjs} +2 -2
  78. package/dist/lib/node-esm/{state-PSZO57LP.mjs → state-SSDX5O67.mjs} +2 -2
  79. package/dist/lib/node-esm/types.mjs +1 -1
  80. package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
  81. package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
  82. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  83. package/dist/types/src/capabilities/capabilities.d.ts +0 -5
  84. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/index.d.ts +177 -0
  86. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  89. package/dist/types/src/components/ChatContainer.d.ts +1 -0
  90. package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
  91. package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
  92. package/dist/types/src/components/ThreadComplementary.d.ts.map +1 -1
  93. package/dist/types/src/components/index.d.ts +1 -5
  94. package/dist/types/src/components/index.d.ts.map +1 -1
  95. package/dist/types/src/components/testing.d.ts +1 -0
  96. package/dist/types/src/components/testing.d.ts.map +1 -1
  97. package/dist/types/src/hooks/analytics.d.ts +0 -1
  98. package/dist/types/src/hooks/analytics.d.ts.map +1 -1
  99. package/dist/types/src/translations.d.ts +3 -3
  100. package/dist/types/src/types.d.ts +20 -5
  101. package/dist/types/src/types.d.ts.map +1 -1
  102. package/package.json +33 -33
  103. package/src/ThreadPlugin.tsx +8 -23
  104. package/src/capabilities/app-graph-builder.ts +34 -0
  105. package/src/capabilities/capabilities.ts +0 -6
  106. package/src/capabilities/index.ts +1 -0
  107. package/src/capabilities/intent-resolver.ts +59 -29
  108. package/src/capabilities/react-surface.tsx +27 -13
  109. package/src/components/ChatContainer.tsx +3 -1
  110. package/src/components/MessageContainer.tsx +5 -3
  111. package/src/components/ThreadComplementary.tsx +24 -31
  112. package/src/components/index.ts +1 -2
  113. package/src/components/testing.ts +2 -2
  114. package/src/extensions/threads.ts +1 -1
  115. package/src/hooks/analytics.ts +19 -19
  116. package/src/translations.ts +1 -1
  117. package/src/types.ts +5 -5
  118. package/src/util.ts +1 -1
  119. package/dist/lib/browser/ChannelContainer-ITIG7L7P.mjs +0 -75
  120. package/dist/lib/browser/ChannelContainer-ITIG7L7P.mjs.map +0 -7
  121. package/dist/lib/browser/chunk-NOOMCX5E.mjs.map +0 -7
  122. package/dist/lib/browser/chunk-NRMJGYMA.mjs.map +0 -7
  123. package/dist/lib/browser/chunk-SJPT347G.mjs.map +0 -7
  124. package/dist/lib/browser/chunk-SMQYULO6.mjs.map +0 -7
  125. package/dist/lib/browser/intent-resolver-FSG3ZOIM.mjs.map +0 -7
  126. package/dist/lib/browser/react-surface-KOYRIK3E.mjs.map +0 -7
  127. package/dist/lib/node/ChannelContainer-F7345XW2.cjs +0 -99
  128. package/dist/lib/node/ChannelContainer-F7345XW2.cjs.map +0 -7
  129. package/dist/lib/node/chunk-AXTPNGRI.cjs.map +0 -7
  130. package/dist/lib/node/chunk-DGV5ABT6.cjs +0 -338
  131. package/dist/lib/node/chunk-DGV5ABT6.cjs.map +0 -7
  132. package/dist/lib/node/chunk-JBOC6MIE.cjs.map +0 -7
  133. package/dist/lib/node/chunk-VEVJBOWK.cjs.map +0 -7
  134. package/dist/lib/node/intent-resolver-NBME5QSW.cjs.map +0 -7
  135. package/dist/lib/node/react-surface-ICWYXRJU.cjs.map +0 -7
  136. package/dist/lib/node-esm/ChannelContainer-GP6Y6JSN.mjs +0 -76
  137. package/dist/lib/node-esm/ChannelContainer-GP6Y6JSN.mjs.map +0 -7
  138. package/dist/lib/node-esm/chunk-FZXTP57V.mjs.map +0 -7
  139. package/dist/lib/node-esm/chunk-TW2NME6Z.mjs.map +0 -7
  140. package/dist/lib/node-esm/chunk-TXW5SIBN.mjs.map +0 -7
  141. package/dist/lib/node-esm/chunk-XQO5DGHF.mjs.map +0 -7
  142. package/dist/lib/node-esm/intent-resolver-QQCCKVEW.mjs.map +0 -7
  143. package/dist/lib/node-esm/react-surface-Z4CLCKTN.mjs.map +0 -7
  144. package/dist/types/src/components/ChannelContainer.d.ts +0 -9
  145. package/dist/types/src/components/ChannelContainer.d.ts.map +0 -1
  146. package/src/components/ChannelContainer.tsx +0 -80
  147. /package/dist/lib/browser/{settings-5CREE7BH.mjs.map → settings-4FEC7EAX.mjs.map} +0 -0
  148. /package/dist/lib/browser/{state-HPUFZBB7.mjs.map → state-PNMSLKAH.mjs.map} +0 -0
  149. /package/dist/lib/node/{settings-XOLYNUHH.cjs.map → settings-IXCPE55J.cjs.map} +0 -0
  150. /package/dist/lib/node/{state-JMI5ZXZI.cjs.map → state-AT73KPGZ.cjs.map} +0 -0
  151. /package/dist/lib/node-esm/{settings-32PBKVBB.mjs.map → settings-ZUJQ4LWI.mjs.map} +0 -0
  152. /package/dist/lib/node-esm/{state-PSZO57LP.mjs.map → state-SSDX5O67.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/markdown.ts", "../../../src/extensions/threads.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { MarkdownCapabilities } from '@dxos/plugin-markdown';\n\nimport { ThreadCapabilities } from './capabilities';\nimport { threads } from '../extensions';\n\nexport default (context: PluginsContext) =>\n contributes(MarkdownCapabilities.Extensions, [\n ({ document: doc }) => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n return threads(state, doc, dispatch);\n },\n ]);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Extension } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { computed, effect } from '@preact/signals-core';\n\nimport { createIntent, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { Ref } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { type DocumentType } from '@dxos/plugin-markdown/types';\nimport { ThreadType } from '@dxos/plugin-space/types';\nimport { getSpace, getTextInRange, createDocAccessor, fullyQualifiedId } from '@dxos/react-client/echo';\nimport { comments, createExternalCommentSync } from '@dxos/react-ui-editor';\n\nimport { ThreadAction, type ThreadState } from '../types';\n\n// TODO(burdon): Factor out.\nconst getName = (doc: DocumentType, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n};\n\n/**\n * Construct plugins.\n */\nexport const threads = (state: ThreadState, doc?: DocumentType, dispatch?: PromiseIntentDispatcher): Extension => {\n const space = doc && getSpace(doc);\n if (!doc || !space || !dispatch) {\n // Include no-op comments extension here to ensure that the facets are always present when they are expected.\n // TODO(wittjosiah): The Editor should only look for these facets when comments are available.\n return [comments()];\n }\n\n // TODO(Zan): When we have the deepsignal specific equivalent of this we should use that instead.\n const threads = computed(() =>\n [...RefArray.targets(doc.threads), ...(state.drafts[fullyQualifiedId(doc)] ?? [])].filter(\n (thread) => !(thread?.status === 'resolved'),\n ),\n );\n\n return [\n EditorView.updateListener.of((update) => {\n if (update.docChanged) {\n RefArray.targets(doc.threads).forEach((thread) => {\n if (thread.anchor) {\n // Only update if the name has changed, otherwise this will cause an infinite loop.\n // Skip if the name is empty; this means comment text was deleted, but thread name should remain.\n const name = getName(doc, thread.anchor);\n if (name && name !== thread.name) {\n thread.name = name;\n }\n }\n });\n }\n }),\n\n createExternalCommentSync(\n fullyQualifiedId(doc),\n (sink) => effect(() => sink()),\n () =>\n threads.value\n .filter((thread) => thread?.anchor)\n .map((thread) => ({ id: fullyQualifiedId(thread), cursor: thread.anchor! })),\n ),\n\n comments({\n id: fullyQualifiedId(doc),\n onCreate: ({ cursor }) => {\n const name = getName(doc, cursor);\n void dispatch(createIntent(ThreadAction.Create, { cursor, name, subject: doc }));\n },\n onDelete: ({ id }) => {\n const draft = state.drafts[fullyQualifiedId(doc)];\n if (draft) {\n const index = draft.findIndex((thread) => fullyQualifiedId(thread) === id);\n if (index !== -1) {\n draft.splice(index, 1);\n }\n }\n\n const thread = doc.threads.find(Ref.hasObjectId(id))?.target;\n if (thread) {\n thread.anchor = undefined;\n }\n },\n onUpdate: ({ id, cursor }) => {\n const thread =\n state.drafts[fullyQualifiedId(doc)]?.find((thread) => fullyQualifiedId(thread) === id) ??\n doc.threads.find(Ref.hasObjectId(id))?.target;\n\n if (thread instanceof ThreadType && thread.anchor) {\n thread.name = getName(doc, thread.anchor);\n thread.anchor = cursor;\n }\n },\n onSelect: ({ selection }) => {\n const current = selection.current ?? selection.closest;\n if (current) {\n void dispatch(createIntent(ThreadAction.Select, { current, skipOpen: true }));\n }\n },\n }),\n ];\n};\n"],
5
- "mappings": "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",
6
- "names": ["Capabilities", "contributes", "MarkdownCapabilities", "EditorView", "computed", "effect", "createIntent", "Ref", "RefArray", "ThreadType", "getSpace", "getTextInRange", "createDocAccessor", "fullyQualifiedId", "comments", "createExternalCommentSync", "getName", "doc", "anchor", "content", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "threads", "state", "dispatch", "space", "getSpace", "comments", "computed", "RefArray", "targets", "drafts", "fullyQualifiedId", "filter", "thread", "status", "EditorView", "updateListener", "of", "update", "docChanged", "forEach", "name", "createExternalCommentSync", "sink", "effect", "value", "map", "id", "cursor", "onCreate", "createIntent", "ThreadAction", "Create", "subject", "onDelete", "draft", "index", "findIndex", "splice", "find", "Ref", "hasObjectId", "undefined", "onUpdate", "ThreadType", "onSelect", "selection", "current", "closest", "Select", "skipOpen", "context", "contributes", "MarkdownCapabilities", "Extensions", "document", "doc", "dispatchPromise", "dispatch", "requestCapability", "Capabilities", "IntentDispatcher", "state", "ThreadCapabilities", "MutableState", "threads"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { MarkdownCapabilities } from '@dxos/plugin-markdown';\n\nimport { ThreadCapabilities } from './capabilities';\nimport { threads } from '../extensions';\n\nexport default (context: PluginsContext) =>\n contributes(MarkdownCapabilities.Extensions, [\n ({ document: doc }) => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n return threads(state, doc, dispatch);\n },\n ]);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Extension } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { computed, effect } from '@preact/signals-core';\n\nimport { createIntent, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { Ref } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { type DocumentType } from '@dxos/plugin-markdown/types';\nimport { ThreadType } from '@dxos/plugin-space/types';\nimport { getSpace, getTextInRange, createDocAccessor, fullyQualifiedId } from '@dxos/react-client/echo';\nimport { comments, createExternalCommentSync } from '@dxos/react-ui-editor';\n\nimport { ThreadAction, type ThreadState } from '../types';\n\n// TODO(burdon): Factor out.\nconst getName = (doc: DocumentType, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n};\n\n/**\n * Construct plugins.\n */\nexport const threads = (state: ThreadState, doc?: DocumentType, dispatch?: PromiseIntentDispatcher): Extension => {\n const space = doc && getSpace(doc);\n if (!doc || !space || !dispatch) {\n // Include no-op comments extension here to ensure that the facets are always present when they are expected.\n // TODO(wittjosiah): The Editor should only look for these facets when comments are available.\n return [comments()];\n }\n\n // TODO(Zan): When we have the deepsignal specific equivalent of this we should use that instead.\n const threads = computed(() =>\n [...RefArray.targets(doc.threads), ...(state.drafts[fullyQualifiedId(doc)] ?? [])].filter(\n (thread) => !(thread?.status === 'resolved'),\n ),\n );\n\n return [\n EditorView.updateListener.of((update) => {\n if (update.docChanged) {\n RefArray.targets(doc.threads).forEach((thread) => {\n if (thread.anchor) {\n // Only update if the name has changed, otherwise this will cause an infinite loop.\n // Skip if the name is empty; this means comment text was deleted, but thread name should remain.\n const name = getName(doc, thread.anchor);\n if (name && name !== thread.name) {\n thread.name = name;\n }\n }\n });\n }\n }),\n\n createExternalCommentSync(\n fullyQualifiedId(doc),\n (sink) => effect(() => sink()),\n () =>\n threads.value\n .filter((thread) => thread?.anchor)\n .map((thread) => ({ id: fullyQualifiedId(thread), cursor: thread.anchor! })),\n ),\n\n comments({\n id: fullyQualifiedId(doc),\n onCreate: ({ cursor }) => {\n const name = getName(doc, cursor);\n void dispatch(createIntent(ThreadAction.Create, { cursor, name, subject: doc }));\n },\n onDelete: ({ id }) => {\n const draft = state.drafts[fullyQualifiedId(doc)];\n if (draft) {\n const index = draft.findIndex((thread) => fullyQualifiedId(thread) === id);\n if (index !== -1) {\n draft.splice(index, 1);\n }\n }\n\n const thread = doc.threads.find(Ref.hasObjectId(id))?.target;\n if (thread) {\n thread.anchor = undefined;\n }\n },\n onUpdate: ({ id, cursor }) => {\n const thread =\n state.drafts[fullyQualifiedId(doc)]?.find((thread) => fullyQualifiedId(thread) === id) ??\n doc.threads.find(Ref.hasObjectId(id))?.target;\n\n if (thread instanceof ThreadType && thread.anchor) {\n thread.name = getName(doc, thread.anchor);\n thread.anchor = cursor;\n }\n },\n onSelect: ({ selection }) => {\n const current = selection.current ?? selection.closest;\n if (current) {\n void dispatch(createIntent(ThreadAction.Select, { current }));\n }\n },\n }),\n ];\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Capabilities", "contributes", "MarkdownCapabilities", "EditorView", "computed", "effect", "createIntent", "Ref", "RefArray", "ThreadType", "getSpace", "getTextInRange", "createDocAccessor", "fullyQualifiedId", "comments", "createExternalCommentSync", "getName", "doc", "anchor", "content", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "threads", "state", "dispatch", "space", "getSpace", "comments", "computed", "RefArray", "targets", "drafts", "fullyQualifiedId", "filter", "thread", "status", "EditorView", "updateListener", "of", "update", "docChanged", "forEach", "name", "createExternalCommentSync", "sink", "effect", "value", "map", "id", "cursor", "onCreate", "createIntent", "ThreadAction", "Create", "subject", "onDelete", "draft", "index", "findIndex", "splice", "find", "Ref", "hasObjectId", "undefined", "onUpdate", "ThreadType", "onSelect", "selection", "current", "closest", "Select", "context", "contributes", "MarkdownCapabilities", "Extensions", "document", "doc", "dispatchPromise", "dispatch", "requestCapability", "Capabilities", "IntentDispatcher", "state", "ThreadCapabilities", "MutableState", "threads"]
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-thread/src/meta.ts":{"bytes":1656,"imports":[],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/capabilities.ts":{"bytes":2542,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/types.ts":{"bytes":9993,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts":{"bytes":32951,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/extensions/threads.ts":{"bytes":14170,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/extensions/index.ts":{"bytes":512,"imports":[{"path":"packages/plugins/plugin-thread/src/extensions/threads.ts","kind":"import-statement","original":"./threads"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/markdown.ts":{"bytes":2695,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/extensions/index.ts","kind":"import-statement","original":"../extensions"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/command-extension.ts":{"bytes":3522,"imports":[{"path":"@codemirror/language","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/useStatus.ts":{"bytes":3661,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/analytics.ts":{"bytes":4516,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/index.ts":{"bytes":602,"imports":[{"path":"packages/plugins/plugin-thread/src/hooks/useStatus.ts","kind":"import-statement","original":"./useStatus"},{"path":"packages/plugins/plugin-thread/src/hooks/analytics.ts","kind":"import-statement","original":"./analytics"}],"format":"esm"},"packages/plugins/plugin-thread/src/util.ts":{"bytes":3056,"imports":[{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/components/MessageContainer.tsx":{"bytes":23176,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/CommentContainer.tsx":{"bytes":25023,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx":{"bytes":7688,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/CommentContainer.tsx","kind":"import-statement","original":"./CommentContainer"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ChatContainer.tsx":{"bytes":18499,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx":{"bytes":20367,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"../capabilities"},{"path":"packages/plugins/plugin-thread/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx":{"bytes":1673,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ChannelContainer.tsx":{"bytes":9400,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/ChatContainer.tsx","kind":"import-statement","original":"./ChatContainer"},{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"../capabilities"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/index.ts":{"bytes":1618,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/CommentContainer.tsx","kind":"import-statement","original":"./CommentContainer"},{"path":"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx","kind":"import-statement","original":"./CommentsContainer"},{"path":"packages/plugins/plugin-thread/src/components/ChatContainer.tsx","kind":"import-statement","original":"./ChatContainer"},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx","kind":"import-statement","original":"./ThreadComplementary"},{"path":"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx","kind":"import-statement","original":"./ThreadSettings"},{"path":"packages/plugins/plugin-thread/src/components/ChannelContainer.tsx","kind":"dynamic-import","original":"./ChannelContainer"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx":{"bytes":7715,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/settings.ts":{"bytes":1949,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/state.ts":{"bytes":2844,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/index.ts":{"bytes":1859,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-thread/src/capabilities/markdown.ts","kind":"dynamic-import","original":"./markdown"},{"path":"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-thread/src/capabilities/settings.ts","kind":"dynamic-import","original":"./settings"},{"path":"packages/plugins/plugin-thread/src/capabilities/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"packages/plugins/plugin-thread/src/events.ts":{"bytes":1278,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/translations.ts":{"bytes":5491,"imports":[{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/ThreadPlugin.tsx":{"bytes":21294,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-thread/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-thread/src/index.ts":{"bytes":958,"imports":[{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-thread/src/ThreadPlugin.tsx","kind":"import-statement","original":"./ThreadPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-thread/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":12722},"packages/plugins/plugin-thread/dist/lib/node-esm/index.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true}],"exports":["THREAD_ITEM","THREAD_PLUGIN","ThreadCapabilities","ThreadEvents","ThreadPlugin","meta","useAnalyticsCallback","useOnEditAnalytics","useStatus"],"entryPoint":"packages/plugins/plugin-thread/src/index.ts","inputs":{"packages/plugins/plugin-thread/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-thread/src/events.ts":{"bytesInOutput":224},"packages/plugins/plugin-thread/src/ThreadPlugin.tsx":{"bytesInOutput":4982},"packages/plugins/plugin-thread/src/translations.ts":{"bytesInOutput":1640}},"bytes":7707},"packages/plugins/plugin-thread/dist/lib/node-esm/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-thread/dist/lib/node-esm/types.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"}],"exports":["ThreadAction","ThreadSettingsSchema"],"entryPoint":"packages/plugins/plugin-thread/src/types.ts","inputs":{},"bytes":288},"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-QQCCKVEW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14770},"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-QQCCKVEW.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts":{"bytesInOutput":8175}},"bytes":8613},"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-QO5HK24O.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8539},"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-QO5HK24O.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/markdown.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/markdown.ts":{"bytesInOutput":469},"packages/plugins/plugin-thread/src/extensions/threads.ts":{"bytesInOutput":2972},"packages/plugins/plugin-thread/src/extensions/index.ts":{"bytesInOutput":0}},"bytes":3958},"packages/plugins/plugin-thread/dist/lib/node-esm/ChannelContainer-GP6Y6JSN.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4944},"packages/plugins/plugin-thread/dist/lib/node-esm/ChannelContainer-GP6Y6JSN.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TW2NME6Z.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/components/ChannelContainer.tsx","inputs":{"packages/plugins/plugin-thread/src/components/ChannelContainer.tsx":{"bytesInOutput":2155}},"bytes":2602},"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-Z4CLCKTN.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":33462},"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-Z4CLCKTN.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TW2NME6Z.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/ChannelContainer-GP6Y6JSN.mjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx":{"bytesInOutput":1715},"packages/plugins/plugin-thread/src/components/index.ts":{"bytesInOutput":108},"packages/plugins/plugin-thread/src/components/CommentContainer.tsx":{"bytesInOutput":6586},"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx":{"bytesInOutput":1776},"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx":{"bytesInOutput":5031},"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx":{"bytesInOutput":213}},"bytes":16480},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TW2NME6Z.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":24990},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TW2NME6Z.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@codemirror/language","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["ChatContainer","MessageContainer","command","getMessageMetadata"],"inputs":{"packages/plugins/plugin-thread/src/components/ChatContainer.tsx":{"bytesInOutput":3989},"packages/plugins/plugin-thread/src/components/MessageContainer.tsx":{"bytesInOutput":6034},"packages/plugins/plugin-thread/src/components/command-extension.ts":{"bytesInOutput":688},"packages/plugins/plugin-thread/src/util.ts":{"bytesInOutput":563}},"bytes":12018},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5112},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-XQO5DGHF.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-QQCCKVEW.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-QO5HK24O.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-Z4CLCKTN.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/settings-32PBKVBB.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/state-PSZO57LP.mjs","kind":"dynamic-import"}],"exports":["IntentResolver","Markdown","ReactSurface","ThreadState","useAnalyticsCallback","useOnEditAnalytics","useStatus"],"inputs":{"packages/plugins/plugin-thread/src/hooks/useStatus.ts":{"bytesInOutput":748},"packages/plugins/plugin-thread/src/hooks/analytics.ts":{"bytesInOutput":990},"packages/plugins/plugin-thread/src/hooks/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-thread/src/capabilities/index.ts":{"bytesInOutput":382}},"bytes":2565},"packages/plugins/plugin-thread/dist/lib/node-esm/settings-32PBKVBB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":967},"packages/plugins/plugin-thread/dist/lib/node-esm/settings-32PBKVBB.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/settings.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/settings.ts":{"bytesInOutput":307}},"bytes":671},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5139},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-FZXTP57V.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["ThreadAction","ThreadSettingsSchema"],"inputs":{"packages/plugins/plugin-thread/src/types.ts":{"bytesInOutput":2318}},"bytes":2610},"packages/plugins/plugin-thread/dist/lib/node-esm/state-PSZO57LP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1446},"packages/plugins/plugin-thread/dist/lib/node-esm/state-PSZO57LP.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/state.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/state.ts":{"bytesInOutput":549}},"bytes":877},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1371},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-TXW5SIBN.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ThreadCapabilities"],"inputs":{"packages/plugins/plugin-thread/src/capabilities/capabilities.ts":{"bytesInOutput":434}},"bytes":728},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":785},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs":{"imports":[],"exports":["THREAD_ITEM","THREAD_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-thread/src/meta.ts":{"bytesInOutput":306}},"bytes":541}}}
1
+ {"inputs":{"packages/plugins/plugin-thread/src/meta.ts":{"bytes":1656,"imports":[],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/capabilities.ts":{"bytes":2014,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/app-graph-builder.ts":{"bytes":4972,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/types.ts":{"bytes":9968,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts":{"bytes":36379,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/extensions/threads.ts":{"bytes":14078,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/extensions/index.ts":{"bytes":512,"imports":[{"path":"packages/plugins/plugin-thread/src/extensions/threads.ts","kind":"import-statement","original":"./threads"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/markdown.ts":{"bytes":2695,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/extensions/index.ts","kind":"import-statement","original":"../extensions"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/command-extension.ts":{"bytes":3522,"imports":[{"path":"@codemirror/language","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/useStatus.ts":{"bytes":3661,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/analytics.ts":{"bytes":4073,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/hooks/index.ts":{"bytes":602,"imports":[{"path":"packages/plugins/plugin-thread/src/hooks/useStatus.ts","kind":"import-statement","original":"./useStatus"},{"path":"packages/plugins/plugin-thread/src/hooks/analytics.ts","kind":"import-statement","original":"./analytics"}],"format":"esm"},"packages/plugins/plugin-thread/src/util.ts":{"bytes":3020,"imports":[{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/components/MessageContainer.tsx":{"bytes":23488,"imports":[{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/CommentContainer.tsx":{"bytes":25023,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx":{"bytes":7688,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/CommentContainer.tsx","kind":"import-statement","original":"./CommentContainer"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx":{"bytes":19868,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"../capabilities"},{"path":"packages/plugins/plugin-thread/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx":{"bytes":1673,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-thread/src/components/ChatContainer.tsx":{"bytes":18541,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/command-extension.ts","kind":"import-statement","original":"./command-extension"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/plugins/plugin-thread/src/components/index.ts":{"bytes":1495,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/CommentContainer.tsx","kind":"import-statement","original":"./CommentContainer"},{"path":"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx","kind":"import-statement","original":"./CommentsContainer"},{"path":"packages/plugins/plugin-thread/src/components/MessageContainer.tsx","kind":"import-statement","original":"./MessageContainer"},{"path":"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx","kind":"import-statement","original":"./ThreadComplementary"},{"path":"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx","kind":"import-statement","original":"./ThreadSettings"},{"path":"packages/plugins/plugin-thread/src/components/ChatContainer.tsx","kind":"dynamic-import","original":"./ChatContainer"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx":{"bytes":9771,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/settings.ts":{"bytes":1949,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/state.ts":{"bytes":2844,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-thread/src/capabilities/index.ts":{"bytes":2127,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-thread/src/capabilities/markdown.ts","kind":"dynamic-import","original":"./markdown"},{"path":"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-thread/src/capabilities/settings.ts","kind":"dynamic-import","original":"./settings"},{"path":"packages/plugins/plugin-thread/src/capabilities/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"packages/plugins/plugin-thread/src/events.ts":{"bytes":1278,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/translations.ts":{"bytes":5477,"imports":[{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-thread/src/ThreadPlugin.tsx":{"bytes":18844,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-thread/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-thread/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-thread/src/index.ts":{"bytes":958,"imports":[{"path":"packages/plugins/plugin-thread/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-thread/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-thread/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/plugins/plugin-thread/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-thread/src/ThreadPlugin.tsx","kind":"import-statement","original":"./ThreadPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-thread/dist/lib/node-esm/state-SSDX5O67.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1446},"packages/plugins/plugin-thread/dist/lib/node-esm/state-SSDX5O67.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/state.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/state.ts":{"bytesInOutput":549}},"bytes":877},"packages/plugins/plugin-thread/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11558},"packages/plugins/plugin-thread/dist/lib/node-esm/index.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WSE23GSG.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true}],"exports":["THREAD_ITEM","THREAD_PLUGIN","ThreadCapabilities","ThreadEvents","ThreadPlugin","meta","useOnEditAnalytics","useStatus"],"entryPoint":"packages/plugins/plugin-thread/src/index.ts","inputs":{"packages/plugins/plugin-thread/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-thread/src/events.ts":{"bytesInOutput":224},"packages/plugins/plugin-thread/src/ThreadPlugin.tsx":{"bytesInOutput":4356},"packages/plugins/plugin-thread/src/translations.ts":{"bytesInOutput":1634}},"bytes":7085},"packages/plugins/plugin-thread/dist/lib/node-esm/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-thread/dist/lib/node-esm/types.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"}],"exports":["ThreadAction","ThreadSettingsSchema"],"entryPoint":"packages/plugins/plugin-thread/src/types.ts","inputs":{},"bytes":288},"packages/plugins/plugin-thread/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2344},"packages/plugins/plugin-thread/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/app-graph-builder.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/app-graph-builder.ts":{"bytesInOutput":1098}},"bytes":1417},"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-OURFRSSF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":16296},"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-OURFRSSF.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts":{"bytesInOutput":9101}},"bytes":9539},"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-ZKU23UVD.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8500},"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-ZKU23UVD.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/markdown.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/markdown.ts":{"bytesInOutput":469},"packages/plugins/plugin-thread/src/extensions/threads.ts":{"bytesInOutput":2944},"packages/plugins/plugin-thread/src/extensions/index.ts":{"bytesInOutput":0}},"bytes":3930},"packages/plugins/plugin-thread/dist/lib/node-esm/ChatContainer-NYLCL6QA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9585},"packages/plugins/plugin-thread/dist/lib/node-esm/ChatContainer-NYLCL6QA.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-ADTVMESP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["ChatContainer","ChatHeading","default"],"entryPoint":"packages/plugins/plugin-thread/src/components/ChatContainer.tsx","inputs":{"packages/plugins/plugin-thread/src/components/ChatContainer.tsx":{"bytesInOutput":4343}},"bytes":4834},"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-KIJ767JK.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":34076},"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-KIJ767JK.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WSE23GSG.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-ADTVMESP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/ChatContainer-NYLCL6QA.mjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-thread/src/capabilities/react-surface.tsx":{"bytesInOutput":2248},"packages/plugins/plugin-thread/src/components/index.ts":{"bytesInOutput":102},"packages/plugins/plugin-thread/src/components/CommentContainer.tsx":{"bytesInOutput":6586},"packages/plugins/plugin-thread/src/components/CommentsContainer.tsx":{"bytesInOutput":1776},"packages/plugins/plugin-thread/src/components/ThreadComplementary.tsx":{"bytesInOutput":5011},"packages/plugins/plugin-thread/src/components/ThreadSettings.tsx":{"bytesInOutput":213}},"bytes":17018},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WSE23GSG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1049},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WSE23GSG.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/intent-resolver-OURFRSSF.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/markdown-ZKU23UVD.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/react-surface-KIJ767JK.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/settings-ZUJQ4LWI.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/state-SSDX5O67.mjs","kind":"dynamic-import"}],"exports":["AppGraphBuilder","IntentResolver","Markdown","ReactSurface","ThreadState"],"inputs":{"packages/plugins/plugin-thread/src/capabilities/index.ts":{"bytesInOutput":460}},"bytes":749},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1053},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-WLY2HMDB.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ThreadCapabilities"],"inputs":{"packages/plugins/plugin-thread/src/capabilities/capabilities.ts":{"bytesInOutput":343}},"bytes":637},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-ADTVMESP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15900},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-ADTVMESP.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@codemirror/language","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-editor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/react-ui-thread","kind":"import-statement","external":true}],"exports":["MessageContainer","command","getMessageMetadata"],"inputs":{"packages/plugins/plugin-thread/src/components/command-extension.ts":{"bytesInOutput":688},"packages/plugins/plugin-thread/src/util.ts":{"bytesInOutput":547},"packages/plugins/plugin-thread/src/components/MessageContainer.tsx":{"bytesInOutput":6102}},"bytes":7844},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4051},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-J56FORYF.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["useOnEditAnalytics","useStatus"],"inputs":{"packages/plugins/plugin-thread/src/hooks/useStatus.ts":{"bytesInOutput":748},"packages/plugins/plugin-thread/src/hooks/analytics.ts":{"bytesInOutput":882},"packages/plugins/plugin-thread/src/hooks/index.ts":{"bytesInOutput":0}},"bytes":1929},"packages/plugins/plugin-thread/dist/lib/node-esm/settings-ZUJQ4LWI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":967},"packages/plugins/plugin-thread/dist/lib/node-esm/settings-ZUJQ4LWI.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-thread/src/capabilities/settings.ts","inputs":{"packages/plugins/plugin-thread/src/capabilities/settings.ts":{"bytesInOutput":307}},"bytes":671},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5145},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-E446MGLP.mjs":{"imports":[{"path":"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["ThreadAction","ThreadSettingsSchema"],"inputs":{"packages/plugins/plugin-thread/src/types.ts":{"bytesInOutput":2332}},"bytes":2624},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":785},"packages/plugins/plugin-thread/dist/lib/node-esm/chunk-42F2DTMM.mjs":{"imports":[],"exports":["THREAD_ITEM","THREAD_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-thread/src/meta.ts":{"bytesInOutput":306}},"bytes":541}}}
@@ -1,18 +1,19 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import "./chunk-WSE23GSG.mjs";
3
+ import {
4
+ ThreadCapabilities
5
+ } from "./chunk-WLY2HMDB.mjs";
2
6
  import {
3
7
  MessageContainer,
4
8
  command,
5
9
  getMessageMetadata
6
- } from "./chunk-TW2NME6Z.mjs";
10
+ } from "./chunk-ADTVMESP.mjs";
7
11
  import {
8
12
  useStatus
9
- } from "./chunk-XQO5DGHF.mjs";
13
+ } from "./chunk-J56FORYF.mjs";
10
14
  import {
11
15
  ThreadAction
12
- } from "./chunk-FZXTP57V.mjs";
13
- import {
14
- ThreadCapabilities
15
- } from "./chunk-TXW5SIBN.mjs";
16
+ } from "./chunk-E446MGLP.mjs";
16
17
  import {
17
18
  THREAD_PLUGIN
18
19
  } from "./chunk-42F2DTMM.mjs";
@@ -20,9 +21,10 @@ import {
20
21
  // packages/plugins/plugin-thread/src/capabilities/react-surface.tsx
21
22
  import React5 from "react";
22
23
  import { Capabilities, contributes, createSurface, useLayout } from "@dxos/app-framework";
24
+ import { DXN } from "@dxos/keys";
23
25
  import { SettingsStore } from "@dxos/local-storage";
24
26
  import { ChannelType } from "@dxos/plugin-space/types";
25
- import { getSpace as getSpace2 } from "@dxos/react-client/echo";
27
+ import { getSpace as getSpace2, isSpace } from "@dxos/react-client/echo";
26
28
 
27
29
  // packages/plugins/plugin-thread/src/components/index.ts
28
30
  import { lazy } from "react";
@@ -233,12 +235,12 @@ var CommentsContainer = ({ threads, detached = [], currentId, showResolvedThread
233
235
  import React3, { useCallback as useCallback2, useEffect as useEffect2, useMemo as useMemo2 } from "react";
234
236
  import { createIntent, LayoutAction, useCapability, useCapabilities, useIntentDispatcher } from "@dxos/app-framework";
235
237
  import { ThreadCapabilities as ThreadCapabilities2 } from "@dxos/plugin-space";
236
- import { create, fullyQualifiedId as fullyQualifiedId3, makeRef, RefArray as RefArray2 } from "@dxos/react-client/echo";
238
+ import { fullyQualifiedId as fullyQualifiedId3, RefArray as RefArray2 } from "@dxos/react-client/echo";
237
239
  import { useIdentity as useIdentity2 } from "@dxos/react-client/halo";
238
240
  import { useTranslation as useTranslation3 } from "@dxos/react-ui";
239
241
  import { useAttended } from "@dxos/react-ui-attention";
242
+ import { StackItem } from "@dxos/react-ui-stack";
240
243
  import { Tabs } from "@dxos/react-ui-tabs";
241
- import { MessageType } from "@dxos/schema";
242
244
  import { isNonNullable as isNonNullable2 } from "@dxos/util";
243
245
  var ThreadComplementary = ({ subject }) => {
244
246
  const { dispatchPromise: dispatch } = useIntentDispatcher();
@@ -303,22 +305,14 @@ var ThreadComplementary = ({ subject }) => {
303
305
  dispatch,
304
306
  subject
305
307
  ]);
306
- const handleComment = useCallback2(async (thread, message) => {
307
- thread.messages.push(makeRef(create(MessageType, {
308
+ const handleComment = useCallback2(async (thread, text) => {
309
+ await dispatch(createIntent(ThreadAction.AddMessage, {
310
+ thread,
311
+ subject,
308
312
  sender: {
309
- identityKey: identity?.identityKey.toHex()
313
+ identityDid: identity?.did
310
314
  },
311
- created: (/* @__PURE__ */ new Date()).toISOString(),
312
- blocks: [
313
- {
314
- type: "text",
315
- text: message
316
- }
317
- ]
318
- })));
319
- await dispatch(createIntent(ThreadAction.OnMessageAdd, {
320
- thread,
321
- subject
315
+ text
322
316
  }));
323
317
  state.current = fullyQualifiedId3(thread);
324
318
  }, [
@@ -357,10 +351,13 @@ var ThreadComplementary = ({ subject }) => {
357
351
  onMessageDelete: handleMessageDelete,
358
352
  onThreadDelete: handleThreadDelete
359
353
  });
360
- return /* @__PURE__ */ React3.createElement(Tabs.Root, {
354
+ return /* @__PURE__ */ React3.createElement(StackItem.Content, {
355
+ toolbar: true
356
+ }, /* @__PURE__ */ React3.createElement(Tabs.Root, {
361
357
  value: showResolvedThreads ? "all" : "unresolved",
362
358
  onValueChange: onChangeViewState,
363
- orientation: "horizontal"
359
+ orientation: "horizontal",
360
+ classNames: 'contents [&_[role="tabpanel"]]:min-bs-0 [&_[role="tabpanel"]]:overflow-y-auto [&_[role="tabpanel"]]:scrollbar-thin'
364
361
  }, /* @__PURE__ */ React3.createElement(Tabs.Tablist, {
365
362
  classNames: "p-1 gap-1 bs-[--rail-action] border-be border-separator"
366
363
  }, /* @__PURE__ */ React3.createElement(Tabs.Tab, {
@@ -373,7 +370,7 @@ var ThreadComplementary = ({ subject }) => {
373
370
  value: "all"
374
371
  }, showResolvedThreads && comments), /* @__PURE__ */ React3.createElement(Tabs.Tabpanel, {
375
372
  value: "unresolved"
376
- }, !showResolvedThreads && comments));
373
+ }, !showResolvedThreads && comments)));
377
374
  };
378
375
 
379
376
  // packages/plugins/plugin-thread/src/components/ThreadSettings.tsx
@@ -384,7 +381,7 @@ var ThreadSettings = ({ settings }) => {
384
381
  };
385
382
 
386
383
  // packages/plugins/plugin-thread/src/components/index.ts
387
- var ChannelContainer = lazy(() => import("./ChannelContainer-GP6Y6JSN.mjs"));
384
+ var ChatContainer = lazy(() => import("./ChatContainer-NYLCL6QA.mjs"));
388
385
 
389
386
  // packages/plugins/plugin-thread/src/capabilities/react-surface.tsx
390
387
  var react_surface_default = () => contributes(Capabilities.ReactSurface, [
@@ -397,23 +394,37 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
397
394
  const currentPosition = layout.active.findIndex((id) => id === channel.id);
398
395
  const objectToTheLeft = layout.active[currentPosition - 1];
399
396
  const context = currentPosition > 0 ? getSpace2(channel)?.db.getObjectById(objectToTheLeft) : void 0;
400
- return /* @__PURE__ */ React5.createElement(ChannelContainer, {
401
- role,
402
- channel,
397
+ const space = getSpace2(channel);
398
+ if (!space) {
399
+ return null;
400
+ }
401
+ return /* @__PURE__ */ React5.createElement(ChatContainer, {
402
+ space,
403
+ dxn: channel.queue.dxn,
403
404
  context
404
405
  });
405
406
  }
406
407
  }),
407
408
  createSurface({
408
- id: `${THREAD_PLUGIN}/thread`,
409
- role: "complementary--comments",
410
- filter: (data) => !!data.subject && typeof data.subject === "object" && "threads" in data.subject && Array.isArray(data.subject.threads) && !(data.subject instanceof ChannelType),
409
+ id: `${THREAD_PLUGIN}/comments`,
410
+ role: "article",
411
+ filter: (data) => data.subject === "comments" && !!data.companionTo && typeof data.companionTo === "object" && "threads" in data.companionTo && Array.isArray(data.companionTo.threads),
412
+ // TODO(wittjosiah): This isn't scrolling properly in a plank.
411
413
  component: ({ data }) => /* @__PURE__ */ React5.createElement(ThreadComplementary, {
412
- subject: data.subject
414
+ subject: data.companionTo
415
+ })
416
+ }),
417
+ createSurface({
418
+ id: `${THREAD_PLUGIN}/tabpanel`,
419
+ role: "tabpanel",
420
+ filter: (data) => data.subject instanceof DXN && data.type === "chat" && isSpace(data.space),
421
+ component: ({ data: { subject: dxn, space } }) => /* @__PURE__ */ React5.createElement(ChatContainer, {
422
+ dxn,
423
+ space
413
424
  })
414
425
  }),
415
426
  createSurface({
416
- id: `${THREAD_PLUGIN}/settings`,
427
+ id: `${THREAD_PLUGIN}/plugin-settings`,
417
428
  role: "article",
418
429
  filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === THREAD_PLUGIN,
419
430
  component: ({ data: { subject } }) => /* @__PURE__ */ React5.createElement(ThreadSettings, {
@@ -424,4 +435,4 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
424
435
  export {
425
436
  react_surface_default as default
426
437
  };
427
- //# sourceMappingURL=react-surface-Z4CLCKTN.mjs.map
438
+ //# sourceMappingURL=react-surface-KIJ767JK.mjs.map