@dxos/plugin-space 0.7.4 → 0.7.5-feature-compute.4d9d99a

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.
Files changed (255) hide show
  1. package/dist/lib/browser/app-graph-builder-5D2QB43K.mjs +365 -0
  2. package/dist/lib/browser/app-graph-builder-5D2QB43K.mjs.map +7 -0
  3. package/dist/lib/browser/app-graph-serializer-VNWPLPDF.mjs +80 -0
  4. package/dist/lib/browser/app-graph-serializer-VNWPLPDF.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-5TBRONF6.mjs +133 -0
  6. package/dist/lib/browser/chunk-5TBRONF6.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-6SWQRWOD.mjs +1672 -0
  8. package/dist/lib/browser/chunk-6SWQRWOD.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-HCXWKGTE.mjs +316 -0
  10. package/dist/lib/browser/chunk-HCXWKGTE.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-SOXNANA6.mjs +12 -0
  12. package/dist/lib/browser/chunk-SOXNANA6.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-UH5P4UL3.mjs +21 -0
  14. package/dist/lib/browser/chunk-UH5P4UL3.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-ZBKFJNHH.mjs +523 -0
  16. package/dist/lib/browser/chunk-ZBKFJNHH.mjs.map +7 -0
  17. package/dist/lib/browser/identity-created-EC5FOCX2.mjs +28 -0
  18. package/dist/lib/browser/identity-created-EC5FOCX2.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +192 -3521
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/intent-resolver-VBL572N7.mjs +459 -0
  22. package/dist/lib/browser/intent-resolver-VBL572N7.mjs.map +7 -0
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/react-root-AZJFNTKK.mjs +28 -0
  25. package/dist/lib/browser/react-root-AZJFNTKK.mjs.map +7 -0
  26. package/dist/lib/browser/react-surface-E2VSYVNZ.mjs +238 -0
  27. package/dist/lib/browser/react-surface-E2VSYVNZ.mjs.map +7 -0
  28. package/dist/lib/browser/settings-ASFF5BZL.mjs +24 -0
  29. package/dist/lib/browser/settings-ASFF5BZL.mjs.map +7 -0
  30. package/dist/lib/browser/spaces-ready-4SFNS5JQ.mjs +200 -0
  31. package/dist/lib/browser/spaces-ready-4SFNS5JQ.mjs.map +7 -0
  32. package/dist/lib/browser/state-MS4KYJWI.mjs +47 -0
  33. package/dist/lib/browser/state-MS4KYJWI.mjs.map +7 -0
  34. package/dist/lib/browser/types/index.mjs +14 -5
  35. package/dist/lib/node/app-graph-builder-ZQ5S62YR.cjs +368 -0
  36. package/dist/lib/node/app-graph-builder-ZQ5S62YR.cjs.map +7 -0
  37. package/dist/lib/node/app-graph-serializer-72S7P33H.cjs +88 -0
  38. package/dist/lib/node/app-graph-serializer-72S7P33H.cjs.map +7 -0
  39. package/dist/lib/node/chunk-56NGXG2A.cjs +41 -0
  40. package/dist/lib/node/chunk-56NGXG2A.cjs.map +7 -0
  41. package/dist/lib/node/{meta.cjs → chunk-AO4EW2RX.cjs} +12 -13
  42. package/dist/lib/node/chunk-AO4EW2RX.cjs.map +7 -0
  43. package/dist/lib/node/chunk-BQRNTKSQ.cjs +150 -0
  44. package/dist/lib/node/chunk-BQRNTKSQ.cjs.map +7 -0
  45. package/dist/lib/node/chunk-DDZYVNVP.cjs +345 -0
  46. package/dist/lib/node/chunk-DDZYVNVP.cjs.map +7 -0
  47. package/dist/lib/node/chunk-M64YG2FY.cjs +1669 -0
  48. package/dist/lib/node/chunk-M64YG2FY.cjs.map +7 -0
  49. package/dist/lib/node/chunk-Z34MTEU7.cjs +551 -0
  50. package/dist/lib/node/chunk-Z34MTEU7.cjs.map +7 -0
  51. package/dist/lib/node/identity-created-IMDS4A6A.cjs +44 -0
  52. package/dist/lib/node/identity-created-IMDS4A6A.cjs.map +7 -0
  53. package/dist/lib/node/index.cjs +175 -3506
  54. package/dist/lib/node/index.cjs.map +4 -4
  55. package/dist/lib/node/intent-resolver-S4HZABYI.cjs +458 -0
  56. package/dist/lib/node/intent-resolver-S4HZABYI.cjs.map +7 -0
  57. package/dist/lib/node/meta.json +1 -1
  58. package/dist/lib/node/react-root-RB3OM3QG.cjs +50 -0
  59. package/dist/lib/node/react-root-RB3OM3QG.cjs.map +7 -0
  60. package/dist/lib/node/react-surface-TLKQEHHT.cjs +233 -0
  61. package/dist/lib/node/react-surface-TLKQEHHT.cjs.map +7 -0
  62. package/dist/lib/node/settings-QLCKAUHK.cjs +38 -0
  63. package/dist/lib/node/settings-QLCKAUHK.cjs.map +7 -0
  64. package/dist/lib/node/spaces-ready-RZTKEXOL.cjs +211 -0
  65. package/dist/lib/node/spaces-ready-RZTKEXOL.cjs.map +7 -0
  66. package/dist/lib/node/state-4UIOUKLJ.cjs +61 -0
  67. package/dist/lib/node/state-4UIOUKLJ.cjs.map +7 -0
  68. package/dist/lib/node/types/index.cjs +23 -14
  69. package/dist/lib/node/types/index.cjs.map +2 -2
  70. package/dist/lib/node-esm/app-graph-builder-CD6IYPSS.mjs +366 -0
  71. package/dist/lib/node-esm/app-graph-builder-CD6IYPSS.mjs.map +7 -0
  72. package/dist/lib/node-esm/app-graph-serializer-CFXS6ZE2.mjs +81 -0
  73. package/dist/lib/node-esm/app-graph-serializer-CFXS6ZE2.mjs.map +7 -0
  74. package/dist/lib/node-esm/chunk-375RB3CZ.mjs +22 -0
  75. package/dist/lib/node-esm/chunk-375RB3CZ.mjs.map +7 -0
  76. package/dist/lib/node-esm/chunk-7FUVU45N.mjs +14 -0
  77. package/dist/lib/node-esm/chunk-7FUVU45N.mjs.map +7 -0
  78. package/dist/lib/node-esm/chunk-CLGCKZ2D.mjs +317 -0
  79. package/dist/lib/node-esm/chunk-CLGCKZ2D.mjs.map +7 -0
  80. package/dist/lib/node-esm/chunk-CMKML5IN.mjs +1673 -0
  81. package/dist/lib/node-esm/chunk-CMKML5IN.mjs.map +7 -0
  82. package/dist/lib/node-esm/chunk-FUMGYUD3.mjs +524 -0
  83. package/dist/lib/node-esm/chunk-FUMGYUD3.mjs.map +7 -0
  84. package/dist/lib/node-esm/chunk-M4XTHK35.mjs +134 -0
  85. package/dist/lib/node-esm/chunk-M4XTHK35.mjs.map +7 -0
  86. package/dist/lib/node-esm/identity-created-SJYZZ7Q3.mjs +29 -0
  87. package/dist/lib/node-esm/identity-created-SJYZZ7Q3.mjs.map +7 -0
  88. package/dist/lib/node-esm/index.mjs +192 -3521
  89. package/dist/lib/node-esm/index.mjs.map +4 -4
  90. package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs +460 -0
  91. package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs.map +7 -0
  92. package/dist/lib/node-esm/meta.json +1 -1
  93. package/dist/lib/node-esm/react-root-WKJWCHXR.mjs +29 -0
  94. package/dist/lib/node-esm/react-root-WKJWCHXR.mjs.map +7 -0
  95. package/dist/lib/node-esm/react-surface-RVEHOSAD.mjs +239 -0
  96. package/dist/lib/node-esm/react-surface-RVEHOSAD.mjs.map +7 -0
  97. package/dist/lib/node-esm/settings-WLVEO4JM.mjs +25 -0
  98. package/dist/lib/node-esm/settings-WLVEO4JM.mjs.map +7 -0
  99. package/dist/lib/node-esm/spaces-ready-ITGYYT5A.mjs +201 -0
  100. package/dist/lib/node-esm/spaces-ready-ITGYYT5A.mjs.map +7 -0
  101. package/dist/lib/node-esm/state-BMISGQ2O.mjs +48 -0
  102. package/dist/lib/node-esm/state-BMISGQ2O.mjs.map +7 -0
  103. package/dist/lib/node-esm/types/index.mjs +14 -5
  104. package/dist/types/src/SpacePlugin.d.ts +1 -24
  105. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
  107. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  108. package/dist/types/src/capabilities/app-graph-serializer.d.ts +4 -0
  109. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
  110. package/dist/types/src/capabilities/capabilities.d.ts +15 -0
  111. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/identity-created.d.ts +4 -0
  113. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/index.d.ts +195 -0
  115. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  116. package/dist/types/src/capabilities/intent-resolver.d.ts +8 -0
  117. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/react-root.d.ts +7 -0
  119. package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
  120. package/dist/types/src/capabilities/react-surface.d.ts +7 -0
  121. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/settings.d.ts +4 -0
  123. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  124. package/dist/types/src/capabilities/spaces-ready.d.ts +4 -0
  125. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
  126. package/dist/types/src/capabilities/state.d.ts +5 -0
  127. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  128. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts +7 -0
  129. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +1 -0
  130. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts +8 -0
  131. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +1 -0
  132. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +2 -0
  133. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +1 -0
  134. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  135. package/dist/types/src/components/BaseObjectSettings.d.ts +7 -0
  136. package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -0
  137. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +5 -4
  138. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  139. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +5 -6
  140. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  141. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -0
  142. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  143. package/dist/types/src/components/JoinDialog.d.ts +1 -0
  144. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  145. package/dist/types/src/components/PopoverRenameObject.d.ts +1 -0
  146. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  147. package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -0
  148. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
  149. package/dist/types/src/components/ShareSpaceButton.d.ts.map +1 -1
  150. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  151. package/dist/types/src/components/SpacePresence.d.ts +9 -6
  152. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  153. package/dist/types/src/components/SpacePresence.stories.d.ts +1 -1
  154. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  155. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts +1 -0
  156. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
  157. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts.map +1 -1
  158. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +4 -3
  159. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
  160. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts.map +1 -1
  161. package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts +3 -3
  162. package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +1 -1
  163. package/dist/types/src/components/SyncStatus/SyncStatusDetail.stories.d.ts +2 -2
  164. package/dist/types/src/components/SyncStatus/SyncStatusDetail.stories.d.ts.map +1 -1
  165. package/dist/types/src/components/index.d.ts +2 -1
  166. package/dist/types/src/components/index.d.ts.map +1 -1
  167. package/dist/types/src/events.d.ts +5 -0
  168. package/dist/types/src/events.d.ts.map +1 -0
  169. package/dist/types/src/hooks/index.d.ts +2 -0
  170. package/dist/types/src/hooks/index.d.ts.map +1 -0
  171. package/dist/types/src/hooks/usePath.d.ts +11 -0
  172. package/dist/types/src/hooks/usePath.d.ts.map +1 -0
  173. package/dist/types/src/index.d.ts +3 -5
  174. package/dist/types/src/index.d.ts.map +1 -1
  175. package/dist/types/src/meta.d.ts +1 -27
  176. package/dist/types/src/meta.d.ts.map +1 -1
  177. package/dist/types/src/translations.d.ts +18 -3
  178. package/dist/types/src/translations.d.ts.map +1 -1
  179. package/dist/types/src/types/collection.d.ts +8 -12
  180. package/dist/types/src/types/collection.d.ts.map +1 -1
  181. package/dist/types/src/types/thread.d.ts +180 -186
  182. package/dist/types/src/types/thread.d.ts.map +1 -1
  183. package/dist/types/src/types/types.d.ts +228 -16
  184. package/dist/types/src/types/types.d.ts.map +1 -1
  185. package/dist/types/src/util.d.ts +9 -8
  186. package/dist/types/src/util.d.ts.map +1 -1
  187. package/dist/types/tsconfig.tsbuildinfo +1 -0
  188. package/package.json +38 -46
  189. package/src/SpacePlugin.tsx +119 -1541
  190. package/src/capabilities/app-graph-builder.ts +392 -0
  191. package/src/capabilities/app-graph-serializer.ts +73 -0
  192. package/src/capabilities/capabilities.ts +23 -0
  193. package/src/capabilities/identity-created.ts +26 -0
  194. package/src/capabilities/index.ts +17 -0
  195. package/src/capabilities/intent-resolver.ts +420 -0
  196. package/src/capabilities/react-root.tsx +20 -0
  197. package/src/capabilities/react-surface.tsx +234 -0
  198. package/src/capabilities/settings.ts +17 -0
  199. package/src/capabilities/spaces-ready.ts +231 -0
  200. package/src/capabilities/state.ts +45 -0
  201. package/src/components/AdvancedObjectSettings/AdvancedObjectSettings.tsx +72 -0
  202. package/src/components/AdvancedObjectSettings/ForeignKeys.tsx +51 -0
  203. package/src/components/AdvancedObjectSettings/index.ts +5 -0
  204. package/src/components/AwaitingObject.tsx +15 -19
  205. package/src/components/{DefaultObjectSettings.tsx → BaseObjectSettings.tsx} +2 -2
  206. package/src/components/CreateDialog/CreateObjectDialog.tsx +36 -25
  207. package/src/components/CreateDialog/CreateObjectPanel.tsx +61 -24
  208. package/src/components/CreateDialog/CreateSpaceDialog.tsx +10 -14
  209. package/src/components/JoinDialog.tsx +18 -34
  210. package/src/components/PersistenceStatus.tsx +1 -1
  211. package/src/components/PopoverRenameObject.tsx +2 -0
  212. package/src/components/PopoverRenameSpace.tsx +2 -0
  213. package/src/components/ShareSpaceButton.tsx +5 -4
  214. package/src/components/SpacePluginSettings.tsx +2 -13
  215. package/src/components/SpacePresence.stories.tsx +25 -17
  216. package/src/components/SpacePresence.tsx +42 -21
  217. package/src/components/SpaceSettings/SpaceSettingsDialog.stories.tsx +2 -3
  218. package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +3 -1
  219. package/src/components/SpaceSettings/SpaceSettingsPanel.stories.tsx +7 -5
  220. package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +6 -5
  221. package/src/components/SyncStatus/InlineSyncStatus.tsx +37 -27
  222. package/src/components/SyncStatus/SyncStatusDetail.stories.tsx +55 -51
  223. package/src/components/index.ts +2 -1
  224. package/src/events.ts +12 -0
  225. package/src/hooks/index.ts +5 -0
  226. package/src/hooks/usePath.ts +44 -0
  227. package/src/index.ts +3 -7
  228. package/src/meta.ts +1 -29
  229. package/src/translations.ts +7 -2
  230. package/src/types/collection.ts +3 -3
  231. package/src/types/thread.ts +6 -6
  232. package/src/types/types.ts +177 -42
  233. package/src/util.tsx +77 -64
  234. package/dist/lib/browser/chunk-FTKV32QZ.mjs +0 -43
  235. package/dist/lib/browser/chunk-FTKV32QZ.mjs.map +0 -7
  236. package/dist/lib/browser/chunk-MWKXNS5S.mjs +0 -124
  237. package/dist/lib/browser/chunk-MWKXNS5S.mjs.map +0 -7
  238. package/dist/lib/browser/meta.mjs +0 -15
  239. package/dist/lib/browser/meta.mjs.map +0 -7
  240. package/dist/lib/node/chunk-6SNOZF7Y.cjs +0 -152
  241. package/dist/lib/node/chunk-6SNOZF7Y.cjs.map +0 -7
  242. package/dist/lib/node/chunk-QNVEU2UD.cjs +0 -69
  243. package/dist/lib/node/chunk-QNVEU2UD.cjs.map +0 -7
  244. package/dist/lib/node/meta.cjs.map +0 -7
  245. package/dist/lib/node-esm/chunk-OHEAWSCA.mjs +0 -126
  246. package/dist/lib/node-esm/chunk-OHEAWSCA.mjs.map +0 -7
  247. package/dist/lib/node-esm/chunk-UMV7XREB.mjs +0 -45
  248. package/dist/lib/node-esm/chunk-UMV7XREB.mjs.map +0 -7
  249. package/dist/lib/node-esm/meta.mjs +0 -16
  250. package/dist/lib/node-esm/meta.mjs.map +0 -7
  251. package/dist/types/src/components/DefaultObjectSettings.d.ts +0 -7
  252. package/dist/types/src/components/DefaultObjectSettings.d.ts.map +0 -1
  253. package/dist/types/src/components/SyncStatus/InlineSyncStatus.stories.d.ts +0 -6
  254. package/dist/types/src/components/SyncStatus/InlineSyncStatus.stories.d.ts.map +0 -1
  255. package/src/components/SyncStatus/InlineSyncStatus.stories.tsx +0 -57
@@ -2,22 +2,19 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import type {
6
- GraphBuilderProvides,
7
- GraphSerializerProvides,
8
- IntentResolverProvides,
9
- MetadataRecordsProvides,
10
- SettingsProvides,
11
- SurfaceProvides,
12
- TranslationsProvides,
13
- Plugin,
14
- } from '@dxos/app-framework';
15
- import { AST, S, type AbstractTypedObject, type Expando } from '@dxos/echo-schema';
16
- import { type PanelProvides } from '@dxos/plugin-deck/types';
5
+ import { AST, S, type Expando } from '@dxos/echo-schema';
17
6
  import { type PublicKey } from '@dxos/react-client';
18
- import { type Space } from '@dxos/react-client/echo';
7
+ import { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';
19
8
  import { type ComplexMap } from '@dxos/util';
20
9
 
10
+ import { CollectionType } from './collection';
11
+ import { SPACE_PLUGIN } from '../meta';
12
+
13
+ // I've copy pasted this here to not depend on the whole @dxos/app-framework package in types entrypoint.
14
+ /** @deprecated */
15
+ export const ActiveParts = S.Record({ key: S.String, value: S.Union(S.String, S.mutable(S.Array(S.String))) });
16
+ export type ActiveParts = S.Schema.Type<typeof ActiveParts>;
17
+
21
18
  export const SPACE_DIRECTORY_HANDLE = 'dxos.org/plugin/space/directory';
22
19
 
23
20
  export type ObjectViewerProps = {
@@ -67,36 +64,16 @@ export type PluginState = {
67
64
  enabledEdgeReplication: boolean;
68
65
  };
69
66
 
70
- export type SpaceSettingsProps = {
71
- /**
72
- * Show closed spaces.
73
- */
74
- showHidden?: boolean;
75
- };
67
+ export const SpaceSettingsSchema = S.mutable(
68
+ S.Struct({
69
+ /**
70
+ * Show closed spaces.
71
+ */
72
+ showHidden: S.Boolean,
73
+ }),
74
+ );
76
75
 
77
- export type SchemaProvides = {
78
- echo: {
79
- schema?: AbstractTypedObject[];
80
- system?: AbstractTypedObject[];
81
- };
82
- };
83
-
84
- export const parseSchemaPlugin = (plugin?: Plugin) =>
85
- Array.isArray((plugin?.provides as any).echo?.schema) || Array.isArray((plugin?.provides as any).echo?.system)
86
- ? (plugin as Plugin<SchemaProvides>)
87
- : undefined;
88
-
89
- export type SpacePluginProvides = SurfaceProvides &
90
- IntentResolverProvides &
91
- GraphBuilderProvides &
92
- GraphSerializerProvides &
93
- MetadataRecordsProvides &
94
- SettingsProvides<SpaceSettingsProps> &
95
- TranslationsProvides &
96
- SchemaProvides &
97
- PanelProvides & {
98
- space: Readonly<PluginState>;
99
- };
76
+ export type SpaceSettingsProps = S.Schema.Type<typeof SpaceSettingsSchema>;
100
77
 
101
78
  // TODO(wittjosiah): Reconcile with graph export serializers.
102
79
 
@@ -115,5 +92,163 @@ export interface TypedObjectSerializer<T extends Expando = Expando> {
115
92
 
116
93
  export const SpaceForm = S.Struct({
117
94
  name: S.optional(S.String.annotations({ [AST.TitleAnnotationId]: 'Name' })),
95
+ // TODO(wittjosiah): Make optional with default value.
118
96
  edgeReplication: S.Boolean.annotations({ [AST.TitleAnnotationId]: 'Enable EDGE Replication' }),
119
97
  });
98
+
99
+ export const SPACE_ACTION = `${SPACE_PLUGIN}/action`;
100
+
101
+ export namespace SpaceAction {
102
+ export class OpenCreateSpace extends S.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {
103
+ input: S.Void,
104
+ output: S.Void,
105
+ }) {}
106
+
107
+ export class Create extends S.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {
108
+ input: SpaceForm,
109
+ output: S.Struct({
110
+ id: S.String,
111
+ activeParts: ActiveParts,
112
+ space: SpaceSchema,
113
+ }),
114
+ }) {}
115
+
116
+ export class Join extends S.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {
117
+ input: S.Struct({
118
+ invitationCode: S.optional(S.String),
119
+ onDone: S.optional(S.Any),
120
+ }),
121
+ output: S.Void,
122
+ }) {}
123
+
124
+ export class Share extends S.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {
125
+ input: S.Struct({
126
+ space: SpaceSchema,
127
+ }),
128
+ output: S.Void,
129
+ }) {}
130
+
131
+ export class Lock extends S.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {
132
+ input: S.Struct({
133
+ space: SpaceSchema,
134
+ }),
135
+ output: S.Void,
136
+ }) {}
137
+
138
+ export class Unlock extends S.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {
139
+ input: S.Struct({
140
+ space: SpaceSchema,
141
+ }),
142
+ output: S.Void,
143
+ }) {}
144
+
145
+ export class Rename extends S.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {
146
+ input: S.Struct({
147
+ space: SpaceSchema,
148
+ caller: S.optional(S.String),
149
+ }),
150
+ output: S.Void,
151
+ }) {}
152
+
153
+ export class OpenSettings extends S.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {
154
+ input: S.Struct({
155
+ space: SpaceSchema,
156
+ }),
157
+ output: S.Void,
158
+ }) {}
159
+
160
+ export class Open extends S.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {
161
+ input: S.Struct({
162
+ space: SpaceSchema,
163
+ }),
164
+ output: S.Void,
165
+ }) {}
166
+
167
+ export class Close extends S.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {
168
+ input: S.Struct({
169
+ space: SpaceSchema,
170
+ }),
171
+ output: S.Void,
172
+ }) {}
173
+
174
+ export class Migrate extends S.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {
175
+ input: S.Struct({
176
+ space: SpaceSchema,
177
+ version: S.optional(S.String),
178
+ }),
179
+ output: S.Boolean,
180
+ }) {}
181
+
182
+ export class OpenCreateObject extends S.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {
183
+ input: S.Struct({
184
+ target: S.Union(SpaceSchema, CollectionType),
185
+ navigable: S.optional(S.Boolean),
186
+ }),
187
+ output: S.Void,
188
+ }) {}
189
+
190
+ export class AddObject extends S.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {
191
+ input: S.Struct({
192
+ object: ReactiveObjectSchema,
193
+ target: S.Union(SpaceSchema, CollectionType),
194
+ }),
195
+ output: S.Struct({
196
+ id: S.String,
197
+ activeParts: ActiveParts,
198
+ object: EchoObjectSchema,
199
+ }),
200
+ }) {}
201
+
202
+ export const DeletionData = S.Struct({
203
+ objects: S.Array(EchoObjectSchema),
204
+ parentCollection: CollectionType,
205
+ indices: S.Array(S.Number),
206
+ nestedObjectsList: S.Array(S.Array(EchoObjectSchema)),
207
+ wasActive: S.Array(S.String),
208
+ });
209
+
210
+ export type DeletionData = S.Schema.Type<typeof DeletionData>;
211
+
212
+ export class RemoveObjects extends S.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {
213
+ input: S.Struct({
214
+ objects: S.Array(EchoObjectSchema),
215
+ target: S.optional(CollectionType),
216
+ deletionData: S.optional(DeletionData),
217
+ }),
218
+ output: S.Void,
219
+ }) {}
220
+
221
+ export class RenameObject extends S.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {
222
+ input: S.Struct({
223
+ object: EchoObjectSchema,
224
+ caller: S.optional(S.String),
225
+ }),
226
+ output: S.Void,
227
+ }) {}
228
+
229
+ export class DuplicateObject extends S.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {
230
+ input: S.Struct({
231
+ object: EchoObjectSchema,
232
+ target: S.Union(SpaceSchema, CollectionType),
233
+ }),
234
+ output: S.Void,
235
+ }) {}
236
+
237
+ export class WaitForObject extends S.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {
238
+ input: S.Struct({
239
+ id: S.optional(S.String),
240
+ }),
241
+ output: S.Void,
242
+ }) {}
243
+ }
244
+
245
+ export namespace CollectionAction {
246
+ export class Create extends S.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {
247
+ input: S.Struct({
248
+ name: S.optional(S.String),
249
+ }),
250
+ output: S.Struct({
251
+ object: CollectionType,
252
+ }),
253
+ }) {}
254
+ }
package/src/util.tsx CHANGED
@@ -2,10 +2,10 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { type IntentDispatcher, type MetadataResolver } from '@dxos/app-framework';
5
+ import { createIntent, type PromiseIntentDispatcher, NavigationAction } from '@dxos/app-framework';
6
6
  import { EXPANDO_TYPENAME, getObjectAnnotation, getTypename, type Expando } from '@dxos/echo-schema';
7
7
  import { invariant } from '@dxos/invariant';
8
- import { getSchema, isReactiveObject } from '@dxos/live-object';
8
+ import { getSchema, isReactiveObject, makeRef } from '@dxos/live-object';
9
9
  import { Migrations } from '@dxos/migrations';
10
10
  import {
11
11
  ACTION_GROUP_TYPE,
@@ -34,8 +34,8 @@ import {
34
34
  type Space,
35
35
  } from '@dxos/react-client/echo';
36
36
 
37
- import { SPACE_PLUGIN, SpaceAction } from './meta';
38
- import { CollectionType } from './types';
37
+ import { SPACE_PLUGIN } from './meta';
38
+ import { CollectionType, SpaceAction } from './types';
39
39
 
40
40
  export const SPACES = `${SPACE_PLUGIN}-spaces`;
41
41
  export const SPACE_TYPE = 'dxos.org/type/Space';
@@ -75,6 +75,7 @@ export const memoizeQuery = <T extends ReactiveEchoObject<any>>(
75
75
  return query?.objects ?? EMPTY_ARRAY;
76
76
  };
77
77
 
78
+ // TODO(wittjosiah): Factor out? Expose via capability?
78
79
  export const getSpaceDisplayName = (
79
80
  space: Space,
80
81
  { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},
@@ -97,7 +98,7 @@ const getCollectionGraphNodePartials = ({
97
98
  navigable: boolean;
98
99
  collection: CollectionType;
99
100
  space: Space;
100
- resolve: MetadataResolver;
101
+ resolve: (typename: string) => Record<string, any>;
101
102
  }) => {
102
103
  return {
103
104
  disabled: !navigable,
@@ -106,7 +107,7 @@ const getCollectionGraphNodePartials = ({
106
107
  role: 'branch',
107
108
  onRearrangeChildren: (nextOrder: unknown[]) => {
108
109
  // Change on disk.
109
- collection.objects = nextOrder.filter(isEchoObject);
110
+ collection.objects = nextOrder.filter(isEchoObject).map(makeRef);
110
111
  },
111
112
  onTransferStart: (child: Node<ReactiveEchoObject<any>>, index?: number) => {
112
113
  // TODO(wittjosiah): Support transfer between spaces.
@@ -126,11 +127,12 @@ const getCollectionGraphNodePartials = ({
126
127
  // } else {
127
128
 
128
129
  // Add child to destination collection.
129
- if (!collection.objects.includes(child.data)) {
130
+ // TODO(dmaretskyi): Compare by id.
131
+ if (!collection.objects.find((object) => object.target === child.data)) {
130
132
  if (typeof index !== 'undefined') {
131
- collection.objects.splice(index, 0, child.data);
133
+ collection.objects.splice(index, 0, makeRef(child.data));
132
134
  } else {
133
- collection.objects.push(child.data);
135
+ collection.objects.push(makeRef(child.data));
134
136
  }
135
137
  }
136
138
 
@@ -138,7 +140,7 @@ const getCollectionGraphNodePartials = ({
138
140
  },
139
141
  onTransferEnd: (child: Node<ReactiveEchoObject<any>>, destination: Node) => {
140
142
  // Remove child from origin collection.
141
- const index = collection.objects.indexOf(child.data);
143
+ const index = collection.objects.findIndex((object) => object.target === child.data);
142
144
  if (index > -1) {
143
145
  collection.objects.splice(index, 1);
144
146
  }
@@ -157,9 +159,9 @@ const getCollectionGraphNodePartials = ({
157
159
  const newObject = await cloneObject(child.data, resolve, space);
158
160
  space.db.add(newObject);
159
161
  if (typeof index !== 'undefined') {
160
- collection.objects.splice(index, 0, newObject);
162
+ collection.objects.splice(index, 0, makeRef(newObject));
161
163
  } else {
162
- collection.objects.push(newObject);
164
+ collection.objects.push(makeRef(newObject));
163
165
  }
164
166
  },
165
167
  };
@@ -185,10 +187,10 @@ export const constructSpaceNode = ({
185
187
  navigable?: boolean;
186
188
  personal?: boolean;
187
189
  namesCache?: Record<string, string>;
188
- resolve: MetadataResolver;
190
+ resolve: (typename: string) => Record<string, any>;
189
191
  }) => {
190
192
  const hasPendingMigration = checkPendingMigration(space);
191
- const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[CollectionType.typename];
193
+ const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[CollectionType.typename]?.target;
192
194
  const partials =
193
195
  space.state.get() === SpaceState.SPACE_READY && collection instanceof CollectionType
194
196
  ? getCollectionGraphNodePartials({ collection, space, resolve, navigable })
@@ -217,7 +219,7 @@ export const constructSpaceActions = ({
217
219
  migrating,
218
220
  }: {
219
221
  space: Space;
220
- dispatch: IntentDispatcher;
222
+ dispatch: PromiseIntentDispatcher;
221
223
  personal?: boolean;
222
224
  migrating?: boolean;
223
225
  }) => {
@@ -228,10 +230,10 @@ export const constructSpaceActions = ({
228
230
 
229
231
  if (hasPendingMigration) {
230
232
  actions.push({
231
- id: getId(SpaceAction.MIGRATE),
233
+ id: getId(SpaceAction.Migrate._tag),
232
234
  type: ACTION_GROUP_TYPE,
233
235
  data: async () => {
234
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.MIGRATE, data: { space } });
236
+ await dispatch(createIntent(SpaceAction.Migrate, { space }));
235
237
  },
236
238
  properties: {
237
239
  label: ['migrate space label', { ns: SPACE_PLUGIN }],
@@ -246,10 +248,10 @@ export const constructSpaceActions = ({
246
248
  const locked = space.properties[COMPOSER_SPACE_LOCK];
247
249
  actions.push(
248
250
  {
249
- id: getId(SpaceAction.OPEN_CREATE_OBJECT),
251
+ id: getId(SpaceAction.OpenCreateObject._tag),
250
252
  type: ACTION_TYPE,
251
253
  data: async () => {
252
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.OPEN_CREATE_OBJECT, data: { target: space } });
254
+ await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: space }));
253
255
  },
254
256
  properties: {
255
257
  label: ['create object in space label', { ns: SPACE_PLUGIN }],
@@ -259,13 +261,13 @@ export const constructSpaceActions = ({
259
261
  },
260
262
  },
261
263
  {
262
- id: getId(SpaceAction.SHARE),
264
+ id: getId(SpaceAction.Share._tag),
263
265
  type: ACTION_TYPE,
264
266
  data: async () => {
265
267
  if (locked) {
266
268
  return;
267
269
  }
268
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.SHARE, data: { space } });
270
+ await dispatch(createIntent(SpaceAction.Share, { space }));
269
271
  },
270
272
  properties: {
271
273
  label: ['share space label', { ns: SPACE_PLUGIN }],
@@ -278,14 +280,14 @@ export const constructSpaceActions = ({
278
280
  },
279
281
  },
280
282
  {
281
- id: locked ? getId(SpaceAction.UNLOCK) : getId(SpaceAction.LOCK),
283
+ id: locked ? getId(SpaceAction.Unlock._tag) : getId(SpaceAction.Lock._tag),
282
284
  type: ACTION_TYPE,
283
285
  data: async () => {
284
- await dispatch({
285
- plugin: SPACE_PLUGIN,
286
- action: locked ? SpaceAction.UNLOCK : SpaceAction.LOCK,
287
- data: { space },
288
- });
286
+ if (locked) {
287
+ await dispatch(createIntent(SpaceAction.Unlock, { space }));
288
+ } else {
289
+ await dispatch(createIntent(SpaceAction.Lock, { space }));
290
+ }
289
291
  },
290
292
  properties: {
291
293
  label: [locked ? 'unlock space label' : 'lock space label', { ns: SPACE_PLUGIN }],
@@ -293,10 +295,10 @@ export const constructSpaceActions = ({
293
295
  },
294
296
  },
295
297
  {
296
- id: getId(SpaceAction.RENAME),
298
+ id: getId(SpaceAction.Rename._tag),
297
299
  type: ACTION_TYPE,
298
300
  data: async (params: InvokeParams) => {
299
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.RENAME, data: { space, ...params } });
301
+ await dispatch(createIntent(SpaceAction.Rename, { space, caller: params.caller }));
300
302
  },
301
303
  properties: {
302
304
  label: ['rename space label', { ns: SPACE_PLUGIN }],
@@ -308,10 +310,10 @@ export const constructSpaceActions = ({
308
310
  },
309
311
  },
310
312
  {
311
- id: getId(SpaceAction.OPEN_SETTINGS),
313
+ id: getId(SpaceAction.OpenSettings._tag),
312
314
  type: ACTION_TYPE,
313
315
  data: async () => {
314
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.OPEN_SETTINGS, data: { space } });
316
+ await dispatch(createIntent(SpaceAction.OpenSettings, { space }));
315
317
  },
316
318
  properties: {
317
319
  label: ['open space settings label', { ns: SPACE_PLUGIN }],
@@ -324,10 +326,10 @@ export const constructSpaceActions = ({
324
326
  // TODO(wittjosiah): Consider moving close space into the space settings dialog.
325
327
  if (state !== SpaceState.SPACE_INACTIVE && !hasPendingMigration) {
326
328
  actions.push({
327
- id: getId(SpaceAction.CLOSE),
329
+ id: getId(SpaceAction.Close._tag),
328
330
  type: ACTION_TYPE,
329
331
  data: async () => {
330
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.CLOSE, data: { space } });
332
+ await dispatch(createIntent(SpaceAction.Close, { space }));
331
333
  },
332
334
  properties: {
333
335
  label: ['close space label', { ns: SPACE_PLUGIN }],
@@ -339,10 +341,10 @@ export const constructSpaceActions = ({
339
341
 
340
342
  if (state === SpaceState.SPACE_INACTIVE) {
341
343
  actions.push({
342
- id: getId(SpaceAction.OPEN),
344
+ id: getId(SpaceAction.Open._tag),
343
345
  type: ACTION_TYPE,
344
346
  data: async () => {
345
- await dispatch({ plugin: SPACE_PLUGIN, action: SpaceAction.OPEN, data: { space } });
347
+ await dispatch(createIntent(SpaceAction.Open, { space }));
346
348
  },
347
349
  properties: {
348
350
  label: ['open space label', { ns: SPACE_PLUGIN }],
@@ -364,7 +366,7 @@ export const createObjectNode = ({
364
366
  object: ReactiveEchoObject<any>;
365
367
  space: Space;
366
368
  navigable?: boolean;
367
- resolve: MetadataResolver;
369
+ resolve: (typename: string) => Record<string, any>;
368
370
  }) => {
369
371
  const type = getTypename(object);
370
372
  if (!type) {
@@ -402,9 +404,11 @@ export const createObjectNode = ({
402
404
  export const constructObjectActions = ({
403
405
  node,
404
406
  dispatch,
407
+ navigable = false,
405
408
  }: {
406
409
  node: Node<ReactiveEchoObject<any>>;
407
- dispatch: IntentDispatcher;
410
+ dispatch: PromiseIntentDispatcher;
411
+ navigable?: boolean;
408
412
  }) => {
409
413
  const object = node.data;
410
414
  const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;
@@ -412,14 +416,10 @@ export const constructObjectActions = ({
412
416
  ...(object instanceof CollectionType
413
417
  ? [
414
418
  {
415
- id: getId(SpaceAction.ADD_OBJECT),
419
+ id: getId(SpaceAction.OpenCreateObject._tag),
416
420
  type: ACTION_TYPE,
417
421
  data: async () => {
418
- await dispatch({
419
- plugin: SPACE_PLUGIN,
420
- action: SpaceAction.OPEN_CREATE_OBJECT,
421
- data: { target: object },
422
- });
422
+ await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: object }));
423
423
  },
424
424
  properties: {
425
425
  label: ['create object in collection label', { ns: SPACE_PLUGIN }],
@@ -431,13 +431,10 @@ export const constructObjectActions = ({
431
431
  ]
432
432
  : []),
433
433
  {
434
- id: getId(SpaceAction.RENAME_OBJECT),
434
+ id: getId(SpaceAction.RenameObject._tag),
435
435
  type: ACTION_TYPE,
436
436
  data: async (params: InvokeParams) => {
437
- await dispatch({
438
- action: SpaceAction.RENAME_OBJECT,
439
- data: { object, ...params },
440
- });
437
+ await dispatch(createIntent(SpaceAction.RenameObject, { object, caller: params.caller }));
441
438
  },
442
439
  properties: {
443
440
  label: [
@@ -451,19 +448,14 @@ export const constructObjectActions = ({
451
448
  },
452
449
  },
453
450
  {
454
- id: getId(SpaceAction.REMOVE_OBJECTS),
451
+ id: getId(SpaceAction.RemoveObjects._tag),
455
452
  type: ACTION_TYPE,
456
453
  data: async () => {
457
454
  const graph = getGraph(node);
458
455
  const collection = graph
459
456
  .nodes(node, { relation: 'inbound' })
460
457
  .find(({ data }) => data instanceof CollectionType)?.data;
461
- await dispatch([
462
- {
463
- action: SpaceAction.REMOVE_OBJECTS,
464
- data: { objects: [object], collection },
465
- },
466
- ]);
458
+ await dispatch(createIntent(SpaceAction.RemoveObjects, { objects: [object], target: collection }));
467
459
  },
468
460
  properties: {
469
461
  label: [
@@ -475,17 +467,34 @@ export const constructObjectActions = ({
475
467
  testId: 'spacePlugin.deleteObject',
476
468
  },
477
469
  },
470
+ ...(navigable || !(object instanceof CollectionType)
471
+ ? [
472
+ {
473
+ id: getId('copy-link'),
474
+ type: ACTION_TYPE,
475
+ data: async () => {
476
+ const url = `${window.location.origin}/${fullyQualifiedId(object)}`;
477
+ await navigator.clipboard.writeText(url);
478
+ },
479
+ properties: {
480
+ label: ['copy link label', { ns: SPACE_PLUGIN }],
481
+ icon: 'ph--link--regular',
482
+ testId: 'spacePlugin.copyLink',
483
+ },
484
+ },
485
+ ]
486
+ : []),
487
+ // TODO(wittjosiah): Factor out and apply to all nodes.
478
488
  {
479
- id: getId('copy-link'),
489
+ id: NavigationAction.Expose._tag,
480
490
  type: ACTION_TYPE,
481
491
  data: async () => {
482
- const url = `${window.location.origin}/${fullyQualifiedId(object)}`;
483
- await navigator.clipboard.writeText(url);
492
+ await dispatch(createIntent(NavigationAction.Expose, { id: fullyQualifiedId(object) }));
484
493
  },
485
494
  properties: {
486
- label: ['copy link label', { ns: SPACE_PLUGIN }],
487
- icon: 'ph--link--regular',
488
- testId: 'spacePlugin.copyLink',
495
+ label: ['expose object label', { ns: SPACE_PLUGIN }],
496
+ icon: 'ph--eye--regular',
497
+ testId: 'spacePlugin.exposeObject',
489
498
  },
490
499
  },
491
500
  ];
@@ -514,7 +523,7 @@ export const getActiveSpace = (graph: Graph, active?: string) => {
514
523
  */
515
524
  export const getNestedObjects = async (
516
525
  object: ReactiveEchoObject<any>,
517
- resolve: MetadataResolver,
526
+ resolve: (typename: string) => Record<string, any>,
518
527
  ): Promise<ReactiveEchoObject<any>[]> => {
519
528
  const type = getTypename(object);
520
529
  if (!type) {
@@ -522,7 +531,7 @@ export const getNestedObjects = async (
522
531
  }
523
532
 
524
533
  const metadata = resolve(type);
525
- const loadReferences = metadata.loadReferences;
534
+ const loadReferences = metadata?.loadReferences;
526
535
  if (typeof loadReferences !== 'function') {
527
536
  return [];
528
537
  }
@@ -536,7 +545,11 @@ export const getNestedObjects = async (
536
545
  * @deprecated Workaround for ECHO not supporting clone.
537
546
  */
538
547
  // TODO(burdon): Remove.
539
- export const cloneObject = async (object: Expando, resolve: MetadataResolver, newSpace: Space): Promise<Expando> => {
548
+ export const cloneObject = async (
549
+ object: Expando,
550
+ resolve: (typename: string) => Record<string, any>,
551
+ newSpace: Space,
552
+ ): Promise<Expando> => {
540
553
  const schema = getSchema(object);
541
554
  const typename = schema ? getObjectAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;
542
555
  const metadata = resolve(typename);
@@ -1,43 +0,0 @@
1
- // packages/plugins/plugin-space/src/meta.ts
2
- var SPACE_PLUGIN = "dxos.org/plugin/space";
3
- var SPACE_PLUGIN_SHORT_ID = "space";
4
- var meta_default = {
5
- id: SPACE_PLUGIN,
6
- shortId: SPACE_PLUGIN_SHORT_ID,
7
- name: "Spaces"
8
- };
9
- var SPACE_ACTION = `${SPACE_PLUGIN}/action`;
10
- var SpaceAction;
11
- (function(SpaceAction2) {
12
- SpaceAction2[SpaceAction2["OPEN_CREATE_SPACE"] = `${SPACE_ACTION}/open-create-space`] = "OPEN_CREATE_SPACE";
13
- SpaceAction2[SpaceAction2["CREATE"] = `${SPACE_ACTION}/create`] = "CREATE";
14
- SpaceAction2[SpaceAction2["JOIN"] = `${SPACE_ACTION}/join`] = "JOIN";
15
- SpaceAction2[SpaceAction2["SHARE"] = `${SPACE_ACTION}/share`] = "SHARE";
16
- SpaceAction2[SpaceAction2["LOCK"] = `${SPACE_ACTION}/lock`] = "LOCK";
17
- SpaceAction2[SpaceAction2["UNLOCK"] = `${SPACE_ACTION}/unlock`] = "UNLOCK";
18
- SpaceAction2[SpaceAction2["RENAME"] = `${SPACE_ACTION}/rename`] = "RENAME";
19
- SpaceAction2[SpaceAction2["OPEN"] = `${SPACE_ACTION}/open`] = "OPEN";
20
- SpaceAction2[SpaceAction2["CLOSE"] = `${SPACE_ACTION}/close`] = "CLOSE";
21
- SpaceAction2[SpaceAction2["MIGRATE"] = `${SPACE_ACTION}/migrate`] = "MIGRATE";
22
- SpaceAction2[SpaceAction2["OPEN_CREATE_OBJECT"] = `${SPACE_ACTION}/open-create-object`] = "OPEN_CREATE_OBJECT";
23
- SpaceAction2[SpaceAction2["ADD_OBJECT"] = `${SPACE_ACTION}/add-object`] = "ADD_OBJECT";
24
- SpaceAction2[SpaceAction2["REMOVE_OBJECTS"] = `${SPACE_ACTION}/remove-objects`] = "REMOVE_OBJECTS";
25
- SpaceAction2[SpaceAction2["RENAME_OBJECT"] = `${SPACE_ACTION}/rename-object`] = "RENAME_OBJECT";
26
- SpaceAction2[SpaceAction2["DUPLICATE_OBJECT"] = `${SPACE_ACTION}/duplicate-object`] = "DUPLICATE_OBJECT";
27
- SpaceAction2[SpaceAction2["WAIT_FOR_OBJECT"] = `${SPACE_ACTION}/wait-for-object`] = "WAIT_FOR_OBJECT";
28
- SpaceAction2[SpaceAction2["TOGGLE_HIDDEN"] = `${SPACE_ACTION}/toggle-hidden`] = "TOGGLE_HIDDEN";
29
- SpaceAction2[SpaceAction2["OPEN_SETTINGS"] = `${SPACE_ACTION}/open-settings`] = "OPEN_SETTINGS";
30
- })(SpaceAction || (SpaceAction = {}));
31
- var CollectionAction;
32
- (function(CollectionAction2) {
33
- CollectionAction2["CREATE"] = "dxos.org/plugin/collection/action/create";
34
- })(CollectionAction || (CollectionAction = {}));
35
-
36
- export {
37
- SPACE_PLUGIN,
38
- SPACE_PLUGIN_SHORT_ID,
39
- meta_default,
40
- SpaceAction,
41
- CollectionAction
42
- };
43
- //# sourceMappingURL=chunk-FTKV32QZ.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\nexport const SPACE_PLUGIN_SHORT_ID = 'space';\n\nexport default {\n id: SPACE_PLUGIN,\n shortId: SPACE_PLUGIN_SHORT_ID,\n name: 'Spaces',\n} satisfies PluginMeta;\n\nconst SPACE_ACTION = `${SPACE_PLUGIN}/action`;\nexport enum SpaceAction {\n OPEN_CREATE_SPACE = `${SPACE_ACTION}/open-create-space`,\n CREATE = `${SPACE_ACTION}/create`,\n JOIN = `${SPACE_ACTION}/join`,\n SHARE = `${SPACE_ACTION}/share`,\n LOCK = `${SPACE_ACTION}/lock`,\n UNLOCK = `${SPACE_ACTION}/unlock`,\n RENAME = `${SPACE_ACTION}/rename`,\n OPEN = `${SPACE_ACTION}/open`,\n CLOSE = `${SPACE_ACTION}/close`,\n MIGRATE = `${SPACE_ACTION}/migrate`,\n OPEN_CREATE_OBJECT = `${SPACE_ACTION}/open-create-object`,\n ADD_OBJECT = `${SPACE_ACTION}/add-object`,\n REMOVE_OBJECTS = `${SPACE_ACTION}/remove-objects`,\n RENAME_OBJECT = `${SPACE_ACTION}/rename-object`,\n DUPLICATE_OBJECT = `${SPACE_ACTION}/duplicate-object`,\n WAIT_FOR_OBJECT = `${SPACE_ACTION}/wait-for-object`,\n TOGGLE_HIDDEN = `${SPACE_ACTION}/toggle-hidden`,\n OPEN_SETTINGS = `${SPACE_ACTION}/open-settings`,\n}\n\nexport enum CollectionAction {\n CREATE = 'dxos.org/plugin/collection/action/create',\n}\n"],
5
- "mappings": ";AAMO,IAAMA,eAAe;AACrB,IAAMC,wBAAwB;AAErC,IAAA,eAAe;EACbC,IAAIF;EACJG,SAASF;EACTG,MAAM;AACR;AAEA,IAAMC,eAAe,GAAGL,YAAAA;;UACZM,cAAAA;mDACU,GAAGD,YAAAA,oBAAgC,IAAA;wCAC9C,GAAGA,YAAAA,SAAqB,IAAA;sCAC1B,GAAGA,YAAAA,OAAmB,IAAA;uCACrB,GAAGA,YAAAA,QAAoB,IAAA;sCACxB,GAAGA,YAAAA,OAAmB,IAAA;wCACpB,GAAGA,YAAAA,SAAqB,IAAA;wCACxB,GAAGA,YAAAA,SAAqB,IAAA;sCAC1B,GAAGA,YAAAA,OAAmB,IAAA;uCACrB,GAAGA,YAAAA,QAAoB,IAAA;yCACrB,GAAGA,YAAAA,UAAsB,IAAA;oDACd,GAAGA,YAAAA,qBAAiC,IAAA;4CAC5C,GAAGA,YAAAA,aAAyB,IAAA;gDACxB,GAAGA,YAAAA,iBAA6B,IAAA;+CACjC,GAAGA,YAAAA,gBAA4B,IAAA;kDAC5B,GAAGA,YAAAA,mBAA+B,IAAA;iDACnC,GAAGA,YAAAA,kBAA8B,IAAA;+CACnC,GAAGA,YAAAA,gBAA4B,IAAA;+CAC/B,GAAGA,YAAAA,gBAA4B,IAAA;GAlBrCC,gBAAAA,cAAAA,CAAAA,EAAAA;;UAqBAC,mBAAAA;;GAAAA,qBAAAA,mBAAAA,CAAAA,EAAAA;",
6
- "names": ["SPACE_PLUGIN", "SPACE_PLUGIN_SHORT_ID", "id", "shortId", "name", "SPACE_ACTION", "SpaceAction", "CollectionAction"]
7
- }