@dxos/plugin-space 0.8.4-main.937b3ca → 0.8.4-main.9be5663bfe
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/SpacePluginSettings-BHTDFW3O.mjs +47 -0
- package/dist/lib/browser/SpacePluginSettings-BHTDFW3O.mjs.map +7 -0
- package/dist/lib/browser/add-object-UUFWBSVJ.mjs +86 -0
- package/dist/lib/browser/add-object-UUFWBSVJ.mjs.map +7 -0
- package/dist/lib/browser/add-relation-LKD2TNKD.mjs +26 -0
- package/dist/lib/browser/add-relation-LKD2TNKD.mjs.map +7 -0
- package/dist/lib/browser/add-schema-5VZHKL5T.mjs +60 -0
- package/dist/lib/browser/add-schema-5VZHKL5T.mjs.map +7 -0
- package/dist/lib/browser/{chunk-HSMQFM57.mjs → chunk-5CKPBXLB.mjs} +2 -2
- package/dist/lib/browser/{chunk-HSMQFM57.mjs.map → chunk-5CKPBXLB.mjs.map} +1 -1
- package/dist/lib/browser/chunk-GNIQSANG.mjs +489 -0
- package/dist/lib/browser/chunk-GNIQSANG.mjs.map +7 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/browser/chunk-JH2UWMN2.mjs +8 -0
- package/dist/lib/browser/chunk-JH2UWMN2.mjs.map +7 -0
- package/dist/lib/browser/chunk-VV4C4APQ.mjs +16 -0
- package/dist/lib/browser/chunk-VV4C4APQ.mjs.map +7 -0
- package/dist/lib/browser/chunk-WB3HNICB.mjs +98 -0
- package/dist/lib/browser/chunk-WB3HNICB.mjs.map +7 -0
- package/dist/lib/browser/chunk-YSV6LKD6.mjs +71 -0
- package/dist/lib/browser/chunk-YSV6LKD6.mjs.map +7 -0
- package/dist/lib/browser/cli/index.mjs +62 -63
- package/dist/lib/browser/cli/index.mjs.map +3 -3
- package/dist/lib/browser/close-5PRMRLNE.mjs +17 -0
- package/dist/lib/browser/close-5PRMRLNE.mjs.map +7 -0
- package/dist/lib/browser/create-CUMAKRH6.mjs +74 -0
- package/dist/lib/browser/create-CUMAKRH6.mjs.map +7 -0
- package/dist/lib/browser/delete-field-E7VR37AY.mjs +67 -0
- package/dist/lib/browser/delete-field-E7VR37AY.mjs.map +7 -0
- package/dist/lib/browser/duplicate-object-FEPM2FY4.mjs +42 -0
- package/dist/lib/browser/duplicate-object-FEPM2FY4.mjs.map +7 -0
- package/dist/lib/browser/get-share-link-7RPLVQ5E.mjs +41 -0
- package/dist/lib/browser/get-share-link-7RPLVQ5E.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +793 -226
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/join-OVC62STB.mjs +28 -0
- package/dist/lib/browser/join-OVC62STB.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/meta.mjs +8 -0
- package/dist/lib/browser/meta.mjs.map +7 -0
- package/dist/lib/browser/migrate-CIMFYFPJ.mjs +50 -0
- package/dist/lib/browser/migrate-CIMFYFPJ.mjs.map +7 -0
- package/dist/lib/browser/open-G4XBPNNJ.mjs +17 -0
- package/dist/lib/browser/open-G4XBPNNJ.mjs.map +7 -0
- package/dist/lib/browser/open-create-object-KFR6ZM6M.mjs +42 -0
- package/dist/lib/browser/open-create-object-KFR6ZM6M.mjs.map +7 -0
- package/dist/lib/browser/open-create-space-ICQYYDPT.mjs +24 -0
- package/dist/lib/browser/open-create-space-ICQYYDPT.mjs.map +7 -0
- package/dist/lib/browser/open-members-TFARRDZG.mjs +23 -0
- package/dist/lib/browser/open-members-TFARRDZG.mjs.map +7 -0
- package/dist/lib/browser/open-settings-MLCXUE2H.mjs +23 -0
- package/dist/lib/browser/open-settings-MLCXUE2H.mjs.map +7 -0
- package/dist/lib/browser/operations/index.mjs +14 -0
- package/dist/lib/browser/operations/index.mjs.map +7 -0
- package/dist/lib/browser/remove-objects-OKPOXX5K.mjs +79 -0
- package/dist/lib/browser/remove-objects-OKPOXX5K.mjs.map +7 -0
- package/dist/lib/browser/rename-LPPVIVCM.mjs +25 -0
- package/dist/lib/browser/rename-LPPVIVCM.mjs.map +7 -0
- package/dist/lib/browser/rename-object-5BG6G7OZ.mjs +26 -0
- package/dist/lib/browser/rename-object-5BG6G7OZ.mjs.map +7 -0
- package/dist/lib/browser/restore-field-7GJWVHDA.mjs +65 -0
- package/dist/lib/browser/restore-field-7GJWVHDA.mjs.map +7 -0
- package/dist/lib/browser/restore-objects-IDA5K4JY.mjs +56 -0
- package/dist/lib/browser/restore-objects-IDA5K4JY.mjs.map +7 -0
- package/dist/lib/browser/share-X3CPU6VI.mjs +31 -0
- package/dist/lib/browser/share-X3CPU6VI.mjs.map +7 -0
- package/dist/lib/browser/snapshot-4ICGB7QL.mjs +38 -0
- package/dist/lib/browser/snapshot-4ICGB7QL.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +6 -8
- package/dist/lib/browser/wait-for-object-RNK4EMZZ.mjs +23 -0
- package/dist/lib/browser/wait-for-object-RNK4EMZZ.mjs.map +7 -0
- package/dist/lib/node-esm/SpacePluginSettings-D63KOL6O.mjs +48 -0
- package/dist/lib/node-esm/SpacePluginSettings-D63KOL6O.mjs.map +7 -0
- package/dist/lib/node-esm/add-object-2DVOIRLC.mjs +87 -0
- package/dist/lib/node-esm/add-object-2DVOIRLC.mjs.map +7 -0
- package/dist/lib/node-esm/add-relation-RGXQYERC.mjs +27 -0
- package/dist/lib/node-esm/add-relation-RGXQYERC.mjs.map +7 -0
- package/dist/lib/node-esm/add-schema-KNXXCGGN.mjs +61 -0
- package/dist/lib/node-esm/add-schema-KNXXCGGN.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs → chunk-64AL4GHY.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs.map → chunk-64AL4GHY.mjs.map} +1 -1
- package/dist/lib/node-esm/chunk-EQMZ4GGS.mjs +99 -0
- package/dist/lib/node-esm/chunk-EQMZ4GGS.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-GTF56ZOK.mjs +10 -0
- package/dist/lib/node-esm/chunk-GTF56ZOK.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-IHOQPYNT.mjs +73 -0
- package/dist/lib/node-esm/chunk-IHOQPYNT.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-IYW6CXLN.mjs +18 -0
- package/dist/lib/node-esm/chunk-IYW6CXLN.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-O76EE6YO.mjs +490 -0
- package/dist/lib/node-esm/chunk-O76EE6YO.mjs.map +7 -0
- package/dist/lib/node-esm/cli/index.mjs +62 -63
- package/dist/lib/node-esm/cli/index.mjs.map +3 -3
- package/dist/lib/node-esm/close-B3YKWJFA.mjs +18 -0
- package/dist/lib/node-esm/close-B3YKWJFA.mjs.map +7 -0
- package/dist/lib/node-esm/create-4R6VMTBK.mjs +75 -0
- package/dist/lib/node-esm/create-4R6VMTBK.mjs.map +7 -0
- package/dist/lib/node-esm/delete-field-GO23FHRM.mjs +68 -0
- package/dist/lib/node-esm/delete-field-GO23FHRM.mjs.map +7 -0
- package/dist/lib/node-esm/duplicate-object-DAOAOSN2.mjs +43 -0
- package/dist/lib/node-esm/duplicate-object-DAOAOSN2.mjs.map +7 -0
- package/dist/lib/node-esm/get-share-link-HVUXWNJQ.mjs +42 -0
- package/dist/lib/node-esm/get-share-link-HVUXWNJQ.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +793 -226
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/join-GNUI4Q2E.mjs +29 -0
- package/dist/lib/node-esm/join-GNUI4Q2E.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/meta.mjs +9 -0
- package/dist/lib/node-esm/meta.mjs.map +7 -0
- package/dist/lib/node-esm/migrate-3LLZU3Y3.mjs +51 -0
- package/dist/lib/node-esm/migrate-3LLZU3Y3.mjs.map +7 -0
- package/dist/lib/node-esm/open-5LPYF342.mjs +18 -0
- package/dist/lib/node-esm/open-5LPYF342.mjs.map +7 -0
- package/dist/lib/node-esm/open-create-object-FSECJKWJ.mjs +43 -0
- package/dist/lib/node-esm/open-create-object-FSECJKWJ.mjs.map +7 -0
- package/dist/lib/node-esm/open-create-space-GKROCVE7.mjs +25 -0
- package/dist/lib/node-esm/open-create-space-GKROCVE7.mjs.map +7 -0
- package/dist/lib/node-esm/open-members-NGWMFHIN.mjs +24 -0
- package/dist/lib/node-esm/open-members-NGWMFHIN.mjs.map +7 -0
- package/dist/lib/node-esm/open-settings-VGBMSULJ.mjs +24 -0
- package/dist/lib/node-esm/open-settings-VGBMSULJ.mjs.map +7 -0
- package/dist/lib/node-esm/operations/index.mjs +15 -0
- package/dist/lib/node-esm/operations/index.mjs.map +7 -0
- package/dist/lib/node-esm/remove-objects-6RQQAJNW.mjs +80 -0
- package/dist/lib/node-esm/remove-objects-6RQQAJNW.mjs.map +7 -0
- package/dist/lib/node-esm/rename-JMPOMOYY.mjs +26 -0
- package/dist/lib/node-esm/rename-JMPOMOYY.mjs.map +7 -0
- package/dist/lib/node-esm/rename-object-F7ZV5MRF.mjs +27 -0
- package/dist/lib/node-esm/rename-object-F7ZV5MRF.mjs.map +7 -0
- package/dist/lib/node-esm/restore-field-2QRK5Y4Y.mjs +66 -0
- package/dist/lib/node-esm/restore-field-2QRK5Y4Y.mjs.map +7 -0
- package/dist/lib/node-esm/restore-objects-QZPN5HNB.mjs +57 -0
- package/dist/lib/node-esm/restore-objects-QZPN5HNB.mjs.map +7 -0
- package/dist/lib/node-esm/share-NLDQZYWK.mjs +32 -0
- package/dist/lib/node-esm/share-NLDQZYWK.mjs.map +7 -0
- package/dist/lib/node-esm/snapshot-INHLF3MW.mjs +39 -0
- package/dist/lib/node-esm/snapshot-INHLF3MW.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +6 -8
- package/dist/lib/node-esm/wait-for-object-HBN6FXLS.mjs +24 -0
- package/dist/lib/node-esm/wait-for-object-HBN6FXLS.mjs.map +7 -0
- package/dist/types/src/SpacePlugin.d.ts +1 -1
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +2 -2
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
- 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 +25 -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 +11 -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 +57 -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 +24 -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 +1 -1
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-serializer.d.ts +5 -0
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
- package/dist/types/src/capabilities/identity-created.d.ts +5 -0
- package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +38 -9
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/migrations.d.ts +5 -0
- package/dist/types/src/capabilities/migrations.d.ts.map +1 -0
- 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 +9 -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/react-root.d.ts → react-root.d.ts} +1 -1
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +8 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- 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 +10 -0
- package/dist/types/src/capabilities/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts +5 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
- package/dist/types/src/capabilities/{state/state.d.ts → state.d.ts} +2 -2
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- 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/cli/commands/database/add.d.ts +1 -2
- package/dist/types/src/cli/commands/database/add.d.ts.map +1 -1
- package/dist/types/src/cli/plugin.d.ts +1 -1
- package/dist/types/src/cli/plugin.d.ts.map +1 -1
- 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 +13 -6
- 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.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/SpacePluginSettings/SpacePluginSettings.d.ts +10 -0
- package/dist/types/src/components/SpacePluginSettings/SpacePluginSettings.d.ts.map +1 -0
- package/dist/types/src/components/SpacePluginSettings/SpacePluginSettings.stories.d.ts +1612 -0
- package/dist/types/src/components/{MembersContainer/MembersContainer.stories.d.ts.map → SpacePluginSettings/SpacePluginSettings.stories.d.ts.map} +1 -1
- package/dist/types/src/components/SpacePluginSettings/index.d.ts +2 -0
- package/dist/types/src/components/SpacePluginSettings/index.d.ts.map +1 -0
- 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/status.d.ts +1 -1
- package/dist/types/src/components/index.d.ts +3 -23
- package/dist/types/src/components/index.d.ts.map +1 -1
- 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/{components/CreateDialog → containers/CreateObjectDialog}/CreateObjectDialog.d.ts +5 -3
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -0
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +1609 -0
- package/dist/types/src/{components/RecordArticle.stories.d.ts.map → 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 +1613 -0
- package/dist/types/src/{components/CreateDialog/CreateObjectDialog.stories.d.ts.map → containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map} +1 -1
- 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/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 +1612 -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/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/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/{components → containers}/ObjectCardStack/ObjectCardStack.d.ts +4 -1
- 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/ObjectDetails/ObjectDetails.d.ts +11 -0
- package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts.map +1 -0
- package/dist/types/src/containers/ObjectDetails/index.d.ts +2 -0
- package/dist/types/src/containers/ObjectDetails/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -1
- package/dist/types/src/containers/ObjectRenamePopover/index.d.ts +2 -0
- package/dist/types/src/containers/ObjectRenamePopover/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.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 +1 -1
- package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.d.ts.map +1 -1
- package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +1610 -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/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -1
- 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 +10 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +1616 -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 +1615 -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/{components → containers/ViewEditor}/ViewEditor.d.ts +1 -1
- 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 +23 -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/useRelatedObjects.d.ts +10 -0
- package/dist/types/src/hooks/useRelatedObjects.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +1 -3
- package/dist/types/src/index.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 +217 -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/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/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-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/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/translations.d.ts +1584 -1404
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Settings.d.ts +9 -0
- package/dist/types/src/types/Settings.d.ts.map +1 -0
- package/dist/types/src/types/capabilities.d.ts +1 -1
- package/dist/types/src/types/capabilities.d.ts.map +1 -1
- package/dist/types/src/types/events.d.ts +1 -1
- package/dist/types/src/types/events.d.ts.map +1 -1
- package/dist/types/src/types/form.d.ts +1 -21
- package/dist/types/src/types/form.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +30 -641
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +7 -123
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +102 -66
- package/src/SpacePlugin.ts +150 -82
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +17 -602
- package/src/capabilities/app-graph-builder/extensions/collections.ts +346 -0
- package/src/capabilities/app-graph-builder/extensions/companions.ts +88 -0
- package/src/capabilities/app-graph-builder/extensions/index.ts +9 -0
- package/src/capabilities/app-graph-builder/extensions/settings.ts +64 -0
- package/src/capabilities/app-graph-builder/extensions/shared.test.ts +112 -0
- package/src/capabilities/app-graph-builder/extensions/shared.ts +171 -0
- package/src/capabilities/app-graph-builder/extensions/spaces.ts +341 -0
- package/src/capabilities/app-graph-builder/extensions/types.ts +423 -0
- package/src/capabilities/app-graph-builder/index.ts +1 -1
- package/src/capabilities/{app-graph-serializer/app-graph-serializer.ts → app-graph-serializer.ts} +18 -15
- package/src/capabilities/identity-created.ts +35 -0
- package/src/capabilities/index.ts +21 -9
- package/src/capabilities/migrations.ts +59 -0
- 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 +13 -0
- package/src/capabilities/operation-handler.ts +14 -0
- package/src/capabilities/{react-root/react-root.tsx → react-root.tsx} +6 -6
- package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +110 -119
- package/src/capabilities/repair.ts +42 -0
- package/src/capabilities/{settings/settings.ts → settings.ts} +7 -6
- package/src/capabilities/{spaces-ready/spaces-ready.ts → spaces-ready.ts} +98 -35
- package/src/capabilities/{state/state.ts → state.ts} +9 -7
- package/src/capabilities/undo-mappings.ts +59 -0
- package/src/cli/commands/database/add.ts +12 -18
- package/src/cli/commands/database/query/query.test.ts +3 -5
- package/src/cli/commands/database/query/query.ts +1 -1
- package/src/cli/commands/database/remove.ts +2 -2
- package/src/cli/commands/database/stats.ts +1 -1
- package/src/cli/commands/space/close/close.ts +1 -1
- package/src/cli/commands/space/create/create.ts +3 -3
- package/src/cli/commands/space/info/info.test.ts +0 -15
- package/src/cli/commands/space/join/join.ts +1 -1
- package/src/cli/commands/space/members/members.test.ts +0 -13
- package/src/cli/commands/space/open/open.ts +1 -1
- package/src/cli/commands/space/schema/list/list.test.ts +0 -13
- package/src/cli/plugin.ts +51 -33
- package/src/components/{AwaitingObject.tsx → AwaitingObject/AwaitingObject.tsx} +19 -18
- package/src/components/AwaitingObject/index.ts +5 -0
- package/src/components/CreateDialog/CreateObjectPanel.tsx +113 -133
- package/src/components/CreateDialog/index.ts +1 -2
- package/src/components/{ObjectDetails → ForeignKeys}/ForeignKeys.tsx +9 -3
- package/src/components/{JoinDialog → ForeignKeys}/index.ts +1 -1
- package/src/components/SpacePluginSettings/SpacePluginSettings.stories.tsx +33 -0
- package/src/components/SpacePluginSettings/SpacePluginSettings.tsx +74 -0
- package/src/components/SpacePluginSettings/index.ts +5 -0
- package/src/components/SyncStatus/index.ts +2 -2
- package/src/components/SyncStatus/status.ts +7 -7
- package/src/components/index.ts +3 -16
- package/src/constants.ts +6 -6
- package/src/containers/CollectionArticle/CollectionArticle.tsx +134 -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 +82 -0
- package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +163 -0
- package/src/containers/CreateObjectDialog/index.ts +6 -0
- package/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.tsx +45 -0
- package/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.tsx +27 -24
- package/src/containers/CreateSpaceDialog/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 +42 -0
- package/src/{components → containers}/JoinDialog/JoinDialog.tsx +25 -21
- package/src/containers/JoinDialog/index.ts +6 -0
- package/src/{components → containers}/MembersContainer/MembersContainer.tsx +51 -74
- package/src/containers/MembersContainer/index.ts +5 -0
- package/src/{components → containers/MenuFooter}/MenuFooter.tsx +9 -9
- package/src/containers/MenuFooter/index.ts +5 -0
- package/src/containers/ObjectCardStack/ObjectCardStack.tsx +82 -0
- package/src/containers/ObjectCardStack/index.ts +5 -0
- package/src/containers/ObjectDetails/ObjectDetails.tsx +32 -0
- package/src/containers/ObjectDetails/index.ts +5 -0
- package/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.tsx +8 -8
- package/src/containers/ObjectRenamePopover/index.ts +5 -0
- package/src/containers/RecordArticle/RecordArticle.stories.tsx +80 -0
- package/src/containers/RecordArticle/RecordArticle.tsx +56 -0
- package/src/containers/RecordArticle/index.ts +5 -0
- package/src/containers/RelatedArticle/RelatedArticle.tsx +80 -0
- package/src/containers/RelatedArticle/index.ts +5 -0
- package/src/{components → containers/SchemaContainer}/SchemaContainer.tsx +22 -18
- package/src/containers/SchemaContainer/index.ts +5 -0
- package/src/containers/SmallPresenceLive/index.ts +5 -0
- package/src/{components → containers}/SpacePresence/SpacePresence.stories.tsx +2 -3
- package/src/{components → containers}/SpacePresence/SpacePresence.tsx +14 -25
- package/src/containers/SpacePresence/index.ts +6 -0
- package/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.tsx +10 -10
- package/src/containers/SpaceRenamePopover/index.ts +5 -0
- package/src/{components/SpaceSettings → containers/SpaceSettingsContainer}/SpaceSettingsContainer.stories.tsx +12 -12
- package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +216 -0
- package/src/containers/SpaceSettingsContainer/index.ts +5 -0
- package/src/{components → containers}/SyncStatus/SyncStatus.stories.tsx +2 -3
- package/src/{components → containers}/SyncStatus/SyncStatus.tsx +38 -44
- package/src/containers/SyncStatus/index.ts +5 -0
- package/src/{components → containers/ViewEditor}/ViewEditor.tsx +15 -14
- package/src/containers/ViewEditor/index.ts +5 -0
- package/src/containers/index.ts +28 -0
- package/src/hooks/index.ts +1 -2
- package/src/hooks/useInputSurfaceLookup.tsx +3 -3
- package/src/hooks/useRelatedObjects.ts +79 -0
- package/src/index.ts +2 -3
- package/src/meta.ts +1 -1
- package/src/operations/add-object.ts +82 -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 +438 -0
- package/src/operations/delete-field.ts +42 -0
- package/src/operations/duplicate-object.ts +30 -0
- package/src/operations/get-share-link.ts +43 -0
- package/src/operations/helpers.ts +10 -0
- package/src/operations/index.ts +31 -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-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 +87 -0
- package/src/operations/rename-object.ts +24 -0
- package/src/operations/rename.ts +22 -0
- package/src/operations/restore-field.ts +36 -0
- package/src/operations/restore-objects.ts +49 -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/translations.ts +252 -203
- package/src/types/Settings.ts +18 -0
- package/src/types/capabilities.ts +11 -10
- package/src/types/events.ts +8 -7
- package/src/types/form.ts +6 -65
- package/src/types/types.ts +38 -555
- package/src/util.ts +79 -0
- package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs +0 -129
- package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs.map +0 -7
- package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs +0 -148
- package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs.map +0 -7
- package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs +0 -142
- package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs.map +0 -7
- package/dist/lib/browser/RecordArticle-W57QE7QV.mjs +0 -107
- package/dist/lib/browser/RecordArticle-W57QE7QV.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs +0 -523
- package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs.map +0 -7
- package/dist/lib/browser/app-graph-serializer-7AT7QMSK.mjs +0 -84
- package/dist/lib/browser/app-graph-serializer-7AT7QMSK.mjs.map +0 -7
- package/dist/lib/browser/chunk-3X2EA2OA.mjs +0 -1898
- package/dist/lib/browser/chunk-3X2EA2OA.mjs.map +0 -7
- package/dist/lib/browser/chunk-4WZUGLQQ.mjs +0 -117
- package/dist/lib/browser/chunk-4WZUGLQQ.mjs.map +0 -7
- package/dist/lib/browser/chunk-ASV6DYFH.mjs +0 -19
- package/dist/lib/browser/chunk-ASV6DYFH.mjs.map +0 -7
- package/dist/lib/browser/chunk-AWVAX26X.mjs +0 -13
- package/dist/lib/browser/chunk-AWVAX26X.mjs.map +0 -7
- package/dist/lib/browser/chunk-CCRSHECL.mjs +0 -714
- package/dist/lib/browser/chunk-CCRSHECL.mjs.map +0 -7
- package/dist/lib/browser/chunk-SUI34XSA.mjs +0 -772
- package/dist/lib/browser/chunk-SUI34XSA.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZT2VPYRM.mjs +0 -234
- package/dist/lib/browser/chunk-ZT2VPYRM.mjs.map +0 -7
- package/dist/lib/browser/identity-created-VCFYLSBB.mjs +0 -23
- package/dist/lib/browser/identity-created-VCFYLSBB.mjs.map +0 -7
- package/dist/lib/browser/operation-resolver-SIRQT36Z.mjs +0 -827
- package/dist/lib/browser/operation-resolver-SIRQT36Z.mjs.map +0 -7
- package/dist/lib/browser/react-root-PI7VTZUZ.mjs +0 -30
- package/dist/lib/browser/react-root-PI7VTZUZ.mjs.map +0 -7
- package/dist/lib/browser/react-surface-BPE7VWI7.mjs +0 -382
- package/dist/lib/browser/react-surface-BPE7VWI7.mjs.map +0 -7
- package/dist/lib/browser/repair-CJG26D52.mjs +0 -50
- package/dist/lib/browser/repair-CJG26D52.mjs.map +0 -7
- package/dist/lib/browser/settings-ZS2AQ73E.mjs +0 -33
- package/dist/lib/browser/settings-ZS2AQ73E.mjs.map +0 -7
- package/dist/lib/browser/spaces-ready-OQDGWUOS.mjs +0 -242
- package/dist/lib/browser/spaces-ready-OQDGWUOS.mjs.map +0 -7
- package/dist/lib/browser/state-7YZQB2KY.mjs +0 -58
- package/dist/lib/browser/state-7YZQB2KY.mjs.map +0 -7
- package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs +0 -130
- package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs +0 -149
- package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs +0 -143
- package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs.map +0 -7
- package/dist/lib/node-esm/RecordArticle-SSV74Z46.mjs +0 -108
- package/dist/lib/node-esm/RecordArticle-SSV74Z46.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs +0 -524
- package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-serializer-WJ2TIQG6.mjs +0 -85
- package/dist/lib/node-esm/app-graph-serializer-WJ2TIQG6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2SW6S2BB.mjs +0 -235
- package/dist/lib/node-esm/chunk-2SW6S2BB.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-7KMYUWSR.mjs +0 -773
- package/dist/lib/node-esm/chunk-7KMYUWSR.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-CVXULIYC.mjs +0 -20
- package/dist/lib/node-esm/chunk-CVXULIYC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-EYS3L2NO.mjs +0 -1899
- package/dist/lib/node-esm/chunk-EYS3L2NO.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HREWB23G.mjs +0 -15
- package/dist/lib/node-esm/chunk-HREWB23G.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-JOBIWCBC.mjs +0 -118
- package/dist/lib/node-esm/chunk-JOBIWCBC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MPL6NHQX.mjs +0 -715
- package/dist/lib/node-esm/chunk-MPL6NHQX.mjs.map +0 -7
- package/dist/lib/node-esm/identity-created-2SJABVJD.mjs +0 -25
- package/dist/lib/node-esm/identity-created-2SJABVJD.mjs.map +0 -7
- package/dist/lib/node-esm/operation-resolver-ZE3XJL5J.mjs +0 -828
- package/dist/lib/node-esm/operation-resolver-ZE3XJL5J.mjs.map +0 -7
- package/dist/lib/node-esm/react-root-KUXM33JI.mjs +0 -31
- package/dist/lib/node-esm/react-root-KUXM33JI.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-STCQKUZ4.mjs +0 -383
- package/dist/lib/node-esm/react-surface-STCQKUZ4.mjs.map +0 -7
- package/dist/lib/node-esm/repair-G3ZW3VG3.mjs +0 -51
- package/dist/lib/node-esm/repair-G3ZW3VG3.mjs.map +0 -7
- package/dist/lib/node-esm/settings-PVI2VG56.mjs +0 -34
- package/dist/lib/node-esm/settings-PVI2VG56.mjs.map +0 -7
- package/dist/lib/node-esm/spaces-ready-R744OHQG.mjs +0 -243
- package/dist/lib/node-esm/spaces-ready-R744OHQG.mjs.map +0 -7
- package/dist/lib/node-esm/state-XE5YGPHM.mjs +0 -59
- package/dist/lib/node-esm/state-XE5YGPHM.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +0 -5
- package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +0 -3
- package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/identity-created/identity-created.d.ts +0 -5
- package/dist/types/src/capabilities/identity-created/identity-created.d.ts.map +0 -1
- package/dist/types/src/capabilities/identity-created/index.d.ts +0 -3
- package/dist/types/src/capabilities/identity-created/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -6
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -9
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-root/index.d.ts +0 -6
- package/dist/types/src/capabilities/react-root/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-root/react-root.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -5
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -8
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/repair/index.d.ts +0 -3
- package/dist/types/src/capabilities/repair/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/repair/repair.d.ts +0 -6
- package/dist/types/src/capabilities/repair/repair.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/index.d.ts +0 -7
- package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/settings.d.ts +0 -9
- package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
- package/dist/types/src/capabilities/spaces-ready/index.d.ts +0 -3
- package/dist/types/src/capabilities/spaces-ready/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts +0 -5
- package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/index.d.ts +0 -13
- package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
- package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
- package/dist/types/src/components/CollectionArticle.d.ts +0 -9
- package/dist/types/src/components/CollectionArticle.d.ts.map +0 -1
- package/dist/types/src/components/CollectionSection.d.ts +0 -5
- package/dist/types/src/components/CollectionSection.d.ts.map +0 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +0 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +0 -1604
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +0 -1
- package/dist/types/src/components/JoinDialog/JoinDialog.d.ts.map +0 -1
- package/dist/types/src/components/JoinDialog/index.d.ts +0 -2
- package/dist/types/src/components/JoinDialog/index.d.ts.map +0 -1
- package/dist/types/src/components/MembersContainer/MembersContainer.d.ts.map +0 -1
- package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +0 -1600
- package/dist/types/src/components/MembersContainer/index.d.ts +0 -2
- package/dist/types/src/components/MembersContainer/index.d.ts.map +0 -1
- package/dist/types/src/components/MenuFooter.d.ts.map +0 -1
- package/dist/types/src/components/ObjectCardStack/ObjectCardStack.d.ts.map +0 -1
- package/dist/types/src/components/ObjectCardStack/ObjectForm.d.ts +0 -9
- package/dist/types/src/components/ObjectCardStack/ObjectForm.d.ts.map +0 -1
- package/dist/types/src/components/ObjectCardStack/index.d.ts +0 -3
- package/dist/types/src/components/ObjectCardStack/index.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts +0 -8
- package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts +0 -1433
- package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetails/ForeignKeys.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts +0 -9
- package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetails/index.d.ts +0 -3
- package/dist/types/src/components/ObjectDetails/index.d.ts.map +0 -1
- package/dist/types/src/components/ObjectRenamePopover/index.d.ts +0 -2
- package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +0 -1
- package/dist/types/src/components/RecordArticle.d.ts +0 -5
- package/dist/types/src/components/RecordArticle.d.ts.map +0 -1
- package/dist/types/src/components/RecordArticle.stories.d.ts +0 -1600
- package/dist/types/src/components/SchemaContainer.d.ts.map +0 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts +0 -8
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +0 -1
- package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts +0 -1430
- package/dist/types/src/components/SpacePresence/index.d.ts +0 -2
- package/dist/types/src/components/SpacePresence/index.d.ts.map +0 -1
- package/dist/types/src/components/SpaceRenamePopover/index.d.ts +0 -2
- package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +0 -1
- 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 -1433
- package/dist/types/src/components/SpaceSettings/index.d.ts +0 -2
- package/dist/types/src/components/SpaceSettings/index.d.ts.map +0 -1
- 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 -1435
- package/dist/types/src/components/ViewEditor.d.ts.map +0 -1
- package/dist/types/src/helpers/index.d.ts +0 -2
- package/dist/types/src/helpers/index.d.ts.map +0 -1
- package/dist/types/src/helpers/query.d.ts +0 -7
- package/dist/types/src/helpers/query.d.ts.map +0 -1
- package/dist/types/src/helpers/query.test.d.ts +0 -2
- package/dist/types/src/helpers/query.test.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-serializer/index.ts +0 -7
- package/src/capabilities/identity-created/identity-created.ts +0 -29
- package/src/capabilities/identity-created/index.ts +0 -7
- package/src/capabilities/operation-resolver/index.ts +0 -7
- package/src/capabilities/operation-resolver/operation-resolver.ts +0 -760
- package/src/capabilities/react-root/index.ts +0 -7
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/repair/index.ts +0 -7
- package/src/capabilities/repair/repair.ts +0 -67
- package/src/capabilities/settings/index.ts +0 -7
- package/src/capabilities/spaces-ready/index.ts +0 -7
- package/src/capabilities/state/index.ts +0 -7
- package/src/components/CollectionArticle.tsx +0 -158
- package/src/components/CollectionSection.tsx +0 -22
- package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +0 -91
- package/src/components/CreateDialog/CreateObjectDialog.tsx +0 -144
- package/src/components/MembersContainer/MembersContainer.stories.tsx +0 -56
- package/src/components/MembersContainer/index.ts +0 -5
- package/src/components/ObjectCardStack/ObjectCardStack.tsx +0 -67
- package/src/components/ObjectCardStack/ObjectForm.tsx +0 -97
- package/src/components/ObjectCardStack/index.ts +0 -7
- package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +0 -63
- package/src/components/ObjectDetails/BaseObjectSettings.tsx +0 -122
- package/src/components/ObjectDetails/ObjectDetails.tsx +0 -32
- package/src/components/ObjectDetails/index.ts +0 -7
- package/src/components/ObjectRenamePopover/index.ts +0 -5
- package/src/components/RecordArticle.stories.tsx +0 -115
- package/src/components/RecordArticle.tsx +0 -122
- package/src/components/SpacePluginSettings.tsx +0 -62
- package/src/components/SpacePresence/index.ts +0 -5
- package/src/components/SpaceRenamePopover/index.ts +0 -5
- package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +0 -220
- package/src/components/SpaceSettings/index.ts +0 -5
- package/src/helpers/index.ts +0 -5
- package/src/helpers/query.test.ts +0 -24
- package/src/helpers/query.ts +0 -153
- package/src/hooks/useActiveSpace.ts +0 -23
- package/src/hooks/useTypeOptions.ts +0 -25
- package/src/util.tsx +0 -779
- /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
- /package/dist/types/src/components/{ObjectDetails → ForeignKeys}/ForeignKeys.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}/MembersContainer/MembersContainer.d.ts +0 -0
- /package/dist/types/src/{components → containers/MenuFooter}/MenuFooter.d.ts +0 -0
- /package/dist/types/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.d.ts +0 -0
- /package/dist/types/src/{components → containers/SchemaContainer}/SchemaContainer.d.ts +0 -0
- /package/dist/types/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.d.ts +0 -0
- /package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts +0 -0
package/src/util.ts
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2023 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { type Space, SpaceState } from '@dxos/client/echo';
|
|
6
|
+
import { type Database, Obj, Type } from '@dxos/echo';
|
|
7
|
+
import { invariant } from '@dxos/invariant';
|
|
8
|
+
import { Expando } from '@dxos/schema';
|
|
9
|
+
import { type Label } from '@dxos/ui-types';
|
|
10
|
+
|
|
11
|
+
import { meta } from '#meta';
|
|
12
|
+
|
|
13
|
+
//
|
|
14
|
+
// Constants
|
|
15
|
+
//
|
|
16
|
+
|
|
17
|
+
const PERSONAL_SPACE_LABEL: Label = ['personal-space.label', { ns: meta.id }];
|
|
18
|
+
const UNNAMED_SPACE_LABEL: Label = ['unnamed-space.label', { ns: meta.id }];
|
|
19
|
+
|
|
20
|
+
export const SPACES = `${meta.id}-spaces`;
|
|
21
|
+
export { SHARED } from './types';
|
|
22
|
+
|
|
23
|
+
//
|
|
24
|
+
// Helpers
|
|
25
|
+
//
|
|
26
|
+
|
|
27
|
+
/** Returns the display label for a space (name, namesCache entry, or fallback). */
|
|
28
|
+
export const getSpaceDisplayName = (
|
|
29
|
+
space: Space,
|
|
30
|
+
{ personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},
|
|
31
|
+
): Label => {
|
|
32
|
+
return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0
|
|
33
|
+
? space.properties.name!
|
|
34
|
+
: namesCache[space.id]
|
|
35
|
+
? namesCache[space.id]
|
|
36
|
+
: personal
|
|
37
|
+
? PERSONAL_SPACE_LABEL
|
|
38
|
+
: UNNAMED_SPACE_LABEL;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
//
|
|
42
|
+
// Deprecated
|
|
43
|
+
//
|
|
44
|
+
|
|
45
|
+
/** @deprecated This is a temporary solution. */
|
|
46
|
+
export const getNestedObjects = async (
|
|
47
|
+
object: Obj.Unknown,
|
|
48
|
+
resolve: (typename: string) => Record<string, any>,
|
|
49
|
+
): Promise<Obj.Unknown[]> => {
|
|
50
|
+
const type = Obj.getTypename(object);
|
|
51
|
+
if (!type) {
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const metadata = resolve(type);
|
|
56
|
+
const loadReferences = metadata?.loadReferences;
|
|
57
|
+
if (typeof loadReferences !== 'function') {
|
|
58
|
+
return [];
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const objects: Obj.Unknown[] = await loadReferences(object);
|
|
62
|
+
const nested = await Promise.all(objects.map((object) => getNestedObjects(object, resolve)));
|
|
63
|
+
return [...objects, ...nested.flat()];
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
/** @deprecated Workaround for ECHO not supporting clone. */
|
|
67
|
+
export const cloneObject = async (
|
|
68
|
+
object: Obj.Unknown,
|
|
69
|
+
resolve: (typename: string) => Record<string, any>,
|
|
70
|
+
newDb: Database.Database,
|
|
71
|
+
): Promise<Obj.Unknown> => {
|
|
72
|
+
const schema = Obj.getSchema(object);
|
|
73
|
+
const typename = schema ? (Type.getTypename(schema) ?? Expando.Expando.typename) : Expando.Expando.typename;
|
|
74
|
+
const metadata = resolve(typename);
|
|
75
|
+
const serializer = metadata.serializer;
|
|
76
|
+
invariant(serializer, `No serializer for type: ${typename}`);
|
|
77
|
+
const content = await serializer.serialize({ object });
|
|
78
|
+
return serializer.deserialize({ content, db: newDb, newId: true });
|
|
79
|
+
};
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-HSMQFM57.mjs";
|
|
4
|
-
|
|
5
|
-
// src/components/CollectionArticle.tsx
|
|
6
|
-
import React, { useMemo } from "react";
|
|
7
|
-
import { Common } from "@dxos/app-framework";
|
|
8
|
-
import { useAppGraph, useOperationInvoker } from "@dxos/app-framework/react";
|
|
9
|
-
import { Filter, Obj } from "@dxos/echo";
|
|
10
|
-
import { Graph, Node, useActionRunner, useConnections } from "@dxos/plugin-graph";
|
|
11
|
-
import { useClient } from "@dxos/react-client";
|
|
12
|
-
import { getSpace, useQuery } from "@dxos/react-client/echo";
|
|
13
|
-
import { Toolbar, toLocalizedString, useTranslation } from "@dxos/react-ui";
|
|
14
|
-
import { Card, Layout, Mosaic } from "@dxos/react-ui-mosaic";
|
|
15
|
-
import { SearchList, useSearchListResults } from "@dxos/react-ui-searchlist";
|
|
16
|
-
import { Collection } from "@dxos/schema";
|
|
17
|
-
var CollectionArticle = ({ subject }) => {
|
|
18
|
-
const { t } = useTranslation(meta.id);
|
|
19
|
-
const { items, handleSearch } = useCollectionItems(subject);
|
|
20
|
-
return /* @__PURE__ */ React.createElement(Layout.Main, {
|
|
21
|
-
toolbar: true
|
|
22
|
-
}, /* @__PURE__ */ React.createElement(SearchList.Root, {
|
|
23
|
-
onSearch: handleSearch
|
|
24
|
-
}, /* @__PURE__ */ React.createElement(Toolbar.Root, null, /* @__PURE__ */ React.createElement(SearchList.Input, {
|
|
25
|
-
placeholder: t("search placeholder")
|
|
26
|
-
})), /* @__PURE__ */ React.createElement(SearchList.Content, null, /* @__PURE__ */ React.createElement(Mosaic.Container, {
|
|
27
|
-
asChild: true
|
|
28
|
-
}, /* @__PURE__ */ React.createElement(Mosaic.Viewport, {
|
|
29
|
-
padding: true
|
|
30
|
-
}, /* @__PURE__ */ React.createElement(Mosaic.Stack, {
|
|
31
|
-
items,
|
|
32
|
-
getId: (node) => node.id,
|
|
33
|
-
Tile: NodeTile
|
|
34
|
-
}))))));
|
|
35
|
-
};
|
|
36
|
-
var NodeTile = ({ data: node }) => {
|
|
37
|
-
const { t } = useTranslation(meta.id);
|
|
38
|
-
const { graph } = useAppGraph();
|
|
39
|
-
const { invokeSync } = useOperationInvoker();
|
|
40
|
-
const runAction = useActionRunner();
|
|
41
|
-
const label = toLocalizedString(node.properties.label, t);
|
|
42
|
-
const icon = node.properties.icon ?? "ph--placeholder--regular";
|
|
43
|
-
const handleClick = () => {
|
|
44
|
-
if (Node.isAction(node)) {
|
|
45
|
-
const [parent] = Graph.getConnections(graph, node.id, "inbound");
|
|
46
|
-
if (parent) {
|
|
47
|
-
void runAction(node, {
|
|
48
|
-
parent
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
} else {
|
|
52
|
-
invokeSync(Common.LayoutOperation.Open, {
|
|
53
|
-
subject: [
|
|
54
|
-
node.id
|
|
55
|
-
]
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
return /* @__PURE__ */ React.createElement(Card.Root, {
|
|
60
|
-
fullWidth: true
|
|
61
|
-
}, /* @__PURE__ */ React.createElement(Card.Toolbar, null, /* @__PURE__ */ React.createElement(Card.ToolbarIconButton, {
|
|
62
|
-
variant: "ghost",
|
|
63
|
-
label,
|
|
64
|
-
icon
|
|
65
|
-
}), /* @__PURE__ */ React.createElement(Card.Title, {
|
|
66
|
-
onClick: handleClick
|
|
67
|
-
}, label), /* @__PURE__ */ React.createElement(Card.Menu, null)));
|
|
68
|
-
};
|
|
69
|
-
var CollectionArticle_default = CollectionArticle;
|
|
70
|
-
var useRegularCollectionItems = (collection) => {
|
|
71
|
-
const { graph } = useAppGraph();
|
|
72
|
-
const collectionId = Obj.getDXN(collection).toString();
|
|
73
|
-
const children = useConnections(graph, collectionId, "outbound");
|
|
74
|
-
return useMemo(() => children.filter((node) => {
|
|
75
|
-
if (Obj.isObject(node.data)) {
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
return Node.isAction(node) && node.properties.disposition === "item";
|
|
79
|
-
}), [
|
|
80
|
-
children
|
|
81
|
-
]);
|
|
82
|
-
};
|
|
83
|
-
var useManagedCollectionItems = (collection) => {
|
|
84
|
-
const client = useClient();
|
|
85
|
-
const space = getSpace(collection);
|
|
86
|
-
const schema = useMemo(() => client.graph.schemaRegistry.query({
|
|
87
|
-
typename: collection.key,
|
|
88
|
-
location: [
|
|
89
|
-
"runtime"
|
|
90
|
-
]
|
|
91
|
-
}).runSync()[0], [
|
|
92
|
-
client,
|
|
93
|
-
collection
|
|
94
|
-
]);
|
|
95
|
-
const objects = useQuery(space?.db, schema ? Filter.type(schema) : Filter.nothing());
|
|
96
|
-
return useMemo(() => objects.map((obj) => ({
|
|
97
|
-
id: Obj.getDXN(obj).toString(),
|
|
98
|
-
type: "managed-object",
|
|
99
|
-
data: obj,
|
|
100
|
-
properties: {
|
|
101
|
-
label: Obj.getLabel(obj) ?? obj.id,
|
|
102
|
-
icon: "ph--placeholder--regular"
|
|
103
|
-
}
|
|
104
|
-
})), [
|
|
105
|
-
objects
|
|
106
|
-
]);
|
|
107
|
-
};
|
|
108
|
-
var useCollectionItems = (collection) => {
|
|
109
|
-
const isManaged = Obj.instanceOf(Collection.Managed, collection);
|
|
110
|
-
const regularItems = useRegularCollectionItems(collection);
|
|
111
|
-
const managedItems = useManagedCollectionItems(collection);
|
|
112
|
-
const items = isManaged ? managedItems : regularItems;
|
|
113
|
-
const { results, handleSearch } = useSearchListResults({
|
|
114
|
-
items,
|
|
115
|
-
extract: (node) => {
|
|
116
|
-
const label = node.properties.label;
|
|
117
|
-
return typeof label === "string" ? label : label?.en ?? node.id;
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
return {
|
|
121
|
-
items: results,
|
|
122
|
-
handleSearch
|
|
123
|
-
};
|
|
124
|
-
};
|
|
125
|
-
export {
|
|
126
|
-
CollectionArticle,
|
|
127
|
-
CollectionArticle_default as default
|
|
128
|
-
};
|
|
129
|
-
//# sourceMappingURL=CollectionArticle-XPNA6EHZ.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/CollectionArticle.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useMemo } from 'react';\n\nimport { Common } from '@dxos/app-framework';\nimport { type SurfaceComponentProps, useAppGraph, useOperationInvoker } from '@dxos/app-framework/react';\nimport { Filter, Obj } from '@dxos/echo';\nimport { Graph, Node, useActionRunner, useConnections } from '@dxos/plugin-graph';\nimport { useClient } from '@dxos/react-client';\nimport { getSpace, useQuery } from '@dxos/react-client/echo';\nimport { Toolbar, toLocalizedString, useTranslation } from '@dxos/react-ui';\nimport { Card, Layout, Mosaic, type StackTileComponent } from '@dxos/react-ui-mosaic';\nimport { SearchList, useSearchListResults } from '@dxos/react-ui-searchlist';\nimport { Collection } from '@dxos/schema';\n\nimport { meta } from '../meta';\n\n/**\n *\n */\nexport const CollectionArticle = ({ subject }: SurfaceComponentProps<Collection.Collection | Collection.Managed>) => {\n const { t } = useTranslation(meta.id);\n const { items, handleSearch } = useCollectionItems(subject);\n\n return (\n <Layout.Main toolbar>\n <SearchList.Root onSearch={handleSearch}>\n <Toolbar.Root>\n <SearchList.Input placeholder={t('search placeholder')} />\n </Toolbar.Root>\n <SearchList.Content>\n <Mosaic.Container asChild>\n <Mosaic.Viewport padding>\n <Mosaic.Stack items={items} getId={(node) => node.id} Tile={NodeTile} />\n </Mosaic.Viewport>\n </Mosaic.Container>\n </SearchList.Content>\n </SearchList.Root>\n </Layout.Main>\n );\n};\n\nconst NodeTile: StackTileComponent<Node.Node> = ({ data: node }) => {\n const { t } = useTranslation(meta.id);\n const { graph } = useAppGraph();\n const { invokeSync } = useOperationInvoker();\n const runAction = useActionRunner();\n\n const label = toLocalizedString(node.properties.label, t);\n const icon = node.properties.icon ?? 'ph--placeholder--regular';\n\n const handleClick = () => {\n if (Node.isAction(node)) {\n // Run action if this is an action node.\n const [parent] = Graph.getConnections(graph, node.id, 'inbound');\n if (parent) {\n void runAction(node, { parent });\n }\n } else {\n // Navigate to the node.\n invokeSync(Common.LayoutOperation.Open, { subject: [node.id] });\n }\n };\n\n return (\n <Card.Root fullWidth>\n <Card.Toolbar>\n <Card.ToolbarIconButton variant='ghost' label={label} icon={icon} />\n <Card.Title onClick={handleClick}>{label}</Card.Title>\n <Card.Menu />\n </Card.Toolbar>\n </Card.Root>\n );\n};\n\nexport default CollectionArticle;\n\n/**\n * Hook to get items from a regular collection using graph connections.\n */\nconst useRegularCollectionItems = (collection: Collection.Collection) => {\n const { graph } = useAppGraph();\n const collectionId = Obj.getDXN(collection).toString();\n const children = useConnections(graph, collectionId, 'outbound');\n\n // Filter children to those which are objects or actions with disposition 'item'.\n return useMemo(\n () =>\n children.filter((node) => {\n // Include regular objects.\n if (Obj.isObject(node.data)) {\n return true;\n }\n // Include actions with disposition 'item'.\n return Node.isAction(node) && node.properties.disposition === 'item';\n }),\n [children],\n );\n};\n\n/**\n * Hook to get items from a managed collection by querying the space.\n */\nconst useManagedCollectionItems = (collection: Collection.Managed) => {\n const client = useClient();\n const space = getSpace(collection);\n\n const schema = useMemo(\n () => client.graph.schemaRegistry.query({ typename: collection.key, location: ['runtime'] }).runSync()[0],\n [client, collection],\n );\n\n const objects = useQuery(space?.db, schema ? Filter.type(schema) : Filter.nothing());\n\n // Convert objects to node-like items for consistent rendering.\n return useMemo(\n () =>\n objects.map(\n (obj) =>\n ({\n id: Obj.getDXN(obj).toString(),\n type: 'managed-object',\n data: obj,\n properties: {\n label: Obj.getLabel(obj) ?? obj.id,\n icon: 'ph--placeholder--regular',\n },\n }) as Node.Node,\n ),\n [objects],\n );\n};\n\n/**\n * Combined hook to get collection items with search/filter support.\n */\nconst useCollectionItems = (collection: Collection.Collection | Collection.Managed) => {\n const isManaged = Obj.instanceOf(Collection.Managed, collection);\n\n // Call both hooks unconditionally to satisfy React's rules of hooks.\n const regularItems = useRegularCollectionItems(collection as Collection.Collection);\n const managedItems = useManagedCollectionItems(collection as Collection.Managed);\n\n const items = isManaged ? managedItems : regularItems;\n\n // Use searchlist results for filtering.\n const { results, handleSearch } = useSearchListResults({\n items,\n extract: (node) => {\n const label = node.properties.label;\n return typeof label === 'string' ? label : (label?.en ?? node.id);\n },\n });\n\n return { items: results, handleSearch };\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "useMemo", "Common", "useAppGraph", "useOperationInvoker", "Filter", "Obj", "Graph", "Node", "useActionRunner", "useConnections", "useClient", "getSpace", "useQuery", "Toolbar", "toLocalizedString", "useTranslation", "Card", "Layout", "Mosaic", "SearchList", "useSearchListResults", "Collection", "CollectionArticle", "subject", "t", "useTranslation", "meta", "id", "items", "handleSearch", "useCollectionItems", "Layout", "Main", "toolbar", "SearchList", "Root", "onSearch", "Toolbar", "Input", "placeholder", "Content", "Mosaic", "Container", "asChild", "Viewport", "padding", "Stack", "getId", "node", "Tile", "NodeTile", "data", "graph", "useAppGraph", "invokeSync", "useOperationInvoker", "runAction", "useActionRunner", "label", "toLocalizedString", "properties", "icon", "handleClick", "Node", "isAction", "parent", "Graph", "getConnections", "Common", "LayoutOperation", "Open", "Card", "fullWidth", "ToolbarIconButton", "variant", "Title", "onClick", "Menu", "useRegularCollectionItems", "collection", "collectionId", "Obj", "getDXN", "toString", "children", "useConnections", "useMemo", "filter", "isObject", "disposition", "useManagedCollectionItems", "client", "useClient", "space", "getSpace", "schema", "schemaRegistry", "query", "typename", "key", "location", "runSync", "objects", "useQuery", "db", "Filter", "type", "nothing", "map", "obj", "getLabel", "isManaged", "instanceOf", "Collection", "Managed", "regularItems", "managedItems", "results", "useSearchListResults", "extract", "en"]
|
|
7
|
-
}
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-HSMQFM57.mjs";
|
|
4
|
-
|
|
5
|
-
// src/components/ObjectCardStack/ObjectCardStack.tsx
|
|
6
|
-
import React2, { forwardRef } from "react";
|
|
7
|
-
import { Obj as Obj2 } from "@dxos/echo";
|
|
8
|
-
import { Filter, useQuery, useSchema } from "@dxos/react-client/echo";
|
|
9
|
-
import { Callout, Toolbar, useTranslation } from "@dxos/react-ui";
|
|
10
|
-
import { useSelected } from "@dxos/react-ui-attention";
|
|
11
|
-
import { Card } from "@dxos/react-ui-mosaic";
|
|
12
|
-
import { Layout } from "@dxos/react-ui-mosaic";
|
|
13
|
-
import { CardStack, StackItem } from "@dxos/react-ui-stack";
|
|
14
|
-
import { getTypenameFromQuery } from "@dxos/schema";
|
|
15
|
-
import { isNonNullable as isNonNullable2 } from "@dxos/util";
|
|
16
|
-
|
|
17
|
-
// src/components/ObjectCardStack/ObjectForm.tsx
|
|
18
|
-
import * as Schema from "effect/Schema";
|
|
19
|
-
import React, { useCallback, useMemo } from "react";
|
|
20
|
-
import { DXN, Obj, Tag, Type } from "@dxos/echo";
|
|
21
|
-
import { splitJsonPath } from "@dxos/echo/internal";
|
|
22
|
-
import { invariant } from "@dxos/invariant";
|
|
23
|
-
import { Form, omitId } from "@dxos/react-ui-form";
|
|
24
|
-
import { isNonNullable } from "@dxos/util";
|
|
25
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ObjectCardStack/ObjectForm.tsx";
|
|
26
|
-
var ObjectForm = ({ object, schema }) => {
|
|
27
|
-
const db = Obj.getDatabase(object);
|
|
28
|
-
const formSchema = useMemo(() => Schema.Struct({
|
|
29
|
-
tags: Schema.Array(Type.Ref(Tag.Tag)).pipe(Schema.optional)
|
|
30
|
-
}).pipe(Schema.extend(omitId(schema))), [
|
|
31
|
-
schema
|
|
32
|
-
]);
|
|
33
|
-
const meta2 = Obj.getMeta(object);
|
|
34
|
-
const tags = (meta2.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);
|
|
35
|
-
const values = useMemo(() => ({
|
|
36
|
-
tags,
|
|
37
|
-
...object
|
|
38
|
-
}), [
|
|
39
|
-
object,
|
|
40
|
-
tags
|
|
41
|
-
]);
|
|
42
|
-
const handleCreate = useCallback((schema2, values2) => {
|
|
43
|
-
invariant(db, void 0, {
|
|
44
|
-
F: __dxlog_file,
|
|
45
|
-
L: 37,
|
|
46
|
-
S: void 0,
|
|
47
|
-
A: [
|
|
48
|
-
"db",
|
|
49
|
-
""
|
|
50
|
-
]
|
|
51
|
-
});
|
|
52
|
-
invariant(Type.isObjectSchema(schema2), void 0, {
|
|
53
|
-
F: __dxlog_file,
|
|
54
|
-
L: 38,
|
|
55
|
-
S: void 0,
|
|
56
|
-
A: [
|
|
57
|
-
"Type.isObjectSchema(schema)",
|
|
58
|
-
""
|
|
59
|
-
]
|
|
60
|
-
});
|
|
61
|
-
const newObject = db.add(Obj.make(schema2, values2));
|
|
62
|
-
if (Obj.instanceOf(Tag.Tag, newObject)) {
|
|
63
|
-
Obj.change(object, (obj) => {
|
|
64
|
-
Obj.getMeta(obj).tags = [
|
|
65
|
-
...Obj.getMeta(obj).tags ?? [],
|
|
66
|
-
Obj.getDXN(newObject).toString()
|
|
67
|
-
];
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
}, []);
|
|
71
|
-
const handleChange = useCallback(({ tags: tags2, ...values2 }, { isValid, changed }) => {
|
|
72
|
-
if (!isValid) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
const changedPaths = Object.keys(changed).filter((path) => changed[path]);
|
|
76
|
-
const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === "tags");
|
|
77
|
-
if (hasTagsChange) {
|
|
78
|
-
Obj.change(object, (obj) => {
|
|
79
|
-
Obj.getMeta(obj).tags = tags2?.map((tag) => tag.dxn.toString()) ?? [];
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== "tags");
|
|
83
|
-
if (nonTagPaths.length > 0) {
|
|
84
|
-
Obj.change(object, () => {
|
|
85
|
-
for (const path of nonTagPaths) {
|
|
86
|
-
const parts = splitJsonPath(path);
|
|
87
|
-
const value = Obj.getValue(values2, parts);
|
|
88
|
-
Obj.setValue(object, parts, value);
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
}, [
|
|
93
|
-
object
|
|
94
|
-
]);
|
|
95
|
-
return /* @__PURE__ */ React.createElement(Form.Root, {
|
|
96
|
-
schema: omitId(formSchema),
|
|
97
|
-
values,
|
|
98
|
-
createOptionIcon: "ph--plus--regular",
|
|
99
|
-
createOptionLabel: [
|
|
100
|
-
"add tag label",
|
|
101
|
-
{
|
|
102
|
-
ns: meta.id
|
|
103
|
-
}
|
|
104
|
-
],
|
|
105
|
-
createInitialValuePath: "label",
|
|
106
|
-
db,
|
|
107
|
-
onValuesChanged: handleChange,
|
|
108
|
-
onCreate: handleCreate
|
|
109
|
-
}, /* @__PURE__ */ React.createElement(Form.Viewport, null, /* @__PURE__ */ React.createElement(Form.Content, null, /* @__PURE__ */ React.createElement(Form.FieldSet, null))));
|
|
110
|
-
};
|
|
111
|
-
|
|
112
|
-
// src/components/ObjectCardStack/ObjectCardStack.tsx
|
|
113
|
-
var ObjectCardStack = /* @__PURE__ */ forwardRef(({ objectId, view }, forwardedRef) => {
|
|
114
|
-
const { t } = useTranslation(meta.id);
|
|
115
|
-
const db = Obj2.getDatabase(view);
|
|
116
|
-
const typename = view.query ? getTypenameFromQuery(view.query.ast) : void 0;
|
|
117
|
-
const schema = useSchema(db, typename);
|
|
118
|
-
const queriedObjects = useQuery(db, schema ? Filter.type(schema) : Filter.nothing());
|
|
119
|
-
const selectedRows = useSelected(objectId, "multi");
|
|
120
|
-
const selectedObjects = selectedRows.map((id) => queriedObjects.find((obj) => obj.id === id)).filter(isNonNullable2);
|
|
121
|
-
if (!schema) {
|
|
122
|
-
return null;
|
|
123
|
-
}
|
|
124
|
-
return /* @__PURE__ */ React2.createElement(Layout.Main, {
|
|
125
|
-
toolbar: true,
|
|
126
|
-
ref: forwardedRef
|
|
127
|
-
}, /* @__PURE__ */ React2.createElement(Toolbar.Root, null), /* @__PURE__ */ React2.createElement(CardStack.Root, {
|
|
128
|
-
asChild: true
|
|
129
|
-
}, /* @__PURE__ */ React2.createElement(CardStack.Content, null, /* @__PURE__ */ React2.createElement(CardStack.Stack, {
|
|
130
|
-
id: objectId,
|
|
131
|
-
itemsCount: selectedObjects.length
|
|
132
|
-
}, selectedObjects.length === 0 && /* @__PURE__ */ React2.createElement(CardStack.Item, null, /* @__PURE__ */ React2.createElement(Callout.Root, null, /* @__PURE__ */ React2.createElement(Callout.Title, null, t("row details no selection label")))), selectedObjects.map((object) => /* @__PURE__ */ React2.createElement(CardStack.Item, {
|
|
133
|
-
key: object.id,
|
|
134
|
-
asChild: true
|
|
135
|
-
}, /* @__PURE__ */ React2.createElement(StackItem.Root, {
|
|
136
|
-
item: object
|
|
137
|
-
}, /* @__PURE__ */ React2.createElement(Card.Root, null, /* @__PURE__ */ React2.createElement(ObjectForm, {
|
|
138
|
-
object,
|
|
139
|
-
schema
|
|
140
|
-
})))))))));
|
|
141
|
-
});
|
|
142
|
-
|
|
143
|
-
// src/components/ObjectCardStack/index.ts
|
|
144
|
-
var ObjectCardStack_default = ObjectCardStack;
|
|
145
|
-
export {
|
|
146
|
-
ObjectCardStack_default as default
|
|
147
|
-
};
|
|
148
|
-
//# sourceMappingURL=ObjectCardStack-TWHN6C2Y.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/ObjectCardStack/ObjectCardStack.tsx", "../../../src/components/ObjectCardStack/ObjectForm.tsx", "../../../src/components/ObjectCardStack/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { forwardRef } from 'react';\n\nimport { Obj } from '@dxos/echo';\nimport { Filter, useQuery, useSchema } from '@dxos/react-client/echo';\nimport { Callout, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { useSelected } from '@dxos/react-ui-attention';\nimport { Card } from '@dxos/react-ui-mosaic';\nimport { Layout } from '@dxos/react-ui-mosaic';\nimport { CardStack, StackItem } from '@dxos/react-ui-stack';\nimport { type View, getTypenameFromQuery } from '@dxos/schema';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta } from '../../meta';\n\nimport { ObjectForm } from './ObjectForm';\n\nexport type ObjectCardStackProps = {\n view: View.View;\n objectId: string;\n};\n\nexport const ObjectCardStack = forwardRef<HTMLDivElement, ObjectCardStackProps>(({ objectId, view }, forwardedRef) => {\n const { t } = useTranslation(meta.id);\n const db = Obj.getDatabase(view);\n const typename = view.query ? getTypenameFromQuery(view.query.ast) : undefined;\n const schema = useSchema(db, typename);\n\n const queriedObjects = useQuery(db, schema ? Filter.type(schema) : Filter.nothing());\n const selectedRows = useSelected(objectId, 'multi');\n const selectedObjects = selectedRows.map((id) => queriedObjects.find((obj) => obj.id === id)).filter(isNonNullable);\n\n if (!schema) {\n return null;\n }\n\n return (\n <Layout.Main toolbar ref={forwardedRef}>\n <Toolbar.Root></Toolbar.Root>\n <CardStack.Root asChild>\n <CardStack.Content>\n <CardStack.Stack id={objectId} itemsCount={selectedObjects.length}>\n {selectedObjects.length === 0 && (\n <CardStack.Item>\n <Callout.Root>\n <Callout.Title>{t('row details no selection label')}</Callout.Title>\n </Callout.Root>\n </CardStack.Item>\n )}\n {selectedObjects.map((object) => (\n <CardStack.Item key={object.id} asChild>\n <StackItem.Root item={object}>\n <Card.Root>\n <ObjectForm object={object} schema={schema} />\n </Card.Root>\n </StackItem.Root>\n </CardStack.Item>\n ))}\n </CardStack.Stack>\n </CardStack.Content>\n </CardStack.Root>\n </Layout.Main>\n );\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { DXN, Obj, type Ref, Tag, Type } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta as pluginMeta } from '../../meta';\n\nexport type ObjectFormProps = {\n schema: Schema.Schema.AnyNoContext;\n object: Obj.Unknown;\n};\n\nexport const ObjectForm = ({ object, schema }: ObjectFormProps) => {\n const db = Obj.getDatabase(object);\n\n const formSchema = useMemo(\n () =>\n Schema.Struct({\n tags: Schema.Array(Type.Ref(Tag.Tag)).pipe(Schema.optional),\n }).pipe(Schema.extend(omitId(schema))),\n [schema],\n );\n\n const meta = Obj.getMeta(object);\n const tags = (meta.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);\n const values = useMemo(() => ({ tags, ...object }), [object, tags]);\n\n const handleCreate = useCallback((schema: Type.Entity.Any, values: any) => {\n invariant(db);\n invariant(Type.isObjectSchema(schema));\n const newObject = db.add(Obj.make(schema, values));\n if (Obj.instanceOf(Tag.Tag, newObject)) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = [...(Obj.getMeta(obj).tags ?? []), Obj.getDXN(newObject).toString()];\n });\n }\n }, []);\n\n // TODO(wittjosiah): Use FormRootProps type.\n const handleChange = useCallback(\n ({ tags, ...values }: any, { isValid, changed }: { isValid: boolean; changed: Record<JsonPath, boolean> }) => {\n if (!isValid) {\n return;\n }\n\n const changedPaths = Object.keys(changed).filter((path) => changed[path as JsonPath]) as JsonPath[];\n\n // Handle tags separately using Obj.change.\n const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === 'tags');\n if (hasTagsChange) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = tags?.map((tag: Ref.Ref<Tag.Tag>) => tag.dxn.toString()) ?? [];\n });\n }\n\n // Handle other property changes.\n const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== 'tags');\n if (nonTagPaths.length > 0) {\n Obj.change(object, () => {\n for (const path of nonTagPaths) {\n const parts = splitJsonPath(path);\n const value = Obj.getValue(values, parts);\n Obj.setValue(object, parts, value);\n }\n });\n }\n },\n [object],\n );\n\n return (\n <Form.Root\n schema={omitId(formSchema)}\n values={values}\n createOptionIcon='ph--plus--regular'\n createOptionLabel={['add tag label', { ns: pluginMeta.id }]}\n createInitialValuePath='label'\n db={db}\n onValuesChanged={handleChange}\n onCreate={handleCreate}\n >\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { ObjectCardStack } from './ObjectCardStack';\n\nexport default ObjectCardStack;\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "forwardRef", "Obj", "Filter", "useQuery", "useSchema", "Callout", "Toolbar", "useTranslation", "useSelected", "Card", "Layout", "CardStack", "StackItem", "getTypenameFromQuery", "isNonNullable", "Schema", "React", "useCallback", "useMemo", "DXN", "Obj", "Tag", "Type", "splitJsonPath", "invariant", "Form", "omitId", "isNonNullable", "ObjectForm", "object", "schema", "db", "Obj", "getDatabase", "formSchema", "useMemo", "Struct", "tags", "Array", "Type", "Ref", "Tag", "pipe", "optional", "extend", "omitId", "meta", "getMeta", "map", "tag", "makeRef", "DXN", "parse", "filter", "isNonNullable", "values", "handleCreate", "useCallback", "invariant", "isObjectSchema", "newObject", "add", "make", "instanceOf", "change", "obj", "getDXN", "toString", "handleChange", "isValid", "changed", "changedPaths", "Object", "keys", "path", "hasTagsChange", "some", "splitJsonPath", "dxn", "nonTagPaths", "length", "parts", "value", "getValue", "setValue", "Form", "Root", "createOptionIcon", "createOptionLabel", "ns", "pluginMeta", "id", "createInitialValuePath", "onValuesChanged", "onCreate", "Viewport", "Content", "FieldSet", "ObjectCardStack", "forwardRef", "objectId", "view", "forwardedRef", "t", "useTranslation", "meta", "id", "db", "Obj", "getDatabase", "typename", "query", "getTypenameFromQuery", "ast", "undefined", "schema", "useSchema", "queriedObjects", "useQuery", "Filter", "type", "nothing", "selectedRows", "useSelected", "selectedObjects", "map", "find", "obj", "filter", "isNonNullable", "React", "Layout", "Main", "toolbar", "ref", "Toolbar", "Root", "CardStack", "asChild", "Content", "Stack", "itemsCount", "length", "Item", "Callout", "Title", "object", "key", "StackItem", "item", "Card", "ObjectForm", "ObjectCardStack"]
|
|
7
|
-
}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
meta
|
|
3
|
-
} from "./chunk-HSMQFM57.mjs";
|
|
4
|
-
|
|
5
|
-
// src/components/ObjectDetails/ObjectDetails.tsx
|
|
6
|
-
import React2, { forwardRef, useMemo as useMemo2 } from "react";
|
|
7
|
-
import { Surface } from "@dxos/app-framework/react";
|
|
8
|
-
import { Toolbar } from "@dxos/react-ui";
|
|
9
|
-
import { Layout } from "@dxos/react-ui-mosaic";
|
|
10
|
-
|
|
11
|
-
// src/components/ObjectDetails/BaseObjectSettings.tsx
|
|
12
|
-
import * as Function from "effect/Function";
|
|
13
|
-
import * as Option from "effect/Option";
|
|
14
|
-
import * as Schema from "effect/Schema";
|
|
15
|
-
import React, { useCallback, useMemo } from "react";
|
|
16
|
-
import { DXN, Obj, Tag, Type } from "@dxos/echo";
|
|
17
|
-
import { splitJsonPath } from "@dxos/echo/internal";
|
|
18
|
-
import { invariant } from "@dxos/invariant";
|
|
19
|
-
import { Form, omitId } from "@dxos/react-ui-form";
|
|
20
|
-
import { isNonNullable } from "@dxos/util";
|
|
21
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ObjectDetails/BaseObjectSettings.tsx";
|
|
22
|
-
var BaseSchema = Schema.Struct({
|
|
23
|
-
tags: Schema.Array(Type.Ref(Tag.Tag)).pipe(Schema.optional)
|
|
24
|
-
});
|
|
25
|
-
var BaseObjectSettings = ({ classNames, children, object }) => {
|
|
26
|
-
const db = Obj.getDatabase(object);
|
|
27
|
-
const formSchema = useMemo(() => {
|
|
28
|
-
return Function.pipe(Obj.getSchema(object), Option.fromNullable, Option.map((schema) => BaseSchema.pipe(Schema.extend(schema))), Option.getOrUndefined);
|
|
29
|
-
}, [
|
|
30
|
-
object
|
|
31
|
-
]);
|
|
32
|
-
const meta2 = Obj.getMeta(object);
|
|
33
|
-
const tags = (meta2.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);
|
|
34
|
-
const values = useMemo(() => ({
|
|
35
|
-
tags,
|
|
36
|
-
...object
|
|
37
|
-
}), [
|
|
38
|
-
object,
|
|
39
|
-
tags
|
|
40
|
-
]);
|
|
41
|
-
const handleCreate = useCallback((schema, values2) => {
|
|
42
|
-
invariant(db, void 0, {
|
|
43
|
-
F: __dxlog_file,
|
|
44
|
-
L: 54,
|
|
45
|
-
S: void 0,
|
|
46
|
-
A: [
|
|
47
|
-
"db",
|
|
48
|
-
""
|
|
49
|
-
]
|
|
50
|
-
});
|
|
51
|
-
invariant(Type.isObjectSchema(schema), void 0, {
|
|
52
|
-
F: __dxlog_file,
|
|
53
|
-
L: 55,
|
|
54
|
-
S: void 0,
|
|
55
|
-
A: [
|
|
56
|
-
"Type.isObjectSchema(schema)",
|
|
57
|
-
""
|
|
58
|
-
]
|
|
59
|
-
});
|
|
60
|
-
const newObject = db.add(Obj.make(schema, values2));
|
|
61
|
-
if (Obj.instanceOf(Tag.Tag, newObject)) {
|
|
62
|
-
Obj.change(object, (obj) => {
|
|
63
|
-
Obj.getMeta(obj).tags = [
|
|
64
|
-
...Obj.getMeta(obj).tags ?? [],
|
|
65
|
-
Obj.getDXN(newObject).toString()
|
|
66
|
-
];
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
}, []);
|
|
70
|
-
const handleChange = useCallback(({ tags: tags2, ...values2 }, { isValid, changed }) => {
|
|
71
|
-
if (!isValid) {
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
const changedPaths = Object.keys(changed).filter((path) => changed[path]);
|
|
75
|
-
const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === "tags");
|
|
76
|
-
if (hasTagsChange) {
|
|
77
|
-
Obj.change(object, (obj) => {
|
|
78
|
-
Obj.getMeta(obj).tags = tags2?.map((tag) => tag.dxn.toString()) ?? [];
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== "tags");
|
|
82
|
-
if (nonTagPaths.length > 0) {
|
|
83
|
-
Obj.change(object, () => {
|
|
84
|
-
for (const path of nonTagPaths) {
|
|
85
|
-
const parts = splitJsonPath(path);
|
|
86
|
-
const value = Obj.getValue(values2, parts);
|
|
87
|
-
Obj.setValue(object, parts, value);
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
}, [
|
|
92
|
-
object
|
|
93
|
-
]);
|
|
94
|
-
if (!formSchema) {
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
return /* @__PURE__ */ React.createElement(Form.Root, {
|
|
98
|
-
schema: omitId(formSchema),
|
|
99
|
-
values,
|
|
100
|
-
createOptionIcon: "ph--plus--regular",
|
|
101
|
-
createOptionLabel: [
|
|
102
|
-
"add tag label",
|
|
103
|
-
{
|
|
104
|
-
ns: meta.id
|
|
105
|
-
}
|
|
106
|
-
],
|
|
107
|
-
createInitialValuePath: "label",
|
|
108
|
-
db,
|
|
109
|
-
onValuesChanged: handleChange,
|
|
110
|
-
onCreate: handleCreate
|
|
111
|
-
}, /* @__PURE__ */ React.createElement(Form.Viewport, null, /* @__PURE__ */ React.createElement(Form.Content, {
|
|
112
|
-
classNames
|
|
113
|
-
}, /* @__PURE__ */ React.createElement(Form.FieldSet, null), children)));
|
|
114
|
-
};
|
|
115
|
-
|
|
116
|
-
// src/components/ObjectDetails/ObjectDetails.tsx
|
|
117
|
-
var ObjectDetails = /* @__PURE__ */ forwardRef(({ role, subject: object }, forwardedRef) => {
|
|
118
|
-
const data = useMemo2(() => ({
|
|
119
|
-
subject: object
|
|
120
|
-
}), [
|
|
121
|
-
object
|
|
122
|
-
]);
|
|
123
|
-
return /* @__PURE__ */ React2.createElement(Layout.Main, {
|
|
124
|
-
role,
|
|
125
|
-
ref: forwardedRef
|
|
126
|
-
}, /* @__PURE__ */ React2.createElement(Toolbar.Root, null), /* @__PURE__ */ React2.createElement(BaseObjectSettings, {
|
|
127
|
-
object
|
|
128
|
-
}, /* @__PURE__ */ React2.createElement(Surface, {
|
|
129
|
-
role: "base-object-settings",
|
|
130
|
-
data
|
|
131
|
-
}), /* @__PURE__ */ React2.createElement(Surface, {
|
|
132
|
-
role: "object-settings",
|
|
133
|
-
data
|
|
134
|
-
})));
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
// src/components/ObjectDetails/index.ts
|
|
138
|
-
var ObjectDetails_default = ObjectDetails;
|
|
139
|
-
export {
|
|
140
|
-
ObjectDetails_default as default
|
|
141
|
-
};
|
|
142
|
-
//# sourceMappingURL=ObjectDetails-GEDIISKK.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/ObjectDetails/ObjectDetails.tsx", "../../../src/components/ObjectDetails/BaseObjectSettings.tsx", "../../../src/components/ObjectDetails/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { forwardRef, useMemo } from 'react';\n\nimport { Surface, type SurfaceComponentProps } from '@dxos/app-framework/react';\nimport { type Obj } from '@dxos/echo';\nimport { Toolbar } from '@dxos/react-ui';\nimport { Layout } from '@dxos/react-ui-mosaic';\n\nimport { BaseObjectSettings } from './BaseObjectSettings';\n\nexport type ObjectDetailsProps = SurfaceComponentProps<Obj.Unknown>;\n\nexport const ObjectDetails = forwardRef<HTMLDivElement, ObjectDetailsProps>(\n ({ role, subject: object }, forwardedRef) => {\n const data = useMemo(() => ({ subject: object }), [object]);\n\n return (\n <Layout.Main role={role} ref={forwardedRef}>\n <Toolbar.Root />\n <BaseObjectSettings object={object}>\n <Surface role='base-object-settings' data={data} />\n <Surface role='object-settings' data={data} />\n {/* TODO(wittjosiah): Remove (or add as surface)? */}\n {/* <AdvancedObjectSettings object={object} /> */}\n </BaseObjectSettings>\n </Layout.Main>\n );\n },\n);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\nimport React, { type PropsWithChildren, useCallback, useMemo } from 'react';\n\nimport { DXN, Obj, type Ref, Tag, Type } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta as pluginMeta } from '../../meta';\n\n// TODO(wittjosiah): Would be nice to control order when extending so this isn't always first/last.\nconst BaseSchema = Schema.Struct({\n tags: Schema.Array(Type.Ref(Tag.Tag)).pipe(Schema.optional),\n});\n\nexport type BaseObjectSettingsProps = ThemedClassName<\n PropsWithChildren<{\n object: Obj.Unknown;\n }>\n>;\n\n// TODO(wittjosiah): Reconcile w/ ObjectDetailsPanel.\nexport const BaseObjectSettings = ({ classNames, children, object }: BaseObjectSettingsProps) => {\n const db = Obj.getDatabase(object);\n\n const formSchema = useMemo(() => {\n return Function.pipe(\n Obj.getSchema(object),\n Option.fromNullable,\n Option.map((schema) => BaseSchema.pipe(Schema.extend(schema))),\n Option.getOrUndefined,\n );\n }, [object]);\n\n const meta = Obj.getMeta(object);\n const tags = (meta.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);\n const values = useMemo(\n () => ({\n tags,\n ...object,\n }),\n [object, tags],\n );\n\n const handleCreate = useCallback((schema: Type.Entity.Any, values: any) => {\n invariant(db);\n invariant(Type.isObjectSchema(schema));\n const newObject = db.add(Obj.make(schema, values));\n if (Obj.instanceOf(Tag.Tag, newObject)) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = [...(Obj.getMeta(obj).tags ?? []), Obj.getDXN(newObject).toString()];\n });\n }\n }, []);\n\n // TODO(wittjosiah): Use FormRootProps type.\n const handleChange = useCallback(\n (\n { tags, ...values }: Schema.Schema.Type<typeof formSchema>,\n { isValid, changed }: { isValid: boolean; changed: Record<JsonPath, boolean> },\n ) => {\n if (!isValid) {\n return;\n }\n\n const changedPaths = Object.keys(changed).filter((path) => changed[path as JsonPath]) as JsonPath[];\n\n // Handle tags separately using Obj.change.\n const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === 'tags');\n if (hasTagsChange) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = tags?.map((tag: Ref.Ref<Tag.Tag>) => tag.dxn.toString()) ?? [];\n });\n }\n\n // Handle other property changes.\n const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== 'tags');\n if (nonTagPaths.length > 0) {\n Obj.change(object, () => {\n for (const path of nonTagPaths) {\n const parts = splitJsonPath(path);\n const value = Obj.getValue(values, parts);\n Obj.setValue(object, parts, value);\n }\n });\n }\n },\n [object],\n );\n\n if (!formSchema) {\n return null;\n }\n\n return (\n <Form.Root\n schema={omitId(formSchema)}\n values={values}\n createOptionIcon='ph--plus--regular'\n createOptionLabel={['add tag label', { ns: pluginMeta.id }]}\n createInitialValuePath='label'\n db={db}\n onValuesChanged={handleChange}\n onCreate={handleCreate}\n >\n <Form.Viewport>\n <Form.Content classNames={classNames}>\n <Form.FieldSet />\n {children}\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { ObjectDetails } from './ObjectDetails';\n\nexport default ObjectDetails;\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "forwardRef", "useMemo", "Surface", "Toolbar", "Layout", "Function", "Option", "Schema", "React", "useCallback", "useMemo", "DXN", "Obj", "Tag", "Type", "splitJsonPath", "invariant", "Form", "omitId", "isNonNullable", "BaseSchema", "Struct", "tags", "Array", "Type", "Ref", "Tag", "pipe", "optional", "BaseObjectSettings", "classNames", "children", "object", "db", "Obj", "getDatabase", "formSchema", "useMemo", "getSchema", "fromNullable", "map", "schema", "extend", "getOrUndefined", "meta", "getMeta", "tag", "makeRef", "DXN", "parse", "filter", "isNonNullable", "values", "handleCreate", "useCallback", "invariant", "isObjectSchema", "newObject", "add", "make", "instanceOf", "change", "obj", "getDXN", "toString", "handleChange", "isValid", "changed", "changedPaths", "Object", "keys", "path", "hasTagsChange", "some", "splitJsonPath", "dxn", "nonTagPaths", "length", "parts", "value", "getValue", "setValue", "Form", "Root", "omitId", "createOptionIcon", "createOptionLabel", "ns", "pluginMeta", "id", "createInitialValuePath", "onValuesChanged", "onCreate", "Viewport", "Content", "FieldSet", "ObjectDetails", "forwardRef", "role", "subject", "object", "forwardedRef", "data", "useMemo", "React", "Layout", "Main", "ref", "Toolbar", "Root", "BaseObjectSettings", "Surface", "ObjectDetails"]
|
|
7
|
-
}
|