@dxos/plugin-space 0.8.4-main.ead640a → 0.8.4-main.effb148878
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/LICENSE +102 -5
- package/README.md +1 -1
- package/dist/lib/neutral/CollectionArticle-O32JTK2Y.mjs +98 -0
- package/dist/lib/neutral/CollectionArticle-O32JTK2Y.mjs.map +7 -0
- package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs +19 -0
- package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs.map +7 -0
- package/dist/lib/neutral/CreateObjectDialog-QWAD2ACN.mjs +168 -0
- package/dist/lib/neutral/CreateObjectDialog-QWAD2ACN.mjs.map +7 -0
- package/dist/lib/neutral/CreateSpaceDialog-WPKMRZH3.mjs +57 -0
- package/dist/lib/neutral/CreateSpaceDialog-WPKMRZH3.mjs.map +7 -0
- package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs +59 -0
- package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs.map +7 -0
- package/dist/lib/neutral/ImportSpaceDialog-7GKV4OTF.mjs +64 -0
- package/dist/lib/neutral/ImportSpaceDialog-7GKV4OTF.mjs.map +7 -0
- package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs +49 -0
- package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs.map +7 -0
- package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs +114 -0
- package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs.map +7 -0
- package/dist/lib/neutral/MembersContainer-SZLUEJWT.mjs +225 -0
- package/dist/lib/neutral/MembersContainer-SZLUEJWT.mjs.map +7 -0
- package/dist/lib/neutral/MenuFooter-CSICF4R5.mjs +33 -0
- package/dist/lib/neutral/MenuFooter-CSICF4R5.mjs.map +7 -0
- package/dist/lib/neutral/ObjectCardStack-HWLILOA3.mjs +55 -0
- package/dist/lib/neutral/ObjectCardStack-HWLILOA3.mjs.map +7 -0
- package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs +33 -0
- package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs.map +7 -0
- package/dist/lib/neutral/RecordArticle-MTNXSGB7.mjs +55 -0
- package/dist/lib/neutral/RecordArticle-MTNXSGB7.mjs.map +7 -0
- package/dist/lib/neutral/RelatedArticle-OD6TP4EP.mjs +70 -0
- package/dist/lib/neutral/RelatedArticle-OD6TP4EP.mjs.map +7 -0
- package/dist/lib/neutral/SchemaContainer-4RFDP4JB.mjs +43 -0
- package/dist/lib/neutral/SchemaContainer-4RFDP4JB.mjs.map +7 -0
- package/dist/lib/neutral/SmallPresenceLive-GUF4WLUC.mjs +8 -0
- package/dist/lib/neutral/SpacePlugin.mjs +10 -0
- package/dist/lib/neutral/SpacePlugin.node.mjs +851 -0
- package/dist/lib/neutral/SpacePlugin.node.mjs.map +7 -0
- package/dist/lib/neutral/SpacePlugin.workerd.mjs +34 -0
- package/dist/lib/neutral/SpacePlugin.workerd.mjs.map +7 -0
- package/dist/lib/neutral/SpacePresence-ACEXUS3N.mjs +11 -0
- package/dist/lib/neutral/SpacePresence-ACEXUS3N.mjs.map +7 -0
- package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs +56 -0
- package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs.map +7 -0
- package/dist/lib/neutral/SpaceSettings-DBFGR2XP.mjs +47 -0
- package/dist/lib/neutral/SpaceSettings-DBFGR2XP.mjs.map +7 -0
- package/dist/lib/neutral/SpaceSettingsContainer-5HSVWRW4.mjs +376 -0
- package/dist/lib/neutral/SpaceSettingsContainer-5HSVWRW4.mjs.map +7 -0
- package/dist/lib/neutral/SyncStatus-FFKEPNZF.mjs +146 -0
- package/dist/lib/neutral/SyncStatus-FFKEPNZF.mjs.map +7 -0
- package/dist/lib/neutral/ViewEditor-5SRSLFL7.mjs +103 -0
- package/dist/lib/neutral/ViewEditor-5SRSLFL7.mjs.map +7 -0
- package/dist/lib/neutral/add-object-NQCLO5Z4.mjs +78 -0
- package/dist/lib/neutral/add-object-NQCLO5Z4.mjs.map +7 -0
- package/dist/lib/neutral/add-relation-LGLEPH7U.mjs +26 -0
- package/dist/lib/neutral/add-relation-LGLEPH7U.mjs.map +7 -0
- package/dist/lib/neutral/add-schema-IE55TRLJ.mjs +59 -0
- package/dist/lib/neutral/add-schema-IE55TRLJ.mjs.map +7 -0
- package/dist/lib/neutral/app-graph-builder-ILYXFE3V.mjs +1264 -0
- package/dist/lib/neutral/app-graph-builder-ILYXFE3V.mjs.map +7 -0
- package/dist/lib/neutral/app-graph-serializer-O2NDG5DS.mjs +80 -0
- package/dist/lib/neutral/app-graph-serializer-O2NDG5DS.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +43 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/node.mjs +15 -0
- package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
- package/dist/lib/neutral/chunk-2DHCIE27.mjs +25 -0
- package/dist/lib/neutral/chunk-2DHCIE27.mjs.map +7 -0
- package/dist/lib/neutral/chunk-7QCZBJ2H.mjs +101 -0
- package/dist/lib/neutral/chunk-7QCZBJ2H.mjs.map +7 -0
- package/dist/lib/neutral/chunk-BQCH5DW2.mjs +35 -0
- package/dist/lib/neutral/chunk-BQCH5DW2.mjs.map +7 -0
- package/dist/lib/neutral/chunk-BSCGZ7K5.mjs +573 -0
- package/dist/lib/neutral/chunk-BSCGZ7K5.mjs.map +7 -0
- package/dist/lib/neutral/chunk-EEXRKYOD.mjs +163 -0
- package/dist/lib/neutral/chunk-EEXRKYOD.mjs.map +7 -0
- package/dist/lib/neutral/chunk-FPLBR374.mjs +8 -0
- package/dist/lib/neutral/chunk-FPLBR374.mjs.map +7 -0
- package/dist/lib/neutral/chunk-ISVO52XL.mjs +18 -0
- package/dist/lib/neutral/chunk-ISVO52XL.mjs.map +7 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/neutral/chunk-JHZGRYGS.mjs +8 -0
- package/dist/lib/neutral/chunk-JHZGRYGS.mjs.map +7 -0
- package/dist/lib/neutral/chunk-ZGCX6AQZ.mjs +141 -0
- package/dist/lib/neutral/chunk-ZGCX6AQZ.mjs.map +7 -0
- package/dist/lib/neutral/close-2SDGJFQP.mjs +17 -0
- package/dist/lib/neutral/close-2SDGJFQP.mjs.map +7 -0
- package/dist/lib/neutral/components/index.mjs +402 -0
- package/dist/lib/neutral/components/index.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +49 -0
- package/dist/lib/neutral/containers/index.mjs.map +7 -0
- package/dist/lib/neutral/create-EP75QTQJ.mjs +74 -0
- package/dist/lib/neutral/create-EP75QTQJ.mjs.map +7 -0
- package/dist/lib/neutral/create-object-22WUOWZQ.mjs +101 -0
- package/dist/lib/neutral/create-object-22WUOWZQ.mjs.map +7 -0
- package/dist/lib/neutral/delete-field-7L2KAP4X.mjs +43 -0
- package/dist/lib/neutral/delete-field-7L2KAP4X.mjs.map +7 -0
- package/dist/lib/neutral/duplicate-object-GOE3X7ZW.mjs +17 -0
- package/dist/lib/neutral/duplicate-object-GOE3X7ZW.mjs.map +7 -0
- package/dist/lib/neutral/export-space-753MC67K.mjs +34 -0
- package/dist/lib/neutral/export-space-753MC67K.mjs.map +7 -0
- package/dist/lib/neutral/get-share-link-EQM5YI2A.mjs +41 -0
- package/dist/lib/neutral/get-share-link-EQM5YI2A.mjs.map +7 -0
- package/dist/lib/neutral/hooks/index.mjs +121 -0
- package/dist/lib/neutral/hooks/index.mjs.map +7 -0
- package/dist/lib/neutral/identity-created-3URODNJN.mjs +32 -0
- package/dist/lib/neutral/identity-created-3URODNJN.mjs.map +7 -0
- package/dist/lib/neutral/import-space-6SZ3VXEH.mjs +28 -0
- package/dist/lib/neutral/import-space-6SZ3VXEH.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +50 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/join-GJEQPPTG.mjs +28 -0
- package/dist/lib/neutral/join-GJEQPPTG.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/meta.mjs.map +7 -0
- package/dist/lib/neutral/migrate-6LBURUCS.mjs +50 -0
- package/dist/lib/neutral/migrate-6LBURUCS.mjs.map +7 -0
- package/dist/lib/neutral/navigation-handler-LQMMLRTT.mjs +38 -0
- package/dist/lib/neutral/navigation-handler-LQMMLRTT.mjs.map +7 -0
- package/dist/lib/neutral/navigation-resolver-46OIBGIT.mjs +73 -0
- package/dist/lib/neutral/navigation-resolver-46OIBGIT.mjs.map +7 -0
- package/dist/lib/neutral/open-A3BML6DJ.mjs +17 -0
- package/dist/lib/neutral/open-A3BML6DJ.mjs.map +7 -0
- package/dist/lib/neutral/open-create-object-HDUV7KJY.mjs +42 -0
- package/dist/lib/neutral/open-create-object-HDUV7KJY.mjs.map +7 -0
- package/dist/lib/neutral/open-create-space-J7QBI3PW.mjs +24 -0
- package/dist/lib/neutral/open-create-space-J7QBI3PW.mjs.map +7 -0
- package/dist/lib/neutral/open-import-space-EWLPF2OG.mjs +24 -0
- package/dist/lib/neutral/open-import-space-EWLPF2OG.mjs.map +7 -0
- package/dist/lib/neutral/open-members-SRAT7TGJ.mjs +23 -0
- package/dist/lib/neutral/open-members-SRAT7TGJ.mjs.map +7 -0
- package/dist/lib/neutral/open-settings-WBCARPQH.mjs +23 -0
- package/dist/lib/neutral/open-settings-WBCARPQH.mjs.map +7 -0
- package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs +13 -0
- package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs.map +7 -0
- package/dist/lib/neutral/operations/index.mjs +13 -0
- package/dist/lib/neutral/operations/index.mjs.map +7 -0
- package/dist/lib/neutral/plugin.mjs +18 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/neutral/react-root-2DJPZQT4.mjs +23 -0
- package/dist/lib/neutral/react-root-2DJPZQT4.mjs.map +7 -0
- package/dist/lib/neutral/react-surface-NP53BESH.mjs +374 -0
- package/dist/lib/neutral/react-surface-NP53BESH.mjs.map +7 -0
- package/dist/lib/neutral/remove-objects-ZWDQ7E7Y.mjs +51 -0
- package/dist/lib/neutral/remove-objects-ZWDQ7E7Y.mjs.map +7 -0
- package/dist/lib/neutral/rename-2HZE5W6Z.mjs +25 -0
- package/dist/lib/neutral/rename-2HZE5W6Z.mjs.map +7 -0
- package/dist/lib/neutral/rename-object-255T2BJM.mjs +25 -0
- package/dist/lib/neutral/rename-object-255T2BJM.mjs.map +7 -0
- package/dist/lib/neutral/repair-LI5Y2BB3.mjs +29 -0
- package/dist/lib/neutral/repair-LI5Y2BB3.mjs.map +7 -0
- package/dist/lib/neutral/reset-KLT3MNOP.mjs +159 -0
- package/dist/lib/neutral/reset-KLT3MNOP.mjs.map +7 -0
- package/dist/lib/neutral/restore-field-ANH3M4YL.mjs +41 -0
- package/dist/lib/neutral/restore-field-ANH3M4YL.mjs.map +7 -0
- package/dist/lib/neutral/restore-objects-L7YCHCKK.mjs +39 -0
- package/dist/lib/neutral/restore-objects-L7YCHCKK.mjs.map +7 -0
- package/dist/lib/neutral/settings-DUCCRYX7.mjs +30 -0
- package/dist/lib/neutral/settings-DUCCRYX7.mjs.map +7 -0
- package/dist/lib/neutral/share-UEH7G2QY.mjs +31 -0
- package/dist/lib/neutral/share-UEH7G2QY.mjs.map +7 -0
- package/dist/lib/neutral/snapshot-AJ36ZKPE.mjs +30 -0
- package/dist/lib/neutral/snapshot-AJ36ZKPE.mjs.map +7 -0
- package/dist/lib/neutral/spaces-ready-CNWY3E2U.mjs +251 -0
- package/dist/lib/neutral/spaces-ready-CNWY3E2U.mjs.map +7 -0
- package/dist/lib/neutral/state-DPBOZRAW.mjs +55 -0
- package/dist/lib/neutral/state-DPBOZRAW.mjs.map +7 -0
- package/dist/lib/neutral/testing.mjs +8 -0
- package/dist/lib/neutral/testing.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +315 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +34 -0
- package/dist/lib/neutral/types/index.mjs.map +7 -0
- package/dist/lib/neutral/undo-mappings-FA3SOSZI.mjs +65 -0
- package/dist/lib/neutral/undo-mappings-FA3SOSZI.mjs.map +7 -0
- package/dist/lib/neutral/wait-for-object-WFBNX53E.mjs +23 -0
- package/dist/lib/neutral/wait-for-object-WFBNX53E.mjs.map +7 -0
- package/dist/types/src/SpacePlugin.d.ts +4 -15
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/SpacePlugin.node.d.ts +5 -0
- package/dist/types/src/SpacePlugin.node.d.ts.map +1 -0
- package/dist/types/src/SpacePlugin.test.d.ts +2 -0
- package/dist/types/src/SpacePlugin.test.d.ts.map +1 -0
- package/dist/types/src/SpacePlugin.workerd.d.ts +4 -0
- package/dist/types/src/SpacePlugin.workerd.d.ts.map +1 -0
- 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/extensions/collections.d.ts +33 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts +43 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +25 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +56 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts +2 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +42 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts +38 -0
- package/dist/types/src/capabilities/app-graph-builder/extensions/types.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/app-graph-serializer.d.ts +3 -2
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
- package/dist/types/src/capabilities/create-object.d.ts +37 -0
- package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
- package/dist/types/src/capabilities/identity-created.d.ts +3 -2
- package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +62 -17
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/navigation-handler/index.d.ts +4 -0
- package/dist/types/src/capabilities/navigation-handler/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts +13 -0
- package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/navigation-resolver.d.ts +6 -0
- package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/node.d.ts +40 -0
- package/dist/types/src/capabilities/node.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root.d.ts +4 -2
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts +3 -2
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/repair.d.ts +6 -0
- package/dist/types/src/capabilities/repair.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings.d.ts +5 -2
- package/dist/types/src/capabilities/settings.d.ts.map +1 -1
- package/dist/types/src/capabilities/spaces-ready.d.ts +3 -2
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
- package/dist/types/src/capabilities/state.d.ts +15 -3
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/capabilities/undo-mappings.d.ts +10 -0
- package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
- package/dist/types/src/commands/database/add.d.ts +10 -0
- package/dist/types/src/commands/database/add.d.ts.map +1 -0
- package/dist/types/src/commands/database/index.d.ts +3 -0
- package/dist/types/src/commands/database/index.d.ts.map +1 -0
- package/dist/types/src/commands/database/query/index.d.ts +2 -0
- package/dist/types/src/commands/database/query/index.d.ts.map +1 -0
- package/dist/types/src/commands/database/query/query.d.ts +13 -0
- package/dist/types/src/commands/database/query/query.d.ts.map +1 -0
- package/dist/types/src/commands/database/query/query.test.d.ts +2 -0
- package/dist/types/src/commands/database/query/query.test.d.ts.map +1 -0
- package/dist/types/src/commands/database/remove.d.ts +9 -0
- package/dist/types/src/commands/database/remove.d.ts.map +1 -0
- package/dist/types/src/commands/database/stats.d.ts +6 -0
- package/dist/types/src/commands/database/stats.d.ts.map +1 -0
- package/dist/types/src/commands/database/util.d.ts +14 -0
- package/dist/types/src/commands/database/util.d.ts.map +1 -0
- package/dist/types/src/commands/index.d.ts +4 -0
- package/dist/types/src/commands/index.d.ts.map +1 -0
- package/dist/types/src/commands/queue/index.d.ts +7 -0
- package/dist/types/src/commands/queue/index.d.ts.map +1 -0
- package/dist/types/src/commands/queue/query.d.ts +7 -0
- package/dist/types/src/commands/queue/query.d.ts.map +1 -0
- package/dist/types/src/commands/queue/util.d.ts +6 -0
- package/dist/types/src/commands/queue/util.d.ts.map +1 -0
- package/dist/types/src/commands/space/close/close.d.ts +12 -0
- package/dist/types/src/commands/space/close/close.d.ts.map +1 -0
- package/dist/types/src/commands/space/close/index.d.ts +2 -0
- package/dist/types/src/commands/space/close/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/create/create.d.ts +12 -0
- package/dist/types/src/commands/space/create/create.d.ts.map +1 -0
- package/dist/types/src/commands/space/create/create.test.d.ts +2 -0
- package/dist/types/src/commands/space/create/create.test.d.ts.map +1 -0
- package/dist/types/src/commands/space/create/index.d.ts +2 -0
- package/dist/types/src/commands/space/create/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/index.d.ts +34 -0
- package/dist/types/src/commands/space/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/info/index.d.ts +2 -0
- package/dist/types/src/commands/space/info/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/info/info.d.ts +15 -0
- package/dist/types/src/commands/space/info/info.d.ts.map +1 -0
- package/dist/types/src/commands/space/info/info.test.d.ts +2 -0
- package/dist/types/src/commands/space/info/info.test.d.ts.map +1 -0
- package/dist/types/src/commands/space/join/index.d.ts +2 -0
- package/dist/types/src/commands/space/join/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/join/join.d.ts +14 -0
- package/dist/types/src/commands/space/join/join.d.ts.map +1 -0
- package/dist/types/src/commands/space/join/util.d.ts +17 -0
- package/dist/types/src/commands/space/join/util.d.ts.map +1 -0
- package/dist/types/src/commands/space/list/index.d.ts +2 -0
- package/dist/types/src/commands/space/list/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/list/list.d.ts +12 -0
- package/dist/types/src/commands/space/list/list.d.ts.map +1 -0
- package/dist/types/src/commands/space/list/list.test.d.ts +2 -0
- package/dist/types/src/commands/space/list/list.test.d.ts.map +1 -0
- package/dist/types/src/commands/space/members/index.d.ts +2 -0
- package/dist/types/src/commands/space/members/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/members/members.d.ts +13 -0
- package/dist/types/src/commands/space/members/members.d.ts.map +1 -0
- package/dist/types/src/commands/space/members/members.test.d.ts +2 -0
- package/dist/types/src/commands/space/members/members.test.d.ts.map +1 -0
- package/dist/types/src/commands/space/members/util.d.ts +9 -0
- package/dist/types/src/commands/space/members/util.d.ts.map +1 -0
- package/dist/types/src/commands/space/open/index.d.ts +2 -0
- package/dist/types/src/commands/space/open/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/open/open.d.ts +12 -0
- package/dist/types/src/commands/space/open/open.d.ts.map +1 -0
- package/dist/types/src/commands/space/schema/index.d.ts +8 -0
- package/dist/types/src/commands/space/schema/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/schema/list/index.d.ts +2 -0
- package/dist/types/src/commands/space/schema/list/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/schema/list/list.d.ts +15 -0
- package/dist/types/src/commands/space/schema/list/list.d.ts.map +1 -0
- package/dist/types/src/commands/space/schema/list/list.test.d.ts +2 -0
- package/dist/types/src/commands/space/schema/list/list.test.d.ts.map +1 -0
- package/dist/types/src/commands/space/schema/list/util.d.ts +15 -0
- package/dist/types/src/commands/space/schema/list/util.d.ts.map +1 -0
- package/dist/types/src/commands/space/share/index.d.ts +2 -0
- package/dist/types/src/commands/space/share/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/share/share.d.ts +19 -0
- package/dist/types/src/commands/space/share/share.d.ts.map +1 -0
- package/dist/types/src/commands/space/sync/index.d.ts +2 -0
- package/dist/types/src/commands/space/sync/index.d.ts.map +1 -0
- package/dist/types/src/commands/space/sync/sync.d.ts +6 -0
- package/dist/types/src/commands/space/sync/sync.d.ts.map +1 -0
- package/dist/types/src/commands/space/sync/sync.test.d.ts +2 -0
- package/dist/types/src/commands/space/sync/sync.test.d.ts.map +1 -0
- package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -0
- package/dist/types/src/components/AwaitingObject/index.d.ts +2 -0
- package/dist/types/src/components/AwaitingObject/index.d.ts.map +1 -0
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +24 -12
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/index.d.ts +1 -2
- package/dist/types/src/components/CreateDialog/index.d.ts.map +1 -1
- package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts +8 -0
- package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts.map +1 -0
- package/dist/types/src/components/ForeignKeys/index.d.ts +2 -0
- package/dist/types/src/components/ForeignKeys/index.d.ts.map +1 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts +10 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts.map +1 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettings.stories.d.ts +2059 -0
- package/dist/types/src/components/{MembersContainer.stories.d.ts.map → SpaceSettings/SpaceSettings.stories.d.ts.map} +1 -1
- package/dist/types/src/components/SpaceSettings/index.d.ts +1 -1
- package/dist/types/src/components/SpaceSettings/index.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/index.d.ts +2 -2
- package/dist/types/src/components/SyncStatus/index.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/save-tracker.d.ts +1 -1
- package/dist/types/src/components/SyncStatus/save-tracker.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/status.d.ts +2 -2
- package/dist/types/src/components/SyncStatus/status.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +3 -26
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/constants.d.ts +7 -0
- package/dist/types/src/constants.d.ts.map +1 -0
- package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts +8 -0
- package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -0
- package/dist/types/src/containers/CollectionArticle/index.d.ts +2 -0
- package/dist/types/src/containers/CollectionArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts +6 -0
- package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -0
- package/dist/types/src/containers/CollectionSection/index.d.ts +2 -0
- package/dist/types/src/containers/CollectionSection/index.d.ts.map +1 -0
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts +12 -0
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -0
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +2056 -0
- package/dist/types/src/{components/CreateDialog → containers/CreateObjectDialog}/CreateObjectDialog.stories.d.ts.map +1 -1
- package/dist/types/src/containers/CreateObjectDialog/index.d.ts +3 -0
- package/dist/types/src/containers/CreateObjectDialog/index.d.ts.map +1 -0
- package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -0
- package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +2060 -0
- package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -0
- package/dist/types/src/containers/CreateSpaceDialog/index.d.ts +2 -0
- package/dist/types/src/containers/CreateSpaceDialog/index.d.ts.map +1 -0
- package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts +7 -0
- package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts.map +1 -0
- package/dist/types/src/containers/EntityRenamePopover/index.d.ts +2 -0
- package/dist/types/src/containers/EntityRenamePopover/index.d.ts.map +1 -0
- package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts +3 -0
- package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts.map +1 -0
- package/dist/types/src/containers/ImportSpaceDialog/index.d.ts +2 -0
- package/dist/types/src/containers/ImportSpaceDialog/index.d.ts.map +1 -0
- package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -0
- package/dist/types/src/containers/InlineSyncStatus/index.d.ts +2 -0
- package/dist/types/src/containers/InlineSyncStatus/index.d.ts.map +1 -0
- package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -0
- package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +2059 -0
- package/dist/types/src/{components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map → containers/JoinDialog/JoinDialog.stories.d.ts.map} +1 -1
- package/dist/types/src/containers/JoinDialog/index.d.ts +3 -0
- package/dist/types/src/containers/JoinDialog/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/MembersContainer}/MembersContainer.d.ts +3 -4
- package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -0
- package/dist/types/src/containers/MembersContainer/index.d.ts +2 -0
- package/dist/types/src/containers/MembersContainer/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/MenuFooter}/MenuFooter.d.ts +1 -1
- package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +1 -0
- package/dist/types/src/containers/MenuFooter/index.d.ts +2 -0
- package/dist/types/src/containers/MenuFooter/index.d.ts.map +1 -0
- package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts +11 -0
- package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -0
- package/dist/types/src/containers/ObjectCardStack/index.d.ts +2 -0
- package/dist/types/src/containers/ObjectCardStack/index.d.ts.map +1 -0
- package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts +10 -0
- package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts.map +1 -0
- package/dist/types/src/containers/ObjectProperties/index.d.ts +2 -0
- package/dist/types/src/containers/ObjectProperties/index.d.ts.map +1 -0
- package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts +4 -0
- package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -0
- package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts +14 -0
- package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts.map +1 -0
- package/dist/types/src/containers/RecordArticle/index.d.ts +2 -0
- package/dist/types/src/containers/RecordArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts +6 -0
- package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -0
- package/dist/types/src/containers/RelatedArticle/index.d.ts +2 -0
- package/dist/types/src/containers/RelatedArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts +10 -0
- package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -0
- package/dist/types/src/containers/SchemaContainer/index.d.ts +2 -0
- package/dist/types/src/containers/SchemaContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/SmallPresenceLive/index.d.ts +2 -0
- package/dist/types/src/containers/SmallPresenceLive/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/SpacePresence}/SpacePresence.d.ts +7 -6
- package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -0
- package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +2057 -0
- package/dist/types/src/{components → containers/SpacePresence}/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/containers/SpacePresence/index.d.ts +3 -0
- package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts +7 -0
- package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceRenamePopover/index.d.ts +2 -0
- package/dist/types/src/containers/SpaceRenamePopover/index.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts +7 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +2064 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts +2 -0
- package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts.map +1 -0
- package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +2062 -0
- package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
- package/dist/types/src/containers/SyncStatus/index.d.ts +2 -0
- package/dist/types/src/containers/SyncStatus/index.d.ts.map +1 -0
- package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts +7 -0
- package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -0
- package/dist/types/src/containers/ViewEditor/index.d.ts +2 -0
- package/dist/types/src/containers/ViewEditor/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +24 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +1 -2
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +2 -8
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
- package/dist/types/src/hooks/usePath.d.ts +2 -2
- package/dist/types/src/hooks/usePath.d.ts.map +1 -1
- package/dist/types/src/hooks/useRelatedObjects.d.ts +10 -0
- package/dist/types/src/hooks/useRelatedObjects.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +2 -5
- 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-object.d.ts +5 -0
- package/dist/types/src/operations/add-object.d.ts.map +1 -0
- package/dist/types/src/operations/add-relation.d.ts +5 -0
- package/dist/types/src/operations/add-relation.d.ts.map +1 -0
- package/dist/types/src/operations/add-schema.d.ts +5 -0
- package/dist/types/src/operations/add-schema.d.ts.map +1 -0
- package/dist/types/src/operations/close.d.ts +5 -0
- package/dist/types/src/operations/close.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 +238 -0
- package/dist/types/src/operations/definitions.d.ts.map +1 -0
- package/dist/types/src/operations/delete-field.d.ts +5 -0
- package/dist/types/src/operations/delete-field.d.ts.map +1 -0
- package/dist/types/src/operations/duplicate-object.d.ts +5 -0
- package/dist/types/src/operations/duplicate-object.d.ts.map +1 -0
- package/dist/types/src/operations/export-space.d.ts +5 -0
- package/dist/types/src/operations/export-space.d.ts.map +1 -0
- package/dist/types/src/operations/get-share-link.d.ts +5 -0
- package/dist/types/src/operations/get-share-link.d.ts.map +1 -0
- package/dist/types/src/operations/helpers.d.ts +7 -0
- package/dist/types/src/operations/helpers.d.ts.map +1 -0
- package/dist/types/src/operations/import-space.d.ts +5 -0
- package/dist/types/src/operations/import-space.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/join.d.ts +5 -0
- package/dist/types/src/operations/join.d.ts.map +1 -0
- package/dist/types/src/operations/migrate.d.ts +5 -0
- package/dist/types/src/operations/migrate.d.ts.map +1 -0
- package/dist/types/src/operations/open-create-object.d.ts +5 -0
- package/dist/types/src/operations/open-create-object.d.ts.map +1 -0
- package/dist/types/src/operations/open-create-space.d.ts +5 -0
- package/dist/types/src/operations/open-create-space.d.ts.map +1 -0
- package/dist/types/src/operations/open-import-space.d.ts +5 -0
- package/dist/types/src/operations/open-import-space.d.ts.map +1 -0
- package/dist/types/src/operations/open-members.d.ts +5 -0
- package/dist/types/src/operations/open-members.d.ts.map +1 -0
- package/dist/types/src/operations/open-settings.d.ts +5 -0
- package/dist/types/src/operations/open-settings.d.ts.map +1 -0
- package/dist/types/src/operations/open.d.ts +5 -0
- package/dist/types/src/operations/open.d.ts.map +1 -0
- package/dist/types/src/operations/remove-objects.d.ts +5 -0
- package/dist/types/src/operations/remove-objects.d.ts.map +1 -0
- package/dist/types/src/operations/rename-object.d.ts +5 -0
- package/dist/types/src/operations/rename-object.d.ts.map +1 -0
- package/dist/types/src/operations/rename.d.ts +5 -0
- package/dist/types/src/operations/rename.d.ts.map +1 -0
- package/dist/types/src/operations/reset.d.ts +5 -0
- package/dist/types/src/operations/reset.d.ts.map +1 -0
- package/dist/types/src/operations/reset.test.d.ts +2 -0
- package/dist/types/src/operations/reset.test.d.ts.map +1 -0
- package/dist/types/src/operations/restore-field.d.ts +5 -0
- package/dist/types/src/operations/restore-field.d.ts.map +1 -0
- package/dist/types/src/operations/restore-objects.d.ts +5 -0
- package/dist/types/src/operations/restore-objects.d.ts.map +1 -0
- package/dist/types/src/operations/share.d.ts +5 -0
- package/dist/types/src/operations/share.d.ts.map +1 -0
- package/dist/types/src/operations/snapshot.d.ts +5 -0
- package/dist/types/src/operations/snapshot.d.ts.map +1 -0
- package/dist/types/src/operations/wait-for-object.d.ts +5 -0
- package/dist/types/src/operations/wait-for-object.d.ts.map +1 -0
- package/dist/types/src/plugin.d.ts +4 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/testing.d.ts +2 -0
- package/dist/types/src/testing.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +2030 -1470
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Settings.d.ts +10 -0
- package/dist/types/src/types/Settings.d.ts.map +1 -0
- package/dist/types/src/types/capabilities.d.ts +105 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/events.d.ts +9 -0
- package/dist/types/src/types/events.d.ts.map +1 -0
- package/dist/types/src/types/form.d.ts +2 -0
- package/dist/types/src/types/form.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +3 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +51 -421
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +5 -138
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +154 -79
- package/src/SpacePlugin.node.ts +79 -0
- package/src/SpacePlugin.test.ts +33 -0
- package/src/SpacePlugin.ts +142 -245
- package/src/SpacePlugin.workerd.ts +46 -0
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +32 -0
- package/src/capabilities/app-graph-builder/extensions/collections.ts +342 -0
- package/src/capabilities/app-graph-builder/extensions/companions.ts +90 -0
- package/src/capabilities/app-graph-builder/extensions/index.ts +9 -0
- package/src/capabilities/app-graph-builder/extensions/settings.ts +88 -0
- package/src/capabilities/app-graph-builder/extensions/shared.test.ts +101 -0
- package/src/capabilities/app-graph-builder/extensions/shared.ts +192 -0
- package/src/capabilities/app-graph-builder/extensions/spaces.ts +373 -0
- package/src/capabilities/app-graph-builder/extensions/types.ts +421 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/app-graph-serializer.ts +66 -58
- package/src/capabilities/create-object.ts +107 -0
- package/src/capabilities/identity-created.ts +24 -16
- package/src/capabilities/index.ts +20 -12
- package/src/capabilities/navigation-handler/index.ts +9 -0
- package/src/capabilities/navigation-handler/navigation-handler.ts +50 -0
- package/src/capabilities/navigation-resolver.ts +94 -0
- package/src/capabilities/node.ts +14 -0
- package/src/capabilities/operation-handler.ts +14 -0
- package/src/capabilities/react-root.tsx +17 -13
- package/src/capabilities/react-surface.tsx +362 -292
- package/src/capabilities/repair.ts +42 -0
- package/src/capabilities/settings.ts +26 -14
- package/src/capabilities/spaces-ready.ts +271 -176
- package/src/capabilities/state.ts +57 -37
- package/src/capabilities/undo-mappings.ts +58 -0
- package/src/commands/database/add.ts +112 -0
- package/src/commands/database/index.ts +16 -0
- package/src/commands/database/query/index.ts +5 -0
- package/src/commands/database/query/query.test.ts +53 -0
- package/src/commands/database/query/query.ts +44 -0
- package/src/commands/database/remove.ts +51 -0
- package/src/commands/database/stats.ts +43 -0
- package/src/commands/database/util.ts +32 -0
- package/src/commands/index.ts +7 -0
- package/src/commands/queue/index.ts +12 -0
- package/src/commands/queue/query.ts +51 -0
- package/src/commands/queue/util.ts +19 -0
- package/src/commands/space/close/close.ts +40 -0
- package/src/commands/space/close/index.ts +5 -0
- package/src/commands/space/create/create.test.ts +67 -0
- package/src/commands/space/create/create.ts +61 -0
- package/src/commands/space/create/index.ts +5 -0
- package/src/commands/space/index.ts +21 -0
- package/src/commands/space/info/index.ts +5 -0
- package/src/commands/space/info/info.test.ts +32 -0
- package/src/commands/space/info/info.ts +50 -0
- package/src/commands/space/join/index.ts +5 -0
- package/src/commands/space/join/join.ts +122 -0
- package/src/commands/space/join/util.ts +82 -0
- package/src/commands/space/list/index.ts +5 -0
- package/src/commands/space/list/list.test.ts +37 -0
- package/src/commands/space/list/list.ts +42 -0
- package/src/commands/space/members/index.ts +5 -0
- package/src/commands/space/members/members.test.ts +33 -0
- package/src/commands/space/members/members.ts +40 -0
- package/src/commands/space/members/util.ts +29 -0
- package/src/commands/space/open/index.ts +5 -0
- package/src/commands/space/open/open.ts +39 -0
- package/src/commands/space/schema/index.ts +12 -0
- package/src/commands/space/schema/list/index.ts +5 -0
- package/src/commands/space/schema/list/list.test.ts +29 -0
- package/src/commands/space/schema/list/list.ts +65 -0
- package/src/commands/space/schema/list/util.ts +39 -0
- package/src/commands/space/share/index.ts +5 -0
- package/src/commands/space/share/share.ts +112 -0
- package/src/commands/space/sync/index.ts +5 -0
- package/src/commands/space/sync/sync.test.ts +12 -0
- package/src/commands/space/sync/sync.ts +33 -0
- package/src/components/{AwaitingObject.tsx → AwaitingObject/AwaitingObject.tsx} +34 -32
- package/src/components/AwaitingObject/index.ts +5 -0
- package/src/components/CreateDialog/CreateObjectPanel.tsx +190 -122
- package/src/components/CreateDialog/index.ts +1 -2
- package/src/components/{ObjectSettings → ForeignKeys}/ForeignKeys.tsx +13 -7
- package/src/components/ForeignKeys/index.ts +5 -0
- package/src/components/SpaceSettings/SpaceSettings.stories.tsx +34 -0
- package/src/components/SpaceSettings/SpaceSettings.tsx +69 -0
- package/src/components/SpaceSettings/index.ts +2 -2
- package/src/components/SyncStatus/index.ts +2 -2
- package/src/components/SyncStatus/save-tracker.ts +4 -3
- package/src/components/SyncStatus/status.ts +7 -7
- package/src/components/index.ts +3 -17
- package/src/constants.ts +12 -0
- package/src/containers/CollectionArticle/CollectionArticle.tsx +121 -0
- package/src/containers/CollectionArticle/index.ts +5 -0
- package/src/containers/CollectionSection/CollectionSection.tsx +24 -0
- package/src/containers/CollectionSection/index.ts +5 -0
- package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +81 -0
- package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +183 -0
- package/src/containers/CreateObjectDialog/index.ts +6 -0
- package/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.tsx +46 -0
- package/src/containers/CreateSpaceDialog/CreateSpaceDialog.tsx +75 -0
- package/src/containers/CreateSpaceDialog/index.ts +5 -0
- package/src/containers/EntityRenamePopover/EntityRenamePopover.tsx +52 -0
- package/src/containers/EntityRenamePopover/index.ts +5 -0
- package/src/containers/ImportSpaceDialog/ImportSpaceDialog.tsx +62 -0
- package/src/containers/ImportSpaceDialog/index.ts +5 -0
- package/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.tsx +10 -21
- package/src/containers/InlineSyncStatus/index.ts +5 -0
- package/src/containers/JoinDialog/JoinDialog.stories.tsx +43 -0
- package/src/{components → containers/JoinDialog}/JoinDialog.tsx +38 -45
- package/src/containers/JoinDialog/index.ts +6 -0
- package/src/{components → containers/MembersContainer}/MembersContainer.tsx +79 -102
- package/src/containers/MembersContainer/index.ts +5 -0
- package/src/{components → containers/MenuFooter}/MenuFooter.tsx +10 -10
- package/src/containers/MenuFooter/index.ts +5 -0
- package/src/containers/ObjectCardStack/ObjectCardStack.tsx +81 -0
- package/src/containers/ObjectCardStack/index.ts +5 -0
- package/src/containers/ObjectProperties/ObjectProperties.tsx +32 -0
- package/src/containers/ObjectProperties/index.ts +5 -0
- package/src/containers/RecordArticle/RecordArticle.stories.tsx +82 -0
- package/src/containers/RecordArticle/RecordArticle.tsx +65 -0
- package/src/containers/RecordArticle/index.ts +5 -0
- package/src/containers/RelatedArticle/RelatedArticle.tsx +83 -0
- package/src/containers/RelatedArticle/index.ts +5 -0
- package/src/containers/SchemaContainer/SchemaContainer.tsx +55 -0
- package/src/containers/SchemaContainer/index.ts +5 -0
- package/src/containers/SmallPresenceLive/index.ts +5 -0
- package/src/{components → containers/SpacePresence}/SpacePresence.stories.tsx +3 -3
- package/src/{components → containers/SpacePresence}/SpacePresence.tsx +29 -37
- package/src/containers/SpacePresence/index.ts +6 -0
- package/src/{components/PopoverRenameSpace.tsx → containers/SpaceRenamePopover/SpaceRenamePopover.tsx} +19 -19
- package/src/containers/SpaceRenamePopover/index.ts +5 -0
- package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.tsx +48 -0
- package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +350 -0
- package/src/containers/SpaceSettingsContainer/index.ts +5 -0
- package/src/{components → containers}/SyncStatus/SyncStatus.stories.tsx +3 -3
- package/src/containers/SyncStatus/SyncStatus.tsx +149 -0
- package/src/containers/SyncStatus/index.ts +5 -0
- package/src/containers/ViewEditor/ViewEditor.tsx +100 -0
- package/src/containers/ViewEditor/index.ts +5 -0
- package/src/containers/index.ts +29 -0
- package/src/hooks/index.ts +1 -2
- package/src/hooks/useInputSurfaceLookup.tsx +16 -13
- package/src/hooks/usePath.ts +4 -4
- package/src/hooks/useRelatedObjects.ts +79 -0
- package/src/index.ts +3 -6
- package/src/meta.ts +25 -3
- package/src/operations/add-object.ts +81 -0
- package/src/operations/add-relation.ts +25 -0
- package/src/operations/add-schema.ts +51 -0
- package/src/operations/close.ts +16 -0
- package/src/operations/create.ts +59 -0
- package/src/operations/definitions.ts +527 -0
- package/src/operations/delete-field.ts +42 -0
- package/src/operations/duplicate-object.ts +17 -0
- package/src/operations/export-space.ts +30 -0
- package/src/operations/get-share-link.ts +43 -0
- package/src/operations/helpers.ts +10 -0
- package/src/operations/import-space.ts +23 -0
- package/src/operations/index.ts +35 -0
- package/src/operations/join.ts +26 -0
- package/src/operations/migrate.ts +45 -0
- package/src/operations/open-create-object.ts +40 -0
- package/src/operations/open-create-space.ts +21 -0
- package/src/operations/open-import-space.ts +21 -0
- package/src/operations/open-members.ts +20 -0
- package/src/operations/open-settings.ts +20 -0
- package/src/operations/open.ts +16 -0
- package/src/operations/remove-objects.ts +66 -0
- package/src/operations/rename-object.ts +22 -0
- package/src/operations/rename.ts +22 -0
- package/src/operations/reset.test.ts +133 -0
- package/src/operations/reset.ts +187 -0
- package/src/operations/restore-field.ts +36 -0
- package/src/operations/restore-objects.ts +39 -0
- package/src/operations/share.ts +27 -0
- package/src/operations/snapshot.ts +24 -0
- package/src/operations/wait-for-object.ts +21 -0
- package/src/plugin.ts +11 -0
- package/src/testing.ts +7 -0
- package/src/translations.ts +308 -216
- package/src/types/Settings.ts +18 -0
- package/src/types/capabilities.ts +99 -0
- package/src/types/events.ts +16 -0
- package/src/types/form.ts +10 -0
- package/src/types/index.ts +3 -0
- package/src/types/types.ts +66 -309
- package/src/util.ts +36 -0
- package/dist/lib/browser/CollectionMain-AX7KKXWP.mjs +0 -31
- package/dist/lib/browser/CollectionMain-AX7KKXWP.mjs.map +0 -7
- package/dist/lib/browser/ObjectDetailsPanel-MQBHG666.mjs +0 -145
- package/dist/lib/browser/ObjectDetailsPanel-MQBHG666.mjs.map +0 -7
- package/dist/lib/browser/ObjectSettings-KNUZFCGS.mjs +0 -151
- package/dist/lib/browser/ObjectSettings-KNUZFCGS.mjs.map +0 -7
- package/dist/lib/browser/RecordMain-MV535I2C.mjs +0 -119
- package/dist/lib/browser/RecordMain-MV535I2C.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-6SNKPPKD.mjs +0 -520
- package/dist/lib/browser/app-graph-builder-6SNKPPKD.mjs.map +0 -7
- package/dist/lib/browser/app-graph-serializer-YGUHIKUW.mjs +0 -80
- package/dist/lib/browser/app-graph-serializer-YGUHIKUW.mjs.map +0 -7
- package/dist/lib/browser/chunk-2IAM4LHT.mjs +0 -235
- package/dist/lib/browser/chunk-2IAM4LHT.mjs.map +0 -7
- package/dist/lib/browser/chunk-AB7EFWFA.mjs +0 -710
- package/dist/lib/browser/chunk-AB7EFWFA.mjs.map +0 -7
- package/dist/lib/browser/chunk-EIXZABXD.mjs +0 -19
- package/dist/lib/browser/chunk-EIXZABXD.mjs.map +0 -7
- package/dist/lib/browser/chunk-IRKDREHY.mjs +0 -11
- package/dist/lib/browser/chunk-IRKDREHY.mjs.map +0 -7
- package/dist/lib/browser/chunk-KXSDZJ5T.mjs +0 -1949
- package/dist/lib/browser/chunk-KXSDZJ5T.mjs.map +0 -7
- package/dist/lib/browser/chunk-RLI2IAHK.mjs +0 -20
- package/dist/lib/browser/chunk-RLI2IAHK.mjs.map +0 -7
- package/dist/lib/browser/chunk-TIVKWB5L.mjs +0 -166
- package/dist/lib/browser/chunk-TIVKWB5L.mjs.map +0 -7
- package/dist/lib/browser/chunk-WS2PJDES.mjs +0 -348
- package/dist/lib/browser/chunk-WS2PJDES.mjs.map +0 -7
- package/dist/lib/browser/identity-created-PW2BA46S.mjs +0 -23
- package/dist/lib/browser/identity-created-PW2BA46S.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -352
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-XQSUBM5U.mjs +0 -767
- package/dist/lib/browser/intent-resolver-XQSUBM5U.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/react-root-OIXDY6US.mjs +0 -29
- package/dist/lib/browser/react-root-OIXDY6US.mjs.map +0 -7
- package/dist/lib/browser/react-surface-I4BQVF7V.mjs +0 -354
- package/dist/lib/browser/react-surface-I4BQVF7V.mjs.map +0 -7
- package/dist/lib/browser/schema-defs-7R7RKCAE.mjs +0 -26
- package/dist/lib/browser/schema-defs-7R7RKCAE.mjs.map +0 -7
- package/dist/lib/browser/settings-OBFJ67ZG.mjs +0 -24
- package/dist/lib/browser/settings-OBFJ67ZG.mjs.map +0 -7
- package/dist/lib/browser/spaces-ready-6YB55EJK.mjs +0 -201
- package/dist/lib/browser/spaces-ready-6YB55EJK.mjs.map +0 -7
- package/dist/lib/browser/state-LSPRFIRO.mjs +0 -47
- package/dist/lib/browser/state-LSPRFIRO.mjs.map +0 -7
- package/dist/lib/browser/types/index.mjs +0 -26
- package/dist/lib/node-esm/CollectionMain-EU57SRYK.mjs +0 -32
- package/dist/lib/node-esm/CollectionMain-EU57SRYK.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectDetailsPanel-NABA2S56.mjs +0 -146
- package/dist/lib/node-esm/ObjectDetailsPanel-NABA2S56.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectSettings-GXGTITF5.mjs +0 -152
- package/dist/lib/node-esm/ObjectSettings-GXGTITF5.mjs.map +0 -7
- package/dist/lib/node-esm/RecordMain-ME2BU65P.mjs +0 -120
- package/dist/lib/node-esm/RecordMain-ME2BU65P.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-PYG5N3FB.mjs +0 -521
- package/dist/lib/node-esm/app-graph-builder-PYG5N3FB.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-serializer-FVQ2WB3U.mjs +0 -81
- package/dist/lib/node-esm/app-graph-serializer-FVQ2WB3U.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-4F25JKVT.mjs +0 -349
- package/dist/lib/node-esm/chunk-4F25JKVT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-DNRBVD2G.mjs +0 -236
- package/dist/lib/node-esm/chunk-DNRBVD2G.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GHL2523Z.mjs +0 -167
- package/dist/lib/node-esm/chunk-GHL2523Z.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-H5UPFRRH.mjs +0 -21
- package/dist/lib/node-esm/chunk-H5UPFRRH.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MWNATOXL.mjs +0 -13
- package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-QHAVT7PC.mjs +0 -711
- package/dist/lib/node-esm/chunk-QHAVT7PC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-SVFKU7EW.mjs +0 -20
- package/dist/lib/node-esm/chunk-SVFKU7EW.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-X55EOSEF.mjs +0 -1950
- package/dist/lib/node-esm/chunk-X55EOSEF.mjs.map +0 -7
- package/dist/lib/node-esm/identity-created-MWTLGQRU.mjs +0 -25
- package/dist/lib/node-esm/identity-created-MWTLGQRU.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -353
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-27YPEIWX.mjs +0 -768
- package/dist/lib/node-esm/intent-resolver-27YPEIWX.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/react-root-K7YPW753.mjs +0 -30
- package/dist/lib/node-esm/react-root-K7YPW753.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-F5LL3JUY.mjs +0 -355
- package/dist/lib/node-esm/react-surface-F5LL3JUY.mjs.map +0 -7
- package/dist/lib/node-esm/schema-defs-RYG5DSUE.mjs +0 -27
- package/dist/lib/node-esm/schema-defs-RYG5DSUE.mjs.map +0 -7
- package/dist/lib/node-esm/settings-QGWWNMMZ.mjs +0 -25
- package/dist/lib/node-esm/settings-QGWWNMMZ.mjs.map +0 -7
- package/dist/lib/node-esm/spaces-ready-EPHL7RGX.mjs +0 -202
- package/dist/lib/node-esm/spaces-ready-EPHL7RGX.mjs.map +0 -7
- package/dist/lib/node-esm/state-TCGOPLRO.mjs +0 -48
- package/dist/lib/node-esm/state-TCGOPLRO.mjs.map +0 -7
- package/dist/lib/node-esm/types/index.mjs +0 -27
- 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/capabilities.d.ts +0 -29
- package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +0 -9
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/schema-defs.d.ts +0 -4
- package/dist/types/src/capabilities/schema-defs.d.ts.map +0 -1
- package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
- package/dist/types/src/components/CollectionMain.d.ts +0 -7
- package/dist/types/src/components/CollectionMain.d.ts.map +0 -1
- package/dist/types/src/components/CollectionSection.d.ts +0 -6
- package/dist/types/src/components/CollectionSection.d.ts.map +0 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +0 -10
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +0 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +0 -1670
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +0 -1
- package/dist/types/src/components/JoinDialog.d.ts.map +0 -1
- package/dist/types/src/components/MembersContainer.d.ts.map +0 -1
- package/dist/types/src/components/MembersContainer.stories.d.ts +0 -1667
- package/dist/types/src/components/MenuFooter.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +0 -9
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +0 -10
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +0 -3
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +0 -7
- package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +0 -8
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +0 -1500
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +0 -8
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +0 -8
- package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +0 -1
- package/dist/types/src/components/ObjectSettings/index.d.ts +0 -3
- package/dist/types/src/components/ObjectSettings/index.d.ts.map +0 -1
- package/dist/types/src/components/PersistenceStatus.d.ts +0 -6
- package/dist/types/src/components/PersistenceStatus.d.ts.map +0 -1
- package/dist/types/src/components/PopoverRenameObject.d.ts +0 -7
- package/dist/types/src/components/PopoverRenameObject.d.ts.map +0 -1
- package/dist/types/src/components/PopoverRenameSpace.d.ts +0 -7
- package/dist/types/src/components/PopoverRenameSpace.d.ts.map +0 -1
- package/dist/types/src/components/RecordMain.d.ts +0 -7
- package/dist/types/src/components/RecordMain.d.ts.map +0 -1
- package/dist/types/src/components/SchemaContainer.d.ts +0 -13
- package/dist/types/src/components/SchemaContainer.d.ts.map +0 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts +0 -6
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +0 -1
- package/dist/types/src/components/SpacePresence.d.ts.map +0 -1
- package/dist/types/src/components/SpacePresence.stories.d.ts +0 -1497
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +0 -7
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +0 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +0 -1500
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +0 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +0 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +0 -1502
- package/dist/types/src/components/ViewEditor.d.ts +0 -8
- package/dist/types/src/components/ViewEditor.d.ts.map +0 -1
- package/dist/types/src/events.d.ts +0 -8
- package/dist/types/src/events.d.ts.map +0 -1
- package/dist/types/src/hooks/useActiveSpace.d.ts +0 -4
- package/dist/types/src/hooks/useActiveSpace.d.ts.map +0 -1
- package/dist/types/src/hooks/useTypeOptions.d.ts +0 -10
- package/dist/types/src/hooks/useTypeOptions.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder.ts +0 -757
- package/src/capabilities/capabilities.ts +0 -35
- package/src/capabilities/intent-resolver.ts +0 -706
- package/src/capabilities/schema-defs.ts +0 -31
- package/src/components/CollectionMain.tsx +0 -32
- package/src/components/CollectionSection.tsx +0 -20
- package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +0 -85
- package/src/components/CreateDialog/CreateObjectDialog.tsx +0 -135
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +0 -67
- package/src/components/MembersContainer.stories.tsx +0 -56
- package/src/components/ObjectDetailsPanel/ObjectDetailsPanel.tsx +0 -52
- package/src/components/ObjectDetailsPanel/ObjectForm.tsx +0 -75
- package/src/components/ObjectDetailsPanel/index.ts +0 -7
- package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +0 -81
- package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +0 -63
- package/src/components/ObjectSettings/BaseObjectSettings.tsx +0 -117
- package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +0 -37
- package/src/components/ObjectSettings/index.ts +0 -7
- package/src/components/PersistenceStatus.tsx +0 -83
- package/src/components/PopoverRenameObject.tsx +0 -56
- package/src/components/RecordMain.tsx +0 -95
- package/src/components/SchemaContainer.tsx +0 -59
- package/src/components/SpacePluginSettings.tsx +0 -52
- package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +0 -46
- package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +0 -185
- package/src/components/SyncStatus/SyncStatus.tsx +0 -146
- package/src/components/ViewEditor.tsx +0 -58
- package/src/events.ts +0 -15
- package/src/hooks/useActiveSpace.ts +0 -20
- package/src/hooks/useTypeOptions.ts +0 -59
- package/src/util.tsx +0 -731
- /package/dist/lib/{browser/types/index.mjs.map → neutral/SmallPresenceLive-GUF4WLUC.mjs.map} +0 -0
- /package/dist/lib/{node-esm/types/index.mjs.map → neutral/SpacePlugin.mjs.map} +0 -0
- /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
- /package/dist/types/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.d.ts +0 -0
- /package/dist/types/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.d.ts +0 -0
- /package/dist/types/src/{components → containers/JoinDialog}/JoinDialog.d.ts +0 -0
- /package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts +0 -0
|
@@ -4,27 +4,27 @@
|
|
|
4
4
|
|
|
5
5
|
import React from 'react';
|
|
6
6
|
|
|
7
|
+
import { isPersonalSpace } from '@dxos/app-toolkit';
|
|
7
8
|
import { getSpace } from '@dxos/client/echo';
|
|
8
9
|
import { type Obj } from '@dxos/echo';
|
|
9
|
-
import { useClient } from '@dxos/react-client';
|
|
10
10
|
import { DropdownMenu, Icon, toLocalizedString, useTranslation } from '@dxos/react-ui';
|
|
11
11
|
|
|
12
|
-
import { meta } from '
|
|
13
|
-
import { getSpaceDisplayName } from '../util';
|
|
12
|
+
import { meta } from '#meta';
|
|
14
13
|
|
|
15
|
-
|
|
14
|
+
import { getSpaceDisplayName } from '../../util';
|
|
15
|
+
|
|
16
|
+
export const MenuFooter = ({ object }: { object: Obj.Unknown }) => {
|
|
16
17
|
const { t } = useTranslation(meta.id);
|
|
17
|
-
const client = useClient();
|
|
18
18
|
const space = getSpace(object);
|
|
19
|
-
const spaceName = space ? getSpaceDisplayName(space, { personal:
|
|
19
|
+
const spaceName = space ? getSpaceDisplayName(space, { personal: isPersonalSpace(space) }) : '';
|
|
20
20
|
return space ? (
|
|
21
21
|
<>
|
|
22
22
|
<DropdownMenu.Separator />
|
|
23
|
-
<DropdownMenu.GroupLabel>{t('menu
|
|
24
|
-
<dl className='
|
|
25
|
-
<dt className='uppercase text-[.75em] tracking-wide font-medium
|
|
23
|
+
<DropdownMenu.GroupLabel>{t('menu-footer.label')}</DropdownMenu.GroupLabel>
|
|
24
|
+
<dl className='ps-2 mb-2 text-xs grid grid-cols-[max-content_1fr] gap-2'>
|
|
25
|
+
<dt className='uppercase text-[.75em] tracking-wide font-medium mt-px self-start'>{t('location.label')}</dt>
|
|
26
26
|
<dd className='line-clamp-3'>
|
|
27
|
-
<Icon icon='ph--planet--regular' classNames='inline-block
|
|
27
|
+
<Icon icon='ph--planet--regular' classNames='inline-block me-1' />
|
|
28
28
|
{toLocalizedString(spaceName, t)}
|
|
29
29
|
</dd>
|
|
30
30
|
</dl>
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import React, { forwardRef, useState } from 'react';
|
|
6
|
+
|
|
7
|
+
import { Filter, Obj, type View } from '@dxos/echo';
|
|
8
|
+
import { useQuery, useType } from '@dxos/react-client/echo';
|
|
9
|
+
import { Card, Message, Panel, ScrollArea, Toolbar, useTranslation } from '@dxos/react-ui';
|
|
10
|
+
import { useSelected } from '@dxos/react-ui-attention';
|
|
11
|
+
import { ObjectForm } from '@dxos/react-ui-form';
|
|
12
|
+
import { Mosaic } from '@dxos/react-ui-mosaic';
|
|
13
|
+
import { getTypenameFromQuery } from '@dxos/schema';
|
|
14
|
+
import { isNonNullable } from '@dxos/util';
|
|
15
|
+
|
|
16
|
+
import { meta } from '#meta';
|
|
17
|
+
|
|
18
|
+
export type ObjectCardStackProps = {
|
|
19
|
+
view: View.View;
|
|
20
|
+
objectId: string;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated Use Mosaic Board components.
|
|
25
|
+
*/
|
|
26
|
+
export const ObjectCardStack = forwardRef<HTMLDivElement, ObjectCardStackProps>(({ objectId, view }, forwardedRef) => {
|
|
27
|
+
const { t } = useTranslation(meta.id);
|
|
28
|
+
const db = Obj.getDatabase(view);
|
|
29
|
+
const typename = view.query ? getTypenameFromQuery(view.query.ast) : undefined;
|
|
30
|
+
const type = useType(db, typename);
|
|
31
|
+
|
|
32
|
+
const queriedObjects = useQuery(db, type ? Filter.type(type) : Filter.nothing());
|
|
33
|
+
const selectedRows = useSelected(objectId, 'multi');
|
|
34
|
+
const selectedObjects = selectedRows.map((id) => queriedObjects.find((obj) => obj.id === id)).filter(isNonNullable);
|
|
35
|
+
|
|
36
|
+
const [viewport, setViewport] = useState<HTMLElement | null>(null);
|
|
37
|
+
|
|
38
|
+
if (!type) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<Panel.Root className='dx-document' ref={forwardedRef}>
|
|
44
|
+
<Panel.Toolbar asChild>
|
|
45
|
+
<Toolbar.Root />
|
|
46
|
+
</Panel.Toolbar>
|
|
47
|
+
<Panel.Content>
|
|
48
|
+
{selectedObjects.length === 0 ? (
|
|
49
|
+
<Message.Root>
|
|
50
|
+
<Message.Title>{t('row-details-no-selection.label')}</Message.Title>
|
|
51
|
+
</Message.Root>
|
|
52
|
+
) : (
|
|
53
|
+
<Mosaic.Root>
|
|
54
|
+
<Mosaic.Container
|
|
55
|
+
asChild
|
|
56
|
+
orientation='vertical'
|
|
57
|
+
autoScroll={viewport}
|
|
58
|
+
eventHandler={{ id: objectId, canDrop: () => true }}
|
|
59
|
+
>
|
|
60
|
+
<ScrollArea.Root orientation='vertical'>
|
|
61
|
+
<ScrollArea.Viewport ref={setViewport}>
|
|
62
|
+
<Mosaic.Stack
|
|
63
|
+
items={selectedObjects}
|
|
64
|
+
getId={(obj) => obj.id}
|
|
65
|
+
Tile={({ ...props }) => (
|
|
66
|
+
<Mosaic.Tile {...props}>
|
|
67
|
+
<Card.Root>
|
|
68
|
+
<ObjectForm object={props.data} type={type} />
|
|
69
|
+
</Card.Root>
|
|
70
|
+
</Mosaic.Tile>
|
|
71
|
+
)}
|
|
72
|
+
/>
|
|
73
|
+
</ScrollArea.Viewport>
|
|
74
|
+
</ScrollArea.Root>
|
|
75
|
+
</Mosaic.Container>
|
|
76
|
+
</Mosaic.Root>
|
|
77
|
+
)}
|
|
78
|
+
</Panel.Content>
|
|
79
|
+
</Panel.Root>
|
|
80
|
+
);
|
|
81
|
+
});
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import React, { forwardRef, useMemo } from 'react';
|
|
6
|
+
|
|
7
|
+
import { Surface } from '@dxos/app-framework/ui';
|
|
8
|
+
import { AppSurface } from '@dxos/app-toolkit/ui';
|
|
9
|
+
import { type Obj } from '@dxos/echo';
|
|
10
|
+
import { Panel, Toolbar } from '@dxos/react-ui';
|
|
11
|
+
import { ObjectProperties as NaturalObjectProperties } from '@dxos/react-ui-form';
|
|
12
|
+
|
|
13
|
+
export type ObjectPropertiesProps = AppSurface.ObjectPropertiesProps<Obj.Unknown>;
|
|
14
|
+
|
|
15
|
+
export const ObjectProperties = forwardRef<HTMLDivElement, ObjectPropertiesProps>(
|
|
16
|
+
({ role, subject: object }, forwardedRef) => {
|
|
17
|
+
const data = useMemo<AppSurface.ObjectPropertiesData>(() => ({ subject: object }), [object]);
|
|
18
|
+
|
|
19
|
+
return (
|
|
20
|
+
<Panel.Root role={role} className='dx-document' ref={forwardedRef}>
|
|
21
|
+
<Panel.Toolbar asChild>
|
|
22
|
+
<Toolbar.Root />
|
|
23
|
+
</Panel.Toolbar>
|
|
24
|
+
<Panel.Content asChild>
|
|
25
|
+
<NaturalObjectProperties object={object}>
|
|
26
|
+
<Surface.Surface type={AppSurface.ObjectProperties} data={data} />
|
|
27
|
+
</NaturalObjectProperties>
|
|
28
|
+
</Panel.Content>
|
|
29
|
+
</Panel.Root>
|
|
30
|
+
);
|
|
31
|
+
},
|
|
32
|
+
);
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { type Meta, type StoryObj } from '@storybook/react-vite';
|
|
6
|
+
import * as Effect from 'effect/Effect';
|
|
7
|
+
import React from 'react';
|
|
8
|
+
|
|
9
|
+
import { Capability } from '@dxos/app-framework';
|
|
10
|
+
import { withPluginManager } from '@dxos/app-framework/testing';
|
|
11
|
+
import { AppCapabilities } from '@dxos/app-toolkit';
|
|
12
|
+
import { Filter } from '@dxos/echo';
|
|
13
|
+
import { ClientPlugin } from '@dxos/plugin-client/testing';
|
|
14
|
+
import { PreviewPlugin } from '@dxos/plugin-preview/testing';
|
|
15
|
+
import { StorybookPlugin, corePlugins } from '@dxos/plugin-testing';
|
|
16
|
+
import { random } from '@dxos/random';
|
|
17
|
+
import { useQuery, useSpaces } from '@dxos/react-client/echo';
|
|
18
|
+
import { Loading, withLayout } from '@dxos/react-ui/testing';
|
|
19
|
+
import { createObjectFactory } from '@dxos/schema/testing';
|
|
20
|
+
import { Organization, Person } from '@dxos/types';
|
|
21
|
+
|
|
22
|
+
import { translations } from '#translations';
|
|
23
|
+
|
|
24
|
+
import { RecordArticle } from './RecordArticle';
|
|
25
|
+
|
|
26
|
+
random.seed(0);
|
|
27
|
+
|
|
28
|
+
const PERSON_COUNT = 100;
|
|
29
|
+
|
|
30
|
+
const DefaultStory = () => {
|
|
31
|
+
const spaces = useSpaces();
|
|
32
|
+
const space = spaces[spaces.length - 1];
|
|
33
|
+
const organizations = useQuery(space?.db, Filter.type(Organization.Organization));
|
|
34
|
+
const org = organizations[0];
|
|
35
|
+
if (!org) {
|
|
36
|
+
return <Loading />;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return <RecordArticle role='article' subject={org} attendableId='story' />;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
const meta = {
|
|
43
|
+
title: 'plugins/plugin-space/containers/RecordArticle',
|
|
44
|
+
render: DefaultStory,
|
|
45
|
+
decorators: [
|
|
46
|
+
withLayout({ layout: 'fullscreen' }),
|
|
47
|
+
withPluginManager({
|
|
48
|
+
capabilities: [Capability.contributes(AppCapabilities.Translations, translations)],
|
|
49
|
+
plugins: [
|
|
50
|
+
...corePlugins(),
|
|
51
|
+
StorybookPlugin({}),
|
|
52
|
+
PreviewPlugin(),
|
|
53
|
+
ClientPlugin({
|
|
54
|
+
types: [Organization.Organization, Person.Person],
|
|
55
|
+
onClientInitialized: ({ client }) =>
|
|
56
|
+
Effect.gen(function* () {
|
|
57
|
+
yield* Effect.promise(() => client.halo.createIdentity());
|
|
58
|
+
const space = yield* Effect.promise(() => client.spaces.create());
|
|
59
|
+
yield* Effect.promise(() => space.waitUntilReady());
|
|
60
|
+
|
|
61
|
+
const factory = createObjectFactory(space.db, random as any);
|
|
62
|
+
yield* Effect.promise(() =>
|
|
63
|
+
factory([
|
|
64
|
+
{ type: Organization.Organization, count: 1 },
|
|
65
|
+
{ type: Person.Person, count: PERSON_COUNT },
|
|
66
|
+
]),
|
|
67
|
+
);
|
|
68
|
+
}),
|
|
69
|
+
}),
|
|
70
|
+
],
|
|
71
|
+
}),
|
|
72
|
+
],
|
|
73
|
+
parameters: {
|
|
74
|
+
layout: 'fullscreen',
|
|
75
|
+
},
|
|
76
|
+
} satisfies Meta;
|
|
77
|
+
|
|
78
|
+
export default meta;
|
|
79
|
+
|
|
80
|
+
type Story = StoryObj<typeof meta>;
|
|
81
|
+
|
|
82
|
+
export const Default: Story = {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2023 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import * as Function from 'effect/Function';
|
|
6
|
+
import * as Option from 'effect/Option';
|
|
7
|
+
import React from 'react';
|
|
8
|
+
|
|
9
|
+
import { Surface } from '@dxos/app-framework/ui';
|
|
10
|
+
import { AppSurface } from '@dxos/app-toolkit/ui';
|
|
11
|
+
import { Annotation, Obj, Type } from '@dxos/echo';
|
|
12
|
+
import { Card, Input, Panel, ScrollArea, Toolbar, useTranslation } from '@dxos/react-ui';
|
|
13
|
+
|
|
14
|
+
import { meta } from '#meta';
|
|
15
|
+
|
|
16
|
+
export const RecordArticle = ({ role, subject }: AppSurface.ObjectArticleProps) => {
|
|
17
|
+
const { t } = useTranslation(meta.id);
|
|
18
|
+
// Obj.getType fails for database-registered (dynamic) schemas due to DXN mismatch;
|
|
19
|
+
// fall back to typename query which matches TypeSchema.typename.
|
|
20
|
+
const db = Obj.getDatabase(subject);
|
|
21
|
+
const typename = Obj.getTypename(subject);
|
|
22
|
+
const schema =
|
|
23
|
+
Obj.getType(subject) ?? (typename && db ? db.schemaRegistry.query({ typename }).runSync()[0] : undefined);
|
|
24
|
+
const icon =
|
|
25
|
+
schema && Type.getDatabase(schema) != null
|
|
26
|
+
? 'ph--cube--regular'
|
|
27
|
+
: Function.pipe(
|
|
28
|
+
Option.fromNullable(schema),
|
|
29
|
+
Option.map(Type.getSchema),
|
|
30
|
+
Option.flatMap(Annotation.IconAnnotation.get),
|
|
31
|
+
Option.map(({ icon }) => icon),
|
|
32
|
+
Option.getOrElse(() => 'ph--circle-dashed--regular'),
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<Panel.Root role={role}>
|
|
37
|
+
<Panel.Toolbar asChild>
|
|
38
|
+
<Toolbar.Root />
|
|
39
|
+
</Panel.Toolbar>
|
|
40
|
+
<Panel.Content asChild>
|
|
41
|
+
<ScrollArea.Root orientation='vertical'>
|
|
42
|
+
<ScrollArea.Viewport classNames='p-4 space-y-4'>
|
|
43
|
+
<Card.Root classNames='dx-card-max-width'>
|
|
44
|
+
<Card.Header>
|
|
45
|
+
<Card.Icon icon={icon} />
|
|
46
|
+
<Card.Title>{Obj.getLabel(subject, { fallback: 'typename' })}</Card.Title>
|
|
47
|
+
</Card.Header>
|
|
48
|
+
<Card.Body>
|
|
49
|
+
<Surface.Surface type={AppSurface.Card} data={{ subject }} limit={1} />
|
|
50
|
+
</Card.Body>
|
|
51
|
+
</Card.Root>
|
|
52
|
+
|
|
53
|
+
{/* TODO(burdon): Only show label if surface exists? */}
|
|
54
|
+
<div className='flex flex-col gap-form-gap'>
|
|
55
|
+
<Input.Root>
|
|
56
|
+
<Input.Label>{t('related-actions.label')}</Input.Label>
|
|
57
|
+
</Input.Root>
|
|
58
|
+
<Surface.Surface role='prompts' data={{ subject }} limit={1} />
|
|
59
|
+
</div>
|
|
60
|
+
</ScrollArea.Viewport>
|
|
61
|
+
</ScrollArea.Root>
|
|
62
|
+
</Panel.Content>
|
|
63
|
+
</Panel.Root>
|
|
64
|
+
);
|
|
65
|
+
};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import * as Function from 'effect/Function';
|
|
6
|
+
import * as Option from 'effect/Option';
|
|
7
|
+
import React, { useMemo } from 'react';
|
|
8
|
+
|
|
9
|
+
import { Surface } from '@dxos/app-framework/ui';
|
|
10
|
+
import { AppSurface, useObjectMenuItems } from '@dxos/app-toolkit/ui';
|
|
11
|
+
import { Annotation, Entity, Obj, Type } from '@dxos/echo';
|
|
12
|
+
import { Card, Panel, Toolbar, useTranslation } from '@dxos/react-ui';
|
|
13
|
+
import { Masonry } from '@dxos/react-ui-masonry';
|
|
14
|
+
import { Menu } from '@dxos/react-ui-menu';
|
|
15
|
+
|
|
16
|
+
import { useRelatedObjects } from '#hooks';
|
|
17
|
+
import { meta } from '#meta';
|
|
18
|
+
|
|
19
|
+
// TODO(burdon): Companion type.
|
|
20
|
+
export type RelatedArticleProps = Pick<
|
|
21
|
+
AppSurface.ObjectArticleProps<Obj.Unknown, {}, Obj.Unknown>,
|
|
22
|
+
'role' | 'companionTo'
|
|
23
|
+
>;
|
|
24
|
+
|
|
25
|
+
export const RelatedArticle = ({ role, companionTo }: RelatedArticleProps) => {
|
|
26
|
+
const db = Obj.getDatabase(companionTo);
|
|
27
|
+
const items = useRelatedObjects(db, companionTo, { references: true, relations: true });
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<Masonry.Root Tile={ObjectCard}>
|
|
31
|
+
<Panel.Root role={role}>
|
|
32
|
+
<Panel.Toolbar asChild>
|
|
33
|
+
<Toolbar.Root />
|
|
34
|
+
</Panel.Toolbar>
|
|
35
|
+
<Panel.Content asChild>
|
|
36
|
+
<Masonry.Content classNames='p-2' centered>
|
|
37
|
+
<Masonry.Viewport items={items} />
|
|
38
|
+
</Masonry.Content>
|
|
39
|
+
</Panel.Content>
|
|
40
|
+
</Panel.Root>
|
|
41
|
+
</Masonry.Root>
|
|
42
|
+
);
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
/** Masonry tile renderer for a related entity. */
|
|
46
|
+
const ObjectCard = ({ data: subject, classNames }: { data: Entity.Unknown; classNames?: string }) => {
|
|
47
|
+
const { t } = useTranslation(meta.id);
|
|
48
|
+
const data = useMemo(() => ({ subject }), [subject]);
|
|
49
|
+
const icon = Function.pipe(
|
|
50
|
+
Entity.getType(subject),
|
|
51
|
+
Option.fromNullable,
|
|
52
|
+
Option.map(Type.getSchema),
|
|
53
|
+
Option.flatMap(Annotation.IconAnnotation.get),
|
|
54
|
+
Option.map(({ icon }) => icon),
|
|
55
|
+
Option.getOrElse(() => 'ph--circle-dashed--regular'),
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
// TODO(burdon): BUG: Includes item itself.
|
|
59
|
+
const menuItems = useObjectMenuItems(subject);
|
|
60
|
+
|
|
61
|
+
return (
|
|
62
|
+
<Menu.Root>
|
|
63
|
+
<Card.Root classNames={classNames}>
|
|
64
|
+
<Card.Header>
|
|
65
|
+
<Card.Icon icon={icon} />
|
|
66
|
+
<Card.Title>{Entity.getLabel(subject, { fallback: 'typename' })}</Card.Title>
|
|
67
|
+
<Menu.Trigger asChild disabled={!menuItems?.length}>
|
|
68
|
+
<Toolbar.IconButton
|
|
69
|
+
iconOnly
|
|
70
|
+
variant='ghost'
|
|
71
|
+
icon='ph--dots-three-vertical--regular'
|
|
72
|
+
label={t('more-actions.label')}
|
|
73
|
+
/>
|
|
74
|
+
</Menu.Trigger>
|
|
75
|
+
<Menu.Content items={menuItems} />
|
|
76
|
+
</Card.Header>
|
|
77
|
+
<Card.Body>
|
|
78
|
+
<Surface.Surface type={AppSurface.Card} data={data} limit={1} />
|
|
79
|
+
</Card.Body>
|
|
80
|
+
</Card.Root>
|
|
81
|
+
</Menu.Root>
|
|
82
|
+
);
|
|
83
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import React, { useEffect, useState } from 'react';
|
|
6
|
+
|
|
7
|
+
import { AppSurface } from '@dxos/app-toolkit/ui';
|
|
8
|
+
import { Type } from '@dxos/echo';
|
|
9
|
+
import { type Space } from '@dxos/react-client/echo';
|
|
10
|
+
import { useTranslation } from '@dxos/react-ui';
|
|
11
|
+
import { Settings } from '@dxos/react-ui-form';
|
|
12
|
+
import { mx } from '@dxos/ui-theme';
|
|
13
|
+
|
|
14
|
+
import { meta } from '#meta';
|
|
15
|
+
|
|
16
|
+
export const SchemaContainer = ({ space }: AppSurface.SpaceArticleProps) => {
|
|
17
|
+
const { t } = useTranslation(meta.id);
|
|
18
|
+
const schemas = useQuerySpaceSchemas(space);
|
|
19
|
+
|
|
20
|
+
return (
|
|
21
|
+
<Settings.Viewport>
|
|
22
|
+
<Settings.Section title={t('schema-verbose.label')} description={t('schema.description')}>
|
|
23
|
+
<div
|
|
24
|
+
className={mx([
|
|
25
|
+
'grid md:col-span-2 grid-cols-subgrid gap-trim-sm items-center',
|
|
26
|
+
'*:first:mt-0! *:last:mb-0! px-trim-md py-trim-md',
|
|
27
|
+
'border border-separator rounded-md',
|
|
28
|
+
])}
|
|
29
|
+
>
|
|
30
|
+
{schemas.length === 0 && <div className='text-center py-4'>{t('no-schemas-found.message')}</div>}
|
|
31
|
+
{schemas.map((schema) => (
|
|
32
|
+
<div key={schema.id}>{Type.getTypename(schema)}</div>
|
|
33
|
+
))}
|
|
34
|
+
</div>
|
|
35
|
+
</Settings.Section>
|
|
36
|
+
</Settings.Viewport>
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Subscribe to and retrieve all schemas from a space's schema registry.
|
|
42
|
+
*/
|
|
43
|
+
export const useQuerySpaceSchemas = (space: Space): Type.Type[] => {
|
|
44
|
+
const [types, setTypes] = useState<Type.Type[]>([]);
|
|
45
|
+
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
const query = space.db.schemaRegistry.query();
|
|
48
|
+
setTypes(query.runSync());
|
|
49
|
+
|
|
50
|
+
const unsubscribe = query.subscribe(() => setTypes(query.results));
|
|
51
|
+
return () => unsubscribe();
|
|
52
|
+
}, [space]);
|
|
53
|
+
|
|
54
|
+
return types;
|
|
55
|
+
};
|
|
@@ -9,7 +9,7 @@ import { IdentityDid, PublicKey } from '@dxos/keys';
|
|
|
9
9
|
import { HaloSpaceMember, SpaceMember } from '@dxos/react-client/echo';
|
|
10
10
|
import { withTheme } from '@dxos/react-ui/testing';
|
|
11
11
|
|
|
12
|
-
import { translations } from '
|
|
12
|
+
import { translations } from '#translations';
|
|
13
13
|
|
|
14
14
|
import { FullPresence, type Member, type MemberPresenceProps, SmallPresence } from './SpacePresence';
|
|
15
15
|
|
|
@@ -23,8 +23,8 @@ const viewers = (n: number, currentlyAttended = true): Member[] =>
|
|
|
23
23
|
}));
|
|
24
24
|
|
|
25
25
|
const meta = {
|
|
26
|
-
title: 'plugins/plugin-space/SpacePresence',
|
|
27
|
-
decorators: [withTheme],
|
|
26
|
+
title: 'plugins/plugin-space/containers/SpacePresence',
|
|
27
|
+
decorators: [withTheme()],
|
|
28
28
|
parameters: {
|
|
29
29
|
translations,
|
|
30
30
|
},
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import * as Option from 'effect/Option';
|
|
6
5
|
import React, { forwardRef, useCallback, useEffect, useState } from 'react';
|
|
7
6
|
|
|
8
|
-
import {
|
|
7
|
+
import { useAtomCapability } from '@dxos/app-framework/ui';
|
|
9
8
|
import { generateName } from '@dxos/display-name';
|
|
10
|
-
import { type
|
|
11
|
-
import { PublicKey
|
|
12
|
-
import { type SpaceMember,
|
|
9
|
+
import { type Key, Obj } from '@dxos/echo';
|
|
10
|
+
import { PublicKey } from '@dxos/react-client';
|
|
11
|
+
import { type SpaceMember, useMembers, useSpace } from '@dxos/react-client/echo';
|
|
13
12
|
import { type Identity, useIdentity } from '@dxos/react-client/halo';
|
|
14
13
|
import {
|
|
15
14
|
Avatar,
|
|
@@ -24,13 +23,11 @@ import {
|
|
|
24
23
|
useDefaultValue,
|
|
25
24
|
useTranslation,
|
|
26
25
|
} from '@dxos/react-ui';
|
|
27
|
-
import { AttentionGlyph, type AttentionGlyphProps,
|
|
26
|
+
import { AttentionGlyph, type AttentionGlyphProps, useAttention } from '@dxos/react-ui-attention';
|
|
28
27
|
import { ComplexMap, keyToFallback } from '@dxos/util';
|
|
29
28
|
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import { meta } from '../meta';
|
|
33
|
-
import type { ObjectViewerProps } from '../types';
|
|
29
|
+
import { meta } from '#meta';
|
|
30
|
+
import { type ObjectViewerProps, SpaceCapabilities } from '#types';
|
|
34
31
|
|
|
35
32
|
// TODO(thure): Get/derive these values from protocol
|
|
36
33
|
const REFRESH_INTERVAL = 5000;
|
|
@@ -42,13 +39,17 @@ const noViewers = new ComplexMap<PublicKey, ObjectViewerProps>(PublicKey.hash);
|
|
|
42
39
|
// TODO(wittjosiah): Factor out?
|
|
43
40
|
const getName = (identity: Identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
|
|
44
41
|
|
|
45
|
-
export
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
42
|
+
export type SpacePresenceProps = {
|
|
43
|
+
object: Obj.Unknown;
|
|
44
|
+
spaceId?: Key.SpaceId;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export const SpacePresence = ({ object, spaceId }: SpacePresenceProps) => {
|
|
48
|
+
const ephemeral = useAtomCapability(SpaceCapabilities.EphemeralState);
|
|
49
49
|
const identity = useIdentity();
|
|
50
|
-
const
|
|
51
|
-
const
|
|
50
|
+
const db = Obj.getDatabase(object);
|
|
51
|
+
const space = useSpace(spaceId ?? db?.spaceId);
|
|
52
|
+
const spaceMembers = useMembers(spaceId ?? db?.spaceId);
|
|
52
53
|
|
|
53
54
|
const [_moment, setMoment] = useState(Date.now());
|
|
54
55
|
|
|
@@ -66,11 +67,11 @@ export const SpacePresence = ({ object, spaceKey }: { object: Type.Expando; spac
|
|
|
66
67
|
|
|
67
68
|
// TODO(thure): Could it be a smell to return early when there are interactions with `deepSignal` later, since it
|
|
68
69
|
// prevents reactivity?
|
|
69
|
-
if (!identity || !
|
|
70
|
+
if (!identity || !ephemeral || !space) {
|
|
70
71
|
return null;
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
const currentObjectViewers =
|
|
74
|
+
const currentObjectViewers = ephemeral.viewersByObject[Obj.getURI(object)] ?? noViewers;
|
|
74
75
|
|
|
75
76
|
const membersForObject = spaceMembers
|
|
76
77
|
.filter((member) => memberOnline(member) && memberIsNotSelf(member))
|
|
@@ -121,7 +122,7 @@ export const FullPresence = (props: MemberPresenceProps) => {
|
|
|
121
122
|
key={member.identity.identityKey.toHex()}
|
|
122
123
|
side='bottom'
|
|
123
124
|
content={getName(member.identity)}
|
|
124
|
-
className='grid focus:outline-
|
|
125
|
+
className='grid focus:outline-hidden'
|
|
125
126
|
>
|
|
126
127
|
<PresenceAvatar
|
|
127
128
|
identity={member.identity}
|
|
@@ -135,7 +136,7 @@ export const FullPresence = (props: MemberPresenceProps) => {
|
|
|
135
136
|
|
|
136
137
|
{members.length > 3 && (
|
|
137
138
|
<Popover.Root>
|
|
138
|
-
<Popover.Trigger className='grid focus:outline-
|
|
139
|
+
<Popover.Trigger className='grid focus:outline-hidden'>
|
|
139
140
|
<Avatar.Root>
|
|
140
141
|
{/* TODO(wittjosiah): Make text fit. */}
|
|
141
142
|
<Avatar.Content
|
|
@@ -149,12 +150,12 @@ export const FullPresence = (props: MemberPresenceProps) => {
|
|
|
149
150
|
<Popover.Portal>
|
|
150
151
|
<Popover.Content side='bottom'>
|
|
151
152
|
<Popover.Arrow />
|
|
152
|
-
<Popover.Viewport classNames='max-
|
|
153
|
+
<Popover.Viewport classNames='max-h-56'>
|
|
153
154
|
<List>
|
|
154
155
|
{members.map((member) => (
|
|
155
156
|
<ListItem.Root
|
|
156
157
|
key={member.identity.identityKey.toHex()}
|
|
157
|
-
classNames='flex gap-2 items-center cursor-pointer
|
|
158
|
+
classNames='flex gap-2 items-center cursor-pointer mb-2'
|
|
158
159
|
onClick={() => onMemberClick?.(member)}
|
|
159
160
|
data-testid='identity-list-item'
|
|
160
161
|
>
|
|
@@ -202,7 +203,7 @@ const PresenceAvatar = forwardRef<DxAvatar, PresenceAvatarProps>(
|
|
|
202
203
|
fallback={identity.profile?.data?.emoji || fallbackValue.emoji}
|
|
203
204
|
ref={forwardedRef}
|
|
204
205
|
/>
|
|
205
|
-
<Avatar.Label classNames={showName ? 'text-sm truncate
|
|
206
|
+
<Avatar.Label classNames={showName ? 'text-sm truncate px-2' : 'sr-only'}>{getName(identity)}</Avatar.Label>
|
|
206
207
|
</Avatar.Root>
|
|
207
208
|
);
|
|
208
209
|
},
|
|
@@ -216,17 +217,8 @@ export type SmallPresenceLiveProps = {
|
|
|
216
217
|
|
|
217
218
|
export const SmallPresenceLive = ({ id, open, viewers }: SmallPresenceLiveProps) => {
|
|
218
219
|
const { hasAttention, isAncestor, isRelated } = useAttention(id);
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
// TODO(wittjosiah): If the attended node is deep in the graph and the graph is not fully loaded
|
|
222
|
-
// this will result in an empty path until the graph is connected.
|
|
223
|
-
// TODO(wittjosiah): Consider using this indicator for all open nodes instead of just attended.
|
|
224
|
-
const { graph } = useAppGraph();
|
|
225
|
-
const attended = useAttended();
|
|
226
|
-
const startOfAttention = attended.at(-1);
|
|
227
|
-
const path = usePath(graph, startOfAttention);
|
|
228
|
-
const containsAttended = !open && !isAttended && id && Option.isSome(path) ? path.value.includes(id) : false;
|
|
229
|
-
|
|
220
|
+
const attended = hasAttention || isRelated;
|
|
221
|
+
const containsAttended = isAncestor && !open;
|
|
230
222
|
const getActiveViewers = (viewers: ComplexMap<PublicKey, ObjectViewerProps>): ObjectViewerProps[] => {
|
|
231
223
|
const moment = Date.now();
|
|
232
224
|
return Array.from<ObjectViewerProps>(viewers.values()).filter(
|
|
@@ -246,7 +238,7 @@ export const SmallPresenceLive = ({ id, open, viewers }: SmallPresenceLiveProps)
|
|
|
246
238
|
}
|
|
247
239
|
}, [viewers]);
|
|
248
240
|
|
|
249
|
-
return <SmallPresence count={activeViewers.length} attended={
|
|
241
|
+
return <SmallPresence count={activeViewers.length} attended={attended} containsAttended={containsAttended} />;
|
|
250
242
|
};
|
|
251
243
|
|
|
252
244
|
export type SmallPresenceProps = {
|
|
@@ -257,12 +249,12 @@ export const SmallPresence = ({ count = 0, attended, containsAttended }: SmallPr
|
|
|
257
249
|
const { t } = useTranslation(meta.id);
|
|
258
250
|
|
|
259
251
|
return (
|
|
260
|
-
<Tooltip.Trigger asChild content={t('presence
|
|
252
|
+
<Tooltip.Trigger asChild content={t('presence.label', { count })} side='bottom'>
|
|
261
253
|
<AttentionGlyph
|
|
262
254
|
attended={attended}
|
|
263
255
|
containsAttended={containsAttended}
|
|
264
256
|
presence={count > 1 ? 'many' : count === 1 ? 'one' : 'none'}
|
|
265
|
-
classNames='self-center
|
|
257
|
+
classNames='self-center mx-1'
|
|
266
258
|
/>
|
|
267
259
|
</Tooltip.Trigger>
|
|
268
260
|
);
|