@dxos/plugin-space 0.8.4-main.67995b8 → 0.8.4-main.a4bbb77

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 (263) hide show
  1. package/dist/lib/browser/{CollectionMain-D2B75XBS.mjs → CollectionMain-AX7KKXWP.mjs} +4 -4
  2. package/dist/lib/browser/CollectionMain-AX7KKXWP.mjs.map +7 -0
  3. package/dist/lib/browser/{ObjectDetailsPanel-YPTDQKMG.mjs → ObjectDetailsPanel-ETI5YBTH.mjs} +10 -8
  4. package/dist/lib/browser/ObjectDetailsPanel-ETI5YBTH.mjs.map +7 -0
  5. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +68 -0
  6. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-builder-V3MP3CDK.mjs → app-graph-builder-W7RVDAUA.mjs} +80 -43
  8. package/dist/lib/browser/app-graph-builder-W7RVDAUA.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-serializer-H6AW7KGS.mjs → app-graph-serializer-VLHVTDX4.mjs} +14 -14
  10. package/dist/lib/browser/app-graph-serializer-VLHVTDX4.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-FBJEXW54.mjs → chunk-2BFVC5K6.mjs} +139 -150
  12. package/dist/lib/browser/chunk-2BFVC5K6.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-E2I747A7.mjs +20 -0
  14. package/dist/lib/browser/chunk-E2I747A7.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-EIXZABXD.mjs +19 -0
  16. package/dist/lib/browser/chunk-EIXZABXD.mjs.map +7 -0
  17. package/dist/lib/browser/{chunk-VLBRSGJ2.mjs → chunk-ELJDGQTO.mjs} +3 -3
  18. package/dist/lib/browser/{chunk-VLBRSGJ2.mjs.map → chunk-ELJDGQTO.mjs.map} +3 -3
  19. package/dist/lib/browser/chunk-IRKDREHY.mjs +11 -0
  20. package/dist/lib/browser/chunk-IRKDREHY.mjs.map +7 -0
  21. package/dist/lib/browser/{chunk-SGTQ52SU.mjs → chunk-JCHSUOPF.mjs} +14 -8
  22. package/dist/lib/browser/chunk-JCHSUOPF.mjs.map +7 -0
  23. package/dist/lib/browser/{chunk-XUYKJUU7.mjs → chunk-PN27K4I7.mjs} +93 -41
  24. package/dist/lib/browser/chunk-PN27K4I7.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-QACNNDOT.mjs → chunk-ZIZ2JLW6.mjs} +10 -9
  26. package/dist/lib/browser/chunk-ZIZ2JLW6.mjs.map +7 -0
  27. package/dist/lib/browser/{identity-created-23XJJV2N.mjs → identity-created-PW2BA46S.mjs} +4 -4
  28. package/dist/lib/browser/{identity-created-23XJJV2N.mjs.map → identity-created-PW2BA46S.mjs.map} +3 -3
  29. package/dist/lib/browser/index.mjs +19 -39
  30. package/dist/lib/browser/index.mjs.map +3 -3
  31. package/dist/lib/browser/{intent-resolver-XHGD73WZ.mjs → intent-resolver-HA7DPAUE.mjs} +46 -41
  32. package/dist/lib/browser/intent-resolver-HA7DPAUE.mjs.map +7 -0
  33. package/dist/lib/browser/meta.json +1 -1
  34. package/dist/lib/browser/{react-root-CMWOGJG5.mjs → react-root-YQUJU64P.mjs} +11 -11
  35. package/dist/lib/browser/react-root-YQUJU64P.mjs.map +7 -0
  36. package/dist/lib/browser/{react-surface-YWZZQF7H.mjs → react-surface-HTXYMRSW.mjs} +50 -40
  37. package/dist/lib/browser/react-surface-HTXYMRSW.mjs.map +7 -0
  38. package/dist/lib/browser/{schema-defs-Z6FC4AHC.mjs → schema-defs-R56ZDBZ7.mjs} +5 -5
  39. package/dist/lib/browser/schema-defs-R56ZDBZ7.mjs.map +7 -0
  40. package/dist/lib/browser/{settings-4IMP5RYT.mjs → settings-5XPQMSPO.mjs} +5 -5
  41. package/dist/lib/browser/{settings-4IMP5RYT.mjs.map → settings-5XPQMSPO.mjs.map} +1 -1
  42. package/dist/lib/browser/{spaces-ready-TOPG6IV4.mjs → spaces-ready-YY77ANIF.mjs} +17 -15
  43. package/dist/lib/browser/spaces-ready-YY77ANIF.mjs.map +7 -0
  44. package/dist/lib/browser/{state-QYZAB45H.mjs → state-Y4RVCG4A.mjs} +7 -7
  45. package/dist/lib/browser/state-Y4RVCG4A.mjs.map +7 -0
  46. package/dist/lib/browser/types/index.mjs +2 -2
  47. package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionMain-EU57SRYK.mjs} +4 -4
  48. package/dist/lib/node-esm/CollectionMain-EU57SRYK.mjs.map +7 -0
  49. package/dist/lib/node-esm/{ObjectDetailsPanel-QKZEDSZK.mjs → ObjectDetailsPanel-TQ5GN4QJ.mjs} +10 -8
  50. package/dist/lib/node-esm/ObjectDetailsPanel-TQ5GN4QJ.mjs.map +7 -0
  51. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +70 -0
  52. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +7 -0
  53. package/dist/lib/node-esm/{app-graph-builder-SG4VECBB.mjs → app-graph-builder-5ZJJUMQI.mjs} +80 -43
  54. package/dist/lib/node-esm/app-graph-builder-5ZJJUMQI.mjs.map +7 -0
  55. package/dist/lib/node-esm/{app-graph-serializer-2ICUGQQT.mjs → app-graph-serializer-EZJSGJUT.mjs} +14 -14
  56. package/dist/lib/node-esm/app-graph-serializer-EZJSGJUT.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-P442DOQ3.mjs → chunk-5XRYHWL7.mjs} +10 -9
  58. package/dist/lib/node-esm/chunk-5XRYHWL7.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-JH6F4C3I.mjs → chunk-6WNZW6KT.mjs} +14 -8
  60. package/dist/lib/node-esm/chunk-6WNZW6KT.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-2A3VBXBP.mjs → chunk-BLPXWPLB.mjs} +139 -150
  62. package/dist/lib/node-esm/chunk-BLPXWPLB.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-IJVBBVCL.mjs +21 -0
  64. package/dist/lib/node-esm/chunk-IJVBBVCL.mjs.map +7 -0
  65. package/dist/lib/node-esm/{chunk-HWNG4MEU.mjs → chunk-MWNATOXL.mjs} +2 -4
  66. package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +7 -0
  67. package/dist/lib/node-esm/{chunk-SSLBYZEY.mjs → chunk-Q6AAQLQG.mjs} +3 -3
  68. package/dist/lib/node-esm/{chunk-SSLBYZEY.mjs.map → chunk-Q6AAQLQG.mjs.map} +3 -3
  69. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs +20 -0
  70. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-4AOMYKDE.mjs → chunk-XDQXUZMK.mjs} +93 -41
  72. package/dist/lib/node-esm/chunk-XDQXUZMK.mjs.map +7 -0
  73. package/dist/lib/node-esm/{identity-created-IJQO6GCR.mjs → identity-created-MWTLGQRU.mjs} +4 -4
  74. package/dist/lib/node-esm/{identity-created-IJQO6GCR.mjs.map → identity-created-MWTLGQRU.mjs.map} +3 -3
  75. package/dist/lib/node-esm/index.mjs +19 -39
  76. package/dist/lib/node-esm/index.mjs.map +3 -3
  77. package/dist/lib/node-esm/{intent-resolver-LEANKSKZ.mjs → intent-resolver-LQNHMPIX.mjs} +46 -41
  78. package/dist/lib/node-esm/intent-resolver-LQNHMPIX.mjs.map +7 -0
  79. package/dist/lib/node-esm/meta.json +1 -1
  80. package/dist/lib/node-esm/{react-root-5Y7LJRX6.mjs → react-root-UTLJEIKE.mjs} +11 -11
  81. package/dist/lib/node-esm/react-root-UTLJEIKE.mjs.map +7 -0
  82. package/dist/lib/node-esm/{react-surface-YQFNIKYT.mjs → react-surface-LYDYON3U.mjs} +50 -40
  83. package/dist/lib/node-esm/react-surface-LYDYON3U.mjs.map +7 -0
  84. package/dist/lib/node-esm/{schema-defs-WHJM7UZE.mjs → schema-defs-7IMJPIWS.mjs} +5 -5
  85. package/dist/lib/node-esm/schema-defs-7IMJPIWS.mjs.map +7 -0
  86. package/dist/lib/node-esm/{settings-SAOBPND3.mjs → settings-XBSK5KHH.mjs} +5 -5
  87. package/dist/lib/node-esm/{settings-SAOBPND3.mjs.map → settings-XBSK5KHH.mjs.map} +1 -1
  88. package/dist/lib/node-esm/{spaces-ready-HIUKNDZK.mjs → spaces-ready-YX4IHT4P.mjs} +17 -15
  89. package/dist/lib/node-esm/spaces-ready-YX4IHT4P.mjs.map +7 -0
  90. package/dist/lib/node-esm/{state-ZVEHQ4BJ.mjs → state-HOHAVPUO.mjs} +7 -7
  91. package/dist/lib/node-esm/state-HOHAVPUO.mjs.map +7 -0
  92. package/dist/lib/node-esm/types/index.mjs +2 -2
  93. package/dist/types/src/SpacePlugin.d.ts +1 -1
  94. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  96. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  98. package/dist/types/src/capabilities/capabilities.d.ts +3 -3
  99. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/identity-created.d.ts +1 -1
  101. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/index.d.ts +11 -12
  103. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  105. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/react-root.d.ts +2 -2
  107. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  109. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/schema-defs.d.ts +1 -1
  111. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/settings.d.ts +1 -1
  113. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  114. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  115. package/dist/types/src/capabilities/state.d.ts +1 -1
  116. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  117. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -3
  118. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  119. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1584 -4
  120. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  121. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +5 -3
  122. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  123. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
  124. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  125. package/dist/types/src/components/JoinDialog.d.ts +1 -1
  126. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  127. package/dist/types/src/components/MembersContainer.d.ts +3 -2
  128. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  129. package/dist/types/src/components/MembersContainer.stories.d.ts +1584 -5
  130. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  131. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +1 -1
  132. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  133. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  134. package/dist/types/src/components/PopoverRenameObject.d.ts +2 -2
  135. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  136. package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -1
  137. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
  138. package/dist/types/src/components/RecordMain.d.ts +7 -0
  139. package/dist/types/src/components/RecordMain.d.ts.map +1 -0
  140. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  141. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  142. package/dist/types/src/components/SpacePresence.stories.d.ts +1412 -4
  143. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  144. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  145. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1417 -4
  146. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  147. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  148. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1418 -5
  149. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  150. package/dist/types/src/components/ViewEditor.d.ts +1 -1
  151. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  152. package/dist/types/src/components/index.d.ts +8 -2
  153. package/dist/types/src/components/index.d.ts.map +1 -1
  154. package/dist/types/src/events.d.ts.map +1 -1
  155. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  156. package/dist/types/src/meta.d.ts +0 -1
  157. package/dist/types/src/meta.d.ts.map +1 -1
  158. package/dist/types/src/translations.d.ts +1216 -26
  159. package/dist/types/src/translations.d.ts.map +1 -1
  160. package/dist/types/src/types/types.d.ts +73 -93
  161. package/dist/types/src/types/types.d.ts.map +1 -1
  162. package/dist/types/src/util.d.ts +8 -6
  163. package/dist/types/src/util.d.ts.map +1 -1
  164. package/dist/types/tsconfig.tsbuildinfo +1 -1
  165. package/package.json +63 -62
  166. package/src/SpacePlugin.ts +203 -218
  167. package/src/capabilities/app-graph-builder.ts +100 -53
  168. package/src/capabilities/app-graph-serializer.ts +7 -7
  169. package/src/capabilities/capabilities.ts +11 -10
  170. package/src/capabilities/identity-created.ts +1 -1
  171. package/src/capabilities/index.ts +0 -1
  172. package/src/capabilities/intent-resolver.ts +36 -24
  173. package/src/capabilities/react-root.tsx +4 -3
  174. package/src/capabilities/react-surface.tsx +45 -36
  175. package/src/capabilities/schema-defs.ts +3 -2
  176. package/src/capabilities/spaces-ready.ts +10 -7
  177. package/src/capabilities/state.ts +5 -4
  178. package/src/components/AwaitingObject.tsx +3 -3
  179. package/src/components/CollectionMain.tsx +2 -2
  180. package/src/components/CollectionSection.tsx +2 -2
  181. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +11 -10
  182. package/src/components/CreateDialog/CreateObjectDialog.tsx +21 -11
  183. package/src/components/CreateDialog/CreateObjectPanel.tsx +22 -11
  184. package/src/components/CreateDialog/CreateSpaceDialog.tsx +4 -4
  185. package/src/components/JoinDialog.tsx +7 -7
  186. package/src/components/MembersContainer.stories.tsx +36 -10
  187. package/src/components/MembersContainer.tsx +12 -13
  188. package/src/components/MenuFooter.tsx +2 -2
  189. package/src/components/ObjectDetailsPanel.tsx +6 -4
  190. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +3 -2
  191. package/src/components/ObjectSettings/ForeignKeys.tsx +2 -2
  192. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +3 -2
  193. package/src/components/PersistenceStatus.tsx +2 -2
  194. package/src/components/PopoverRenameObject.tsx +9 -15
  195. package/src/components/PopoverRenameSpace.tsx +4 -4
  196. package/src/components/RecordMain.tsx +43 -0
  197. package/src/components/SchemaContainer.tsx +4 -4
  198. package/src/components/SpacePluginSettings.tsx +8 -9
  199. package/src/components/SpacePresence.stories.tsx +23 -22
  200. package/src/components/SpacePresence.tsx +9 -9
  201. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +17 -9
  202. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +17 -17
  203. package/src/components/SyncStatus/InlineSyncStatus.tsx +2 -2
  204. package/src/components/SyncStatus/SyncStatus.stories.tsx +6 -7
  205. package/src/components/SyncStatus/SyncStatus.tsx +4 -3
  206. package/src/components/ViewEditor.tsx +13 -18
  207. package/src/components/index.ts +1 -0
  208. package/src/events.ts +7 -7
  209. package/src/hooks/useActiveSpace.ts +2 -2
  210. package/src/hooks/useInputSurfaceLookup.tsx +1 -1
  211. package/src/meta.ts +1 -3
  212. package/src/translations.ts +8 -7
  213. package/src/types/types.ts +15 -10
  214. package/src/util.tsx +86 -37
  215. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  216. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs.map +0 -7
  217. package/dist/lib/browser/app-graph-builder-V3MP3CDK.mjs.map +0 -7
  218. package/dist/lib/browser/app-graph-serializer-H6AW7KGS.mjs.map +0 -7
  219. package/dist/lib/browser/chunk-CEFHNVU7.mjs +0 -20
  220. package/dist/lib/browser/chunk-CEFHNVU7.mjs.map +0 -7
  221. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  222. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  223. package/dist/lib/browser/chunk-FBJEXW54.mjs.map +0 -7
  224. package/dist/lib/browser/chunk-JS3MMC42.mjs +0 -19
  225. package/dist/lib/browser/chunk-JS3MMC42.mjs.map +0 -7
  226. package/dist/lib/browser/chunk-QACNNDOT.mjs.map +0 -7
  227. package/dist/lib/browser/chunk-SGTQ52SU.mjs.map +0 -7
  228. package/dist/lib/browser/chunk-XUYKJUU7.mjs.map +0 -7
  229. package/dist/lib/browser/intent-resolver-XHGD73WZ.mjs.map +0 -7
  230. package/dist/lib/browser/react-root-CMWOGJG5.mjs.map +0 -7
  231. package/dist/lib/browser/react-surface-YWZZQF7H.mjs.map +0 -7
  232. package/dist/lib/browser/schema-defs-Z6FC4AHC.mjs.map +0 -7
  233. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs +0 -124
  234. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs.map +0 -7
  235. package/dist/lib/browser/spaces-ready-TOPG6IV4.mjs.map +0 -7
  236. package/dist/lib/browser/state-QYZAB45H.mjs.map +0 -7
  237. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  238. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs.map +0 -7
  239. package/dist/lib/node-esm/app-graph-builder-SG4VECBB.mjs.map +0 -7
  240. package/dist/lib/node-esm/app-graph-serializer-2ICUGQQT.mjs.map +0 -7
  241. package/dist/lib/node-esm/chunk-2A3VBXBP.mjs.map +0 -7
  242. package/dist/lib/node-esm/chunk-4AOMYKDE.mjs.map +0 -7
  243. package/dist/lib/node-esm/chunk-5HHYE264.mjs +0 -20
  244. package/dist/lib/node-esm/chunk-5HHYE264.mjs.map +0 -7
  245. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs +0 -21
  246. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs.map +0 -7
  247. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  248. package/dist/lib/node-esm/chunk-JH6F4C3I.mjs.map +0 -7
  249. package/dist/lib/node-esm/chunk-P442DOQ3.mjs.map +0 -7
  250. package/dist/lib/node-esm/intent-resolver-LEANKSKZ.mjs.map +0 -7
  251. package/dist/lib/node-esm/react-root-5Y7LJRX6.mjs.map +0 -7
  252. package/dist/lib/node-esm/react-surface-YQFNIKYT.mjs.map +0 -7
  253. package/dist/lib/node-esm/schema-defs-WHJM7UZE.mjs.map +0 -7
  254. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs +0 -126
  255. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs.map +0 -7
  256. package/dist/lib/node-esm/spaces-ready-HIUKNDZK.mjs.map +0 -7
  257. package/dist/lib/node-esm/state-ZVEHQ4BJ.mjs.map +0 -7
  258. package/dist/types/src/capabilities/schema-tool.test.d.ts +0 -2
  259. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +0 -1
  260. package/dist/types/src/capabilities/schema-tools.d.ts +0 -13
  261. package/dist/types/src/capabilities/schema-tools.d.ts.map +0 -1
  262. package/src/capabilities/schema-tool.test.ts +0 -44
  263. package/src/capabilities/schema-tools.ts +0 -125
@@ -1,6 +1,6 @@
1
1
  import {
2
- SPACE_PLUGIN
3
- } from "./chunk-FBCGT5YY.mjs";
2
+ meta
3
+ } from "./chunk-IRKDREHY.mjs";
4
4
 
5
5
  // src/types/types.ts
6
6
  import { Schema } from "effect";
@@ -9,7 +9,7 @@ import { EchoSchema, StoredSchema } from "@dxos/echo-schema";
9
9
  import { EchoObjectSchema, ReactiveObjectSchema, SpaceSchema } from "@dxos/react-client/echo";
10
10
  import { CancellableInvitationObservable, Invitation } from "@dxos/react-client/invitations";
11
11
  import { DataType, FieldSchema, TypenameAnnotationId } from "@dxos/schema";
12
- var SPACE_DIRECTORY_HANDLE = "dxos.org/plugin/space/directory";
12
+ var SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;
13
13
  var SPACE_TYPE = "dxos.org/type/Space";
14
14
  var SpaceSettingsSchema = Schema.mutable(Schema.Struct({
15
15
  /**
@@ -37,7 +37,7 @@ var SpaceForm = Schema.Struct({
37
37
  })
38
38
  });
39
39
  var defineObjectForm = (form) => form;
40
- var SPACE_ACTION = `${SPACE_PLUGIN}/action`;
40
+ var SPACE_ACTION = `${meta.id}/action`;
41
41
  (function(SpaceAction2) {
42
42
  class OpenCreateSpace extends Schema.TaggedClass()(`${SPACE_ACTION}/open-create-space`, {
43
43
  input: Schema.Void,
@@ -173,6 +173,9 @@ var SPACE_ACTION = `${SPACE_PLUGIN}/action`;
173
173
  input: Schema.Struct({
174
174
  space: SpaceSchema,
175
175
  name: Schema.optional(Schema.String),
176
+ typename: Schema.optional(Schema.String),
177
+ // TODO(wittjosiah): Semantic version format.
178
+ version: Schema.optional(Schema.String),
176
179
  // TODO(wittjosiah): Schema for schema?
177
180
  schema: Schema.Any
178
181
  }),
@@ -205,7 +208,9 @@ var SPACE_ACTION = `${SPACE_PLUGIN}/action`;
205
208
  class OpenCreateObject extends Schema.TaggedClass()(`${SPACE_ACTION}/open-create-object`, {
206
209
  input: Schema.Struct({
207
210
  target: Schema.Union(SpaceSchema, DataType.Collection),
211
+ views: Schema.optional(Schema.Boolean),
208
212
  typename: Schema.optional(Schema.String),
213
+ initialFormValues: Schema.optional(Schema.Any),
209
214
  navigable: Schema.optional(Schema.Boolean),
210
215
  // TODO(wittjosiah): This is a function, is there a better way to handle this?
211
216
  onCreateObject: Schema.optional(Schema.Any)
@@ -305,16 +310,17 @@ var SPACE_ACTION = `${SPACE_PLUGIN}/action`;
305
310
  CollectionAction2.Create = Create;
306
311
  CollectionAction2.QueryCollectionForm = Schema.Struct({
307
312
  name: Schema.optional(Schema.String),
308
- typename: Schema.optional(Schema.String.annotations({
313
+ typename: Schema.String.annotations({
309
314
  [TypenameAnnotationId]: [
310
315
  "object-form"
311
316
  ]
312
- }))
317
+ })
313
318
  });
314
319
  class CreateQueryCollection extends Schema.TaggedClass()("dxos.org/plugin/collection/action/create-query-collection", {
315
320
  input: CollectionAction2.QueryCollectionForm,
316
321
  output: Schema.Struct({
317
- object: DataType.QueryCollection
322
+ // TODO(wittjosiah): Remove cast.
323
+ object: EchoObjectSchema
318
324
  })
319
325
  }) {
320
326
  }
@@ -335,4 +341,4 @@ export {
335
341
  SpaceAction,
336
342
  CollectionAction
337
343
  };
338
- //# sourceMappingURL=chunk-SGTQ52SU.mjs.map
344
+ //# sourceMappingURL=chunk-JCHSUOPF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/types.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { type AnyIntentChain } from '@dxos/app-framework';\nimport { type Obj, Type } from '@dxos/echo';\nimport { type BaseObject, EchoSchema, StoredSchema, type TypedObject } from '@dxos/echo-schema';\nimport { type PublicKey } from '@dxos/react-client';\n// TODO(wittjosiah): This pulls in full client.\nimport { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { CancellableInvitationObservable, Invitation } from '@dxos/react-client/invitations';\nimport { DataType, FieldSchema, TypenameAnnotationId } from '@dxos/schema';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { meta } from '../meta';\n\nexport const SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;\n\nexport const SPACE_TYPE = 'dxos.org/type/Space';\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport const SpaceSettingsSchema = Schema.mutable(\n Schema.Struct({\n /**\n * Show closed spaces.\n */\n showHidden: Schema.Boolean,\n }),\n);\n\nexport type SpaceSettingsProps = Schema.Schema.Type<typeof SpaceSettingsSchema>;\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Obj.Any = Type.Expando> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; space: Space; newId?: boolean }): Promise<T>;\n}\n\n// TODO(burdon): Move to FormatEnum or SDK.\nexport const IconAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Icon');\nexport const HueAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Hue');\n\nexport const SpaceForm = Schema.Struct({\n name: Schema.optional(Schema.String.annotations({ title: 'Name' })),\n icon: Schema.optional(Schema.String.annotations({ title: 'Icon', [IconAnnotationId]: true })),\n hue: Schema.optional(Schema.String.annotations({ title: 'Color', [HueAnnotationId]: true })),\n // TODO(wittjosiah): Make optional with default value.\n edgeReplication: Schema.Boolean.annotations({ title: 'Enable EDGE Replication' }),\n});\n\nexport type ObjectForm<T extends BaseObject = BaseObject> = {\n // TODO(dmaretskyi): Change to Schema.Schema.AnyNoContext\n objectSchema: TypedObject;\n formSchema?: Schema.Schema<T, any>;\n hidden?: boolean;\n getIntent: (props: T, options: { space: Space }) => AnyIntentChain;\n};\n\nexport const defineObjectForm = <T extends BaseObject>(form: ObjectForm<T>) => form;\n\nexport const SPACE_ACTION = `${meta.id}/action`;\n\nexport namespace SpaceAction {\n export class OpenCreateSpace extends Schema.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {\n input: Schema.Void,\n output: Schema.Void,\n }) {}\n\n export class Create extends Schema.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {\n input: SpaceForm,\n output: Schema.Struct({\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n space: SpaceSchema,\n }),\n }) {}\n\n export class Join extends Schema.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {\n input: Schema.Struct({\n invitationCode: Schema.optional(Schema.String),\n onDone: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n }) {}\n\n export class OpenMembers extends Schema.TaggedClass<OpenMembers>()(`${SPACE_ACTION}/open-members`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Share extends Schema.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {\n input: Schema.Struct({\n space: SpaceSchema,\n type: Schema.Enums(Invitation.Type),\n authMethod: Schema.Enums(Invitation.AuthMethod),\n multiUse: Schema.Boolean,\n target: Schema.optional(Schema.String),\n }),\n output: Schema.instanceOf(CancellableInvitationObservable),\n }) {}\n\n export class GetShareLink extends Schema.TaggedClass<GetShareLink>()(`${SPACE_ACTION}/get-share-link`, {\n input: Schema.Struct({\n space: SpaceSchema,\n target: Schema.optional(Schema.String),\n copyToClipboard: Schema.optional(Schema.Boolean),\n }),\n output: Schema.String,\n }) {}\n\n export class Lock extends Schema.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Unlock extends Schema.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Rename extends Schema.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {\n input: Schema.Struct({\n space: SpaceSchema,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n // TODO(wittjosiah): Handle scrolling to section.\n // This maybe motivates making the space settings its own deck?\n export class OpenSettings extends Schema.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {\n input: Schema.Struct({ space: SpaceSchema }),\n output: Schema.Void,\n }) {}\n\n export class Open extends Schema.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Close extends Schema.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n }) {}\n\n export class Migrate extends Schema.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {\n input: Schema.Struct({\n space: SpaceSchema,\n version: Schema.optional(Schema.String),\n }),\n output: Schema.Boolean,\n }) {}\n\n export const StoredSchemaForm = Schema.Struct({\n name: Schema.optional(Schema.String),\n typename: Schema.optional(\n Schema.String.annotations({\n [TypenameAnnotationId]: ['unused-static'],\n }),\n ),\n });\n\n export class UseStaticSchema extends Schema.TaggedClass<UseStaticSchema>()(`${SPACE_ACTION}/use-static-schema`, {\n input: Schema.Struct({\n space: SpaceSchema,\n typename: Schema.String,\n }),\n output: Schema.Struct({}),\n }) {}\n\n export class AddSchema extends Schema.TaggedClass<AddSchema>()(`${SPACE_ACTION}/add-schema`, {\n input: Schema.Struct({\n space: SpaceSchema,\n name: Schema.optional(Schema.String),\n typename: Schema.optional(Schema.String),\n // TODO(wittjosiah): Semantic version format.\n version: Schema.optional(Schema.String),\n // TODO(wittjosiah): Schema for schema?\n schema: Schema.Any,\n }),\n output: Schema.Struct({\n // TODO(wittjosiah): ObjectId.\n id: Schema.String,\n object: StoredSchema,\n schema: Schema.instanceOf(EchoSchema),\n }),\n }) {}\n\n export class DeleteField extends Schema.TaggedClass<DeleteField>()(`${SPACE_ACTION}/delete-field`, {\n input: Schema.Struct({\n view: DataType.View,\n fieldId: Schema.String,\n // TODO(wittjosiah): Separate fields for undo data?\n deletionData: Schema.optional(\n Schema.Struct({\n field: FieldSchema,\n // TODO(wittjosiah): This creates a type error.\n // props: PropertySchema,\n props: Schema.Any,\n index: Schema.Number,\n }),\n ),\n }),\n output: Schema.Void,\n }) {}\n\n export class OpenCreateObject extends Schema.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {\n input: Schema.Struct({\n target: Schema.Union(SpaceSchema, DataType.Collection),\n views: Schema.optional(Schema.Boolean),\n typename: Schema.optional(Schema.String),\n initialFormValues: Schema.optional(Schema.Any),\n navigable: Schema.optional(Schema.Boolean),\n // TODO(wittjosiah): This is a function, is there a better way to handle this?\n onCreateObject: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n }) {}\n\n export class AddObject extends Schema.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {\n input: Schema.Struct({\n object: ReactiveObjectSchema,\n target: Schema.Union(SpaceSchema, DataType.Collection),\n hidden: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n // TODO(wittjosiah): ObjectId.\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n object: EchoObjectSchema,\n }),\n }) {}\n\n export class AddRelation extends Schema.TaggedClass<AddRelation>()(`${SPACE_ACTION}/add-relation`, {\n input: Schema.Struct({\n space: SpaceSchema,\n // TODO(wittjosiah): Relation schema.\n schema: Schema.Any,\n source: Type.Expando,\n target: Type.Expando,\n // TODO(wittjosiah): Type based on relation schema.\n fields: Schema.optional(Schema.Record({ key: Schema.String, value: Schema.Any })),\n }),\n output: Schema.Struct({\n relation: Schema.Any,\n }),\n }) {}\n\n export const DeletionData = Schema.Struct({\n objects: Schema.Array(EchoObjectSchema),\n parentCollection: DataType.Collection,\n indices: Schema.Array(Schema.Number),\n nestedObjectsList: Schema.Array(Schema.Array(EchoObjectSchema)),\n wasActive: Schema.Array(Schema.String),\n });\n\n export type DeletionData = Schema.Schema.Type<typeof DeletionData>;\n\n export class RemoveObjects extends Schema.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {\n input: Schema.Struct({\n objects: Schema.Array(EchoObjectSchema),\n target: Schema.optional(DataType.Collection),\n deletionData: Schema.optional(DeletionData),\n }),\n output: Schema.Void,\n }) {}\n\n export class RenameObject extends Schema.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {\n input: Schema.Struct({\n object: EchoObjectSchema,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n export class DuplicateObject extends Schema.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {\n input: Schema.Struct({\n object: EchoObjectSchema,\n target: Schema.Union(SpaceSchema, DataType.Collection),\n }),\n output: Schema.Void,\n }) {}\n\n export class WaitForObject extends Schema.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {\n input: Schema.Struct({\n id: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n}\n\nexport namespace CollectionAction {\n export class Create extends Schema.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: DataType.Collection,\n }),\n }) {}\n\n export const QueryCollectionForm = Schema.Struct({\n name: Schema.optional(Schema.String),\n typename: Schema.String.annotations({\n [TypenameAnnotationId]: ['object-form'],\n }),\n });\n\n export class CreateQueryCollection extends Schema.TaggedClass<CreateQueryCollection>()(\n 'dxos.org/plugin/collection/action/create-query-collection',\n {\n input: QueryCollectionForm,\n output: Schema.Struct({\n // TODO(wittjosiah): Remove cast.\n object: EchoObjectSchema, // DataType.QueryCollection,\n }),\n },\n ) {}\n}\n"],
5
+ "mappings": ";;;;;AAIA,SAASA,cAAc;AAGvB,SAAmBC,YAAY;AAC/B,SAA0BC,YAAYC,oBAAsC;AAG5E,SAASC,kBAAkBC,sBAAkCC,mBAAmB;AAChF,SAASC,iCAAiCC,kBAAkB;AAC5D,SAASC,UAAUC,aAAaC,4BAA4B;AAKrD,IAAMC,yBAAyB,GAAGC,KAAKC,EAAE;AAEzC,IAAMC,aAAa;AAiDnB,IAAMC,sBAAsBC,OAAOC,QACxCD,OAAOE,OAAO;;;;EAIZC,YAAYH,OAAOI;AACrB,CAAA,CAAA;AAqBK,IAAMC,mBAAmBC,OAAOC,IAAI,oCAAA;AACpC,IAAMC,kBAAkBF,OAAOC,IAAI,mCAAA;AAEnC,IAAME,YAAYT,OAAOE,OAAO;EACrCQ,MAAMV,OAAOW,SAASX,OAAOY,OAAOC,YAAY;IAAEC,OAAO;EAAO,CAAA,CAAA;EAChEC,MAAMf,OAAOW,SAASX,OAAOY,OAAOC,YAAY;IAAEC,OAAO;IAAQ,CAACT,gBAAAA,GAAmB;EAAK,CAAA,CAAA;EAC1FW,KAAKhB,OAAOW,SAASX,OAAOY,OAAOC,YAAY;IAAEC,OAAO;IAAS,CAACN,eAAAA,GAAkB;EAAK,CAAA,CAAA;;EAEzFS,iBAAiBjB,OAAOI,QAAQS,YAAY;IAAEC,OAAO;EAA0B,CAAA;AACjF,CAAA;AAUO,IAAMI,mBAAmB,CAAuBC,SAAwBA;AAExE,IAAMC,eAAe,GAAGxB,KAAKC,EAAE;UAErBwB,cAAAA;EACR,MAAMC,wBAAwBtB,OAAOuB,YAAW,EAAoB,GAAGH,YAAAA,sBAAkC;IAC9GI,OAAOxB,OAAOyB;IACdC,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eAHSH,kBAAAA;EAKN,MAAMK,eAAe3B,OAAOuB,YAAW,EAAW,GAAGH,YAAAA,WAAuB;IACjFI,OAAOf;IACPiB,QAAQ1B,OAAOE,OAAO;MACpBL,IAAIG,OAAOY;MACXgB,SAAS5B,OAAO6B,MAAM7B,OAAOY,MAAM;MACnCkB,OAAOC;IACT,CAAA;EACF,CAAA,EAAA;EAAI;eAPSJ,SAAAA;EASN,MAAMK,aAAahC,OAAOuB,YAAW,EAAS,GAAGH,YAAAA,SAAqB;IAC3EI,OAAOxB,OAAOE,OAAO;MACnB+B,gBAAgBjC,OAAOW,SAASX,OAAOY,MAAM;MAC7CsB,QAAQlC,OAAOW,SAASX,OAAOmC,GAAG;IACpC,CAAA;IACAT,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eANSO,OAAAA;EAQN,MAAMI,oBAAoBpC,OAAOuB,YAAW,EAAgB,GAAGH,YAAAA,iBAA6B;IACjGI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;IACT,CAAA;IACAL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALSW,cAAAA;EAON,MAAMC,cAAcrC,OAAOuB,YAAW,EAAU,GAAGH,YAAAA,UAAsB;IAC9EI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACPO,MAAMtC,OAAOuC,MAAMC,WAAWC,IAAI;MAClCC,YAAY1C,OAAOuC,MAAMC,WAAWG,UAAU;MAC9CC,UAAU5C,OAAOI;MACjByC,QAAQ7C,OAAOW,SAASX,OAAOY,MAAM;IACvC,CAAA;IACAc,QAAQ1B,OAAO8C,WAAWC,+BAAAA;EAC5B,CAAA,EAAA;EAAI;eATSV,QAAAA;EAWN,MAAMW,qBAAqBhD,OAAOuB,YAAW,EAAiB,GAAGH,YAAAA,mBAA+B;IACrGI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACPc,QAAQ7C,OAAOW,SAASX,OAAOY,MAAM;MACrCqC,iBAAiBjD,OAAOW,SAASX,OAAOI,OAAO;IACjD,CAAA;IACAsB,QAAQ1B,OAAOY;EACjB,CAAA,EAAA;EAAI;eAPSoC,eAAAA;EASN,MAAME,aAAalD,OAAOuB,YAAW,EAAS,GAAGH,YAAAA,SAAqB;IAC3EI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;IACT,CAAA;IACAL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALSyB,OAAAA;EAON,MAAMC,eAAenD,OAAOuB,YAAW,EAAW,GAAGH,YAAAA,WAAuB;IACjFI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;IACT,CAAA;IACAL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALS0B,SAAAA;EAON,MAAMC,eAAepD,OAAOuB,YAAW,EAAW,GAAGH,YAAAA,WAAuB;IACjFI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACPsB,QAAQrD,OAAOW,SAASX,OAAOY,MAAM;IACvC,CAAA;IACAc,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eANS2B,SAAAA;EAUN,MAAME,qBAAqBtD,OAAOuB,YAAW,EAAiB,GAAGH,YAAAA,kBAA8B;IACpGI,OAAOxB,OAAOE,OAAO;MAAE4B,OAAOC;IAAY,CAAA;IAC1CL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eAHS6B,eAAAA;EAKN,MAAMC,aAAavD,OAAOuB,YAAW,EAAS,GAAGH,YAAAA,SAAqB;IAC3EI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;IACT,CAAA;IACAL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALS8B,OAAAA;EAON,MAAMC,cAAcxD,OAAOuB,YAAW,EAAU,GAAGH,YAAAA,UAAsB;IAC9EI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;IACT,CAAA;IACAL,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALS+B,QAAAA;EAON,MAAMC,gBAAgBzD,OAAOuB,YAAW,EAAY,GAAGH,YAAAA,YAAwB;IACpFI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACP2B,SAAS1D,OAAOW,SAASX,OAAOY,MAAM;IACxC,CAAA;IACAc,QAAQ1B,OAAOI;EACjB,CAAA,EAAA;EAAI;eANSqD,UAAAA;eAQAE,mBAAmB3D,OAAOE,OAAO;IAC5CQ,MAAMV,OAAOW,SAASX,OAAOY,MAAM;IACnCgD,UAAU5D,OAAOW,SACfX,OAAOY,OAAOC,YAAY;MACxB,CAACgD,oBAAAA,GAAuB;QAAC;;IAC3B,CAAA,CAAA;EAEJ,CAAA;EAEO,MAAMC,wBAAwB9D,OAAOuB,YAAW,EAAoB,GAAGH,YAAAA,sBAAkC;IAC9GI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACP6B,UAAU5D,OAAOY;IACnB,CAAA;IACAc,QAAQ1B,OAAOE,OAAO,CAAC,CAAA;EACzB,CAAA,EAAA;EAAI;eANS4D,kBAAAA;EAQN,MAAMC,kBAAkB/D,OAAOuB,YAAW,EAAc,GAAGH,YAAAA,eAA2B;IAC3FI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;MACPrB,MAAMV,OAAOW,SAASX,OAAOY,MAAM;MACnCgD,UAAU5D,OAAOW,SAASX,OAAOY,MAAM;;MAEvC8C,SAAS1D,OAAOW,SAASX,OAAOY,MAAM;;MAEtCoD,QAAQhE,OAAOmC;IACjB,CAAA;IACAT,QAAQ1B,OAAOE,OAAO;;MAEpBL,IAAIG,OAAOY;MACXqD,QAAQC;MACRF,QAAQhE,OAAO8C,WAAWqB,UAAAA;IAC5B,CAAA;EACF,CAAA,EAAA;EAAI;eAhBSJ,YAAAA;EAkBN,MAAMK,oBAAoBpE,OAAOuB,YAAW,EAAgB,GAAGH,YAAAA,iBAA6B;IACjGI,OAAOxB,OAAOE,OAAO;MACnBmE,MAAMC,SAASC;MACfC,SAASxE,OAAOY;;MAEhB6D,cAAczE,OAAOW,SACnBX,OAAOE,OAAO;QACZwE,OAAOC;;;QAGPC,OAAO5E,OAAOmC;QACd0C,OAAO7E,OAAO8E;MAChB,CAAA,CAAA;IAEJ,CAAA;IACApD,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eAhBS2C,cAAAA;EAkBN,MAAMW,yBAAyB/E,OAAOuB,YAAW,EAAqB,GAAGH,YAAAA,uBAAmC;IACjHI,OAAOxB,OAAOE,OAAO;MACnB2C,QAAQ7C,OAAOgF,MAAMjD,aAAauC,SAASW,UAAU;MACrDC,OAAOlF,OAAOW,SAASX,OAAOI,OAAO;MACrCwD,UAAU5D,OAAOW,SAASX,OAAOY,MAAM;MACvCuE,mBAAmBnF,OAAOW,SAASX,OAAOmC,GAAG;MAC7CiD,WAAWpF,OAAOW,SAASX,OAAOI,OAAO;;MAEzCiF,gBAAgBrF,OAAOW,SAASX,OAAOmC,GAAG;IAC5C,CAAA;IACAT,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eAXSsD,mBAAAA;EAaN,MAAMO,kBAAkBtF,OAAOuB,YAAW,EAAc,GAAGH,YAAAA,eAA2B;IAC3FI,OAAOxB,OAAOE,OAAO;MACnB+D,QAAQsB;MACR1C,QAAQ7C,OAAOgF,MAAMjD,aAAauC,SAASW,UAAU;MACrDO,QAAQxF,OAAOW,SAASX,OAAOI,OAAO;IACxC,CAAA;IACAsB,QAAQ1B,OAAOE,OAAO;;MAEpBL,IAAIG,OAAOY;MACXgB,SAAS5B,OAAO6B,MAAM7B,OAAOY,MAAM;MACnCqD,QAAQwB;IACV,CAAA;EACF,CAAA,EAAA;EAAI;eAZSH,YAAAA;EAcN,MAAMI,oBAAoB1F,OAAOuB,YAAW,EAAgB,GAAGH,YAAAA,iBAA6B;IACjGI,OAAOxB,OAAOE,OAAO;MACnB4B,OAAOC;;MAEPiC,QAAQhE,OAAOmC;MACfwD,QAAQlD,KAAKmD;MACb/C,QAAQJ,KAAKmD;;MAEbC,QAAQ7F,OAAOW,SAASX,OAAO8F,OAAO;QAAEC,KAAK/F,OAAOY;QAAQoF,OAAOhG,OAAOmC;MAAI,CAAA,CAAA;IAChF,CAAA;IACAT,QAAQ1B,OAAOE,OAAO;MACpB+F,UAAUjG,OAAOmC;IACnB,CAAA;EACF,CAAA,EAAA;EAAI;eAbSuD,cAAAA;eAeAQ,eAAelG,OAAOE,OAAO;IACxCiG,SAASnG,OAAO6B,MAAM4D,gBAAAA;IACtBW,kBAAkB9B,SAASW;IAC3BoB,SAASrG,OAAO6B,MAAM7B,OAAO8E,MAAM;IACnCwB,mBAAmBtG,OAAO6B,MAAM7B,OAAO6B,MAAM4D,gBAAAA,CAAAA;IAC7Cc,WAAWvG,OAAO6B,MAAM7B,OAAOY,MAAM;EACvC,CAAA;EAIO,MAAM4F,sBAAsBxG,OAAOuB,YAAW,EAAkB,GAAGH,YAAAA,mBAA+B;IACvGI,OAAOxB,OAAOE,OAAO;MACnBiG,SAASnG,OAAO6B,MAAM4D,gBAAAA;MACtB5C,QAAQ7C,OAAOW,SAAS2D,SAASW,UAAU;MAC3CR,cAAczE,OAAOW,SAAQU,aAAC6E,YAAAA;IAChC,CAAA;IACAxE,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eAPS+E,gBAAAA;EASN,MAAMC,qBAAqBzG,OAAOuB,YAAW,EAAiB,GAAGH,YAAAA,kBAA8B;IACpGI,OAAOxB,OAAOE,OAAO;MACnB+D,QAAQwB;MACRpC,QAAQrD,OAAOW,SAASX,OAAOY,MAAM;IACvC,CAAA;IACAc,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eANSgF,eAAAA;EAQN,MAAMC,wBAAwB1G,OAAOuB,YAAW,EAAoB,GAAGH,YAAAA,qBAAiC;IAC7GI,OAAOxB,OAAOE,OAAO;MACnB+D,QAAQwB;MACR5C,QAAQ7C,OAAOgF,MAAMjD,aAAauC,SAASW,UAAU;IACvD,CAAA;IACAvD,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eANSiF,kBAAAA;EAQN,MAAMC,sBAAsB3G,OAAOuB,YAAW,EAAkB,GAAGH,YAAAA,oBAAgC;IACxGI,OAAOxB,OAAOE,OAAO;MACnBL,IAAIG,OAAOW,SAASX,OAAOY,MAAM;IACnC,CAAA;IACAc,QAAQ1B,OAAOyB;EACjB,CAAA,EAAA;EAAI;eALSkF,gBAAAA;AAMf,GA7OiBtF,gBAAAA,cAAAA,CAAAA,EAAAA;UA+OAuF,mBAAAA;EACR,MAAMjF,eAAe3B,OAAOuB,YAAW,EAAW,4CAA4C;IACnGC,OAAOxB,OAAOE,OAAO;MACnBQ,MAAMV,OAAOW,SAASX,OAAOY,MAAM;IACrC,CAAA;IACAc,QAAQ1B,OAAOE,OAAO;MACpB+D,QAAQK,SAASW;IACnB,CAAA;EACF,CAAA,EAAA;EAAI;oBAPStD,SAAAA;oBASAkF,sBAAsB7G,OAAOE,OAAO;IAC/CQ,MAAMV,OAAOW,SAASX,OAAOY,MAAM;IACnCgD,UAAU5D,OAAOY,OAAOC,YAAY;MAClC,CAACgD,oBAAAA,GAAuB;QAAC;;IAC3B,CAAA;EACF,CAAA;EAEO,MAAMiD,8BAA8B9G,OAAOuB,YAAW,EAC3D,6DACA;IACEC,OAAKoF,kBAAEC;IACPnF,QAAQ1B,OAAOE,OAAO;;MAEpB+D,QAAQwB;IACV,CAAA;EACF,CAAA,EAAA;EACC;oBATUqB,wBAAAA;AAUf,GA3BiBF,qBAAAA,mBAAAA,CAAAA,EAAAA;;;",
6
+ "names": ["Schema", "Type", "EchoSchema", "StoredSchema", "EchoObjectSchema", "ReactiveObjectSchema", "SpaceSchema", "CancellableInvitationObservable", "Invitation", "DataType", "FieldSchema", "TypenameAnnotationId", "SPACE_DIRECTORY_HANDLE", "meta", "id", "SPACE_TYPE", "SpaceSettingsSchema", "Schema", "mutable", "Struct", "showHidden", "Boolean", "IconAnnotationId", "Symbol", "for", "HueAnnotationId", "SpaceForm", "name", "optional", "String", "annotations", "title", "icon", "hue", "edgeReplication", "defineObjectForm", "form", "SPACE_ACTION", "SpaceAction", "OpenCreateSpace", "TaggedClass", "input", "Void", "output", "Create", "subject", "Array", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Any", "OpenMembers", "Share", "type", "Enums", "Invitation", "Type", "authMethod", "AuthMethod", "multiUse", "target", "instanceOf", "CancellableInvitationObservable", "GetShareLink", "copyToClipboard", "Lock", "Unlock", "Rename", "caller", "OpenSettings", "Open", "Close", "Migrate", "version", "StoredSchemaForm", "typename", "TypenameAnnotationId", "UseStaticSchema", "AddSchema", "schema", "object", "StoredSchema", "EchoSchema", "DeleteField", "view", "DataType", "View", "fieldId", "deletionData", "field", "FieldSchema", "props", "index", "Number", "OpenCreateObject", "Union", "Collection", "views", "initialFormValues", "navigable", "onCreateObject", "AddObject", "ReactiveObjectSchema", "hidden", "EchoObjectSchema", "AddRelation", "source", "Expando", "fields", "Record", "key", "value", "relation", "DeletionData", "objects", "parentCollection", "indices", "nestedObjectsList", "wasActive", "RemoveObjects", "RenameObject", "DuplicateObject", "WaitForObject", "CollectionAction", "QueryCollectionForm", "CreateQueryCollection"]
7
+ }
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  SPACE_TYPE,
3
3
  SpaceAction
4
- } from "./chunk-SGTQ52SU.mjs";
4
+ } from "./chunk-JCHSUOPF.mjs";
5
5
  import {
6
- SPACE_PLUGIN
7
- } from "./chunk-FBCGT5YY.mjs";
6
+ meta
7
+ } from "./chunk-IRKDREHY.mjs";
8
8
 
9
9
  // src/util.tsx
10
10
  import { Rx } from "@effect-rx/rx-react";
11
11
  import { pipe } from "effect";
12
- import { chain, createIntent, LayoutAction } from "@dxos/app-framework";
12
+ import { LayoutAction, chain, createIntent } from "@dxos/app-framework";
13
13
  import { Obj, Ref, Type } from "@dxos/echo";
14
14
  import { EXPANDO_TYPENAME } from "@dxos/echo-schema";
15
15
  import { invariant } from "@dxos/invariant";
16
16
  import { Migrations } from "@dxos/migrations";
17
17
  import { ACTION_GROUP_TYPE, ACTION_TYPE, isGraphNode } from "@dxos/plugin-graph";
18
- import { fullyQualifiedId, getSpace, SpaceState, isSpace } from "@dxos/react-client/echo";
18
+ import { SpaceState, fullyQualifiedId, getSpace, isSpace } from "@dxos/react-client/echo";
19
19
  import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/react-ui-attention";
20
- import { DataType } from "@dxos/schema";
20
+ import { DataType, typenameFromQuery } from "@dxos/schema";
21
21
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
22
- var SPACES = `${SPACE_PLUGIN}-spaces`;
23
- var COMPOSER_SPACE_LOCK = "dxos.org/plugin/space/lock";
22
+ var SPACES = `${meta.id}-spaces`;
23
+ var COMPOSER_SPACE_LOCK = `${meta.id}/lock`;
24
24
  var SHARED = "shared-spaces";
25
25
  var rxFromQuery = (query) => {
26
26
  return Rx.make((get) => {
@@ -35,12 +35,12 @@ var getSpaceDisplayName = (space, { personal, namesCache = {} } = {}) => {
35
35
  return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0 ? space.properties.name : namesCache[space.id] ? namesCache[space.id] : personal ? [
36
36
  "personal space label",
37
37
  {
38
- ns: SPACE_PLUGIN
38
+ ns: meta.id
39
39
  }
40
40
  ] : [
41
41
  "unnamed space label",
42
42
  {
43
- ns: SPACE_PLUGIN
43
+ ns: meta.id
44
44
  }
45
45
  ];
46
46
  };
@@ -83,8 +83,9 @@ var getCollectionGraphNodePartials = ({ collection, space, resolve }) => {
83
83
  };
84
84
  };
85
85
  var getQueryCollectionNodePartials = ({ collection, space, resolve }) => {
86
+ const typename = typenameFromQuery(collection.query);
86
87
  return {
87
- icon: collection.query.typename && resolve(collection.query.typename)?.icon,
88
+ icon: typename && resolve(typename)?.icon,
88
89
  acceptPersistenceClass: /* @__PURE__ */ new Set([
89
90
  "echo"
90
91
  ]),
@@ -93,7 +94,7 @@ var getQueryCollectionNodePartials = ({ collection, space, resolve }) => {
93
94
  ]),
94
95
  role: "branch",
95
96
  canDrop: (source) => {
96
- return isGraphNode(source.item) && Obj.isObject(source.item.data) && Obj.getTypename(source.item.data) === collection.query.typename;
97
+ return isGraphNode(source.item) && Obj.isObject(source.item.data) && Obj.getTypename(source.item.data) === typename;
97
98
  },
98
99
  onTransferStart: (child, index) => {
99
100
  },
@@ -161,13 +162,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
161
162
  nodes: [
162
163
  {
163
164
  id: `settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
164
- type: `${SPACE_PLUGIN}/settings`,
165
+ type: `${meta.id}/settings`,
165
166
  data: null,
166
167
  properties: {
167
168
  label: [
168
169
  "settings panel label",
169
170
  {
170
- ns: SPACE_PLUGIN
171
+ ns: meta.id
171
172
  }
172
173
  ],
173
174
  icon: "ph--faders--regular",
@@ -176,13 +177,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
176
177
  nodes: [
177
178
  {
178
179
  id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
179
- type: `${SPACE_PLUGIN}/properties`,
180
- data: `${SPACE_PLUGIN}/properties`,
180
+ type: `${meta.id}/properties`,
181
+ data: `${meta.id}/properties`,
181
182
  properties: {
182
183
  label: [
183
184
  "space settings properties label",
184
185
  {
185
- ns: SPACE_PLUGIN
186
+ ns: meta.id
186
187
  }
187
188
  ],
188
189
  icon: "ph--sliders--regular",
@@ -191,13 +192,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
191
192
  },
192
193
  {
193
194
  id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
194
- type: `${SPACE_PLUGIN}/members`,
195
- data: `${SPACE_PLUGIN}/members`,
195
+ type: `${meta.id}/members`,
196
+ data: `${meta.id}/members`,
196
197
  properties: {
197
198
  label: [
198
199
  "members panel label",
199
200
  {
200
- ns: SPACE_PLUGIN
201
+ ns: meta.id
201
202
  }
202
203
  ],
203
204
  icon: "ph--users--regular",
@@ -206,13 +207,13 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
206
207
  },
207
208
  {
208
209
  id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,
209
- type: `${SPACE_PLUGIN}/schema`,
210
- data: `${SPACE_PLUGIN}/schema`,
210
+ type: `${meta.id}/schema`,
211
+ data: `${meta.id}/schema`,
211
212
  properties: {
212
213
  label: [
213
214
  "space settings schema label",
214
215
  {
215
- ns: SPACE_PLUGIN
216
+ ns: meta.id
216
217
  }
217
218
  ],
218
219
  icon: "ph--shapes--regular"
@@ -241,7 +242,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
241
242
  label: [
242
243
  "migrate space label",
243
244
  {
244
- ns: SPACE_PLUGIN
245
+ ns: meta.id
245
246
  }
246
247
  ],
247
248
  icon: "ph--database--regular",
@@ -263,7 +264,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
263
264
  label: [
264
265
  "create object in space label",
265
266
  {
266
- ns: SPACE_PLUGIN
267
+ ns: meta.id
267
268
  }
268
269
  ],
269
270
  icon: "ph--plus--regular",
@@ -283,7 +284,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
283
284
  label: [
284
285
  "rename space label",
285
286
  {
286
- ns: SPACE_PLUGIN
287
+ ns: meta.id
287
288
  }
288
289
  ],
289
290
  icon: "ph--pencil-simple-line--regular",
@@ -299,7 +300,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
299
300
  var createStaticSchemaNode = ({ schema, space }) => {
300
301
  return {
301
302
  id: `${space.id}/${Type.getTypename(schema)}`,
302
- type: `${SPACE_PLUGIN}/static-schema`,
303
+ type: `${meta.id}/static-schema`,
303
304
  data: schema,
304
305
  properties: {
305
306
  label: [
@@ -316,9 +317,33 @@ var createStaticSchemaNode = ({ schema, space }) => {
316
317
  }
317
318
  };
318
319
  };
319
- var createStaticSchemaActions = ({ schema, space, deletable }) => {
320
+ var createStaticSchemaActions = ({ schema, space, dispatch, deletable }) => {
320
321
  const getId = (id) => `${space.id}/${Type.getTypename(schema)}/${id}`;
321
322
  const actions = [
323
+ {
324
+ id: getId(SpaceAction.AddObject._tag),
325
+ type: ACTION_TYPE,
326
+ data: async () => {
327
+ await dispatch(createIntent(SpaceAction.OpenCreateObject, {
328
+ target: space,
329
+ views: true,
330
+ initialFormValues: {
331
+ typename: Type.getTypename(schema)
332
+ }
333
+ }));
334
+ },
335
+ properties: {
336
+ label: [
337
+ "add view to schema label",
338
+ {
339
+ ns: Type.getTypename(DataType.StoredSchema)
340
+ }
341
+ ],
342
+ icon: "ph--plus--regular",
343
+ disposition: "list-item-primary",
344
+ testId: "spacePlugin.addViewToSchema"
345
+ }
346
+ },
322
347
  {
323
348
  id: getId(SpaceAction.RenameObject._tag),
324
349
  type: ACTION_TYPE,
@@ -363,10 +388,10 @@ var createStaticSchemaActions = ({ schema, space, deletable }) => {
363
388
  ];
364
389
  return actions;
365
390
  };
366
- var createObjectNode = ({ space, object, droppable = true, navigable = false, resolve }) => {
391
+ var createObjectNode = ({ space, object, disposition, droppable = true, navigable = false, resolve }) => {
367
392
  const type = Obj.getTypename(object);
368
393
  if (!type) {
369
- return void 0;
394
+ return null;
370
395
  }
371
396
  const metadata = resolve(type);
372
397
  const partials = Obj.instanceOf(DataType.Collection, object) ? getCollectionGraphNodePartials({
@@ -381,7 +406,7 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
381
406
  view: object,
382
407
  resolve
383
408
  }) : metadata.graphProps;
384
- const label = Obj.getLabel(object) || // TODO(wittjosiah): Remove metadata labels.
409
+ const label = object.name || Obj.getLabel(object) || // TODO(wittjosiah): Remove metadata labels.
385
410
  metadata.label?.(object) || [
386
411
  "object name placeholder",
387
412
  {
@@ -401,6 +426,7 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
401
426
  properties: {
402
427
  label,
403
428
  icon: metadata.icon ?? "ph--placeholder--regular",
429
+ disposition,
404
430
  testId: "spacePlugin.object",
405
431
  persistenceClass: "echo",
406
432
  persistenceKey: space?.id,
@@ -415,7 +441,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
415
441
  const space = getSpace(object);
416
442
  invariant(space, "Space not found", {
417
443
  F: __dxlog_file,
418
- L: 492,
444
+ L: 518,
419
445
  S: void 0,
420
446
  A: [
421
447
  "space",
@@ -425,7 +451,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
425
451
  const typename = Obj.getTypename(object);
426
452
  invariant(typename, "Object has no typename", {
427
453
  F: __dxlog_file,
428
- L: 494,
454
+ L: 520,
429
455
  S: void 0,
430
456
  A: [
431
457
  "typename",
@@ -434,7 +460,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
434
460
  });
435
461
  const getId = (id) => `${id}/${fullyQualifiedId(object)}`;
436
462
  const queryCollection = Obj.instanceOf(DataType.QueryCollection, object) ? object : void 0;
437
- const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) === queryCollection.query.typename) : void 0;
463
+ const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) === typenameFromQuery(queryCollection.query)) : void 0;
438
464
  const actions = [
439
465
  ...Obj.instanceOf(DataType.Collection, object) ? [
440
466
  {
@@ -449,7 +475,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
449
475
  label: [
450
476
  "create object in collection label",
451
477
  {
452
- ns: SPACE_PLUGIN
478
+ ns: meta.id
453
479
  }
454
480
  ],
455
481
  icon: "ph--plus--regular",
@@ -458,6 +484,32 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
458
484
  }
459
485
  }
460
486
  ] : [],
487
+ ...Obj.instanceOf(DataType.StoredSchema, object) ? [
488
+ {
489
+ id: getId(SpaceAction.AddObject._tag),
490
+ type: ACTION_TYPE,
491
+ data: async () => {
492
+ await dispatch(createIntent(SpaceAction.OpenCreateObject, {
493
+ target: space,
494
+ views: true,
495
+ initialFormValues: {
496
+ typename: object.typename
497
+ }
498
+ }));
499
+ },
500
+ properties: {
501
+ label: [
502
+ "add view to schema label",
503
+ {
504
+ ns: Type.getTypename(DataType.StoredSchema)
505
+ }
506
+ ],
507
+ icon: "ph--plus--regular",
508
+ disposition: "list-item-primary",
509
+ testId: "spacePlugin.addViewToSchema"
510
+ }
511
+ }
512
+ ] : [],
461
513
  ...matchingObjectForm ? [
462
514
  {
463
515
  id: getId(SpaceAction.OpenCreateObject._tag),
@@ -466,7 +518,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
466
518
  if (matchingObjectForm.formSchema) {
467
519
  await dispatch(createIntent(SpaceAction.OpenCreateObject, {
468
520
  target: space,
469
- typename: queryCollection?.query.typename
521
+ typename: queryCollection ? typenameFromQuery(queryCollection.query) : void 0
470
522
  }));
471
523
  } else {
472
524
  await dispatch(pipe(matchingObjectForm.getIntent({}, {
@@ -483,7 +535,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
483
535
  label: [
484
536
  "create object in smart collection label",
485
537
  {
486
- ns: SPACE_PLUGIN
538
+ ns: meta.id
487
539
  }
488
540
  ],
489
541
  icon: "ph--plus--regular",
@@ -556,7 +608,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
556
608
  label: [
557
609
  "copy link label",
558
610
  {
559
- ns: SPACE_PLUGIN
611
+ ns: meta.id
560
612
  }
561
613
  ],
562
614
  icon: "ph--link--regular",
@@ -579,7 +631,7 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable
579
631
  label: [
580
632
  "expose object label",
581
633
  {
582
- ns: SPACE_PLUGIN
634
+ ns: meta.id
583
635
  }
584
636
  ],
585
637
  icon: "ph--eye--regular",
@@ -614,7 +666,7 @@ var cloneObject = async (object, resolve, newSpace) => {
614
666
  const serializer = metadata.serializer;
615
667
  invariant(serializer, `No serializer for type: ${typename}`, {
616
668
  F: __dxlog_file,
617
- L: 665,
669
+ L: 714,
618
670
  S: void 0,
619
671
  A: [
620
672
  "serializer",
@@ -646,4 +698,4 @@ export {
646
698
  getNestedObjects,
647
699
  cloneObject
648
700
  };
649
- //# sourceMappingURL=chunk-XUYKJUU7.mjs.map
701
+ //# sourceMappingURL=chunk-PN27K4I7.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 { Rx } from '@effect-rx/rx-react';\nimport { pipe } from 'effect';\n\nimport { LayoutAction, type PromiseIntentDispatcher, chain, createIntent } from '@dxos/app-framework';\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { type AnyEchoObject, EXPANDO_TYPENAME } from '@dxos/echo-schema';\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, fullyQualifiedId, 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 { DataType, typenameFromQuery } 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 Rx value of the objects.\n */\nexport const rxFromQuery = <T extends AnyEchoObject>(query: QueryResult<T>): Rx.Rx<T[]> => {\n return Rx.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: DataType.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: DataType.QueryCollection;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const typename = typenameFromQuery(collection.query);\n return {\n icon: typename && resolve(typename)?.icon,\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: DataType.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 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[DataType.Collection.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(DataType.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 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 role: 'branch',\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(DataType.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(DataType.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(DataType.StoredSchema) }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n testId: 'spacePlugin.deleteObject',\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(DataType.Collection, object)\n ? getCollectionGraphNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(DataType.QueryCollection, object)\n ? getQueryCollectionNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(DataType.StoredSchema, object)\n ? getSchemaGraphNodePartials()\n : Obj.instanceOf(DataType.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 return {\n id: fullyQualifiedId(object),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n label,\n icon: metadata.icon ?? 'ph--placeholder--regular',\n disposition,\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: space?.id,\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}/${fullyQualifiedId(object)}`;\n\n const queryCollection = Obj.instanceOf(DataType.QueryCollection, object) ? object : undefined;\n const matchingObjectForm = queryCollection\n ? objectForms.find((form) => Type.getTypename(form.objectSchema) === typenameFromQuery(queryCollection.query))\n : undefined;\n\n const actions: NodeArg<ActionData>[] = [\n ...(Obj.instanceOf(DataType.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(DataType.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(DataType.StoredSchema) }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.addViewToSchema',\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 ? typenameFromQuery(queryCollection.query) : undefined,\n }),\n );\n } else {\n await dispatch(\n 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(fullyQualifiedId(object), 'inbound')\n .find(({ data }) => Obj.instanceOf(DataType.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(DataType.Collection, object) &&\n !Obj.instanceOf(DataType.QueryCollection, object) &&\n !Obj.instanceOf(DataType.StoredSchema, object))\n ? [\n {\n id: getId('copy-link'),\n type: ACTION_TYPE,\n data: async () => {\n const url = `${window.location.origin}/${space.id}/${fullyQualifiedId(object)}`;\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(createIntent(LayoutAction.Expose, { part: 'navigation', subject: fullyQualifiedId(object) }));\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/**\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": ["Rx", "pipe", "LayoutAction", "chain", "createIntent", "Obj", "Ref", "Type", "EXPANDO_TYPENAME", "invariant", "Migrations", "ACTION_GROUP_TYPE", "ACTION_TYPE", "isGraphNode", "SpaceState", "fullyQualifiedId", "getSpace", "isSpace", "ATTENDABLE_PATH_SEPARATOR", "DataType", "typenameFromQuery", "SPACES", "meta", "id", "COMPOSER_SPACE_LOCK", "SHARED", "rxFromQuery", "query", "Rx", "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", "typenameFromQuery", "icon", "canDrop", "source", "isGraphNode", "item", "getTypename", "getSchemaGraphNodePartials", "getViewGraphNodePartials", "view", "presentation", "undefined", "metadata", "label", "default", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "navigable", "hasPendingMigration", "DataType", "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", "createStaticSchemaActions", "deletable", "AddObject", "views", "initialFormValues", "StoredSchema", "RenameObject", "Error", "RemoveObjects", "staticRecords", "createObjectNode", "droppable", "QueryCollection", "View", "graphProps", "getLabel", "fullyQualifiedId", "persistenceClass", "persistenceKey", "constructObjectActions", "graph", "objectForms", "getSpace", "invariant", "queryCollection", "matchingObjectForm", "form", "objectSchema", "formSchema", "pipe", "getIntent", "chain", "hidden", "LayoutAction", "Open", "part", "getConnections", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "Expose", "subject", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "getSchema", "EXPANDO_TYPENAME", "serializer", "content", "serialize", "deserialize", "newId"]
7
+ }
@@ -1,8 +1,9 @@
1
1
  import {
2
2
  meta
3
- } from "./chunk-FBCGT5YY.mjs";
3
+ } from "./chunk-IRKDREHY.mjs";
4
4
 
5
5
  // src/translations.ts
6
+ import { Type } from "@dxos/echo";
6
7
  import { StoredSchema } from "@dxos/echo-schema";
7
8
  import { DataType } from "@dxos/schema";
8
9
  var translations = [
@@ -17,7 +18,7 @@ var translations = [
17
18
  "rename object label": "Rename collection",
18
19
  "delete object label": "Delete collection"
19
20
  },
20
- [DataType.QueryCollection.typename]: {
21
+ [Type.getTypename(DataType.QueryCollection)]: {
21
22
  "typename label": "Smart Collection",
22
23
  "typename label_zero": "Smart Collections",
23
24
  "typename label_one": "Smart Collection",
@@ -35,7 +36,7 @@ var translations = [
35
36
  "rename object label": "Rename record type",
36
37
  "delete object label": "Delete record type"
37
38
  },
38
- [DataType.View.typename]: {
39
+ [Type.getTypename(DataType.View)]: {
39
40
  "typename label": "View",
40
41
  "typename label_zero": "Views",
41
42
  "typename label_one": "View",
@@ -65,7 +66,7 @@ var translations = [
65
66
  "typename label_other": "People",
66
67
  "object name placeholder": "New person"
67
68
  },
68
- [DataType.Project.typename]: {
69
+ [Type.getTypename(DataType.Project)]: {
69
70
  "typename label": "Project",
70
71
  "typename label_zero": "Projects",
71
72
  "typename label_one": "Project",
@@ -203,10 +204,10 @@ var translations = [
203
204
  "space settings properties label": "General settings",
204
205
  "space properties settings verbose label": "Manage space properties",
205
206
  "space properties settings description": "You can configure how this space is displayed in the app here.",
206
- "space settings schema label": "Schema",
207
- "schema verbose label": "Manage schema",
208
- "schema description": "You can manage all of the schema stored within this space here.",
209
- "no schemas found message": "No schemas found",
207
+ "space settings schema label": "Record types",
208
+ "schema verbose label": "Manage record types",
209
+ "schema description": "You can manage all of the record types stored within this space here.",
210
+ "no schemas found message": "No record types found",
210
211
  "display name input placeholder": "Space name",
211
212
  "display name description": "Name of the space as it appears in the app.",
212
213
  "icon description": "Icon used to represent the space in the app.",
@@ -223,4 +224,4 @@ var translations = [
223
224
  export {
224
225
  translations
225
226
  };
226
- //# sourceMappingURL=chunk-QACNNDOT.mjs.map
227
+ //# sourceMappingURL=chunk-ZIZ2JLW6.mjs.map