@dxos/plugin-thread 0.8.4-main.70d3990 → 0.8.4-main.7996785055
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.
- package/dist/lib/browser/CallDebugPanel-RY6FXDN7.mjs +181 -0
- package/dist/lib/browser/CallDebugPanel-RY6FXDN7.mjs.map +7 -0
- package/dist/lib/browser/CallSidebar-U3YOKNG6.mjs +37 -0
- package/dist/lib/browser/CallSidebar-U3YOKNG6.mjs.map +7 -0
- package/dist/lib/browser/ChannelContainer-C25SJD67.mjs +18 -0
- package/dist/lib/browser/ChatContainer-VG6JXVMR.mjs +19 -0
- package/dist/lib/browser/ThreadCompanion-LHPNPABS.mjs +223 -0
- package/dist/lib/browser/ThreadCompanion-LHPNPABS.mjs.map +7 -0
- package/dist/lib/browser/ThreadSettings-7WRTSUPH.mjs +19 -0
- package/dist/lib/browser/ThreadSettings-7WRTSUPH.mjs.map +7 -0
- package/dist/lib/browser/add-message-O3INEWOI.mjs +97 -0
- package/dist/lib/browser/add-message-O3INEWOI.mjs.map +7 -0
- package/dist/lib/browser/app-graph-builder-NQASP6LK.mjs +191 -0
- package/dist/lib/browser/app-graph-builder-NQASP6LK.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-BVS7F5KD.mjs +20 -0
- package/dist/lib/browser/blueprint-definition-BVS7F5KD.mjs.map +7 -0
- package/dist/lib/browser/blueprints/index.mjs +11 -0
- package/dist/lib/browser/call-manager-HRJSB3NQ.mjs +26 -0
- package/dist/lib/browser/call-manager-HRJSB3NQ.mjs.map +7 -0
- package/dist/lib/browser/chunk-2M2HV5K4.mjs +35 -0
- package/dist/lib/browser/chunk-2M2HV5K4.mjs.map +7 -0
- package/dist/lib/browser/chunk-4PJ6SUNH.mjs +8 -0
- package/dist/lib/browser/chunk-4PJ6SUNH.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ZCW3NSDZ.mjs → chunk-ERK254BS.mjs} +68 -51
- package/dist/lib/browser/chunk-ERK254BS.mjs.map +7 -0
- package/dist/lib/browser/chunk-GB4CYKEA.mjs +223 -0
- package/dist/lib/browser/chunk-GB4CYKEA.mjs.map +7 -0
- package/dist/lib/browser/{chunk-KOBXMDCI.mjs → chunk-GYRGZNEC.mjs} +14 -12
- package/dist/lib/browser/chunk-GYRGZNEC.mjs.map +7 -0
- package/dist/lib/browser/chunk-L7RCZYUB.mjs +39 -0
- package/dist/lib/browser/chunk-L7RCZYUB.mjs.map +7 -0
- package/dist/lib/browser/chunk-MC6IA6YE.mjs +135 -0
- package/dist/lib/browser/chunk-MC6IA6YE.mjs.map +7 -0
- package/dist/lib/browser/chunk-NU7YGDHW.mjs +126 -0
- package/dist/lib/browser/chunk-NU7YGDHW.mjs.map +7 -0
- package/dist/lib/browser/{chunk-QM34EZQK.mjs → chunk-SDMEBXOE.mjs} +10 -3
- package/dist/lib/browser/chunk-SDMEBXOE.mjs.map +7 -0
- package/dist/lib/browser/chunk-T6FNJOLU.mjs +259 -0
- package/dist/lib/browser/chunk-T6FNJOLU.mjs.map +7 -0
- package/dist/lib/browser/chunk-TAEJJ3CF.mjs +57 -0
- package/dist/lib/browser/chunk-TAEJJ3CF.mjs.map +7 -0
- package/dist/lib/browser/chunk-WR6V7S4Q.mjs +1093 -0
- package/dist/lib/browser/chunk-WR6V7S4Q.mjs.map +7 -0
- package/dist/lib/browser/create-UP6DYIPF.mjs +55 -0
- package/dist/lib/browser/create-UP6DYIPF.mjs.map +7 -0
- package/dist/lib/browser/create-channel-NHQ3BKJC.mjs +21 -0
- package/dist/lib/browser/create-channel-NHQ3BKJC.mjs.map +7 -0
- package/dist/lib/browser/create-channel-thread-JJ7ZST67.mjs +28 -0
- package/dist/lib/browser/create-channel-thread-JJ7ZST67.mjs.map +7 -0
- package/dist/lib/browser/create-proposals-EQQXX7U7.mjs +57 -0
- package/dist/lib/browser/create-proposals-EQQXX7U7.mjs.map +7 -0
- package/dist/lib/browser/delete-UFRQJ5GV.mjs +59 -0
- package/dist/lib/browser/delete-UFRQJ5GV.mjs.map +7 -0
- package/dist/lib/browser/delete-message-TR4FW7HR.mjs +64 -0
- package/dist/lib/browser/delete-message-TR4FW7HR.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +130 -120
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/markdown-ZS2LW3OL.mjs +84 -0
- package/dist/lib/browser/markdown-ZS2LW3OL.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/on-create-space-KLARW25R.mjs +25 -0
- package/dist/lib/browser/on-create-space-KLARW25R.mjs.map +7 -0
- package/dist/lib/browser/operation-handler-2PRAMPLT.mjs +17 -0
- package/dist/lib/browser/operation-handler-2PRAMPLT.mjs.map +7 -0
- package/dist/lib/browser/operations/index.mjs +13 -0
- package/dist/lib/browser/react-root-EGOEX44B.mjs +26 -0
- package/dist/lib/browser/react-root-EGOEX44B.mjs.map +7 -0
- package/dist/lib/browser/react-surface-UFSXNECJ.mjs +114 -0
- package/dist/lib/browser/react-surface-UFSXNECJ.mjs.map +7 -0
- package/dist/lib/browser/restore-GANFC4M4.mjs +33 -0
- package/dist/lib/browser/restore-GANFC4M4.mjs.map +7 -0
- package/dist/lib/browser/restore-message-FWGQ4FCN.mjs +42 -0
- package/dist/lib/browser/restore-message-FWGQ4FCN.mjs.map +7 -0
- package/dist/lib/browser/select-Y4XQX4BS.mjs +26 -0
- package/dist/lib/browser/select-Y4XQX4BS.mjs.map +7 -0
- package/dist/lib/browser/settings-VOVRRXEK.mjs +34 -0
- package/dist/lib/browser/settings-VOVRRXEK.mjs.map +7 -0
- package/dist/lib/browser/state-WNYOQCCT.mjs +24 -0
- package/dist/lib/browser/state-WNYOQCCT.mjs.map +7 -0
- package/dist/lib/browser/toggle-resolved-QVOZGID6.mjs +45 -0
- package/dist/lib/browser/toggle-resolved-QVOZGID6.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +4 -5
- package/dist/lib/browser/undo-mappings-BTXCCPUL.mjs +59 -0
- package/dist/lib/browser/undo-mappings-BTXCCPUL.mjs.map +7 -0
- package/dist/lib/node-esm/CallDebugPanel-CKGXAWG5.mjs +182 -0
- package/dist/lib/node-esm/CallDebugPanel-CKGXAWG5.mjs.map +7 -0
- package/dist/lib/node-esm/CallSidebar-MSAQRWCO.mjs +38 -0
- package/dist/lib/node-esm/CallSidebar-MSAQRWCO.mjs.map +7 -0
- package/dist/lib/node-esm/ChannelContainer-R23E4D3N.mjs +19 -0
- package/dist/lib/node-esm/ChatContainer-VS2NX3S7.mjs +20 -0
- package/dist/lib/node-esm/ThreadCompanion-DIKUNH3P.mjs +224 -0
- package/dist/lib/node-esm/ThreadCompanion-DIKUNH3P.mjs.map +7 -0
- package/dist/lib/node-esm/ThreadSettings-UJBAAD4J.mjs +20 -0
- package/dist/lib/node-esm/ThreadSettings-UJBAAD4J.mjs.map +7 -0
- package/dist/lib/node-esm/add-message-GQO7ETY3.mjs +98 -0
- package/dist/lib/node-esm/add-message-GQO7ETY3.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-builder-WIYQ3COQ.mjs +192 -0
- package/dist/lib/node-esm/app-graph-builder-WIYQ3COQ.mjs.map +7 -0
- package/dist/lib/node-esm/blueprint-definition-NXHQAJT7.mjs +21 -0
- package/dist/lib/node-esm/blueprint-definition-NXHQAJT7.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +12 -0
- package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
- package/dist/lib/node-esm/call-manager-LOWS24PO.mjs +27 -0
- package/dist/lib/node-esm/call-manager-LOWS24PO.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-6ZJGXE4F.mjs +58 -0
- package/dist/lib/node-esm/chunk-6ZJGXE4F.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-A3SWGVF3.mjs +37 -0
- package/dist/lib/node-esm/chunk-A3SWGVF3.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-PZH2EDU5.mjs → chunk-EYWLIDLC.mjs} +14 -12
- package/dist/lib/node-esm/chunk-EYWLIDLC.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-GRA2YL5N.mjs +1094 -0
- package/dist/lib/node-esm/chunk-GRA2YL5N.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-JOAZKE2A.mjs +260 -0
- package/dist/lib/node-esm/chunk-JOAZKE2A.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-JOIEIY5R.mjs +224 -0
- package/dist/lib/node-esm/chunk-JOIEIY5R.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2AEIN5MI.mjs → chunk-JZI7AFD6.mjs} +9 -3
- package/dist/lib/node-esm/chunk-JZI7AFD6.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-KCWDGW5M.mjs +127 -0
- package/dist/lib/node-esm/chunk-KCWDGW5M.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-QFVKK6S6.mjs +10 -0
- package/dist/lib/node-esm/chunk-QFVKK6S6.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-7KZWZS2U.mjs → chunk-QP3KQOPQ.mjs} +68 -51
- package/dist/lib/node-esm/chunk-QP3KQOPQ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-VRNCL65Y.mjs +40 -0
- package/dist/lib/node-esm/chunk-VRNCL65Y.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-YGHV23ZD.mjs +136 -0
- package/dist/lib/node-esm/chunk-YGHV23ZD.mjs.map +7 -0
- package/dist/lib/node-esm/create-DIAK4OFO.mjs +56 -0
- package/dist/lib/node-esm/create-DIAK4OFO.mjs.map +7 -0
- package/dist/lib/node-esm/create-channel-JHQN2RGK.mjs +22 -0
- package/dist/lib/node-esm/create-channel-JHQN2RGK.mjs.map +7 -0
- package/dist/lib/node-esm/create-channel-thread-PQKG5VFZ.mjs +29 -0
- package/dist/lib/node-esm/create-channel-thread-PQKG5VFZ.mjs.map +7 -0
- package/dist/lib/node-esm/create-proposals-JBZLGBSF.mjs +58 -0
- package/dist/lib/node-esm/create-proposals-JBZLGBSF.mjs.map +7 -0
- package/dist/lib/node-esm/delete-F4NFPLKJ.mjs +60 -0
- package/dist/lib/node-esm/delete-F4NFPLKJ.mjs.map +7 -0
- package/dist/lib/node-esm/delete-message-QSTGJOL6.mjs +65 -0
- package/dist/lib/node-esm/delete-message-QSTGJOL6.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +130 -120
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/markdown-YP22U47Q.mjs +85 -0
- package/dist/lib/node-esm/markdown-YP22U47Q.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/on-create-space-N7SEMK4L.mjs +26 -0
- package/dist/lib/node-esm/on-create-space-N7SEMK4L.mjs.map +7 -0
- package/dist/lib/node-esm/operation-handler-S6I62YNM.mjs +18 -0
- package/dist/lib/node-esm/operation-handler-S6I62YNM.mjs.map +7 -0
- package/dist/lib/node-esm/operations/index.mjs +14 -0
- package/dist/lib/node-esm/operations/index.mjs.map +7 -0
- package/dist/lib/node-esm/react-root-DBJS3JVF.mjs +27 -0
- package/dist/lib/node-esm/react-root-DBJS3JVF.mjs.map +7 -0
- package/dist/lib/node-esm/react-surface-NOV4MWBJ.mjs +115 -0
- package/dist/lib/node-esm/react-surface-NOV4MWBJ.mjs.map +7 -0
- package/dist/lib/node-esm/restore-N7MEXVMG.mjs +34 -0
- package/dist/lib/node-esm/restore-N7MEXVMG.mjs.map +7 -0
- package/dist/lib/node-esm/restore-message-ECWGBHBC.mjs +43 -0
- package/dist/lib/node-esm/restore-message-ECWGBHBC.mjs.map +7 -0
- package/dist/lib/node-esm/select-GPWM36LA.mjs +27 -0
- package/dist/lib/node-esm/select-GPWM36LA.mjs.map +7 -0
- package/dist/lib/node-esm/settings-LIZBH7EW.mjs +35 -0
- package/dist/lib/node-esm/settings-LIZBH7EW.mjs.map +7 -0
- package/dist/lib/node-esm/state-ELJSYGJK.mjs +25 -0
- package/dist/lib/node-esm/state-ELJSYGJK.mjs.map +7 -0
- package/dist/lib/node-esm/toggle-resolved-EBEJUS66.mjs +46 -0
- package/dist/lib/node-esm/toggle-resolved-EBEJUS66.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +4 -5
- package/dist/lib/node-esm/undo-mappings-IYTSBZWN.mjs +60 -0
- package/dist/lib/node-esm/undo-mappings-IYTSBZWN.mjs.map +7 -0
- package/dist/types/src/ThreadPlugin.d.ts +2 -1
- package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
- package/dist/types/src/blueprints/index.d.ts +2 -0
- package/dist/types/src/blueprints/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/thread-blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/thread-blueprint.d.ts.map +1 -0
- package/dist/types/src/calls/call-manager.d.ts +40 -30
- package/dist/types/src/calls/call-manager.d.ts.map +1 -1
- package/dist/types/src/calls/call-swarm-synchronizer.d.ts +2 -2
- package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +1 -1
- package/dist/types/src/calls/media-manager.d.ts +1 -1
- package/dist/types/src/calls/media-manager.d.ts.map +1 -1
- package/dist/types/src/calls/util/calls-service.d.ts +1 -1
- package/dist/types/src/calls/util/calls-service.d.ts.map +1 -1
- package/dist/types/src/calls/util/task-scheduling.d.ts +2 -2
- package/dist/types/src/calls/util/task-scheduling.d.ts.map +1 -1
- package/dist/types/src/calls-service.stories.d.ts +2 -2
- package/dist/types/src/calls-service.stories.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +6 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/call-manager/call-manager.d.ts +6 -0
- package/dist/types/src/capabilities/call-manager/call-manager.d.ts.map +1 -0
- package/dist/types/src/capabilities/call-manager/index.d.ts +3 -0
- package/dist/types/src/capabilities/call-manager/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +10 -17
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/markdown/index.d.ts +3 -0
- package/dist/types/src/capabilities/markdown/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/markdown/markdown.d.ts +5 -0
- package/dist/types/src/capabilities/markdown/markdown.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler/index.d.ts +4 -0
- package/dist/types/src/capabilities/operation-handler/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root/index.d.ts +6 -0
- package/dist/types/src/capabilities/react-root/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root/react-root.d.ts +9 -0
- package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/index.d.ts +3 -0
- package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/settings.d.ts +6 -0
- package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/index.d.ts +3 -0
- package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/state.d.ts +7 -0
- package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
- package/dist/types/src/capabilities/undo-mappings/index.d.ts +3 -0
- package/dist/types/src/capabilities/undo-mappings/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/undo-mappings/undo-mappings.d.ts +5 -0
- package/dist/types/src/capabilities/undo-mappings/undo-mappings.d.ts.map +1 -0
- package/dist/types/src/components/Call/Call.d.ts.map +1 -1
- package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
- package/dist/types/src/components/CommentsPanel/CommentsPanel.d.ts +13 -0
- package/dist/types/src/components/CommentsPanel/CommentsPanel.d.ts.map +1 -0
- package/dist/types/src/components/{Comments.stories.d.ts → CommentsPanel/CommentsPanel.stories.d.ts} +4 -2
- package/dist/types/src/components/CommentsPanel/CommentsPanel.stories.d.ts.map +1 -0
- package/dist/types/src/components/{CommentsThreadContainer.d.ts → CommentsPanel/CommentsThread.d.ts} +3 -3
- package/dist/types/src/components/CommentsPanel/CommentsThread.d.ts.map +1 -0
- package/dist/types/src/components/CommentsPanel/index.d.ts +3 -0
- package/dist/types/src/components/CommentsPanel/index.d.ts.map +1 -0
- package/dist/types/src/components/Lobby/Lobby.d.ts.map +1 -1
- package/dist/types/src/components/Media/VideoObject.d.ts +1 -1
- package/dist/types/src/components/Media/VideoObject.stories.d.ts +1 -1
- package/dist/types/src/components/MessagePanel/MessagePanel.d.ts +15 -0
- package/dist/types/src/components/MessagePanel/MessagePanel.d.ts.map +1 -0
- package/dist/types/src/components/MessagePanel/index.d.ts +2 -0
- package/dist/types/src/components/MessagePanel/index.d.ts.map +1 -0
- package/dist/types/src/components/Participant/Participant.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +4 -2
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/{ResponsiveContainer.d.ts → ResponsivePanel.d.ts} +4 -4
- package/dist/types/src/components/ResponsiveGrid/ResponsivePanel.d.ts.map +1 -0
- package/dist/types/src/components/ResponsiveGrid/{ResponsiveContainer.stories.d.ts → ResponsivePanel.stories.d.ts} +5 -3
- package/dist/types/src/components/ResponsiveGrid/ResponsivePanel.stories.d.ts.map +1 -0
- package/dist/types/src/components/ResponsiveGrid/index.d.ts +1 -1
- package/dist/types/src/components/ResponsiveGrid/index.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -9
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/{components → containers/CallDebugPanel}/CallDebugPanel.d.ts +1 -1
- package/dist/types/src/containers/CallDebugPanel/CallDebugPanel.d.ts.map +1 -0
- package/dist/types/src/containers/CallDebugPanel/index.d.ts +3 -0
- package/dist/types/src/containers/CallDebugPanel/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/CallSidebar}/CallSidebar.d.ts +0 -1
- package/dist/types/src/containers/CallSidebar/CallSidebar.d.ts.map +1 -0
- package/dist/types/src/containers/CallSidebar/index.d.ts +3 -0
- package/dist/types/src/containers/CallSidebar/index.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelContainer/ChannelContainer.d.ts +12 -0
- package/dist/types/src/containers/ChannelContainer/ChannelContainer.d.ts.map +1 -0
- package/dist/types/src/{components → containers/ChannelContainer}/ChannelContainer.stories.d.ts +4 -2
- package/dist/types/src/containers/ChannelContainer/ChannelContainer.stories.d.ts.map +1 -0
- package/dist/types/src/containers/ChannelContainer/index.d.ts +3 -0
- package/dist/types/src/containers/ChannelContainer/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/ChatContainer}/ChatContainer.d.ts +8 -6
- package/dist/types/src/containers/ChatContainer/ChatContainer.d.ts.map +1 -0
- package/dist/types/src/{components/Chat.stories.d.ts → containers/ChatContainer/ChatContainer.stories.d.ts} +4 -2
- package/dist/types/src/containers/ChatContainer/ChatContainer.stories.d.ts.map +1 -0
- package/dist/types/src/containers/ChatContainer/index.d.ts +4 -0
- package/dist/types/src/containers/ChatContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/ThreadCompanion/ThreadCompanion.d.ts +8 -0
- package/dist/types/src/containers/ThreadCompanion/ThreadCompanion.d.ts.map +1 -0
- package/dist/types/src/containers/ThreadCompanion/index.d.ts +3 -0
- package/dist/types/src/containers/ThreadCompanion/index.d.ts.map +1 -0
- package/dist/types/src/containers/ThreadSettings/ThreadSettings.d.ts +8 -0
- package/dist/types/src/containers/ThreadSettings/ThreadSettings.d.ts.map +1 -0
- package/dist/types/src/containers/ThreadSettings/index.d.ts +3 -0
- package/dist/types/src/containers/ThreadSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +8 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/{components/command-extension.d.ts → extensions/command.d.ts} +1 -1
- package/dist/types/src/extensions/command.d.ts.map +1 -0
- package/dist/types/src/extensions/index.d.ts +1 -0
- package/dist/types/src/extensions/index.d.ts.map +1 -1
- package/dist/types/src/extensions/threads.d.ts +7 -2
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/hooks/analytics.d.ts +1 -2
- package/dist/types/src/hooks/analytics.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -2
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/add-message.d.ts +5 -0
- package/dist/types/src/operations/add-message.d.ts.map +1 -0
- package/dist/types/src/operations/create-channel-thread.d.ts +5 -0
- package/dist/types/src/operations/create-channel-thread.d.ts.map +1 -0
- package/dist/types/src/operations/create-channel.d.ts +5 -0
- package/dist/types/src/operations/create-channel.d.ts.map +1 -0
- package/dist/types/src/operations/create-proposals.d.ts +5 -0
- package/dist/types/src/operations/create-proposals.d.ts.map +1 -0
- package/dist/types/src/operations/create.d.ts +5 -0
- package/dist/types/src/operations/create.d.ts.map +1 -0
- package/dist/types/src/operations/definitions.d.ts +2788 -0
- package/dist/types/src/operations/definitions.d.ts.map +1 -0
- package/dist/types/src/operations/delete-message.d.ts +5 -0
- package/dist/types/src/operations/delete-message.d.ts.map +1 -0
- package/dist/types/src/operations/delete.d.ts +5 -0
- package/dist/types/src/operations/delete.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +4 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/operations/on-create-space.d.ts +5 -0
- package/dist/types/src/operations/on-create-space.d.ts.map +1 -0
- package/dist/types/src/operations/restore-message.d.ts +5 -0
- package/dist/types/src/operations/restore-message.d.ts.map +1 -0
- package/dist/types/src/operations/restore.d.ts +5 -0
- package/dist/types/src/operations/restore.d.ts.map +1 -0
- package/dist/types/src/operations/select.d.ts +5 -0
- package/dist/types/src/operations/select.d.ts.map +1 -0
- package/dist/types/src/operations/toggle-resolved.d.ts +5 -0
- package/dist/types/src/operations/toggle-resolved.d.ts.map +1 -0
- package/dist/types/src/{components/testing.d.ts → testing/data.d.ts} +1 -1
- package/dist/types/src/testing/data.d.ts.map +1 -0
- package/dist/types/src/testing/stories.d.ts +2 -1
- package/dist/types/src/testing/stories.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +2 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Channel.d.ts +707 -12
- package/dist/types/src/types/Channel.d.ts.map +1 -1
- package/dist/types/src/types/capabilities.d.ts +23 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +1 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +0 -336
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +96 -68
- package/src/ThreadPlugin.tsx +73 -106
- package/src/blueprints/index.ts +5 -0
- package/src/blueprints/thread-blueprint.ts +37 -0
- package/src/calls/call-manager.ts +76 -52
- package/src/calls/call-swarm-synchronizer.ts +2 -2
- package/src/calls/media-manager.ts +1 -1
- package/src/calls/util/calls-service.ts +1 -1
- package/src/calls/util/task-scheduling.ts +4 -4
- package/src/calls-service.stories.tsx +4 -4
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +204 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/blueprint-definition/blueprint-definition.ts +17 -0
- package/src/capabilities/blueprint-definition/index.ts +7 -0
- package/src/capabilities/call-manager/call-manager.ts +26 -0
- package/src/capabilities/call-manager/index.ts +7 -0
- package/src/capabilities/index.ts +10 -14
- package/src/capabilities/markdown/index.ts +7 -0
- package/src/capabilities/markdown/markdown.ts +81 -0
- package/src/capabilities/operation-handler/index.ts +11 -0
- package/src/capabilities/operation-handler/operation-handler.ts +16 -0
- package/src/capabilities/react-root/index.ts +7 -0
- package/src/capabilities/react-root/react-root.tsx +20 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +101 -0
- package/src/capabilities/settings/index.ts +7 -0
- package/src/capabilities/settings/settings.ts +34 -0
- package/src/capabilities/state/index.ts +7 -0
- package/src/capabilities/state/state.ts +22 -0
- package/src/capabilities/undo-mappings/index.ts +7 -0
- package/src/capabilities/undo-mappings/undo-mappings.ts +46 -0
- package/src/components/Call/Call.tsx +9 -5
- package/src/components/Call/Toolbar.tsx +33 -26
- package/src/components/CommentsPanel/CommentsPanel.stories.tsx +94 -0
- package/src/components/{CommentsContainer.tsx → CommentsPanel/CommentsPanel.tsx} +14 -13
- package/src/components/{CommentsThreadContainer.tsx → CommentsPanel/CommentsThread.tsx} +21 -22
- package/src/components/CommentsPanel/index.ts +6 -0
- package/src/components/Lobby/Lobby.tsx +12 -10
- package/src/components/Media/AudioStream.tsx +2 -2
- package/src/components/Media/VideoObject.stories.tsx +6 -6
- package/src/components/Media/VideoObject.tsx +2 -2
- package/src/components/{MessageContainer.tsx → MessagePanel/MessagePanel.tsx} +66 -37
- package/src/components/MessagePanel/index.ts +5 -0
- package/src/components/Participant/Participant.tsx +32 -19
- package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +6 -6
- package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +9 -9
- package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +6 -6
- package/src/components/ResponsiveGrid/{ResponsiveContainer.stories.tsx → ResponsivePanel.stories.tsx} +7 -7
- package/src/components/ResponsiveGrid/{ResponsiveContainer.tsx → ResponsivePanel.tsx} +6 -6
- package/src/components/ResponsiveGrid/index.ts +1 -1
- package/src/components/index.ts +2 -13
- package/src/{components → containers/CallDebugPanel}/CallDebugPanel.tsx +4 -4
- package/src/containers/CallDebugPanel/index.ts +7 -0
- package/src/containers/CallSidebar/CallSidebar.tsx +17 -0
- package/src/containers/CallSidebar/index.ts +7 -0
- package/src/containers/ChannelContainer/ChannelContainer.stories.tsx +59 -0
- package/src/{components → containers/ChannelContainer}/ChannelContainer.tsx +88 -71
- package/src/containers/ChannelContainer/index.ts +7 -0
- package/src/{components/Chat.stories.tsx → containers/ChatContainer/ChatContainer.stories.tsx} +20 -18
- package/src/containers/ChatContainer/ChatContainer.tsx +130 -0
- package/src/containers/ChatContainer/index.ts +8 -0
- package/src/containers/ThreadCompanion/ThreadCompanion.tsx +217 -0
- package/src/containers/ThreadCompanion/index.ts +7 -0
- package/src/containers/ThreadSettings/ThreadSettings.tsx +22 -0
- package/src/containers/ThreadSettings/index.ts +7 -0
- package/src/containers/index.ts +12 -0
- package/src/{components/command-extension.ts → extensions/command.ts} +3 -3
- package/src/extensions/index.ts +1 -0
- package/src/extensions/threads.ts +76 -41
- package/src/hooks/analytics.ts +24 -20
- package/src/index.ts +1 -1
- package/src/meta.ts +4 -4
- package/src/operations/add-message.ts +82 -0
- package/src/operations/create-channel-thread.ts +26 -0
- package/src/operations/create-channel.ts +21 -0
- package/src/operations/create-proposals.ts +49 -0
- package/src/operations/create.ts +49 -0
- package/src/operations/definitions.ts +177 -0
- package/src/operations/delete-message.ts +53 -0
- package/src/operations/delete.ts +64 -0
- package/src/operations/index.ts +22 -0
- package/src/operations/on-create-space.ts +27 -0
- package/src/operations/restore-message.ts +38 -0
- package/src/operations/restore.ts +38 -0
- package/src/operations/select.ts +25 -0
- package/src/operations/toggle-resolved.ts +41 -0
- package/src/testing/stories.ts +15 -16
- package/src/translations.ts +1 -0
- package/src/types/Channel.ts +18 -8
- package/src/types/capabilities.ts +34 -0
- package/src/types/index.ts +1 -0
- package/src/types/types.ts +2 -94
- package/dist/lib/browser/ChannelContainer-L7MKV7DS.mjs +0 -17
- package/dist/lib/browser/ChatContainer-KPY4BAUE.mjs +0 -16
- package/dist/lib/browser/app-graph-builder-TWJ2UCOZ.mjs +0 -171
- package/dist/lib/browser/app-graph-builder-TWJ2UCOZ.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-TQ4JFMZZ.mjs +0 -101
- package/dist/lib/browser/blueprint-definition-TQ4JFMZZ.mjs.map +0 -7
- package/dist/lib/browser/call-manager-4YFT4XA6.mjs +0 -25
- package/dist/lib/browser/call-manager-4YFT4XA6.mjs.map +0 -7
- package/dist/lib/browser/chunk-ALZKJOZK.mjs +0 -989
- package/dist/lib/browser/chunk-ALZKJOZK.mjs.map +0 -7
- package/dist/lib/browser/chunk-ANTFU4JB.mjs +0 -25
- package/dist/lib/browser/chunk-ANTFU4JB.mjs.map +0 -7
- package/dist/lib/browser/chunk-CFC7LEPD.mjs +0 -18
- package/dist/lib/browser/chunk-CFC7LEPD.mjs.map +0 -7
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +0 -10
- package/dist/lib/browser/chunk-JDJPMI7V.mjs +0 -143
- package/dist/lib/browser/chunk-JDJPMI7V.mjs.map +0 -7
- package/dist/lib/browser/chunk-KOBXMDCI.mjs.map +0 -7
- package/dist/lib/browser/chunk-NPT5S6N4.mjs +0 -611
- package/dist/lib/browser/chunk-NPT5S6N4.mjs.map +0 -7
- package/dist/lib/browser/chunk-QM34EZQK.mjs.map +0 -7
- package/dist/lib/browser/chunk-TLOOZTRD.mjs +0 -377
- package/dist/lib/browser/chunk-TLOOZTRD.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZCW3NSDZ.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-G33FT3NO.mjs +0 -355
- package/dist/lib/browser/intent-resolver-G33FT3NO.mjs.map +0 -7
- package/dist/lib/browser/markdown-WFZFYJBQ.mjs +0 -172
- package/dist/lib/browser/markdown-WFZFYJBQ.mjs.map +0 -7
- package/dist/lib/browser/react-root-ED7PHA44.mjs +0 -29
- package/dist/lib/browser/react-root-ED7PHA44.mjs.map +0 -7
- package/dist/lib/browser/react-surface-AUQQSQQC.mjs +0 -111
- package/dist/lib/browser/react-surface-AUQQSQQC.mjs.map +0 -7
- package/dist/lib/browser/repair-JFJLEM2O.mjs +0 -35
- package/dist/lib/browser/repair-JFJLEM2O.mjs.map +0 -7
- package/dist/lib/browser/settings-E6IOLK46.mjs +0 -23
- package/dist/lib/browser/settings-E6IOLK46.mjs.map +0 -7
- package/dist/lib/browser/state-UYPLBGZJ.mjs +0 -35
- package/dist/lib/browser/state-UYPLBGZJ.mjs.map +0 -7
- package/dist/lib/node-esm/ChannelContainer-FYONOOZ6.mjs +0 -18
- package/dist/lib/node-esm/ChatContainer-TLQG23K7.mjs +0 -17
- package/dist/lib/node-esm/app-graph-builder-VD6I2V5H.mjs +0 -172
- package/dist/lib/node-esm/app-graph-builder-VD6I2V5H.mjs.map +0 -7
- package/dist/lib/node-esm/blueprint-definition-TSX5HHW7.mjs +0 -102
- package/dist/lib/node-esm/blueprint-definition-TSX5HHW7.mjs.map +0 -7
- package/dist/lib/node-esm/call-manager-UMUXEYH5.mjs +0 -26
- package/dist/lib/node-esm/call-manager-UMUXEYH5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2AEIN5MI.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-7KZWZS2U.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-AB42KYF3.mjs +0 -990
- package/dist/lib/node-esm/chunk-AB42KYF3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ATNY37UV.mjs +0 -27
- package/dist/lib/node-esm/chunk-ATNY37UV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-E5HNHFYH.mjs +0 -378
- package/dist/lib/node-esm/chunk-E5HNHFYH.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-FF3QVPY4.mjs +0 -612
- package/dist/lib/node-esm/chunk-FF3QVPY4.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
- package/dist/lib/node-esm/chunk-P2M364TO.mjs +0 -144
- package/dist/lib/node-esm/chunk-P2M364TO.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-PZH2EDU5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RT6NRL2I.mjs +0 -19
- package/dist/lib/node-esm/chunk-RT6NRL2I.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-4PX3WXQG.mjs +0 -356
- package/dist/lib/node-esm/intent-resolver-4PX3WXQG.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-CSR5MAPZ.mjs +0 -173
- package/dist/lib/node-esm/markdown-CSR5MAPZ.mjs.map +0 -7
- package/dist/lib/node-esm/react-root-DZN324JA.mjs +0 -30
- package/dist/lib/node-esm/react-root-DZN324JA.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-AMVESEF4.mjs +0 -112
- package/dist/lib/node-esm/react-surface-AMVESEF4.mjs.map +0 -7
- package/dist/lib/node-esm/repair-RMLR24YR.mjs +0 -36
- package/dist/lib/node-esm/repair-RMLR24YR.mjs.map +0 -7
- package/dist/lib/node-esm/settings-RGZHWDSO.mjs +0 -24
- package/dist/lib/node-esm/settings-RGZHWDSO.mjs.map +0 -7
- package/dist/lib/node-esm/state-XNWOLBNE.mjs +0 -36
- package/dist/lib/node-esm/state-XNWOLBNE.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
- package/dist/types/src/capabilities/call-manager.d.ts +0 -5
- package/dist/types/src/capabilities/call-manager.d.ts.map +0 -1
- package/dist/types/src/capabilities/capabilities.d.ts +0 -27
- package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/markdown.d.ts +0 -4
- package/dist/types/src/capabilities/markdown.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-root.d.ts +0 -7
- package/dist/types/src/capabilities/react-root.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface.d.ts +0 -4
- package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/repair.d.ts +0 -4
- package/dist/types/src/capabilities/repair.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings.d.ts +0 -4
- package/dist/types/src/capabilities/settings.d.ts.map +0 -1
- package/dist/types/src/capabilities/state.d.ts +0 -7
- package/dist/types/src/capabilities/state.d.ts.map +0 -1
- package/dist/types/src/components/CallDebugPanel.d.ts.map +0 -1
- package/dist/types/src/components/CallSidebar.d.ts.map +0 -1
- package/dist/types/src/components/ChannelContainer.d.ts +0 -14
- package/dist/types/src/components/ChannelContainer.d.ts.map +0 -1
- package/dist/types/src/components/ChannelContainer.stories.d.ts.map +0 -1
- package/dist/types/src/components/Chat.stories.d.ts.map +0 -1
- package/dist/types/src/components/ChatContainer.d.ts.map +0 -1
- package/dist/types/src/components/Comments.stories.d.ts.map +0 -1
- package/dist/types/src/components/CommentsContainer.d.ts +0 -13
- package/dist/types/src/components/CommentsContainer.d.ts.map +0 -1
- package/dist/types/src/components/CommentsThreadContainer.d.ts.map +0 -1
- package/dist/types/src/components/MessageContainer.d.ts +0 -16
- package/dist/types/src/components/MessageContainer.d.ts.map +0 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.d.ts.map +0 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +0 -1
- package/dist/types/src/components/ThreadCompanion.d.ts +0 -5
- package/dist/types/src/components/ThreadCompanion.d.ts.map +0 -1
- package/dist/types/src/components/ThreadSettings.d.ts +0 -6
- package/dist/types/src/components/ThreadSettings.d.ts.map +0 -1
- package/dist/types/src/components/command-extension.d.ts.map +0 -1
- package/dist/types/src/components/testing.d.ts.map +0 -1
- package/dist/types/src/functions/create-proposals.d.ts +0 -6
- package/dist/types/src/functions/create-proposals.d.ts.map +0 -1
- package/dist/types/src/functions/index.d.ts +0 -2
- package/dist/types/src/functions/index.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder.ts +0 -194
- package/src/capabilities/blueprint-definition.ts +0 -38
- package/src/capabilities/call-manager.ts +0 -20
- package/src/capabilities/capabilities.ts +0 -33
- package/src/capabilities/intent-resolver.ts +0 -311
- package/src/capabilities/markdown.ts +0 -71
- package/src/capabilities/react-root.tsx +0 -17
- package/src/capabilities/react-surface.tsx +0 -91
- package/src/capabilities/repair.ts +0 -40
- package/src/capabilities/settings.ts +0 -19
- package/src/capabilities/state.ts +0 -26
- package/src/components/CallSidebar.tsx +0 -18
- package/src/components/ChannelContainer.stories.tsx +0 -59
- package/src/components/ChatContainer.tsx +0 -153
- package/src/components/Comments.stories.tsx +0 -90
- package/src/components/ThreadCompanion.tsx +0 -188
- package/src/components/ThreadSettings.tsx +0 -16
- package/src/functions/create-proposals.ts +0 -56
- package/src/functions/index.ts +0 -5
- /package/dist/lib/browser/{ChannelContainer-L7MKV7DS.mjs.map → ChannelContainer-C25SJD67.mjs.map} +0 -0
- /package/dist/lib/browser/{ChatContainer-KPY4BAUE.mjs.map → ChatContainer-VG6JXVMR.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-J5LGTIGS.mjs.map → blueprints/index.mjs.map} +0 -0
- /package/dist/lib/{node-esm/ChannelContainer-FYONOOZ6.mjs.map → browser/operations/index.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChatContainer-TLQG23K7.mjs.map → ChannelContainer-R23E4D3N.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-HSLMI22Q.mjs.map → ChatContainer-VS2NX3S7.mjs.map} +0 -0
- /package/src/{components/testing.ts → testing/data.ts} +0 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
definitions_exports
|
|
4
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
5
|
+
|
|
6
|
+
// src/extensions/threads.ts
|
|
7
|
+
import { EditorView } from "@codemirror/view";
|
|
8
|
+
import { Filter, Obj, Query, Relation } from "@dxos/echo";
|
|
9
|
+
import { createDocAccessor, getTextInRange } from "@dxos/echo-db";
|
|
10
|
+
import { AnchoredTo, Thread } from "@dxos/types";
|
|
11
|
+
import { comments, createExternalCommentSync } from "@dxos/ui-editor";
|
|
12
|
+
var getName = (doc, anchor) => {
|
|
13
|
+
if (doc.content) {
|
|
14
|
+
const [start, end] = anchor.split(":");
|
|
15
|
+
return getTextInRange(createDocAccessor(doc.content.target, [
|
|
16
|
+
"content"
|
|
17
|
+
]), start, end);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
var threads = (store, doc, invokePromise) => {
|
|
21
|
+
const db = doc && Obj.getDatabase(doc);
|
|
22
|
+
if (!doc || !db || !invokePromise) {
|
|
23
|
+
return [
|
|
24
|
+
comments()
|
|
25
|
+
];
|
|
26
|
+
}
|
|
27
|
+
const { registry, stateAtom } = store;
|
|
28
|
+
const objectId = Obj.getDXN(doc).toString();
|
|
29
|
+
const query = db.query(Query.select(Filter.id(doc.id)).targetOf(AnchoredTo.AnchoredTo));
|
|
30
|
+
const getAnchors = () => query.results.filter((anchor) => {
|
|
31
|
+
const thread = Relation.getSource(anchor);
|
|
32
|
+
return Obj.instanceOf(Thread.Thread, thread) && thread.status !== "resolved";
|
|
33
|
+
}).concat(registry.get(stateAtom).drafts[objectId] ?? []);
|
|
34
|
+
return [
|
|
35
|
+
EditorView.domEventHandlers({
|
|
36
|
+
destroy: () => {
|
|
37
|
+
}
|
|
38
|
+
}),
|
|
39
|
+
EditorView.updateListener.of((update) => {
|
|
40
|
+
if (update.docChanged) {
|
|
41
|
+
getAnchors().forEach((anchor) => {
|
|
42
|
+
if (anchor.anchor) {
|
|
43
|
+
const name = getName(doc, anchor.anchor);
|
|
44
|
+
const thread = Relation.getSource(anchor);
|
|
45
|
+
if (name && name !== thread.name) {
|
|
46
|
+
Obj.change(thread, (obj) => {
|
|
47
|
+
obj.name = name;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}),
|
|
54
|
+
createExternalCommentSync(objectId, (sink) => {
|
|
55
|
+
const unsubQuery = query.subscribe(sink);
|
|
56
|
+
const unsubStore = registry.subscribe(stateAtom, sink);
|
|
57
|
+
return () => {
|
|
58
|
+
unsubQuery();
|
|
59
|
+
unsubStore();
|
|
60
|
+
};
|
|
61
|
+
}, () => getAnchors().filter((anchor) => anchor.anchor).map((anchor) => ({
|
|
62
|
+
id: Obj.getDXN(Relation.getSource(anchor)).toString(),
|
|
63
|
+
cursor: anchor.anchor
|
|
64
|
+
}))),
|
|
65
|
+
comments({
|
|
66
|
+
id: objectId,
|
|
67
|
+
onCreate: ({ cursor }) => {
|
|
68
|
+
const name = getName(doc, cursor);
|
|
69
|
+
void invokePromise(definitions_exports.Create, {
|
|
70
|
+
anchor: cursor,
|
|
71
|
+
name,
|
|
72
|
+
subject: doc
|
|
73
|
+
});
|
|
74
|
+
},
|
|
75
|
+
onDelete: ({ id }) => {
|
|
76
|
+
const drafts = registry.get(stateAtom).drafts[objectId];
|
|
77
|
+
if (drafts) {
|
|
78
|
+
const index = drafts.findIndex((draft) => Relation.getDXN(draft).toString() === id);
|
|
79
|
+
if (index !== -1) {
|
|
80
|
+
const current = registry.get(stateAtom);
|
|
81
|
+
registry.set(stateAtom, {
|
|
82
|
+
...current,
|
|
83
|
+
drafts: {
|
|
84
|
+
...current.drafts,
|
|
85
|
+
[objectId]: current.drafts[objectId]?.filter((_, i) => i !== index)
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
const thread = query.results.find((object) => Relation.getSource(object).id === id);
|
|
91
|
+
if (thread) {
|
|
92
|
+
Relation.change(thread, (obj) => {
|
|
93
|
+
obj.anchor = void 0;
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
onUpdate: ({ id, cursor }) => {
|
|
98
|
+
const draft = registry.get(stateAtom).drafts[objectId]?.find((d) => Relation.getDXN(d).toString() === id);
|
|
99
|
+
if (draft) {
|
|
100
|
+
const thread = Relation.getSource(draft);
|
|
101
|
+
Obj.change(thread, (obj) => {
|
|
102
|
+
obj.name = getName(doc, cursor);
|
|
103
|
+
});
|
|
104
|
+
Relation.change(draft, (obj) => {
|
|
105
|
+
obj.anchor = cursor;
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
const relation = query.results.find((object) => Relation.getSource(object).id === id);
|
|
109
|
+
if (relation) {
|
|
110
|
+
const thread = Relation.getSource(relation);
|
|
111
|
+
if (Obj.instanceOf(Thread.Thread, thread)) {
|
|
112
|
+
Obj.change(thread, (obj) => {
|
|
113
|
+
obj.name = getName(doc, cursor);
|
|
114
|
+
});
|
|
115
|
+
Relation.change(relation, (obj) => {
|
|
116
|
+
obj.anchor = cursor;
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
onSelect: ({ selection }) => {
|
|
122
|
+
const current = selection.current ?? selection.closest;
|
|
123
|
+
if (current) {
|
|
124
|
+
void invokePromise(definitions_exports.Select, {
|
|
125
|
+
current
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
})
|
|
130
|
+
];
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export {
|
|
134
|
+
threads
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=chunk-YGHV23ZD.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/extensions/threads.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Extension } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { type Atom, type Registry } from '@effect-atom/atom-react';\n\nimport { Filter, Obj, Query, Relation } from '@dxos/echo';\nimport { createDocAccessor, getTextInRange } from '@dxos/echo-db';\nimport { type OperationInvoker } from '@dxos/operation';\nimport { type Markdown } from '@dxos/plugin-markdown/types';\nimport { AnchoredTo, Thread } from '@dxos/types';\nimport { comments, createExternalCommentSync } from '@dxos/ui-editor';\n\nimport { type ThreadState } from '../types';\nimport { ThreadOperation } from '../operations';\n\n// TODO(burdon): Factor out.\nconst getName = (doc: Markdown.Document, 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\nexport type ThreadStore = {\n registry: Registry.Registry;\n stateAtom: Atom.Writable<ThreadState>;\n};\n\n/**\n * Construct plugins.\n */\nexport const threads = (\n store: ThreadStore,\n doc?: Markdown.Document,\n invokePromise?: OperationInvoker.OperationInvoker['invokePromise'],\n): Extension => {\n const db = doc && Obj.getDatabase(doc);\n if (!doc || !db || !invokePromise) {\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 const { registry, stateAtom } = store;\n const objectId = Obj.getDXN(doc).toString();\n const query = db.query(Query.select(Filter.id(doc.id)).targetOf(AnchoredTo.AnchoredTo));\n\n // Get current anchors by combining query results with store drafts.\n const getAnchors = () =>\n query.results\n .filter((anchor) => {\n const thread = Relation.getSource(anchor);\n return Obj.instanceOf(Thread.Thread, thread) && thread.status !== 'resolved';\n })\n .concat(registry.get(stateAtom).drafts[objectId] ?? []);\n\n return [\n EditorView.domEventHandlers({\n destroy: () => {\n // Note: cleanup functions for subscriptions are handled by createExternalCommentSync.\n },\n }),\n\n EditorView.updateListener.of((update) => {\n if (update.docChanged) {\n getAnchors().forEach((anchor) => {\n if (anchor.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, anchor.anchor);\n const thread = Relation.getSource(anchor) as Thread.Thread;\n if (name && name !== thread.name) {\n Obj.change(thread, (obj) => {\n obj.name = name;\n });\n }\n }\n });\n }\n }),\n\n createExternalCommentSync(\n objectId,\n (sink) => {\n // Subscribe to both query changes and store state changes.\n const unsubQuery = query.subscribe(sink);\n const unsubStore = registry.subscribe(stateAtom, sink);\n return () => {\n unsubQuery();\n unsubStore();\n };\n },\n () =>\n getAnchors()\n .filter((anchor) => anchor.anchor)\n .map((anchor) => ({\n id: Obj.getDXN(Relation.getSource(anchor)).toString(),\n cursor: anchor.anchor,\n })),\n ),\n\n comments({\n id: objectId,\n onCreate: ({ cursor }) => {\n const name = getName(doc, cursor);\n void invokePromise(ThreadOperation.Create, {\n anchor: cursor,\n name,\n subject: doc,\n });\n },\n onDelete: ({ id }) => {\n const drafts = registry.get(stateAtom).drafts[objectId];\n if (drafts) {\n const index = drafts.findIndex((draft) => Relation.getDXN(draft).toString() === id);\n if (index !== -1) {\n const current = registry.get(stateAtom);\n registry.set(stateAtom, {\n ...current,\n drafts: {\n ...current.drafts,\n [objectId]: current.drafts[objectId]?.filter((_, i) => i !== index),\n },\n });\n }\n }\n\n const thread = query.results.find((object) => Relation.getSource(object).id === id);\n if (thread) {\n Relation.change(thread, (obj) => {\n obj.anchor = undefined;\n });\n }\n },\n onUpdate: ({ id, cursor }) => {\n const draft = registry.get(stateAtom).drafts[objectId]?.find((d) => Relation.getDXN(d).toString() === id);\n if (draft) {\n const thread = Relation.getSource(draft) as Thread.Thread;\n Obj.change(thread, (obj) => {\n obj.name = getName(doc, cursor);\n });\n Relation.change(draft, (obj) => {\n obj.anchor = cursor;\n });\n }\n\n const relation = query.results.find((object) => Relation.getSource(object).id === id);\n if (relation) {\n const thread = Relation.getSource(relation);\n if (Obj.instanceOf(Thread.Thread, thread)) {\n Obj.change(thread, (obj) => {\n obj.name = getName(doc, cursor);\n });\n Relation.change(relation, (obj) => {\n obj.anchor = cursor;\n });\n }\n }\n },\n onSelect: ({ selection }) => {\n const current = selection.current ?? selection.closest;\n if (current) {\n void invokePromise(ThreadOperation.Select, { current });\n }\n },\n }),\n ];\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["EditorView", "Filter", "Obj", "Query", "Relation", "createDocAccessor", "getTextInRange", "AnchoredTo", "Thread", "comments", "createExternalCommentSync", "getName", "doc", "anchor", "content", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "threads", "store", "invokePromise", "db", "Obj", "getDatabase", "comments", "registry", "stateAtom", "objectId", "getDXN", "toString", "query", "Query", "select", "Filter", "id", "targetOf", "AnchoredTo", "getAnchors", "results", "filter", "thread", "Relation", "getSource", "instanceOf", "Thread", "status", "concat", "get", "drafts", "EditorView", "domEventHandlers", "destroy", "updateListener", "of", "update", "docChanged", "forEach", "name", "change", "obj", "createExternalCommentSync", "sink", "unsubQuery", "subscribe", "unsubStore", "map", "cursor", "onCreate", "ThreadOperation", "Create", "subject", "onDelete", "index", "findIndex", "draft", "current", "set", "_", "i", "find", "object", "undefined", "onUpdate", "d", "relation", "onSelect", "selection", "closest", "Select"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
Create,
|
|
4
|
+
Select
|
|
5
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
6
|
+
import {
|
|
7
|
+
ThreadCapabilities
|
|
8
|
+
} from "./chunk-6ZJGXE4F.mjs";
|
|
9
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
10
|
+
|
|
11
|
+
// src/operations/create.ts
|
|
12
|
+
import * as Effect from "effect/Effect";
|
|
13
|
+
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
14
|
+
import { companionSegment } from "@dxos/app-toolkit";
|
|
15
|
+
import { Obj, Relation } from "@dxos/echo";
|
|
16
|
+
import { Operation } from "@dxos/operation";
|
|
17
|
+
import { DeckOperation } from "@dxos/plugin-deck/operations";
|
|
18
|
+
import { AnchoredTo, Thread } from "@dxos/types";
|
|
19
|
+
var handler = Create.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ name, anchor: _anchor, subject }) {
|
|
20
|
+
const registry = yield* Capability.get(Capabilities.AtomRegistry);
|
|
21
|
+
const stateAtom = yield* Capability.get(ThreadCapabilities.State);
|
|
22
|
+
const subjectId = Obj.getDXN(subject).toString();
|
|
23
|
+
const thread = Thread.make({
|
|
24
|
+
name
|
|
25
|
+
});
|
|
26
|
+
const anchor = Relation.make(AnchoredTo.AnchoredTo, {
|
|
27
|
+
[Relation.Source]: thread,
|
|
28
|
+
[Relation.Target]: subject,
|
|
29
|
+
anchor: _anchor
|
|
30
|
+
});
|
|
31
|
+
const state = registry.get(stateAtom);
|
|
32
|
+
const existingDrafts = state.drafts[subjectId];
|
|
33
|
+
registry.set(stateAtom, {
|
|
34
|
+
...state,
|
|
35
|
+
drafts: {
|
|
36
|
+
...state.drafts,
|
|
37
|
+
[subjectId]: existingDrafts ? [
|
|
38
|
+
...existingDrafts,
|
|
39
|
+
anchor
|
|
40
|
+
] : [
|
|
41
|
+
anchor
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
yield* Operation.invoke(Select, {
|
|
46
|
+
current: Obj.getDXN(thread).toString()
|
|
47
|
+
});
|
|
48
|
+
yield* Operation.invoke(DeckOperation.ChangeCompanion, {
|
|
49
|
+
companion: companionSegment("comments")
|
|
50
|
+
});
|
|
51
|
+
})));
|
|
52
|
+
var create_default = handler;
|
|
53
|
+
export {
|
|
54
|
+
create_default as default
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=create-DIAK4OFO.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/create.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { companionSegment } from '@dxos/app-toolkit';\nimport { Obj, Relation } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { DeckOperation } from '@dxos/plugin-deck/operations';\nimport { AnchoredTo, Thread } from '@dxos/types';\n\nimport { Create, Select } from './definitions';\n\nimport { ThreadCapabilities } from '../types';\n\nconst handler: Operation.WithHandler<typeof Create> = Create.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ name, anchor: _anchor, subject }) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const stateAtom = yield* Capability.get(ThreadCapabilities.State);\n const subjectId = Obj.getDXN(subject).toString();\n const thread = Thread.make({ name });\n const anchor = Relation.make(AnchoredTo.AnchoredTo, {\n [Relation.Source]: thread,\n [Relation.Target]: subject,\n anchor: _anchor,\n });\n\n const state = registry.get(stateAtom);\n const existingDrafts = state.drafts[subjectId];\n registry.set(stateAtom, {\n ...state,\n drafts: {\n ...state.drafts,\n [subjectId]: existingDrafts ? [...existingDrafts, anchor] : [anchor],\n },\n });\n\n yield* Operation.invoke(Select, { current: Obj.getDXN(thread).toString() });\n yield* Operation.invoke(DeckOperation.ChangeCompanion, {\n companion: companionSegment('comments'),\n });\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,wBAAwB;AACjC,SAASC,KAAKC,gBAAgB;AAC9B,SAASC,iBAAiB;AAC1B,SAASC,qBAAqB;AAC9B,SAASC,YAAYC,cAAc;AAMnC,IAAMC,UAAgDC,OAAOC,KAC3DC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,MAAMC,QAAQC,SAASC,QAAO,GAAE;AAC7D,QAAMC,WAAW,OAAOC,WAAWC,IAAIC,aAAaC,YAAY;AAChE,QAAMC,YAAY,OAAOJ,WAAWC,IAAII,mBAAmBC,KAAK;AAChE,QAAMC,YAAYC,IAAIC,OAAOX,OAAAA,EAASY,SAAQ;AAC9C,QAAMC,SAASC,OAAOC,KAAK;IAAElB;EAAK,CAAA;AAClC,QAAMC,SAASkB,SAASD,KAAKE,WAAWA,YAAY;IAClD,CAACD,SAASE,MAAM,GAAGL;IACnB,CAACG,SAASG,MAAM,GAAGnB;IACnBF,QAAQC;EACV,CAAA;AAEA,QAAMqB,QAAQnB,SAASE,IAAIG,SAAAA;AAC3B,QAAMe,iBAAiBD,MAAME,OAAOb,SAAAA;AACpCR,WAASsB,IAAIjB,WAAW;IACtB,GAAGc;IACHE,QAAQ;MACN,GAAGF,MAAME;MACT,CAACb,SAAAA,GAAYY,iBAAiB;WAAIA;QAAgBvB;UAAU;QAACA;;IAC/D;EACF,CAAA;AAEA,SAAOJ,UAAU8B,OAAOC,QAAQ;IAAEC,SAAShB,IAAIC,OAAOE,MAAAA,EAAQD,SAAQ;EAAG,CAAA;AACzE,SAAOlB,UAAU8B,OAAOG,cAAcC,iBAAiB;IACrDC,WAAWC,iBAAiB,UAAA;EAC9B,CAAA;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,iBAAevC;",
|
|
6
|
+
"names": ["Effect", "Capabilities", "Capability", "companionSegment", "Obj", "Relation", "Operation", "DeckOperation", "AnchoredTo", "Thread", "handler", "Create", "pipe", "Operation", "withHandler", "fnUntraced", "name", "anchor", "_anchor", "subject", "registry", "Capability", "get", "Capabilities", "AtomRegistry", "stateAtom", "ThreadCapabilities", "State", "subjectId", "Obj", "getDXN", "toString", "thread", "Thread", "make", "Relation", "AnchoredTo", "Source", "Target", "state", "existingDrafts", "drafts", "set", "invoke", "Select", "current", "DeckOperation", "ChangeCompanion", "companion", "companionSegment"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
CreateChannel
|
|
4
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
5
|
+
import {
|
|
6
|
+
Channel_exports
|
|
7
|
+
} from "./chunk-6ZJGXE4F.mjs";
|
|
8
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
9
|
+
|
|
10
|
+
// src/operations/create-channel.ts
|
|
11
|
+
import * as Effect from "effect/Effect";
|
|
12
|
+
import { Operation } from "@dxos/operation";
|
|
13
|
+
var handler = CreateChannel.pipe(Operation.withHandler((input) => Effect.sync(() => ({
|
|
14
|
+
object: Channel_exports.make({
|
|
15
|
+
name: input.name
|
|
16
|
+
})
|
|
17
|
+
}))));
|
|
18
|
+
var create_channel_default = handler;
|
|
19
|
+
export {
|
|
20
|
+
create_channel_default as default
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=create-channel-JHQN2RGK.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/create-channel.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/operation';\n\nimport { CreateChannel } from './definitions';\n\nimport { Channel } from '../types';\n\nconst handler: Operation.WithHandler<typeof CreateChannel> = CreateChannel.pipe(\n Operation.withHandler((input) =>\n Effect.sync(() => ({\n object: Channel.make({ name: input.name }),\n })),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAM1B,IAAMC,UAAuDC,cAAcC,KACzEC,UAAUC,YAAY,CAACC,UACdC,YAAK,OAAO;EACjBC,QAAQC,gBAAQC,KAAK;IAAEC,MAAML,MAAMK;EAAK,CAAA;AAC1C,EAAA,CAAA,CAAA;AAIJ,IAAA,yBAAeV;",
|
|
6
|
+
"names": ["Effect", "Operation", "handler", "CreateChannel", "pipe", "Operation", "withHandler", "input", "sync", "object", "Channel", "make", "name"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
CreateChannelThread
|
|
4
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
5
|
+
import "./chunk-6ZJGXE4F.mjs";
|
|
6
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
7
|
+
|
|
8
|
+
// src/operations/create-channel-thread.ts
|
|
9
|
+
import * as Effect from "effect/Effect";
|
|
10
|
+
import { Obj, Ref } from "@dxos/echo";
|
|
11
|
+
import { Operation } from "@dxos/operation";
|
|
12
|
+
import { Thread } from "@dxos/types";
|
|
13
|
+
var handler = CreateChannelThread.pipe(Operation.withHandler((input) => Effect.sync(() => {
|
|
14
|
+
const thread = Thread.make({
|
|
15
|
+
status: "active"
|
|
16
|
+
});
|
|
17
|
+
const threadRef = Ref.make(thread);
|
|
18
|
+
Obj.change(input.channel, (obj) => {
|
|
19
|
+
obj.threads.push(threadRef);
|
|
20
|
+
});
|
|
21
|
+
return {
|
|
22
|
+
object: thread
|
|
23
|
+
};
|
|
24
|
+
})));
|
|
25
|
+
var create_channel_thread_default = handler;
|
|
26
|
+
export {
|
|
27
|
+
create_channel_thread_default as default
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=create-channel-thread-PQKG5VFZ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/create-channel-thread.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Obj, Ref } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { Thread } from '@dxos/types';\n\nimport { CreateChannelThread } from './definitions';\n\nconst handler: Operation.WithHandler<typeof CreateChannelThread> = CreateChannelThread.pipe(\n Operation.withHandler((input) =>\n Effect.sync(() => {\n const thread = Thread.make({ status: 'active' });\n const threadRef = Ref.make(thread);\n Obj.change(input.channel, (obj) => {\n obj.threads.push(threadRef);\n });\n return { object: thread };\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,KAAKC,WAAW;AACzB,SAASC,iBAAiB;AAC1B,SAASC,cAAc;AAIvB,IAAMC,UAA6DC,oBAAoBC,KACrFC,UAAUC,YAAY,CAACC,UACdC,YAAK,MAAA;AACV,QAAMC,SAASC,OAAOC,KAAK;IAAEC,QAAQ;EAAS,CAAA;AAC9C,QAAMC,YAAYC,IAAIH,KAAKF,MAAAA;AAC3BM,MAAIC,OAAOT,MAAMU,SAAS,CAACC,QAAAA;AACzBA,QAAIC,QAAQC,KAAKP,SAAAA;EACnB,CAAA;AACA,SAAO;IAAEQ,QAAQZ;EAAO;AAC1B,CAAA,CAAA,CAAA;AAIJ,IAAA,gCAAeP;",
|
|
6
|
+
"names": ["Effect", "Obj", "Ref", "Operation", "Thread", "handler", "CreateChannelThread", "pipe", "Operation", "withHandler", "input", "sync", "thread", "Thread", "make", "status", "threadRef", "Ref", "Obj", "change", "channel", "obj", "threads", "push", "object"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
CreateProposals
|
|
4
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
5
|
+
import "./chunk-6ZJGXE4F.mjs";
|
|
6
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
7
|
+
|
|
8
|
+
// src/operations/create-proposals.ts
|
|
9
|
+
import * as Array from "effect/Array";
|
|
10
|
+
import * as Effect from "effect/Effect";
|
|
11
|
+
import * as Function from "effect/Function";
|
|
12
|
+
import { computeDiffsWithCursors } from "@dxos/assistant";
|
|
13
|
+
import { Database, Obj, Ref, Relation } from "@dxos/echo";
|
|
14
|
+
import { createDocAccessor } from "@dxos/echo-db";
|
|
15
|
+
import { Operation } from "@dxos/operation";
|
|
16
|
+
import { AnchoredTo, Message, Thread } from "@dxos/types";
|
|
17
|
+
var handler = CreateProposals.pipe(Operation.withHandler(Effect.fn(function* ({ doc, diffs }) {
|
|
18
|
+
const object = yield* Database.load(doc);
|
|
19
|
+
const content = yield* Effect.promise(() => object.content.load());
|
|
20
|
+
const accessor = createDocAccessor(content, [
|
|
21
|
+
"content"
|
|
22
|
+
]);
|
|
23
|
+
yield* Function.pipe(computeDiffsWithCursors(accessor, diffs), Array.map(Effect.fnUntraced(function* ({ cursor, text }) {
|
|
24
|
+
const proposal = Obj.make(Message.Message, {
|
|
25
|
+
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
26
|
+
sender: {
|
|
27
|
+
role: "assistant"
|
|
28
|
+
},
|
|
29
|
+
blocks: [
|
|
30
|
+
{
|
|
31
|
+
_tag: "proposal",
|
|
32
|
+
text
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
});
|
|
36
|
+
const thread = Thread.make({
|
|
37
|
+
name: "Proposal",
|
|
38
|
+
messages: [
|
|
39
|
+
Ref.make(proposal)
|
|
40
|
+
],
|
|
41
|
+
status: "active"
|
|
42
|
+
});
|
|
43
|
+
const relation = Relation.make(AnchoredTo.AnchoredTo, {
|
|
44
|
+
[Relation.Source]: thread,
|
|
45
|
+
[Relation.Target]: object,
|
|
46
|
+
anchor: cursor
|
|
47
|
+
});
|
|
48
|
+
yield* Database.add(thread);
|
|
49
|
+
yield* Database.add(relation);
|
|
50
|
+
})), Effect.allWith({
|
|
51
|
+
concurrency: "unbounded"
|
|
52
|
+
}));
|
|
53
|
+
})));
|
|
54
|
+
var create_proposals_default = handler;
|
|
55
|
+
export {
|
|
56
|
+
create_proposals_default as default
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=create-proposals-JBZLGBSF.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/create-proposals.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Array from 'effect/Array';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\n\nimport { computeDiffsWithCursors } from '@dxos/assistant';\nimport { Database, Obj, Ref, Relation } from '@dxos/echo';\nimport { createDocAccessor } from '@dxos/echo-db';\nimport { Operation } from '@dxos/operation';\nimport { AnchoredTo, Message, Thread } from '@dxos/types';\n\nimport { CreateProposals } from './definitions';\n\nconst handler: Operation.WithHandler<typeof CreateProposals> = CreateProposals.pipe(\n Operation.withHandler(\n Effect.fn(function* ({ doc, diffs }) {\n const object = yield* Database.load(doc);\n const content = yield* Effect.promise(() => object.content.load());\n const accessor = createDocAccessor(content, ['content']);\n\n yield* Function.pipe(\n computeDiffsWithCursors(accessor, diffs),\n Array.map(\n Effect.fnUntraced(function* ({ cursor, text }) {\n const proposal = Obj.make(Message.Message, {\n created: new Date().toISOString(),\n sender: { role: 'assistant' },\n blocks: [{ _tag: 'proposal', text }],\n });\n const thread = Thread.make({ name: 'Proposal', messages: [Ref.make(proposal)], status: 'active' });\n const relation = Relation.make(AnchoredTo.AnchoredTo, {\n [Relation.Source]: thread,\n [Relation.Target]: object,\n anchor: cursor,\n });\n yield* Database.add(thread);\n yield* Database.add(relation);\n }),\n ),\n Effect.allWith({ concurrency: 'unbounded' }),\n );\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;AAIA,YAAYA,WAAW;AACvB,YAAYC,YAAY;AACxB,YAAYC,cAAc;AAE1B,SAASC,+BAA+B;AACxC,SAASC,UAAUC,KAAKC,KAAKC,gBAAgB;AAC7C,SAASC,yBAAyB;AAClC,SAASC,iBAAiB;AAC1B,SAASC,YAAYC,SAASC,cAAc;AAI5C,IAAMC,UAAyDC,gBAAgBC,KAC7EC,UAAUC,YACDC,UAAG,WAAW,EAAEC,KAAKC,MAAK,GAAE;AACjC,QAAMC,SAAS,OAAOC,SAASC,KAAKJ,GAAAA;AACpC,QAAMK,UAAU,OAAcC,eAAQ,MAAMJ,OAAOG,QAAQD,KAAI,CAAA;AAC/D,QAAMG,WAAWC,kBAAkBH,SAAS;IAAC;GAAU;AAEvD,SAAgBT,cACda,wBAAwBF,UAAUN,KAAAA,GAC5BS,UACGC,kBAAW,WAAW,EAAEC,QAAQC,KAAI,GAAE;AAC3C,UAAMC,WAAWC,IAAIC,KAAKC,QAAQA,SAAS;MACzCC,UAAS,oBAAIC,KAAAA,GAAOC,YAAW;MAC/BC,QAAQ;QAAEC,MAAM;MAAY;MAC5BC,QAAQ;QAAC;UAAEC,MAAM;UAAYX;QAAK;;IACpC,CAAA;AACA,UAAMY,SAASC,OAAOV,KAAK;MAAEW,MAAM;MAAYC,UAAU;QAACC,IAAIb,KAAKF,QAAAA;;MAAYgB,QAAQ;IAAS,CAAA;AAChG,UAAMC,WAAWC,SAAShB,KAAKiB,WAAWA,YAAY;MACpD,CAACD,SAASE,MAAM,GAAGT;MACnB,CAACO,SAASG,MAAM,GAAGjC;MACnBkC,QAAQxB;IACV,CAAA;AACA,WAAOT,SAASkC,IAAIZ,MAAAA;AACpB,WAAOtB,SAASkC,IAAIN,QAAAA;EACtB,CAAA,CAAA,GAEKO,eAAQ;IAAEC,aAAa;EAAY,CAAA,CAAA;AAE9C,CAAA,CAAA,CAAA;AAIJ,IAAA,2BAAe7C;",
|
|
6
|
+
"names": ["Array", "Effect", "Function", "computeDiffsWithCursors", "Database", "Obj", "Ref", "Relation", "createDocAccessor", "Operation", "AnchoredTo", "Message", "Thread", "handler", "CreateProposals", "pipe", "Operation", "withHandler", "fn", "doc", "diffs", "object", "Database", "load", "content", "promise", "accessor", "createDocAccessor", "computeDiffsWithCursors", "map", "fnUntraced", "cursor", "text", "proposal", "Obj", "make", "Message", "created", "Date", "toISOString", "sender", "role", "blocks", "_tag", "thread", "Thread", "name", "messages", "Ref", "status", "relation", "Relation", "AnchoredTo", "Source", "Target", "anchor", "add", "allWith", "concurrency"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
Delete
|
|
4
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
5
|
+
import {
|
|
6
|
+
ThreadCapabilities
|
|
7
|
+
} from "./chunk-6ZJGXE4F.mjs";
|
|
8
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
9
|
+
|
|
10
|
+
// src/operations/delete.ts
|
|
11
|
+
import * as Effect from "effect/Effect";
|
|
12
|
+
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
13
|
+
import { sleep } from "@dxos/async";
|
|
14
|
+
import { Obj, Relation } from "@dxos/echo";
|
|
15
|
+
import { Operation } from "@dxos/operation";
|
|
16
|
+
import { ObservabilityOperation } from "@dxos/plugin-observability/operations";
|
|
17
|
+
var handler = Delete.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ subject, anchor, thread: _thread }) {
|
|
18
|
+
const registry = yield* Capability.get(Capabilities.AtomRegistry);
|
|
19
|
+
const stateAtom = yield* Capability.get(ThreadCapabilities.State);
|
|
20
|
+
const thread = _thread ?? Relation.getSource(anchor);
|
|
21
|
+
const subjectId = Obj.getDXN(subject).toString();
|
|
22
|
+
const state = registry.get(stateAtom);
|
|
23
|
+
const draft = state.drafts[subjectId];
|
|
24
|
+
if (draft) {
|
|
25
|
+
const index = draft.findIndex((a) => a.id === anchor.id);
|
|
26
|
+
if (index !== -1) {
|
|
27
|
+
registry.set(stateAtom, {
|
|
28
|
+
...state,
|
|
29
|
+
drafts: {
|
|
30
|
+
...state.drafts,
|
|
31
|
+
[subjectId]: state.drafts[subjectId]?.filter((_, i) => i !== index)
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
return {};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const db = Obj.getDatabase(thread);
|
|
38
|
+
if (!db) {
|
|
39
|
+
return {};
|
|
40
|
+
}
|
|
41
|
+
db.remove(anchor);
|
|
42
|
+
yield* Effect.promise(() => sleep(100));
|
|
43
|
+
db.remove(thread);
|
|
44
|
+
yield* Operation.schedule(ObservabilityOperation.SendEvent, {
|
|
45
|
+
name: "threads.delete",
|
|
46
|
+
properties: {
|
|
47
|
+
spaceId: db.spaceId,
|
|
48
|
+
threadId: thread.id
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
thread,
|
|
53
|
+
anchor
|
|
54
|
+
};
|
|
55
|
+
})));
|
|
56
|
+
var delete_default = handler;
|
|
57
|
+
export {
|
|
58
|
+
delete_default as default
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=delete-F4NFPLKJ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/delete.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { sleep } from '@dxos/async';\nimport { Obj, Relation } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { ObservabilityOperation } from '@dxos/plugin-observability/operations';\nimport { Thread } from '@dxos/types';\n\nimport { Delete } from './definitions';\n\nimport { ThreadCapabilities } from '../types';\n\nconst handler: Operation.WithHandler<typeof Delete> = Delete.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ subject, anchor, thread: _thread }) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const stateAtom = yield* Capability.get(ThreadCapabilities.State);\n const thread = _thread ?? (Relation.getSource(anchor) as Thread.Thread);\n const subjectId = Obj.getDXN(subject).toString();\n const state = registry.get(stateAtom);\n const draft = state.drafts[subjectId];\n if (draft) {\n const index = draft.findIndex((a: { id: string }) => a.id === anchor.id);\n if (index !== -1) {\n registry.set(stateAtom, {\n ...state,\n drafts: {\n ...state.drafts,\n [subjectId]: state.drafts[subjectId]?.filter((_, i) => i !== index),\n },\n });\n return {};\n }\n }\n\n const db = Obj.getDatabase(thread);\n if (!db) {\n return {};\n }\n\n // TODO(wittjosiah): Without sleep, rendering crashes at `Relation.setSource(anchor)`.\n db.remove(anchor);\n yield* Effect.promise(() => sleep(100));\n db.remove(thread);\n\n yield* Operation.schedule(ObservabilityOperation.SendEvent, {\n name: 'threads.delete',\n properties: {\n spaceId: db.spaceId,\n threadId: thread.id,\n },\n });\n\n return { thread, anchor };\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,aAAa;AACtB,SAASC,KAAKC,gBAAgB;AAC9B,SAASC,iBAAiB;AAC1B,SAASC,8BAA8B;AAOvC,IAAMC,UAAgDC,OAAOC,KAC3DC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,SAASC,QAAQC,QAAQC,QAAO,GAAE;AAC/D,QAAMC,WAAW,OAAOC,WAAWC,IAAIC,aAAaC,YAAY;AAChE,QAAMC,YAAY,OAAOJ,WAAWC,IAAII,mBAAmBC,KAAK;AAChE,QAAMT,SAASC,WAAYS,SAASC,UAAUZ,MAAAA;AAC9C,QAAMa,YAAYC,IAAIC,OAAOhB,OAAAA,EAASiB,SAAQ;AAC9C,QAAMC,QAAQd,SAASE,IAAIG,SAAAA;AAC3B,QAAMU,QAAQD,MAAME,OAAON,SAAAA;AAC3B,MAAIK,OAAO;AACT,UAAME,QAAQF,MAAMG,UAAU,CAACC,MAAsBA,EAAEC,OAAOvB,OAAOuB,EAAE;AACvE,QAAIH,UAAU,IAAI;AAChBjB,eAASqB,IAAIhB,WAAW;QACtB,GAAGS;QACHE,QAAQ;UACN,GAAGF,MAAME;UACT,CAACN,SAAAA,GAAYI,MAAME,OAAON,SAAAA,GAAYY,OAAO,CAACC,GAAGC,MAAMA,MAAMP,KAAAA;QAC/D;MACF,CAAA;AACA,aAAO,CAAC;IACV;EACF;AAEA,QAAMQ,KAAKd,IAAIe,YAAY5B,MAAAA;AAC3B,MAAI,CAAC2B,IAAI;AACP,WAAO,CAAC;EACV;AAGAA,KAAGE,OAAO9B,MAAAA;AACV,SAAc+B,eAAQ,MAAMC,MAAM,GAAA,CAAA;AAClCJ,KAAGE,OAAO7B,MAAAA;AAEV,SAAOL,UAAUqC,SAASC,uBAAuBC,WAAW;IAC1DC,MAAM;IACNC,YAAY;MACVC,SAASV,GAAGU;MACZC,UAAUtC,OAAOsB;IACnB;EACF,CAAA;AAEA,SAAO;IAAEtB;IAAQD;EAAO;AAC1B,CAAA,CAAA,CAAA;AAIJ,IAAA,iBAAeP;",
|
|
6
|
+
"names": ["Effect", "Capabilities", "Capability", "sleep", "Obj", "Relation", "Operation", "ObservabilityOperation", "handler", "Delete", "pipe", "Operation", "withHandler", "fnUntraced", "subject", "anchor", "thread", "_thread", "registry", "Capability", "get", "Capabilities", "AtomRegistry", "stateAtom", "ThreadCapabilities", "State", "Relation", "getSource", "subjectId", "Obj", "getDXN", "toString", "state", "draft", "drafts", "index", "findIndex", "a", "id", "set", "filter", "_", "i", "db", "getDatabase", "remove", "promise", "sleep", "schedule", "ObservabilityOperation", "SendEvent", "name", "properties", "spaceId", "threadId"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
Delete,
|
|
4
|
+
DeleteMessage
|
|
5
|
+
} from "./chunk-JOAZKE2A.mjs";
|
|
6
|
+
import "./chunk-6ZJGXE4F.mjs";
|
|
7
|
+
import "./chunk-JZI7AFD6.mjs";
|
|
8
|
+
|
|
9
|
+
// src/operations/delete-message.ts
|
|
10
|
+
import * as Effect from "effect/Effect";
|
|
11
|
+
import { Obj, Relation } from "@dxos/echo";
|
|
12
|
+
import { invariant } from "@dxos/invariant";
|
|
13
|
+
import { Operation } from "@dxos/operation";
|
|
14
|
+
import { ObservabilityOperation } from "@dxos/plugin-observability/operations";
|
|
15
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/operations/delete-message.ts";
|
|
16
|
+
var handler = DeleteMessage.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ subject, anchor, messageId }) {
|
|
17
|
+
const thread = Relation.getSource(anchor);
|
|
18
|
+
const db = Obj.getDatabase(subject);
|
|
19
|
+
invariant(db, "Database not found", {
|
|
20
|
+
F: __dxlog_file,
|
|
21
|
+
L: 20,
|
|
22
|
+
S: this,
|
|
23
|
+
A: [
|
|
24
|
+
"db",
|
|
25
|
+
"'Database not found'"
|
|
26
|
+
]
|
|
27
|
+
});
|
|
28
|
+
const msgIndex = thread.messages.findIndex((ref) => ref.target?.id === messageId);
|
|
29
|
+
const msg = thread.messages[msgIndex]?.target;
|
|
30
|
+
if (!msg) {
|
|
31
|
+
return {
|
|
32
|
+
messageIndex: -1
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
if (msgIndex === 0 && thread.messages.length === 1) {
|
|
36
|
+
yield* Operation.invoke(Delete, {
|
|
37
|
+
subject,
|
|
38
|
+
anchor
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
messageIndex: -1
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
Obj.change(thread, (obj) => {
|
|
45
|
+
obj.messages.splice(msgIndex, 1);
|
|
46
|
+
});
|
|
47
|
+
yield* Operation.schedule(ObservabilityOperation.SendEvent, {
|
|
48
|
+
name: "threads.message.delete",
|
|
49
|
+
properties: {
|
|
50
|
+
spaceId: db.spaceId,
|
|
51
|
+
threadId: thread.id,
|
|
52
|
+
threadLength: thread.messages.length,
|
|
53
|
+
messageId
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
return {
|
|
57
|
+
message: msg,
|
|
58
|
+
messageIndex: msgIndex
|
|
59
|
+
};
|
|
60
|
+
})));
|
|
61
|
+
var delete_message_default = handler;
|
|
62
|
+
export {
|
|
63
|
+
delete_message_default as default
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=delete-message-QSTGJOL6.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/operations/delete-message.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Obj, Relation } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { Operation } from '@dxos/operation';\nimport { ObservabilityOperation } from '@dxos/plugin-observability/operations';\nimport { Thread } from '@dxos/types';\n\nimport { Delete, DeleteMessage } from './definitions';\n\nconst handler: Operation.WithHandler<typeof DeleteMessage> = DeleteMessage.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ subject, anchor, messageId }) {\n const thread = Relation.getSource(anchor) as Thread.Thread;\n const db = Obj.getDatabase(subject);\n invariant(db, 'Database not found');\n\n const msgIndex = thread.messages.findIndex((ref) => ref.target?.id === messageId);\n const msg = thread.messages[msgIndex]?.target;\n if (!msg) {\n return { messageIndex: -1 };\n }\n\n if (msgIndex === 0 && thread.messages.length === 1) {\n // TODO(wittjosiah): This doesn't support restoring the thread.\n yield* Operation.invoke(Delete, { subject, anchor });\n return { messageIndex: -1 };\n }\n\n Obj.change(thread, (obj) => {\n obj.messages.splice(msgIndex, 1);\n });\n\n yield* Operation.schedule(ObservabilityOperation.SendEvent, {\n name: 'threads.message.delete',\n properties: {\n spaceId: db.spaceId,\n threadId: thread.id,\n threadLength: thread.messages.length,\n messageId,\n },\n });\n\n return { message: msg, messageIndex: msgIndex };\n }),\n ),\n);\n\nexport default handler;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,KAAKC,gBAAgB;AAC9B,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,8BAA8B;;AAKvC,IAAMC,UAAuDC,cAAcC,KACzEC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,SAASC,QAAQC,UAAS,GAAE;AACzD,QAAMC,SAASC,SAASC,UAAUJ,MAAAA;AAClC,QAAMK,KAAKC,IAAIC,YAAYR,OAAAA;AAC3BS,YAAUH,IAAI,sBAAA;;;;;;;;;AAEd,QAAMI,WAAWP,OAAOQ,SAASC,UAAU,CAACC,QAAQA,IAAIC,QAAQC,OAAOb,SAAAA;AACvE,QAAMc,MAAMb,OAAOQ,SAASD,QAAAA,GAAWI;AACvC,MAAI,CAACE,KAAK;AACR,WAAO;MAAEC,cAAc;IAAG;EAC5B;AAEA,MAAIP,aAAa,KAAKP,OAAOQ,SAASO,WAAW,GAAG;AAElD,WAAOrB,UAAUsB,OAAOC,QAAQ;MAAEpB;MAASC;IAAO,CAAA;AAClD,WAAO;MAAEgB,cAAc;IAAG;EAC5B;AAEAV,MAAIc,OAAOlB,QAAQ,CAACmB,QAAAA;AAClBA,QAAIX,SAASY,OAAOb,UAAU,CAAA;EAChC,CAAA;AAEA,SAAOb,UAAU2B,SAASC,uBAAuBC,WAAW;IAC1DC,MAAM;IACNC,YAAY;MACVC,SAASvB,GAAGuB;MACZC,UAAU3B,OAAOY;MACjBgB,cAAc5B,OAAOQ,SAASO;MAC9BhB;IACF;EACF,CAAA;AAEA,SAAO;IAAE8B,SAAShB;IAAKC,cAAcP;EAAS;AAChD,CAAA,CAAA,CAAA;AAIJ,IAAA,yBAAehB;",
|
|
6
|
+
"names": ["Effect", "Obj", "Relation", "invariant", "Operation", "ObservabilityOperation", "handler", "DeleteMessage", "pipe", "Operation", "withHandler", "fnUntraced", "subject", "anchor", "messageId", "thread", "Relation", "getSource", "db", "Obj", "getDatabase", "invariant", "msgIndex", "messages", "findIndex", "ref", "target", "id", "msg", "messageIndex", "length", "invoke", "Delete", "change", "obj", "splice", "schedule", "ObservabilityOperation", "SendEvent", "name", "properties", "spaceId", "threadId", "threadLength", "message"]
|
|
7
|
+
}
|