@dxos/plugin-space 0.8.3 → 0.8.4-main.28f8d3d

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 (275) hide show
  1. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs +31 -0
  2. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +7 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.mjs +88 -0
  4. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.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-M2RH72VL.mjs → app-graph-builder-VZW75QPJ.mjs} +178 -30
  8. package/dist/lib/browser/app-graph-builder-VZW75QPJ.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-serializer-F7ISRRBV.mjs → app-graph-serializer-YPHYVZAP.mjs} +13 -13
  10. package/dist/lib/browser/app-graph-serializer-YPHYVZAP.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-TW7O2EPP.mjs → chunk-3UFG6LQQ.mjs} +59 -5
  12. package/dist/lib/browser/chunk-3UFG6LQQ.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-YMCZR6EZ.mjs → chunk-CBYL62HG.mjs} +5 -4
  14. package/dist/lib/browser/chunk-CBYL62HG.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-7Y4M7GXO.mjs → chunk-DYKFFVN6.mjs} +5 -5
  16. package/dist/lib/browser/{chunk-7Y4M7GXO.mjs.map → chunk-DYKFFVN6.mjs.map} +3 -3
  17. package/dist/lib/browser/{chunk-PTKYMZWO.mjs → chunk-FBCGT5YY.mjs} +2 -2
  18. package/dist/lib/browser/{chunk-NFUKCRGE.mjs → chunk-PSIBVBTA.mjs} +419 -353
  19. package/dist/lib/browser/chunk-PSIBVBTA.mjs.map +7 -0
  20. package/dist/lib/browser/{chunk-BXNL6SDI.mjs → chunk-Q5EEPP3S.mjs} +4 -3
  21. package/dist/lib/browser/chunk-Q5EEPP3S.mjs.map +7 -0
  22. package/dist/lib/browser/{chunk-V24VASAJ.mjs → chunk-SMB4DGYO.mjs} +133 -29
  23. package/dist/lib/browser/chunk-SMB4DGYO.mjs.map +7 -0
  24. package/dist/lib/browser/{chunk-4ZKSFDXM.mjs → chunk-WAXS2ZVX.mjs} +77 -16
  25. package/dist/lib/browser/chunk-WAXS2ZVX.mjs.map +7 -0
  26. package/dist/lib/browser/{identity-created-PI7TKANR.mjs → identity-created-T6ZNVE7S.mjs} +5 -5
  27. package/dist/lib/browser/identity-created-T6ZNVE7S.mjs.map +7 -0
  28. package/dist/lib/browser/index.mjs +108 -17
  29. package/dist/lib/browser/index.mjs.map +3 -3
  30. package/dist/lib/browser/{intent-resolver-RWU6ZE4H.mjs → intent-resolver-TS6CCKST.mjs} +172 -22
  31. package/dist/lib/browser/intent-resolver-TS6CCKST.mjs.map +7 -0
  32. package/dist/lib/browser/meta.json +1 -1
  33. package/dist/lib/browser/{react-root-QIKHSNT2.mjs → react-root-RQGTZ2ZO.mjs} +8 -8
  34. package/dist/lib/browser/{react-root-QIKHSNT2.mjs.map → react-root-RQGTZ2ZO.mjs.map} +2 -2
  35. package/dist/lib/browser/{react-surface-W56UD53I.mjs → react-surface-V3ARS2BP.mjs} +54 -22
  36. package/dist/lib/browser/react-surface-V3ARS2BP.mjs.map +7 -0
  37. package/dist/lib/browser/{schema-defs-WREJNMIC.mjs → schema-defs-5LBA43X5.mjs} +4 -4
  38. package/dist/lib/browser/schema-defs-5LBA43X5.mjs.map +7 -0
  39. package/dist/lib/browser/{schema-tools-ILTVSSS3.mjs → schema-tools-LPL35WOJ.mjs} +13 -13
  40. package/dist/lib/browser/schema-tools-LPL35WOJ.mjs.map +7 -0
  41. package/dist/lib/browser/{settings-K54STC5A.mjs → settings-FLLBP5KI.mjs} +4 -4
  42. package/dist/lib/browser/{spaces-ready-3PDRDHPC.mjs → spaces-ready-FXEP6XEW.mjs} +17 -15
  43. package/dist/lib/browser/spaces-ready-FXEP6XEW.mjs.map +7 -0
  44. package/dist/lib/browser/{state-HRZ4VRXU.mjs → state-K3UBPKYP.mjs} +4 -4
  45. package/dist/lib/{node-esm/state-XQNDCN37.mjs.map → browser/state-K3UBPKYP.mjs.map} +2 -2
  46. package/dist/lib/browser/types/index.mjs +2 -2
  47. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs +32 -0
  48. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +7 -0
  49. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.mjs +89 -0
  50. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.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-BCHVZ4OM.mjs → app-graph-builder-XNVQOJLE.mjs} +178 -30
  54. package/dist/lib/node-esm/app-graph-builder-XNVQOJLE.mjs.map +7 -0
  55. package/dist/lib/node-esm/{app-graph-serializer-TXRGGNP2.mjs → app-graph-serializer-PKVLWV6V.mjs} +13 -13
  56. package/dist/lib/node-esm/app-graph-serializer-PKVLWV6V.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-BSLREHIX.mjs → chunk-7MZ3J3LI.mjs} +4 -3
  58. package/dist/lib/node-esm/chunk-7MZ3J3LI.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-HO7AIKQS.mjs → chunk-CTQMR7E3.mjs} +133 -29
  60. package/dist/lib/node-esm/chunk-CTQMR7E3.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-3CP67AYY.mjs → chunk-FJZNSJC4.mjs} +5 -4
  62. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-MSWEFAPD.mjs → chunk-HWNG4MEU.mjs} +2 -2
  64. package/dist/lib/node-esm/{chunk-JBQKU4K5.mjs → chunk-HYIZVPOA.mjs} +77 -16
  65. package/dist/lib/node-esm/chunk-HYIZVPOA.mjs.map +7 -0
  66. package/dist/lib/node-esm/{chunk-GH2FGJXH.mjs → chunk-KLG4Y4GY.mjs} +5 -5
  67. package/dist/lib/node-esm/{chunk-GH2FGJXH.mjs.map → chunk-KLG4Y4GY.mjs.map} +3 -3
  68. package/dist/lib/node-esm/{chunk-LA6AVVH6.mjs → chunk-KYUHPPRN.mjs} +419 -353
  69. package/dist/lib/node-esm/chunk-KYUHPPRN.mjs.map +7 -0
  70. package/dist/lib/node-esm/{chunk-D4QMPPS7.mjs → chunk-S7MKRQHY.mjs} +59 -5
  71. package/dist/lib/node-esm/chunk-S7MKRQHY.mjs.map +7 -0
  72. package/dist/lib/node-esm/{identity-created-35CTAQWI.mjs → identity-created-AL7NNCKH.mjs} +5 -5
  73. package/dist/lib/node-esm/identity-created-AL7NNCKH.mjs.map +7 -0
  74. package/dist/lib/node-esm/index.mjs +108 -17
  75. package/dist/lib/node-esm/index.mjs.map +3 -3
  76. package/dist/lib/node-esm/{intent-resolver-JO6L2VXC.mjs → intent-resolver-W6P27SCF.mjs} +172 -22
  77. package/dist/lib/node-esm/intent-resolver-W6P27SCF.mjs.map +7 -0
  78. package/dist/lib/node-esm/meta.json +1 -1
  79. package/dist/lib/node-esm/{react-root-YFGL3B4J.mjs → react-root-N27KETKT.mjs} +8 -8
  80. package/dist/lib/node-esm/{react-root-YFGL3B4J.mjs.map → react-root-N27KETKT.mjs.map} +2 -2
  81. package/dist/lib/node-esm/{react-surface-CVAPDLEZ.mjs → react-surface-TNPAUQCM.mjs} +54 -22
  82. package/dist/lib/node-esm/react-surface-TNPAUQCM.mjs.map +7 -0
  83. package/dist/lib/node-esm/{schema-defs-4MEJETVX.mjs → schema-defs-TPWZPDCR.mjs} +4 -4
  84. package/dist/lib/node-esm/schema-defs-TPWZPDCR.mjs.map +7 -0
  85. package/dist/lib/node-esm/{schema-tools-SRLCRZ3B.mjs → schema-tools-PJE2FKWH.mjs} +13 -13
  86. package/dist/lib/node-esm/schema-tools-PJE2FKWH.mjs.map +7 -0
  87. package/dist/lib/node-esm/{settings-TD76LTQS.mjs → settings-WKUWY3P6.mjs} +4 -4
  88. package/dist/lib/node-esm/{spaces-ready-FJMGPAVV.mjs → spaces-ready-PQLLIO5W.mjs} +17 -15
  89. package/dist/lib/node-esm/spaces-ready-PQLLIO5W.mjs.map +7 -0
  90. package/dist/lib/node-esm/{state-XQNDCN37.mjs → state-4M5A6OSB.mjs} +4 -4
  91. package/dist/lib/node-esm/state-4M5A6OSB.mjs.map +7 -0
  92. package/dist/lib/node-esm/types/index.mjs +2 -2
  93. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/capabilities.d.ts +9 -3
  97. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  98. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  106. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  107. package/dist/types/src/components/CollectionMain.d.ts +1 -0
  108. package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
  109. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -2
  110. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  111. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1 -1
  112. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  113. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +1 -1
  114. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  115. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  116. package/dist/types/src/components/MembersContainer.stories.d.ts +1 -1
  117. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  118. package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
  119. package/dist/types/src/components/ObjectDetailsPanel.d.ts +9 -0
  120. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +1 -0
  121. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  122. package/dist/types/src/components/PersistenceStatus.d.ts.map +1 -1
  123. package/dist/types/src/components/PopoverRenameObject.d.ts +1 -1
  124. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  125. package/dist/types/src/components/RecordMain.d.ts +7 -0
  126. package/dist/types/src/components/RecordMain.d.ts.map +1 -0
  127. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  128. package/dist/types/src/components/SpacePresence.stories.d.ts +1 -1
  129. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  130. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  131. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1 -1
  132. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  133. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts +1 -1
  134. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  135. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1 -1
  136. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  137. package/dist/types/src/components/SyncStatus/status.d.ts +5 -5
  138. package/dist/types/src/components/ViewEditor.d.ts +8 -0
  139. package/dist/types/src/components/ViewEditor.d.ts.map +1 -0
  140. package/dist/types/src/components/index.d.ts +11 -1
  141. package/dist/types/src/components/index.d.ts.map +1 -1
  142. package/dist/types/src/events.d.ts +1 -0
  143. package/dist/types/src/events.d.ts.map +1 -1
  144. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  145. package/dist/types/src/translations.d.ts +212 -410
  146. package/dist/types/src/translations.d.ts.map +1 -1
  147. package/dist/types/src/types/types.d.ts +82 -2
  148. package/dist/types/src/types/types.d.ts.map +1 -1
  149. package/dist/types/src/util.d.ts +31 -5
  150. package/dist/types/src/util.d.ts.map +1 -1
  151. package/dist/types/tsconfig.tsbuildinfo +1 -1
  152. package/package.json +52 -52
  153. package/src/SpacePlugin.ts +91 -8
  154. package/src/capabilities/app-graph-builder.ts +211 -14
  155. package/src/capabilities/app-graph-serializer.ts +6 -6
  156. package/src/capabilities/capabilities.ts +8 -3
  157. package/src/capabilities/identity-created.ts +3 -5
  158. package/src/capabilities/intent-resolver.ts +123 -13
  159. package/src/capabilities/react-root.tsx +2 -1
  160. package/src/capabilities/react-surface.tsx +69 -18
  161. package/src/capabilities/schema-defs.ts +3 -2
  162. package/src/capabilities/schema-tool.test.ts +1 -1
  163. package/src/capabilities/schema-tools.ts +11 -11
  164. package/src/capabilities/spaces-ready.ts +10 -7
  165. package/src/capabilities/state.ts +3 -2
  166. package/src/components/AwaitingObject.tsx +5 -7
  167. package/src/components/CollectionMain.tsx +2 -0
  168. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +5 -4
  169. package/src/components/CreateDialog/CreateObjectDialog.tsx +32 -27
  170. package/src/components/CreateDialog/CreateObjectPanel.tsx +3 -3
  171. package/src/components/CreateDialog/CreateSpaceDialog.tsx +1 -1
  172. package/src/components/JoinDialog.tsx +1 -1
  173. package/src/components/MembersContainer.stories.tsx +6 -5
  174. package/src/components/MembersContainer.tsx +8 -7
  175. package/src/components/MenuFooter.tsx +2 -3
  176. package/src/components/ObjectDetailsPanel.tsx +77 -0
  177. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +2 -1
  178. package/src/components/PersistenceStatus.tsx +5 -6
  179. package/src/components/PopoverRenameObject.tsx +7 -13
  180. package/src/components/PopoverRenameSpace.tsx +1 -1
  181. package/src/components/RecordMain.tsx +43 -0
  182. package/src/components/SchemaContainer.tsx +2 -2
  183. package/src/components/SpacePluginSettings.tsx +2 -2
  184. package/src/components/SpacePresence.stories.tsx +4 -3
  185. package/src/components/SpacePresence.tsx +7 -7
  186. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +3 -2
  187. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +6 -6
  188. package/src/components/SyncStatus/SyncStatus.stories.tsx +9 -15
  189. package/src/components/SyncStatus/SyncStatus.tsx +4 -3
  190. package/src/components/SyncStatus/save-tracker.ts +3 -3
  191. package/src/components/SyncStatus/status.ts +4 -4
  192. package/src/components/ViewEditor.tsx +64 -0
  193. package/src/components/index.ts +7 -1
  194. package/src/events.ts +2 -1
  195. package/src/hooks/useActiveSpace.ts +1 -1
  196. package/src/hooks/useInputSurfaceLookup.tsx +1 -1
  197. package/src/translations.ts +75 -11
  198. package/src/types/types.ts +56 -3
  199. package/src/util.tsx +127 -26
  200. package/dist/lib/browser/app-graph-builder-M2RH72VL.mjs.map +0 -7
  201. package/dist/lib/browser/app-graph-serializer-F7ISRRBV.mjs.map +0 -7
  202. package/dist/lib/browser/chunk-4ZKSFDXM.mjs.map +0 -7
  203. package/dist/lib/browser/chunk-BXNL6SDI.mjs.map +0 -7
  204. package/dist/lib/browser/chunk-NFUKCRGE.mjs.map +0 -7
  205. package/dist/lib/browser/chunk-TW7O2EPP.mjs.map +0 -7
  206. package/dist/lib/browser/chunk-V24VASAJ.mjs.map +0 -7
  207. package/dist/lib/browser/chunk-YMCZR6EZ.mjs.map +0 -7
  208. package/dist/lib/browser/identity-created-PI7TKANR.mjs.map +0 -7
  209. package/dist/lib/browser/intent-resolver-RWU6ZE4H.mjs.map +0 -7
  210. package/dist/lib/browser/react-surface-W56UD53I.mjs.map +0 -7
  211. package/dist/lib/browser/schema-defs-WREJNMIC.mjs.map +0 -7
  212. package/dist/lib/browser/schema-tools-ILTVSSS3.mjs.map +0 -7
  213. package/dist/lib/browser/spaces-ready-3PDRDHPC.mjs.map +0 -7
  214. package/dist/lib/browser/state-HRZ4VRXU.mjs.map +0 -7
  215. package/dist/lib/node/app-graph-builder-6LK5HLLE.cjs +0 -364
  216. package/dist/lib/node/app-graph-builder-6LK5HLLE.cjs.map +0 -7
  217. package/dist/lib/node/app-graph-serializer-HKHBNHA3.cjs +0 -89
  218. package/dist/lib/node/app-graph-serializer-HKHBNHA3.cjs.map +0 -7
  219. package/dist/lib/node/chunk-3X4EA4XL.cjs +0 -37
  220. package/dist/lib/node/chunk-3X4EA4XL.cjs.map +0 -7
  221. package/dist/lib/node/chunk-5WLAXYE3.cjs +0 -125
  222. package/dist/lib/node/chunk-5WLAXYE3.cjs.map +0 -7
  223. package/dist/lib/node/chunk-6P2DB4QQ.cjs +0 -36
  224. package/dist/lib/node/chunk-6P2DB4QQ.cjs.map +0 -7
  225. package/dist/lib/node/chunk-DOC5XEZ4.cjs +0 -184
  226. package/dist/lib/node/chunk-DOC5XEZ4.cjs.map +0 -7
  227. package/dist/lib/node/chunk-NCHF433F.cjs +0 -1921
  228. package/dist/lib/node/chunk-NCHF433F.cjs.map +0 -7
  229. package/dist/lib/node/chunk-NL5Y4EDX.cjs +0 -38
  230. package/dist/lib/node/chunk-NL5Y4EDX.cjs.map +0 -7
  231. package/dist/lib/node/chunk-ULJZPATP.cjs +0 -312
  232. package/dist/lib/node/chunk-ULJZPATP.cjs.map +0 -7
  233. package/dist/lib/node/chunk-XHWVT7LW.cjs +0 -572
  234. package/dist/lib/node/chunk-XHWVT7LW.cjs.map +0 -7
  235. package/dist/lib/node/identity-created-FF4WZ2WY.cjs +0 -42
  236. package/dist/lib/node/identity-created-FF4WZ2WY.cjs.map +0 -7
  237. package/dist/lib/node/index.cjs +0 -278
  238. package/dist/lib/node/index.cjs.map +0 -7
  239. package/dist/lib/node/intent-resolver-AV4CMM3Z.cjs +0 -609
  240. package/dist/lib/node/intent-resolver-AV4CMM3Z.cjs.map +0 -7
  241. package/dist/lib/node/meta.json +0 -1
  242. package/dist/lib/node/react-root-RQUU3A45.cjs +0 -51
  243. package/dist/lib/node/react-root-RQUU3A45.cjs.map +0 -7
  244. package/dist/lib/node/react-surface-AZFJLE72.cjs +0 -351
  245. package/dist/lib/node/react-surface-AZFJLE72.cjs.map +0 -7
  246. package/dist/lib/node/schema-defs-OB2X2HBH.cjs +0 -42
  247. package/dist/lib/node/schema-defs-OB2X2HBH.cjs.map +0 -7
  248. package/dist/lib/node/schema-tools-IYREN4IH.cjs +0 -147
  249. package/dist/lib/node/schema-tools-IYREN4IH.cjs.map +0 -7
  250. package/dist/lib/node/settings-P2EQ7VKQ.cjs +0 -38
  251. package/dist/lib/node/settings-P2EQ7VKQ.cjs.map +0 -7
  252. package/dist/lib/node/spaces-ready-DXPOHYV7.cjs +0 -210
  253. package/dist/lib/node/spaces-ready-DXPOHYV7.cjs.map +0 -7
  254. package/dist/lib/node/state-M35DK75Z.cjs +0 -61
  255. package/dist/lib/node/state-M35DK75Z.cjs.map +0 -7
  256. package/dist/lib/node/types/index.cjs +0 -48
  257. package/dist/lib/node/types/index.cjs.map +0 -7
  258. package/dist/lib/node-esm/app-graph-builder-BCHVZ4OM.mjs.map +0 -7
  259. package/dist/lib/node-esm/app-graph-serializer-TXRGGNP2.mjs.map +0 -7
  260. package/dist/lib/node-esm/chunk-3CP67AYY.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-BSLREHIX.mjs.map +0 -7
  262. package/dist/lib/node-esm/chunk-D4QMPPS7.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-HO7AIKQS.mjs.map +0 -7
  264. package/dist/lib/node-esm/chunk-JBQKU4K5.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-LA6AVVH6.mjs.map +0 -7
  266. package/dist/lib/node-esm/identity-created-35CTAQWI.mjs.map +0 -7
  267. package/dist/lib/node-esm/intent-resolver-JO6L2VXC.mjs.map +0 -7
  268. package/dist/lib/node-esm/react-surface-CVAPDLEZ.mjs.map +0 -7
  269. package/dist/lib/node-esm/schema-defs-4MEJETVX.mjs.map +0 -7
  270. package/dist/lib/node-esm/schema-tools-SRLCRZ3B.mjs.map +0 -7
  271. package/dist/lib/node-esm/spaces-ready-FJMGPAVV.mjs.map +0 -7
  272. /package/dist/lib/browser/{chunk-PTKYMZWO.mjs.map → chunk-FBCGT5YY.mjs.map} +0 -0
  273. /package/dist/lib/browser/{settings-K54STC5A.mjs.map → settings-FLLBP5KI.mjs.map} +0 -0
  274. /package/dist/lib/node-esm/{chunk-MSWEFAPD.mjs.map → chunk-HWNG4MEU.mjs.map} +0 -0
  275. /package/dist/lib/node-esm/{settings-TD76LTQS.mjs.map → settings-WKUWY3P6.mjs.map} +0 -0
@@ -1,24 +1,24 @@
1
1
  import {
2
2
  SPACE_TYPE,
3
3
  SpaceAction
4
- } from "./chunk-TW7O2EPP.mjs";
4
+ } from "./chunk-3UFG6LQQ.mjs";
5
5
  import {
6
6
  SPACE_PLUGIN
7
- } from "./chunk-PTKYMZWO.mjs";
7
+ } from "./chunk-FBCGT5YY.mjs";
8
8
 
9
- // packages/plugins/plugin-space/src/util.tsx
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
20
  import { DataType } from "@dxos/schema";
21
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
21
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
22
22
  var SPACES = `${SPACE_PLUGIN}-spaces`;
23
23
  var COMPOSER_SPACE_LOCK = "dxos.org/plugin/space/lock";
24
24
  var SHARED = "shared-spaces";
@@ -101,12 +101,34 @@ var getQueryCollectionNodePartials = ({ collection, space, resolve }) => {
101
101
  }
102
102
  };
103
103
  };
104
+ var getSchemaGraphNodePartials = () => {
105
+ return {
106
+ role: "branch",
107
+ canDrop: () => false
108
+ };
109
+ };
110
+ var getViewGraphNodePartials = ({ view, resolve }) => {
111
+ const presentation = view.presentation.target;
112
+ const typename = presentation ? Obj.getTypename(presentation) : void 0;
113
+ const metadata = typename ? resolve(typename) : {};
114
+ return {
115
+ label: view.name || [
116
+ "object name placeholder",
117
+ {
118
+ ns: typename,
119
+ default: "New view"
120
+ }
121
+ ],
122
+ icon: metadata.icon,
123
+ canDrop: () => false
124
+ };
125
+ };
104
126
  var checkPendingMigration = (space) => {
105
127
  return space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === SpaceState.SPACE_READY && !!Migrations.versionProperty && space.properties[Migrations.versionProperty] !== Migrations.targetVersion;
106
128
  };
107
129
  var constructSpaceNode = ({ space, navigable = false, personal, namesCache, resolve }) => {
108
130
  const hasPendingMigration = checkPendingMigration(space);
109
- const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[Type.getTypename(DataType.Collection)]?.target;
131
+ const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[DataType.Collection.typename]?.target;
110
132
  const partials = space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(DataType.Collection, collection) ? getCollectionGraphNodePartials({
111
133
  collection,
112
134
  space,
@@ -274,15 +296,79 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
274
296
  }
275
297
  return actions;
276
298
  };
277
- var createObjectNode = ({ space, object, droppable = true, navigable = false, resolve }) => {
299
+ var createStaticSchemaNode = ({ schema, space }) => {
300
+ return {
301
+ id: `${space.id}/${Type.getTypename(schema)}`,
302
+ type: `${SPACE_PLUGIN}/static-schema`,
303
+ data: schema,
304
+ properties: {
305
+ label: [
306
+ "typename label",
307
+ {
308
+ ns: Type.getTypename(schema),
309
+ default: Type.getTypename(schema)
310
+ }
311
+ ],
312
+ icon: "ph--database--regular",
313
+ role: "branch",
314
+ canDrop: () => false,
315
+ space
316
+ }
317
+ };
318
+ };
319
+ var createStaticSchemaActions = ({ schema, space, deletable }) => {
320
+ const getId = (id) => `${space.id}/${Type.getTypename(schema)}/${id}`;
321
+ const actions = [
322
+ {
323
+ id: getId(SpaceAction.RenameObject._tag),
324
+ type: ACTION_TYPE,
325
+ data: async (params) => {
326
+ throw new Error("Not implemented");
327
+ },
328
+ properties: {
329
+ label: [
330
+ "rename object label",
331
+ {
332
+ ns: Type.getTypename(DataType.StoredSchema)
333
+ }
334
+ ],
335
+ icon: "ph--pencil-simple-line--regular",
336
+ disabled: true,
337
+ disposition: "list-item",
338
+ testId: "spacePlugin.renameObject"
339
+ }
340
+ },
341
+ {
342
+ id: getId(SpaceAction.RemoveObjects._tag),
343
+ type: ACTION_TYPE,
344
+ data: async () => {
345
+ const index = space.properties.staticRecords.findIndex((typename) => typename === Type.getTypename(schema));
346
+ if (index > -1) {
347
+ space.properties.staticRecords.splice(index, 1);
348
+ }
349
+ },
350
+ properties: {
351
+ label: [
352
+ "delete object label",
353
+ {
354
+ ns: Type.getTypename(DataType.StoredSchema)
355
+ }
356
+ ],
357
+ icon: "ph--trash--regular",
358
+ disposition: "list-item",
359
+ disabled: !deletable,
360
+ testId: "spacePlugin.deleteObject"
361
+ }
362
+ }
363
+ ];
364
+ return actions;
365
+ };
366
+ var createObjectNode = ({ space, object, disposition, droppable = true, navigable = false, resolve }) => {
278
367
  const type = Obj.getTypename(object);
279
368
  if (!type) {
280
- return void 0;
369
+ return null;
281
370
  }
282
371
  const metadata = resolve(type);
283
- if (Object.keys(metadata).length === 0) {
284
- return void 0;
285
- }
286
372
  const partials = Obj.instanceOf(DataType.Collection, object) ? getCollectionGraphNodePartials({
287
373
  collection: object,
288
374
  space,
@@ -291,7 +377,18 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
291
377
  collection: object,
292
378
  space,
293
379
  resolve
380
+ }) : Obj.instanceOf(DataType.StoredSchema, object) ? getSchemaGraphNodePartials() : Obj.instanceOf(DataType.View, object) ? getViewGraphNodePartials({
381
+ view: object,
382
+ resolve
294
383
  }) : metadata.graphProps;
384
+ const label = object.name || Obj.getLabel(object) || // TODO(wittjosiah): Remove metadata labels.
385
+ metadata.label?.(object) || [
386
+ "object name placeholder",
387
+ {
388
+ ns: type,
389
+ default: "New item"
390
+ }
391
+ ];
295
392
  return {
296
393
  id: fullyQualifiedId(object),
297
394
  type,
@@ -302,15 +399,9 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
302
399
  ],
303
400
  data: object,
304
401
  properties: {
305
- // TODO(burdon): Use annotation to get the name field.
306
- label: metadata.label?.(object) || object.name || [
307
- "object name placeholder",
308
- {
309
- ns: type,
310
- default: "New object"
311
- }
312
- ],
402
+ label,
313
403
  icon: metadata.icon ?? "ph--placeholder--regular",
404
+ disposition,
314
405
  testId: "spacePlugin.object",
315
406
  persistenceClass: "echo",
316
407
  persistenceKey: space?.id,
@@ -321,17 +412,27 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
321
412
  }
322
413
  };
323
414
  };
324
- var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable = false }) => {
415
+ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable = true, navigable = false }) => {
325
416
  const space = getSpace(object);
326
417
  invariant(space, "Space not found", {
327
418
  F: __dxlog_file,
328
- L: 398,
419
+ L: 498,
329
420
  S: void 0,
330
421
  A: [
331
422
  "space",
332
423
  "'Space not found'"
333
424
  ]
334
425
  });
426
+ const typename = Obj.getTypename(object);
427
+ invariant(typename, "Object has no typename", {
428
+ F: __dxlog_file,
429
+ L: 500,
430
+ S: void 0,
431
+ A: [
432
+ "typename",
433
+ "'Object has no typename'"
434
+ ]
435
+ });
335
436
  const getId = (id) => `${id}/${fullyQualifiedId(object)}`;
336
437
  const queryCollection = Obj.instanceOf(DataType.QueryCollection, object) ? object : void 0;
337
438
  const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) === queryCollection.query.typename) : void 0;
@@ -403,9 +504,9 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable
403
504
  },
404
505
  properties: {
405
506
  label: [
406
- Obj.instanceOf(DataType.Collection, object) ? "rename collection label" : "rename object label",
507
+ "rename object label",
407
508
  {
408
- ns: SPACE_PLUGIN
509
+ ns: typename
409
510
  }
410
511
  ],
411
512
  icon: "ph--pencil-simple-line--regular",
@@ -431,19 +532,20 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable
431
532
  },
432
533
  properties: {
433
534
  label: [
434
- Obj.instanceOf(DataType.Collection, object) ? "delete collection label" : "delete object label",
535
+ "delete object label",
435
536
  {
436
- ns: SPACE_PLUGIN
537
+ ns: typename
437
538
  }
438
539
  ],
439
540
  icon: "ph--trash--regular",
440
541
  disposition: "list-item",
542
+ disabled: !deletable,
441
543
  // TODO(wittjosiah): This is a browser shortcut.
442
544
  // keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',
443
545
  testId: "spacePlugin.deleteObject"
444
546
  }
445
547
  },
446
- ...navigable || !Obj.instanceOf(DataType.Collection, object) && !Obj.instanceOf(DataType.QueryCollection, object) ? [
548
+ ...navigable || !Obj.instanceOf(DataType.Collection, object) && !Obj.instanceOf(DataType.QueryCollection, object) && !Obj.instanceOf(DataType.StoredSchema, object) ? [
447
549
  {
448
550
  id: getId("copy-link"),
449
551
  type: ACTION_TYPE,
@@ -513,7 +615,7 @@ var cloneObject = async (object, resolve, newSpace) => {
513
615
  const serializer = metadata.serializer;
514
616
  invariant(serializer, `No serializer for type: ${typename}`, {
515
617
  F: __dxlog_file,
516
- L: 570,
618
+ L: 671,
517
619
  S: void 0,
518
620
  A: [
519
621
  "serializer",
@@ -538,9 +640,11 @@ export {
538
640
  getSpaceDisplayName,
539
641
  constructSpaceNode,
540
642
  constructSpaceActions,
643
+ createStaticSchemaNode,
644
+ createStaticSchemaActions,
541
645
  createObjectNode,
542
646
  constructObjectActions,
543
647
  getNestedObjects,
544
648
  cloneObject
545
649
  };
546
- //# sourceMappingURL=chunk-V24VASAJ.mjs.map
650
+ //# sourceMappingURL=chunk-SMB4DGYO.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 } from '@dxos/schema';\n\nimport { SPACE_PLUGIN } from './meta';\nimport { type ObjectForm, SPACE_TYPE, SpaceAction } from './types';\n\nexport const SPACES = `${SPACE_PLUGIN}-spaces`;\nexport const COMPOSER_SPACE_LOCK = 'dxos.org/plugin/space/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: SPACE_PLUGIN }]\n : ['unnamed space label', { ns: SPACE_PLUGIN }];\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 return {\n icon: collection.query.typename && resolve(collection.query.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) &&\n Obj.isObject(source.item.data) &&\n Obj.getTypename(source.item.data) === collection.query.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: `${SPACE_PLUGIN}/settings`,\n data: null,\n properties: {\n label: ['settings panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--faders--regular',\n disposition: 'alternate-tree',\n },\n nodes: [\n {\n id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/properties`,\n data: `${SPACE_PLUGIN}/properties`,\n properties: {\n label: ['space settings properties label', { ns: SPACE_PLUGIN }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n },\n },\n {\n id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/members`,\n data: `${SPACE_PLUGIN}/members`,\n properties: {\n label: ['members panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n position: 'hoist',\n },\n },\n {\n id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/schema`,\n data: `${SPACE_PLUGIN}/schema`,\n properties: {\n label: ['space settings schema label', { ns: SPACE_PLUGIN }],\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: SPACE_PLUGIN }],\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: SPACE_PLUGIN }],\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: SPACE_PLUGIN }],\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: `${SPACE_PLUGIN}/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 deletable,\n}: {\n schema: Type.Obj.Any;\n space: Space;\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.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) === queryCollection.query.typename)\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: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\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?.query.typename,\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: SPACE_PLUGIN }],\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: SPACE_PLUGIN }],\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: SPACE_PLUGIN }],\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", "SPACES", "SPACE_PLUGIN", "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", "id", "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", "icon", "typename", "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", "RenameObject", "Error", "StoredSchema", "RemoveObjects", "staticRecords", "createObjectNode", "droppable", "QueryCollection", "View", "graphProps", "getLabel", "fullyQualifiedId", "persistenceClass", "persistenceKey", "constructObjectActions", "graph", "objectForms", "getSpace", "invariant", "queryCollection", "matchingObjectForm", "form", "objectSchema", "formSchema", "pipe", "getIntent", "chain", "AddObject", "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,28 +1,85 @@
1
1
  import {
2
- SPACE_PLUGIN
3
- } from "./chunk-PTKYMZWO.mjs";
2
+ meta
3
+ } from "./chunk-FBCGT5YY.mjs";
4
4
 
5
- // packages/plugins/plugin-space/src/translations.ts
6
- import { Type } from "@dxos/echo";
5
+ // src/translations.ts
6
+ import { StoredSchema } from "@dxos/echo-schema";
7
7
  import { DataType } from "@dxos/schema";
8
- var translations_default = [
8
+ var translations = [
9
9
  {
10
10
  "en-US": {
11
- [Type.getTypename(DataType.Collection)]: {
11
+ [DataType.Collection.typename]: {
12
12
  "typename label": "Collection",
13
13
  "typename label_zero": "Collections",
14
14
  "typename label_one": "Collection",
15
15
  "typename label_other": "Collections",
16
- "object name placeholder": "New collection"
16
+ "object name placeholder": "New collection",
17
+ "rename object label": "Rename collection",
18
+ "delete object label": "Delete collection"
17
19
  },
18
- [Type.getTypename(DataType.QueryCollection)]: {
20
+ [DataType.QueryCollection.typename]: {
19
21
  "typename label": "Smart Collection",
20
22
  "typename label_zero": "Smart Collections",
21
23
  "typename label_one": "Smart Collection",
22
24
  "typename label_other": "Smart Collections",
23
- "object name placeholder": "New smart collection"
25
+ "object name placeholder": "New smart collection",
26
+ "rename object label": "Rename smart collection",
27
+ "delete object label": "Delete smart collection"
24
28
  },
25
- [SPACE_PLUGIN]: {
29
+ [StoredSchema.typename]: {
30
+ "typename label": "Record",
31
+ "typename label_zero": "Records",
32
+ "typename label_one": "Record",
33
+ "typename label_other": "Records",
34
+ "object name placeholder": "New record type",
35
+ "rename object label": "Rename record type",
36
+ "delete object label": "Delete record type"
37
+ },
38
+ [DataType.View.typename]: {
39
+ "typename label": "View",
40
+ "typename label_zero": "Views",
41
+ "typename label_one": "View",
42
+ "typename label_other": "Views",
43
+ "object name placeholder": "New view",
44
+ "rename object label": "Rename view",
45
+ "delete object label": "Delete view"
46
+ },
47
+ [DataType.Event.typename]: {
48
+ "typename label": "Event",
49
+ "typename label_zero": "Events",
50
+ "typename label_one": "Event",
51
+ "typename label_other": "Events",
52
+ "object name placeholder": "New event"
53
+ },
54
+ [DataType.Organization.typename]: {
55
+ "typename label": "Organization",
56
+ "typename label_zero": "Organizations",
57
+ "typename label_one": "Organization",
58
+ "typename label_other": "Organizations",
59
+ "object name placeholder": "New organization"
60
+ },
61
+ [DataType.Person.typename]: {
62
+ "typename label": "Person",
63
+ "typename label_zero": "People",
64
+ "typename label_one": "Person",
65
+ "typename label_other": "People",
66
+ "object name placeholder": "New person"
67
+ },
68
+ [DataType.Project.typename]: {
69
+ "typename label": "Project",
70
+ "typename label_zero": "Projects",
71
+ "typename label_one": "Project",
72
+ "typename label_other": "Projects",
73
+ "object name placeholder": "New project"
74
+ },
75
+ [DataType.Task.typename]: {
76
+ "typename label": "Task",
77
+ "typename label_zero": "Tasks",
78
+ "typename label_one": "Task",
79
+ "typename label_other": "Tasks",
80
+ "object name placeholder": "New task"
81
+ },
82
+ [meta.id]: {
26
83
  "plugin name": "Spaces",
27
84
  "first run message": "Nothing selected.",
28
85
  "create space label": "Create space",
@@ -49,6 +106,7 @@ var translations_default = [
49
106
  "confirm restore title": "Overwrite files in this space?",
50
107
  "confirm restore body": "Restoring from a backup will overwrite the contents of any documents that match.",
51
108
  "upload file message": "Drag file here or click to browse",
109
+ "object name placeholder": "Object",
52
110
  "object placeholder": "Type a title here\u2026",
53
111
  "personal space label": "Personal Space",
54
112
  "spaces label": "Spaces",
@@ -127,6 +185,9 @@ var translations_default = [
127
185
  "foreign keys": "Foreign Keys",
128
186
  "add key": "Add Key",
129
187
  "open space settings label": "Open settings",
188
+ "row details no selection label": "No objects selected",
189
+ "companion selected objects label": "Selected",
190
+ "field deleted label": "Field deleted",
130
191
  "members panel label": "Members",
131
192
  "members verbose label": "Manage space members",
132
193
  "members description": "You can view the current status of space members here as well as invite new members.",
@@ -142,10 +203,10 @@ var translations_default = [
142
203
  "space settings properties label": "General settings",
143
204
  "space properties settings verbose label": "Manage space properties",
144
205
  "space properties settings description": "You can configure how this space is displayed in the app here.",
145
- "space settings schema label": "Schema",
146
- "schema verbose label": "Manage schema",
147
- "schema description": "You can manage all of the schema stored within this space here.",
148
- "no schemas found message": "No schemas found",
206
+ "space settings schema label": "Record types",
207
+ "schema verbose label": "Manage record types",
208
+ "schema description": "You can manage all of the record types stored within this space here.",
209
+ "no schemas found message": "No record types found",
149
210
  "display name input placeholder": "Space name",
150
211
  "display name description": "Name of the space as it appears in the app.",
151
212
  "icon description": "Icon used to represent the space in the app.",
@@ -160,6 +221,6 @@ var translations_default = [
160
221
  ];
161
222
 
162
223
  export {
163
- translations_default
224
+ translations
164
225
  };
165
- //# sourceMappingURL=chunk-4ZKSFDXM.mjs.map
226
+ //# sourceMappingURL=chunk-WAXS2ZVX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { StoredSchema } from '@dxos/echo-schema';\nimport { type Resource } from '@dxos/react-ui';\nimport { DataType } from '@dxos/schema';\n\nimport { meta } from './meta';\n\n// TODO(burdon): Change to single Resource?\nexport const translations = [\n {\n 'en-US': {\n [DataType.Collection.typename]: {\n 'typename label': 'Collection',\n 'typename label_zero': 'Collections',\n 'typename label_one': 'Collection',\n 'typename label_other': 'Collections',\n 'object name placeholder': 'New collection',\n 'rename object label': 'Rename collection',\n 'delete object label': 'Delete collection',\n },\n [DataType.QueryCollection.typename]: {\n 'typename label': 'Smart Collection',\n 'typename label_zero': 'Smart Collections',\n 'typename label_one': 'Smart Collection',\n 'typename label_other': 'Smart Collections',\n 'object name placeholder': 'New smart collection',\n 'rename object label': 'Rename smart collection',\n 'delete object label': 'Delete smart collection',\n },\n [StoredSchema.typename]: {\n 'typename label': 'Record',\n 'typename label_zero': 'Records',\n 'typename label_one': 'Record',\n 'typename label_other': 'Records',\n 'object name placeholder': 'New record type',\n 'rename object label': 'Rename record type',\n 'delete object label': 'Delete record type',\n },\n [DataType.View.typename]: {\n 'typename label': 'View',\n 'typename label_zero': 'Views',\n 'typename label_one': 'View',\n 'typename label_other': 'Views',\n 'object name placeholder': 'New view',\n 'rename object label': 'Rename view',\n 'delete object label': 'Delete view',\n },\n [DataType.Event.typename]: {\n 'typename label': 'Event',\n 'typename label_zero': 'Events',\n 'typename label_one': 'Event',\n 'typename label_other': 'Events',\n 'object name placeholder': 'New event',\n },\n [DataType.Organization.typename]: {\n 'typename label': 'Organization',\n 'typename label_zero': 'Organizations',\n 'typename label_one': 'Organization',\n 'typename label_other': 'Organizations',\n 'object name placeholder': 'New organization',\n },\n [DataType.Person.typename]: {\n 'typename label': 'Person',\n 'typename label_zero': 'People',\n 'typename label_one': 'Person',\n 'typename label_other': 'People',\n 'object name placeholder': 'New person',\n },\n [DataType.Project.typename]: {\n 'typename label': 'Project',\n 'typename label_zero': 'Projects',\n 'typename label_one': 'Project',\n 'typename label_other': 'Projects',\n 'object name placeholder': 'New project',\n },\n [DataType.Task.typename]: {\n 'typename label': 'Task',\n 'typename label_zero': 'Tasks',\n 'typename label_one': 'Task',\n 'typename label_other': 'Tasks',\n 'object name placeholder': 'New task',\n },\n [meta.id]: {\n 'plugin name': 'Spaces',\n 'first run message': 'Nothing selected.',\n 'create space label': 'Create space',\n 'join space label': 'Join space',\n 'empty space message': 'No documents',\n 'empty tree message': 'No spaces',\n 'unnamed space label': 'New space',\n 'closed space label': 'Closed',\n 'loading space label': 'Loading space…',\n 'lock space label': 'Lock space',\n 'unlock space label': 'Unlock space',\n 'rename space label': 'Rename space',\n 'active space label': 'Active space:',\n 'space name label': 'Space name',\n 'object name label': 'Item name',\n 'close space label': 'Close space',\n 'open space label': 'Open space',\n 'export data label': 'Export data',\n 'import data label': 'Import data',\n 'migrate space label': 'Migrate space',\n 'share space label': 'Share current space',\n 'save space to disk label': 'Save to disk',\n 'load space from disk label': 'Load from disk',\n 'confirm restore title': 'Overwrite files in this space?',\n 'confirm restore body': 'Restoring from a backup will overwrite the contents of any documents that match.',\n 'upload file message': 'Drag file here or click to browse',\n 'object name placeholder': 'Object',\n 'object placeholder': 'Type a title here…',\n 'personal space label': 'Personal Space',\n 'spaces label': 'Spaces',\n 'space settings label': 'Spaces',\n 'space settings description':\n 'Each space has its own settings you can configure, where you can adjust its properties, membership, integrations, and other items specific to that space.',\n 'show hidden spaces label': 'Show archived spaces',\n 'save files to directory label': 'Save files to disk',\n 'select path label': 'Select path',\n 'rename collection label': 'Rename collection',\n 'rename object label': 'Rename item',\n 'duplicate object label': 'Duplicate item',\n 'delete collection label': 'Delete collection',\n 'delete object label': 'Delete item',\n 'collection deleted label': 'Collection deleted',\n 'object deleted label': 'Item deleted',\n 'objects deleted label': 'Items deleted',\n 'go to object label': 'Open item',\n 'found object label': 'Ready.',\n 'found object description': 'The requested item is now available.',\n 'waiting for object label': 'Loading…',\n 'waiting for object description': 'The requested item is still being synchronized.',\n 'object not found label': 'Nothing found.',\n 'object not found description':\n 'The requested item has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'missing object message': 'Item not available.',\n 'missing object description':\n 'The requested item has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'create object in space label': 'Add to space',\n 'create object in collection label': 'Add to collection',\n 'create object in smart collection label': 'Add to smart collection',\n 'space members label': 'Space members',\n 'active space members heading': 'Online ({{count}})',\n 'inactive space members heading': 'Offline ({{count}})',\n 'presence label_zero': 'No other viewers',\n 'presence label_one': '1 other viewer',\n 'presence label_other': '{{count}} other viewers',\n 'persisted locally label': 'Changes saved locally.',\n 'persisted locally message': 'All changes have been saved to disk on this device.',\n 'persistence pending label': 'Saving…',\n 'persistence error label': 'Error saving changes.',\n 'more actions label': 'More actions',\n 'invitations heading': 'Invitations',\n 'keyshortcuts label': 'Keyboard shortcuts',\n 'menu footer label': 'Details',\n 'location label': 'Located in',\n 'space limit label': 'Space Limit Reached',\n 'space limit description':\n 'This space has reached the maximum number of items for the beta. This limit includes deleted items currently, but those can be permanently removed with the cleanup action.',\n 'space limit close label': 'Close',\n 'remove deleted objects label': 'Cleanup',\n 'remove deleted objects alt': 'Permanently remove deleted items to free up space.',\n 'copy link label': 'Copy link',\n 'default on space create label': 'On space create',\n 'sync status title': 'Sync status',\n 'dismiss label': 'Dismiss',\n 'join success label': 'Successfully joined space',\n 'name label': 'Name',\n 'name placeholder': 'Name',\n 'object settings label': 'Details',\n 'edge replication label': 'Enable EDGE Replication',\n 'saving locally label': 'Writing to disk',\n 'downloading label': 'Replicating from peers',\n 'uploading label': 'Replicating to peers',\n 'offline persisted label': 'Saved to disk (offline)',\n 'remote synced label': 'Synced with peers',\n 'syncing label': 'Space syncing',\n 'show all label': 'Show all',\n 'no sync status label': 'No space with missing items.',\n 'create space dialog title': 'Create Space',\n 'create object dialog title': 'Create {{object}}',\n 'space input placeholder': 'Select space',\n 'schema input placeholder': 'Select item type',\n 'creating object type label': 'Type',\n 'creating in space label': 'Location',\n 'creating in collection label': 'In Collection',\n 'clear input label': 'Clear',\n 'expose object label': 'Expose in navtree',\n 'advanced settings label': 'Advanced',\n 'foreign keys': 'Foreign Keys',\n 'add key': 'Add Key',\n 'open space settings label': 'Open settings',\n\n 'row details no selection label': 'No objects selected',\n 'companion selected objects label': 'Selected',\n 'field deleted label': 'Field deleted',\n\n 'members panel label': 'Members',\n 'members verbose label': 'Manage space members',\n 'members description': 'You can view the current status of space members here as well as invite new members.',\n 'members label': 'Members',\n 'invitations label': 'Invitations',\n 'space invitation description': 'Manage invitations to the space.',\n 'qr code description': 'Share this QR code, or copy the URL and share it with the person you want to invite.',\n 'locked space description': 'This space is locked, unlock it to invite new members.',\n 'space locked label': 'Lock space',\n 'space locked description': 'Locking a space prevents new members from being invited to the space.',\n\n 'settings panel label': 'Space Settings',\n 'open current space settings label': 'Open current space settings',\n 'space settings properties label': 'General settings',\n 'space properties settings verbose label': 'Manage space properties',\n 'space properties settings description': 'You can configure how this space is displayed in the app here.',\n 'space settings schema label': 'Record types',\n 'schema verbose label': 'Manage record types',\n 'schema description': 'You can manage all of the record types stored within this space here.',\n 'no schemas found message': 'No record types found',\n 'display name input placeholder': 'Space name',\n 'display name description': 'Name of the space as it appears in the app.',\n 'icon description': 'Icon used to represent the space in the app.',\n 'hue description': 'Color used to represent the space in the app.',\n 'edge replication description':\n \"Only change this if you know what you're doing. Disabling this will prevent the space from replicating through Composer's EDGE services, and relies solely on peer-to-peer sync.\",\n 'archive space description':\n '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.',\n 'archive space label': 'Archive',\n 'unarchive space label': 'Unarchive',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": "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",
6
+ "names": ["StoredSchema", "DataType", "translations", "DataType", "Collection", "typename", "QueryCollection", "StoredSchema", "View", "Event", "Organization", "Person", "Project", "Task", "meta", "id"]
7
+ }
@@ -1,6 +1,6 @@
1
- // packages/plugins/plugin-space/src/capabilities/identity-created.ts
2
- import { contributes, Capabilities } from "@dxos/app-framework";
3
- import { Obj, Ref, Type } from "@dxos/echo";
1
+ // src/capabilities/identity-created.ts
2
+ import { Capabilities, contributes } from "@dxos/app-framework";
3
+ import { Obj, Ref } from "@dxos/echo";
4
4
  import { Migrations } from "@dxos/migrations";
5
5
  import { ClientCapabilities } from "@dxos/plugin-client";
6
6
  import { DataType } from "@dxos/schema";
@@ -9,7 +9,7 @@ var identity_created_default = async (context) => {
9
9
  await client.spaces.waitUntilReady();
10
10
  const defaultSpace = client.spaces.default;
11
11
  await defaultSpace.waitUntilReady();
12
- defaultSpace.properties[Type.getTypename(DataType.Collection)] = Ref.make(Obj.make(DataType.Collection, {
12
+ defaultSpace.properties[DataType.Collection.typename] = Ref.make(Obj.make(DataType.Collection, {
13
13
  objects: []
14
14
  }));
15
15
  if (Migrations.versionProperty) {
@@ -20,4 +20,4 @@ var identity_created_default = async (context) => {
20
20
  export {
21
21
  identity_created_default as default
22
22
  };
23
- //# sourceMappingURL=identity-created-PI7TKANR.mjs.map
23
+ //# sourceMappingURL=identity-created-T6ZNVE7S.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/identity-created.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { Obj, Ref } from '@dxos/echo';\nimport { Migrations } from '@dxos/migrations';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { DataType } from '@dxos/schema';\n\nexport default async (context: PluginContext) => {\n const client = context.getCapability(ClientCapabilities.Client);\n await client.spaces.waitUntilReady();\n\n const defaultSpace = client.spaces.default;\n await defaultSpace.waitUntilReady();\n\n // Create root collection structure.\n defaultSpace.properties[DataType.Collection.typename] = Ref.make(Obj.make(DataType.Collection, { objects: [] }));\n if (Migrations.versionProperty) {\n defaultSpace.properties[Migrations.versionProperty] = Migrations.targetVersion;\n }\n\n return contributes(Capabilities.Null, null);\n};\n"],
5
+ "mappings": ";AAIA,SAASA,cAAkCC,mBAAmB;AAC9D,SAASC,KAAKC,WAAW;AACzB,SAASC,kBAAkB;AAC3B,SAASC,0BAA0B;AACnC,SAASC,gBAAgB;AAEzB,IAAA,2BAAe,OAAOC,YAAAA;AACpB,QAAMC,SAASD,QAAQE,cAAcC,mBAAmBC,MAAM;AAC9D,QAAMH,OAAOI,OAAOC,eAAc;AAElC,QAAMC,eAAeN,OAAOI,OAAOG;AACnC,QAAMD,aAAaD,eAAc;AAGjCC,eAAaE,WAAWC,SAASC,WAAWC,QAAQ,IAAIC,IAAIC,KAAKC,IAAID,KAAKJ,SAASC,YAAY;IAAEK,SAAS,CAAA;EAAG,CAAA,CAAA;AAC7G,MAAIC,WAAWC,iBAAiB;AAC9BX,iBAAaE,WAAWQ,WAAWC,eAAe,IAAID,WAAWE;EACnE;AAEA,SAAOC,YAAYC,aAAaC,MAAM,IAAA;AACxC;",
6
+ "names": ["Capabilities", "contributes", "Obj", "Ref", "Migrations", "ClientCapabilities", "DataType", "context", "client", "getCapability", "ClientCapabilities", "Client", "spaces", "waitUntilReady", "defaultSpace", "default", "properties", "DataType", "Collection", "typename", "Ref", "make", "Obj", "objects", "Migrations", "versionProperty", "targetVersion", "contributes", "Capabilities", "Null"]
7
+ }