@dxos/plugin-space 0.8.4-main.1f223c7 → 0.8.4-main.2c6827d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{CollectionMain-D2B75XBS.mjs → CollectionArticle-WTHWY4YS.mjs} +10 -10
- package/dist/lib/browser/CollectionArticle-WTHWY4YS.mjs.map +7 -0
- package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs +141 -0
- package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs.map +7 -0
- package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs +144 -0
- package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs.map +7 -0
- package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs +116 -0
- package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-AFC6PNAB.mjs → app-graph-builder-3ZWAUCDM.mjs} +107 -96
- package/dist/lib/browser/app-graph-builder-3ZWAUCDM.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-Q7QG4EKW.mjs → app-graph-serializer-TIKXF43P.mjs} +19 -19
- package/dist/lib/browser/app-graph-serializer-TIKXF43P.mjs.map +7 -0
- package/dist/lib/browser/chunk-K5J7ZB5P.mjs +20 -0
- package/dist/lib/browser/chunk-K5J7ZB5P.mjs.map +7 -0
- package/dist/lib/browser/{chunk-S33AYKSS.mjs → chunk-KFUMADZF.mjs} +135 -62
- package/dist/lib/browser/chunk-KFUMADZF.mjs.map +7 -0
- package/dist/lib/browser/chunk-NLFQFNYA.mjs +167 -0
- package/dist/lib/browser/chunk-NLFQFNYA.mjs.map +7 -0
- package/dist/lib/browser/{chunk-WZYRDFW7.mjs → chunk-VGKOXAPE.mjs} +26 -13
- package/dist/lib/browser/chunk-VGKOXAPE.mjs.map +7 -0
- package/dist/lib/browser/chunk-VZBIIYFM.mjs +16 -0
- package/dist/lib/browser/chunk-VZBIIYFM.mjs.map +7 -0
- package/dist/lib/browser/chunk-WJXU4GKV.mjs +19 -0
- package/dist/lib/browser/chunk-WJXU4GKV.mjs.map +7 -0
- package/dist/lib/browser/{chunk-6GRF7NEF.mjs → chunk-YGNDF37J.mjs} +553 -475
- package/dist/lib/browser/chunk-YGNDF37J.mjs.map +7 -0
- package/dist/lib/browser/{chunk-URST7EEN.mjs → chunk-ZQMSGD5J.mjs} +35 -19
- package/dist/lib/browser/chunk-ZQMSGD5J.mjs.map +7 -0
- package/dist/lib/browser/{identity-created-T6ZNVE7S.mjs → identity-created-NAXTPQXE.mjs} +5 -5
- package/dist/lib/browser/identity-created-NAXTPQXE.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +88 -70
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-CO262Q44.mjs → intent-resolver-2RUHLO65.mjs} +90 -77
- package/dist/lib/browser/intent-resolver-2RUHLO65.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-root-47C75OBO.mjs +30 -0
- package/dist/lib/browser/react-root-47C75OBO.mjs.map +7 -0
- package/dist/lib/browser/{react-surface-TPUOK2LC.mjs → react-surface-FAMKELOG.mjs} +71 -105
- package/dist/lib/browser/react-surface-FAMKELOG.mjs.map +7 -0
- package/dist/lib/browser/{schema-defs-YDPFZELA.mjs → schema-defs-QPI2JU3X.mjs} +6 -6
- package/dist/lib/browser/schema-defs-QPI2JU3X.mjs.map +7 -0
- package/dist/lib/browser/{settings-ZYH2JWNI.mjs → settings-45PGPO2V.mjs} +5 -5
- package/dist/lib/browser/{settings-ZYH2JWNI.mjs.map → settings-45PGPO2V.mjs.map} +1 -1
- package/dist/lib/browser/{spaces-ready-3I5LISH4.mjs → spaces-ready-QCND4DVY.mjs} +15 -14
- package/dist/lib/browser/spaces-ready-QCND4DVY.mjs.map +7 -0
- package/dist/lib/browser/{state-2RGW7FQG.mjs → state-Q7YRE5KG.mjs} +7 -7
- package/dist/lib/browser/state-Q7YRE5KG.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionArticle-KHXYT3SH.mjs} +10 -10
- package/dist/lib/node-esm/CollectionArticle-KHXYT3SH.mjs.map +7 -0
- package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs +142 -0
- package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs.map +7 -0
- package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs +145 -0
- package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs.map +7 -0
- package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs +117 -0
- package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-builder-OW2EBYRI.mjs → app-graph-builder-WABE3AIY.mjs} +107 -96
- package/dist/lib/node-esm/app-graph-builder-WABE3AIY.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-6PGC5WR5.mjs → app-graph-serializer-BESQZAYU.mjs} +19 -19
- package/dist/lib/node-esm/app-graph-serializer-BESQZAYU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-RXDT5LA5.mjs → chunk-6VEONPNZ.mjs} +35 -19
- package/dist/lib/node-esm/chunk-6VEONPNZ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-BDEFTL6K.mjs +18 -0
- package/dist/lib/node-esm/chunk-BDEFTL6K.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-H4JILUJK.mjs +20 -0
- package/dist/lib/node-esm/chunk-H4JILUJK.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-TEUN2E4F.mjs → chunk-OK2L7N2F.mjs} +135 -62
- package/dist/lib/node-esm/chunk-OK2L7N2F.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-LGNPMOXU.mjs → chunk-QBRPYAEL.mjs} +26 -13
- package/dist/lib/node-esm/chunk-QBRPYAEL.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-NMCD2PSG.mjs → chunk-SW4ETU2Z.mjs} +553 -475
- package/dist/lib/node-esm/chunk-SW4ETU2Z.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-TFC3EU3B.mjs +168 -0
- package/dist/lib/node-esm/chunk-TFC3EU3B.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs +21 -0
- package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs.map +7 -0
- package/dist/lib/node-esm/{identity-created-AL7NNCKH.mjs → identity-created-OXLKCJE3.mjs} +5 -5
- package/dist/lib/node-esm/identity-created-OXLKCJE3.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +88 -70
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-EXPK4B76.mjs → intent-resolver-CPGECQZ6.mjs} +90 -77
- package/dist/lib/node-esm/intent-resolver-CPGECQZ6.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-4OQ7MPGW.mjs → react-root-OU6IPRCL.mjs} +13 -12
- package/dist/lib/node-esm/react-root-OU6IPRCL.mjs.map +7 -0
- package/dist/lib/node-esm/{react-surface-WXEXIDB7.mjs → react-surface-GAE5KB23.mjs} +71 -105
- package/dist/lib/node-esm/react-surface-GAE5KB23.mjs.map +7 -0
- package/dist/lib/node-esm/{schema-defs-OYBCWKAS.mjs → schema-defs-ZS2D47XW.mjs} +6 -6
- package/dist/lib/node-esm/schema-defs-ZS2D47XW.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-2RYFMMTP.mjs → settings-6FO65BA6.mjs} +5 -5
- package/dist/lib/node-esm/{settings-2RYFMMTP.mjs.map → settings-6FO65BA6.mjs.map} +1 -1
- package/dist/lib/node-esm/{spaces-ready-JAP22P57.mjs → spaces-ready-P7CKVXBE.mjs} +15 -14
- package/dist/lib/node-esm/spaces-ready-P7CKVXBE.mjs.map +7 -0
- package/dist/lib/node-esm/{state-7VBVBGNS.mjs → state-362I5BMK.mjs} +7 -7
- package/dist/lib/node-esm/state-362I5BMK.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/SpacePlugin.d.ts +1 -1
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +6 -5
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
- package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
- package/dist/types/src/components/CollectionArticle.d.ts +6 -0
- package/dist/types/src/components/CollectionArticle.d.ts.map +1 -0
- package/dist/types/src/components/CollectionSection.d.ts +3 -4
- package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +120 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +3 -3
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
- package/dist/types/src/components/{JoinDialog.d.ts → JoinDialog/JoinDialog.d.ts} +1 -1
- package/dist/types/src/components/JoinDialog/JoinDialog.d.ts.map +1 -0
- package/dist/types/src/components/JoinDialog/index.d.ts +2 -0
- package/dist/types/src/components/JoinDialog/index.d.ts.map +1 -0
- package/dist/types/src/components/MembersContainer/MembersContainer.d.ts.map +1 -0
- package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +1707 -0
- package/dist/types/src/components/{MembersContainer.stories.d.ts.map → MembersContainer/MembersContainer.stories.d.ts.map} +1 -1
- package/dist/types/src/components/MembersContainer/index.d.ts +2 -0
- package/dist/types/src/components/MembersContainer/index.d.ts.map +1 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
- package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts +7 -0
- package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -0
- package/dist/types/src/components/ObjectRenamePopover/index.d.ts +2 -0
- package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +1 -0
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1540 -0
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
- package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
- package/dist/types/src/components/RecordArticle.d.ts +5 -0
- package/dist/types/src/components/RecordArticle.d.ts.map +1 -0
- package/dist/types/src/components/{MembersContainer.stories.d.ts → RecordArticle.stories.d.ts} +121 -2
- package/dist/types/src/components/RecordArticle.stories.d.ts.map +1 -0
- package/dist/types/src/components/SchemaContainer.d.ts +1 -1
- package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
- package/dist/types/src/components/{SpacePresence.d.ts → SpacePresence/SpacePresence.d.ts} +4 -3
- package/dist/types/src/components/SpacePresence/SpacePresence.d.ts.map +1 -0
- package/dist/types/src/components/{SpacePresence.stories.d.ts → SpacePresence/SpacePresence.stories.d.ts} +122 -3
- package/dist/types/src/components/{SpacePresence.stories.d.ts.map → SpacePresence/SpacePresence.stories.d.ts.map} +1 -1
- package/dist/types/src/components/SpacePresence/index.d.ts +2 -0
- package/dist/types/src/components/SpacePresence/index.d.ts.map +1 -0
- package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts +7 -0
- package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -0
- package/dist/types/src/components/SpaceRenamePopover/index.d.ts +2 -0
- package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +1 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +120 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +121 -2
- package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
- package/dist/types/src/components/ViewEditor.d.ts +3 -4
- package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +10 -17
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/helpers/index.d.ts +2 -0
- package/dist/types/src/helpers/index.d.ts.map +1 -0
- package/dist/types/src/helpers/query.d.ts +8 -0
- package/dist/types/src/helpers/query.d.ts.map +1 -0
- package/dist/types/src/helpers/query.test.d.ts +2 -0
- package/dist/types/src/helpers/query.test.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +1 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
- package/dist/types/src/hooks/usePath.d.ts +1 -1
- package/dist/types/src/hooks/usePath.d.ts.map +1 -1
- package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
- package/dist/types/src/hooks/useTypeOptions.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 +0 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +120 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +70 -55
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +10 -7
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +65 -60
- package/src/SpacePlugin.ts +228 -200
- package/src/capabilities/app-graph-builder.ts +157 -121
- package/src/capabilities/app-graph-serializer.ts +12 -12
- package/src/capabilities/capabilities.ts +16 -11
- package/src/capabilities/identity-created.ts +2 -2
- package/src/capabilities/intent-resolver.ts +76 -60
- package/src/capabilities/react-root.tsx +4 -3
- package/src/capabilities/react-surface.tsx +65 -141
- package/src/capabilities/schema-defs.ts +1 -1
- package/src/capabilities/spaces-ready.ts +8 -5
- package/src/capabilities/state.ts +2 -2
- package/src/components/AwaitingObject.tsx +12 -14
- package/src/components/{CollectionMain.tsx → CollectionArticle.tsx} +7 -6
- package/src/components/CollectionSection.tsx +8 -6
- package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +11 -11
- package/src/components/CreateDialog/CreateObjectDialog.tsx +36 -28
- package/src/components/CreateDialog/CreateObjectPanel.tsx +8 -8
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +30 -11
- package/src/components/{JoinDialog.tsx → JoinDialog/JoinDialog.tsx} +26 -10
- package/src/components/JoinDialog/index.ts +5 -0
- package/src/components/{MembersContainer.stories.tsx → MembersContainer/MembersContainer.stories.tsx} +7 -6
- package/src/components/{MembersContainer.tsx → MembersContainer/MembersContainer.tsx} +16 -14
- package/src/components/MembersContainer/index.ts +5 -0
- package/src/components/MenuFooter.tsx +2 -2
- package/src/components/ObjectDetailsPanel/ObjectDetailsPanel.tsx +51 -0
- package/src/components/ObjectDetailsPanel/ObjectForm.tsx +72 -0
- package/src/components/ObjectDetailsPanel/index.ts +7 -0
- package/src/components/{PopoverRenameObject.tsx → ObjectRenamePopover/ObjectRenamePopover.tsx} +6 -6
- package/src/components/ObjectRenamePopover/index.ts +5 -0
- package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +3 -3
- package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
- package/src/components/ObjectSettings/BaseObjectSettings.tsx +90 -26
- package/src/components/ObjectSettings/ForeignKeys.tsx +4 -4
- package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +1 -1
- package/src/components/ObjectSettings/index.ts +3 -1
- package/src/components/RecordArticle.stories.tsx +115 -0
- package/src/components/RecordArticle.tsx +114 -0
- package/src/components/SchemaContainer.tsx +23 -26
- package/src/components/SpacePluginSettings.tsx +10 -4
- package/src/components/{SpacePresence.stories.tsx → SpacePresence/SpacePresence.stories.tsx} +23 -25
- package/src/components/{SpacePresence.tsx → SpacePresence/SpacePresence.tsx} +16 -11
- package/src/components/SpacePresence/index.ts +5 -0
- package/src/components/{PopoverRenameSpace.tsx → SpaceRenamePopover/SpaceRenamePopover.tsx} +7 -6
- package/src/components/SpaceRenamePopover/index.ts +5 -0
- package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +9 -4
- package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +44 -23
- package/src/components/SyncStatus/InlineSyncStatus.tsx +8 -8
- package/src/components/SyncStatus/SyncStatus.stories.tsx +4 -5
- package/src/components/SyncStatus/SyncStatus.tsx +107 -11
- package/src/components/ViewEditor.tsx +51 -18
- package/src/components/index.ts +7 -8
- package/src/events.ts +6 -6
- package/src/helpers/index.ts +5 -0
- package/src/helpers/query.test.ts +24 -0
- package/src/helpers/query.ts +158 -0
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useActiveSpace.ts +2 -1
- package/src/hooks/useInputSurfaceLookup.tsx +8 -3
- package/src/hooks/usePath.ts +1 -1
- package/src/hooks/useTypeOptions.ts +59 -0
- package/src/index.ts +1 -0
- package/src/meta.ts +6 -3
- package/src/translations.ts +25 -10
- package/src/types/types.ts +33 -18
- package/src/util.tsx +141 -63
- package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
- package/dist/lib/browser/ObjectDetailsPanel-J7KGPJJK.mjs +0 -90
- package/dist/lib/browser/ObjectDetailsPanel-J7KGPJJK.mjs.map +0 -7
- package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +0 -68
- package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-AFC6PNAB.mjs.map +0 -7
- package/dist/lib/browser/app-graph-serializer-Q7QG4EKW.mjs.map +0 -7
- package/dist/lib/browser/chunk-6GRF7NEF.mjs.map +0 -7
- package/dist/lib/browser/chunk-CBYL62HG.mjs +0 -19
- package/dist/lib/browser/chunk-CBYL62HG.mjs.map +0 -7
- package/dist/lib/browser/chunk-ELJDGQTO.mjs +0 -94
- package/dist/lib/browser/chunk-ELJDGQTO.mjs.map +0 -7
- package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
- package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
- package/dist/lib/browser/chunk-S33AYKSS.mjs.map +0 -7
- package/dist/lib/browser/chunk-TUQZO5P4.mjs +0 -20
- package/dist/lib/browser/chunk-TUQZO5P4.mjs.map +0 -7
- package/dist/lib/browser/chunk-URST7EEN.mjs.map +0 -7
- package/dist/lib/browser/chunk-WZYRDFW7.mjs.map +0 -7
- package/dist/lib/browser/identity-created-T6ZNVE7S.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-CO262Q44.mjs.map +0 -7
- package/dist/lib/browser/react-root-K4IVLFYZ.mjs +0 -29
- package/dist/lib/browser/react-root-K4IVLFYZ.mjs.map +0 -7
- package/dist/lib/browser/react-surface-TPUOK2LC.mjs.map +0 -7
- package/dist/lib/browser/schema-defs-YDPFZELA.mjs.map +0 -7
- package/dist/lib/browser/spaces-ready-3I5LISH4.mjs.map +0 -7
- package/dist/lib/browser/state-2RGW7FQG.mjs.map +0 -7
- package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectDetailsPanel-7ADOXZ5W.mjs +0 -91
- package/dist/lib/node-esm/ObjectDetailsPanel-7ADOXZ5W.mjs.map +0 -7
- package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +0 -70
- package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-OW2EBYRI.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-serializer-6PGC5WR5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-FJZNSJC4.mjs +0 -20
- package/dist/lib/node-esm/chunk-FJZNSJC4.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HC677WUJ.mjs +0 -21
- package/dist/lib/node-esm/chunk-HC677WUJ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HWNG4MEU.mjs +0 -15
- package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-LGNPMOXU.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NMCD2PSG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs +0 -96
- package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RXDT5LA5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TEUN2E4F.mjs.map +0 -7
- package/dist/lib/node-esm/identity-created-AL7NNCKH.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-EXPK4B76.mjs.map +0 -7
- package/dist/lib/node-esm/react-root-4OQ7MPGW.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-WXEXIDB7.mjs.map +0 -7
- package/dist/lib/node-esm/schema-defs-OYBCWKAS.mjs.map +0 -7
- package/dist/lib/node-esm/spaces-ready-JAP22P57.mjs.map +0 -7
- package/dist/lib/node-esm/state-7VBVBGNS.mjs.map +0 -7
- package/dist/types/src/components/CollectionMain.d.ts +0 -7
- package/dist/types/src/components/CollectionMain.d.ts.map +0 -1
- package/dist/types/src/components/JoinDialog.d.ts.map +0 -1
- package/dist/types/src/components/MembersContainer.d.ts.map +0 -1
- package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
- package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
- package/dist/types/src/components/PersistenceStatus.d.ts +0 -6
- package/dist/types/src/components/PersistenceStatus.d.ts.map +0 -1
- package/dist/types/src/components/PopoverRenameObject.d.ts +0 -7
- package/dist/types/src/components/PopoverRenameObject.d.ts.map +0 -1
- package/dist/types/src/components/PopoverRenameSpace.d.ts +0 -7
- package/dist/types/src/components/PopoverRenameSpace.d.ts.map +0 -1
- package/dist/types/src/components/RecordMain.d.ts +0 -7
- package/dist/types/src/components/RecordMain.d.ts.map +0 -1
- package/dist/types/src/components/SpacePresence.d.ts.map +0 -1
- package/src/components/ObjectDetailsPanel.tsx +0 -79
- package/src/components/PersistenceStatus.tsx +0 -83
- package/src/components/RecordMain.tsx +0 -43
- /package/dist/types/src/components/{MembersContainer.d.ts → MembersContainer/MembersContainer.d.ts} +0 -0
|
@@ -2,29 +2,29 @@ import { createRequire } from 'node:module';const require = createRequire(import
|
|
|
2
2
|
import {
|
|
3
3
|
SPACE_TYPE,
|
|
4
4
|
SpaceAction
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-6VEONPNZ.mjs";
|
|
6
6
|
import {
|
|
7
|
-
|
|
8
|
-
} from "./chunk-
|
|
7
|
+
meta
|
|
8
|
+
} from "./chunk-BDEFTL6K.mjs";
|
|
9
9
|
|
|
10
10
|
// src/util.tsx
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
11
|
+
import { Atom } from "@effect-atom/atom-react";
|
|
12
|
+
import * as Function from "effect/Function";
|
|
13
13
|
import { LayoutAction, chain, createIntent } from "@dxos/app-framework";
|
|
14
|
-
import { Obj, Ref, Type } from "@dxos/echo";
|
|
15
|
-
import { EXPANDO_TYPENAME } from "@dxos/echo
|
|
14
|
+
import { Filter, Obj, Query, Ref, Type } from "@dxos/echo";
|
|
15
|
+
import { EXPANDO_TYPENAME } from "@dxos/echo/internal";
|
|
16
16
|
import { invariant } from "@dxos/invariant";
|
|
17
17
|
import { Migrations } from "@dxos/migrations";
|
|
18
18
|
import { ACTION_GROUP_TYPE, ACTION_TYPE, isGraphNode } from "@dxos/plugin-graph";
|
|
19
|
-
import { SpaceState,
|
|
19
|
+
import { SpaceState, getSpace, isSpace } from "@dxos/react-client/echo";
|
|
20
20
|
import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/react-ui-attention";
|
|
21
|
-
import {
|
|
21
|
+
import { Collection, StoredSchema, View, getTypenameFromQuery } from "@dxos/schema";
|
|
22
22
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
|
|
23
|
-
var SPACES = `${
|
|
24
|
-
var COMPOSER_SPACE_LOCK =
|
|
23
|
+
var SPACES = `${meta.id}-spaces`;
|
|
24
|
+
var COMPOSER_SPACE_LOCK = `${meta.id}/lock`;
|
|
25
25
|
var SHARED = "shared-spaces";
|
|
26
|
-
var
|
|
27
|
-
return
|
|
26
|
+
var atomFromQuery = (query) => {
|
|
27
|
+
return Atom.make((get) => {
|
|
28
28
|
const unsubscribe = query.subscribe((result) => {
|
|
29
29
|
get.setSelf(result.objects);
|
|
30
30
|
});
|
|
@@ -36,12 +36,12 @@ var getSpaceDisplayName = (space, { personal, namesCache = {} } = {}) => {
|
|
|
36
36
|
return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0 ? space.properties.name : namesCache[space.id] ? namesCache[space.id] : personal ? [
|
|
37
37
|
"personal space label",
|
|
38
38
|
{
|
|
39
|
-
ns:
|
|
39
|
+
ns: meta.id
|
|
40
40
|
}
|
|
41
41
|
] : [
|
|
42
42
|
"unnamed space label",
|
|
43
43
|
{
|
|
44
|
-
ns:
|
|
44
|
+
ns: meta.id
|
|
45
45
|
}
|
|
46
46
|
];
|
|
47
47
|
};
|
|
@@ -84,9 +84,11 @@ var getCollectionGraphNodePartials = ({ collection, space, resolve }) => {
|
|
|
84
84
|
};
|
|
85
85
|
};
|
|
86
86
|
var getQueryCollectionNodePartials = ({ collection, space, resolve }) => {
|
|
87
|
-
const typename =
|
|
87
|
+
const typename = getTypenameFromQuery(collection.query);
|
|
88
|
+
const metadata = typename ? resolve(typename) : {};
|
|
88
89
|
return {
|
|
89
|
-
icon:
|
|
90
|
+
icon: metadata.icon,
|
|
91
|
+
iconHue: metadata.iconHue,
|
|
90
92
|
acceptPersistenceClass: /* @__PURE__ */ new Set([
|
|
91
93
|
"echo"
|
|
92
94
|
]),
|
|
@@ -122,6 +124,7 @@ var getViewGraphNodePartials = ({ view, resolve }) => {
|
|
|
122
124
|
}
|
|
123
125
|
],
|
|
124
126
|
icon: metadata.icon,
|
|
127
|
+
iconHue: metadata.iconHue,
|
|
125
128
|
canDrop: () => false
|
|
126
129
|
};
|
|
127
130
|
};
|
|
@@ -130,8 +133,8 @@ var checkPendingMigration = (space) => {
|
|
|
130
133
|
};
|
|
131
134
|
var constructSpaceNode = ({ space, navigable = false, personal, namesCache, resolve }) => {
|
|
132
135
|
const hasPendingMigration = checkPendingMigration(space);
|
|
133
|
-
const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[
|
|
134
|
-
const partials = space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(
|
|
136
|
+
const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[Collection.Collection.typename]?.target;
|
|
137
|
+
const partials = space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(Collection.Collection, collection) ? getCollectionGraphNodePartials({
|
|
135
138
|
collection,
|
|
136
139
|
space,
|
|
137
140
|
resolve
|
|
@@ -154,6 +157,7 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
|
|
|
154
157
|
description: space.state.get() === SpaceState.SPACE_READY && space.properties.description,
|
|
155
158
|
hue: space.state.get() === SpaceState.SPACE_READY && space.properties.hue,
|
|
156
159
|
icon: space.state.get() === SpaceState.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
|
|
160
|
+
iconHue: space.state.get() === SpaceState.SPACE_READY && space.properties.iconHue,
|
|
157
161
|
disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,
|
|
158
162
|
testId: "spacePlugin.space",
|
|
159
163
|
canDrop: (source) => {
|
|
@@ -163,13 +167,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
|
|
|
163
167
|
nodes: [
|
|
164
168
|
{
|
|
165
169
|
id: `settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
|
|
166
|
-
type: `${
|
|
170
|
+
type: `${meta.id}/settings`,
|
|
167
171
|
data: null,
|
|
168
172
|
properties: {
|
|
169
173
|
label: [
|
|
170
174
|
"settings panel label",
|
|
171
175
|
{
|
|
172
|
-
ns:
|
|
176
|
+
ns: meta.id
|
|
173
177
|
}
|
|
174
178
|
],
|
|
175
179
|
icon: "ph--faders--regular",
|
|
@@ -178,13 +182,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
|
|
|
178
182
|
nodes: [
|
|
179
183
|
{
|
|
180
184
|
id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
|
|
181
|
-
type: `${
|
|
182
|
-
data: `${
|
|
185
|
+
type: `${meta.id}/properties`,
|
|
186
|
+
data: `${meta.id}/properties`,
|
|
183
187
|
properties: {
|
|
184
188
|
label: [
|
|
185
189
|
"space settings properties label",
|
|
186
190
|
{
|
|
187
|
-
ns:
|
|
191
|
+
ns: meta.id
|
|
188
192
|
}
|
|
189
193
|
],
|
|
190
194
|
icon: "ph--sliders--regular",
|
|
@@ -193,13 +197,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
|
|
|
193
197
|
},
|
|
194
198
|
{
|
|
195
199
|
id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
|
|
196
|
-
type: `${
|
|
197
|
-
data: `${
|
|
200
|
+
type: `${meta.id}/members`,
|
|
201
|
+
data: `${meta.id}/members`,
|
|
198
202
|
properties: {
|
|
199
203
|
label: [
|
|
200
204
|
"members panel label",
|
|
201
205
|
{
|
|
202
|
-
ns:
|
|
206
|
+
ns: meta.id
|
|
203
207
|
}
|
|
204
208
|
],
|
|
205
209
|
icon: "ph--users--regular",
|
|
@@ -208,13 +212,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
|
|
|
208
212
|
},
|
|
209
213
|
{
|
|
210
214
|
id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
|
|
211
|
-
type: `${
|
|
212
|
-
data: `${
|
|
215
|
+
type: `${meta.id}/schema`,
|
|
216
|
+
data: `${meta.id}/schema`,
|
|
213
217
|
properties: {
|
|
214
218
|
label: [
|
|
215
219
|
"space settings schema label",
|
|
216
220
|
{
|
|
217
|
-
ns:
|
|
221
|
+
ns: meta.id
|
|
218
222
|
}
|
|
219
223
|
],
|
|
220
224
|
icon: "ph--shapes--regular"
|
|
@@ -243,7 +247,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
|
|
|
243
247
|
label: [
|
|
244
248
|
"migrate space label",
|
|
245
249
|
{
|
|
246
|
-
ns:
|
|
250
|
+
ns: meta.id
|
|
247
251
|
}
|
|
248
252
|
],
|
|
249
253
|
icon: "ph--database--regular",
|
|
@@ -265,7 +269,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
|
|
|
265
269
|
label: [
|
|
266
270
|
"create object in space label",
|
|
267
271
|
{
|
|
268
|
-
ns:
|
|
272
|
+
ns: meta.id
|
|
269
273
|
}
|
|
270
274
|
],
|
|
271
275
|
icon: "ph--plus--regular",
|
|
@@ -285,7 +289,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
|
|
|
285
289
|
label: [
|
|
286
290
|
"rename space label",
|
|
287
291
|
{
|
|
288
|
-
ns:
|
|
292
|
+
ns: meta.id
|
|
289
293
|
}
|
|
290
294
|
],
|
|
291
295
|
icon: "ph--pencil-simple-line--regular",
|
|
@@ -301,7 +305,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
|
|
|
301
305
|
var createStaticSchemaNode = ({ schema, space }) => {
|
|
302
306
|
return {
|
|
303
307
|
id: `${space.id}/${Type.getTypename(schema)}`,
|
|
304
|
-
type: `${
|
|
308
|
+
type: `${meta.id}/static-schema`,
|
|
305
309
|
data: schema,
|
|
306
310
|
properties: {
|
|
307
311
|
label: [
|
|
@@ -312,7 +316,9 @@ var createStaticSchemaNode = ({ schema, space }) => {
|
|
|
312
316
|
}
|
|
313
317
|
],
|
|
314
318
|
icon: "ph--database--regular",
|
|
319
|
+
iconHue: "green",
|
|
315
320
|
role: "branch",
|
|
321
|
+
selectable: false,
|
|
316
322
|
canDrop: () => false,
|
|
317
323
|
space
|
|
318
324
|
}
|
|
@@ -337,7 +343,7 @@ var createStaticSchemaActions = ({ schema, space, dispatch, deletable }) => {
|
|
|
337
343
|
label: [
|
|
338
344
|
"add view to schema label",
|
|
339
345
|
{
|
|
340
|
-
ns: Type.getTypename(
|
|
346
|
+
ns: Type.getTypename(StoredSchema)
|
|
341
347
|
}
|
|
342
348
|
],
|
|
343
349
|
icon: "ph--plus--regular",
|
|
@@ -355,7 +361,7 @@ var createStaticSchemaActions = ({ schema, space, dispatch, deletable }) => {
|
|
|
355
361
|
label: [
|
|
356
362
|
"rename object label",
|
|
357
363
|
{
|
|
358
|
-
ns: Type.getTypename(
|
|
364
|
+
ns: Type.getTypename(StoredSchema)
|
|
359
365
|
}
|
|
360
366
|
],
|
|
361
367
|
icon: "ph--pencil-simple-line--regular",
|
|
@@ -377,7 +383,7 @@ var createStaticSchemaActions = ({ schema, space, dispatch, deletable }) => {
|
|
|
377
383
|
label: [
|
|
378
384
|
"delete object label",
|
|
379
385
|
{
|
|
380
|
-
ns: Type.getTypename(
|
|
386
|
+
ns: Type.getTypename(StoredSchema)
|
|
381
387
|
}
|
|
382
388
|
],
|
|
383
389
|
icon: "ph--trash--regular",
|
|
@@ -385,6 +391,33 @@ var createStaticSchemaActions = ({ schema, space, dispatch, deletable }) => {
|
|
|
385
391
|
disabled: !deletable,
|
|
386
392
|
testId: "spacePlugin.deleteObject"
|
|
387
393
|
}
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
id: getId(SpaceAction.Snapshot._tag),
|
|
397
|
+
type: ACTION_TYPE,
|
|
398
|
+
data: async () => {
|
|
399
|
+
const result = await dispatch(createIntent(SpaceAction.Snapshot, {
|
|
400
|
+
space,
|
|
401
|
+
query: Query.select(Filter.type(schema)).ast
|
|
402
|
+
}));
|
|
403
|
+
if (result.data?.snapshot) {
|
|
404
|
+
await downloadBlob(
|
|
405
|
+
result.data.snapshot,
|
|
406
|
+
// TODO(wittjosiah): Factor out file name construction.
|
|
407
|
+
`${(/* @__PURE__ */ new Date()).toISOString()}-${space.id}-${Type.getTypename(schema)}.json`
|
|
408
|
+
);
|
|
409
|
+
}
|
|
410
|
+
},
|
|
411
|
+
properties: {
|
|
412
|
+
label: [
|
|
413
|
+
"snapshot by schema label",
|
|
414
|
+
{
|
|
415
|
+
ns: meta.id
|
|
416
|
+
}
|
|
417
|
+
],
|
|
418
|
+
icon: "ph--camera--regular",
|
|
419
|
+
disposition: "list-item"
|
|
420
|
+
}
|
|
388
421
|
}
|
|
389
422
|
];
|
|
390
423
|
return actions;
|
|
@@ -395,15 +428,15 @@ var createObjectNode = ({ space, object, disposition, droppable = true, navigabl
|
|
|
395
428
|
return null;
|
|
396
429
|
}
|
|
397
430
|
const metadata = resolve(type);
|
|
398
|
-
const partials = Obj.instanceOf(
|
|
431
|
+
const partials = Obj.instanceOf(Collection.Collection, object) ? getCollectionGraphNodePartials({
|
|
399
432
|
collection: object,
|
|
400
433
|
space,
|
|
401
434
|
resolve
|
|
402
|
-
}) : Obj.instanceOf(
|
|
435
|
+
}) : Obj.instanceOf(Collection.QueryCollection, object) ? getQueryCollectionNodePartials({
|
|
403
436
|
collection: object,
|
|
404
437
|
space,
|
|
405
438
|
resolve
|
|
406
|
-
}) : Obj.instanceOf(
|
|
439
|
+
}) : Obj.instanceOf(StoredSchema, object) ? getSchemaGraphNodePartials() : Obj.instanceOf(View.View, object) ? getViewGraphNodePartials({
|
|
407
440
|
view: object,
|
|
408
441
|
resolve
|
|
409
442
|
}) : metadata.graphProps;
|
|
@@ -415,8 +448,9 @@ var createObjectNode = ({ space, object, disposition, droppable = true, navigabl
|
|
|
415
448
|
default: "New item"
|
|
416
449
|
}
|
|
417
450
|
];
|
|
451
|
+
const selectable = !Obj.instanceOf(StoredSchema, object) && !Obj.instanceOf(Collection.QueryCollection, object) && !Obj.instanceOf(Collection.Collection, object) || navigable && Obj.instanceOf(Collection.Collection, object);
|
|
418
452
|
return {
|
|
419
|
-
id:
|
|
453
|
+
id: Obj.getDXN(object).toString(),
|
|
420
454
|
type,
|
|
421
455
|
cacheable: [
|
|
422
456
|
"label",
|
|
@@ -427,10 +461,12 @@ var createObjectNode = ({ space, object, disposition, droppable = true, navigabl
|
|
|
427
461
|
properties: {
|
|
428
462
|
label,
|
|
429
463
|
icon: metadata.icon ?? "ph--placeholder--regular",
|
|
464
|
+
iconHue: metadata.iconHue,
|
|
430
465
|
disposition,
|
|
431
466
|
testId: "spacePlugin.object",
|
|
432
467
|
persistenceClass: "echo",
|
|
433
468
|
persistenceKey: space?.id,
|
|
469
|
+
selectable,
|
|
434
470
|
canDrop: (source) => {
|
|
435
471
|
return droppable && isGraphNode(source.item) && Obj.isObject(source.item.data);
|
|
436
472
|
},
|
|
@@ -442,7 +478,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
442
478
|
const space = getSpace(object);
|
|
443
479
|
invariant(space, "Space not found", {
|
|
444
480
|
F: __dxlog_file,
|
|
445
|
-
L:
|
|
481
|
+
L: 556,
|
|
446
482
|
S: void 0,
|
|
447
483
|
A: [
|
|
448
484
|
"space",
|
|
@@ -452,18 +488,18 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
452
488
|
const typename = Obj.getTypename(object);
|
|
453
489
|
invariant(typename, "Object has no typename", {
|
|
454
490
|
F: __dxlog_file,
|
|
455
|
-
L:
|
|
491
|
+
L: 558,
|
|
456
492
|
S: void 0,
|
|
457
493
|
A: [
|
|
458
494
|
"typename",
|
|
459
495
|
"'Object has no typename'"
|
|
460
496
|
]
|
|
461
497
|
});
|
|
462
|
-
const getId = (id) => `${id}/${
|
|
463
|
-
const queryCollection = Obj.instanceOf(
|
|
464
|
-
const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) ===
|
|
498
|
+
const getId = (id) => `${id}/${Obj.getDXN(object).toString()}`;
|
|
499
|
+
const queryCollection = Obj.instanceOf(Collection.QueryCollection, object) ? object : void 0;
|
|
500
|
+
const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) === getTypenameFromQuery(queryCollection.query)) : void 0;
|
|
465
501
|
const actions = [
|
|
466
|
-
...Obj.instanceOf(
|
|
502
|
+
...Obj.instanceOf(Collection.Collection, object) ? [
|
|
467
503
|
{
|
|
468
504
|
id: getId(SpaceAction.OpenCreateObject._tag),
|
|
469
505
|
type: ACTION_TYPE,
|
|
@@ -476,7 +512,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
476
512
|
label: [
|
|
477
513
|
"create object in collection label",
|
|
478
514
|
{
|
|
479
|
-
ns:
|
|
515
|
+
ns: meta.id
|
|
480
516
|
}
|
|
481
517
|
],
|
|
482
518
|
icon: "ph--plus--regular",
|
|
@@ -485,7 +521,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
485
521
|
}
|
|
486
522
|
}
|
|
487
523
|
] : [],
|
|
488
|
-
...Obj.instanceOf(
|
|
524
|
+
...Obj.instanceOf(StoredSchema, object) ? [
|
|
489
525
|
{
|
|
490
526
|
id: getId(SpaceAction.AddObject._tag),
|
|
491
527
|
type: ACTION_TYPE,
|
|
@@ -502,13 +538,40 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
502
538
|
label: [
|
|
503
539
|
"add view to schema label",
|
|
504
540
|
{
|
|
505
|
-
ns: Type.getTypename(
|
|
541
|
+
ns: Type.getTypename(StoredSchema)
|
|
506
542
|
}
|
|
507
543
|
],
|
|
508
544
|
icon: "ph--plus--regular",
|
|
509
545
|
disposition: "list-item-primary",
|
|
510
546
|
testId: "spacePlugin.addViewToSchema"
|
|
511
547
|
}
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
id: getId(SpaceAction.Snapshot._tag),
|
|
551
|
+
type: ACTION_TYPE,
|
|
552
|
+
data: async () => {
|
|
553
|
+
const result = await dispatch(createIntent(SpaceAction.Snapshot, {
|
|
554
|
+
space,
|
|
555
|
+
query: Query.select(Filter.type(Type.toEffectSchema(object.jsonSchema))).ast
|
|
556
|
+
}));
|
|
557
|
+
if (result.data?.snapshot) {
|
|
558
|
+
await downloadBlob(
|
|
559
|
+
result.data.snapshot,
|
|
560
|
+
// TODO(wittjosiah): Factor out file name construction.
|
|
561
|
+
`${(/* @__PURE__ */ new Date()).toISOString()}-${space.id}-${object.typename}.json`
|
|
562
|
+
);
|
|
563
|
+
}
|
|
564
|
+
},
|
|
565
|
+
properties: {
|
|
566
|
+
label: [
|
|
567
|
+
"snapshot by schema label",
|
|
568
|
+
{
|
|
569
|
+
ns: meta.id
|
|
570
|
+
}
|
|
571
|
+
],
|
|
572
|
+
icon: "ph--camera--regular",
|
|
573
|
+
disposition: "list-item"
|
|
574
|
+
}
|
|
512
575
|
}
|
|
513
576
|
] : [],
|
|
514
577
|
...matchingObjectForm ? [
|
|
@@ -519,10 +582,10 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
519
582
|
if (matchingObjectForm.formSchema) {
|
|
520
583
|
await dispatch(createIntent(SpaceAction.OpenCreateObject, {
|
|
521
584
|
target: space,
|
|
522
|
-
typename: queryCollection ?
|
|
585
|
+
typename: queryCollection ? getTypenameFromQuery(queryCollection.query) : void 0
|
|
523
586
|
}));
|
|
524
587
|
} else {
|
|
525
|
-
await dispatch(pipe(matchingObjectForm.getIntent({}, {
|
|
588
|
+
await dispatch(Function.pipe(matchingObjectForm.getIntent({}, {
|
|
526
589
|
space
|
|
527
590
|
}), chain(SpaceAction.AddObject, {
|
|
528
591
|
target: space,
|
|
@@ -536,7 +599,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
536
599
|
label: [
|
|
537
600
|
"create object in smart collection label",
|
|
538
601
|
{
|
|
539
|
-
ns:
|
|
602
|
+
ns: meta.id
|
|
540
603
|
}
|
|
541
604
|
],
|
|
542
605
|
icon: "ph--plus--regular",
|
|
@@ -574,7 +637,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
574
637
|
id: getId(SpaceAction.RemoveObjects._tag),
|
|
575
638
|
type: ACTION_TYPE,
|
|
576
639
|
data: async () => {
|
|
577
|
-
const collection = graph.getConnections(
|
|
640
|
+
const collection = graph.getConnections(Obj.getDXN(object).toString(), "inbound").find(({ data }) => Obj.instanceOf(Collection.Collection, data))?.data;
|
|
578
641
|
await dispatch(createIntent(SpaceAction.RemoveObjects, {
|
|
579
642
|
objects: [
|
|
580
643
|
object
|
|
@@ -597,19 +660,19 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
597
660
|
testId: "spacePlugin.deleteObject"
|
|
598
661
|
}
|
|
599
662
|
},
|
|
600
|
-
...navigable || !Obj.instanceOf(
|
|
663
|
+
...navigable || !Obj.instanceOf(Collection.Collection, object) && !Obj.instanceOf(Collection.QueryCollection, object) && !Obj.instanceOf(StoredSchema, object) ? [
|
|
601
664
|
{
|
|
602
665
|
id: getId("copy-link"),
|
|
603
666
|
type: ACTION_TYPE,
|
|
604
667
|
data: async () => {
|
|
605
|
-
const url = `${window.location.origin}/${space.id}/${
|
|
668
|
+
const url = `${window.location.origin}/${space.id}/${Obj.getDXN(object).toString()}`;
|
|
606
669
|
await navigator.clipboard.writeText(url);
|
|
607
670
|
},
|
|
608
671
|
properties: {
|
|
609
672
|
label: [
|
|
610
673
|
"copy link label",
|
|
611
674
|
{
|
|
612
|
-
ns:
|
|
675
|
+
ns: meta.id
|
|
613
676
|
}
|
|
614
677
|
],
|
|
615
678
|
icon: "ph--link--regular",
|
|
@@ -625,14 +688,14 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
625
688
|
data: async () => {
|
|
626
689
|
await dispatch(createIntent(LayoutAction.Expose, {
|
|
627
690
|
part: "navigation",
|
|
628
|
-
subject:
|
|
691
|
+
subject: Obj.getDXN(object).toString()
|
|
629
692
|
}));
|
|
630
693
|
},
|
|
631
694
|
properties: {
|
|
632
695
|
label: [
|
|
633
696
|
"expose object label",
|
|
634
697
|
{
|
|
635
|
-
ns:
|
|
698
|
+
ns: meta.id
|
|
636
699
|
}
|
|
637
700
|
],
|
|
638
701
|
icon: "ph--eye--regular",
|
|
@@ -643,6 +706,16 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
|
|
|
643
706
|
];
|
|
644
707
|
return actions;
|
|
645
708
|
};
|
|
709
|
+
var downloadBlob = async (blob, filename) => {
|
|
710
|
+
const url = URL.createObjectURL(blob);
|
|
711
|
+
const a = document.createElement("a");
|
|
712
|
+
a.href = url;
|
|
713
|
+
a.download = filename;
|
|
714
|
+
document.body.appendChild(a);
|
|
715
|
+
a.click();
|
|
716
|
+
document.body.removeChild(a);
|
|
717
|
+
URL.revokeObjectURL(url);
|
|
718
|
+
};
|
|
646
719
|
var getNestedObjects = async (object, resolve) => {
|
|
647
720
|
const type = Obj.getTypename(object);
|
|
648
721
|
if (!type) {
|
|
@@ -667,7 +740,7 @@ var cloneObject = async (object, resolve, newSpace) => {
|
|
|
667
740
|
const serializer = metadata.serializer;
|
|
668
741
|
invariant(serializer, `No serializer for type: ${typename}`, {
|
|
669
742
|
F: __dxlog_file,
|
|
670
|
-
L:
|
|
743
|
+
L: 792,
|
|
671
744
|
S: void 0,
|
|
672
745
|
A: [
|
|
673
746
|
"serializer",
|
|
@@ -688,7 +761,7 @@ export {
|
|
|
688
761
|
SPACES,
|
|
689
762
|
COMPOSER_SPACE_LOCK,
|
|
690
763
|
SHARED,
|
|
691
|
-
|
|
764
|
+
atomFromQuery,
|
|
692
765
|
getSpaceDisplayName,
|
|
693
766
|
constructSpaceNode,
|
|
694
767
|
constructSpaceActions,
|
|
@@ -699,4 +772,4 @@ export {
|
|
|
699
772
|
getNestedObjects,
|
|
700
773
|
cloneObject
|
|
701
774
|
};
|
|
702
|
-
//# sourceMappingURL=chunk-
|
|
775
|
+
//# sourceMappingURL=chunk-OK2L7N2F.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Atom } from '@effect-atom/atom-react';\nimport * as Function from 'effect/Function';\n\nimport { LayoutAction, type PromiseIntentDispatcher, chain, createIntent } from '@dxos/app-framework';\nimport { Filter, Obj, Query, Ref, Type } from '@dxos/echo';\nimport { type AnyEchoObject, EXPANDO_TYPENAME } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { Migrations } from '@dxos/migrations';\nimport {\n ACTION_GROUP_TYPE,\n ACTION_TYPE,\n type ActionData,\n type InvokeParams,\n type Node,\n type NodeArg,\n type ReadableGraph,\n isGraphNode,\n} from '@dxos/plugin-graph';\nimport { type QueryResult, type Space, SpaceState, getSpace, isSpace } from '@dxos/react-client/echo';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/react-ui-attention';\nimport { type TreeData } from '@dxos/react-ui-list';\nimport { Collection, StoredSchema, View, getTypenameFromQuery } from '@dxos/schema';\n\nimport { meta } from './meta';\nimport { type ObjectForm, SPACE_TYPE, SpaceAction } from './types';\n\nexport const SPACES = `${meta.id}-spaces`;\nexport const COMPOSER_SPACE_LOCK = `${meta.id}/lock`;\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\n\n/**\n * Convert a query result to an Atom value of the objects.\n */\nexport const atomFromQuery = <T extends AnyEchoObject>(query: QueryResult<T>): Atom.Atom<T[]> => {\n return Atom.make((get) => {\n const unsubscribe = query.subscribe((result) => {\n get.setSelf(result.objects);\n });\n\n get.addFinalizer(() => unsubscribe());\n return query.objects;\n });\n};\n\n// TODO(wittjosiah): Factor out? Expose via capability?\nexport const getSpaceDisplayName = (\n space: Space,\n { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},\n): string | [string, { ns: string }] => {\n return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0\n ? space.properties.name\n : namesCache[space.id]\n ? namesCache[space.id]\n : personal\n ? ['personal space label', { ns: meta.id }]\n : ['unnamed space label', { ns: meta.id }];\n};\n\nconst getCollectionGraphNodePartials = ({\n collection,\n space,\n resolve,\n}: {\n collection: Collection.Collection;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n onRearrangeChildren: (nextOrder: unknown[]) => {\n // Change on disk.\n collection.objects = nextOrder.filter(Obj.isObject).map(Ref.make);\n },\n onTransferStart: (child: Node<Obj.Any>, index?: number) => {\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // if (space && childSpace && !childSpace.key.equals(space.key)) {\n // // Create clone of child and add to destination space.\n // const newObject = clone(child.data, {\n // // TODO(wittjosiah): This needs to be generalized and not hardcoded here.\n // additional: [\n // child.data.content,\n // ...(child.data.objects ?? []),\n // ...(child.data.objects ?? []).map((object: TypedObject) => object.content),\n // ],\n // });\n // space.db.add(newObject);\n // collection.objects.push(newObject);\n // } else {\n\n // Add child to destination collection.\n // TODO(dmaretskyi): Compare by id.\n if (!collection.objects.find((object) => object.target === child.data)) {\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(child.data));\n } else {\n collection.objects.push(Ref.make(child.data));\n }\n }\n\n // }\n },\n onTransferEnd: (child: Node<Obj.Any>, destination: Node) => {\n // Remove child from origin collection.\n const index = collection.objects.findIndex((object) => object.target === child.data);\n if (index > -1) {\n collection.objects.splice(index, 1);\n }\n\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // const destinationSpace =\n // destination.data instanceof SpaceProxy ? destination.data : getSpace(destination.data);\n // if (destinationSpace && childSpace && !childSpace.key.equals(destinationSpace.key)) {\n // // Mark child as deleted in origin space.\n // childSpace.db.remove(child.data);\n // }\n },\n onCopy: async (child: Node<Obj.Any>, index?: number) => {\n // Create clone of child and add to destination space.\n const newObject = await cloneObject(child.data, resolve, space);\n space.db.add(newObject);\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(newObject));\n } else {\n collection.objects.push(Ref.make(newObject));\n }\n },\n };\n};\n\nconst getQueryCollectionNodePartials = ({\n collection,\n space,\n resolve,\n}: {\n collection: Collection.QueryCollection;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const typename = getTypenameFromQuery(collection.query);\n const metadata = typename ? resolve(typename) : {};\n return {\n icon: metadata.icon,\n iconHue: metadata.iconHue,\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n canDrop: (source: TreeData) => {\n return (\n isGraphNode(source.item) && Obj.isObject(source.item.data) && Obj.getTypename(source.item.data) === typename\n );\n },\n onTransferStart: (child: Node<Obj.Any>, index?: number) => {\n // No-op. Objects are moved into query collections by being removed from their original collection.\n },\n onTransferEnd: (child: Node<Obj.Any>, destination: Node) => {\n // No-op. Objects are moved out of query collections by being added to another collection.\n },\n };\n};\n\nconst getSchemaGraphNodePartials = () => {\n return {\n role: 'branch',\n canDrop: () => false,\n };\n};\n\nconst getViewGraphNodePartials = ({\n view,\n resolve,\n}: {\n view: View.View;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const presentation = view.presentation.target;\n const typename = presentation ? Obj.getTypename(presentation) : undefined;\n const metadata = typename ? resolve(typename) : {};\n\n return {\n label: view.name || ['object name placeholder', { ns: typename, default: 'New view' }],\n icon: metadata.icon,\n iconHue: metadata.iconHue,\n canDrop: () => false,\n };\n};\n\nconst checkPendingMigration = (space: Space) => {\n return (\n space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION ||\n (space.state.get() === SpaceState.SPACE_READY &&\n !!Migrations.versionProperty &&\n space.properties[Migrations.versionProperty] !== Migrations.targetVersion)\n );\n};\n\nexport const constructSpaceNode = ({\n space,\n navigable = false,\n personal,\n namesCache,\n resolve,\n}: {\n space: Space;\n navigable?: boolean;\n personal?: boolean;\n namesCache?: Record<string, string>;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const hasPendingMigration = checkPendingMigration(space);\n const collection =\n space.state.get() === SpaceState.SPACE_READY && space.properties[Collection.Collection.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(Collection.Collection, collection)\n ? getCollectionGraphNodePartials({ collection, space, resolve })\n : {};\n\n return {\n id: space.id,\n type: SPACE_TYPE,\n cacheable: ['label', 'icon', 'role'],\n data: space,\n properties: {\n ...partials,\n label: getSpaceDisplayName(space, { personal, namesCache }),\n description: space.state.get() === SpaceState.SPACE_READY && space.properties.description,\n hue: space.state.get() === SpaceState.SPACE_READY && space.properties.hue,\n icon:\n space.state.get() === SpaceState.SPACE_READY && space.properties.icon\n ? `ph--${space.properties.icon}--regular`\n : undefined,\n iconHue: space.state.get() === SpaceState.SPACE_READY && space.properties.iconHue,\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n testId: 'spacePlugin.space',\n canDrop: (source: TreeData) => {\n // TODO(wittjosiah): Find a way to only allow space as source for rearranging.\n return Obj.isObject(source.item.data) || isSpace(source.item.data);\n },\n },\n nodes: [\n {\n id: `settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/settings`,\n data: null,\n properties: {\n label: ['settings panel label', { ns: meta.id }],\n icon: 'ph--faders--regular',\n disposition: 'alternate-tree',\n },\n nodes: [\n {\n id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/properties`,\n data: `${meta.id}/properties`,\n properties: {\n label: ['space settings properties label', { ns: meta.id }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n },\n },\n {\n id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/members`,\n data: `${meta.id}/members`,\n properties: {\n label: ['members panel label', { ns: meta.id }],\n icon: 'ph--users--regular',\n position: 'hoist',\n },\n },\n {\n id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/schema`,\n data: `${meta.id}/schema`,\n properties: {\n label: ['space settings schema label', { ns: meta.id }],\n icon: 'ph--shapes--regular',\n },\n },\n ],\n },\n ],\n };\n};\n\nexport const constructSpaceActions = ({\n space,\n dispatch,\n personal,\n migrating,\n}: {\n space: Space;\n dispatch: PromiseIntentDispatcher;\n personal?: boolean;\n migrating?: boolean;\n}) => {\n const state = space.state.get();\n const hasPendingMigration = checkPendingMigration(space);\n const getId = (id: string) => `${id}/${space.id}`;\n const actions: NodeArg<ActionData>[] = [];\n\n if (hasPendingMigration) {\n actions.push({\n id: getId(SpaceAction.Migrate._tag),\n type: ACTION_GROUP_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Migrate, { space }));\n },\n properties: {\n label: ['migrate space label', { ns: meta.id }],\n icon: 'ph--database--regular',\n disposition: 'list-item-primary',\n disabled: migrating || Migrations.running(space),\n },\n });\n }\n\n if (state === SpaceState.SPACE_READY && !hasPendingMigration) {\n actions.push(\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: space }));\n },\n properties: {\n label: ['create object in space label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'item',\n testId: 'spacePlugin.createObject',\n },\n },\n {\n id: getId(SpaceAction.Rename._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.Rename, { space, caller: params?.caller }));\n },\n properties: {\n label: ['rename space label', { ns: meta.id }],\n icon: 'ph--pencil-simple-line--regular',\n keyBinding: {\n macos: 'shift+F6',\n windows: 'shift+F6',\n },\n },\n },\n );\n }\n\n return actions;\n};\n\nexport const createStaticSchemaNode = ({ schema, space }: { schema: Type.Obj.Any; space: Space }) => {\n return {\n id: `${space.id}/${Type.getTypename(schema)}`,\n type: `${meta.id}/static-schema`,\n data: schema,\n properties: {\n label: ['typename label', { ns: Type.getTypename(schema), default: Type.getTypename(schema) }],\n icon: 'ph--database--regular',\n iconHue: 'green',\n role: 'branch',\n selectable: false,\n canDrop: () => false,\n space,\n },\n };\n};\n\nexport const createStaticSchemaActions = ({\n schema,\n space,\n dispatch,\n deletable,\n}: {\n schema: Type.Obj.Any;\n space: Space;\n dispatch: PromiseIntentDispatcher;\n deletable: boolean;\n}) => {\n const getId = (id: string) => `${space.id}/${Type.getTypename(schema)}/${id}`;\n\n const actions: NodeArg<ActionData>[] = [\n {\n id: getId(SpaceAction.AddObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(\n createIntent(SpaceAction.OpenCreateObject, {\n target: space,\n views: true,\n initialFormValues: { typename: Type.getTypename(schema) },\n }),\n );\n },\n properties: {\n label: ['add view to schema label', { ns: Type.getTypename(StoredSchema) }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.addViewToSchema',\n },\n },\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n throw new Error('Not implemented');\n },\n properties: {\n label: ['rename object label', { ns: Type.getTypename(StoredSchema) }],\n icon: 'ph--pencil-simple-line--regular',\n disabled: true,\n disposition: 'list-item',\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const index = space.properties.staticRecords.findIndex(\n (typename: string) => typename === Type.getTypename(schema),\n );\n if (index > -1) {\n space.properties.staticRecords.splice(index, 1);\n }\n },\n properties: {\n label: ['delete object label', { ns: Type.getTypename(StoredSchema) }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n testId: 'spacePlugin.deleteObject',\n },\n },\n {\n id: getId(SpaceAction.Snapshot._tag),\n type: ACTION_TYPE,\n data: async () => {\n const result = await dispatch(\n createIntent(SpaceAction.Snapshot, {\n space,\n query: Query.select(Filter.type(schema)).ast,\n }),\n );\n if (result.data?.snapshot) {\n await downloadBlob(\n result.data.snapshot,\n // TODO(wittjosiah): Factor out file name construction.\n `${new Date().toISOString()}-${space.id}-${Type.getTypename(schema)}.json`,\n );\n }\n },\n properties: {\n label: ['snapshot by schema label', { ns: meta.id }],\n icon: 'ph--camera--regular',\n disposition: 'list-item',\n },\n },\n ];\n\n return actions;\n};\n\nexport const createObjectNode = ({\n space,\n object,\n disposition,\n droppable = true,\n navigable = false,\n resolve,\n}: {\n space: Space;\n object: Obj.Any;\n disposition?: string;\n droppable?: boolean;\n navigable?: boolean;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const type = Obj.getTypename(object);\n if (!type) {\n return null;\n }\n\n const metadata = resolve(type);\n const partials = Obj.instanceOf(Collection.Collection, object)\n ? getCollectionGraphNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(Collection.QueryCollection, object)\n ? getQueryCollectionNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(StoredSchema, object)\n ? getSchemaGraphNodePartials()\n : Obj.instanceOf(View.View, object)\n ? getViewGraphNodePartials({ view: object, resolve })\n : metadata.graphProps;\n\n // TODO(wittjosiah): Obj.getLabel isn't triggering reactivity in some cases.\n // e.g., create new collection with no name and rename it.\n const label = (object as any).name ||\n Obj.getLabel(object) ||\n // TODO(wittjosiah): Remove metadata labels.\n metadata.label?.(object) || ['object name placeholder', { ns: type, default: 'New item' }];\n\n const selectable =\n (!Obj.instanceOf(StoredSchema, object) &&\n !Obj.instanceOf(Collection.QueryCollection, object) &&\n !Obj.instanceOf(Collection.Collection, object)) ||\n (navigable && Obj.instanceOf(Collection.Collection, object));\n\n return {\n id: Obj.getDXN(object).toString(),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n label,\n icon: metadata.icon ?? 'ph--placeholder--regular',\n iconHue: metadata.iconHue,\n disposition,\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: space?.id,\n selectable,\n canDrop: (source: TreeData) => {\n return droppable && isGraphNode(source.item) && Obj.isObject(source.item.data);\n },\n ...partials,\n },\n };\n};\n\nexport const constructObjectActions = ({\n object,\n graph,\n dispatch,\n objectForms,\n deletable = true,\n navigable = false,\n}: {\n object: Obj.Any;\n graph: ReadableGraph;\n dispatch: PromiseIntentDispatcher;\n objectForms: ObjectForm<any>[];\n deletable?: boolean;\n navigable?: boolean;\n}) => {\n const space = getSpace(object);\n invariant(space, 'Space not found');\n const typename = Obj.getTypename(object);\n invariant(typename, 'Object has no typename');\n\n const getId = (id: string) => `${id}/${Obj.getDXN(object).toString()}`;\n\n const queryCollection = Obj.instanceOf(Collection.QueryCollection, object) ? object : undefined;\n const matchingObjectForm = queryCollection\n ? objectForms.find((form) => Type.getTypename(form.objectSchema) === getTypenameFromQuery(queryCollection.query))\n : undefined;\n\n const actions: NodeArg<ActionData>[] = [\n ...(Obj.instanceOf(Collection.Collection, object)\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: object }));\n },\n properties: {\n label: ['create object in collection label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n ...(Obj.instanceOf(StoredSchema, object)\n ? [\n {\n id: getId(SpaceAction.AddObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(\n createIntent(SpaceAction.OpenCreateObject, {\n target: space,\n views: true,\n initialFormValues: { typename: object.typename },\n }),\n );\n },\n properties: {\n label: ['add view to schema label', { ns: Type.getTypename(StoredSchema) }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.addViewToSchema',\n },\n },\n {\n id: getId(SpaceAction.Snapshot._tag),\n type: ACTION_TYPE,\n data: async () => {\n const result = await dispatch(\n createIntent(SpaceAction.Snapshot, {\n space,\n query: Query.select(Filter.type(Type.toEffectSchema(object.jsonSchema))).ast,\n }),\n );\n if (result.data?.snapshot) {\n await downloadBlob(\n result.data.snapshot,\n // TODO(wittjosiah): Factor out file name construction.\n `${new Date().toISOString()}-${space.id}-${object.typename}.json`,\n );\n }\n },\n properties: {\n label: ['snapshot by schema label', { ns: meta.id }],\n icon: 'ph--camera--regular',\n disposition: 'list-item',\n },\n },\n ]\n : []),\n ...(matchingObjectForm\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (matchingObjectForm.formSchema) {\n await dispatch(\n createIntent(SpaceAction.OpenCreateObject, {\n target: space,\n typename: queryCollection ? getTypenameFromQuery(queryCollection.query) : undefined,\n }),\n );\n } else {\n await dispatch(\n Function.pipe(\n matchingObjectForm.getIntent({}, { space }),\n chain(SpaceAction.AddObject, { target: space, hidden: true }),\n chain(LayoutAction.Open, { part: 'main' }),\n ),\n );\n }\n },\n properties: {\n label: ['create object in smart collection label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.RenameObject, { object, caller: params?.caller }));\n },\n properties: {\n label: ['rename object label', { ns: typename }],\n icon: 'ph--pencil-simple-line--regular',\n disposition: 'list-item',\n // TODO(wittjosiah): Not working.\n // keyBinding: {\n // macos: 'shift+F6',\n // },\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const collection = graph\n .getConnections(Obj.getDXN(object).toString(), 'inbound')\n .find(({ data }) => Obj.instanceOf(Collection.Collection, data))?.data;\n await dispatch(createIntent(SpaceAction.RemoveObjects, { objects: [object], target: collection }));\n },\n properties: {\n label: ['delete object label', { ns: typename }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n // TODO(wittjosiah): This is a browser shortcut.\n // keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',\n testId: 'spacePlugin.deleteObject',\n },\n },\n ...(navigable ||\n (!Obj.instanceOf(Collection.Collection, object) &&\n !Obj.instanceOf(Collection.QueryCollection, object) &&\n !Obj.instanceOf(StoredSchema, object))\n ? [\n {\n id: getId('copy-link'),\n type: ACTION_TYPE,\n data: async () => {\n const url = `${window.location.origin}/${space.id}/${Obj.getDXN(object).toString()}`;\n await navigator.clipboard.writeText(url);\n },\n properties: {\n label: ['copy link label', { ns: meta.id }],\n icon: 'ph--link--regular',\n disposition: 'list-item',\n testId: 'spacePlugin.copyLink',\n },\n },\n ]\n : []),\n // TODO(wittjosiah): Factor out and apply to all nodes.\n {\n id: getId(LayoutAction.Expose._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(\n createIntent(LayoutAction.Expose, { part: 'navigation', subject: Obj.getDXN(object).toString() }),\n );\n },\n properties: {\n label: ['expose object label', { ns: meta.id }],\n icon: 'ph--eye--regular',\n disposition: 'heading-list-item',\n testId: 'spacePlugin.exposeObject',\n },\n },\n ];\n\n return actions;\n};\n\n// TODO(wittjosiah): Factor out.\nconst downloadBlob = async (blob: Blob, filename: string) => {\n const url = URL.createObjectURL(blob);\n const a = document.createElement('a');\n a.href = url;\n a.download = filename;\n\n document.body.appendChild(a);\n a.click();\n\n document.body.removeChild(a);\n URL.revokeObjectURL(url);\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: Obj.Any,\n resolve: (typename: string) => Record<string, any>,\n): Promise<Obj.Any[]> => {\n const type = Obj.getTypename(object);\n if (!type) {\n return [];\n }\n\n const metadata = resolve(type);\n const loadReferences = metadata?.loadReferences;\n if (typeof loadReferences !== 'function') {\n return [];\n }\n\n const objects: Obj.Any[] = await loadReferences(object);\n const nested = await Promise.all(objects.map((object) => getNestedObjects(object, resolve)));\n return [...objects, ...nested.flat()];\n};\n\n/**\n * @deprecated Workaround for ECHO not supporting clone.\n */\n// TODO(burdon): Remove.\nexport const cloneObject = async (\n object: Type.Expando,\n resolve: (typename: string) => Record<string, any>,\n newSpace: Space,\n): Promise<Type.Expando> => {\n const schema = Obj.getSchema(object);\n const typename = schema ? (Type.getTypename(schema) ?? EXPANDO_TYPENAME) : EXPANDO_TYPENAME;\n const metadata = resolve(typename);\n const serializer = metadata.serializer;\n invariant(serializer, `No serializer for type: ${typename}`);\n const content = await serializer.serialize({ object });\n return serializer.deserialize({ content, space: newSpace, newId: true });\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Atom", "Function", "LayoutAction", "chain", "createIntent", "Filter", "Obj", "Query", "Ref", "Type", "EXPANDO_TYPENAME", "invariant", "Migrations", "ACTION_GROUP_TYPE", "ACTION_TYPE", "isGraphNode", "SpaceState", "getSpace", "isSpace", "ATTENDABLE_PATH_SEPARATOR", "Collection", "StoredSchema", "View", "getTypenameFromQuery", "SPACES", "meta", "id", "COMPOSER_SPACE_LOCK", "SHARED", "atomFromQuery", "query", "Atom", "make", "get", "unsubscribe", "subscribe", "result", "setSelf", "objects", "addFinalizer", "getSpaceDisplayName", "space", "personal", "namesCache", "state", "SpaceState", "SPACE_READY", "properties", "name", "length", "ns", "getCollectionGraphNodePartials", "collection", "resolve", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "role", "onRearrangeChildren", "nextOrder", "filter", "Obj", "isObject", "map", "Ref", "onTransferStart", "child", "index", "find", "object", "target", "data", "splice", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "db", "add", "getQueryCollectionNodePartials", "typename", "getTypenameFromQuery", "metadata", "icon", "iconHue", "canDrop", "source", "isGraphNode", "item", "getTypename", "getSchemaGraphNodePartials", "getViewGraphNodePartials", "view", "presentation", "undefined", "label", "default", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "navigable", "hasPendingMigration", "Collection", "partials", "instanceOf", "type", "SPACE_TYPE", "cacheable", "description", "hue", "disabled", "testId", "isSpace", "nodes", "ATTENDABLE_PATH_SEPARATOR", "disposition", "position", "constructSpaceActions", "dispatch", "migrating", "getId", "actions", "SpaceAction", "Migrate", "_tag", "ACTION_GROUP_TYPE", "createIntent", "running", "OpenCreateObject", "ACTION_TYPE", "Rename", "params", "caller", "keyBinding", "macos", "windows", "createStaticSchemaNode", "schema", "Type", "selectable", "createStaticSchemaActions", "deletable", "AddObject", "views", "initialFormValues", "StoredSchema", "RenameObject", "Error", "RemoveObjects", "staticRecords", "Snapshot", "Query", "select", "Filter", "ast", "snapshot", "downloadBlob", "Date", "toISOString", "createObjectNode", "droppable", "QueryCollection", "View", "graphProps", "getLabel", "getDXN", "toString", "persistenceClass", "persistenceKey", "constructObjectActions", "graph", "objectForms", "getSpace", "invariant", "queryCollection", "matchingObjectForm", "form", "objectSchema", "toEffectSchema", "jsonSchema", "formSchema", "pipe", "getIntent", "chain", "hidden", "LayoutAction", "Open", "part", "getConnections", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "Expose", "subject", "blob", "filename", "URL", "createObjectURL", "a", "document", "createElement", "href", "download", "body", "appendChild", "click", "removeChild", "revokeObjectURL", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "getSchema", "EXPANDO_TYPENAME", "serializer", "content", "serialize", "deserialize", "newId"]
|
|
7
|
+
}
|