@dxos/plugin-space 0.10.0 → 0.11.1

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 (646) hide show
  1. package/PLUGIN.mdl +11 -0
  2. package/dist/lib/SpacePlugin.mjs +2 -0
  3. package/dist/lib/SpacePlugin.node.mjs +628 -0
  4. package/dist/lib/SpacePlugin.node.mjs.map +1 -0
  5. package/dist/lib/SpacePlugin.workerd.mjs +26 -0
  6. package/dist/lib/SpacePlugin.workerd.mjs.map +1 -0
  7. package/dist/lib/capabilities/node.mjs +10 -0
  8. package/dist/lib/capabilities/node.mjs.map +1 -0
  9. package/dist/lib/capabilities.mjs +24 -0
  10. package/dist/lib/capabilities.mjs.map +1 -0
  11. package/dist/lib/chunk-CollectionArticle.mjs +90 -0
  12. package/dist/lib/chunk-CollectionArticle.mjs.map +1 -0
  13. package/dist/lib/chunk-CollectionSection.mjs +21 -0
  14. package/dist/lib/chunk-CollectionSection.mjs.map +1 -0
  15. package/dist/lib/chunk-CreateObjectDialog.mjs +178 -0
  16. package/dist/lib/chunk-CreateObjectDialog.mjs.map +1 -0
  17. package/dist/lib/chunk-CreateSpaceDialog.mjs +68 -0
  18. package/dist/lib/chunk-CreateSpaceDialog.mjs.map +1 -0
  19. package/dist/lib/chunk-DefaultProperties.mjs +59 -0
  20. package/dist/lib/chunk-DefaultProperties.mjs.map +1 -0
  21. package/dist/lib/chunk-ImportSpaceDialog.mjs +58 -0
  22. package/dist/lib/chunk-ImportSpaceDialog.mjs.map +1 -0
  23. package/dist/lib/chunk-InlineSyncStatus.mjs +37 -0
  24. package/dist/lib/chunk-InlineSyncStatus.mjs.map +1 -0
  25. package/dist/lib/chunk-JoinDialog.mjs +65 -0
  26. package/dist/lib/chunk-JoinDialog.mjs.map +1 -0
  27. package/dist/lib/chunk-MembersContainer.mjs +263 -0
  28. package/dist/lib/chunk-MembersContainer.mjs.map +1 -0
  29. package/dist/lib/chunk-MergePreview.mjs +91 -0
  30. package/dist/lib/chunk-MergePreview.mjs.map +1 -0
  31. package/dist/lib/chunk-ObjectCardStack.mjs +68 -0
  32. package/dist/lib/chunk-ObjectCardStack.mjs.map +1 -0
  33. package/dist/lib/chunk-RecordArticle.mjs +106 -0
  34. package/dist/lib/chunk-RecordArticle.mjs.map +1 -0
  35. package/dist/lib/chunk-RelatedArticle.mjs +71 -0
  36. package/dist/lib/chunk-RelatedArticle.mjs.map +1 -0
  37. package/dist/lib/chunk-RenamePopover.mjs +94 -0
  38. package/dist/lib/chunk-RenamePopover.mjs.map +1 -0
  39. package/dist/lib/chunk-SchemaContainer.mjs +53 -0
  40. package/dist/lib/chunk-SchemaContainer.mjs.map +1 -0
  41. package/dist/lib/chunk-SmallPresenceLive.mjs +2 -0
  42. package/dist/lib/chunk-SpaceHomeArticle.mjs +82 -0
  43. package/dist/lib/chunk-SpaceHomeArticle.mjs.map +1 -0
  44. package/dist/lib/chunk-SpaceHomeDashboard.mjs +96 -0
  45. package/dist/lib/chunk-SpaceHomeDashboard.mjs.map +1 -0
  46. package/dist/lib/chunk-SpaceHomeRecent.mjs +79 -0
  47. package/dist/lib/chunk-SpaceHomeRecent.mjs.map +1 -0
  48. package/dist/lib/chunk-SpacePlugin.mjs +97 -0
  49. package/dist/lib/chunk-SpacePlugin.mjs.map +1 -0
  50. package/dist/lib/chunk-SpacePresence.mjs +155 -0
  51. package/dist/lib/chunk-SpacePresence.mjs.map +1 -0
  52. package/dist/lib/chunk-SpaceSettings.mjs +63 -0
  53. package/dist/lib/chunk-SpaceSettings.mjs.map +1 -0
  54. package/dist/lib/chunk-SpaceSettingsContainer.mjs +278 -0
  55. package/dist/lib/chunk-SpaceSettingsContainer.mjs.map +1 -0
  56. package/dist/lib/chunk-SyncStatus.mjs +166 -0
  57. package/dist/lib/chunk-SyncStatus.mjs.map +1 -0
  58. package/dist/lib/chunk-TypeArticle.mjs +469 -0
  59. package/dist/lib/chunk-TypeArticle.mjs.map +1 -0
  60. package/dist/lib/chunk-ViewEditor.mjs +78 -0
  61. package/dist/lib/chunk-ViewEditor.mjs.map +1 -0
  62. package/dist/lib/chunk-add-object.mjs +74 -0
  63. package/dist/lib/chunk-add-object.mjs.map +1 -0
  64. package/dist/lib/chunk-add-relation.mjs +16 -0
  65. package/dist/lib/chunk-add-relation.mjs.map +1 -0
  66. package/dist/lib/chunk-add-type.mjs +41 -0
  67. package/dist/lib/chunk-add-type.mjs.map +1 -0
  68. package/dist/lib/chunk-app-graph-builder.mjs +1056 -0
  69. package/dist/lib/chunk-app-graph-builder.mjs.map +1 -0
  70. package/dist/lib/chunk-close.mjs +11 -0
  71. package/dist/lib/chunk-close.mjs.map +1 -0
  72. package/dist/lib/chunk-collection-path.mjs +65 -0
  73. package/dist/lib/chunk-collection-path.mjs.map +1 -0
  74. package/dist/lib/chunk-create-object.mjs +80 -0
  75. package/dist/lib/chunk-create-object.mjs.map +1 -0
  76. package/dist/lib/chunk-create.mjs +62 -0
  77. package/dist/lib/chunk-create.mjs.map +1 -0
  78. package/dist/lib/chunk-definitions.mjs +466 -0
  79. package/dist/lib/chunk-definitions.mjs.map +1 -0
  80. package/dist/lib/chunk-delete-field.mjs +52 -0
  81. package/dist/lib/chunk-delete-field.mjs.map +1 -0
  82. package/dist/lib/chunk-delete.mjs +11 -0
  83. package/dist/lib/chunk-delete.mjs.map +1 -0
  84. package/dist/lib/chunk-duplicate-object.mjs +11 -0
  85. package/dist/lib/chunk-duplicate-object.mjs.map +1 -0
  86. package/dist/lib/chunk-errors.mjs +10 -0
  87. package/dist/lib/chunk-errors.mjs.map +1 -0
  88. package/dist/lib/chunk-export-space.mjs +24 -0
  89. package/dist/lib/chunk-export-space.mjs.map +1 -0
  90. package/dist/lib/chunk-find-duplicates.mjs +19 -0
  91. package/dist/lib/chunk-find-duplicates.mjs.map +1 -0
  92. package/dist/lib/chunk-get-share-link.mjs +29 -0
  93. package/dist/lib/chunk-get-share-link.mjs.map +1 -0
  94. package/dist/lib/chunk-helpers.mjs +14 -0
  95. package/dist/lib/chunk-helpers.mjs.map +1 -0
  96. package/dist/lib/chunk-identity-created.mjs +26 -0
  97. package/dist/lib/chunk-identity-created.mjs.map +1 -0
  98. package/dist/lib/chunk-import-space.mjs +16 -0
  99. package/dist/lib/chunk-import-space.mjs.map +1 -0
  100. package/dist/lib/chunk-join.mjs +35 -0
  101. package/dist/lib/chunk-join.mjs.map +1 -0
  102. package/dist/lib/chunk-merge-duplicates.mjs +62 -0
  103. package/dist/lib/chunk-merge-duplicates.mjs.map +1 -0
  104. package/dist/lib/{neutral/chunk-5ZZS3KMK.mjs → chunk-meta.mjs} +15 -24
  105. package/dist/lib/chunk-meta.mjs.map +1 -0
  106. package/dist/lib/chunk-migrate.mjs +45 -0
  107. package/dist/lib/chunk-migrate.mjs.map +1 -0
  108. package/dist/lib/chunk-navigation-handler.mjs +63 -0
  109. package/dist/lib/chunk-navigation-handler.mjs.map +1 -0
  110. package/dist/lib/chunk-navigation-target-resolver.mjs +79 -0
  111. package/dist/lib/chunk-navigation-target-resolver.mjs.map +1 -0
  112. package/dist/lib/chunk-open-create-object.mjs +32 -0
  113. package/dist/lib/chunk-open-create-object.mjs.map +1 -0
  114. package/dist/lib/chunk-open-create-space.mjs +16 -0
  115. package/dist/lib/chunk-open-create-space.mjs.map +1 -0
  116. package/dist/lib/chunk-open-import-space.mjs +16 -0
  117. package/dist/lib/chunk-open-import-space.mjs.map +1 -0
  118. package/dist/lib/chunk-open-members.mjs +15 -0
  119. package/dist/lib/chunk-open-members.mjs.map +1 -0
  120. package/dist/lib/chunk-open-settings.mjs +15 -0
  121. package/dist/lib/chunk-open-settings.mjs.map +1 -0
  122. package/dist/lib/chunk-open.mjs +11 -0
  123. package/dist/lib/chunk-open.mjs.map +1 -0
  124. package/dist/lib/chunk-operation-handler.mjs +13 -0
  125. package/dist/lib/chunk-operation-handler.mjs.map +1 -0
  126. package/dist/lib/chunk-react-root.mjs +20 -0
  127. package/dist/lib/chunk-react-root.mjs.map +1 -0
  128. package/dist/lib/chunk-react-surface.mjs +384 -0
  129. package/dist/lib/chunk-react-surface.mjs.map +1 -0
  130. package/dist/lib/chunk-remove-objects.mjs +83 -0
  131. package/dist/lib/chunk-remove-objects.mjs.map +1 -0
  132. package/dist/lib/chunk-rename-object.mjs +18 -0
  133. package/dist/lib/chunk-rename-object.mjs.map +1 -0
  134. package/dist/lib/chunk-rename.mjs +18 -0
  135. package/dist/lib/chunk-rename.mjs.map +1 -0
  136. package/dist/lib/chunk-repair.mjs +28 -0
  137. package/dist/lib/chunk-repair.mjs.map +1 -0
  138. package/dist/lib/chunk-restore-field.mjs +50 -0
  139. package/dist/lib/chunk-restore-field.mjs.map +1 -0
  140. package/dist/lib/chunk-restore-objects.mjs +33 -0
  141. package/dist/lib/chunk-restore-objects.mjs.map +1 -0
  142. package/dist/lib/chunk-settings.mjs +23 -0
  143. package/dist/lib/chunk-settings.mjs.map +1 -0
  144. package/dist/lib/chunk-share.mjs +23 -0
  145. package/dist/lib/chunk-share.mjs.map +1 -0
  146. package/dist/lib/chunk-snapshot.mjs +24 -0
  147. package/dist/lib/chunk-snapshot.mjs.map +1 -0
  148. package/dist/lib/chunk-spaces-ready.mjs +242 -0
  149. package/dist/lib/chunk-spaces-ready.mjs.map +1 -0
  150. package/dist/lib/chunk-state.mjs +48 -0
  151. package/dist/lib/chunk-state.mjs.map +1 -0
  152. package/dist/lib/chunk-types.mjs +56 -0
  153. package/dist/lib/chunk-types.mjs.map +1 -0
  154. package/dist/lib/chunk-undo-mappings.mjs +40 -0
  155. package/dist/lib/chunk-undo-mappings.mjs.map +1 -0
  156. package/dist/lib/chunk-util.mjs +34 -0
  157. package/dist/lib/chunk-util.mjs.map +1 -0
  158. package/dist/lib/chunk-wait-for-object.mjs +16 -0
  159. package/dist/lib/chunk-wait-for-object.mjs.map +1 -0
  160. package/dist/lib/components.mjs +329 -0
  161. package/dist/lib/components.mjs.map +1 -0
  162. package/dist/lib/{neutral/chunk-C2ULK22J.mjs → constants.mjs} +5 -10
  163. package/dist/lib/constants.mjs.map +1 -0
  164. package/dist/lib/containers.mjs +31 -0
  165. package/dist/lib/containers.mjs.map +1 -0
  166. package/dist/lib/hooks.mjs +185 -0
  167. package/dist/lib/hooks.mjs.map +1 -0
  168. package/dist/lib/index.mjs +7 -0
  169. package/dist/lib/meta.mjs +2 -0
  170. package/dist/lib/operations.mjs +8 -0
  171. package/dist/lib/operations.mjs.map +1 -0
  172. package/dist/lib/plugin.mjs +9 -0
  173. package/dist/lib/plugin.mjs.map +1 -0
  174. package/dist/lib/testing.mjs +2 -0
  175. package/dist/lib/translations.mjs +350 -0
  176. package/dist/lib/translations.mjs.map +1 -0
  177. package/dist/lib/types.mjs +60 -0
  178. package/dist/lib/types.mjs.map +1 -0
  179. package/dist/types/src/SpacePlugin.workerd.d.ts.map +1 -1
  180. package/dist/types/src/capabilities/SpaceFormFields.d.ts +10 -0
  181. package/dist/types/src/capabilities/SpaceFormFields.d.ts.map +1 -0
  182. package/dist/types/src/capabilities/SpaceSurfaces.d.ts +50 -0
  183. package/dist/types/src/capabilities/SpaceSurfaces.d.ts.map +1 -0
  184. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
  185. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +6 -1
  186. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -1
  187. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts +1 -1
  188. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -1
  189. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts +7 -1
  190. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts.map +1 -1
  191. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +2 -7
  192. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -1
  193. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +3 -2
  194. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -1
  195. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +5 -0
  196. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -1
  197. package/dist/types/src/capabilities/create-object.d.ts +1 -1
  198. package/dist/types/src/capabilities/identity-created.d.ts +1 -1
  199. package/dist/types/src/capabilities/index.d.ts +1 -1
  200. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  201. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts +3 -1
  202. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -1
  203. package/dist/types/src/capabilities/navigation-target-resolver.d.ts +5 -0
  204. package/dist/types/src/capabilities/navigation-target-resolver.d.ts.map +1 -0
  205. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  206. package/dist/types/src/capabilities/react-root.d.ts +1 -1
  207. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  208. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  209. package/dist/types/src/capabilities/repair.d.ts +1 -1
  210. package/dist/types/src/capabilities/settings.d.ts +1 -1
  211. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  212. package/dist/types/src/capabilities/state.d.ts +1 -1
  213. package/dist/types/src/capabilities/try-get-view.d.ts +7 -0
  214. package/dist/types/src/capabilities/try-get-view.d.ts.map +1 -0
  215. package/dist/types/src/capabilities/undo-mappings.d.ts +1 -1
  216. package/dist/types/src/collection-path.d.ts +28 -0
  217. package/dist/types/src/collection-path.d.ts.map +1 -0
  218. package/dist/types/src/collection-path.test.d.ts +2 -0
  219. package/dist/types/src/collection-path.test.d.ts.map +1 -0
  220. package/dist/types/src/commands/space/export/export.d.ts +23 -0
  221. package/dist/types/src/commands/space/export/export.d.ts.map +1 -0
  222. package/dist/types/src/commands/space/export/export.test.d.ts +2 -0
  223. package/dist/types/src/commands/space/export/export.test.d.ts.map +1 -0
  224. package/dist/types/src/commands/space/export/index.d.ts +2 -0
  225. package/dist/types/src/commands/space/export/index.d.ts.map +1 -0
  226. package/dist/types/src/commands/space/import/import.d.ts +17 -0
  227. package/dist/types/src/commands/space/import/import.d.ts.map +1 -0
  228. package/dist/types/src/commands/space/import/import.test.d.ts +2 -0
  229. package/dist/types/src/commands/space/import/import.test.d.ts.map +1 -0
  230. package/dist/types/src/commands/space/import/index.d.ts +2 -0
  231. package/dist/types/src/commands/space/import/index.d.ts.map +1 -0
  232. package/dist/types/src/commands/space/index.d.ts +8 -1
  233. package/dist/types/src/commands/space/index.d.ts.map +1 -1
  234. package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -1
  235. package/dist/types/src/components/SyncStatus/status.d.ts +7 -4
  236. package/dist/types/src/components/SyncStatus/status.d.ts.map +1 -1
  237. package/dist/types/src/components/SyncStatus/status.test.d.ts +2 -0
  238. package/dist/types/src/components/SyncStatus/status.test.d.ts.map +1 -0
  239. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts +4 -4
  240. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -1
  241. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts +4 -1
  242. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -1
  243. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts +4 -1
  244. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -1
  245. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +420 -9
  246. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  247. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts +4 -1
  248. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -1
  249. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +423 -10
  250. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -1
  251. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts +4 -1
  252. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts.map +1 -1
  253. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts +5 -2
  254. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -1
  255. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts +4 -1
  256. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
  257. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +423 -10
  258. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -1
  259. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts +4 -1
  260. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -1
  261. package/dist/types/src/containers/MergePreview/MergePreview.d.ts +16 -0
  262. package/dist/types/src/containers/MergePreview/MergePreview.d.ts.map +1 -0
  263. package/dist/types/src/containers/MergePreview/index.d.ts +2 -0
  264. package/dist/types/src/containers/MergePreview/index.d.ts.map +1 -0
  265. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts +3 -2
  266. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -1
  267. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts +4 -1
  268. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -1
  269. package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts.map +1 -1
  270. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts +4 -1
  271. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -1
  272. package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts +4 -4
  273. package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts.map +1 -1
  274. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts +4 -7
  275. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -1
  276. package/dist/types/src/containers/SchemaContainer/use-query-space-types.d.ts +7 -0
  277. package/dist/types/src/containers/SchemaContainer/use-query-space-types.d.ts.map +1 -0
  278. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.d.ts +4 -11
  279. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.d.ts.map +1 -1
  280. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.stories.d.ts +14 -0
  281. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.stories.d.ts.map +1 -0
  282. package/dist/types/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.d.ts +15 -0
  283. package/dist/types/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.d.ts.map +1 -0
  284. package/dist/types/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.stories.d.ts +20 -0
  285. package/dist/types/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.stories.d.ts.map +1 -0
  286. package/dist/types/src/containers/SpaceHomeDashboard/index.d.ts +2 -0
  287. package/dist/types/src/containers/SpaceHomeDashboard/index.d.ts.map +1 -0
  288. package/dist/types/src/containers/SpaceHomeRecent/SpaceHomeRecent.d.ts +5 -8
  289. package/dist/types/src/containers/SpaceHomeRecent/SpaceHomeRecent.d.ts.map +1 -1
  290. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts +7 -4
  291. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -1
  292. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +419 -9
  293. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  294. package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts +4 -1
  295. package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts.map +1 -1
  296. package/dist/types/src/containers/SpaceSettings/SpaceSettings.stories.d.ts +423 -10
  297. package/dist/types/src/containers/SpaceSettings/SpaceSettings.stories.d.ts.map +1 -1
  298. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +419 -9
  299. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -1
  300. package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts +7 -2
  301. package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts.map +1 -1
  302. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +434 -11
  303. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  304. package/dist/types/src/containers/TypeArticle/TypeArticle.d.ts +14 -0
  305. package/dist/types/src/containers/TypeArticle/TypeArticle.d.ts.map +1 -0
  306. package/dist/types/src/containers/TypeArticle/TypeArticle.stories.d.ts +45 -0
  307. package/dist/types/src/containers/TypeArticle/TypeArticle.stories.d.ts.map +1 -0
  308. package/dist/types/src/containers/TypeArticle/duplicatesGroup.d.ts +19 -0
  309. package/dist/types/src/containers/TypeArticle/duplicatesGroup.d.ts.map +1 -0
  310. package/dist/types/src/containers/TypeArticle/index.d.ts +2 -0
  311. package/dist/types/src/containers/TypeArticle/index.d.ts.map +1 -0
  312. package/dist/types/src/containers/TypeArticle/useDuplicates.d.ts +34 -0
  313. package/dist/types/src/containers/TypeArticle/useDuplicates.d.ts.map +1 -0
  314. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts +4 -1
  315. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -1
  316. package/dist/types/src/containers/index.d.ts +3 -2
  317. package/dist/types/src/containers/index.d.ts.map +1 -1
  318. package/dist/types/src/errors.d.ts +30 -0
  319. package/dist/types/src/errors.d.ts.map +1 -1
  320. package/dist/types/src/hooks/index.d.ts +2 -0
  321. package/dist/types/src/hooks/index.d.ts.map +1 -1
  322. package/dist/types/src/hooks/useEdgeStatus.d.ts +6 -0
  323. package/dist/types/src/hooks/useEdgeStatus.d.ts.map +1 -0
  324. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  325. package/dist/types/src/hooks/useStalled.d.ts +13 -0
  326. package/dist/types/src/hooks/useStalled.d.ts.map +1 -0
  327. package/dist/types/src/operations/create.d.ts.map +1 -1
  328. package/dist/types/src/operations/definitions.d.ts +29 -1
  329. package/dist/types/src/operations/definitions.d.ts.map +1 -1
  330. package/dist/types/src/operations/find-duplicates.d.ts +5 -0
  331. package/dist/types/src/operations/find-duplicates.d.ts.map +1 -0
  332. package/dist/types/src/operations/helpers.d.ts +3 -0
  333. package/dist/types/src/operations/helpers.d.ts.map +1 -1
  334. package/dist/types/src/operations/index.d.ts.map +1 -1
  335. package/dist/types/src/operations/join.d.ts.map +1 -1
  336. package/dist/types/src/operations/merge-duplicates.d.ts +5 -0
  337. package/dist/types/src/operations/merge-duplicates.d.ts.map +1 -0
  338. package/dist/types/src/operations/open-settings.d.ts.map +1 -1
  339. package/dist/types/src/operations/remove-objects.d.ts.map +1 -1
  340. package/dist/types/src/translations.d.ts +419 -9
  341. package/dist/types/src/translations.d.ts.map +1 -1
  342. package/dist/types/src/type-section-path.d.ts +22 -0
  343. package/dist/types/src/type-section-path.d.ts.map +1 -0
  344. package/dist/types/src/type-section-path.test.d.ts +2 -0
  345. package/dist/types/src/type-section-path.test.d.ts.map +1 -0
  346. package/dist/types/src/types/capabilities.d.ts +22 -2
  347. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  348. package/dist/types/src/types/surface.d.ts +4 -4
  349. package/dist/types/src/types/surface.d.ts.map +1 -1
  350. package/dist/types/src/types/types.d.ts +6 -0
  351. package/dist/types/src/types/types.d.ts.map +1 -1
  352. package/dist/types/tsconfig.tsbuildinfo +1 -1
  353. package/package.json +87 -72
  354. package/src/SpacePlugin.ts +6 -6
  355. package/src/SpacePlugin.workerd.ts +3 -1
  356. package/src/capabilities/SpaceFormFields.tsx +72 -0
  357. package/src/capabilities/SpaceSurfaces.tsx +219 -0
  358. package/src/capabilities/app-graph-builder/extensions/collections.ts +74 -21
  359. package/src/capabilities/app-graph-builder/extensions/companions.ts +10 -5
  360. package/src/capabilities/app-graph-builder/extensions/database.ts +64 -57
  361. package/src/capabilities/app-graph-builder/extensions/settings.ts +23 -13
  362. package/src/capabilities/app-graph-builder/extensions/shared.ts +3 -2
  363. package/src/capabilities/app-graph-builder/extensions/spaces.ts +6 -7
  364. package/src/capabilities/create-object.ts +1 -14
  365. package/src/capabilities/index.ts +4 -1
  366. package/src/capabilities/navigation-handler/navigation-handler.ts +27 -7
  367. package/src/capabilities/navigation-target-resolver.ts +77 -0
  368. package/src/capabilities/react-surface.ts +274 -0
  369. package/src/capabilities/spaces-ready.ts +31 -18
  370. package/src/capabilities/state.ts +3 -1
  371. package/src/capabilities/try-get-view.ts +24 -0
  372. package/src/collection-path.test.ts +161 -0
  373. package/src/collection-path.ts +97 -0
  374. package/src/commands/space/export/export.test.ts +68 -0
  375. package/src/commands/space/export/export.ts +118 -0
  376. package/src/commands/space/export/index.ts +5 -0
  377. package/src/commands/space/import/import.test.ts +80 -0
  378. package/src/commands/space/import/import.ts +65 -0
  379. package/src/commands/space/import/index.ts +5 -0
  380. package/src/commands/space/index.ts +16 -1
  381. package/src/components/AwaitingObject/AwaitingObject.tsx +10 -4
  382. package/src/components/CreateObjectPanel/CreateObjectPanel.tsx +16 -18
  383. package/src/components/SyncStatus/status.test.ts +49 -0
  384. package/src/components/SyncStatus/status.ts +25 -12
  385. package/src/containers/CollectionArticle/CollectionArticle.tsx +5 -3
  386. package/src/containers/CollectionSection/CollectionSection.tsx +2 -0
  387. package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +18 -4
  388. package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +13 -17
  389. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.tsx +28 -19
  390. package/src/containers/DefaultProperties/DefaultProperties.tsx +4 -2
  391. package/src/containers/ImportSpaceDialog/ImportSpaceDialog.tsx +4 -2
  392. package/src/containers/InlineSyncStatus/InlineSyncStatus.tsx +7 -17
  393. package/src/containers/JoinDialog/JoinDialog.tsx +5 -3
  394. package/src/containers/MembersContainer/MembersContainer.tsx +2 -0
  395. package/src/containers/MergePreview/MergePreview.tsx +90 -0
  396. package/src/containers/MergePreview/index.ts +5 -0
  397. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +46 -43
  398. package/src/containers/RecordArticle/RecordArticle.stories.tsx +2 -1
  399. package/src/containers/RecordArticle/RecordArticle.tsx +8 -4
  400. package/src/containers/RelatedArticle/RelatedArticle.tsx +7 -3
  401. package/src/containers/RenamePopover/RenamePopover.tsx +2 -0
  402. package/src/containers/SchemaContainer/SchemaContainer.tsx +4 -17
  403. package/src/containers/SchemaContainer/use-query-space-types.ts +28 -0
  404. package/src/containers/SpaceHomeArticle/SpaceHomeArticle.stories.tsx +116 -0
  405. package/src/containers/SpaceHomeArticle/SpaceHomeArticle.tsx +6 -5
  406. package/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.stories.tsx +99 -0
  407. package/src/containers/SpaceHomeDashboard/SpaceHomeDashboard.tsx +109 -0
  408. package/src/containers/SpaceHomeDashboard/index.ts +5 -0
  409. package/src/containers/SpaceHomeRecent/SpaceHomeRecent.tsx +17 -15
  410. package/src/containers/SpacePresence/SpacePresence.stories.tsx +4 -4
  411. package/src/containers/SpacePresence/SpacePresence.tsx +37 -36
  412. package/src/containers/SpaceSettings/SpaceSettings.tsx +3 -1
  413. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +7 -2
  414. package/src/containers/SyncStatus/SyncStatus.stories.tsx +80 -1
  415. package/src/containers/SyncStatus/SyncStatus.tsx +36 -46
  416. package/src/containers/TypeArticle/TypeArticle.stories.tsx +249 -0
  417. package/src/containers/TypeArticle/TypeArticle.tsx +362 -0
  418. package/src/containers/TypeArticle/duplicatesGroup.tsx +150 -0
  419. package/src/containers/TypeArticle/index.ts +5 -0
  420. package/src/containers/TypeArticle/useDuplicates.ts +119 -0
  421. package/src/containers/ViewEditor/ViewEditor.tsx +3 -1
  422. package/src/containers/index.ts +3 -2
  423. package/src/errors.ts +6 -0
  424. package/src/hooks/index.ts +2 -0
  425. package/src/hooks/useEdgeStatus.ts +40 -0
  426. package/src/hooks/useInputSurfaceLookup.tsx +5 -4
  427. package/src/hooks/useRelatedObjects.ts +1 -1
  428. package/src/hooks/useStalled.ts +39 -0
  429. package/src/operations/add-object.ts +7 -7
  430. package/src/operations/create.ts +11 -3
  431. package/src/operations/definitions.ts +54 -1
  432. package/src/operations/find-duplicates.ts +33 -0
  433. package/src/operations/get-share-link.ts +1 -1
  434. package/src/operations/helpers.ts +11 -0
  435. package/src/operations/index.ts +2 -0
  436. package/src/operations/join.ts +6 -5
  437. package/src/operations/merge-duplicates.ts +51 -0
  438. package/src/operations/open-members.ts +3 -3
  439. package/src/operations/open-settings.ts +5 -3
  440. package/src/operations/remove-objects.ts +42 -3
  441. package/src/translations.ts +52 -11
  442. package/src/type-section-path.test.ts +48 -0
  443. package/src/type-section-path.ts +39 -0
  444. package/src/types/capabilities.ts +26 -2
  445. package/src/types/surface.ts +4 -8
  446. package/src/types/types.ts +7 -0
  447. package/dist/lib/neutral/CollectionArticle-BMH7SZ7Q.mjs +0 -93
  448. package/dist/lib/neutral/CollectionArticle-BMH7SZ7Q.mjs.map +0 -7
  449. package/dist/lib/neutral/CollectionSection-BLYTGOKH.mjs +0 -19
  450. package/dist/lib/neutral/CollectionSection-BLYTGOKH.mjs.map +0 -7
  451. package/dist/lib/neutral/CreateObjectDialog-5454N3FJ.mjs +0 -221
  452. package/dist/lib/neutral/CreateObjectDialog-5454N3FJ.mjs.map +0 -7
  453. package/dist/lib/neutral/CreateSpaceDialog-WWNUTLVK.mjs +0 -61
  454. package/dist/lib/neutral/CreateSpaceDialog-WWNUTLVK.mjs.map +0 -7
  455. package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs +0 -58
  456. package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs.map +0 -7
  457. package/dist/lib/neutral/ImportSpaceDialog-CSSRTFAO.mjs +0 -64
  458. package/dist/lib/neutral/ImportSpaceDialog-CSSRTFAO.mjs.map +0 -7
  459. package/dist/lib/neutral/InlineSyncStatus-UOUTAPCU.mjs +0 -49
  460. package/dist/lib/neutral/InlineSyncStatus-UOUTAPCU.mjs.map +0 -7
  461. package/dist/lib/neutral/JoinDialog-ATNUCNL2.mjs +0 -97
  462. package/dist/lib/neutral/JoinDialog-ATNUCNL2.mjs.map +0 -7
  463. package/dist/lib/neutral/MembersContainer-C4ZTP6ZW.mjs +0 -231
  464. package/dist/lib/neutral/MembersContainer-C4ZTP6ZW.mjs.map +0 -7
  465. package/dist/lib/neutral/MenuFooter-FWE5LFM4.mjs +0 -33
  466. package/dist/lib/neutral/MenuFooter-FWE5LFM4.mjs.map +0 -7
  467. package/dist/lib/neutral/ObjectCardStack-DHVDRNRK.mjs +0 -55
  468. package/dist/lib/neutral/ObjectCardStack-DHVDRNRK.mjs.map +0 -7
  469. package/dist/lib/neutral/RecordArticle-JSORXRAA.mjs +0 -102
  470. package/dist/lib/neutral/RecordArticle-JSORXRAA.mjs.map +0 -7
  471. package/dist/lib/neutral/RelatedArticle-Z777WVDW.mjs +0 -69
  472. package/dist/lib/neutral/RelatedArticle-Z777WVDW.mjs.map +0 -7
  473. package/dist/lib/neutral/RenamePopover-AZT2KPOF.mjs +0 -104
  474. package/dist/lib/neutral/RenamePopover-AZT2KPOF.mjs.map +0 -7
  475. package/dist/lib/neutral/SchemaContainer-4GJKQBXM.mjs +0 -53
  476. package/dist/lib/neutral/SchemaContainer-4GJKQBXM.mjs.map +0 -7
  477. package/dist/lib/neutral/SmallPresenceLive-FW3AMEY5.mjs +0 -8
  478. package/dist/lib/neutral/SmallPresenceLive-FW3AMEY5.mjs.map +0 -7
  479. package/dist/lib/neutral/SpaceHomeArticle-Y47TLZ72.mjs +0 -78
  480. package/dist/lib/neutral/SpaceHomeArticle-Y47TLZ72.mjs.map +0 -7
  481. package/dist/lib/neutral/SpaceHomeRecent-S57AO3EV.mjs +0 -89
  482. package/dist/lib/neutral/SpaceHomeRecent-S57AO3EV.mjs.map +0 -7
  483. package/dist/lib/neutral/SpacePlugin.mjs +0 -10
  484. package/dist/lib/neutral/SpacePlugin.mjs.map +0 -7
  485. package/dist/lib/neutral/SpacePlugin.node.mjs +0 -838
  486. package/dist/lib/neutral/SpacePlugin.node.mjs.map +0 -7
  487. package/dist/lib/neutral/SpacePlugin.workerd.mjs +0 -34
  488. package/dist/lib/neutral/SpacePlugin.workerd.mjs.map +0 -7
  489. package/dist/lib/neutral/SpacePresence-T37WH43Y.mjs +0 -11
  490. package/dist/lib/neutral/SpacePresence-T37WH43Y.mjs.map +0 -7
  491. package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs +0 -60
  492. package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs.map +0 -7
  493. package/dist/lib/neutral/SpaceSettingsContainer-72CJWELM.mjs +0 -279
  494. package/dist/lib/neutral/SpaceSettingsContainer-72CJWELM.mjs.map +0 -7
  495. package/dist/lib/neutral/SyncStatus-J7CHLO5O.mjs +0 -147
  496. package/dist/lib/neutral/SyncStatus-J7CHLO5O.mjs.map +0 -7
  497. package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs +0 -143
  498. package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs.map +0 -7
  499. package/dist/lib/neutral/ViewEditor-QXRUOKXR.mjs +0 -101
  500. package/dist/lib/neutral/ViewEditor-QXRUOKXR.mjs.map +0 -7
  501. package/dist/lib/neutral/add-object-H2N4AOQJ.mjs +0 -77
  502. package/dist/lib/neutral/add-object-H2N4AOQJ.mjs.map +0 -7
  503. package/dist/lib/neutral/add-relation-BGTLART5.mjs +0 -26
  504. package/dist/lib/neutral/add-relation-BGTLART5.mjs.map +0 -7
  505. package/dist/lib/neutral/add-type-JIDLRANR.mjs +0 -57
  506. package/dist/lib/neutral/add-type-JIDLRANR.mjs.map +0 -7
  507. package/dist/lib/neutral/app-graph-builder-7H2KOD4B.mjs +0 -1332
  508. package/dist/lib/neutral/app-graph-builder-7H2KOD4B.mjs.map +0 -7
  509. package/dist/lib/neutral/capabilities/index.mjs +0 -46
  510. package/dist/lib/neutral/capabilities/index.mjs.map +0 -7
  511. package/dist/lib/neutral/capabilities/node.mjs +0 -15
  512. package/dist/lib/neutral/capabilities/node.mjs.map +0 -7
  513. package/dist/lib/neutral/chunk-52ASDNRA.mjs +0 -41
  514. package/dist/lib/neutral/chunk-52ASDNRA.mjs.map +0 -7
  515. package/dist/lib/neutral/chunk-5ZZS3KMK.mjs.map +0 -7
  516. package/dist/lib/neutral/chunk-C2ULK22J.mjs.map +0 -7
  517. package/dist/lib/neutral/chunk-F5KLUP2P.mjs +0 -115
  518. package/dist/lib/neutral/chunk-F5KLUP2P.mjs.map +0 -7
  519. package/dist/lib/neutral/chunk-G2KHP7FX.mjs +0 -8
  520. package/dist/lib/neutral/chunk-G2KHP7FX.mjs.map +0 -7
  521. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +0 -10
  522. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +0 -7
  523. package/dist/lib/neutral/chunk-LMUG6PEJ.mjs +0 -572
  524. package/dist/lib/neutral/chunk-LMUG6PEJ.mjs.map +0 -7
  525. package/dist/lib/neutral/chunk-RAAHDTVF.mjs +0 -167
  526. package/dist/lib/neutral/chunk-RAAHDTVF.mjs.map +0 -7
  527. package/dist/lib/neutral/chunk-SPWAMXNR.mjs +0 -131
  528. package/dist/lib/neutral/chunk-SPWAMXNR.mjs.map +0 -7
  529. package/dist/lib/neutral/chunk-U5WTDOMV.mjs +0 -8
  530. package/dist/lib/neutral/chunk-U5WTDOMV.mjs.map +0 -7
  531. package/dist/lib/neutral/chunk-V7JALUM3.mjs +0 -9
  532. package/dist/lib/neutral/chunk-V7JALUM3.mjs.map +0 -7
  533. package/dist/lib/neutral/close-5WEQZRNK.mjs +0 -17
  534. package/dist/lib/neutral/close-5WEQZRNK.mjs.map +0 -7
  535. package/dist/lib/neutral/components/index.mjs +0 -401
  536. package/dist/lib/neutral/components/index.mjs.map +0 -7
  537. package/dist/lib/neutral/constants.mjs +0 -16
  538. package/dist/lib/neutral/constants.mjs.map +0 -7
  539. package/dist/lib/neutral/containers/index.mjs +0 -55
  540. package/dist/lib/neutral/containers/index.mjs.map +0 -7
  541. package/dist/lib/neutral/create-QZ47FHQU.mjs +0 -75
  542. package/dist/lib/neutral/create-QZ47FHQU.mjs.map +0 -7
  543. package/dist/lib/neutral/create-object-ZU6FZW5X.mjs +0 -96
  544. package/dist/lib/neutral/create-object-ZU6FZW5X.mjs.map +0 -7
  545. package/dist/lib/neutral/delete-SPCU2VFM.mjs +0 -17
  546. package/dist/lib/neutral/delete-SPCU2VFM.mjs.map +0 -7
  547. package/dist/lib/neutral/delete-field-TAKJVEAD.mjs +0 -42
  548. package/dist/lib/neutral/delete-field-TAKJVEAD.mjs.map +0 -7
  549. package/dist/lib/neutral/duplicate-object-BUPZOO6S.mjs +0 -17
  550. package/dist/lib/neutral/duplicate-object-BUPZOO6S.mjs.map +0 -7
  551. package/dist/lib/neutral/export-space-S5SCAL4M.mjs +0 -34
  552. package/dist/lib/neutral/export-space-S5SCAL4M.mjs.map +0 -7
  553. package/dist/lib/neutral/get-share-link-CLM5IQRL.mjs +0 -41
  554. package/dist/lib/neutral/get-share-link-CLM5IQRL.mjs.map +0 -7
  555. package/dist/lib/neutral/hooks/index.mjs +0 -133
  556. package/dist/lib/neutral/hooks/index.mjs.map +0 -7
  557. package/dist/lib/neutral/identity-created-BEYMLBK4.mjs +0 -32
  558. package/dist/lib/neutral/identity-created-BEYMLBK4.mjs.map +0 -7
  559. package/dist/lib/neutral/import-space-LJQK3KT7.mjs +0 -28
  560. package/dist/lib/neutral/import-space-LJQK3KT7.mjs.map +0 -7
  561. package/dist/lib/neutral/index.mjs +0 -62
  562. package/dist/lib/neutral/index.mjs.map +0 -7
  563. package/dist/lib/neutral/join-FSODYIOC.mjs +0 -54
  564. package/dist/lib/neutral/join-FSODYIOC.mjs.map +0 -7
  565. package/dist/lib/neutral/meta.json +0 -1
  566. package/dist/lib/neutral/meta.mjs +0 -8
  567. package/dist/lib/neutral/meta.mjs.map +0 -7
  568. package/dist/lib/neutral/migrate-WHM6LU7L.mjs +0 -52
  569. package/dist/lib/neutral/migrate-WHM6LU7L.mjs.map +0 -7
  570. package/dist/lib/neutral/navigation-handler-ZF7MV2HL.mjs +0 -44
  571. package/dist/lib/neutral/navigation-handler-ZF7MV2HL.mjs.map +0 -7
  572. package/dist/lib/neutral/navigation-resolver-KBESOSWU.mjs +0 -82
  573. package/dist/lib/neutral/navigation-resolver-KBESOSWU.mjs.map +0 -7
  574. package/dist/lib/neutral/open-JCXTL3SK.mjs +0 -17
  575. package/dist/lib/neutral/open-JCXTL3SK.mjs.map +0 -7
  576. package/dist/lib/neutral/open-create-object-WAIAU7TA.mjs +0 -42
  577. package/dist/lib/neutral/open-create-object-WAIAU7TA.mjs.map +0 -7
  578. package/dist/lib/neutral/open-create-space-VU47FWPZ.mjs +0 -24
  579. package/dist/lib/neutral/open-create-space-VU47FWPZ.mjs.map +0 -7
  580. package/dist/lib/neutral/open-import-space-GUHIEWYB.mjs +0 -24
  581. package/dist/lib/neutral/open-import-space-GUHIEWYB.mjs.map +0 -7
  582. package/dist/lib/neutral/open-members-MLLBHKUU.mjs +0 -23
  583. package/dist/lib/neutral/open-members-MLLBHKUU.mjs.map +0 -7
  584. package/dist/lib/neutral/open-settings-DTPZF4U4.mjs +0 -23
  585. package/dist/lib/neutral/open-settings-DTPZF4U4.mjs.map +0 -7
  586. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs +0 -13
  587. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs.map +0 -7
  588. package/dist/lib/neutral/operations/index.mjs +0 -13
  589. package/dist/lib/neutral/operations/index.mjs.map +0 -7
  590. package/dist/lib/neutral/plugin.mjs +0 -18
  591. package/dist/lib/neutral/plugin.mjs.map +0 -7
  592. package/dist/lib/neutral/react-root-YLYRCSAZ.mjs +0 -23
  593. package/dist/lib/neutral/react-root-YLYRCSAZ.mjs.map +0 -7
  594. package/dist/lib/neutral/react-surface-LRA7GIFN.mjs +0 -367
  595. package/dist/lib/neutral/react-surface-LRA7GIFN.mjs.map +0 -7
  596. package/dist/lib/neutral/remove-objects-WEO66EDS.mjs +0 -55
  597. package/dist/lib/neutral/remove-objects-WEO66EDS.mjs.map +0 -7
  598. package/dist/lib/neutral/rename-Q6UNCBIM.mjs +0 -26
  599. package/dist/lib/neutral/rename-Q6UNCBIM.mjs.map +0 -7
  600. package/dist/lib/neutral/rename-object-2UCEGU7U.mjs +0 -26
  601. package/dist/lib/neutral/rename-object-2UCEGU7U.mjs.map +0 -7
  602. package/dist/lib/neutral/repair-HMH476U3.mjs +0 -32
  603. package/dist/lib/neutral/repair-HMH476U3.mjs.map +0 -7
  604. package/dist/lib/neutral/restore-field-6CQAFOXY.mjs +0 -40
  605. package/dist/lib/neutral/restore-field-6CQAFOXY.mjs.map +0 -7
  606. package/dist/lib/neutral/restore-objects-3VINLP7C.mjs +0 -39
  607. package/dist/lib/neutral/restore-objects-3VINLP7C.mjs.map +0 -7
  608. package/dist/lib/neutral/settings-5IBSYBVU.mjs +0 -28
  609. package/dist/lib/neutral/settings-5IBSYBVU.mjs.map +0 -7
  610. package/dist/lib/neutral/share-A4WPILNF.mjs +0 -31
  611. package/dist/lib/neutral/share-A4WPILNF.mjs.map +0 -7
  612. package/dist/lib/neutral/snapshot-HBYMAPA7.mjs +0 -30
  613. package/dist/lib/neutral/snapshot-HBYMAPA7.mjs.map +0 -7
  614. package/dist/lib/neutral/spaces-ready-GWMSU72V.mjs +0 -281
  615. package/dist/lib/neutral/spaces-ready-GWMSU72V.mjs.map +0 -7
  616. package/dist/lib/neutral/state-KMH2NUAL.mjs +0 -55
  617. package/dist/lib/neutral/state-KMH2NUAL.mjs.map +0 -7
  618. package/dist/lib/neutral/testing.mjs +0 -8
  619. package/dist/lib/neutral/testing.mjs.map +0 -7
  620. package/dist/lib/neutral/translations.mjs +0 -315
  621. package/dist/lib/neutral/translations.mjs.map +0 -7
  622. package/dist/lib/neutral/types/index.mjs +0 -40
  623. package/dist/lib/neutral/types/index.mjs.map +0 -7
  624. package/dist/lib/neutral/undo-mappings-P43EAUGI.mjs +0 -68
  625. package/dist/lib/neutral/undo-mappings-P43EAUGI.mjs.map +0 -7
  626. package/dist/lib/neutral/wait-for-object-U6P2NNWY.mjs +0 -23
  627. package/dist/lib/neutral/wait-for-object-U6P2NNWY.mjs.map +0 -7
  628. package/dist/types/src/capabilities/navigation-resolver.d.ts +0 -5
  629. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +0 -1
  630. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts +0 -6
  631. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +0 -1
  632. package/dist/types/src/containers/MenuFooter/index.d.ts +0 -2
  633. package/dist/types/src/containers/MenuFooter/index.d.ts.map +0 -1
  634. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts +0 -16
  635. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts.map +0 -1
  636. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts +0 -21
  637. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts.map +0 -1
  638. package/dist/types/src/containers/TypeCollectionArticle/index.d.ts +0 -2
  639. package/dist/types/src/containers/TypeCollectionArticle/index.d.ts.map +0 -1
  640. package/src/capabilities/navigation-resolver.ts +0 -94
  641. package/src/capabilities/react-surface.tsx +0 -395
  642. package/src/containers/MenuFooter/MenuFooter.tsx +0 -33
  643. package/src/containers/MenuFooter/index.ts +0 -5
  644. package/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.tsx +0 -116
  645. package/src/containers/TypeCollectionArticle/TypeCollectionArticle.tsx +0 -162
  646. package/src/containers/TypeCollectionArticle/index.ts +0 -5
@@ -1,401 +0,0 @@
1
- import {
2
- getSpaceDisplayName
3
- } from "../chunk-52ASDNRA.mjs";
4
- import "../chunk-F5KLUP2P.mjs";
5
- import {
6
- RENAME_POPOVER
7
- } from "../chunk-C2ULK22J.mjs";
8
- import "../chunk-J5LGTIGS.mjs";
9
-
10
- // src/components/AwaitingObject/AwaitingObject.tsx
11
- import React, { useCallback, useEffect, useState } from "react";
12
- import { useOperationInvoker } from "@dxos/app-framework/ui";
13
- import { LayoutOperation } from "@dxos/app-toolkit";
14
- import { useLayout } from "@dxos/app-toolkit/ui";
15
- import { Filter, Obj } from "@dxos/echo";
16
- import { useClient } from "@dxos/react-client";
17
- import { useQuery } from "@dxos/react-client/echo";
18
- import { Button, Icon, Toast, useTranslation } from "@dxos/react-ui";
19
- import { osTranslations } from "@dxos/ui-theme";
20
- import { meta } from "#meta";
21
- import { SpaceOperation } from "#operations";
22
- var WAIT_FOR_OBJECT_TIMEOUT = 3 * 60 * 1e3;
23
- var TOAST_TIMEOUT = 4 * 60 * 1e3;
24
- var AwaitingObject = ({ id }) => {
25
- const { t } = useTranslation(meta.profile.key);
26
- const { invokePromise } = useOperationInvoker();
27
- const [open, setOpen] = useState(true);
28
- const [waiting, setWaiting] = useState(true);
29
- const [found, setFound] = useState(false);
30
- const layout = useLayout();
31
- const client = useClient();
32
- const objects = useQuery(client.spaces, Filter.everything());
33
- useEffect(() => {
34
- if (!id) {
35
- return;
36
- }
37
- const timeout = setTimeout(() => setWaiting(false), WAIT_FOR_OBJECT_TIMEOUT);
38
- return () => clearTimeout(timeout);
39
- }, [
40
- id
41
- ]);
42
- useEffect(() => {
43
- if (objects.findIndex((object) => Obj.getURI(object) === id) > -1) {
44
- setFound(true);
45
- if (layout.active.includes(id)) {
46
- setOpen(false);
47
- }
48
- }
49
- }, [
50
- id,
51
- objects,
52
- layout
53
- ]);
54
- const handleClose = useCallback(async () => invokePromise(SpaceOperation.WaitForObject, {
55
- id: void 0
56
- }), [
57
- invokePromise
58
- ]);
59
- const handleNavigate = useCallback(() => {
60
- void invokePromise(LayoutOperation.Open, {
61
- subject: [
62
- id
63
- ]
64
- });
65
- void handleClose();
66
- }, [
67
- id,
68
- handleClose,
69
- invokePromise
70
- ]);
71
- return /* @__PURE__ */ React.createElement(Toast.Root, {
72
- open,
73
- duration: TOAST_TIMEOUT,
74
- onOpenChange: setOpen
75
- }, /* @__PURE__ */ React.createElement(Toast.Title, {
76
- classNames: "flex items-center gap-2"
77
- }, found ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
78
- icon: "ph--check-circle--regular"
79
- }), /* @__PURE__ */ React.createElement("span", null, t("found-object.label"))) : waiting ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
80
- icon: "ph--circle-notch--regular",
81
- classNames: "animate-spin"
82
- }), /* @__PURE__ */ React.createElement("span", null, t("waiting-for-object.label"))) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
83
- icon: "ph--placeholder--regular"
84
- }), /* @__PURE__ */ React.createElement("span", null, t("object-not-found.label")))), /* @__PURE__ */ React.createElement(Toast.Description, null, t(found ? "found-object.description" : waiting ? "waiting-for-object.description" : "object-not-found.description")), /* @__PURE__ */ React.createElement(Toast.Actions, null, found ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Toast.Action, {
85
- altText: t("go-to-object.alt"),
86
- asChild: true
87
- }, /* @__PURE__ */ React.createElement(Button, {
88
- variant: "primary",
89
- onClick: handleNavigate
90
- }, t("go-to-object.label"))), /* @__PURE__ */ React.createElement(Toast.Close, {
91
- asChild: true
92
- }, /* @__PURE__ */ React.createElement(Button, {
93
- onClick: handleClose
94
- }, t("close.label", {
95
- ns: osTranslations
96
- })))) : /* @__PURE__ */ React.createElement(Toast.Close, {
97
- asChild: true
98
- }, /* @__PURE__ */ React.createElement(Button, {
99
- onClick: handleClose
100
- }, t(waiting ? "close.label" : "confirm.label", {
101
- ns: osTranslations
102
- })))));
103
- };
104
-
105
- // src/components/CreateObjectPanel/CreateObjectPanel.tsx
106
- import React2, { useCallback as useCallback2, useMemo } from "react";
107
- import { Obj as Obj2 } from "@dxos/echo";
108
- import { Column, Icon as Icon2, toLocalizedString, useDefaultValue, useTranslation as useTranslation2 } from "@dxos/react-ui";
109
- import { Form, omitId } from "@dxos/react-ui-form";
110
- import { Picker } from "@dxos/react-ui-list";
111
- import { SearchList, useSearchListResults } from "@dxos/react-ui-search";
112
- import { getStyles } from "@dxos/ui-theme";
113
- import { useInputSurfaceLookup } from "#hooks";
114
- import { meta as meta2 } from "#meta";
115
- var CreateObjectPanel = ({ options, spaces, typename, target, initialFormValues: initialFormValuesProp, defaultSpaceId, resolve, onTargetChange, onTypenameChange, onCreateObject }) => {
116
- const initialFormValues = useDefaultValue(initialFormValuesProp, () => ({}));
117
- const metadata = typename && resolve?.(typename);
118
- const sortedOptions = useMemo(() => [
119
- ...options
120
- ].sort((a, b) => a.label.localeCompare(b.label)), [
121
- options
122
- ]);
123
- const handleCreateObject = useCallback2(async (props) => {
124
- if (!metadata) {
125
- return;
126
- }
127
- await onCreateObject?.({
128
- metadata,
129
- data: props
130
- });
131
- }, [
132
- onCreateObject,
133
- metadata
134
- ]);
135
- const handleSelectOption = useCallback2(async (id) => {
136
- const metadata2 = resolve?.(id);
137
- if (metadata2 && !metadata2.inputSchema && !metadata2.customPanel) {
138
- await onCreateObject?.({
139
- metadata: metadata2
140
- });
141
- } else {
142
- onTypenameChange?.(id);
143
- }
144
- }, [
145
- resolve,
146
- onCreateObject
147
- ]);
148
- const inputSchema = useMemo(() => metadata && typeof metadata === "object" && metadata.inputSchema ? omitId(metadata.inputSchema) : void 0, [
149
- metadata
150
- ]);
151
- const inputSurfaceLookup = useInputSurfaceLookup({
152
- target
153
- });
154
- if (!metadata) {
155
- return /* @__PURE__ */ React2.createElement(SelectType, {
156
- options: sortedOptions,
157
- onChange: handleSelectOption
158
- });
159
- }
160
- if (!target) {
161
- return /* @__PURE__ */ React2.createElement(SelectSpace, {
162
- spaces,
163
- defaultSpaceId,
164
- onChange: onTargetChange
165
- });
166
- }
167
- if (metadata.customPanel) {
168
- const CustomPanel = metadata.customPanel;
169
- return /* @__PURE__ */ React2.createElement(CustomPanel, {
170
- target,
171
- initialFormValues,
172
- onCreateObject: (data) => handleCreateObject(data)
173
- });
174
- }
175
- if (metadata.inputSchema) {
176
- return /* @__PURE__ */ React2.createElement(Column.Center, null, /* @__PURE__ */ React2.createElement(Form.Root, {
177
- autoFocus: true,
178
- schema: inputSchema,
179
- defaultValues: initialFormValues,
180
- fieldProvider: inputSurfaceLookup,
181
- db: Obj2.isObject(target) ? Obj2.getDatabase(target) : target,
182
- onSave: handleCreateObject,
183
- testId: "create-object-form"
184
- }, /* @__PURE__ */ React2.createElement(Form.Content, null, /* @__PURE__ */ React2.createElement(Form.FieldSet, null), /* @__PURE__ */ React2.createElement(Form.Submit, null))));
185
- }
186
- return null;
187
- };
188
- CreateObjectPanel.displayName = "CreateObjectPanel";
189
- var SelectType = ({ options, onChange }) => {
190
- const { t } = useTranslation2(meta2.profile.key);
191
- const { results, handleSearch } = useSearchListResults({
192
- items: options,
193
- extract: (option) => option.label
194
- });
195
- return /* @__PURE__ */ React2.createElement(SearchList.Root, {
196
- onSearch: handleSearch
197
- }, /* @__PURE__ */ React2.createElement(SearchList.Input, {
198
- classNames: "mb-form-gap",
199
- autoFocus: true,
200
- "data-testid": "create-object-form.schema-input",
201
- placeholder: t("schema-input.placeholder")
202
- }), /* @__PURE__ */ React2.createElement(SearchList.Viewport, null, results.map((option) => /* @__PURE__ */ React2.createElement(Picker.Item, {
203
- key: option.id,
204
- value: option.id,
205
- onSelect: () => onChange(option.id),
206
- classNames: "flex gap-3 items-center px-2 py-2 rounded-xs"
207
- }, /* @__PURE__ */ React2.createElement(Icon2, {
208
- icon: option.icon ?? "ph--circle-dashed--regular",
209
- size: 8,
210
- classNames: getIconHueStyles(option.iconHue)
211
- }), /* @__PURE__ */ React2.createElement("div", {
212
- className: "flex flex-col min-w-0 grow gap-0.5"
213
- }, /* @__PURE__ */ React2.createElement("span", {
214
- className: "truncate"
215
- }, option.label), (option.plugin || option.description) && /* @__PURE__ */ React2.createElement("span", {
216
- className: "truncate text-description text-xs"
217
- }, option.plugin ? t("plugin-subtitle.label", {
218
- plugin: option.plugin
219
- }) : option.description))))));
220
- };
221
- var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
222
- const { t } = useTranslation2(meta2.profile.key);
223
- const sortedSpaces = useMemo(() => [
224
- ...spaces
225
- ].sort((a, b) => {
226
- const labelA = toLocalizedString(getSpaceDisplayName(a, {
227
- personal: a.id === defaultSpaceId
228
- }), t);
229
- const labelB = toLocalizedString(getSpaceDisplayName(b, {
230
- personal: b.id === defaultSpaceId
231
- }), t);
232
- return labelA.localeCompare(labelB);
233
- }), [
234
- spaces,
235
- defaultSpaceId,
236
- t
237
- ]);
238
- const { results, handleSearch } = useSearchListResults({
239
- items: sortedSpaces,
240
- extract: (space) => toLocalizedString(getSpaceDisplayName(space, {
241
- personal: space.id === defaultSpaceId
242
- }), t)
243
- });
244
- return /* @__PURE__ */ React2.createElement(SearchList.Root, {
245
- onSearch: handleSearch
246
- }, /* @__PURE__ */ React2.createElement(SearchList.Input, {
247
- classNames: "mb-form-gap",
248
- autoFocus: true,
249
- "data-testid": "create-object-form.space-input",
250
- placeholder: t("space-input.placeholder")
251
- }), /* @__PURE__ */ React2.createElement(SearchList.Viewport, null, results.map((space) => {
252
- return /* @__PURE__ */ React2.createElement(SearchList.Item, {
253
- key: space.id,
254
- value: space.id,
255
- label: toLocalizedString(getSpaceDisplayName(space, {
256
- personal: space.id === defaultSpaceId
257
- }), t),
258
- onSelect: () => onChange?.(space.db)
259
- });
260
- })));
261
- };
262
- var getIconHueStyles = (iconHue) => {
263
- const styles = iconHue ? getStyles(iconHue) : void 0;
264
- return styles?.text;
265
- };
266
-
267
- // src/components/ForeignKeys/ForeignKeys.tsx
268
- import React3, { useCallback as useCallback3 } from "react";
269
- import { IconButton, useTranslation as useTranslation3 } from "@dxos/react-ui";
270
- import { Listbox } from "@dxos/react-ui-list";
271
- import { meta as meta3 } from "#meta";
272
- var ForeignKeys = ({ keys, onDelete }) => {
273
- return /* @__PURE__ */ React3.createElement(Listbox.Root, null, /* @__PURE__ */ React3.createElement(Listbox.Content, {
274
- classNames: "gap-2"
275
- }, keys.map((key) => /* @__PURE__ */ React3.createElement(KeyItem, {
276
- key: key.id,
277
- forignKey: key,
278
- onDelete
279
- }))));
280
- };
281
- var KeyItem = ({ forignKey, onDelete }) => {
282
- const { t } = useTranslation3(meta3.profile.key);
283
- const handleDelete = useCallback3(() => {
284
- onDelete?.(forignKey);
285
- }, [
286
- forignKey,
287
- onDelete
288
- ]);
289
- return /* @__PURE__ */ React3.createElement(Listbox.Item, {
290
- id: forignKey.id,
291
- classNames: "px-2 gap-2"
292
- }, /* @__PURE__ */ React3.createElement("div", {
293
- className: "flex flex-col grow truncate"
294
- }, /* @__PURE__ */ React3.createElement("div", null, forignKey.source), /* @__PURE__ */ React3.createElement("div", {
295
- className: "text-description text-sm truncate"
296
- }, forignKey.id)), /* @__PURE__ */ React3.createElement(IconButton, {
297
- iconOnly: true,
298
- icon: "ph--x--regular",
299
- variant: "ghost",
300
- label: t("delete-key.button"),
301
- onClick: handleDelete
302
- }));
303
- };
304
-
305
- // src/components/SyncStatus/save-tracker.ts
306
- import { Context } from "@dxos/context";
307
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/SyncStatus/save-tracker.ts";
308
- var createClientSaveTracker = (client, cb) => {
309
- const CleanupFns = {};
310
- const state = {};
311
- const install = (spaces) => {
312
- for (const space of spaces) {
313
- if (state[space.id]) {
314
- continue;
315
- }
316
- state[space.id] = "saved";
317
- CleanupFns[space.id] = createSpaceSaveTracker(space, (s) => {
318
- state[space.id] = s;
319
- cb(Object.values(state).some((s2) => s2 === "saving") ? "saving" : "saved");
320
- });
321
- }
322
- };
323
- client.spaces.subscribe((spaces) => {
324
- install(spaces);
325
- });
326
- install(client.spaces.get());
327
- return () => {
328
- for (const unsubscribe of Object.values(CleanupFns)) {
329
- unsubscribe();
330
- }
331
- };
332
- };
333
- var createSpaceSaveTracker = (space, cb) => {
334
- const ctx = new Context(void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 31 });
335
- void space.waitUntilReady().then(() => {
336
- if (ctx.disposed) {
337
- return;
338
- }
339
- let hasUnsavedChanges = false;
340
- let lastFlushPromise;
341
- space.internal.db.saveStateChanged.on(ctx, ({ unsavedDocuments }) => {
342
- hasUnsavedChanges = unsavedDocuments.length > 0;
343
- });
344
- space.internal.db.saveStateChanged.debounce(500).on(ctx, () => {
345
- if (hasUnsavedChanges) {
346
- lastFlushPromise = void 0;
347
- cb("saving");
348
- } else {
349
- const flushPromise = space.db.flush();
350
- lastFlushPromise = flushPromise;
351
- void flushPromise.then(() => {
352
- if (lastFlushPromise === flushPromise) {
353
- cb("saved");
354
- }
355
- });
356
- }
357
- });
358
- });
359
- return () => {
360
- void ctx.dispose();
361
- };
362
- };
363
-
364
- // src/components/SyncStatus/status.ts
365
- var getStatus = ({ offline, saved, needsToUpload, needsToDownload }) => {
366
- if (!saved) {
367
- return "saving-locally";
368
- } else if (!offline && needsToDownload) {
369
- return "downloading";
370
- } else if (!offline && needsToUpload) {
371
- return "uploading";
372
- } else if (offline && !needsToUpload && !needsToDownload) {
373
- return "offline-persisted";
374
- } else {
375
- return "remote-synced";
376
- }
377
- };
378
- var getIcon = (status) => {
379
- switch (status) {
380
- case "saving-locally":
381
- return "ph--download--regular";
382
- case "downloading":
383
- return "ph--cloud-arrow-down--regular";
384
- case "uploading":
385
- return "ph--cloud-arrow-up--regular";
386
- case "offline-persisted":
387
- return "ph--check-circle--regular";
388
- case "remote-synced":
389
- return "ph--cloud-check--regular";
390
- }
391
- };
392
- export {
393
- AwaitingObject,
394
- CreateObjectPanel,
395
- ForeignKeys,
396
- RENAME_POPOVER,
397
- createClientSaveTracker,
398
- getIcon,
399
- getStatus
400
- };
401
- //# sourceMappingURL=index.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/components/AwaitingObject/AwaitingObject.tsx", "../../../../src/components/CreateObjectPanel/CreateObjectPanel.tsx", "../../../../src/components/ForeignKeys/ForeignKeys.tsx", "../../../../src/components/SyncStatus/save-tracker.ts", "../../../../src/components/SyncStatus/status.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useCallback, useEffect, useState } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { useLayout } from '@dxos/app-toolkit/ui';\nimport { Filter, Obj } from '@dxos/echo';\nimport { useClient } from '@dxos/react-client';\nimport { useQuery } from '@dxos/react-client/echo';\nimport { Button, Icon, Toast, useTranslation } from '@dxos/react-ui';\nimport { osTranslations } from '@dxos/ui-theme';\n\nimport { meta } from '#meta';\nimport { SpaceOperation } from '#operations';\n\nconst WAIT_FOR_OBJECT_TIMEOUT = 3 * 60 * 1_000;\nconst TOAST_TIMEOUT = 4 * 60 * 1_000;\n\nexport const AwaitingObject = ({ id }: { id: string }) => {\n const { t } = useTranslation(meta.profile.key);\n const { invokePromise } = useOperationInvoker();\n const [open, setOpen] = useState(true);\n const [waiting, setWaiting] = useState(true);\n const [found, setFound] = useState(false);\n const layout = useLayout();\n\n const client = useClient();\n const objects = useQuery(client.spaces, Filter.everything());\n\n useEffect(() => {\n if (!id) {\n return;\n }\n\n const timeout = setTimeout(() => setWaiting(false), WAIT_FOR_OBJECT_TIMEOUT);\n return () => clearTimeout(timeout);\n }, [id]);\n\n useEffect(() => {\n if (objects.findIndex((object) => Obj.getURI(object) === id) > -1) {\n setFound(true);\n if (layout.active.includes(id)) {\n setOpen(false);\n }\n }\n }, [id, objects, layout]);\n\n const handleClose = useCallback(\n async () => invokePromise(SpaceOperation.WaitForObject, { id: undefined }),\n [invokePromise],\n );\n\n const handleNavigate = useCallback(() => {\n void invokePromise(LayoutOperation.Open, { subject: [id] });\n void handleClose();\n }, [id, handleClose, invokePromise]);\n\n // TODO(burdon): Why are we not using LayoutOperation.AddToast?\n return (\n <Toast.Root open={open} duration={TOAST_TIMEOUT} onOpenChange={setOpen}>\n <Toast.Title classNames='flex items-center gap-2'>\n {found ? (\n <>\n <Icon icon='ph--check-circle--regular' />\n <span>{t('found-object.label')}</span>\n </>\n ) : waiting ? (\n <>\n <Icon icon='ph--circle-notch--regular' classNames='animate-spin' />\n <span>{t('waiting-for-object.label')}</span>\n </>\n ) : (\n <>\n <Icon icon='ph--placeholder--regular' />\n <span>{t('object-not-found.label')}</span>\n </>\n )}\n </Toast.Title>\n <Toast.Description>\n {t(\n found\n ? 'found-object.description'\n : waiting\n ? 'waiting-for-object.description'\n : 'object-not-found.description',\n )}\n </Toast.Description>\n <Toast.Actions>\n {found ? (\n <>\n <Toast.Action altText={t('go-to-object.alt')} asChild>\n <Button variant='primary' onClick={handleNavigate}>\n {t('go-to-object.label')}\n </Button>\n </Toast.Action>\n <Toast.Close asChild>\n <Button onClick={handleClose}>{t('close.label', { ns: osTranslations })}</Button>\n </Toast.Close>\n </>\n ) : (\n <Toast.Close asChild>\n <Button onClick={handleClose}>\n {t(waiting ? 'close.label' : 'confirm.label', { ns: osTranslations })}\n </Button>\n </Toast.Close>\n )}\n </Toast.Actions>\n </Toast.Root>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { type Collection, type Database, Obj } from '@dxos/echo';\nimport { type AnyProperties } from '@dxos/echo/internal';\nimport { type SpaceId } from '@dxos/keys';\nimport { type Space } from '@dxos/react-client/echo';\nimport { Column, Icon, toLocalizedString, useDefaultValue, useTranslation } from '@dxos/react-ui';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { Picker } from '@dxos/react-ui-list';\nimport { SearchList, useSearchListResults } from '@dxos/react-ui-search';\nimport { getStyles } from '@dxos/ui-theme';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { useInputSurfaceLookup } from '#hooks';\nimport { meta } from '#meta';\nimport { type SpaceCapabilities } from '#types';\n\nimport { getSpaceDisplayName } from '../../util';\n\n/** Display-ready option for the create object search list. */\nexport type CreateObjectOption = {\n id: string;\n label: string;\n icon?: string;\n iconHue?: string;\n /** Plugin name shown as \"{{plugin}} Plugin\" subtitle. */\n plugin?: string;\n /** Generic subtitle shown when plugin is not set. */\n description?: string;\n};\n\nexport type Metadata = SpaceCapabilities.CreateObjectEntry;\n\nexport type CreateObjectPanelProps = {\n options: CreateObjectOption[];\n spaces: Space[];\n typename?: string;\n target?: Database.Database | Collection.Collection;\n initialFormValues?: Partial<AnyProperties>;\n defaultSpaceId?: SpaceId;\n resolve?: (typename: string) => Metadata | undefined;\n onTargetChange?: (target: Database.Database) => void;\n onTypenameChange?: (typename: string) => void;\n onCreateObject?: (params: { metadata: Metadata; data?: Record<string, any> }) => MaybePromise<void>;\n};\n\nexport const CreateObjectPanel = ({\n options,\n spaces,\n typename,\n target,\n initialFormValues: initialFormValuesProp,\n defaultSpaceId,\n resolve,\n onTargetChange,\n onTypenameChange,\n onCreateObject,\n}: CreateObjectPanelProps) => {\n const initialFormValues = useDefaultValue(initialFormValuesProp, () => ({}));\n const metadata = typename && resolve?.(typename);\n\n const sortedOptions = useMemo(() => [...options].sort((a, b) => a.label.localeCompare(b.label)), [options]);\n\n const handleCreateObject = useCallback(\n async (props: Record<string, any>) => {\n if (!metadata) {\n return;\n }\n await onCreateObject?.({ metadata, data: props });\n },\n [onCreateObject, metadata],\n );\n\n const handleSelectOption = useCallback(\n async (id: string) => {\n const metadata = resolve?.(id);\n if (metadata && !metadata.inputSchema && !metadata.customPanel) {\n await onCreateObject?.({ metadata });\n } else {\n onTypenameChange?.(id);\n }\n },\n [resolve, onCreateObject],\n );\n\n const inputSchema = useMemo(\n () => (metadata && typeof metadata === 'object' && metadata.inputSchema ? omitId(metadata.inputSchema) : undefined),\n [metadata],\n );\n const inputSurfaceLookup = useInputSurfaceLookup({ target });\n\n // TODO(wittjosiah): Extends and use react-ui-form to handle variants.\n\n if (!metadata) {\n return <SelectType options={sortedOptions} onChange={handleSelectOption} />;\n }\n\n if (!target) {\n return <SelectSpace spaces={spaces} defaultSpaceId={defaultSpaceId} onChange={onTargetChange} />;\n }\n\n if (metadata.customPanel) {\n const CustomPanel = metadata.customPanel;\n return (\n <CustomPanel\n target={target}\n initialFormValues={initialFormValues}\n onCreateObject={(data) => handleCreateObject(data)}\n />\n );\n }\n\n if (metadata.inputSchema) {\n // The host (Dialog.Body) already owns the gutter Column. Use Column.Center to place the form in\n // the same center column as the dialog title — NOT a subgrid wrapper or Form.Viewport's own\n // Column.Root. Subgrid can't propagate through Form.Root's `display: contents` wrapper (the form\n // would fall back to a stray track and inset), and a nested Column.Root would double-gutter it.\n return (\n <Column.Center>\n <Form.Root\n autoFocus\n schema={inputSchema}\n defaultValues={initialFormValues}\n fieldProvider={inputSurfaceLookup}\n db={Obj.isObject(target) ? Obj.getDatabase(target) : target}\n onSave={handleCreateObject}\n testId='create-object-form'\n >\n <Form.Content>\n <Form.FieldSet />\n <Form.Submit />\n </Form.Content>\n </Form.Root>\n </Column.Center>\n );\n }\n\n return null;\n};\n\nCreateObjectPanel.displayName = 'CreateObjectPanel';\n\ntype SelectTypeProps = Pick<CreateObjectPanelProps, 'options'> & {\n onChange: (id: string) => void;\n};\n\nconst SelectType = ({ options, onChange }: SelectTypeProps) => {\n const { t } = useTranslation(meta.profile.key);\n\n const { results, handleSearch } = useSearchListResults({\n items: options,\n extract: (option) => option.label,\n });\n\n return (\n <SearchList.Root onSearch={handleSearch}>\n <SearchList.Input\n classNames='mb-form-gap'\n autoFocus\n data-testid='create-object-form.schema-input'\n placeholder={t('schema-input.placeholder')}\n />\n <SearchList.Viewport>\n {results.map((option) => (\n <Picker.Item\n key={option.id}\n value={option.id}\n onSelect={() => onChange(option.id)}\n classNames='flex gap-3 items-center px-2 py-2 rounded-xs'\n >\n <Icon\n icon={option.icon ?? 'ph--circle-dashed--regular'}\n size={8}\n classNames={getIconHueStyles(option.iconHue)}\n />\n <div className='flex flex-col min-w-0 grow gap-0.5'>\n <span className='truncate'>{option.label}</span>\n {(option.plugin || option.description) && (\n <span className='truncate text-description text-xs'>\n {option.plugin ? t('plugin-subtitle.label', { plugin: option.plugin }) : option.description}\n </span>\n )}\n </div>\n </Picker.Item>\n ))}\n </SearchList.Viewport>\n </SearchList.Root>\n );\n};\n\ntype SelectSpaceProps = Pick<CreateObjectPanelProps, 'spaces' | 'defaultSpaceId'> & {\n onChange?: (db: Database.Database) => void;\n};\n\nconst SelectSpace = ({ spaces, defaultSpaceId, onChange }: SelectSpaceProps) => {\n const { t } = useTranslation(meta.profile.key);\n\n const sortedSpaces = useMemo(\n () =>\n [...spaces].sort((a, b) => {\n const labelA = toLocalizedString(\n getSpaceDisplayName(a, {\n personal: a.id === defaultSpaceId,\n }),\n t,\n );\n const labelB = toLocalizedString(\n getSpaceDisplayName(b, {\n personal: b.id === defaultSpaceId,\n }),\n t,\n );\n return labelA.localeCompare(labelB);\n }),\n [spaces, defaultSpaceId, t],\n );\n\n const { results, handleSearch } = useSearchListResults({\n items: sortedSpaces,\n extract: (space) =>\n toLocalizedString(\n getSpaceDisplayName(space, {\n personal: space.id === defaultSpaceId,\n }),\n t,\n ),\n });\n\n return (\n <SearchList.Root onSearch={handleSearch}>\n <SearchList.Input\n classNames='mb-form-gap'\n autoFocus\n data-testid='create-object-form.space-input'\n placeholder={t('space-input.placeholder')}\n />\n <SearchList.Viewport>\n {results.map((space) => {\n return (\n <SearchList.Item\n key={space.id}\n value={space.id}\n label={toLocalizedString(getSpaceDisplayName(space, { personal: space.id === defaultSpaceId }), t)}\n onSelect={() => onChange?.(space.db)}\n />\n );\n })}\n </SearchList.Viewport>\n </SearchList.Root>\n );\n};\n\nconst getIconHueStyles = (iconHue?: string): string | undefined => {\n const styles = iconHue ? getStyles(iconHue) : undefined;\n return styles?.text;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { type Key } from '@dxos/echo';\nimport { IconButton, useTranslation } from '@dxos/react-ui';\nimport { Listbox } from '@dxos/react-ui-list';\n\nimport { meta } from '#meta';\n\nexport type ForeignKeysProps = {\n keys: Key.ForeignKey[];\n onDelete?: (key: Key.ForeignKey) => void;\n};\n\n// TODO(wittjosiah): This is a clone of `TokenManager`. Consider a form variant for arrays of read-only objects.\nexport const ForeignKeys = ({ keys, onDelete }: ForeignKeysProps) => {\n return (\n <Listbox.Root>\n <Listbox.Content classNames='gap-2'>\n {keys.map((key) => (\n <KeyItem key={key.id} forignKey={key} onDelete={onDelete} />\n ))}\n </Listbox.Content>\n </Listbox.Root>\n );\n};\n\ntype KeyItemProps = {\n forignKey: Key.ForeignKey;\n onDelete?: (key: Key.ForeignKey) => void;\n};\n\nconst KeyItem = ({ forignKey, onDelete }: KeyItemProps) => {\n const { t } = useTranslation(meta.profile.key);\n\n const handleDelete = useCallback(() => {\n onDelete?.(forignKey);\n }, [forignKey, onDelete]);\n\n return (\n <Listbox.Item id={forignKey.id} classNames='px-2 gap-2'>\n <div className='flex flex-col grow truncate'>\n <div>{forignKey.source}</div>\n <div className='text-description text-sm truncate'>{forignKey.id}</div>\n </div>\n <IconButton\n iconOnly\n icon='ph--x--regular'\n variant='ghost'\n label={t('delete-key.button')}\n onClick={handleDelete}\n />\n </Listbox.Item>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type CleanupFn } from '@dxos/async';\nimport { type Client } from '@dxos/client';\nimport { type Space } from '@dxos/client/echo';\nimport { Context } from '@dxos/context';\nimport { type SpaceId } from '@dxos/keys';\n\nexport const createClientSaveTracker = (client: Client, cb: (state: 'saved' | 'saving') => void) => {\n const CleanupFns: Record<SpaceId, CleanupFn> = {};\n const state: Record<SpaceId, 'saved' | 'saving'> = {};\n\n const install = (spaces: Space[]) => {\n for (const space of spaces) {\n if (state[space.id]) {\n continue;\n }\n\n state[space.id] = 'saved';\n CleanupFns[space.id] = createSpaceSaveTracker(space, (s) => {\n state[space.id] = s;\n cb(Object.values(state).some((s) => s === 'saving') ? 'saving' : 'saved');\n });\n }\n };\n client.spaces.subscribe((spaces) => {\n install(spaces);\n });\n install(client.spaces.get());\n\n return () => {\n for (const unsubscribe of Object.values(CleanupFns)) {\n unsubscribe();\n }\n };\n};\n\nconst createSpaceSaveTracker = (space: Space, cb: (state: 'saved' | 'saving') => void): CleanupFn => {\n const ctx = new Context();\n\n void space.waitUntilReady().then(() => {\n if (ctx.disposed) {\n return;\n }\n\n let hasUnsavedChanges = false;\n let lastFlushPromise: Promise<void> | undefined;\n space.internal.db.saveStateChanged.on(ctx, ({ unsavedDocuments }) => {\n hasUnsavedChanges = unsavedDocuments.length > 0;\n });\n space.internal.db.saveStateChanged.debounce(500).on(ctx, () => {\n if (hasUnsavedChanges) {\n lastFlushPromise = undefined;\n cb('saving');\n } else {\n const flushPromise = space.db.flush();\n lastFlushPromise = flushPromise;\n void flushPromise.then(() => {\n if (lastFlushPromise === flushPromise) {\n cb('saved');\n }\n });\n }\n });\n });\n\n return () => {\n void ctx.dispose();\n };\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nexport type Status = 'saving-locally' | 'downloading' | 'uploading' | 'offline-persisted' | 'remote-synced';\n\nexport const getStatus = ({\n offline,\n saved,\n needsToUpload,\n needsToDownload,\n}: {\n offline: boolean;\n saved: boolean;\n needsToUpload: boolean;\n needsToDownload: boolean;\n}): Status => {\n if (!saved) {\n return 'saving-locally';\n } else if (!offline && needsToDownload) {\n return 'downloading';\n } else if (!offline && needsToUpload) {\n return 'uploading';\n } else if (offline && !needsToUpload && !needsToDownload) {\n return 'offline-persisted';\n } else {\n return 'remote-synced';\n }\n};\n\nexport const getIcon = (status: Status) => {\n switch (status) {\n case 'saving-locally':\n return 'ph--download--regular';\n case 'downloading':\n return 'ph--cloud-arrow-down--regular';\n case 'uploading':\n return 'ph--cloud-arrow-up--regular';\n case 'offline-persisted':\n return 'ph--check-circle--regular';\n case 'remote-synced':\n return 'ph--cloud-check--regular';\n }\n};\n"],
5
- "mappings": "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",
6
- "names": ["React", "useCallback", "useEffect", "useState", "useOperationInvoker", "LayoutOperation", "useLayout", "Filter", "Obj", "useClient", "useQuery", "Button", "Icon", "Toast", "useTranslation", "osTranslations", "meta", "SpaceOperation", "WAIT_FOR_OBJECT_TIMEOUT", "TOAST_TIMEOUT", "AwaitingObject", "id", "t", "profile", "key", "invokePromise", "open", "setOpen", "waiting", "setWaiting", "found", "setFound", "layout", "client", "objects", "spaces", "everything", "timeout", "setTimeout", "clearTimeout", "findIndex", "object", "getURI", "active", "includes", "handleClose", "WaitForObject", "undefined", "handleNavigate", "Open", "subject", "Root", "duration", "onOpenChange", "Title", "classNames", "icon", "span", "Description", "Actions", "Action", "altText", "asChild", "variant", "onClick", "Close", "ns", "React", "useCallback", "useMemo", "Obj", "Column", "Icon", "toLocalizedString", "useDefaultValue", "useTranslation", "Form", "omitId", "Picker", "SearchList", "useSearchListResults", "getStyles", "useInputSurfaceLookup", "meta", "CreateObjectPanel", "options", "spaces", "typename", "target", "initialFormValues", "initialFormValuesProp", "defaultSpaceId", "resolve", "onTargetChange", "onTypenameChange", "onCreateObject", "useDefaultValue", "metadata", "sortedOptions", "useMemo", "sort", "a", "b", "label", "localeCompare", "handleCreateObject", "useCallback", "props", "data", "handleSelectOption", "id", "inputSchema", "customPanel", "omitId", "undefined", "inputSurfaceLookup", "useInputSurfaceLookup", "React", "SelectType", "onChange", "SelectSpace", "CustomPanel", "Column", "Center", "Form", "Root", "autoFocus", "schema", "defaultValues", "fieldProvider", "db", "Obj", "isObject", "getDatabase", "onSave", "testId", "Content", "FieldSet", "Submit", "displayName", "t", "useTranslation", "meta", "profile", "key", "results", "handleSearch", "useSearchListResults", "items", "extract", "option", "SearchList", "onSearch", "Input", "classNames", "data-testid", "placeholder", "Viewport", "map", "Picker", "Item", "value", "onSelect", "Icon", "icon", "size", "getIconHueStyles", "iconHue", "div", "className", "span", "plugin", "description", "sortedSpaces", "labelA", "toLocalizedString", "getSpaceDisplayName", "personal", "labelB", "space", "styles", "getStyles", "text", "React", "useCallback", "IconButton", "useTranslation", "Listbox", "meta", "ForeignKeys", "keys", "onDelete", "Root", "Content", "classNames", "map", "key", "KeyItem", "id", "forignKey", "t", "profile", "handleDelete", "Item", "div", "className", "source", "iconOnly", "icon", "variant", "label", "onClick", "Context", "createClientSaveTracker", "state", "install", "spaces", "space", "CleanupFns", "Object", "values", "s", "client", "unsubscribe", "then", "disposed", "hasUnsavedChanges", "saveStateChanged", "debounce", "on", "lastFlushPromise", "undefined", "cb", "flushPromise", "getStatus", "offline", "saved", "needsToUpload", "needsToDownload", "getIcon", "status"]
7
- }
@@ -1,16 +0,0 @@
1
- import {
2
- CREATE_OBJECT_DIALOG,
3
- CREATE_SPACE_DIALOG,
4
- IMPORT_SPACE_DIALOG,
5
- JOIN_DIALOG,
6
- RENAME_POPOVER
7
- } from "./chunk-C2ULK22J.mjs";
8
- import "./chunk-J5LGTIGS.mjs";
9
- export {
10
- CREATE_OBJECT_DIALOG,
11
- CREATE_SPACE_DIALOG,
12
- IMPORT_SPACE_DIALOG,
13
- JOIN_DIALOG,
14
- RENAME_POPOVER
15
- };
16
- //# sourceMappingURL=constants.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
@@ -1,55 +0,0 @@
1
- import "../chunk-J5LGTIGS.mjs";
2
-
3
- // src/containers/index.ts
4
- import { lazy } from "react";
5
- var CollectionArticle = lazy(() => import("../CollectionArticle-BMH7SZ7Q.mjs"));
6
- var CollectionSection = lazy(() => import("../CollectionSection-BLYTGOKH.mjs"));
7
- var CreateObjectDialog = lazy(() => import("../CreateObjectDialog-5454N3FJ.mjs"));
8
- var CreateSpaceDialog = lazy(() => import("../CreateSpaceDialog-WWNUTLVK.mjs"));
9
- var DefaultProperties = lazy(() => import("../DefaultProperties-5SAWQC6I.mjs"));
10
- var ImportSpaceDialog = lazy(() => import("../ImportSpaceDialog-CSSRTFAO.mjs"));
11
- var InlineSyncStatus = lazy(() => import("../InlineSyncStatus-UOUTAPCU.mjs"));
12
- var JoinDialog = lazy(() => import("../JoinDialog-ATNUCNL2.mjs"));
13
- var MembersContainer = lazy(() => import("../MembersContainer-C4ZTP6ZW.mjs"));
14
- var MenuFooter = lazy(() => import("../MenuFooter-FWE5LFM4.mjs"));
15
- var ObjectCardStack = lazy(() => import("../ObjectCardStack-DHVDRNRK.mjs"));
16
- var RecordArticle = lazy(() => import("../RecordArticle-JSORXRAA.mjs"));
17
- var RelatedArticle = lazy(() => import("../RelatedArticle-Z777WVDW.mjs"));
18
- var RenamePopover = lazy(() => import("../RenamePopover-AZT2KPOF.mjs"));
19
- var SchemaContainer = lazy(() => import("../SchemaContainer-4GJKQBXM.mjs"));
20
- var SmallPresenceLive = lazy(() => import("../SmallPresenceLive-FW3AMEY5.mjs"));
21
- var SpacePresence = lazy(() => import("../SpacePresence-T37WH43Y.mjs"));
22
- var SpaceHomeArticle = lazy(() => import("../SpaceHomeArticle-Y47TLZ72.mjs"));
23
- var SpaceHomeRecent = lazy(() => import("../SpaceHomeRecent-S57AO3EV.mjs"));
24
- var SpaceSettings = lazy(() => import("../SpaceSettings-6CZF7GEO.mjs"));
25
- var SpaceSettingsContainer = lazy(() => import("../SpaceSettingsContainer-72CJWELM.mjs"));
26
- var SyncStatus = lazy(() => import("../SyncStatus-J7CHLO5O.mjs"));
27
- var TypeCollectionArticle = lazy(() => import("../TypeCollectionArticle-W76ADS2G.mjs"));
28
- var ViewEditor = lazy(() => import("../ViewEditor-QXRUOKXR.mjs"));
29
- export {
30
- CollectionArticle,
31
- CollectionSection,
32
- CreateObjectDialog,
33
- CreateSpaceDialog,
34
- DefaultProperties,
35
- ImportSpaceDialog,
36
- InlineSyncStatus,
37
- JoinDialog,
38
- MembersContainer,
39
- MenuFooter,
40
- ObjectCardStack,
41
- RecordArticle,
42
- RelatedArticle,
43
- RenamePopover,
44
- SchemaContainer,
45
- SmallPresenceLive,
46
- SpaceHomeArticle,
47
- SpaceHomeRecent,
48
- SpacePresence,
49
- SpaceSettings,
50
- SpaceSettingsContainer,
51
- SyncStatus,
52
- TypeCollectionArticle,
53
- ViewEditor
54
- };
55
- //# sourceMappingURL=index.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/containers/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport type { CreateObjectDialogProps } from './CreateObjectDialog';\nexport type { RenameSubject } from './RenamePopover';\n\nexport const CollectionArticle: ComponentType<any> = lazy(() => import('./CollectionArticle'));\nexport const CollectionSection: ComponentType<any> = lazy(() => import('./CollectionSection'));\nexport const CreateObjectDialog: ComponentType<any> = lazy(() => import('./CreateObjectDialog'));\nexport const CreateSpaceDialog: ComponentType<any> = lazy(() => import('./CreateSpaceDialog'));\nexport const DefaultProperties: ComponentType<any> = lazy(() => import('./DefaultProperties'));\nexport const ImportSpaceDialog: ComponentType<any> = lazy(() => import('./ImportSpaceDialog'));\nexport const InlineSyncStatus: ComponentType<any> = lazy(() => import('./InlineSyncStatus'));\nexport const JoinDialog: ComponentType<any> = lazy(() => import('./JoinDialog'));\nexport const MembersContainer: ComponentType<any> = lazy(() => import('./MembersContainer'));\nexport const MenuFooter: ComponentType<any> = lazy(() => import('./MenuFooter'));\nexport const ObjectCardStack: ComponentType<any> = lazy(() => import('./ObjectCardStack'));\nexport const RecordArticle: ComponentType<any> = lazy(() => import('./RecordArticle'));\nexport const RelatedArticle: ComponentType<any> = lazy(() => import('./RelatedArticle'));\nexport const RenamePopover: ComponentType<any> = lazy(() => import('./RenamePopover'));\nexport const SchemaContainer: ComponentType<any> = lazy(() => import('./SchemaContainer'));\nexport const SmallPresenceLive: ComponentType<any> = lazy(() => import('./SmallPresenceLive'));\nexport const SpacePresence: ComponentType<any> = lazy(() => import('./SpacePresence'));\nexport const SpaceHomeArticle: ComponentType<any> = lazy(() => import('./SpaceHomeArticle'));\nexport const SpaceHomeRecent: ComponentType<any> = lazy(() => import('./SpaceHomeRecent'));\nexport const SpaceSettings: ComponentType<any> = lazy(() => import('./SpaceSettings'));\nexport const SpaceSettingsContainer: ComponentType<any> = lazy(() => import('./SpaceSettingsContainer'));\nexport const SyncStatus: ComponentType<any> = lazy(() => import('./SyncStatus'));\nexport const TypeCollectionArticle: ComponentType<any> = lazy(() => import('./TypeCollectionArticle'));\nexport const ViewEditor: ComponentType<any> = lazy(() => import('./ViewEditor'));\n"],
5
- "mappings": ";;;AAIA,SAA6BA,YAAY;AAKlC,IAAMC,oBAAwCD,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAME,oBAAwCF,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAMG,qBAAyCH,KAAK,MAAM,OAAO,oCAAA,CAAA;AACjE,IAAMI,oBAAwCJ,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAMK,oBAAwCL,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAMM,oBAAwCN,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAMO,mBAAuCP,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC/D,IAAMQ,aAAiCR,KAAK,MAAM,OAAO,4BAAA,CAAA;AACzD,IAAMS,mBAAuCT,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC/D,IAAMU,aAAiCV,KAAK,MAAM,OAAO,4BAAA,CAAA;AACzD,IAAMW,kBAAsCX,KAAK,MAAM,OAAO,iCAAA,CAAA;AAC9D,IAAMY,gBAAoCZ,KAAK,MAAM,OAAO,+BAAA,CAAA;AAC5D,IAAMa,iBAAqCb,KAAK,MAAM,OAAO,gCAAA,CAAA;AAC7D,IAAMc,gBAAoCd,KAAK,MAAM,OAAO,+BAAA,CAAA;AAC5D,IAAMe,kBAAsCf,KAAK,MAAM,OAAO,iCAAA,CAAA;AAC9D,IAAMgB,oBAAwChB,KAAK,MAAM,OAAO,mCAAA,CAAA;AAChE,IAAMiB,gBAAoCjB,KAAK,MAAM,OAAO,+BAAA,CAAA;AAC5D,IAAMkB,mBAAuClB,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC/D,IAAMmB,kBAAsCnB,KAAK,MAAM,OAAO,iCAAA,CAAA;AAC9D,IAAMoB,gBAAoCpB,KAAK,MAAM,OAAO,+BAAA,CAAA;AAC5D,IAAMqB,yBAA6CrB,KAAK,MAAM,OAAO,wCAAA,CAAA;AACrE,IAAMsB,aAAiCtB,KAAK,MAAM,OAAO,4BAAA,CAAA;AACzD,IAAMuB,wBAA4CvB,KAAK,MAAM,OAAO,uCAAA,CAAA;AACpE,IAAMwB,aAAiCxB,KAAK,MAAM,OAAO,4BAAA,CAAA;",
6
- "names": ["lazy", "CollectionArticle", "CollectionSection", "CreateObjectDialog", "CreateSpaceDialog", "DefaultProperties", "ImportSpaceDialog", "InlineSyncStatus", "JoinDialog", "MembersContainer", "MenuFooter", "ObjectCardStack", "RecordArticle", "RelatedArticle", "RenamePopover", "SchemaContainer", "SmallPresenceLive", "SpacePresence", "SpaceHomeArticle", "SpaceHomeRecent", "SpaceSettings", "SpaceSettingsContainer", "SyncStatus", "TypeCollectionArticle", "ViewEditor"]
7
- }
@@ -1,75 +0,0 @@
1
- import {
2
- SpaceOperationConfig
3
- } from "./chunk-G2KHP7FX.mjs";
4
- import {
5
- SpaceOperation
6
- } from "./chunk-LMUG6PEJ.mjs";
7
- import {
8
- SpaceCapabilities,
9
- SpaceEvents
10
- } from "./chunk-F5KLUP2P.mjs";
11
- import "./chunk-J5LGTIGS.mjs";
12
-
13
- // src/operations/create.ts
14
- import * as Effect from "effect/Effect";
15
- import { Capability, Plugin } from "@dxos/app-framework";
16
- import { AppAnnotation } from "@dxos/app-toolkit";
17
- import { Operation } from "@dxos/compute";
18
- import { Annotation, Collection, Obj, Ref } from "@dxos/echo";
19
- import { Migrations, MigrationVersionAnnotation } from "@dxos/migrations";
20
- import { ClientCapabilities } from "@dxos/plugin-client";
21
- import { ObservabilityOperation } from "@dxos/plugin-observability";
22
- import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
23
- import { iconValues } from "@dxos/react-ui-pickers/icons";
24
- import { hues } from "@dxos/ui-theme";
25
- var handler = SpaceOperation.Create.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ name, hue: hue_, icon: icon_, edgeReplication }) {
26
- const client = yield* Capability.get(ClientCapabilities.Client);
27
- const hue = hue_ ?? hues[Math.floor(Math.random() * hues.length)];
28
- const icon = icon_ ?? iconValues[Math.floor(Math.random() * iconValues.length)];
29
- const space = yield* Effect.promise(() => client.spaces.create({
30
- name,
31
- hue,
32
- icon
33
- }));
34
- if (edgeReplication) {
35
- yield* Effect.promise(() => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED));
36
- }
37
- yield* Effect.promise(() => space.waitUntilReady());
38
- const collection = Obj.make(Collection.Collection, {
39
- objects: []
40
- });
41
- Obj.update(space.properties, (properties) => {
42
- Annotation.set(properties, AppAnnotation.RootCollectionAnnotation, Ref.make(collection));
43
- if (Migrations.targetVersion) {
44
- Annotation.set(properties, MigrationVersionAnnotation, Migrations.targetVersion);
45
- }
46
- });
47
- yield* Plugin.activate(SpaceEvents.SpaceCreated);
48
- const onCreateSpaceCallbacks = yield* Capability.getAll(SpaceCapabilities.OnCreateSpace);
49
- yield* Effect.all(onCreateSpaceCallbacks.map((onCreateSpace) => onCreateSpace({
50
- space,
51
- isDefault: false,
52
- rootCollection: collection
53
- })));
54
- const { observability } = yield* Capability.get(SpaceOperationConfig);
55
- if (observability) {
56
- yield* Operation.schedule(ObservabilityOperation.SendEvent, {
57
- name: "space.create",
58
- properties: {
59
- spaceId: space.id
60
- }
61
- });
62
- }
63
- return {
64
- id: space.id,
65
- subject: [
66
- space.id
67
- ],
68
- space
69
- };
70
- })));
71
- var create_default = handler;
72
- export {
73
- create_default as default
74
- };
75
- //# sourceMappingURL=create-QZ47FHQU.mjs.map