@dxos/plugin-space 0.8.4-main.fd6878d → 0.8.4-main.fffef41

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 (366) hide show
  1. package/dist/lib/browser/{CollectionMain-D2B75XBS.mjs → CollectionArticle-WTHWY4YS.mjs} +10 -10
  2. package/dist/lib/browser/CollectionArticle-WTHWY4YS.mjs.map +7 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs +141 -0
  4. package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs.map +7 -0
  5. package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs +144 -0
  6. package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs.map +7 -0
  7. package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs +116 -0
  8. package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-builder-VZW75QPJ.mjs → app-graph-builder-DTM7BJ6D.mjs} +114 -97
  10. package/dist/lib/browser/app-graph-builder-DTM7BJ6D.mjs.map +7 -0
  11. package/dist/lib/browser/{app-graph-serializer-YPHYVZAP.mjs → app-graph-serializer-TIKXF43P.mjs} +19 -19
  12. package/dist/lib/browser/app-graph-serializer-TIKXF43P.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-AFUOMLX6.mjs +167 -0
  14. package/dist/lib/browser/chunk-AFUOMLX6.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-PSIBVBTA.mjs → chunk-CKACGS7T.mjs} +576 -500
  16. package/dist/lib/browser/chunk-CKACGS7T.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-K5J7ZB5P.mjs +20 -0
  18. package/dist/lib/browser/chunk-K5J7ZB5P.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-SMB4DGYO.mjs → chunk-KFUMADZF.mjs} +184 -60
  20. package/dist/lib/browser/chunk-KFUMADZF.mjs.map +7 -0
  21. package/dist/lib/browser/{chunk-WAXS2ZVX.mjs → chunk-VGKOXAPE.mjs} +27 -13
  22. package/dist/lib/browser/chunk-VGKOXAPE.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-VZBIIYFM.mjs +16 -0
  24. package/dist/lib/browser/chunk-VZBIIYFM.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-WJXU4GKV.mjs +19 -0
  26. package/dist/lib/browser/chunk-WJXU4GKV.mjs.map +7 -0
  27. package/dist/lib/browser/{chunk-3UFG6LQQ.mjs → chunk-ZQMSGD5J.mjs} +44 -22
  28. package/dist/lib/browser/chunk-ZQMSGD5J.mjs.map +7 -0
  29. package/dist/lib/browser/{identity-created-T6ZNVE7S.mjs → identity-created-NAXTPQXE.mjs} +5 -5
  30. package/dist/lib/browser/identity-created-NAXTPQXE.mjs.map +7 -0
  31. package/dist/lib/browser/index.mjs +89 -91
  32. package/dist/lib/browser/index.mjs.map +3 -3
  33. package/dist/lib/browser/{intent-resolver-TS6CCKST.mjs → intent-resolver-3FNTO3VW.mjs} +103 -85
  34. package/dist/lib/browser/intent-resolver-3FNTO3VW.mjs.map +7 -0
  35. package/dist/lib/browser/meta.json +1 -1
  36. package/dist/lib/browser/react-root-Q7VBWBES.mjs +30 -0
  37. package/dist/lib/browser/react-root-Q7VBWBES.mjs.map +7 -0
  38. package/dist/lib/browser/{react-surface-V3ARS2BP.mjs → react-surface-TTHS332A.mjs} +75 -109
  39. package/dist/lib/browser/react-surface-TTHS332A.mjs.map +7 -0
  40. package/dist/lib/browser/{schema-defs-5LBA43X5.mjs → schema-defs-QPI2JU3X.mjs} +6 -6
  41. package/dist/lib/browser/schema-defs-QPI2JU3X.mjs.map +7 -0
  42. package/dist/lib/browser/{settings-FLLBP5KI.mjs → settings-45PGPO2V.mjs} +5 -5
  43. package/dist/lib/browser/{settings-FLLBP5KI.mjs.map → settings-45PGPO2V.mjs.map} +1 -1
  44. package/dist/lib/browser/{spaces-ready-FXEP6XEW.mjs → spaces-ready-QCND4DVY.mjs} +15 -14
  45. package/dist/lib/browser/spaces-ready-QCND4DVY.mjs.map +7 -0
  46. package/dist/lib/browser/{state-K3UBPKYP.mjs → state-Q7YRE5KG.mjs} +7 -7
  47. package/dist/lib/browser/state-Q7YRE5KG.mjs.map +7 -0
  48. package/dist/lib/browser/types/index.mjs +2 -2
  49. package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionArticle-KHXYT3SH.mjs} +10 -10
  50. package/dist/lib/node-esm/CollectionArticle-KHXYT3SH.mjs.map +7 -0
  51. package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs +142 -0
  52. package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs.map +7 -0
  53. package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs +145 -0
  54. package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs.map +7 -0
  55. package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs +117 -0
  56. package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs.map +7 -0
  57. package/dist/lib/node-esm/{app-graph-builder-XNVQOJLE.mjs → app-graph-builder-FBJFWI4H.mjs} +114 -97
  58. package/dist/lib/node-esm/app-graph-builder-FBJFWI4H.mjs.map +7 -0
  59. package/dist/lib/node-esm/{app-graph-serializer-PKVLWV6V.mjs → app-graph-serializer-BESQZAYU.mjs} +19 -19
  60. package/dist/lib/node-esm/app-graph-serializer-BESQZAYU.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-S7MKRQHY.mjs → chunk-6VEONPNZ.mjs} +44 -22
  62. package/dist/lib/node-esm/chunk-6VEONPNZ.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-6ZQGZBEP.mjs +168 -0
  64. package/dist/lib/node-esm/chunk-6ZQGZBEP.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs +18 -0
  66. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs.map +7 -0
  67. package/dist/lib/node-esm/chunk-H4JILUJK.mjs +20 -0
  68. package/dist/lib/node-esm/chunk-H4JILUJK.mjs.map +7 -0
  69. package/dist/lib/node-esm/{chunk-CTQMR7E3.mjs → chunk-OK2L7N2F.mjs} +184 -60
  70. package/dist/lib/node-esm/chunk-OK2L7N2F.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-HYIZVPOA.mjs → chunk-QBRPYAEL.mjs} +27 -13
  72. package/dist/lib/node-esm/chunk-QBRPYAEL.mjs.map +7 -0
  73. package/dist/lib/node-esm/{chunk-KYUHPPRN.mjs → chunk-XGAMJC5C.mjs} +576 -500
  74. package/dist/lib/node-esm/chunk-XGAMJC5C.mjs.map +7 -0
  75. package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs +21 -0
  76. package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs.map +7 -0
  77. package/dist/lib/node-esm/{identity-created-AL7NNCKH.mjs → identity-created-OXLKCJE3.mjs} +5 -5
  78. package/dist/lib/node-esm/identity-created-OXLKCJE3.mjs.map +7 -0
  79. package/dist/lib/node-esm/index.mjs +89 -91
  80. package/dist/lib/node-esm/index.mjs.map +3 -3
  81. package/dist/lib/node-esm/{intent-resolver-W6P27SCF.mjs → intent-resolver-6O5FSB7Z.mjs} +103 -85
  82. package/dist/lib/node-esm/intent-resolver-6O5FSB7Z.mjs.map +7 -0
  83. package/dist/lib/node-esm/meta.json +1 -1
  84. package/dist/lib/node-esm/{react-root-N27KETKT.mjs → react-root-K66W3FMA.mjs} +13 -12
  85. package/dist/lib/node-esm/react-root-K66W3FMA.mjs.map +7 -0
  86. package/dist/lib/node-esm/{react-surface-TNPAUQCM.mjs → react-surface-Y7FTEIDF.mjs} +75 -109
  87. package/dist/lib/node-esm/react-surface-Y7FTEIDF.mjs.map +7 -0
  88. package/dist/lib/node-esm/{schema-defs-TPWZPDCR.mjs → schema-defs-ZS2D47XW.mjs} +6 -6
  89. package/dist/lib/node-esm/schema-defs-ZS2D47XW.mjs.map +7 -0
  90. package/dist/lib/node-esm/{settings-WKUWY3P6.mjs → settings-6FO65BA6.mjs} +5 -5
  91. package/dist/lib/node-esm/{settings-WKUWY3P6.mjs.map → settings-6FO65BA6.mjs.map} +1 -1
  92. package/dist/lib/node-esm/{spaces-ready-PQLLIO5W.mjs → spaces-ready-P7CKVXBE.mjs} +15 -14
  93. package/dist/lib/node-esm/spaces-ready-P7CKVXBE.mjs.map +7 -0
  94. package/dist/lib/node-esm/{state-4M5A6OSB.mjs → state-362I5BMK.mjs} +7 -7
  95. package/dist/lib/node-esm/state-362I5BMK.mjs.map +7 -0
  96. package/dist/lib/node-esm/types/index.mjs +2 -2
  97. package/dist/types/src/SpacePlugin.d.ts +1 -1
  98. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  100. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  102. package/dist/types/src/capabilities/capabilities.d.ts +6 -5
  103. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/identity-created.d.ts +1 -1
  105. package/dist/types/src/capabilities/index.d.ts +11 -12
  106. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  107. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  108. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  109. package/dist/types/src/capabilities/react-root.d.ts +2 -2
  110. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  111. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  112. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/schema-defs.d.ts +1 -1
  114. package/dist/types/src/capabilities/settings.d.ts +1 -1
  115. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  116. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  117. package/dist/types/src/capabilities/state.d.ts +1 -1
  118. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  119. package/dist/types/src/components/CollectionArticle.d.ts +6 -0
  120. package/dist/types/src/components/CollectionArticle.d.ts.map +1 -0
  121. package/dist/types/src/components/CollectionSection.d.ts +3 -4
  122. package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
  123. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -3
  124. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  125. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1704 -4
  126. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  127. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +6 -4
  128. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  129. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
  130. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  131. package/dist/types/src/components/{JoinDialog.d.ts → JoinDialog/JoinDialog.d.ts} +1 -1
  132. package/dist/types/src/components/JoinDialog/JoinDialog.d.ts.map +1 -0
  133. package/dist/types/src/components/JoinDialog/index.d.ts +2 -0
  134. package/dist/types/src/components/JoinDialog/index.d.ts.map +1 -0
  135. package/dist/types/src/components/{MembersContainer.d.ts → MembersContainer/MembersContainer.d.ts} +3 -2
  136. package/dist/types/src/components/MembersContainer/MembersContainer.d.ts.map +1 -0
  137. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +1707 -0
  138. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts.map +1 -0
  139. package/dist/types/src/components/MembersContainer/index.d.ts +2 -0
  140. package/dist/types/src/components/MembersContainer/index.d.ts.map +1 -0
  141. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
  142. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
  143. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
  144. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
  145. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
  146. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
  147. package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts +7 -0
  148. package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -0
  149. package/dist/types/src/components/ObjectRenamePopover/index.d.ts +2 -0
  150. package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +1 -0
  151. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  152. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  153. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1540 -0
  154. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
  155. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
  156. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  157. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  158. package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
  159. package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
  160. package/dist/types/src/components/RecordArticle.d.ts +5 -0
  161. package/dist/types/src/components/RecordArticle.d.ts.map +1 -0
  162. package/dist/types/src/components/RecordArticle.stories.d.ts +1707 -0
  163. package/dist/types/src/components/RecordArticle.stories.d.ts.map +1 -0
  164. package/dist/types/src/components/SchemaContainer.d.ts +1 -1
  165. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  166. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  167. package/dist/types/src/components/{SpacePresence.d.ts → SpacePresence/SpacePresence.d.ts} +4 -3
  168. package/dist/types/src/components/SpacePresence/SpacePresence.d.ts.map +1 -0
  169. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts +1537 -0
  170. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts.map +1 -0
  171. package/dist/types/src/components/SpacePresence/index.d.ts +2 -0
  172. package/dist/types/src/components/SpacePresence/index.d.ts.map +1 -0
  173. package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts +7 -0
  174. package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -0
  175. package/dist/types/src/components/SpaceRenamePopover/index.d.ts +2 -0
  176. package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +1 -0
  177. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  178. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1537 -4
  179. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  180. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  181. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1538 -5
  182. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  183. package/dist/types/src/components/ViewEditor.d.ts +3 -4
  184. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  185. package/dist/types/src/components/index.d.ts +10 -14
  186. package/dist/types/src/components/index.d.ts.map +1 -1
  187. package/dist/types/src/events.d.ts.map +1 -1
  188. package/dist/types/src/helpers/index.d.ts +2 -0
  189. package/dist/types/src/helpers/index.d.ts.map +1 -0
  190. package/dist/types/src/helpers/query.d.ts +8 -0
  191. package/dist/types/src/helpers/query.d.ts.map +1 -0
  192. package/dist/types/src/helpers/query.test.d.ts +2 -0
  193. package/dist/types/src/helpers/query.test.d.ts.map +1 -0
  194. package/dist/types/src/hooks/index.d.ts +1 -0
  195. package/dist/types/src/hooks/index.d.ts.map +1 -1
  196. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  197. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
  198. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  199. package/dist/types/src/hooks/usePath.d.ts +1 -1
  200. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  201. package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
  202. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
  203. package/dist/types/src/index.d.ts +1 -0
  204. package/dist/types/src/index.d.ts.map +1 -1
  205. package/dist/types/src/meta.d.ts +0 -1
  206. package/dist/types/src/meta.d.ts.map +1 -1
  207. package/dist/types/src/translations.d.ts +1332 -22
  208. package/dist/types/src/translations.d.ts.map +1 -1
  209. package/dist/types/src/types/types.d.ts +92 -97
  210. package/dist/types/src/types/types.d.ts.map +1 -1
  211. package/dist/types/src/util.d.ts +12 -8
  212. package/dist/types/src/util.d.ts.map +1 -1
  213. package/dist/types/tsconfig.tsbuildinfo +1 -1
  214. package/package.json +65 -59
  215. package/src/SpacePlugin.ts +228 -218
  216. package/src/capabilities/app-graph-builder.ts +184 -135
  217. package/src/capabilities/app-graph-serializer.ts +12 -12
  218. package/src/capabilities/capabilities.ts +17 -11
  219. package/src/capabilities/identity-created.ts +2 -2
  220. package/src/capabilities/index.ts +0 -1
  221. package/src/capabilities/intent-resolver.ts +89 -62
  222. package/src/capabilities/react-root.tsx +4 -3
  223. package/src/capabilities/react-surface.tsx +69 -145
  224. package/src/capabilities/schema-defs.ts +1 -1
  225. package/src/capabilities/spaces-ready.ts +8 -5
  226. package/src/capabilities/state.ts +2 -2
  227. package/src/components/AwaitingObject.tsx +12 -14
  228. package/src/components/{CollectionMain.tsx → CollectionArticle.tsx} +7 -6
  229. package/src/components/CollectionSection.tsx +8 -6
  230. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +15 -15
  231. package/src/components/CreateDialog/CreateObjectDialog.tsx +48 -31
  232. package/src/components/CreateDialog/CreateObjectPanel.tsx +22 -11
  233. package/src/components/CreateDialog/CreateSpaceDialog.tsx +30 -11
  234. package/src/components/{JoinDialog.tsx → JoinDialog/JoinDialog.tsx} +26 -10
  235. package/src/components/JoinDialog/index.ts +5 -0
  236. package/src/components/MembersContainer/MembersContainer.stories.tsx +56 -0
  237. package/src/components/{MembersContainer.tsx → MembersContainer/MembersContainer.tsx} +21 -20
  238. package/src/components/MembersContainer/index.ts +5 -0
  239. package/src/components/MenuFooter.tsx +2 -2
  240. package/src/components/ObjectDetailsPanel/ObjectDetailsPanel.tsx +51 -0
  241. package/src/components/ObjectDetailsPanel/ObjectForm.tsx +72 -0
  242. package/src/components/ObjectDetailsPanel/index.ts +7 -0
  243. package/src/components/{PopoverRenameObject.tsx → ObjectRenamePopover/ObjectRenamePopover.tsx} +6 -6
  244. package/src/components/ObjectRenamePopover/index.ts +5 -0
  245. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +3 -3
  246. package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
  247. package/src/components/ObjectSettings/BaseObjectSettings.tsx +90 -26
  248. package/src/components/ObjectSettings/ForeignKeys.tsx +4 -4
  249. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +4 -3
  250. package/src/components/ObjectSettings/index.ts +3 -1
  251. package/src/components/RecordArticle.stories.tsx +115 -0
  252. package/src/components/RecordArticle.tsx +114 -0
  253. package/src/components/SchemaContainer.tsx +23 -26
  254. package/src/components/SpacePluginSettings.tsx +15 -10
  255. package/src/components/{SpacePresence.stories.tsx → SpacePresence/SpacePresence.stories.tsx} +22 -22
  256. package/src/components/{SpacePresence.tsx → SpacePresence/SpacePresence.tsx} +16 -11
  257. package/src/components/SpacePresence/index.ts +5 -0
  258. package/src/components/{PopoverRenameSpace.tsx → SpaceRenamePopover/SpaceRenamePopover.tsx} +7 -6
  259. package/src/components/SpaceRenamePopover/index.ts +5 -0
  260. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +15 -8
  261. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +45 -24
  262. package/src/components/SyncStatus/InlineSyncStatus.tsx +8 -8
  263. package/src/components/SyncStatus/SyncStatus.stories.tsx +7 -8
  264. package/src/components/SyncStatus/SyncStatus.tsx +107 -11
  265. package/src/components/ViewEditor.tsx +51 -23
  266. package/src/components/index.ts +7 -8
  267. package/src/events.ts +6 -6
  268. package/src/helpers/index.ts +5 -0
  269. package/src/helpers/query.test.ts +24 -0
  270. package/src/helpers/query.ts +158 -0
  271. package/src/hooks/index.ts +1 -0
  272. package/src/hooks/useActiveSpace.ts +3 -2
  273. package/src/hooks/useInputSurfaceLookup.tsx +8 -3
  274. package/src/hooks/usePath.ts +1 -1
  275. package/src/hooks/useTypeOptions.ts +59 -0
  276. package/src/index.ts +1 -0
  277. package/src/meta.ts +6 -3
  278. package/src/translations.ts +26 -10
  279. package/src/types/types.ts +42 -23
  280. package/src/util.tsx +183 -62
  281. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  282. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.mjs +0 -88
  283. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.mjs.map +0 -7
  284. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +0 -68
  285. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +0 -7
  286. package/dist/lib/browser/app-graph-builder-VZW75QPJ.mjs.map +0 -7
  287. package/dist/lib/browser/app-graph-serializer-YPHYVZAP.mjs.map +0 -7
  288. package/dist/lib/browser/chunk-3UFG6LQQ.mjs.map +0 -7
  289. package/dist/lib/browser/chunk-CBYL62HG.mjs +0 -19
  290. package/dist/lib/browser/chunk-CBYL62HG.mjs.map +0 -7
  291. package/dist/lib/browser/chunk-DYKFFVN6.mjs +0 -94
  292. package/dist/lib/browser/chunk-DYKFFVN6.mjs.map +0 -7
  293. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  294. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  295. package/dist/lib/browser/chunk-PSIBVBTA.mjs.map +0 -7
  296. package/dist/lib/browser/chunk-Q5EEPP3S.mjs +0 -20
  297. package/dist/lib/browser/chunk-Q5EEPP3S.mjs.map +0 -7
  298. package/dist/lib/browser/chunk-SMB4DGYO.mjs.map +0 -7
  299. package/dist/lib/browser/chunk-WAXS2ZVX.mjs.map +0 -7
  300. package/dist/lib/browser/identity-created-T6ZNVE7S.mjs.map +0 -7
  301. package/dist/lib/browser/intent-resolver-TS6CCKST.mjs.map +0 -7
  302. package/dist/lib/browser/react-root-RQGTZ2ZO.mjs +0 -29
  303. package/dist/lib/browser/react-root-RQGTZ2ZO.mjs.map +0 -7
  304. package/dist/lib/browser/react-surface-V3ARS2BP.mjs.map +0 -7
  305. package/dist/lib/browser/schema-defs-5LBA43X5.mjs.map +0 -7
  306. package/dist/lib/browser/schema-tools-LPL35WOJ.mjs +0 -124
  307. package/dist/lib/browser/schema-tools-LPL35WOJ.mjs.map +0 -7
  308. package/dist/lib/browser/spaces-ready-FXEP6XEW.mjs.map +0 -7
  309. package/dist/lib/browser/state-K3UBPKYP.mjs.map +0 -7
  310. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  311. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.mjs +0 -89
  312. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.mjs.map +0 -7
  313. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +0 -70
  314. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +0 -7
  315. package/dist/lib/node-esm/app-graph-builder-XNVQOJLE.mjs.map +0 -7
  316. package/dist/lib/node-esm/app-graph-serializer-PKVLWV6V.mjs.map +0 -7
  317. package/dist/lib/node-esm/chunk-7MZ3J3LI.mjs +0 -21
  318. package/dist/lib/node-esm/chunk-7MZ3J3LI.mjs.map +0 -7
  319. package/dist/lib/node-esm/chunk-CTQMR7E3.mjs.map +0 -7
  320. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs +0 -20
  321. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs.map +0 -7
  322. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs +0 -15
  323. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  324. package/dist/lib/node-esm/chunk-HYIZVPOA.mjs.map +0 -7
  325. package/dist/lib/node-esm/chunk-KLG4Y4GY.mjs +0 -96
  326. package/dist/lib/node-esm/chunk-KLG4Y4GY.mjs.map +0 -7
  327. package/dist/lib/node-esm/chunk-KYUHPPRN.mjs.map +0 -7
  328. package/dist/lib/node-esm/chunk-S7MKRQHY.mjs.map +0 -7
  329. package/dist/lib/node-esm/identity-created-AL7NNCKH.mjs.map +0 -7
  330. package/dist/lib/node-esm/intent-resolver-W6P27SCF.mjs.map +0 -7
  331. package/dist/lib/node-esm/react-root-N27KETKT.mjs.map +0 -7
  332. package/dist/lib/node-esm/react-surface-TNPAUQCM.mjs.map +0 -7
  333. package/dist/lib/node-esm/schema-defs-TPWZPDCR.mjs.map +0 -7
  334. package/dist/lib/node-esm/schema-tools-PJE2FKWH.mjs +0 -126
  335. package/dist/lib/node-esm/schema-tools-PJE2FKWH.mjs.map +0 -7
  336. package/dist/lib/node-esm/spaces-ready-PQLLIO5W.mjs.map +0 -7
  337. package/dist/lib/node-esm/state-4M5A6OSB.mjs.map +0 -7
  338. package/dist/types/src/capabilities/schema-tool.test.d.ts +0 -2
  339. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +0 -1
  340. package/dist/types/src/capabilities/schema-tools.d.ts +0 -13
  341. package/dist/types/src/capabilities/schema-tools.d.ts.map +0 -1
  342. package/dist/types/src/components/CollectionMain.d.ts +0 -7
  343. package/dist/types/src/components/CollectionMain.d.ts.map +0 -1
  344. package/dist/types/src/components/JoinDialog.d.ts.map +0 -1
  345. package/dist/types/src/components/MembersContainer.d.ts.map +0 -1
  346. package/dist/types/src/components/MembersContainer.stories.d.ts +0 -8
  347. package/dist/types/src/components/MembersContainer.stories.d.ts.map +0 -1
  348. package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
  349. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
  350. package/dist/types/src/components/PersistenceStatus.d.ts +0 -6
  351. package/dist/types/src/components/PersistenceStatus.d.ts.map +0 -1
  352. package/dist/types/src/components/PopoverRenameObject.d.ts +0 -7
  353. package/dist/types/src/components/PopoverRenameObject.d.ts.map +0 -1
  354. package/dist/types/src/components/PopoverRenameSpace.d.ts +0 -7
  355. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +0 -1
  356. package/dist/types/src/components/RecordMain.d.ts +0 -7
  357. package/dist/types/src/components/RecordMain.d.ts.map +0 -1
  358. package/dist/types/src/components/SpacePresence.d.ts.map +0 -1
  359. package/dist/types/src/components/SpacePresence.stories.d.ts +0 -9
  360. package/dist/types/src/components/SpacePresence.stories.d.ts.map +0 -1
  361. package/src/capabilities/schema-tool.test.ts +0 -44
  362. package/src/capabilities/schema-tools.ts +0 -125
  363. package/src/components/MembersContainer.stories.tsx +0 -31
  364. package/src/components/ObjectDetailsPanel.tsx +0 -77
  365. package/src/components/PersistenceStatus.tsx +0 -83
  366. package/src/components/RecordMain.tsx +0 -43
@@ -0,0 +1,59 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { useMemo } from 'react';
6
+
7
+ import { useCapabilities } from '@dxos/app-framework/react';
8
+ import { Type } from '@dxos/echo';
9
+ import { ClientCapabilities } from '@dxos/plugin-client';
10
+ import { useClient } from '@dxos/react-client';
11
+ import { type Space } from '@dxos/react-client/echo';
12
+ import { useTranslation } from '@dxos/react-ui';
13
+ import { Collection, type TypenameAnnotation, getTypenames } from '@dxos/schema';
14
+
15
+ import { SpaceCapabilities } from '../capabilities';
16
+
17
+ const OMIT = [Collection.Collection.typename, Type.getTypename(Collection.QueryCollection)];
18
+
19
+ export const useTypeOptions = ({ space, annotation }: { space?: Space; annotation: TypenameAnnotation[] }) => {
20
+ const { t } = useTranslation();
21
+ const client = useClient();
22
+
23
+ const schemaWhitelists = useCapabilities(ClientCapabilities.SchemaWhiteList);
24
+ const whitelistedTypenames = useMemo(
25
+ () => new Set(schemaWhitelists.flatMap((typeArray) => typeArray.map((type) => Type.getTypename(type)))),
26
+ [schemaWhitelists],
27
+ );
28
+
29
+ const objectForms = useCapabilities(SpaceCapabilities.ObjectForm);
30
+ const objectFormTypenames = useMemo(
31
+ () =>
32
+ new Set(
33
+ objectForms
34
+ .map((form) => Type.getTypename(form.objectSchema))
35
+ // TODO(wittjosiah): Remove.
36
+ .filter((typename) => !OMIT.includes(typename) && !typename.endsWith('View')),
37
+ ),
38
+ [objectForms],
39
+ );
40
+
41
+ const typenames = getTypenames({
42
+ annotation,
43
+ whitelistedTypenames,
44
+ objectFormTypenames,
45
+ space,
46
+ client,
47
+ });
48
+
49
+ return useMemo(
50
+ () =>
51
+ typenames
52
+ .map((typename) => ({
53
+ value: typename,
54
+ label: t('typename label', { ns: typename, defaultValue: typename }),
55
+ }))
56
+ .toSorted((a, b) => a.label.localeCompare(b.label)),
57
+ [t, typenames],
58
+ );
59
+ };
package/src/index.ts CHANGED
@@ -6,6 +6,7 @@ export { SpaceCapabilities } from './capabilities';
6
6
  export { SpaceEvents } from './events';
7
7
 
8
8
  export * from './components';
9
+ export * from './helpers';
9
10
  export * from './hooks';
10
11
  export * from './meta';
11
12
  export * from './SpacePlugin';
package/src/meta.ts CHANGED
@@ -3,11 +3,14 @@
3
3
  //
4
4
 
5
5
  import { type PluginMeta } from '@dxos/app-framework';
6
-
7
- export const SPACE_PLUGIN = 'dxos.org/plugin/space';
6
+ import { trim } from '@dxos/util';
8
7
 
9
8
  export const meta: PluginMeta = {
10
- id: SPACE_PLUGIN,
9
+ id: 'dxos.org/plugin/space',
11
10
  name: 'Spaces',
11
+ description: trim`
12
+ Core workspace container system for organizing and sharing collaborative environments.
13
+ Create, manage, and share spaces with granular access control and invitation management.
14
+ `,
12
15
  icon: 'ph--planet--regular',
13
16
  };
@@ -2,9 +2,11 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { StoredSchema } from '@dxos/echo-schema';
5
+ import { Type } from '@dxos/echo';
6
+ import { StoredSchema } from '@dxos/echo/internal';
6
7
  import { type Resource } from '@dxos/react-ui';
7
- import { DataType } from '@dxos/schema';
8
+ import { Collection, View } from '@dxos/schema';
9
+ import { Event, Organization, Person, Project, Task } from '@dxos/types';
8
10
 
9
11
  import { meta } from './meta';
10
12
 
@@ -12,7 +14,7 @@ import { meta } from './meta';
12
14
  export const translations = [
13
15
  {
14
16
  'en-US': {
15
- [DataType.Collection.typename]: {
17
+ [Collection.Collection.typename]: {
16
18
  'typename label': 'Collection',
17
19
  'typename label_zero': 'Collections',
18
20
  'typename label_one': 'Collection',
@@ -21,7 +23,7 @@ export const translations = [
21
23
  'rename object label': 'Rename collection',
22
24
  'delete object label': 'Delete collection',
23
25
  },
24
- [DataType.QueryCollection.typename]: {
26
+ [Type.getTypename(Collection.QueryCollection)]: {
25
27
  'typename label': 'Smart Collection',
26
28
  'typename label_zero': 'Smart Collections',
27
29
  'typename label_one': 'Smart Collection',
@@ -39,7 +41,7 @@ export const translations = [
39
41
  'rename object label': 'Rename record type',
40
42
  'delete object label': 'Delete record type',
41
43
  },
42
- [DataType.View.typename]: {
44
+ [Type.getTypename(View.View)]: {
43
45
  'typename label': 'View',
44
46
  'typename label_zero': 'Views',
45
47
  'typename label_one': 'View',
@@ -48,35 +50,35 @@ export const translations = [
48
50
  'rename object label': 'Rename view',
49
51
  'delete object label': 'Delete view',
50
52
  },
51
- [DataType.Event.typename]: {
53
+ [Event.Event.typename]: {
52
54
  'typename label': 'Event',
53
55
  'typename label_zero': 'Events',
54
56
  'typename label_one': 'Event',
55
57
  'typename label_other': 'Events',
56
58
  'object name placeholder': 'New event',
57
59
  },
58
- [DataType.Organization.typename]: {
60
+ [Organization.Organization.typename]: {
59
61
  'typename label': 'Organization',
60
62
  'typename label_zero': 'Organizations',
61
63
  'typename label_one': 'Organization',
62
64
  'typename label_other': 'Organizations',
63
65
  'object name placeholder': 'New organization',
64
66
  },
65
- [DataType.Person.typename]: {
67
+ [Person.Person.typename]: {
66
68
  'typename label': 'Person',
67
69
  'typename label_zero': 'People',
68
70
  'typename label_one': 'Person',
69
71
  'typename label_other': 'People',
70
72
  'object name placeholder': 'New person',
71
73
  },
72
- [DataType.Project.typename]: {
74
+ [Project.Project.typename]: {
73
75
  'typename label': 'Project',
74
76
  'typename label_zero': 'Projects',
75
77
  'typename label_one': 'Project',
76
78
  'typename label_other': 'Projects',
77
79
  'object name placeholder': 'New project',
78
80
  },
79
- [DataType.Task.typename]: {
81
+ [Task.Task.typename]: {
80
82
  'typename label': 'Task',
81
83
  'typename label_zero': 'Tasks',
82
84
  'typename label_one': 'Task',
@@ -120,6 +122,7 @@ export const translations = [
120
122
  'show hidden spaces label': 'Show archived spaces',
121
123
  'save files to directory label': 'Save files to disk',
122
124
  'select path label': 'Select path',
125
+ 'snapshot by schema label': 'Snapshot of objects',
123
126
  'rename collection label': 'Rename collection',
124
127
  'rename object label': 'Rename item',
125
128
  'duplicate object label': 'Duplicate item',
@@ -189,10 +192,12 @@ export const translations = [
189
192
  'creating in collection label': 'In Collection',
190
193
  'clear input label': 'Clear',
191
194
  'expose object label': 'Expose in navtree',
195
+ 'add tag label': 'Add tag',
192
196
  'advanced settings label': 'Advanced',
193
197
  'foreign keys': 'Foreign Keys',
194
198
  'add key': 'Add Key',
195
199
  'open space settings label': 'Open settings',
200
+ 'related objects label': 'Related Items',
196
201
 
197
202
  'row details no selection label': 'No objects selected',
198
203
  'companion selected objects label': 'Selected',
@@ -227,7 +232,18 @@ export const translations = [
227
232
  'archive space description':
228
233
  'Archiving a space will remove it from the sidebar and stop replicating updates, but will not delete the data. You can unarchive it by enabling archived spaces in the app settings.',
229
234
  'archive space label': 'Archive',
235
+ 'backup space label': 'Backup',
236
+ 'backup space description':
237
+ 'Download a backup of the space. Contains all data in the space in an unencrypted format.',
238
+ 'download backup': 'Download backup',
230
239
  'unarchive space label': 'Unarchive',
240
+
241
+ 'sync edge connected label': 'Edge connected',
242
+ 'sync edge disconnected label': 'Edge disconnected',
243
+ 'sync no connection label': 'No connection to edge service',
244
+ 'sync latency label': 'Latency',
245
+ 'sync upload label': 'Upload',
246
+ 'sync download label': 'Download',
231
247
  },
232
248
  },
233
249
  },
@@ -2,21 +2,22 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
5
+ import * as Schema from 'effect/Schema';
6
6
 
7
7
  import { type AnyIntentChain } from '@dxos/app-framework';
8
- import { type Obj, Type } from '@dxos/echo';
9
- import { type BaseObject, EchoSchema, StoredSchema, type TypedObject } from '@dxos/echo-schema';
8
+ import { type Obj, QueryAST, Type } from '@dxos/echo';
9
+ import { type BaseObject, EchoSchema, StoredSchema } from '@dxos/echo/internal';
10
10
  import { type PublicKey } from '@dxos/react-client';
11
11
  // TODO(wittjosiah): This pulls in full client.
12
12
  import { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';
13
13
  import { CancellableInvitationObservable, Invitation } from '@dxos/react-client/invitations';
14
- import { DataType, FieldSchema, TypenameAnnotationId } from '@dxos/schema';
14
+ import { Collection, FieldSchema, TypenameAnnotationId, View } from '@dxos/schema';
15
15
  import { type ComplexMap } from '@dxos/util';
16
16
 
17
- import { SPACE_PLUGIN } from '../meta';
17
+ import { meta } from '../meta';
18
+
19
+ export const SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;
18
20
 
19
- export const SPACE_DIRECTORY_HANDLE = 'dxos.org/plugin/space/directory';
20
21
  export const SPACE_TYPE = 'dxos.org/type/Space';
21
22
 
22
23
  export type ObjectViewerProps = {
@@ -105,8 +106,7 @@ export const SpaceForm = Schema.Struct({
105
106
  });
106
107
 
107
108
  export type ObjectForm<T extends BaseObject = BaseObject> = {
108
- // TODO(dmaretskyi): Change to Schema.Schema.AnyNoContext
109
- objectSchema: TypedObject;
109
+ objectSchema: Schema.Schema.AnyNoContext;
110
110
  formSchema?: Schema.Schema<T, any>;
111
111
  hidden?: boolean;
112
112
  getIntent: (props: T, options: { space: Space }) => AnyIntentChain;
@@ -114,7 +114,7 @@ export type ObjectForm<T extends BaseObject = BaseObject> = {
114
114
 
115
115
  export const defineObjectForm = <T extends BaseObject>(form: ObjectForm<T>) => form;
116
116
 
117
- export const SPACE_ACTION = `${SPACE_PLUGIN}/action`;
117
+ export const SPACE_ACTION = `${meta.id}/action`;
118
118
 
119
119
  export namespace SpaceAction {
120
120
  export class OpenCreateSpace extends Schema.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {
@@ -217,6 +217,16 @@ export namespace SpaceAction {
217
217
  output: Schema.Boolean,
218
218
  }) {}
219
219
 
220
+ export class Snapshot extends Schema.TaggedClass<Snapshot>()(`${SPACE_ACTION}/snapshot`, {
221
+ input: Schema.Struct({
222
+ space: SpaceSchema,
223
+ query: QueryAST.Query.pipe(Schema.optional),
224
+ }),
225
+ output: Schema.Struct({
226
+ snapshot: Schema.instanceOf(Blob),
227
+ }),
228
+ }) {}
229
+
220
230
  export const StoredSchemaForm = Schema.Struct({
221
231
  name: Schema.optional(Schema.String),
222
232
  typename: Schema.optional(
@@ -230,6 +240,8 @@ export namespace SpaceAction {
230
240
  input: Schema.Struct({
231
241
  space: SpaceSchema,
232
242
  typename: Schema.String,
243
+ // TODO(wittjosiah): This is leaky.
244
+ show: Schema.optional(Schema.Boolean),
233
245
  }),
234
246
  output: Schema.Struct({}),
235
247
  }) {}
@@ -238,8 +250,13 @@ export namespace SpaceAction {
238
250
  input: Schema.Struct({
239
251
  space: SpaceSchema,
240
252
  name: Schema.optional(Schema.String),
253
+ typename: Schema.optional(Schema.String),
254
+ // TODO(wittjosiah): Semantic version format.
255
+ version: Schema.optional(Schema.String),
241
256
  // TODO(wittjosiah): Schema for schema?
242
257
  schema: Schema.Any,
258
+ // TODO(wittjosiah): This is leaky.
259
+ show: Schema.optional(Schema.Boolean),
243
260
  }),
244
261
  output: Schema.Struct({
245
262
  // TODO(wittjosiah): ObjectId.
@@ -251,7 +268,7 @@ export namespace SpaceAction {
251
268
 
252
269
  export class DeleteField extends Schema.TaggedClass<DeleteField>()(`${SPACE_ACTION}/delete-field`, {
253
270
  input: Schema.Struct({
254
- view: DataType.View,
271
+ view: View.View,
255
272
  fieldId: Schema.String,
256
273
  // TODO(wittjosiah): Separate fields for undo data?
257
274
  deletionData: Schema.optional(
@@ -269,8 +286,10 @@ export namespace SpaceAction {
269
286
 
270
287
  export class OpenCreateObject extends Schema.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {
271
288
  input: Schema.Struct({
272
- target: Schema.Union(SpaceSchema, DataType.Collection),
289
+ target: Schema.Union(SpaceSchema, Collection.Collection),
290
+ views: Schema.optional(Schema.Boolean),
273
291
  typename: Schema.optional(Schema.String),
292
+ initialFormValues: Schema.optional(Schema.Any),
274
293
  navigable: Schema.optional(Schema.Boolean),
275
294
  // TODO(wittjosiah): This is a function, is there a better way to handle this?
276
295
  onCreateObject: Schema.optional(Schema.Any),
@@ -281,7 +300,7 @@ export namespace SpaceAction {
281
300
  export class AddObject extends Schema.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {
282
301
  input: Schema.Struct({
283
302
  object: ReactiveObjectSchema,
284
- target: Schema.Union(SpaceSchema, DataType.Collection),
303
+ target: Schema.Union(SpaceSchema, Collection.Collection),
285
304
  hidden: Schema.optional(Schema.Boolean),
286
305
  }),
287
306
  output: Schema.Struct({
@@ -309,7 +328,7 @@ export namespace SpaceAction {
309
328
 
310
329
  export const DeletionData = Schema.Struct({
311
330
  objects: Schema.Array(EchoObjectSchema),
312
- parentCollection: DataType.Collection,
331
+ parentCollection: Collection.Collection,
313
332
  indices: Schema.Array(Schema.Number),
314
333
  nestedObjectsList: Schema.Array(Schema.Array(EchoObjectSchema)),
315
334
  wasActive: Schema.Array(Schema.String),
@@ -319,8 +338,9 @@ export namespace SpaceAction {
319
338
 
320
339
  export class RemoveObjects extends Schema.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {
321
340
  input: Schema.Struct({
322
- objects: Schema.Array(EchoObjectSchema),
323
- target: Schema.optional(DataType.Collection),
341
+ // TODO(wittjosiah): Should be Schema.Union(Type.Obj, Type.Relation).
342
+ objects: Schema.Array(ReactiveObjectSchema),
343
+ target: Schema.optional(Collection.Collection),
324
344
  deletionData: Schema.optional(DeletionData),
325
345
  }),
326
346
  output: Schema.Void,
@@ -337,7 +357,7 @@ export namespace SpaceAction {
337
357
  export class DuplicateObject extends Schema.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {
338
358
  input: Schema.Struct({
339
359
  object: EchoObjectSchema,
340
- target: Schema.Union(SpaceSchema, DataType.Collection),
360
+ target: Schema.Union(SpaceSchema, Collection.Collection),
341
361
  }),
342
362
  output: Schema.Void,
343
363
  }) {}
@@ -356,17 +376,15 @@ export namespace CollectionAction {
356
376
  name: Schema.optional(Schema.String),
357
377
  }),
358
378
  output: Schema.Struct({
359
- object: DataType.Collection,
379
+ object: Collection.Collection,
360
380
  }),
361
381
  }) {}
362
382
 
363
383
  export const QueryCollectionForm = Schema.Struct({
364
384
  name: Schema.optional(Schema.String),
365
- typename: Schema.optional(
366
- Schema.String.annotations({
367
- [TypenameAnnotationId]: ['object-form'],
368
- }),
369
- ),
385
+ typename: Schema.String.annotations({
386
+ [TypenameAnnotationId]: ['object-form'],
387
+ }),
370
388
  });
371
389
 
372
390
  export class CreateQueryCollection extends Schema.TaggedClass<CreateQueryCollection>()(
@@ -374,7 +392,8 @@ export namespace CollectionAction {
374
392
  {
375
393
  input: QueryCollectionForm,
376
394
  output: Schema.Struct({
377
- object: DataType.QueryCollection,
395
+ // TODO(wittjosiah): Remove cast.
396
+ object: EchoObjectSchema, // Collection.QueryCollection,
378
397
  }),
379
398
  },
380
399
  ) {}