@dxos/plugin-space 0.9.1-main.c7dcc2e112 → 0.9.1-staging.ee54ba693a
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/neutral/{CreateObjectDialog-4VMOUKM7.mjs → CreateObjectDialog-5454N3FJ.mjs} +22 -7
- package/dist/lib/neutral/CreateObjectDialog-5454N3FJ.mjs.map +7 -0
- package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs +58 -0
- package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs.map +7 -0
- package/dist/lib/neutral/{JoinDialog-QZGNRJ4P.mjs → JoinDialog-ATNUCNL2.mjs} +7 -31
- package/dist/lib/neutral/JoinDialog-ATNUCNL2.mjs.map +7 -0
- package/dist/lib/neutral/{MembersContainer-OWCAMBKS.mjs → MembersContainer-C4ZTP6ZW.mjs} +9 -5
- package/dist/lib/neutral/MembersContainer-C4ZTP6ZW.mjs.map +7 -0
- package/dist/lib/neutral/{MenuFooter-QCNFUIAO.mjs → MenuFooter-FWE5LFM4.mjs} +3 -3
- package/dist/lib/neutral/{RelatedArticle-YRCRBIYU.mjs → RelatedArticle-Z777WVDW.mjs} +1 -2
- package/dist/lib/neutral/RelatedArticle-Z777WVDW.mjs.map +7 -0
- package/dist/lib/neutral/{RenamePopover-XBZAKNM7.mjs → RenamePopover-AZT2KPOF.mjs} +13 -5
- package/dist/lib/neutral/RenamePopover-AZT2KPOF.mjs.map +7 -0
- package/dist/lib/neutral/{SchemaContainer-2NK5YB5O.mjs → SchemaContainer-4GJKQBXM.mjs} +8 -4
- package/dist/lib/neutral/SchemaContainer-4GJKQBXM.mjs.map +7 -0
- package/dist/lib/neutral/{SmallPresenceLive-L4H7WJOA.mjs → SmallPresenceLive-FW3AMEY5.mjs} +2 -2
- package/dist/lib/neutral/{SpaceHomeArticle-ZV7EERLS.mjs → SpaceHomeArticle-Y47TLZ72.mjs} +2 -2
- package/dist/lib/neutral/{SpaceHomeArticle-ZV7EERLS.mjs.map → SpaceHomeArticle-Y47TLZ72.mjs.map} +1 -1
- package/dist/lib/neutral/{SpaceHomeRecent-ZR4LIIUD.mjs → SpaceHomeRecent-S57AO3EV.mjs} +11 -5
- package/dist/lib/neutral/{SpaceHomeRecent-ZR4LIIUD.mjs.map → SpaceHomeRecent-S57AO3EV.mjs.map} +3 -3
- package/dist/lib/neutral/SpacePlugin.mjs +1 -1
- package/dist/lib/neutral/{SpacePresence-PDTEDHDE.mjs → SpacePresence-T37WH43Y.mjs} +2 -2
- package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs +60 -0
- package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs.map +7 -0
- package/dist/lib/neutral/{SpaceSettingsContainer-QAFQ4LWC.mjs → SpaceSettingsContainer-72CJWELM.mjs} +39 -36
- package/dist/lib/neutral/SpaceSettingsContainer-72CJWELM.mjs.map +7 -0
- package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs +143 -0
- package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs.map +7 -0
- package/dist/lib/neutral/{add-object-S64XELC3.mjs → add-object-H2N4AOQJ.mjs} +10 -10
- package/dist/lib/neutral/add-object-H2N4AOQJ.mjs.map +7 -0
- package/dist/lib/neutral/{add-relation-GWSE42BU.mjs → add-relation-BGTLART5.mjs} +3 -3
- package/dist/lib/neutral/{add-type-C3KYE6PI.mjs → add-type-JIDLRANR.mjs} +3 -3
- package/dist/lib/neutral/{add-type-C3KYE6PI.mjs.map → add-type-JIDLRANR.mjs.map} +1 -1
- package/dist/lib/neutral/{app-graph-builder-TMAD2ZTH.mjs → app-graph-builder-7H2KOD4B.mjs} +187 -163
- package/dist/lib/neutral/app-graph-builder-7H2KOD4B.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +9 -9
- package/dist/lib/neutral/capabilities/node.mjs +2 -2
- package/dist/lib/neutral/{chunk-PSCIOT7Q.mjs → chunk-52ASDNRA.mjs} +2 -3
- package/dist/lib/neutral/{chunk-PSCIOT7Q.mjs.map → chunk-52ASDNRA.mjs.map} +3 -3
- package/dist/lib/neutral/{chunk-2RPQHHD7.mjs → chunk-C2ULK22J.mjs} +1 -1
- package/dist/lib/neutral/{chunk-DSYEB2UN.mjs → chunk-F5KLUP2P.mjs} +7 -2
- package/dist/lib/neutral/chunk-F5KLUP2P.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-F2VJ6VBV.mjs → chunk-LMUG6PEJ.mjs} +3 -4
- package/dist/lib/neutral/chunk-LMUG6PEJ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-2LTGSUGQ.mjs → chunk-RAAHDTVF.mjs} +8 -4
- package/dist/lib/neutral/chunk-RAAHDTVF.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-LY6XK5MV.mjs → chunk-SPWAMXNR.mjs} +2 -2
- package/dist/lib/neutral/{chunk-LY6XK5MV.mjs.map → chunk-SPWAMXNR.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-U5WTDOMV.mjs +8 -0
- package/dist/lib/neutral/chunk-V7JALUM3.mjs +9 -0
- package/dist/lib/neutral/chunk-V7JALUM3.mjs.map +7 -0
- package/dist/lib/neutral/{close-YZHFYPUN.mjs → close-5WEQZRNK.mjs} +3 -3
- package/dist/lib/neutral/components/index.mjs +18 -19
- package/dist/lib/neutral/components/index.mjs.map +4 -4
- package/dist/lib/neutral/constants.mjs +16 -0
- package/dist/lib/neutral/constants.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +18 -14
- package/dist/lib/neutral/containers/index.mjs.map +3 -3
- package/dist/lib/neutral/{create-XKU2W6QC.mjs → create-QZ47FHQU.mjs} +4 -4
- package/dist/lib/neutral/{create-XKU2W6QC.mjs.map → create-QZ47FHQU.mjs.map} +3 -3
- package/dist/lib/neutral/{create-object-22WUOWZQ.mjs → create-object-ZU6FZW5X.mjs} +1 -6
- package/dist/lib/neutral/create-object-ZU6FZW5X.mjs.map +7 -0
- package/dist/lib/neutral/{delete-EFM7CAVO.mjs → delete-SPCU2VFM.mjs} +3 -3
- package/dist/lib/neutral/{delete-field-ONAPFFO5.mjs → delete-field-TAKJVEAD.mjs} +3 -3
- package/dist/lib/neutral/{duplicate-object-OJRPFV5I.mjs → duplicate-object-BUPZOO6S.mjs} +3 -3
- package/dist/lib/neutral/{export-space-M5RNVUQX.mjs → export-space-S5SCAL4M.mjs} +3 -3
- package/dist/lib/neutral/{get-share-link-FUQBJPSQ.mjs → get-share-link-CLM5IQRL.mjs} +3 -3
- package/dist/lib/neutral/{identity-created-QMV4DANW.mjs → identity-created-BEYMLBK4.mjs} +2 -2
- package/dist/lib/neutral/{identity-created-QMV4DANW.mjs.map → identity-created-BEYMLBK4.mjs.map} +3 -3
- package/dist/lib/neutral/{import-space-L3AUIARM.mjs → import-space-LJQK3KT7.mjs} +3 -3
- package/dist/lib/neutral/index.mjs +7 -3
- package/dist/lib/neutral/join-FSODYIOC.mjs +54 -0
- package/dist/lib/neutral/join-FSODYIOC.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/{migrate-WPUISBC4.mjs → migrate-WHM6LU7L.mjs} +4 -4
- package/dist/lib/neutral/{migrate-WPUISBC4.mjs.map → migrate-WHM6LU7L.mjs.map} +3 -3
- package/dist/lib/neutral/{navigation-handler-IKXZGMII.mjs → navigation-handler-ZF7MV2HL.mjs} +16 -10
- package/dist/lib/neutral/navigation-handler-ZF7MV2HL.mjs.map +7 -0
- package/dist/lib/neutral/{navigation-resolver-VBPGMFCE.mjs → navigation-resolver-KBESOSWU.mjs} +5 -5
- package/dist/lib/neutral/navigation-resolver-KBESOSWU.mjs.map +7 -0
- package/dist/lib/neutral/{open-RRYULTSY.mjs → open-JCXTL3SK.mjs} +3 -3
- package/dist/lib/neutral/{open-create-object-BRUVFZSY.mjs → open-create-object-WAIAU7TA.mjs} +6 -6
- package/dist/lib/neutral/{open-create-space-ARLQWW65.mjs → open-create-space-VU47FWPZ.mjs} +6 -6
- package/dist/lib/neutral/{open-import-space-65H57JXX.mjs → open-import-space-GUHIEWYB.mjs} +6 -6
- package/dist/lib/neutral/{open-members-677P6KD3.mjs → open-members-MLLBHKUU.mjs} +3 -3
- package/dist/lib/neutral/{open-settings-PRBSGO6D.mjs → open-settings-DTPZF4U4.mjs} +3 -3
- package/dist/lib/neutral/operations/index.mjs +3 -3
- package/dist/lib/neutral/plugin.mjs +3 -3
- package/dist/lib/neutral/{react-surface-5EQ6X4CL.mjs → react-surface-LRA7GIFN.mjs} +33 -14
- package/dist/lib/neutral/react-surface-LRA7GIFN.mjs.map +7 -0
- package/dist/lib/neutral/{remove-objects-PWJJI36V.mjs → remove-objects-WEO66EDS.mjs} +3 -3
- package/dist/lib/neutral/{rename-4727PKI4.mjs → rename-Q6UNCBIM.mjs} +6 -6
- package/dist/lib/neutral/{rename-object-FXUAB5FN.mjs → rename-object-2UCEGU7U.mjs} +6 -6
- package/dist/lib/neutral/{restore-field-3ICSIHGA.mjs → restore-field-6CQAFOXY.mjs} +3 -3
- package/dist/lib/neutral/{restore-objects-V2BTEWN3.mjs → restore-objects-3VINLP7C.mjs} +3 -3
- package/dist/lib/neutral/{share-ZOZPAUGI.mjs → share-A4WPILNF.mjs} +3 -3
- package/dist/lib/neutral/{snapshot-ZC5PU55W.mjs → snapshot-HBYMAPA7.mjs} +3 -3
- package/dist/lib/neutral/{spaces-ready-EXPCJD4N.mjs → spaces-ready-GWMSU72V.mjs} +4 -4
- package/dist/lib/neutral/{spaces-ready-EXPCJD4N.mjs.map → spaces-ready-GWMSU72V.mjs.map} +3 -3
- package/dist/lib/neutral/testing.mjs +1 -1
- package/dist/lib/neutral/translations.mjs +14 -6
- package/dist/lib/neutral/translations.mjs.map +2 -2
- package/dist/lib/neutral/types/index.mjs +1 -1
- package/dist/lib/neutral/{wait-for-object-WURK2SLQ.mjs → wait-for-object-U6P2NNWY.mjs} +3 -3
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +15 -33
- package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts +15 -33
- package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +3 -2
- package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +1 -4
- package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +17 -4
- package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -1
- package/dist/types/src/capabilities/create-object.d.ts +1 -33
- package/dist/types/src/capabilities/create-object.d.ts.map +1 -1
- package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts +1 -2
- package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -1
- package/dist/types/src/capabilities/navigation-resolver.d.ts +1 -2
- package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-root.d.ts +1 -5
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/repair.d.ts +1 -2
- package/dist/types/src/capabilities/repair.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings.d.ts +1 -3
- package/dist/types/src/capabilities/settings.d.ts.map +1 -1
- package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
- package/dist/types/src/capabilities/state.d.ts +1 -13
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/capabilities/undo-mappings.d.ts +2 -3
- package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -1
- package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +122 -52
- package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts.map +1 -1
- package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +122 -52
- package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -1
- package/dist/types/src/containers/DefaultProperties/DefaultProperties.d.ts +15 -0
- package/dist/types/src/containers/DefaultProperties/DefaultProperties.d.ts.map +1 -0
- package/dist/types/src/containers/DefaultProperties/index.d.ts +2 -0
- package/dist/types/src/containers/DefaultProperties/index.d.ts.map +1 -0
- package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
- package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +122 -52
- package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -1
- package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -1
- package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -1
- package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts +5 -1
- package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts.map +1 -1
- package/dist/types/src/containers/RenamePopover/index.d.ts +1 -1
- package/dist/types/src/containers/RenamePopover/index.d.ts.map +1 -1
- package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceHomeRecent/SpaceHomeRecent.d.ts.map +1 -1
- package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -1
- package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +122 -52
- package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/containers/SpacePresence/index.d.ts +1 -1
- package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts +11 -0
- package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/SpaceSettings/SpaceSettings.stories.d.ts +123 -53
- package/dist/types/src/{components → containers}/SpaceSettings/SpaceSettings.stories.d.ts.map +1 -1
- package/dist/types/src/{components → containers}/SpaceSettings/index.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +122 -52
- package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -1
- package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +122 -52
- package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
- package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts +16 -0
- package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts.map +1 -0
- package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts +21 -0
- package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts.map +1 -0
- package/dist/types/src/containers/TypeCollectionArticle/index.d.ts +2 -0
- package/dist/types/src/containers/TypeCollectionArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +4 -1
- package/dist/types/src/containers/index.d.ts.map +1 -1
- package/dist/types/src/errors.d.ts +33 -0
- package/dist/types/src/errors.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +4 -0
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/definitions.d.ts +9 -37
- package/dist/types/src/operations/definitions.d.ts.map +1 -1
- package/dist/types/src/operations/join.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +122 -52
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Settings.d.ts +3 -1
- package/dist/types/src/types/Settings.d.ts.map +1 -1
- 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/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +70 -59
- package/src/SpacePlugin.ts +3 -3
- package/src/capabilities/app-graph-builder/extensions/collections.ts +45 -52
- package/src/capabilities/app-graph-builder/extensions/companions.ts +3 -2
- package/src/capabilities/app-graph-builder/extensions/database.ts +108 -84
- package/src/capabilities/app-graph-builder/extensions/settings.ts +8 -5
- package/src/capabilities/app-graph-builder/extensions/shared.test.ts +13 -9
- package/src/capabilities/app-graph-builder/extensions/shared.ts +2 -5
- package/src/capabilities/app-graph-builder/extensions/spaces.ts +32 -6
- package/src/capabilities/create-object.ts +0 -5
- package/src/capabilities/identity-created.ts +1 -1
- package/src/capabilities/navigation-handler/navigation-handler.ts +14 -4
- package/src/capabilities/navigation-resolver.ts +8 -8
- package/src/capabilities/react-surface.tsx +39 -13
- package/src/capabilities/spaces-ready.ts +1 -1
- package/src/components/ForeignKeys/ForeignKeys.tsx +20 -19
- package/src/components/index.ts +3 -3
- package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +1 -1
- package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +38 -3
- package/src/containers/DefaultProperties/DefaultProperties.tsx +69 -0
- package/src/containers/DefaultProperties/index.ts +5 -0
- package/src/containers/JoinDialog/JoinDialog.tsx +8 -21
- package/src/containers/MembersContainer/MembersContainer.tsx +37 -33
- package/src/containers/RelatedArticle/RelatedArticle.tsx +1 -2
- package/src/containers/RenamePopover/RenamePopover.tsx +18 -5
- package/src/containers/RenamePopover/index.ts +1 -1
- package/src/containers/SchemaContainer/SchemaContainer.tsx +21 -17
- package/src/containers/SpaceHomeArticle/SpaceHomeArticle.tsx +1 -1
- package/src/containers/SpaceHomeRecent/SpaceHomeRecent.tsx +12 -10
- package/src/containers/SpacePresence/SpacePresence.tsx +22 -20
- package/src/containers/SpacePresence/index.ts +1 -1
- package/src/{components → containers}/SpaceSettings/SpaceSettings.stories.tsx +1 -1
- package/src/containers/SpaceSettings/SpaceSettings.tsx +75 -0
- package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +115 -106
- package/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.tsx +116 -0
- package/src/containers/TypeCollectionArticle/TypeCollectionArticle.tsx +162 -0
- package/src/containers/TypeCollectionArticle/index.ts +5 -0
- package/src/containers/index.ts +4 -1
- package/src/errors.ts +11 -0
- package/src/index.ts +1 -0
- package/src/operations/add-object.ts +6 -5
- package/src/operations/add-type.ts +1 -1
- package/src/operations/create.ts +2 -2
- package/src/operations/definitions.ts +1 -2
- package/src/operations/join.ts +19 -0
- package/src/operations/migrate.ts +1 -1
- package/src/translations.ts +15 -6
- package/src/types/Settings.ts +10 -1
- package/src/types/capabilities.ts +1 -1
- package/src/util.ts +0 -1
- package/dist/lib/neutral/CreateObjectDialog-4VMOUKM7.mjs.map +0 -7
- package/dist/lib/neutral/JoinDialog-QZGNRJ4P.mjs.map +0 -7
- package/dist/lib/neutral/MembersContainer-OWCAMBKS.mjs.map +0 -7
- package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs +0 -33
- package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs.map +0 -7
- package/dist/lib/neutral/RelatedArticle-YRCRBIYU.mjs.map +0 -7
- package/dist/lib/neutral/RenamePopover-XBZAKNM7.mjs.map +0 -7
- package/dist/lib/neutral/SchemaContainer-2NK5YB5O.mjs.map +0 -7
- package/dist/lib/neutral/SpaceSettings-IVTCSLNT.mjs +0 -37
- package/dist/lib/neutral/SpaceSettings-IVTCSLNT.mjs.map +0 -7
- package/dist/lib/neutral/SpaceSettingsContainer-QAFQ4LWC.mjs.map +0 -7
- package/dist/lib/neutral/add-object-S64XELC3.mjs.map +0 -7
- package/dist/lib/neutral/app-graph-builder-TMAD2ZTH.mjs.map +0 -7
- package/dist/lib/neutral/chunk-2LTGSUGQ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-DSYEB2UN.mjs.map +0 -7
- package/dist/lib/neutral/chunk-F2VJ6VBV.mjs.map +0 -7
- package/dist/lib/neutral/chunk-I5JXVBXX.mjs +0 -8
- package/dist/lib/neutral/create-object-22WUOWZQ.mjs.map +0 -7
- package/dist/lib/neutral/join-VY3QYBU7.mjs +0 -28
- package/dist/lib/neutral/join-VY3QYBU7.mjs.map +0 -7
- package/dist/lib/neutral/navigation-handler-IKXZGMII.mjs.map +0 -7
- package/dist/lib/neutral/navigation-resolver-VBPGMFCE.mjs.map +0 -7
- package/dist/lib/neutral/react-surface-5EQ6X4CL.mjs.map +0 -7
- package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts +0 -8
- package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts.map +0 -1
- package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts +0 -10
- package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts.map +0 -1
- package/dist/types/src/containers/ObjectProperties/index.d.ts +0 -2
- package/dist/types/src/containers/ObjectProperties/index.d.ts.map +0 -1
- package/src/components/SpaceSettings/SpaceSettings.tsx +0 -56
- package/src/containers/ObjectProperties/ObjectProperties.tsx +0 -32
- package/src/containers/ObjectProperties/index.ts +0 -5
- /package/dist/lib/neutral/{MenuFooter-QCNFUIAO.mjs.map → MenuFooter-FWE5LFM4.mjs.map} +0 -0
- /package/dist/lib/neutral/{SmallPresenceLive-L4H7WJOA.mjs.map → SmallPresenceLive-FW3AMEY5.mjs.map} +0 -0
- /package/dist/lib/neutral/{SpacePresence-PDTEDHDE.mjs.map → SpacePresence-T37WH43Y.mjs.map} +0 -0
- /package/dist/lib/neutral/{add-relation-GWSE42BU.mjs.map → add-relation-BGTLART5.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-2RPQHHD7.mjs.map → chunk-C2ULK22J.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-I5JXVBXX.mjs.map → chunk-U5WTDOMV.mjs.map} +0 -0
- /package/dist/lib/neutral/{close-YZHFYPUN.mjs.map → close-5WEQZRNK.mjs.map} +0 -0
- /package/dist/lib/neutral/{delete-EFM7CAVO.mjs.map → delete-SPCU2VFM.mjs.map} +0 -0
- /package/dist/lib/neutral/{delete-field-ONAPFFO5.mjs.map → delete-field-TAKJVEAD.mjs.map} +0 -0
- /package/dist/lib/neutral/{duplicate-object-OJRPFV5I.mjs.map → duplicate-object-BUPZOO6S.mjs.map} +0 -0
- /package/dist/lib/neutral/{export-space-M5RNVUQX.mjs.map → export-space-S5SCAL4M.mjs.map} +0 -0
- /package/dist/lib/neutral/{get-share-link-FUQBJPSQ.mjs.map → get-share-link-CLM5IQRL.mjs.map} +0 -0
- /package/dist/lib/neutral/{import-space-L3AUIARM.mjs.map → import-space-LJQK3KT7.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-RRYULTSY.mjs.map → open-JCXTL3SK.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-create-object-BRUVFZSY.mjs.map → open-create-object-WAIAU7TA.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-create-space-ARLQWW65.mjs.map → open-create-space-VU47FWPZ.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-import-space-65H57JXX.mjs.map → open-import-space-GUHIEWYB.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-members-677P6KD3.mjs.map → open-members-MLLBHKUU.mjs.map} +0 -0
- /package/dist/lib/neutral/{open-settings-PRBSGO6D.mjs.map → open-settings-DTPZF4U4.mjs.map} +0 -0
- /package/dist/lib/neutral/{remove-objects-PWJJI36V.mjs.map → remove-objects-WEO66EDS.mjs.map} +0 -0
- /package/dist/lib/neutral/{rename-4727PKI4.mjs.map → rename-Q6UNCBIM.mjs.map} +0 -0
- /package/dist/lib/neutral/{rename-object-FXUAB5FN.mjs.map → rename-object-2UCEGU7U.mjs.map} +0 -0
- /package/dist/lib/neutral/{restore-field-3ICSIHGA.mjs.map → restore-field-6CQAFOXY.mjs.map} +0 -0
- /package/dist/lib/neutral/{restore-objects-V2BTEWN3.mjs.map → restore-objects-3VINLP7C.mjs.map} +0 -0
- /package/dist/lib/neutral/{share-ZOZPAUGI.mjs.map → share-A4WPILNF.mjs.map} +0 -0
- /package/dist/lib/neutral/{snapshot-ZC5PU55W.mjs.map → snapshot-HBYMAPA7.mjs.map} +0 -0
- /package/dist/lib/neutral/{wait-for-object-WURK2SLQ.mjs.map → wait-for-object-U6P2NNWY.mjs.map} +0 -0
- /package/dist/types/src/{components → containers}/SpaceSettings/index.d.ts +0 -0
- /package/src/{components → containers}/SpaceSettings/index.ts +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SpaceOperation
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-LMUG6PEJ.mjs";
|
|
4
|
+
import "./chunk-F5KLUP2P.mjs";
|
|
5
5
|
import "./chunk-J5LGTIGS.mjs";
|
|
6
6
|
|
|
7
7
|
// src/operations/share.ts
|
|
@@ -28,4 +28,4 @@ var share_default = handler;
|
|
|
28
28
|
export {
|
|
29
29
|
share_default as default
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=share-
|
|
31
|
+
//# sourceMappingURL=share-A4WPILNF.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SpaceOperation
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-LMUG6PEJ.mjs";
|
|
4
|
+
import "./chunk-F5KLUP2P.mjs";
|
|
5
5
|
import "./chunk-J5LGTIGS.mjs";
|
|
6
6
|
|
|
7
7
|
// src/operations/snapshot.ts
|
|
@@ -27,4 +27,4 @@ var snapshot_default = handler;
|
|
|
27
27
|
export {
|
|
28
28
|
snapshot_default as default
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=snapshot-
|
|
30
|
+
//# sourceMappingURL=snapshot-HBYMAPA7.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "./chunk-
|
|
1
|
+
import "./chunk-52ASDNRA.mjs";
|
|
2
2
|
import {
|
|
3
3
|
SHARED
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-F5KLUP2P.mjs";
|
|
5
5
|
import "./chunk-J5LGTIGS.mjs";
|
|
6
6
|
|
|
7
7
|
// src/capabilities/spaces-ready.ts
|
|
@@ -14,7 +14,7 @@ import { SubscriptionList } from "@dxos/async";
|
|
|
14
14
|
import { Annotation, Collection, Filter, Obj, Type } from "@dxos/echo";
|
|
15
15
|
import { SPACE_ID_LENGTH, parseId } from "@dxos/keys";
|
|
16
16
|
import { log } from "@dxos/log";
|
|
17
|
-
import {
|
|
17
|
+
import { Migrations, MigrationVersionAnnotation } from "@dxos/migrations";
|
|
18
18
|
import { AttentionCapabilities } from "@dxos/plugin-attention";
|
|
19
19
|
import { ClientCapabilities } from "@dxos/plugin-client";
|
|
20
20
|
import { Graph } from "@dxos/plugin-graph";
|
|
@@ -278,4 +278,4 @@ var spaces_ready_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
278
278
|
export {
|
|
279
279
|
spaces_ready_default as default
|
|
280
280
|
};
|
|
281
|
-
//# sourceMappingURL=spaces-ready-
|
|
281
|
+
//# sourceMappingURL=spaces-ready-GWMSU72V.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/spaces-ready.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Fiber from 'effect/Fiber';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppAnnotation, AppCapabilities, AppSpace, LayoutOperation, Paths } from '@dxos/app-toolkit';\nimport { SubscriptionList } from '@dxos/async';\nimport { Annotation, Collection, Filter, Obj, Type } from '@dxos/echo';\nimport { SPACE_ID_LENGTH, parseId } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { MigrationVersionAnnotation, Migrations } from '@dxos/migrations';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { Graph } from '@dxos/plugin-graph';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { PublicKey } from '@dxos/react-client';\nimport { type Space, SpaceState } from '@dxos/react-client/echo';\nimport { Expando } from '@dxos/schema';\nimport { ComplexMap, reduceGroupBy } from '@dxos/util';\n\nimport { SpaceOperation } from '#operations';\nimport { SpaceCapabilities } from '#types';\n\nimport { SHARED } from '../util';\n\nconst ACTIVE_NODE_BROADCAST_INTERVAL = 30_000;\nconst WAIT_FOR_OBJECT_TIMEOUT = 5_000;\n\nconst isEchoRef = (id: string) => id.startsWith('echo:/');\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const subscriptions = new SubscriptionList();\n const spaceSubscriptions = new SubscriptionList();\n\n const { invoke, invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);\n const { graph } = yield* Capability.get(AppCapabilities.AppGraph);\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const layoutAtom = yield* Capability.get(AppCapabilities.Layout);\n const attention = yield* Capability.get(AttentionCapabilities.Attention);\n const stateAtom = yield* Capability.get(SpaceCapabilities.State);\n const ephemeralAtom = yield* Capability.get(SpaceCapabilities.EphemeralState);\n const client = yield* Capability.get(ClientCapabilities.Client);\n\n //\n // Personal space initialization — deferred until found.\n //\n\n // Fiber for the one-shot personal-space init Effect; interrupted in cleanup\n // so it cannot access the db after client.destroy() closes the repo.\n let personalSpaceInitFiber: Fiber.RuntimeFiber<void, unknown> | undefined;\n let personalSpaceInitialized = false;\n\n const personalSpaceInitEffect = (personalSpace: Space, { fromCredential }: { fromCredential: boolean }) =>\n Effect.gen(function* () {\n yield* Effect.promise(() => personalSpace.waitUntilReady());\n\n if (fromCredential) {\n AppSpace.setPersonalSpace(personalSpace);\n }\n\n // Check if deck state indicates we should switch to default space.\n const layout = registry.get(layoutAtom);\n if (layout.workspace === 'default') {\n yield* invoke(LayoutOperation.SwitchWorkspace, { subject: Paths.getSpacePath(personalSpace.id) });\n }\n\n const queryResults = yield* Effect.promise(() =>\n personalSpace.db.query(Filter.type(Expando.Expando, { key: SHARED })).run(),\n );\n if (!queryResults[0]) {\n // TODO(wittjosiah): Cannot be a Folder because Spaces are not TypedObjects so can't be saved in the database.\n // Instead, we store order as an array of space ids.\n try {\n personalSpace.db.add(Obj.make(Expando.Expando, { key: SHARED, order: [] }));\n } catch (err) {\n // The space may have been destroyed (e.g. during test teardown) between the query and the add.\n log.warn('Failed to initialize spaces order, space may be closing', { err });\n }\n }\n });\n\n const startPersonalSpaceInit = (personalSpace: Space, opts: { fromCredential: boolean }) => {\n if (personalSpaceInitialized) {\n return;\n }\n // Set before forking so concurrent subscribe callbacks don't start a second initialization.\n personalSpaceInitialized = true;\n personalSpaceInitFiber = Effect.runFork(personalSpaceInitEffect(personalSpace, opts));\n };\n\n // Try to find the personal space now, or subscribe to find it later.\n // Initialization is non-blocking so subscriptions wire immediately.\n const resolved = AppSpace.resolvePersonalSpace(client);\n if (resolved) {\n startPersonalSpaceInit(resolved.space, resolved);\n } else {\n const personalSpaceSub = client.spaces.subscribe(() => {\n const resolved = AppSpace.resolvePersonalSpace(client);\n if (resolved) {\n startPersonalSpaceInit(resolved.space, resolved);\n }\n });\n subscriptions.add(() => personalSpaceSub.unsubscribe());\n }\n\n //\n // Space subscriptions — set up immediately, do not depend on personal space.\n //\n\n // Await missing objects - subscribe to layout atom changes.\n // NOTE: Use immediate: true to check initial state (URL handler may have already set active).\n let lastActiveCleanup: (() => void) | undefined;\n subscriptions.add(\n registry.subscribe(\n layoutAtom,\n (layout) => {\n // Clean up previous effect.\n lastActiveCleanup?.();\n lastActiveCleanup = undefined;\n\n // Determine the ID to check - either from active item or workspace.\n const id = layout.active.length === 1 ? layout.active[0] : layout.workspace;\n if (!id) {\n return;\n }\n\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node && (isEchoRef(id) || id.length === SPACE_ID_LENGTH)) {\n void Graph.initialize(graph, id);\n const timeout = setTimeout(async () => {\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node) {\n await invokePromise(SpaceOperation.WaitForObject, { id });\n }\n }, WAIT_FOR_OBJECT_TIMEOUT);\n\n lastActiveCleanup = () => clearTimeout(timeout);\n }\n },\n { immediate: true },\n ),\n );\n // Also add cleanup for the last effect.\n subscriptions.add(() => lastActiveCleanup?.());\n\n // Cache space names.\n const spaceNamesSub = client.spaces.subscribe(async (spaces) => {\n // TODO(wittjosiah): Remove. This is a hack to be able to migrate the personal space properties.\n const personalSpaceForMigration = AppSpace.resolvePersonalSpace(client);\n if (\n personalSpaceForMigration?.space &&\n personalSpaceForMigration.space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION\n ) {\n await personalSpaceForMigration.space.internal.migrate();\n }\n\n spaces\n .filter((space) => space.state.get() === SpaceState.SPACE_READY)\n .forEach((space) => {\n if (Option.isNone(Annotation.get(space.properties, AppAnnotation.RootCollectionAnnotation))) {\n const legacyRef = (space.properties as any)[Type.getTypename(Collection.Collection)];\n if (legacyRef) {\n Obj.update(space.properties, (properties) => {\n Annotation.set(properties, AppAnnotation.RootCollectionAnnotation, legacyRef);\n });\n }\n }\n if (Migrations.namespace && Option.isNone(Annotation.get(space.properties, MigrationVersionAnnotation))) {\n const legacyVersion = (space.properties as any)[`${Migrations.namespace}.version`];\n if (typeof legacyVersion === 'string') {\n Obj.update(space.properties, (properties) => {\n Annotation.set(properties, MigrationVersionAnnotation, legacyVersion);\n });\n }\n }\n\n const updateSpaceName = () => {\n const name = space.properties.name;\n if (!name) {\n registry.update(stateAtom, (current) => {\n const { [space.id]: _, ...rest } = current.spaceNames;\n return { ...current, spaceNames: rest };\n });\n } else {\n registry.update(stateAtom, (current) => ({\n ...current,\n spaceNames: { ...current.spaceNames, [space.id]: name },\n }));\n }\n };\n updateSpaceName();\n subscriptions.add(Obj.subscribe(space.properties, updateSpaceName));\n });\n });\n subscriptions.add(() => spaceNamesSub.unsubscribe());\n\n // Broadcast active node to other peers in the space - subscribe to both layout and attention.\n let broadcastCleanup: (() => void) | undefined;\n const setupBroadcast = () => {\n broadcastCleanup?.();\n\n const layout = registry.get(layoutAtom);\n const current = attention.getCurrent();\n const active = layout.active;\n const inactive = layout.inactive;\n\n const send = () => {\n const spaces = client.spaces.get();\n const identity = client.halo.identity.get();\n if (identity) {\n // Group parts by space for efficient messaging.\n const idsBySpace = reduceGroupBy(active, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n const removedBySpace = reduceGroupBy(inactive, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n // NOTE: Ensure all spaces are included so that we send the correct `removed` object arrays.\n for (const space of spaces) {\n if (!idsBySpace.has(space.id)) {\n idsBySpace.set(space.id, []);\n }\n }\n\n for (const [spaceId, added] of idsBySpace) {\n const removed = removedBySpace.get(spaceId) ?? [];\n const space = spaces.find((space) => space.id === spaceId);\n if (!space) {\n continue;\n }\n\n void space\n .postMessage('viewing', {\n identityKey: identity.identityKey.toHex(),\n attended: current,\n added,\n removed,\n })\n // TODO(burdon): This seems defensive; why would this fail? Backoff interval.\n .catch((err) => {\n log.warn('Failed to broadcast active node for presence.', {\n err: err.message,\n });\n });\n }\n }\n };\n\n send();\n // Send at interval to allow peers to expire entries if they become disconnected.\n const interval = setInterval(() => send(), ACTIVE_NODE_BROADCAST_INTERVAL);\n broadcastCleanup = () => clearInterval(interval);\n };\n\n // Subscribe to layout changes for broadcast.\n subscriptions.add(registry.subscribe(layoutAtom, setupBroadcast));\n // Subscribe to attention.current changes.\n subscriptions.add(attention.subscribeCurrent(() => setupBroadcast()));\n // Initial setup.\n setupBroadcast();\n // Cleanup.\n subscriptions.add(() => broadcastCleanup?.());\n\n // Listen for active nodes from other peers in the space.\n const viewingSub = client.spaces.subscribe((spaces) => {\n spaceSubscriptions.clear();\n spaces.forEach((space) => {\n spaceSubscriptions.add(\n space.listen('viewing', (message) => {\n const { added, removed, attended } = message.payload;\n\n const identityKey = PublicKey.safeFrom(message.payload.identityKey);\n const currentIdentity = client.halo.identity.get();\n if (\n identityKey &&\n !currentIdentity?.identityKey.equals(identityKey) &&\n Array.isArray(added) &&\n Array.isArray(removed)\n ) {\n // TODO(wittjosiah): Stop using (Complex)Map inside reactive object.\n registry.update(ephemeralAtom, (ephemeral) => {\n added.forEach((id) => {\n if (typeof id === 'string') {\n if (!(id in ephemeral.viewersByObject)) {\n ephemeral.viewersByObject[id] = new ComplexMap(PublicKey.hash);\n }\n ephemeral.viewersByObject[id]!.set(identityKey, {\n lastSeen: Date.now(),\n currentlyAttended: new Set(attended).has(id),\n });\n if (!ephemeral.viewersByIdentity.has(identityKey)) {\n ephemeral.viewersByIdentity.set(identityKey, new Set());\n }\n ephemeral.viewersByIdentity.get(identityKey)!.add(id);\n }\n });\n\n removed.forEach((id) => {\n if (typeof id === 'string') {\n ephemeral.viewersByObject[id]?.delete(identityKey);\n ephemeral.viewersByIdentity.get(identityKey)?.delete(id);\n // It's okay for these to be empty sets/maps, reduces churn.\n }\n });\n\n return { ...ephemeral };\n });\n }\n }),\n );\n });\n });\n subscriptions.add(() => viewingSub.unsubscribe());\n\n // Enable edge replication for all spaces.\n try {\n yield* Effect.tryPromise(() =>\n Promise.all(\n client.spaces\n .get()\n .map((space) => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED)),\n ),\n );\n registry.update(stateAtom, (current) => ({ ...current, enabledEdgeReplication: true }));\n } catch (err) {\n log.catch(err);\n }\n\n return Capability.contributes(Capabilities.Null, null, () =>\n Effect.gen(function* () {\n if (personalSpaceInitFiber) {\n yield* Fiber.interrupt(personalSpaceInitFiber);\n }\n spaceSubscriptions.clear();\n subscriptions.clear();\n }),\n );\n }),\n);\n"],
|
|
5
|
-
"mappings": ";;;;;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,WAAW;AACvB,YAAYC,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,eAAeC,iBAAiBC,UAAUC,iBAAiBC,aAAa;AACjF,SAASC,wBAAwB;AACjC,SAASC,YAAYC,YAAYC,QAAQC,KAAKC,YAAY;AAC1D,SAASC,iBAAiBC,eAAe;AACzC,SAASC,WAAW;AACpB,SAASC,
|
|
6
|
-
"names": ["Effect", "Fiber", "Option", "Capabilities", "Capability", "AppAnnotation", "AppCapabilities", "AppSpace", "LayoutOperation", "Paths", "SubscriptionList", "Annotation", "Collection", "Filter", "Obj", "Type", "SPACE_ID_LENGTH", "parseId", "log", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Fiber from 'effect/Fiber';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppAnnotation, AppCapabilities, AppSpace, LayoutOperation, Paths } from '@dxos/app-toolkit';\nimport { SubscriptionList } from '@dxos/async';\nimport { Annotation, Collection, Filter, Obj, Type } from '@dxos/echo';\nimport { SPACE_ID_LENGTH, parseId } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { Migrations, MigrationVersionAnnotation } from '@dxos/migrations';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { Graph } from '@dxos/plugin-graph';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { PublicKey } from '@dxos/react-client';\nimport { type Space, SpaceState } from '@dxos/react-client/echo';\nimport { Expando } from '@dxos/schema';\nimport { ComplexMap, reduceGroupBy } from '@dxos/util';\n\nimport { SpaceOperation } from '#operations';\nimport { SpaceCapabilities } from '#types';\n\nimport { SHARED } from '../util';\n\nconst ACTIVE_NODE_BROADCAST_INTERVAL = 30_000;\nconst WAIT_FOR_OBJECT_TIMEOUT = 5_000;\n\nconst isEchoRef = (id: string) => id.startsWith('echo:/');\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const subscriptions = new SubscriptionList();\n const spaceSubscriptions = new SubscriptionList();\n\n const { invoke, invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);\n const { graph } = yield* Capability.get(AppCapabilities.AppGraph);\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const layoutAtom = yield* Capability.get(AppCapabilities.Layout);\n const attention = yield* Capability.get(AttentionCapabilities.Attention);\n const stateAtom = yield* Capability.get(SpaceCapabilities.State);\n const ephemeralAtom = yield* Capability.get(SpaceCapabilities.EphemeralState);\n const client = yield* Capability.get(ClientCapabilities.Client);\n\n //\n // Personal space initialization — deferred until found.\n //\n\n // Fiber for the one-shot personal-space init Effect; interrupted in cleanup\n // so it cannot access the db after client.destroy() closes the repo.\n let personalSpaceInitFiber: Fiber.RuntimeFiber<void, unknown> | undefined;\n let personalSpaceInitialized = false;\n\n const personalSpaceInitEffect = (personalSpace: Space, { fromCredential }: { fromCredential: boolean }) =>\n Effect.gen(function* () {\n yield* Effect.promise(() => personalSpace.waitUntilReady());\n\n if (fromCredential) {\n AppSpace.setPersonalSpace(personalSpace);\n }\n\n // Check if deck state indicates we should switch to default space.\n const layout = registry.get(layoutAtom);\n if (layout.workspace === 'default') {\n yield* invoke(LayoutOperation.SwitchWorkspace, { subject: Paths.getSpacePath(personalSpace.id) });\n }\n\n const queryResults = yield* Effect.promise(() =>\n personalSpace.db.query(Filter.type(Expando.Expando, { key: SHARED })).run(),\n );\n if (!queryResults[0]) {\n // TODO(wittjosiah): Cannot be a Folder because Spaces are not TypedObjects so can't be saved in the database.\n // Instead, we store order as an array of space ids.\n try {\n personalSpace.db.add(Obj.make(Expando.Expando, { key: SHARED, order: [] }));\n } catch (err) {\n // The space may have been destroyed (e.g. during test teardown) between the query and the add.\n log.warn('Failed to initialize spaces order, space may be closing', { err });\n }\n }\n });\n\n const startPersonalSpaceInit = (personalSpace: Space, opts: { fromCredential: boolean }) => {\n if (personalSpaceInitialized) {\n return;\n }\n // Set before forking so concurrent subscribe callbacks don't start a second initialization.\n personalSpaceInitialized = true;\n personalSpaceInitFiber = Effect.runFork(personalSpaceInitEffect(personalSpace, opts));\n };\n\n // Try to find the personal space now, or subscribe to find it later.\n // Initialization is non-blocking so subscriptions wire immediately.\n const resolved = AppSpace.resolvePersonalSpace(client);\n if (resolved) {\n startPersonalSpaceInit(resolved.space, resolved);\n } else {\n const personalSpaceSub = client.spaces.subscribe(() => {\n const resolved = AppSpace.resolvePersonalSpace(client);\n if (resolved) {\n startPersonalSpaceInit(resolved.space, resolved);\n }\n });\n subscriptions.add(() => personalSpaceSub.unsubscribe());\n }\n\n //\n // Space subscriptions — set up immediately, do not depend on personal space.\n //\n\n // Await missing objects - subscribe to layout atom changes.\n // NOTE: Use immediate: true to check initial state (URL handler may have already set active).\n let lastActiveCleanup: (() => void) | undefined;\n subscriptions.add(\n registry.subscribe(\n layoutAtom,\n (layout) => {\n // Clean up previous effect.\n lastActiveCleanup?.();\n lastActiveCleanup = undefined;\n\n // Determine the ID to check - either from active item or workspace.\n const id = layout.active.length === 1 ? layout.active[0] : layout.workspace;\n if (!id) {\n return;\n }\n\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node && (isEchoRef(id) || id.length === SPACE_ID_LENGTH)) {\n void Graph.initialize(graph, id);\n const timeout = setTimeout(async () => {\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node) {\n await invokePromise(SpaceOperation.WaitForObject, { id });\n }\n }, WAIT_FOR_OBJECT_TIMEOUT);\n\n lastActiveCleanup = () => clearTimeout(timeout);\n }\n },\n { immediate: true },\n ),\n );\n // Also add cleanup for the last effect.\n subscriptions.add(() => lastActiveCleanup?.());\n\n // Cache space names.\n const spaceNamesSub = client.spaces.subscribe(async (spaces) => {\n // TODO(wittjosiah): Remove. This is a hack to be able to migrate the personal space properties.\n const personalSpaceForMigration = AppSpace.resolvePersonalSpace(client);\n if (\n personalSpaceForMigration?.space &&\n personalSpaceForMigration.space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION\n ) {\n await personalSpaceForMigration.space.internal.migrate();\n }\n\n spaces\n .filter((space) => space.state.get() === SpaceState.SPACE_READY)\n .forEach((space) => {\n if (Option.isNone(Annotation.get(space.properties, AppAnnotation.RootCollectionAnnotation))) {\n const legacyRef = (space.properties as any)[Type.getTypename(Collection.Collection)];\n if (legacyRef) {\n Obj.update(space.properties, (properties) => {\n Annotation.set(properties, AppAnnotation.RootCollectionAnnotation, legacyRef);\n });\n }\n }\n if (Migrations.namespace && Option.isNone(Annotation.get(space.properties, MigrationVersionAnnotation))) {\n const legacyVersion = (space.properties as any)[`${Migrations.namespace}.version`];\n if (typeof legacyVersion === 'string') {\n Obj.update(space.properties, (properties) => {\n Annotation.set(properties, MigrationVersionAnnotation, legacyVersion);\n });\n }\n }\n\n const updateSpaceName = () => {\n const name = space.properties.name;\n if (!name) {\n registry.update(stateAtom, (current) => {\n const { [space.id]: _, ...rest } = current.spaceNames;\n return { ...current, spaceNames: rest };\n });\n } else {\n registry.update(stateAtom, (current) => ({\n ...current,\n spaceNames: { ...current.spaceNames, [space.id]: name },\n }));\n }\n };\n updateSpaceName();\n subscriptions.add(Obj.subscribe(space.properties, updateSpaceName));\n });\n });\n subscriptions.add(() => spaceNamesSub.unsubscribe());\n\n // Broadcast active node to other peers in the space - subscribe to both layout and attention.\n let broadcastCleanup: (() => void) | undefined;\n const setupBroadcast = () => {\n broadcastCleanup?.();\n\n const layout = registry.get(layoutAtom);\n const current = attention.getCurrent();\n const active = layout.active;\n const inactive = layout.inactive;\n\n const send = () => {\n const spaces = client.spaces.get();\n const identity = client.halo.identity.get();\n if (identity) {\n // Group parts by space for efficient messaging.\n const idsBySpace = reduceGroupBy(active, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n const removedBySpace = reduceGroupBy(inactive, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n // NOTE: Ensure all spaces are included so that we send the correct `removed` object arrays.\n for (const space of spaces) {\n if (!idsBySpace.has(space.id)) {\n idsBySpace.set(space.id, []);\n }\n }\n\n for (const [spaceId, added] of idsBySpace) {\n const removed = removedBySpace.get(spaceId) ?? [];\n const space = spaces.find((space) => space.id === spaceId);\n if (!space) {\n continue;\n }\n\n void space\n .postMessage('viewing', {\n identityKey: identity.identityKey.toHex(),\n attended: current,\n added,\n removed,\n })\n // TODO(burdon): This seems defensive; why would this fail? Backoff interval.\n .catch((err) => {\n log.warn('Failed to broadcast active node for presence.', {\n err: err.message,\n });\n });\n }\n }\n };\n\n send();\n // Send at interval to allow peers to expire entries if they become disconnected.\n const interval = setInterval(() => send(), ACTIVE_NODE_BROADCAST_INTERVAL);\n broadcastCleanup = () => clearInterval(interval);\n };\n\n // Subscribe to layout changes for broadcast.\n subscriptions.add(registry.subscribe(layoutAtom, setupBroadcast));\n // Subscribe to attention.current changes.\n subscriptions.add(attention.subscribeCurrent(() => setupBroadcast()));\n // Initial setup.\n setupBroadcast();\n // Cleanup.\n subscriptions.add(() => broadcastCleanup?.());\n\n // Listen for active nodes from other peers in the space.\n const viewingSub = client.spaces.subscribe((spaces) => {\n spaceSubscriptions.clear();\n spaces.forEach((space) => {\n spaceSubscriptions.add(\n space.listen('viewing', (message) => {\n const { added, removed, attended } = message.payload;\n\n const identityKey = PublicKey.safeFrom(message.payload.identityKey);\n const currentIdentity = client.halo.identity.get();\n if (\n identityKey &&\n !currentIdentity?.identityKey.equals(identityKey) &&\n Array.isArray(added) &&\n Array.isArray(removed)\n ) {\n // TODO(wittjosiah): Stop using (Complex)Map inside reactive object.\n registry.update(ephemeralAtom, (ephemeral) => {\n added.forEach((id) => {\n if (typeof id === 'string') {\n if (!(id in ephemeral.viewersByObject)) {\n ephemeral.viewersByObject[id] = new ComplexMap(PublicKey.hash);\n }\n ephemeral.viewersByObject[id]!.set(identityKey, {\n lastSeen: Date.now(),\n currentlyAttended: new Set(attended).has(id),\n });\n if (!ephemeral.viewersByIdentity.has(identityKey)) {\n ephemeral.viewersByIdentity.set(identityKey, new Set());\n }\n ephemeral.viewersByIdentity.get(identityKey)!.add(id);\n }\n });\n\n removed.forEach((id) => {\n if (typeof id === 'string') {\n ephemeral.viewersByObject[id]?.delete(identityKey);\n ephemeral.viewersByIdentity.get(identityKey)?.delete(id);\n // It's okay for these to be empty sets/maps, reduces churn.\n }\n });\n\n return { ...ephemeral };\n });\n }\n }),\n );\n });\n });\n subscriptions.add(() => viewingSub.unsubscribe());\n\n // Enable edge replication for all spaces.\n try {\n yield* Effect.tryPromise(() =>\n Promise.all(\n client.spaces\n .get()\n .map((space) => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED)),\n ),\n );\n registry.update(stateAtom, (current) => ({ ...current, enabledEdgeReplication: true }));\n } catch (err) {\n log.catch(err);\n }\n\n return Capability.contributes(Capabilities.Null, null, () =>\n Effect.gen(function* () {\n if (personalSpaceInitFiber) {\n yield* Fiber.interrupt(personalSpaceInitFiber);\n }\n spaceSubscriptions.clear();\n subscriptions.clear();\n }),\n );\n }),\n);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Effect", "Fiber", "Option", "Capabilities", "Capability", "AppAnnotation", "AppCapabilities", "AppSpace", "LayoutOperation", "Paths", "SubscriptionList", "Annotation", "Collection", "Filter", "Obj", "Type", "SPACE_ID_LENGTH", "parseId", "log", "Migrations", "MigrationVersionAnnotation", "AttentionCapabilities", "ClientCapabilities", "Graph", "EdgeReplicationSetting", "PublicKey", "SpaceState", "Expando", "ComplexMap", "reduceGroupBy", "SpaceOperation", "SpaceCapabilities", "ACTIVE_NODE_BROADCAST_INTERVAL", "isEchoRef", "makeModule", "subscriptions", "SubscriptionList", "spaceSubscriptions", "invokePromise", "Capability", "AppCapabilities", "registry", "Capabilities", "AtomRegistry", "layoutAtom", "attention", "AttentionCapabilities", "Attention", "stateAtom", "get", "SpaceCapabilities", "ephemeralAtom", "EphemeralState", "client", "ClientCapabilities", "Client", "setPersonalSpace", "personalSpace", "invoke", "LayoutOperation", "SwitchWorkspace", "subject", "getSpacePath", "queryResults", "warn", "startPersonalSpaceInit", "personalSpaceInitialized", "resolved", "personalSpaceSub", "spaces", "subscribe", "lastActiveCleanup", "active", "Graph", "initialize", "graph", "id", "timeout", "setTimeout", "node", "getNode", "SpaceOperation", "WaitForObject", "WAIT_FOR_OBJECT_TIMEOUT", "immediate", "spaceNamesSub", "personalSpaceForMigration", "AppSpace", "resolvePersonalSpace", "internal", "filter", "SpaceState", "SPACE_READY", "legacyRef", "space", "properties", "Type", "getTypename", "Collection", "Obj", "Annotation", "Migrations", "legacyVersion", "MigrationVersionAnnotation", "update", "current", "spaceNames", "updateSpaceName", "broadcastCleanup", "layout", "inactive", "send", "identity", "idsBySpace", "spaceId", "parseId", "set", "find", "attended", "added", "removed", "catch", "err", "add", "subscribeCurrent", "setupBroadcast", "viewingSub", "identityKey", "PublicKey", "safeFrom", "message", "currentIdentity", "halo", "equals", "ephemeral", "viewersByObject", "currentlyAttended", "Set", "viewersByIdentity", "enabledEdgeReplication", "contributes", "Effect", "interrupt", "personalSpaceInitFiber"]
|
|
7
7
|
}
|
|
@@ -143,13 +143,14 @@ var translations = [
|
|
|
143
143
|
"object.placeholder": "Type a title here\u2026",
|
|
144
144
|
"personal-space.label": "Personal Space",
|
|
145
145
|
"spaces.label": "Spaces",
|
|
146
|
-
"space-settings.label": "
|
|
146
|
+
"space-settings.label": "Your spaces",
|
|
147
147
|
"space-settings.description": "Per-space settings for properties, membership, integrations, and other space-specific objects.",
|
|
148
148
|
"save-files-to-directory.label": "Save files to disk",
|
|
149
149
|
"select-path.label": "Select path",
|
|
150
150
|
"snapshot-by-schema.label": "Snapshot of objects",
|
|
151
151
|
"rename-collection.label": "Rename collection",
|
|
152
152
|
"rename-object.label": "Rename object",
|
|
153
|
+
"delete-object.label": "Delete object",
|
|
153
154
|
"duplicate-object.label": "Duplicate object",
|
|
154
155
|
"object-deleted.label": "Object deleted",
|
|
155
156
|
"objects-deleted.label": "Objects deleted",
|
|
@@ -194,6 +195,7 @@ var translations = [
|
|
|
194
195
|
"sync-status.title": "Sync status",
|
|
195
196
|
"dismiss.label": "Dismiss",
|
|
196
197
|
"join-success.label": "Successfully joined space",
|
|
198
|
+
"join-no-identity-toast.title": "Log in to accept this invitation",
|
|
197
199
|
"name.label": "Name",
|
|
198
200
|
"name.placeholder": "Name",
|
|
199
201
|
"object-properties.label": "Properties",
|
|
@@ -218,7 +220,10 @@ var translations = [
|
|
|
218
220
|
"expose-object.label": "Expose in navtree",
|
|
219
221
|
"add-tag.label": "Add tag",
|
|
220
222
|
"advanced-settings.label": "Advanced",
|
|
223
|
+
"settings.show-hidden.label": "Show hidden types",
|
|
224
|
+
"settings.show-hidden.description": "Include types annotated as hidden (e.g. Tag, View, Feed) in the database section.",
|
|
221
225
|
"settings.space-list.label": "Spaces",
|
|
226
|
+
"settings.space-list.description": "Settings for each space you belong to.",
|
|
222
227
|
"settings.open-settings.label": "Open settings",
|
|
223
228
|
"settings-panel.label": "Open settings",
|
|
224
229
|
"related-actions.label": "Related Actions",
|
|
@@ -252,9 +257,9 @@ var translations = [
|
|
|
252
257
|
"icon.description": "Icon used to represent the space in the app.",
|
|
253
258
|
"hue.description": "Color used to represent the space in the app.",
|
|
254
259
|
"edge-replication.description": "Only change this if you know what you're doing. Disabling this will prevent the space from replicating through Composer's EDGE services, and relies solely on peer-to-peer sync.",
|
|
255
|
-
"space-
|
|
256
|
-
"space-
|
|
257
|
-
"copy-space-
|
|
260
|
+
"space-id.title": "Space ID",
|
|
261
|
+
"space-id.description": "The unique identifier for this space. Use this to connect external services.",
|
|
262
|
+
"copy-space-id.label": "Copy space ID",
|
|
258
263
|
"space-controls.title": "Space Controls",
|
|
259
264
|
"space-controls.description": "Advanced controls for this space.",
|
|
260
265
|
"backup-space.title": "Backup Space",
|
|
@@ -279,9 +284,12 @@ var translations = [
|
|
|
279
284
|
"sync-latency.label": "Latency",
|
|
280
285
|
"sync-upload.label": "Upload",
|
|
281
286
|
"sync-download.label": "Download",
|
|
282
|
-
"
|
|
287
|
+
"nav-tree-group-content.label": "Content",
|
|
288
|
+
"nav-tree-group-comm.label": "Communications",
|
|
289
|
+
"nav-tree-group-system.label": "System",
|
|
290
|
+
"database-section.label": "Database",
|
|
283
291
|
"collections-section.label": "Collections",
|
|
284
|
-
"type-collection-
|
|
292
|
+
"type-collection-empty.message": "No objects of this type yet.",
|
|
285
293
|
"search.placeholder": "Search\u2026",
|
|
286
294
|
"auth-code.message": "Authorization code",
|
|
287
295
|
"auth-other-device-emoji.message": "Authorization icon",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/translations.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Collection, Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\nimport { Event, Message, Organization, Person, Pipeline, Project, Task } from '@dxos/types';\n\nimport { meta } from '#meta';\n\n// TODO(burdon): Disambiguate with sdk/shell.\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Type.Type)]: {\n 'typename.label': 'Type',\n 'typename.label_zero': 'Types',\n 'typename.label_one': 'Type',\n 'typename.label_other': 'Types',\n 'object-name.placeholder': 'New type',\n 'add-object.label': 'Add type',\n 'rename-object.label': 'Rename type',\n 'delete-object.label': 'Delete type',\n 'object-deleted.label': 'Type deleted',\n },\n [Type.getTypename(Collection.Collection)]: {\n 'typename.label': 'Collection',\n 'typename.label_zero': 'Collections',\n 'typename.label_one': 'Collection',\n 'typename.label_other': 'Collections',\n 'object-name.placeholder': 'New collection',\n 'add-object.label': 'Add collection',\n 'rename-object.label': 'Rename collection',\n 'delete-object.label': 'Delete collection',\n 'object-deleted.label': 'Collection deleted',\n },\n [Type.getTypename(Event.Event)]: {\n 'typename.label': 'Event',\n 'typename.label_zero': 'Events',\n 'typename.label_one': 'Event',\n 'typename.label_other': 'Events',\n 'object-name.placeholder': 'New event',\n 'add-object.label': 'Add event',\n 'rename-object.label': 'Rename event',\n 'delete-object.label': 'Delete event',\n 'object-deleted.label': 'Event deleted',\n },\n [Type.getTypename(Message.Message)]: {\n 'typename.label': 'Message',\n 'typename.label_zero': 'Messages',\n 'typename.label_one': 'Message',\n 'typename.label_other': 'Messages',\n 'object-name.placeholder': 'New message',\n 'add-object.label': 'Add message',\n 'rename-object.label': 'Rename message',\n 'delete-object.label': 'Delete message',\n 'object-deleted.label': 'Message deleted',\n },\n [Type.getTypename(Organization.Organization)]: {\n 'typename.label': 'Organization',\n 'typename.label_zero': 'Organizations',\n 'typename.label_one': 'Organization',\n 'typename.label_other': 'Organizations',\n 'object-name.placeholder': 'New organization',\n 'add-object.label': 'Add organization',\n 'rename-object.label': 'Rename organization',\n 'delete-object.label': 'Delete organization',\n 'object-deleted.label': 'Organization deleted',\n },\n [Type.getTypename(Person.Person)]: {\n 'typename.label': 'Person',\n 'typename.label_zero': 'People',\n 'typename.label_one': 'Person',\n 'typename.label_other': 'People',\n 'object-name.placeholder': 'New person',\n 'add-object.label': 'Add person',\n 'rename-object.label': 'Rename person',\n 'delete-object.label': 'Delete person',\n 'object-deleted.label': 'Person deleted',\n },\n [Type.getTypename(Pipeline.Pipeline)]: {\n 'typename.label': 'Pipeline',\n 'typename.label_zero': 'Pipelines',\n 'typename.label_one': 'Pipeline',\n 'typename.label_other': 'Pipelines',\n 'object-name.placeholder': 'New pipeline',\n 'add-object.label': 'Add pipeline',\n 'rename-object.label': 'Rename pipeline',\n 'delete-object.label': 'Delete pipeline',\n 'object-deleted.label': 'Pipeline deleted',\n },\n [Type.getTypename(Project.Project)]: {\n 'typename.label': 'Project',\n 'typename.label_zero': 'Projects',\n 'typename.label_one': 'Project',\n 'typename.label_other': 'Projects',\n 'object-name.placeholder': 'New project',\n 'add-object.label': 'Add project',\n 'rename-object.label': 'Rename project',\n 'delete-object.label': 'Delete project',\n 'object-deleted.label': 'Project deleted',\n },\n [Type.getTypename(Task.Task)]: {\n 'typename.label': 'Task',\n 'typename.label_zero': 'Tasks',\n 'typename.label_one': 'Task',\n 'typename.label_other': 'Tasks',\n 'object-name.placeholder': 'New task',\n 'add-object.label': 'Add task',\n 'rename-object.label': 'Rename task',\n 'delete-object.label': 'Delete task',\n 'object-deleted.label': 'Task deleted',\n },\n [meta.profile.key]: {\n 'plugin.name': 'Spaces',\n 'add-object.label': 'Add object',\n 'first-run.message': 'Nothing selected.',\n 'create-space.label': 'Create space',\n 'join-space.label': 'Join space',\n 'import-space.label': 'Import space',\n 'export-space-binary.label': 'Export space (Binary)',\n 'export-space-json.label': 'Export space (JSON)',\n 'import-space-dialog.title': 'Import space',\n 'import-space-dialog.description': 'Importing from a backup will create a new space from the file.',\n 'import-space-dialog.upload.label': 'Drag file here or click to browse',\n 'empty-space.message': 'No documents',\n 'empty-tree.message': 'No spaces',\n 'unnamed-space.label': 'New space',\n 'closed-space.label': 'Closed',\n 'loading-space.label': 'Loading space…',\n 'lock-space.label': 'Lock space',\n 'unlock-space.label': 'Unlock space',\n 'rename-space.label': 'Rename space',\n 'active-space.label': 'Active space:',\n 'space-name.label': 'Space name',\n 'object-name.label': 'Object name',\n 'close-space.label': 'Close space',\n 'open-space.label': 'Open space',\n 'export-data.label': 'Export data',\n 'import-data.label': 'Import data',\n 'migrate-space.label': 'Migrate space',\n 'share-space.label': 'Share current space',\n 'save-space-to-disk.label': 'Save to disk',\n 'load-space-from-disk.label': 'Load from disk',\n 'confirm-restore.title': 'Overwrite files in this space?',\n 'upload-file.message': 'Drag file here or click to browse',\n 'object-name.placeholder': 'Object',\n 'object.placeholder': 'Type a title here…',\n 'personal-space.label': 'Personal Space',\n 'spaces.label': 'Spaces',\n 'space-settings.label': 'Spaces',\n 'space-settings.description':\n 'Per-space settings for properties, membership, integrations, and other space-specific objects.',\n 'save-files-to-directory.label': 'Save files to disk',\n 'select-path.label': 'Select path',\n 'snapshot-by-schema.label': 'Snapshot of objects',\n 'rename-collection.label': 'Rename collection',\n 'rename-object.label': 'Rename object',\n 'duplicate-object.label': 'Duplicate object',\n 'object-deleted.label': 'Object deleted',\n 'objects-deleted.label': 'Objects deleted',\n 'go-to-object.alt': 'Open',\n 'go-to-object.label': 'Open object',\n 'found-object.label': 'Ready.',\n 'found-object.description': 'The requested object is now available.',\n 'waiting-for-object.label': 'Loading…',\n 'waiting-for-object.description': 'The requested object is still being synchronized.',\n 'object-not-found.label': 'Nothing found.',\n 'object-not-found.description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'missing-object.message': 'Object not available.',\n 'missing-object.description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'create-object-in-space.label': 'Add to space',\n 'create-object-in-collection.label': 'Add to collection',\n 'remove-from-collection.label': 'Remove from collection',\n 'create-object-in-system-collection.label': 'Add to system collection',\n 'new-type.label': 'New type',\n 'add-view-to-schema.label': 'Add view for type',\n 'space-members.label': 'Space members',\n 'active-space-members.heading': 'Online ({{count}})',\n 'inactive-space-members.heading': 'Offline ({{count}})',\n 'presence.label_zero': 'No other viewers',\n 'presence.label_one': '1 other viewer',\n 'presence.label_other': '{{count}} other viewers',\n 'persisted-locally.label': 'Changes saved locally.',\n 'persisted-locally.message': 'All changes have been saved to disk on this device.',\n 'persistence-pending.label': 'Saving…',\n 'persistence-error.label': 'Error saving changes.',\n 'more-actions.label': 'More actions',\n 'invitations.heading': 'Invitations',\n 'keyshortcuts.label': 'Keyboard shortcuts',\n 'menu-footer.label': 'Details',\n 'location.label': 'Located in',\n 'space-limit.label': 'Space Limit Reached',\n 'space-limit.description':\n 'This space has reached the maximum number of objects for the beta. This limit includes deleted objects currently, but those can be permanently removed with the cleanup action.',\n 'space-limit-close.label': 'Close',\n 'remove-deleted-objects.label': 'Cleanup',\n 'remove-deleted-objects.alt': 'Permanently remove deleted objects to free up space.',\n 'copy-link.label': 'Copy link',\n 'default-on-space-create.label': 'On space create',\n 'sync-status.title': 'Sync status',\n 'dismiss.label': 'Dismiss',\n 'join-success.label': 'Successfully joined space',\n 'name.label': 'Name',\n 'name.placeholder': 'Name',\n 'object-properties.label': 'Properties',\n 'edge-replication.label': 'Enable EDGE Replication',\n 'saving-locally.label': 'Writing to disk',\n 'downloading.label': 'Replicating from peers',\n 'uploading.label': 'Replicating to peers',\n 'offline-persisted.label': 'Saved to disk (offline)',\n 'remote-synced.label': 'Synced with peers',\n 'syncing.label': 'Space syncing',\n 'show-all.label': 'Show all',\n 'no-sync-status.label': 'No space with missing objects.',\n 'create-space-dialog.title': 'Create Space',\n 'create-object-dialog.title': 'Create {{object}}',\n 'space-input.placeholder': 'Select space',\n 'schema-input.placeholder': 'Select type',\n 'plugin-subtitle.label': '{{plugin}} Plugin',\n 'creating-object-type.label': 'Type',\n 'creating-in-space.label': 'Location',\n 'creating-in-collection.label': 'In Collection',\n 'clear-input.label': 'Clear',\n 'expose-object.label': 'Expose in navtree',\n 'add-tag.label': 'Add tag',\n 'advanced-settings.label': 'Advanced',\n 'settings.space-list.label': 'Spaces',\n 'settings.open-settings.label': 'Open settings',\n 'settings-panel.label': 'Open settings',\n 'related-actions.label': 'Related Actions',\n 'related-objects.label': 'Related Objects',\n 'row-details-no-selection.label': 'No objects selected',\n 'companion-related.label': 'Related',\n 'companion-selected-objects.label': 'Selected',\n 'field-deleted.label': 'Field deleted',\n\n 'members-panel.label': 'Members',\n 'members-verbose.label': 'Manage space members',\n 'members.description': 'Current space members and pending invitations.',\n 'members.label': 'Members',\n 'invitations.label': 'Invitations',\n 'space-invitation.description': 'Manage invitations to the space.',\n 'qr-code.description': 'Share this QR code, or copy the URL and share it with the person you want to invite.',\n 'locked-space.description': 'This space is locked, unlock it to invite new members.',\n 'space-locked.label': 'Lock space',\n 'space-locked.description': 'Locking a space prevents new members from being invited to the space.',\n\n 'settings.panel.label': 'Space Settings',\n 'settings-section.label': 'Settings',\n 'open-current-space-settings.label': 'Open current space settings',\n 'space-settings-properties.label': 'General',\n 'space-properties-settings-verbose.label': 'Manage space properties',\n 'space-properties-settings.description': 'Display settings for this space.',\n 'space-settings-schema.label': 'Types',\n 'schema-verbose.label': 'Manage types',\n 'schema.description': 'Types defined within this space.',\n 'no-schemas-found.message': 'No types found',\n 'display-name-input.placeholder': 'Space name',\n 'display-name.description': 'Name of the space as it appears in the app.',\n 'icon.description': 'Icon used to represent the space in the app.',\n 'hue.description': 'Color used to represent the space in the app.',\n 'edge-replication.description':\n \"Only change this if you know what you're doing. Disabling this will prevent the space from replicating through Composer's EDGE services, and relies solely on peer-to-peer sync.\",\n 'space-key.title': 'Space Key',\n 'space-key.description': 'The unique identifier for this space. Use this to connect external services.',\n 'copy-space-key.label': 'Copy space key',\n\n 'space-controls.title': 'Space Controls',\n 'space-controls.description': 'Advanced controls for this space.',\n 'backup-space.title': 'Backup Space',\n 'backup-space.description':\n 'Download a backup of the space. Contains all data in the space in an unencrypted format.',\n 'download-backup.label': 'Download backup',\n 'download-backup-binary.label': 'Binary (.tar)',\n 'download-backup-json.label': 'JSON (.dx.json)',\n 'repair-space.title': 'Repair Space',\n 'repair-space.description': 'Run repair operations on the space.',\n 'repair-space.label': 'Run repairs',\n\n 'danger-zone.title': 'Danger Zone',\n 'danger-zone.description': 'Destructive actions that cannot be undone.',\n\n 'delete-space.title': 'Delete Space',\n 'delete-space.description':\n 'Remove this space from all of your devices. The space stops replicating and is hidden everywhere. This action cannot be undone.',\n 'delete-space.label': 'Delete space',\n 'delete-space-confirm.title': 'Delete this space?',\n 'delete-space-confirm.description':\n 'This space will be removed from all of your devices and will stop replicating. This action cannot be undone.',\n 'delete-space-failed.message': 'Failed to delete space.',\n\n 'sync-edge-connected.label': 'EDGE connected',\n 'sync-edge-disconnected.label': 'Edge disconnected',\n 'sync-no-connection.label': 'No connection to edge service',\n 'sync-latency.label': 'Latency',\n 'sync-upload.label': 'Upload',\n 'sync-download.label': 'Download',\n\n 'types-section.label': 'Database',\n 'collections-section.label': 'Collections',\n 'type-collection-all.label': 'All',\n\n 'search.placeholder': 'Search…',\n 'auth-code.message': 'Authorization code',\n 'auth-other-device-emoji.message': 'Authorization icon',\n 'cancel.label': 'Cancel',\n 'delete-key.button': 'Delete token',\n\n 'invite-one.label': 'Create single-use invitation',\n 'invite-one.description': 'One-time link',\n 'invite-many.label': 'Create multi-use invitation',\n 'invite-many.description': 'Anyone with the link can join.',\n\n 'presence.label': 'Online activity',\n 'qr.label': 'QR Code',\n 'typename.label': 'Object',\n 'unnamed-collection.label': 'Unnamed',\n 'space-home-node.label': 'Home',\n 'space-home.recent.heading': 'Recent',\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Collection, Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\nimport { Event, Message, Organization, Person, Pipeline, Project, Task } from '@dxos/types';\n\nimport { meta } from '#meta';\n\n// TODO(burdon): Disambiguate with sdk/shell.\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Type.Type)]: {\n 'typename.label': 'Type',\n 'typename.label_zero': 'Types',\n 'typename.label_one': 'Type',\n 'typename.label_other': 'Types',\n 'object-name.placeholder': 'New type',\n 'add-object.label': 'Add type',\n 'rename-object.label': 'Rename type',\n 'delete-object.label': 'Delete type',\n 'object-deleted.label': 'Type deleted',\n },\n [Type.getTypename(Collection.Collection)]: {\n 'typename.label': 'Collection',\n 'typename.label_zero': 'Collections',\n 'typename.label_one': 'Collection',\n 'typename.label_other': 'Collections',\n 'object-name.placeholder': 'New collection',\n 'add-object.label': 'Add collection',\n 'rename-object.label': 'Rename collection',\n 'delete-object.label': 'Delete collection',\n 'object-deleted.label': 'Collection deleted',\n },\n [Type.getTypename(Event.Event)]: {\n 'typename.label': 'Event',\n 'typename.label_zero': 'Events',\n 'typename.label_one': 'Event',\n 'typename.label_other': 'Events',\n 'object-name.placeholder': 'New event',\n 'add-object.label': 'Add event',\n 'rename-object.label': 'Rename event',\n 'delete-object.label': 'Delete event',\n 'object-deleted.label': 'Event deleted',\n },\n [Type.getTypename(Message.Message)]: {\n 'typename.label': 'Message',\n 'typename.label_zero': 'Messages',\n 'typename.label_one': 'Message',\n 'typename.label_other': 'Messages',\n 'object-name.placeholder': 'New message',\n 'add-object.label': 'Add message',\n 'rename-object.label': 'Rename message',\n 'delete-object.label': 'Delete message',\n 'object-deleted.label': 'Message deleted',\n },\n [Type.getTypename(Organization.Organization)]: {\n 'typename.label': 'Organization',\n 'typename.label_zero': 'Organizations',\n 'typename.label_one': 'Organization',\n 'typename.label_other': 'Organizations',\n 'object-name.placeholder': 'New organization',\n 'add-object.label': 'Add organization',\n 'rename-object.label': 'Rename organization',\n 'delete-object.label': 'Delete organization',\n 'object-deleted.label': 'Organization deleted',\n },\n [Type.getTypename(Person.Person)]: {\n 'typename.label': 'Person',\n 'typename.label_zero': 'People',\n 'typename.label_one': 'Person',\n 'typename.label_other': 'People',\n 'object-name.placeholder': 'New person',\n 'add-object.label': 'Add person',\n 'rename-object.label': 'Rename person',\n 'delete-object.label': 'Delete person',\n 'object-deleted.label': 'Person deleted',\n },\n [Type.getTypename(Pipeline.Pipeline)]: {\n 'typename.label': 'Pipeline',\n 'typename.label_zero': 'Pipelines',\n 'typename.label_one': 'Pipeline',\n 'typename.label_other': 'Pipelines',\n 'object-name.placeholder': 'New pipeline',\n 'add-object.label': 'Add pipeline',\n 'rename-object.label': 'Rename pipeline',\n 'delete-object.label': 'Delete pipeline',\n 'object-deleted.label': 'Pipeline deleted',\n },\n [Type.getTypename(Project.Project)]: {\n 'typename.label': 'Project',\n 'typename.label_zero': 'Projects',\n 'typename.label_one': 'Project',\n 'typename.label_other': 'Projects',\n 'object-name.placeholder': 'New project',\n 'add-object.label': 'Add project',\n 'rename-object.label': 'Rename project',\n 'delete-object.label': 'Delete project',\n 'object-deleted.label': 'Project deleted',\n },\n [Type.getTypename(Task.Task)]: {\n 'typename.label': 'Task',\n 'typename.label_zero': 'Tasks',\n 'typename.label_one': 'Task',\n 'typename.label_other': 'Tasks',\n 'object-name.placeholder': 'New task',\n 'add-object.label': 'Add task',\n 'rename-object.label': 'Rename task',\n 'delete-object.label': 'Delete task',\n 'object-deleted.label': 'Task deleted',\n },\n [meta.profile.key]: {\n 'plugin.name': 'Spaces',\n 'add-object.label': 'Add object',\n 'first-run.message': 'Nothing selected.',\n 'create-space.label': 'Create space',\n 'join-space.label': 'Join space',\n 'import-space.label': 'Import space',\n 'export-space-binary.label': 'Export space (Binary)',\n 'export-space-json.label': 'Export space (JSON)',\n 'import-space-dialog.title': 'Import space',\n 'import-space-dialog.description': 'Importing from a backup will create a new space from the file.',\n 'import-space-dialog.upload.label': 'Drag file here or click to browse',\n 'empty-space.message': 'No documents',\n 'empty-tree.message': 'No spaces',\n 'unnamed-space.label': 'New space',\n 'closed-space.label': 'Closed',\n 'loading-space.label': 'Loading space…',\n 'lock-space.label': 'Lock space',\n 'unlock-space.label': 'Unlock space',\n 'rename-space.label': 'Rename space',\n 'active-space.label': 'Active space:',\n 'space-name.label': 'Space name',\n 'object-name.label': 'Object name',\n 'close-space.label': 'Close space',\n 'open-space.label': 'Open space',\n 'export-data.label': 'Export data',\n 'import-data.label': 'Import data',\n 'migrate-space.label': 'Migrate space',\n 'share-space.label': 'Share current space',\n 'save-space-to-disk.label': 'Save to disk',\n 'load-space-from-disk.label': 'Load from disk',\n 'confirm-restore.title': 'Overwrite files in this space?',\n 'upload-file.message': 'Drag file here or click to browse',\n 'object-name.placeholder': 'Object',\n 'object.placeholder': 'Type a title here…',\n 'personal-space.label': 'Personal Space',\n 'spaces.label': 'Spaces',\n 'space-settings.label': 'Your spaces',\n 'space-settings.description':\n 'Per-space settings for properties, membership, integrations, and other space-specific objects.',\n 'save-files-to-directory.label': 'Save files to disk',\n 'select-path.label': 'Select path',\n 'snapshot-by-schema.label': 'Snapshot of objects',\n 'rename-collection.label': 'Rename collection',\n 'rename-object.label': 'Rename object',\n 'delete-object.label': 'Delete object',\n 'duplicate-object.label': 'Duplicate object',\n 'object-deleted.label': 'Object deleted',\n 'objects-deleted.label': 'Objects deleted',\n 'go-to-object.alt': 'Open',\n 'go-to-object.label': 'Open object',\n 'found-object.label': 'Ready.',\n 'found-object.description': 'The requested object is now available.',\n 'waiting-for-object.label': 'Loading…',\n 'waiting-for-object.description': 'The requested object is still being synchronized.',\n 'object-not-found.label': 'Nothing found.',\n 'object-not-found.description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'missing-object.message': 'Object not available.',\n 'missing-object.description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'create-object-in-space.label': 'Add to space',\n 'create-object-in-collection.label': 'Add to collection',\n 'remove-from-collection.label': 'Remove from collection',\n 'create-object-in-system-collection.label': 'Add to system collection',\n 'new-type.label': 'New type',\n 'add-view-to-schema.label': 'Add view for type',\n 'space-members.label': 'Space members',\n 'active-space-members.heading': 'Online ({{count}})',\n 'inactive-space-members.heading': 'Offline ({{count}})',\n 'presence.label_zero': 'No other viewers',\n 'presence.label_one': '1 other viewer',\n 'presence.label_other': '{{count}} other viewers',\n 'persisted-locally.label': 'Changes saved locally.',\n 'persisted-locally.message': 'All changes have been saved to disk on this device.',\n 'persistence-pending.label': 'Saving…',\n 'persistence-error.label': 'Error saving changes.',\n 'more-actions.label': 'More actions',\n 'invitations.heading': 'Invitations',\n 'keyshortcuts.label': 'Keyboard shortcuts',\n 'menu-footer.label': 'Details',\n 'location.label': 'Located in',\n 'space-limit.label': 'Space Limit Reached',\n 'space-limit.description':\n 'This space has reached the maximum number of objects for the beta. This limit includes deleted objects currently, but those can be permanently removed with the cleanup action.',\n 'space-limit-close.label': 'Close',\n 'remove-deleted-objects.label': 'Cleanup',\n 'remove-deleted-objects.alt': 'Permanently remove deleted objects to free up space.',\n 'copy-link.label': 'Copy link',\n 'default-on-space-create.label': 'On space create',\n 'sync-status.title': 'Sync status',\n 'dismiss.label': 'Dismiss',\n 'join-success.label': 'Successfully joined space',\n 'join-no-identity-toast.title': 'Log in to accept this invitation',\n 'name.label': 'Name',\n 'name.placeholder': 'Name',\n 'object-properties.label': 'Properties',\n 'edge-replication.label': 'Enable EDGE Replication',\n 'saving-locally.label': 'Writing to disk',\n 'downloading.label': 'Replicating from peers',\n 'uploading.label': 'Replicating to peers',\n 'offline-persisted.label': 'Saved to disk (offline)',\n 'remote-synced.label': 'Synced with peers',\n 'syncing.label': 'Space syncing',\n 'show-all.label': 'Show all',\n 'no-sync-status.label': 'No space with missing objects.',\n 'create-space-dialog.title': 'Create Space',\n 'create-object-dialog.title': 'Create {{object}}',\n 'space-input.placeholder': 'Select space',\n 'schema-input.placeholder': 'Select type',\n 'plugin-subtitle.label': '{{plugin}} Plugin',\n 'creating-object-type.label': 'Type',\n 'creating-in-space.label': 'Location',\n 'creating-in-collection.label': 'In Collection',\n 'clear-input.label': 'Clear',\n 'expose-object.label': 'Expose in navtree',\n 'add-tag.label': 'Add tag',\n 'advanced-settings.label': 'Advanced',\n 'settings.show-hidden.label': 'Show hidden types',\n 'settings.show-hidden.description':\n 'Include types annotated as hidden (e.g. Tag, View, Feed) in the database section.',\n 'settings.space-list.label': 'Spaces',\n 'settings.space-list.description': 'Settings for each space you belong to.',\n 'settings.open-settings.label': 'Open settings',\n 'settings-panel.label': 'Open settings',\n 'related-actions.label': 'Related Actions',\n 'related-objects.label': 'Related Objects',\n 'row-details-no-selection.label': 'No objects selected',\n 'companion-related.label': 'Related',\n 'companion-selected-objects.label': 'Selected',\n 'field-deleted.label': 'Field deleted',\n\n 'members-panel.label': 'Members',\n 'members-verbose.label': 'Manage space members',\n 'members.description': 'Current space members and pending invitations.',\n 'members.label': 'Members',\n 'invitations.label': 'Invitations',\n 'space-invitation.description': 'Manage invitations to the space.',\n 'qr-code.description': 'Share this QR code, or copy the URL and share it with the person you want to invite.',\n 'locked-space.description': 'This space is locked, unlock it to invite new members.',\n 'space-locked.label': 'Lock space',\n 'space-locked.description': 'Locking a space prevents new members from being invited to the space.',\n\n 'settings.panel.label': 'Space Settings',\n 'settings-section.label': 'Settings',\n 'open-current-space-settings.label': 'Open current space settings',\n 'space-settings-properties.label': 'General',\n 'space-properties-settings-verbose.label': 'Manage space properties',\n 'space-properties-settings.description': 'Display settings for this space.',\n 'space-settings-schema.label': 'Types',\n 'schema-verbose.label': 'Manage types',\n 'schema.description': 'Types defined within this space.',\n 'no-schemas-found.message': 'No types found',\n 'display-name-input.placeholder': 'Space name',\n 'display-name.description': 'Name of the space as it appears in the app.',\n 'icon.description': 'Icon used to represent the space in the app.',\n 'hue.description': 'Color used to represent the space in the app.',\n 'edge-replication.description':\n \"Only change this if you know what you're doing. Disabling this will prevent the space from replicating through Composer's EDGE services, and relies solely on peer-to-peer sync.\",\n 'space-id.title': 'Space ID',\n 'space-id.description': 'The unique identifier for this space. Use this to connect external services.',\n 'copy-space-id.label': 'Copy space ID',\n\n 'space-controls.title': 'Space Controls',\n 'space-controls.description': 'Advanced controls for this space.',\n 'backup-space.title': 'Backup Space',\n 'backup-space.description':\n 'Download a backup of the space. Contains all data in the space in an unencrypted format.',\n 'download-backup.label': 'Download backup',\n 'download-backup-binary.label': 'Binary (.tar)',\n 'download-backup-json.label': 'JSON (.dx.json)',\n 'repair-space.title': 'Repair Space',\n 'repair-space.description': 'Run repair operations on the space.',\n 'repair-space.label': 'Run repairs',\n\n 'danger-zone.title': 'Danger Zone',\n 'danger-zone.description': 'Destructive actions that cannot be undone.',\n\n 'delete-space.title': 'Delete Space',\n 'delete-space.description':\n 'Remove this space from all of your devices. The space stops replicating and is hidden everywhere. This action cannot be undone.',\n 'delete-space.label': 'Delete space',\n 'delete-space-confirm.title': 'Delete this space?',\n 'delete-space-confirm.description':\n 'This space will be removed from all of your devices and will stop replicating. This action cannot be undone.',\n 'delete-space-failed.message': 'Failed to delete space.',\n\n 'sync-edge-connected.label': 'EDGE connected',\n 'sync-edge-disconnected.label': 'Edge disconnected',\n 'sync-no-connection.label': 'No connection to edge service',\n 'sync-latency.label': 'Latency',\n 'sync-upload.label': 'Upload',\n 'sync-download.label': 'Download',\n\n 'nav-tree-group-content.label': 'Content',\n 'nav-tree-group-comm.label': 'Communications',\n 'nav-tree-group-system.label': 'System',\n 'database-section.label': 'Database',\n 'collections-section.label': 'Collections',\n 'type-collection-empty.message': 'No objects of this type yet.',\n\n 'search.placeholder': 'Search…',\n 'auth-code.message': 'Authorization code',\n 'auth-other-device-emoji.message': 'Authorization icon',\n 'cancel.label': 'Cancel',\n 'delete-key.button': 'Delete token',\n\n 'invite-one.label': 'Create single-use invitation',\n 'invite-one.description': 'One-time link',\n 'invite-many.label': 'Create multi-use invitation',\n 'invite-many.description': 'Anyone with the link can join.',\n\n 'presence.label': 'Online activity',\n 'qr.label': 'QR Code',\n 'typename.label': 'Object',\n 'unnamed-collection.label': 'Unnamed',\n 'space-home-node.label': 'Home',\n 'space-home.recent.heading': 'Recent',\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["Collection", "Type", "Event", "Message", "Organization", "Person", "Pipeline", "Project", "Task", "meta", "translations", "getTypename", "profile", "key"]
|
|
7
7
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SpaceOperation
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LMUG6PEJ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
SpaceCapabilities
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-F5KLUP2P.mjs";
|
|
7
7
|
import "./chunk-J5LGTIGS.mjs";
|
|
8
8
|
|
|
9
9
|
// src/operations/wait-for-object.ts
|
|
@@ -20,4 +20,4 @@ var wait_for_object_default = handler;
|
|
|
20
20
|
export {
|
|
21
21
|
wait_for_object_default as default
|
|
22
22
|
};
|
|
23
|
-
//# sourceMappingURL=wait-for-object-
|
|
23
|
+
//# sourceMappingURL=wait-for-object-U6P2NNWY.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from 'effect/Effect';
|
|
2
2
|
import { Capability } from '@dxos/app-framework';
|
|
3
3
|
import { type SpacePluginOptions } from '#types';
|
|
4
|
-
declare const _default: (props: SpacePluginOptions | undefined) => Effect.Effect<Capability.
|
|
4
|
+
declare const _default: (props: SpacePluginOptions | undefined) => Effect.Effect<Capability.Any, never, Capability.Service>;
|
|
5
5
|
export default _default;
|
|
6
6
|
//# sourceMappingURL=app-graph-builder.d.ts.map
|
|
@@ -7,7 +7,7 @@ export declare const createCollectionExtensions: (args_0: {
|
|
|
7
7
|
shareableLinkOrigin: string;
|
|
8
8
|
}) => Effect.Effect<[Readonly<{
|
|
9
9
|
id: string;
|
|
10
|
-
position?:
|
|
10
|
+
position?: number;
|
|
11
11
|
relation?: Node.RelationInput;
|
|
12
12
|
resolver?: GraphBuilder.ResolverExtension;
|
|
13
13
|
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Readonly<{
|
|
@@ -19,51 +19,33 @@ export declare const createCollectionExtensions: (args_0: {
|
|
|
19
19
|
}>>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
20
20
|
}>[], Readonly<{
|
|
21
21
|
id: string;
|
|
22
|
-
position?:
|
|
22
|
+
position?: number;
|
|
23
23
|
relation?: Node.RelationInput;
|
|
24
24
|
resolver?: GraphBuilder.ResolverExtension;
|
|
25
|
-
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<
|
|
26
|
-
id: string;
|
|
27
|
-
type: string;
|
|
28
|
-
cacheable?: string[];
|
|
29
|
-
properties: Readonly<Record<string, any>>;
|
|
30
|
-
data: any;
|
|
31
|
-
}>>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
25
|
+
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Node.Node>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any>[]>;
|
|
32
26
|
}>[], Readonly<{
|
|
33
27
|
id: string;
|
|
34
|
-
position?:
|
|
28
|
+
position?: number;
|
|
35
29
|
relation?: Node.RelationInput;
|
|
36
30
|
resolver?: GraphBuilder.ResolverExtension;
|
|
37
|
-
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<
|
|
38
|
-
id: string;
|
|
39
|
-
type: string;
|
|
40
|
-
cacheable?: string[];
|
|
41
|
-
properties: Readonly<Record<string, any>>;
|
|
42
|
-
data: any;
|
|
43
|
-
}>>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
31
|
+
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Node.Node>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any>[]>;
|
|
44
32
|
}>[], Readonly<{
|
|
45
33
|
id: string;
|
|
46
|
-
position?:
|
|
34
|
+
position?: number;
|
|
47
35
|
relation?: Node.RelationInput;
|
|
48
36
|
resolver?: GraphBuilder.ResolverExtension;
|
|
49
|
-
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<
|
|
50
|
-
id: string;
|
|
51
|
-
type: string;
|
|
52
|
-
cacheable?: string[];
|
|
53
|
-
properties: Readonly<Record<string, any>>;
|
|
54
|
-
data: any;
|
|
55
|
-
}>>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
37
|
+
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Node.Node>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any>[]>;
|
|
56
38
|
}>[], Readonly<{
|
|
57
39
|
id: string;
|
|
58
|
-
position?:
|
|
40
|
+
position?: number;
|
|
59
41
|
relation?: Node.RelationInput;
|
|
60
42
|
resolver?: GraphBuilder.ResolverExtension;
|
|
61
|
-
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
43
|
+
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Node.Node>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any>[]>;
|
|
44
|
+
}>[], Readonly<{
|
|
45
|
+
id: string;
|
|
46
|
+
position?: number;
|
|
47
|
+
relation?: Node.RelationInput;
|
|
48
|
+
resolver?: GraphBuilder.ResolverExtension;
|
|
49
|
+
connector?: (node: import("@effect-atom/atom/Atom").Atom<Option.Option<Node.Node>>) => import("@effect-atom/atom/Atom").Atom<Node.NodeArg<any>[]>;
|
|
68
50
|
}>[]], never, Capability.Service>;
|
|
69
51
|
//# sourceMappingURL=collections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/collections.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,
|
|
1
|
+
{"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/collections.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMjD,OAAO,EAAS,YAAY,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAkB/D,4GAA4G;AAC5G,eAAO,MAAM,0BAA0B;yBAGhB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA+N3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"companions.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/companions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"companions.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/companions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;AAY/D,gFAAgF;AAEhF,eAAO,MAAM,yBAAyB,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAmE5F,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { GraphBuilder, Node } from '@dxos/plugin-graph';
|
|
|
6
6
|
/** Creates database extensions: types section, schema nodes, schema children, and schema actions. */
|
|
7
7
|
export declare const createDatabaseExtensions: () => Effect.Effect<[Readonly<{
|
|
8
8
|
id: string;
|
|
9
|
-
position?:
|
|
9
|
+
position?: number;
|
|
10
10
|
relation?: Node.RelationInput;
|
|
11
11
|
resolver?: GraphBuilder.ResolverExtension;
|
|
12
12
|
connector?: (node: Atom.Atom<Option.Option<Readonly<{
|
|
@@ -18,51 +18,33 @@ export declare const createDatabaseExtensions: () => Effect.Effect<[Readonly<{
|
|
|
18
18
|
}>>>) => Atom.Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
19
19
|
}>[], Readonly<{
|
|
20
20
|
id: string;
|
|
21
|
-
position?:
|
|
21
|
+
position?: number;
|
|
22
22
|
relation?: Node.RelationInput;
|
|
23
23
|
resolver?: GraphBuilder.ResolverExtension;
|
|
24
|
-
connector?: (node: Atom.Atom<Option.Option<
|
|
25
|
-
id: string;
|
|
26
|
-
type: string;
|
|
27
|
-
cacheable?: string[];
|
|
28
|
-
properties: Readonly<Record<string, any>>;
|
|
29
|
-
data: any;
|
|
30
|
-
}>>>) => Atom.Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
24
|
+
connector?: (node: Atom.Atom<Option.Option<Node.Node>>) => Atom.Atom<Node.NodeArg<any>[]>;
|
|
31
25
|
}>[], Readonly<{
|
|
32
26
|
id: string;
|
|
33
|
-
position?:
|
|
27
|
+
position?: number;
|
|
34
28
|
relation?: Node.RelationInput;
|
|
35
29
|
resolver?: GraphBuilder.ResolverExtension;
|
|
36
|
-
connector?: (node: Atom.Atom<Option.Option<
|
|
37
|
-
id: string;
|
|
38
|
-
type: string;
|
|
39
|
-
cacheable?: string[];
|
|
40
|
-
properties: Readonly<Record<string, any>>;
|
|
41
|
-
data: any;
|
|
42
|
-
}>>>) => Atom.Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
30
|
+
connector?: (node: Atom.Atom<Option.Option<Node.Node>>) => Atom.Atom<Node.NodeArg<any>[]>;
|
|
43
31
|
}>[], Readonly<{
|
|
44
32
|
id: string;
|
|
45
|
-
position?:
|
|
33
|
+
position?: number;
|
|
46
34
|
relation?: Node.RelationInput;
|
|
47
35
|
resolver?: GraphBuilder.ResolverExtension;
|
|
48
|
-
connector?: (node: Atom.Atom<Option.Option<
|
|
49
|
-
id: string;
|
|
50
|
-
type: string;
|
|
51
|
-
cacheable?: string[];
|
|
52
|
-
properties: Readonly<Record<string, any>>;
|
|
53
|
-
data: any;
|
|
54
|
-
}>>>) => Atom.Atom<Node.NodeArg<any, Record<string, any>>[]>;
|
|
36
|
+
connector?: (node: Atom.Atom<Option.Option<Node.Node>>) => Atom.Atom<Node.NodeArg<any>[]>;
|
|
55
37
|
}>[], Readonly<{
|
|
56
38
|
id: string;
|
|
57
|
-
position?:
|
|
39
|
+
position?: number;
|
|
58
40
|
relation?: Node.RelationInput;
|
|
59
41
|
resolver?: GraphBuilder.ResolverExtension;
|
|
60
|
-
connector?: (node: Atom.Atom<Option.Option<
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
42
|
+
connector?: (node: Atom.Atom<Option.Option<Node.Node>>) => Atom.Atom<Node.NodeArg<any>[]>;
|
|
43
|
+
}>[], Readonly<{
|
|
44
|
+
id: string;
|
|
45
|
+
position?: number;
|
|
46
|
+
relation?: Node.RelationInput;
|
|
47
|
+
resolver?: GraphBuilder.ResolverExtension;
|
|
48
|
+
connector?: (node: Atom.Atom<Option.Option<Node.Node>>) => Atom.Atom<Node.NodeArg<any>[]>;
|
|
67
49
|
}>[]], never, Capability.Service>;
|
|
68
50
|
//# sourceMappingURL=database.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/database.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAA0B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../../../../src/capabilities/app-graph-builder/extensions/database.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAA0B,MAAM,qBAAqB,CAAC;AAOzE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAuBxD,qGAAqG;AACrG,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA+MnC,CAAC"}
|