@dxos/plugin-space 0.8.4-main.a4bbb77 → 0.8.4-main.ae835ea

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 (224) hide show
  1. package/dist/lib/browser/{CollectionMain-AX7KKXWP.mjs → CollectionMain-HTKSZCRR.mjs} +2 -2
  2. package/dist/lib/browser/ObjectDetailsPanel-5B45G744.mjs +145 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-5B45G744.mjs.map +7 -0
  4. package/dist/lib/browser/ObjectSettings-UFTKBP7B.mjs +146 -0
  5. package/dist/lib/browser/ObjectSettings-UFTKBP7B.mjs.map +7 -0
  6. package/dist/lib/browser/RecordMain-BCSXTSEB.mjs +99 -0
  7. package/dist/lib/browser/RecordMain-BCSXTSEB.mjs.map +7 -0
  8. package/dist/lib/browser/{app-graph-builder-W7RVDAUA.mjs → app-graph-builder-QJFO4ANM.mjs} +37 -34
  9. package/dist/lib/browser/app-graph-builder-QJFO4ANM.mjs.map +7 -0
  10. package/dist/lib/browser/{app-graph-serializer-VLHVTDX4.mjs → app-graph-serializer-3R5NVV7U.mjs} +5 -5
  11. package/dist/lib/browser/{chunk-E2I747A7.mjs → chunk-2NS3VPSY.mjs} +2 -2
  12. package/dist/lib/browser/chunk-2NS3VPSY.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-ZIZ2JLW6.mjs → chunk-4V4JNJ33.mjs} +12 -4
  14. package/dist/lib/browser/chunk-4V4JNJ33.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-2BFVC5K6.mjs → chunk-ENBBJSNE.mjs} +230 -254
  16. package/dist/lib/browser/chunk-ENBBJSNE.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-HS2VD6DN.mjs +166 -0
  18. package/dist/lib/browser/chunk-HS2VD6DN.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-PN27K4I7.mjs → chunk-OWNBEI5J.mjs} +23 -14
  20. package/dist/lib/browser/chunk-OWNBEI5J.mjs.map +7 -0
  21. package/dist/lib/browser/{chunk-JCHSUOPF.mjs → chunk-SLDQWMQ2.mjs} +12 -7
  22. package/dist/lib/browser/chunk-SLDQWMQ2.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-VZBIIYFM.mjs +16 -0
  24. package/dist/lib/browser/chunk-VZBIIYFM.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-EIXZABXD.mjs → chunk-WJXU4GKV.mjs} +2 -2
  26. package/dist/lib/browser/index.mjs +31 -31
  27. package/dist/lib/browser/index.mjs.map +3 -3
  28. package/dist/lib/browser/{intent-resolver-HA7DPAUE.mjs → intent-resolver-MBVOLXFQ.mjs} +30 -23
  29. package/dist/lib/browser/intent-resolver-MBVOLXFQ.mjs.map +7 -0
  30. package/dist/lib/browser/meta.json +1 -1
  31. package/dist/lib/browser/{react-root-YQUJU64P.mjs → react-root-NKEKCEYM.mjs} +7 -7
  32. package/dist/lib/browser/{react-surface-HTXYMRSW.mjs → react-surface-PYSN2MBY.mjs} +15 -46
  33. package/dist/lib/browser/react-surface-PYSN2MBY.mjs.map +7 -0
  34. package/dist/lib/browser/{schema-defs-R56ZDBZ7.mjs → schema-defs-DWYK7TYW.mjs} +3 -3
  35. package/dist/lib/browser/{settings-5XPQMSPO.mjs → settings-ZUCC3ZLB.mjs} +3 -3
  36. package/dist/lib/browser/{spaces-ready-YY77ANIF.mjs → spaces-ready-HTWWJHLR.mjs} +6 -6
  37. package/dist/lib/browser/spaces-ready-HTWWJHLR.mjs.map +7 -0
  38. package/dist/lib/browser/{state-Y4RVCG4A.mjs → state-ISVAKMO7.mjs} +3 -3
  39. package/dist/lib/browser/types/index.mjs +2 -2
  40. package/dist/lib/node-esm/{CollectionMain-EU57SRYK.mjs → CollectionMain-OUHGG6OC.mjs} +2 -2
  41. package/dist/lib/node-esm/ObjectDetailsPanel-4SDHQVQU.mjs +146 -0
  42. package/dist/lib/node-esm/ObjectDetailsPanel-4SDHQVQU.mjs.map +7 -0
  43. package/dist/lib/node-esm/ObjectSettings-EU6F43RP.mjs +147 -0
  44. package/dist/lib/node-esm/ObjectSettings-EU6F43RP.mjs.map +7 -0
  45. package/dist/lib/node-esm/RecordMain-SD76DGOR.mjs +100 -0
  46. package/dist/lib/node-esm/RecordMain-SD76DGOR.mjs.map +7 -0
  47. package/dist/lib/node-esm/{app-graph-builder-5ZJJUMQI.mjs → app-graph-builder-B23W62HY.mjs} +37 -34
  48. package/dist/lib/node-esm/app-graph-builder-B23W62HY.mjs.map +7 -0
  49. package/dist/lib/node-esm/{app-graph-serializer-EZJSGJUT.mjs → app-graph-serializer-3Z3EXEEF.mjs} +5 -5
  50. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs +18 -0
  51. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs.map +7 -0
  52. package/dist/lib/node-esm/{chunk-5XRYHWL7.mjs → chunk-G4PDWB7G.mjs} +12 -4
  53. package/dist/lib/node-esm/chunk-G4PDWB7G.mjs.map +7 -0
  54. package/dist/lib/node-esm/{chunk-SVFKU7EW.mjs → chunk-H4JILUJK.mjs} +2 -2
  55. package/dist/lib/node-esm/{chunk-BLPXWPLB.mjs → chunk-KKPCCA5O.mjs} +230 -254
  56. package/dist/lib/node-esm/chunk-KKPCCA5O.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-PM4ZIGKC.mjs +167 -0
  58. package/dist/lib/node-esm/chunk-PM4ZIGKC.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-XDQXUZMK.mjs → chunk-XEVIWD3O.mjs} +23 -14
  60. package/dist/lib/node-esm/chunk-XEVIWD3O.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-6WNZW6KT.mjs → chunk-YFQXFQGT.mjs} +12 -7
  62. package/dist/lib/node-esm/chunk-YFQXFQGT.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-IJVBBVCL.mjs → chunk-ZLMFLI7G.mjs} +2 -2
  64. package/dist/lib/node-esm/chunk-ZLMFLI7G.mjs.map +7 -0
  65. package/dist/lib/node-esm/index.mjs +31 -31
  66. package/dist/lib/node-esm/index.mjs.map +3 -3
  67. package/dist/lib/node-esm/{intent-resolver-LQNHMPIX.mjs → intent-resolver-IWI47NTW.mjs} +30 -23
  68. package/dist/lib/node-esm/intent-resolver-IWI47NTW.mjs.map +7 -0
  69. package/dist/lib/node-esm/meta.json +1 -1
  70. package/dist/lib/node-esm/{react-root-UTLJEIKE.mjs → react-root-LX7SIG6M.mjs} +7 -7
  71. package/dist/lib/node-esm/{react-surface-LYDYON3U.mjs → react-surface-6SVGOZNJ.mjs} +15 -46
  72. package/dist/lib/node-esm/react-surface-6SVGOZNJ.mjs.map +7 -0
  73. package/dist/lib/node-esm/{schema-defs-7IMJPIWS.mjs → schema-defs-EOG2UPJU.mjs} +3 -3
  74. package/dist/lib/node-esm/{settings-XBSK5KHH.mjs → settings-ZDJNLFGW.mjs} +3 -3
  75. package/dist/lib/node-esm/{spaces-ready-YX4IHT4P.mjs → spaces-ready-VUGYPF4L.mjs} +6 -6
  76. package/dist/lib/node-esm/spaces-ready-VUGYPF4L.mjs.map +7 -0
  77. package/dist/lib/node-esm/{state-HOHAVPUO.mjs → state-QZ4Q6ZRL.mjs} +3 -3
  78. package/dist/lib/node-esm/types/index.mjs +2 -2
  79. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  80. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  81. package/dist/types/src/capabilities/capabilities.d.ts +2 -1
  82. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  83. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  85. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  86. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +80 -0
  87. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  88. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +1 -1
  89. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  90. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  91. package/dist/types/src/components/MembersContainer.stories.d.ts +80 -0
  92. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  93. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
  94. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
  95. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
  96. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
  97. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
  98. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
  99. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  100. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  101. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1500 -0
  102. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
  103. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
  104. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  105. package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
  106. package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
  107. package/dist/types/src/components/RecordMain.d.ts +4 -3
  108. package/dist/types/src/components/RecordMain.d.ts.map +1 -1
  109. package/dist/types/src/components/RecordMain.stories.d.ts +1667 -0
  110. package/dist/types/src/components/RecordMain.stories.d.ts.map +1 -0
  111. package/dist/types/src/components/SpacePresence.stories.d.ts +80 -0
  112. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  113. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  114. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +80 -0
  115. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  116. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  117. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +81 -1
  118. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  119. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  120. package/dist/types/src/components/index.d.ts +4 -6
  121. package/dist/types/src/components/index.d.ts.map +1 -1
  122. package/dist/types/src/hooks/index.d.ts +1 -0
  123. package/dist/types/src/hooks/index.d.ts.map +1 -1
  124. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
  125. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  126. package/dist/types/src/hooks/usePath.d.ts +1 -1
  127. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  128. package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
  129. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
  130. package/dist/types/src/meta.d.ts.map +1 -1
  131. package/dist/types/src/translations.d.ts +80 -0
  132. package/dist/types/src/translations.d.ts.map +1 -1
  133. package/dist/types/src/types/types.d.ts +6 -4
  134. package/dist/types/src/types/types.d.ts.map +1 -1
  135. package/dist/types/src/util.d.ts +4 -1
  136. package/dist/types/src/util.d.ts.map +1 -1
  137. package/dist/types/tsconfig.tsbuildinfo +1 -1
  138. package/package.json +50 -48
  139. package/src/SpacePlugin.ts +7 -13
  140. package/src/capabilities/app-graph-builder.ts +29 -24
  141. package/src/capabilities/capabilities.ts +7 -2
  142. package/src/capabilities/intent-resolver.ts +13 -8
  143. package/src/capabilities/react-surface.tsx +6 -77
  144. package/src/capabilities/spaces-ready.ts +1 -1
  145. package/src/components/CreateDialog/CreateObjectDialog.tsx +5 -4
  146. package/src/components/CreateDialog/CreateObjectPanel.tsx +2 -2
  147. package/src/components/CreateDialog/CreateSpaceDialog.tsx +2 -1
  148. package/src/components/MembersContainer.tsx +1 -1
  149. package/src/components/{ObjectDetailsPanel.tsx → ObjectDetailsPanel/ObjectDetailsPanel.tsx} +8 -35
  150. package/src/components/ObjectDetailsPanel/ObjectForm.tsx +75 -0
  151. package/src/components/ObjectDetailsPanel/index.ts +7 -0
  152. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +1 -1
  153. package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
  154. package/src/components/ObjectSettings/BaseObjectSettings.tsx +86 -26
  155. package/src/components/ObjectSettings/ForeignKeys.tsx +1 -1
  156. package/src/components/ObjectSettings/index.ts +3 -1
  157. package/src/components/RecordMain.stories.tsx +116 -0
  158. package/src/components/RecordMain.tsx +69 -29
  159. package/src/components/SchemaContainer.tsx +1 -1
  160. package/src/components/SpacePresence.tsx +1 -1
  161. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +4 -3
  162. package/src/components/SyncStatus/InlineSyncStatus.tsx +5 -5
  163. package/src/components/SyncStatus/SyncStatus.stories.tsx +3 -2
  164. package/src/components/SyncStatus/SyncStatus.tsx +93 -3
  165. package/src/components/ViewEditor.tsx +6 -7
  166. package/src/components/index.ts +1 -1
  167. package/src/hooks/index.ts +1 -0
  168. package/src/hooks/useInputSurfaceLookup.tsx +1 -1
  169. package/src/hooks/usePath.ts +1 -1
  170. package/src/hooks/useTypeOptions.ts +59 -0
  171. package/src/meta.ts +5 -0
  172. package/src/translations.ts +10 -1
  173. package/src/types/types.ts +9 -5
  174. package/src/util.tsx +22 -8
  175. package/dist/lib/browser/ObjectDetailsPanel-ETI5YBTH.mjs +0 -90
  176. package/dist/lib/browser/ObjectDetailsPanel-ETI5YBTH.mjs.map +0 -7
  177. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +0 -68
  178. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +0 -7
  179. package/dist/lib/browser/app-graph-builder-W7RVDAUA.mjs.map +0 -7
  180. package/dist/lib/browser/chunk-2BFVC5K6.mjs.map +0 -7
  181. package/dist/lib/browser/chunk-E2I747A7.mjs.map +0 -7
  182. package/dist/lib/browser/chunk-ELJDGQTO.mjs +0 -94
  183. package/dist/lib/browser/chunk-ELJDGQTO.mjs.map +0 -7
  184. package/dist/lib/browser/chunk-IRKDREHY.mjs +0 -11
  185. package/dist/lib/browser/chunk-IRKDREHY.mjs.map +0 -7
  186. package/dist/lib/browser/chunk-JCHSUOPF.mjs.map +0 -7
  187. package/dist/lib/browser/chunk-PN27K4I7.mjs.map +0 -7
  188. package/dist/lib/browser/chunk-ZIZ2JLW6.mjs.map +0 -7
  189. package/dist/lib/browser/intent-resolver-HA7DPAUE.mjs.map +0 -7
  190. package/dist/lib/browser/react-surface-HTXYMRSW.mjs.map +0 -7
  191. package/dist/lib/browser/spaces-ready-YY77ANIF.mjs.map +0 -7
  192. package/dist/lib/node-esm/ObjectDetailsPanel-TQ5GN4QJ.mjs +0 -91
  193. package/dist/lib/node-esm/ObjectDetailsPanel-TQ5GN4QJ.mjs.map +0 -7
  194. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +0 -70
  195. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +0 -7
  196. package/dist/lib/node-esm/app-graph-builder-5ZJJUMQI.mjs.map +0 -7
  197. package/dist/lib/node-esm/chunk-5XRYHWL7.mjs.map +0 -7
  198. package/dist/lib/node-esm/chunk-6WNZW6KT.mjs.map +0 -7
  199. package/dist/lib/node-esm/chunk-BLPXWPLB.mjs.map +0 -7
  200. package/dist/lib/node-esm/chunk-IJVBBVCL.mjs.map +0 -7
  201. package/dist/lib/node-esm/chunk-MWNATOXL.mjs +0 -13
  202. package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +0 -7
  203. package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs +0 -96
  204. package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs.map +0 -7
  205. package/dist/lib/node-esm/chunk-XDQXUZMK.mjs.map +0 -7
  206. package/dist/lib/node-esm/intent-resolver-LQNHMPIX.mjs.map +0 -7
  207. package/dist/lib/node-esm/react-surface-LYDYON3U.mjs.map +0 -7
  208. package/dist/lib/node-esm/spaces-ready-YX4IHT4P.mjs.map +0 -7
  209. package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
  210. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
  211. /package/dist/lib/browser/{CollectionMain-AX7KKXWP.mjs.map → CollectionMain-HTKSZCRR.mjs.map} +0 -0
  212. /package/dist/lib/browser/{app-graph-serializer-VLHVTDX4.mjs.map → app-graph-serializer-3R5NVV7U.mjs.map} +0 -0
  213. /package/dist/lib/browser/{chunk-EIXZABXD.mjs.map → chunk-WJXU4GKV.mjs.map} +0 -0
  214. /package/dist/lib/browser/{react-root-YQUJU64P.mjs.map → react-root-NKEKCEYM.mjs.map} +0 -0
  215. /package/dist/lib/browser/{schema-defs-R56ZDBZ7.mjs.map → schema-defs-DWYK7TYW.mjs.map} +0 -0
  216. /package/dist/lib/browser/{settings-5XPQMSPO.mjs.map → settings-ZUCC3ZLB.mjs.map} +0 -0
  217. /package/dist/lib/browser/{state-Y4RVCG4A.mjs.map → state-ISVAKMO7.mjs.map} +0 -0
  218. /package/dist/lib/node-esm/{CollectionMain-EU57SRYK.mjs.map → CollectionMain-OUHGG6OC.mjs.map} +0 -0
  219. /package/dist/lib/node-esm/{app-graph-serializer-EZJSGJUT.mjs.map → app-graph-serializer-3Z3EXEEF.mjs.map} +0 -0
  220. /package/dist/lib/node-esm/{chunk-SVFKU7EW.mjs.map → chunk-H4JILUJK.mjs.map} +0 -0
  221. /package/dist/lib/node-esm/{react-root-UTLJEIKE.mjs.map → react-root-LX7SIG6M.mjs.map} +0 -0
  222. /package/dist/lib/node-esm/{schema-defs-7IMJPIWS.mjs.map → schema-defs-EOG2UPJU.mjs.map} +0 -0
  223. /package/dist/lib/node-esm/{settings-XBSK5KHH.mjs.map → settings-ZDJNLFGW.mjs.map} +0 -0
  224. /package/dist/lib/node-esm/{state-HOHAVPUO.mjs.map → state-QZ4Q6ZRL.mjs.map} +0 -0
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  getActiveSpace
3
- } from "./chunk-ELJDGQTO.mjs";
3
+ } from "./chunk-HS2VD6DN.mjs";
4
4
  import {
5
5
  SpaceCapabilities
6
- } from "./chunk-E2I747A7.mjs";
6
+ } from "./chunk-2NS3VPSY.mjs";
7
7
  import {
8
8
  SHARED,
9
9
  SPACES,
@@ -14,18 +14,21 @@ import {
14
14
  createStaticSchemaActions,
15
15
  createStaticSchemaNode,
16
16
  rxFromQuery
17
- } from "./chunk-PN27K4I7.mjs";
17
+ } from "./chunk-OWNBEI5J.mjs";
18
18
  import {
19
19
  SPACE_TYPE,
20
20
  SpaceAction
21
- } from "./chunk-JCHSUOPF.mjs";
21
+ } from "./chunk-SLDQWMQ2.mjs";
22
22
  import {
23
23
  meta
24
- } from "./chunk-IRKDREHY.mjs";
24
+ } from "./chunk-VZBIIYFM.mjs";
25
25
 
26
26
  // src/capabilities/app-graph-builder.ts
27
27
  import { Rx } from "@effect-rx/rx-react";
28
- import { Array, Option, Schema, pipe } from "effect";
28
+ import * as Array from "effect/Array";
29
+ import * as Function from "effect/Function";
30
+ import * as Option from "effect/Option";
31
+ import * as Schema from "effect/Schema";
29
32
  import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
30
33
  import { SpaceState, getSpace, isSpace, parseId } from "@dxos/client/echo";
31
34
  import { Filter, Obj, Query, Type } from "@dxos/echo";
@@ -33,7 +36,7 @@ import { log } from "@dxos/log";
33
36
  import { ClientCapabilities } from "@dxos/plugin-client";
34
37
  import { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
35
38
  import { ROOT_ID, createExtension, rxFromObservable, rxFromSignal } from "@dxos/plugin-graph";
36
- import { DataType, typenameFromQuery } from "@dxos/schema";
39
+ import { DataType, getTypenameFromQuery } from "@dxos/schema";
37
40
  import { isNonNullable } from "@dxos/util";
38
41
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/capabilities/app-graph-builder.ts";
39
42
  var app_graph_builder_default = ((context) => {
@@ -70,7 +73,7 @@ var app_graph_builder_default = ((context) => {
70
73
  } else {
71
74
  log.warn("spaces order object not found", void 0, {
72
75
  F: __dxlog_file,
73
- L: 71,
76
+ L: 74,
74
77
  S: void 0,
75
78
  C: (f, a) => f(...a)
76
79
  });
@@ -83,7 +86,7 @@ var app_graph_builder_default = ((context) => {
83
86
  createExtension({
84
87
  id: `${meta.id}/primary-actions`,
85
88
  position: "hoist",
86
- actions: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map(() => [
89
+ actions: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map(() => [
87
90
  {
88
91
  id: SpaceAction.OpenCreateSpace._tag,
89
92
  data: async () => {
@@ -175,7 +178,7 @@ var app_graph_builder_default = ((context) => {
175
178
  createExtension({
176
179
  id: `${meta.id}/root`,
177
180
  position: "hoist",
178
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map(() => [
181
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map(() => [
179
182
  spacesNode
180
183
  ]), Option.getOrElse(() => [])))
181
184
  }),
@@ -184,7 +187,7 @@ var app_graph_builder_default = ((context) => {
184
187
  id: SPACES,
185
188
  connector: (node) => {
186
189
  let query;
187
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === SPACES ? Option.some(node2) : Option.none()), Option.map(() => {
190
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === SPACES ? Option.some(node2) : Option.none()), Option.map(() => {
188
191
  const state = context.getCapability(SpaceCapabilities.State);
189
192
  const client = context.getCapability(ClientCapabilities.Client);
190
193
  const spacesRx = rxFromObservable(client.spaces);
@@ -228,7 +231,7 @@ var app_graph_builder_default = ((context) => {
228
231
  // Create space actions.
229
232
  createExtension({
230
233
  id: `${meta.id}/actions`,
231
- actions: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.type === SPACE_TYPE && isSpace(node2.data) ? Option.some(node2.data) : Option.none()), Option.flatMap((space) => {
234
+ actions: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.type === SPACE_TYPE && isSpace(node2.data) ? Option.some(node2.data) : Option.none()), Option.flatMap((space) => {
232
235
  const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));
233
236
  const [client] = get(context.capabilities(ClientCapabilities.Client));
234
237
  const [state] = get(context.capabilities(SpaceCapabilities.State));
@@ -247,7 +250,7 @@ var app_graph_builder_default = ((context) => {
247
250
  // Create nodes for objects in the root collection of a space.
248
251
  createExtension({
249
252
  id: `${meta.id}/root-collection`,
250
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.type === SPACE_TYPE && isSpace(node2.data) ? Option.some(node2.data) : Option.none()), Option.map((space) => {
253
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.type === SPACE_TYPE && isSpace(node2.data) ? Option.some(node2.data) : Option.none()), Option.map((space) => {
251
254
  const state = context.getCapability(SpaceCapabilities.State);
252
255
  const spaceState = get(rxFromObservable(space.state));
253
256
  if (spaceState !== SpaceState.SPACE_READY) {
@@ -257,7 +260,7 @@ var app_graph_builder_default = ((context) => {
257
260
  if (!collection) {
258
261
  return [];
259
262
  }
260
- return get(rxFromSignal(() => pipe(collection.objects, Array.map((object) => object.target), Array.filter(isNonNullable), Array.map((object) => createObjectNode({
263
+ return get(rxFromSignal(() => Function.pipe(collection.objects, Array.map((object) => object.target), Array.filter(isNonNullable), Array.map((object) => createObjectNode({
261
264
  space,
262
265
  object,
263
266
  resolve,
@@ -268,10 +271,10 @@ var app_graph_builder_default = ((context) => {
268
271
  // Create nodes for objects in a collection or by its fully qualified id.
269
272
  createExtension({
270
273
  id: `${meta.id}/objects`,
271
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.Collection, node2.data) ? Option.some(node2.data) : Option.none()), Option.map((collection) => {
274
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.Collection, node2.data) ? Option.some(node2.data) : Option.none()), Option.map((collection) => {
272
275
  const state = context.getCapability(SpaceCapabilities.State);
273
276
  const space = getSpace(collection);
274
- return get(rxFromSignal(() => pipe(collection.objects, Array.map((object) => object.target), Array.filter(isNonNullable), Array.map((object) => space && createObjectNode({
277
+ return get(rxFromSignal(() => Function.pipe(collection.objects, Array.map((object) => object.target), Array.filter(isNonNullable), Array.map((object) => space && createObjectNode({
275
278
  object,
276
279
  space,
277
280
  resolve,
@@ -284,9 +287,9 @@ var app_graph_builder_default = ((context) => {
284
287
  id: `${meta.id}/query-collection-objects`,
285
288
  connector: (node) => {
286
289
  let query;
287
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.QueryCollection, node2.data) ? Option.some(node2.data) : Option.none()), Option.flatMap((collection) => {
290
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.QueryCollection, node2.data) ? Option.some(node2.data) : Option.none()), Option.flatMap((collection) => {
288
291
  const space = getSpace(collection);
289
- const typename = typenameFromQuery(collection.query);
292
+ const typename = getTypenameFromQuery(collection.query);
290
293
  return typename && space ? Option.some({
291
294
  typename,
292
295
  space
@@ -317,7 +320,7 @@ var app_graph_builder_default = ((context) => {
317
320
  id: `${meta.id}/static-schemas`,
318
321
  connector: (node) => {
319
322
  const client = context.getCapability(ClientCapabilities.Client);
320
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.QueryCollection, node2.data) && typenameFromQuery(node2.data.query) === DataType.StoredSchema.typename ? Option.some(node2.data) : Option.none()), Option.flatMap((collection) => {
323
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.QueryCollection, node2.data) && getTypenameFromQuery(node2.data.query) === DataType.StoredSchema.typename ? Option.some(node2.data) : Option.none()), Option.flatMap((collection) => {
321
324
  const space = getSpace(collection);
322
325
  return space?.properties.staticRecords ? Option.some(space) : Option.none();
323
326
  }), Option.map((space) => {
@@ -333,7 +336,7 @@ var app_graph_builder_default = ((context) => {
333
336
  id: `${meta.id}/static-schema-actions`,
334
337
  actions: (node) => {
335
338
  let query;
336
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => {
339
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
337
340
  const space = isSpace(node2.properties.space) ? node2.properties.space : void 0;
338
341
  return space && Schema.isSchema(node2.data) ? Option.some({
339
342
  space,
@@ -346,7 +349,7 @@ var app_graph_builder_default = ((context) => {
346
349
  const views = get(rxFromQuery(query));
347
350
  const filteredViews = get(rxFromSignal(() => (
348
351
  // TODO(wittjosiah): Remove cast.
349
- views.filter((view) => typenameFromQuery(view.query.ast) === Type.getTypename(schema))
352
+ views.filter((view) => getTypenameFromQuery(view.query.ast) === Type.getTypename(schema))
350
353
  )));
351
354
  const deletable = filteredViews.length === 0;
352
355
  const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));
@@ -367,7 +370,7 @@ var app_graph_builder_default = ((context) => {
367
370
  id: `${meta.id}/schema-views`,
368
371
  connector: (node) => {
369
372
  let query;
370
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => {
373
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
371
374
  const space = getSpace(node2.data) ?? (isSpace(node2.properties.space) ? node2.properties.space : void 0);
372
375
  return space && (Obj.instanceOf(DataType.StoredSchema, node2.data) || Schema.isSchema(node2.data)) ? Option.some({
373
376
  space,
@@ -378,7 +381,7 @@ var app_graph_builder_default = ((context) => {
378
381
  query = space.db.query(Filter.type(DataType.View));
379
382
  }
380
383
  const typename = Schema.isSchema(schema) ? Type.getTypename(schema) : schema.typename;
381
- return get(rxFromQuery(query)).filter((view) => typenameFromQuery(view.query.ast) === typename).map((view) => get(rxFromSignal(() => createObjectNode({
384
+ return get(rxFromQuery(query)).filter((view) => getTypenameFromQuery(view.query.ast) === typename).map((view) => get(rxFromSignal(() => createObjectNode({
382
385
  object: view,
383
386
  space,
384
387
  resolve,
@@ -423,22 +426,22 @@ var app_graph_builder_default = ((context) => {
423
426
  id: `${meta.id}/object-actions`,
424
427
  actions: (node) => {
425
428
  let query;
426
- return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => {
429
+ return Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
427
430
  const space = getSpace(node2.data);
428
- return space && Obj.isObject(node2.data) ? Option.some({
431
+ return space && Obj.isObject(node2.data) && Obj.getTypename(node2.data) === node2.type ? Option.some({
429
432
  space,
430
433
  object: node2.data
431
434
  }) : Option.none();
432
435
  }), Option.flatMap(({ space, object }) => {
433
- const isSchema = Obj.instanceOf(DataType.StoredSchema, object);
434
- if (!query && isSchema) {
436
+ const isSchema2 = Obj.instanceOf(DataType.StoredSchema, object);
437
+ if (!query && isSchema2) {
435
438
  query = space.db.query(Filter.type(DataType.View));
436
439
  }
437
- let deletable = !isSchema && // Don't allow the Records smart collection to be deleted.
438
- !(Obj.instanceOf(DataType.QueryCollection, object) && typenameFromQuery(object.query) === DataType.StoredSchema.typename);
439
- if (isSchema && query) {
440
+ let deletable = !isSchema2 && // Don't allow the Records smart collection to be deleted.
441
+ !(Obj.instanceOf(DataType.QueryCollection, object) && getTypenameFromQuery(object.query) === DataType.StoredSchema.typename);
442
+ if (isSchema2 && query) {
440
443
  const views = get(rxFromQuery(query));
441
- const filteredViews = get(rxFromSignal(() => views.filter((view) => typenameFromQuery(view.query.ast) === object.typename)));
444
+ const filteredViews = get(rxFromSignal(() => views.filter((view) => getTypenameFromQuery(view.query.ast) === object.typename)));
442
445
  deletable = filteredViews.length === 0;
443
446
  }
444
447
  const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));
@@ -463,7 +466,7 @@ var app_graph_builder_default = ((context) => {
463
466
  // View selected objects.
464
467
  createExtension({
465
468
  id: `${meta.id}/selected-objects`,
466
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.View, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
469
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(DataType.View, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
467
470
  {
468
471
  id: [
469
472
  node2.id,
@@ -487,7 +490,7 @@ var app_graph_builder_default = ((context) => {
487
490
  // Object settings plank companion.
488
491
  createExtension({
489
492
  id: `${meta.id}/settings`,
490
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.isObject(node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
493
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.isObject(node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
491
494
  {
492
495
  id: [
493
496
  node2.id,
@@ -514,4 +517,4 @@ var app_graph_builder_default = ((context) => {
514
517
  export {
515
518
  app_graph_builder_default as default
516
519
  };
517
- //# sourceMappingURL=app-graph-builder-W7RVDAUA.mjs.map
520
+ //# sourceMappingURL=app-graph-builder-QJFO4ANM.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport * as Array from 'effect/Array';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { Capabilities, type PluginContext, contributes, createIntent } from '@dxos/app-framework';\nimport { type QueryResult, type Space, SpaceState, getSpace, isSpace, parseId } from '@dxos/client/echo';\nimport { Filter, Obj, Query, Type } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { ROOT_ID, createExtension, rxFromObservable, rxFromSignal } from '@dxos/plugin-graph';\nimport { DataType, getTypenameFromQuery } from '@dxos/schema';\nimport { isNonNullable } from '@dxos/util';\n\nimport { getActiveSpace } from '../hooks';\nimport { meta } from '../meta';\nimport { SPACE_TYPE, SpaceAction, type SpaceSettingsProps } from '../types';\nimport {\n SHARED,\n SPACES,\n constructObjectActions,\n constructSpaceActions,\n constructSpaceNode,\n createObjectNode,\n createStaticSchemaActions,\n createStaticSchemaNode,\n rxFromQuery,\n} from '../util';\n\nimport { SpaceCapabilities } from './capabilities';\n\nexport default (context: PluginContext) => {\n // TODO(wittjosiah): Make reactive.\n const resolve = (typename: string) =>\n context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n const spacesNode = {\n id: SPACES,\n type: SPACES,\n cacheable: ['label', 'role'],\n properties: {\n label: ['spaces label', { ns: meta.id }],\n icon: 'ph--planet--regular',\n testId: 'spacePlugin.spaces',\n role: 'branch',\n disposition: 'collection',\n disabled: true,\n childrenPersistenceClass: 'echo',\n onRearrangeChildren: async (nextOrder: Space[]) => {\n const { graph } = context.getCapability(Capabilities.AppGraph);\n const client = context.getCapability(ClientCapabilities.Client);\n\n // NOTE: This is needed to ensure order is updated by next animation frame.\n // TODO(wittjosiah): Is there a better way to do this?\n // If not, graph should be passed as an argument to the extension.\n graph.sortEdges(\n SPACES,\n 'outbound',\n nextOrder.map(({ id }) => id),\n );\n\n const {\n objects: [spacesOrder],\n } = await client.spaces.default.db.query(Filter.type(Type.Expando, { key: SHARED })).run();\n if (spacesOrder) {\n spacesOrder.order = nextOrder.map(({ id }) => id);\n } else {\n log.warn('spaces order object not found');\n }\n },\n },\n };\n\n return contributes(Capabilities.AppGraphBuilder, [\n // Primary actions.\n createExtension({\n id: `${meta.id}/primary-actions`,\n position: 'hoist',\n actions: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map(() => [\n {\n id: SpaceAction.OpenCreateSpace._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(SpaceAction.OpenCreateSpace));\n },\n properties: {\n label: ['create space label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n testId: 'spacePlugin.createSpace',\n disposition: 'menu',\n },\n },\n {\n id: SpaceAction.Join._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(SpaceAction.Join));\n },\n properties: {\n label: ['join space label', { ns: meta.id }],\n icon: 'ph--sign-in--regular',\n testId: 'spacePlugin.joinSpace',\n disposition: 'menu',\n },\n },\n {\n id: SpaceAction.OpenMembers._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const client = context.getCapability(ClientCapabilities.Client);\n const space = getActiveSpace(context) ?? client.spaces.default;\n await dispatch(createIntent(SpaceAction.OpenMembers, { space }));\n },\n properties: {\n label: ['share space label', { ns: meta.id }],\n icon: 'ph--users--regular',\n testId: 'spacePlugin.shareSpace',\n keyBinding: {\n macos: 'meta+.',\n windows: 'alt+.',\n },\n },\n },\n {\n id: SpaceAction.OpenSettings._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const client = context.getCapability(ClientCapabilities.Client);\n const space = getActiveSpace(context) ?? client.spaces.default;\n await dispatch(createIntent(SpaceAction.OpenSettings, { space }));\n },\n properties: {\n label: ['open current space settings label', { ns: meta.id }],\n icon: 'ph--faders--regular',\n keyBinding: {\n macos: 'meta+shift+,',\n windows: 'ctrl+shift+,',\n },\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n // Create spaces group node.\n createExtension({\n id: `${meta.id}/root`,\n position: 'hoist',\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map(() => [spacesNode]),\n Option.getOrElse(() => []),\n ),\n ),\n // resolver: ({ id }) => (id === SPACES ? spacesNode : undefined),\n }),\n\n // Create space nodes.\n createExtension({\n id: SPACES,\n connector: (node) => {\n let query: QueryResult<Type.Expando> | undefined;\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === SPACES ? Option.some(node) : Option.none())),\n Option.map(() => {\n const state = context.getCapability(SpaceCapabilities.State);\n const client = context.getCapability(ClientCapabilities.Client);\n const spacesRx = rxFromObservable(client.spaces);\n const isReadyRx = rxFromObservable(client.spaces.isReady);\n\n const spaces = get(spacesRx);\n const isReady = get(isReadyRx);\n\n if (!spaces || !isReady) {\n return [];\n }\n\n const settings = get(context.capabilities(Capabilities.SettingsStore))[0]?.getStore<SpaceSettingsProps>(\n meta.id,\n )?.value;\n\n // TODO(wittjosiah): During client reset, accessing default space throws.\n try {\n if (!query) {\n query = client.spaces.default.db.query(Filter.type(Type.Expando, { key: SHARED }));\n }\n const [spacesOrder] = get(rxFromQuery(query));\n return get(\n rxFromSignal(() => {\n const order: string[] = spacesOrder?.order ?? [];\n const orderMap = new Map(order.map((id, index) => [id, index]));\n return [\n ...spaces\n .filter((space) => orderMap.has(space.id))\n .sort((a, b) => orderMap.get(a.id)! - orderMap.get(b.id)!),\n ...spaces.filter((space) => !orderMap.has(space.id)),\n ]\n .filter((space) =>\n settings?.showHidden ? true : space.state.get() !== SpaceState.SPACE_INACTIVE,\n )\n .map((space) =>\n constructSpaceNode({\n space,\n navigable: state.navigableCollections,\n personal: space === client.spaces.default,\n namesCache: state.spaceNames,\n resolve,\n }),\n );\n }),\n );\n } catch {\n return [];\n }\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n // resolver: ({ id }) => {\n // if (id.length !== SPACE_ID_LENGTH) {\n // return;\n // }\n\n // const client = context.requestCapability(ClientCapabilities.Client);\n // const spaces = toSignal(\n // (onChange) => client.spaces.subscribe(() => onChange()).unsubscribe,\n // () => client.spaces.get(),\n // );\n\n // const isReady = toSignal(\n // (onChange) => client.spaces.isReady.subscribe(() => onChange()).unsubscribe,\n // () => client.spaces.isReady.get(),\n // );\n\n // if (!spaces || !isReady) {\n // return;\n // }\n\n // const space = spaces.find((space) => space.id === id);\n // if (!space) {\n // return;\n // }\n\n // if (space.state.get() === SpaceState.SPACE_INACTIVE) {\n // return false;\n // } else if (space.state.get() !== SpaceState.SPACE_READY) {\n // return undefined;\n // } else {\n // const state = context.requestCapability(SpaceCapabilities.State);\n // return constructSpaceNode({\n // space,\n // navigable: state.navigableCollections,\n // personal: space === client.spaces.default,\n // namesCache: state.spaceNames,\n // resolve,\n // });\n // }\n // },\n }),\n\n // Create space actions.\n createExtension({\n id: `${meta.id}/actions`,\n actions: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) =>\n node.type === SPACE_TYPE && isSpace(node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.flatMap((space) => {\n const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));\n const [client] = get(context.capabilities(ClientCapabilities.Client));\n const [state] = get(context.capabilities(SpaceCapabilities.State));\n\n if (!dispatcher || !client || !state) {\n return Option.none();\n } else {\n return Option.some({\n space,\n dispatch: dispatcher.dispatchPromise,\n personal: space === client.spaces.default,\n migrating: state.sdkMigrationRunning[space.id],\n });\n }\n }),\n Option.map((params) => constructSpaceActions(params)),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n // Create nodes for objects in the root collection of a space.\n createExtension({\n id: `${meta.id}/root-collection`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) =>\n node.type === SPACE_TYPE && isSpace(node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((space) => {\n const state = context.getCapability(SpaceCapabilities.State);\n const spaceState = get(rxFromObservable(space.state));\n if (spaceState !== SpaceState.SPACE_READY) {\n return [];\n }\n\n const collection = get(\n rxFromSignal(\n () => space.properties[DataType.Collection.typename]?.target as DataType.Collection | undefined,\n ),\n );\n if (!collection) {\n return [];\n }\n\n return get(\n rxFromSignal(() =>\n Function.pipe(\n collection.objects,\n Array.map((object) => object.target),\n Array.filter(isNonNullable),\n Array.map((object) =>\n createObjectNode({\n space,\n object,\n resolve,\n navigable: state.navigableCollections,\n }),\n ),\n Array.filter(isNonNullable),\n ),\n ),\n );\n }),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n // Create nodes for objects in a collection or by its fully qualified id.\n createExtension({\n id: `${meta.id}/objects`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) =>\n Obj.instanceOf(DataType.Collection, node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((collection) => {\n const state = context.getCapability(SpaceCapabilities.State);\n const space = getSpace(collection);\n\n return get(\n rxFromSignal(() =>\n Function.pipe(\n collection.objects,\n Array.map((object) => object.target),\n Array.filter(isNonNullable),\n Array.map(\n (object) =>\n space && createObjectNode({ object, space, resolve, navigable: state.navigableCollections }),\n ),\n Array.filter(isNonNullable),\n ),\n ),\n );\n }),\n Option.getOrElse(() => []),\n ),\n ),\n // resolver: ({ id }) => {\n // if (id.length !== FQ_ID_LENGTH) {\n // return;\n // }\n\n // const [spaceId, objectId] = id.split(':');\n // if (spaceId.length !== SPACE_ID_LENGTH && objectId.length !== OBJECT_ID_LENGTH) {\n // return;\n // }\n\n // const client = context.requestCapability(ClientCapabilities.Client);\n // const space = client.spaces.get().find((space) => space.id === spaceId);\n // if (!space) {\n // return;\n // }\n\n // const spaceState = toSignal(\n // (onChange) => space.state.subscribe(() => onChange()).unsubscribe,\n // () => space.state.get(),\n // space.id,\n // );\n // if (spaceState !== SpaceState.SPACE_READY) {\n // return;\n // }\n\n // const [object] = memoizeQuery(space, Query.select(Filter.ids(objectId)));\n // if (!object) {\n // return;\n // }\n\n // if (isDeleted(object)) {\n // return false;\n // } else {\n // const state = context.requestCapability(SpaceCapabilities.State);\n // return createObjectNode({ object, space, resolve, navigable: state.navigableCollections });\n // }\n // },\n }),\n\n // Create nodes for objects in a query collection.\n createExtension({\n id: `${meta.id}/query-collection-objects`,\n connector: (node) => {\n let query: QueryResult<Type.Expando> | undefined;\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) =>\n Obj.instanceOf(DataType.QueryCollection, node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.flatMap((collection) => {\n const space = getSpace(collection);\n const typename = getTypenameFromQuery(collection.query);\n return typename && space ? Option.some({ typename, space }) : Option.none();\n }),\n Option.map(({ typename, space }) => {\n const state = context.getCapability(SpaceCapabilities.State);\n if (!query) {\n query = space.db.query(\n Query.without(\n Query.select(Filter.typename(typename)),\n // TODO(wittjosiah): This query is broader than it should be.\n // It will return all objects in the collection, not just the ones of the given type.\n // However this works fine for now because this query is only used for exclusions.\n Query.select(Filter.typename(typename))\n .referencedBy(DataType.Collection, 'objects')\n .reference('objects'),\n ),\n );\n }\n return (\n get(rxFromQuery(query))\n // TODO(wittjosiah): This should be the default sort order.\n .toSorted((a, b) => a.id.localeCompare(b.id))\n .map((object) =>\n get(\n rxFromSignal(() =>\n createObjectNode({\n object,\n space,\n resolve,\n droppable: false, // Cannot rearrange query collections.\n navigable: state.navigableCollections,\n }),\n ),\n ),\n )\n .filter(isNonNullable)\n );\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n // Static schema records.\n createExtension({\n id: `${meta.id}/static-schemas`,\n connector: (node) => {\n const client = context.getCapability(ClientCapabilities.Client);\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) =>\n Obj.instanceOf(DataType.QueryCollection, node.data) &&\n getTypenameFromQuery(node.data.query) === DataType.StoredSchema.typename\n ? Option.some(node.data)\n : Option.none(),\n ),\n Option.flatMap((collection) => {\n const space = getSpace(collection);\n return space?.properties.staticRecords ? Option.some(space) : Option.none();\n }),\n Option.map((space) => {\n return get(rxFromSignal(() => (space.properties.staticRecords ?? []) as string[]))\n .map((typename) =>\n client.graph.schemaRegistry.schemas.find((schema) => Type.getTypename(schema) === typename),\n )\n .filter(isNonNullable)\n .map((schema) => createStaticSchemaNode({ schema, space }));\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n // Create static schema actions.\n createExtension({\n id: `${meta.id}/static-schema-actions`,\n actions: (node) => {\n let query: QueryResult<DataType.View> | undefined;\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n const space = isSpace(node.properties.space) ? node.properties.space : undefined;\n return space && Schema.isSchema(node.data) ? Option.some({ space, schema: node.data }) : Option.none();\n }),\n Option.map(({ space, schema }) => {\n if (!query) {\n // TODO(wittjosiah): Support filtering by nested properties (e.g. `query.typename`).\n query = space.db.query(Filter.type(DataType.View));\n }\n\n const views = get(rxFromQuery(query));\n const filteredViews = get(\n rxFromSignal(() =>\n // TODO(wittjosiah): Remove cast.\n views.filter(\n (view) => getTypenameFromQuery(view.query.ast) === Type.getTypename(schema as Type.Obj.Any),\n ),\n ),\n );\n const deletable = filteredViews.length === 0;\n\n const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));\n if (!dispatcher) {\n return [];\n }\n\n // TODO(wittjosiah): Remove cast.\n return createStaticSchemaActions({\n schema: schema as Type.Obj.Any,\n space,\n dispatch: dispatcher.dispatchPromise,\n deletable,\n });\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n // Create nodes for schema views.\n createExtension({\n id: `${meta.id}/schema-views`,\n connector: (node) => {\n let query: QueryResult<DataType.View> | undefined;\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n const space = getSpace(node.data) ?? (isSpace(node.properties.space) ? node.properties.space : undefined);\n return space && (Obj.instanceOf(DataType.StoredSchema, node.data) || Schema.isSchema(node.data))\n ? Option.some({ space, schema: node.data })\n : Option.none();\n }),\n Option.map(({ space, schema }) => {\n if (!query) {\n // TODO(wittjosiah): Support filtering by nested properties (e.g. `query.typename`).\n query = space.db.query(Filter.type(DataType.View));\n }\n\n // TODO(wittjosiah): Remove cast.\n const typename = Schema.isSchema(schema) ? Type.getTypename(schema as Type.Obj.Any) : schema.typename;\n return get(rxFromQuery(query))\n .filter((view) => getTypenameFromQuery(view.query.ast) === typename)\n .map((view) =>\n get(\n rxFromSignal(() =>\n createObjectNode({\n object: view,\n space,\n resolve,\n droppable: false,\n }),\n ),\n ),\n )\n .filter(isNonNullable);\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n // Create record nodes.\n createExtension({\n id: `${meta.id}/records`,\n resolver: (id) => {\n let query: QueryResult<Type.Expando> | undefined;\n return Rx.make((get) => {\n const client = context.getCapability(ClientCapabilities.Client);\n const { spaceId, objectId } = parseId(id);\n if (!spaceId || !objectId) {\n return null;\n }\n\n const space = client.spaces.get(spaceId);\n if (!space) {\n return null;\n }\n\n if (!query) {\n query = space.db.query(Filter.ids(objectId));\n }\n\n const object = get(rxFromQuery(query)).at(0);\n if (!object) {\n return null;\n }\n\n return createObjectNode({ object, space, resolve, disposition: 'hidden' });\n });\n },\n }),\n\n // Create collection actions and action groups.\n createExtension({\n id: `${meta.id}/object-actions`,\n actions: (node) => {\n let query: QueryResult<DataType.View> | undefined;\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n const space = getSpace(node.data);\n return space && Obj.isObject(node.data) && Obj.getTypename(node.data) === node.type\n ? Option.some({ space, object: node.data })\n : Option.none();\n }),\n Option.flatMap(({ space, object }) => {\n const isSchema = Obj.instanceOf(DataType.StoredSchema, object);\n if (!query && isSchema) {\n // TODO(wittjosiah): Support filtering by nested properties (e.g. `query.typename`).\n query = space.db.query(Filter.type(DataType.View));\n }\n\n let deletable =\n !isSchema &&\n // Don't allow the Records smart collection to be deleted.\n !(\n Obj.instanceOf(DataType.QueryCollection, object) &&\n getTypenameFromQuery(object.query) === DataType.StoredSchema.typename\n );\n if (isSchema && query) {\n const views = get(rxFromQuery(query));\n const filteredViews = get(\n rxFromSignal(() => views.filter((view) => getTypenameFromQuery(view.query.ast) === object.typename)),\n );\n deletable = filteredViews.length === 0;\n }\n\n const [dispatcher] = get(context.capabilities(Capabilities.IntentDispatcher));\n const [appGraph] = get(context.capabilities(Capabilities.AppGraph));\n const [state] = get(context.capabilities(SpaceCapabilities.State));\n const objectForms = get(context.capabilities(SpaceCapabilities.ObjectForm));\n\n if (!dispatcher || !appGraph || !state) {\n return Option.none();\n } else {\n return Option.some({\n object,\n graph: appGraph.graph,\n dispatch: dispatcher.dispatchPromise,\n objectForms,\n deletable,\n navigable: get(rxFromSignal(() => state.navigableCollections)),\n });\n }\n }),\n Option.map((params) => constructObjectActions(params)),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n // View selected objects.\n createExtension({\n id: `${meta.id}/selected-objects`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(DataType.View, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'selected-objects'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'selected-objects',\n properties: {\n label: ['companion selected objects label', { ns: meta.id }],\n icon: 'ph--tree-view--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n // Object settings plank companion.\n createExtension({\n id: `${meta.id}/settings`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.isObject(node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'settings'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'settings',\n properties: {\n label: ['object settings label', { ns: meta.id }],\n icon: 'ph--sliders--regular',\n disposition: 'hidden',\n position: 'fallback',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Rx", "Array", "Function", "Option", "Schema", "Capabilities", "contributes", "createIntent", "SpaceState", "getSpace", "isSpace", "parseId", "Filter", "Obj", "Query", "Type", "log", "ClientCapabilities", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "ROOT_ID", "createExtension", "rxFromObservable", "rxFromSignal", "DataType", "getTypenameFromQuery", "isNonNullable", "context", "resolve", "typename", "getCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "spacesNode", "SPACES", "type", "cacheable", "properties", "label", "ns", "meta", "icon", "testId", "role", "disposition", "disabled", "childrenPersistenceClass", "onRearrangeChildren", "nextOrder", "graph", "getCapability", "AppGraph", "client", "ClientCapabilities", "Client", "sortEdges", "map", "objects", "spacesOrder", "spaces", "default", "db", "query", "Filter", "Type", "Expando", "key", "SHARED", "run", "order", "log", "warn", "contributes", "AppGraphBuilder", "createExtension", "position", "actions", "node", "Rx", "make", "get", "pipe", "flatMap", "ROOT_ID", "some", "none", "SpaceAction", "OpenCreateSpace", "_tag", "data", "dispatchPromise", "dispatch", "IntentDispatcher", "createIntent", "Join", "OpenMembers", "space", "getActiveSpace", "keyBinding", "macos", "windows", "OpenSettings", "getOrElse", "connector", "state", "SpaceCapabilities", "State", "spacesRx", "rxFromObservable", "isReadyRx", "isReady", "settings", "capabilities", "SettingsStore", "getStore", "value", "rxFromQuery", "rxFromSignal", "orderMap", "Map", "index", "filter", "has", "sort", "a", "b", "showHidden", "SpaceState", "SPACE_INACTIVE", "constructSpaceNode", "navigable", "navigableCollections", "personal", "namesCache", "spaceNames", "SPACE_TYPE", "isSpace", "dispatcher", "migrating", "sdkMigrationRunning", "params", "constructSpaceActions", "spaceState", "SPACE_READY", "collection", "DataType", "Collection", "target", "object", "isNonNullable", "createObjectNode", "Obj", "instanceOf", "getSpace", "QueryCollection", "getTypenameFromQuery", "Query", "without", "select", "referencedBy", "reference", "toSorted", "localeCompare", "droppable", "StoredSchema", "staticRecords", "schemaRegistry", "schemas", "schema", "getTypename", "createStaticSchemaNode", "undefined", "isSchema", "View", "views", "filteredViews", "view", "ast", "deletable", "length", "createStaticSchemaActions", "resolver", "spaceId", "objectId", "parseId", "ids", "at", "isObject", "appGraph", "objectForms", "ObjectForm", "constructObjectActions", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE"]
7
+ }
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  translations
3
- } from "./chunk-ZIZ2JLW6.mjs";
3
+ } from "./chunk-4V4JNJ33.mjs";
4
4
  import {
5
5
  SPACES
6
- } from "./chunk-PN27K4I7.mjs";
6
+ } from "./chunk-OWNBEI5J.mjs";
7
7
  import {
8
8
  SPACE_TYPE,
9
9
  SpaceAction
10
- } from "./chunk-JCHSUOPF.mjs";
10
+ } from "./chunk-SLDQWMQ2.mjs";
11
11
  import {
12
12
  meta
13
- } from "./chunk-IRKDREHY.mjs";
13
+ } from "./chunk-VZBIIYFM.mjs";
14
14
 
15
15
  // src/capabilities/app-graph-serializer.ts
16
16
  import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
@@ -77,4 +77,4 @@ var app_graph_serializer_default = ((context) => contributes(Capabilities.AppGra
77
77
  export {
78
78
  app_graph_serializer_default as default
79
79
  };
80
- //# sourceMappingURL=app-graph-serializer-VLHVTDX4.mjs.map
80
+ //# sourceMappingURL=app-graph-serializer-3R5NVV7U.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  meta
3
- } from "./chunk-IRKDREHY.mjs";
3
+ } from "./chunk-VZBIIYFM.mjs";
4
4
 
5
5
  // src/capabilities/capabilities.ts
6
6
  import { defineCapability } from "@dxos/app-framework";
@@ -17,4 +17,4 @@ var SpaceCapabilities;
17
17
  export {
18
18
  SpaceCapabilities
19
19
  };
20
- //# sourceMappingURL=chunk-E2I747A7.mjs.map
20
+ //# sourceMappingURL=chunk-2NS3VPSY.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/capabilities.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\n\nimport { type AnyIntentChain, type Label, defineCapability } from '@dxos/app-framework';\nimport { type Space } from '@dxos/react-client/echo';\nimport { type DataType } from '@dxos/schema';\nimport { type DeepReadonly, type Position } from '@dxos/util';\n\nimport { meta } from '../meta';\nimport { type ObjectForm, type PluginState } from '../types';\n\nexport namespace SpaceCapabilities {\n export const State = defineCapability<DeepReadonly<PluginState>>(`${meta.id}/capability/state`);\n export const MutableState = defineCapability<PluginState>(`${meta.id}/capability/state`);\n\n export type SettingsSection = { id: string; label: Label; position?: Position };\n export const SettingsSection = defineCapability<SettingsSection>(`${meta.id}/capability/settings-section`);\n\n export type onCreateSpace = (params: { space: Space; rootCollection: DataType.Collection }) => AnyIntentChain;\n export const onCreateSpace = defineCapability<onCreateSpace>(`${meta.id}/capability/on-space-created`);\n\n export type OnSchemaAdded = (params: {\n space: Space;\n schema: Schema.Schema.AnyNoContext;\n // TODO(wittjosiah): This is leaky.\n show?: boolean;\n }) => AnyIntentChain;\n export const OnSchemaAdded = defineCapability<OnSchemaAdded>(`${meta.id}/capability/on-schema-added`);\n\n // TODO(burdon): Should this be view? Forms are UI concepts? (associated with a View/schema).\n export const ObjectForm = defineCapability<ObjectForm<any>>(`${meta.id}/capability/object-form`);\n}\n"],
5
+ "mappings": ";;;;;AAMA,SAA0CA,wBAAwB;UAQjDC,oBAAAA;qBACFC,QAAQC,iBAA4C,GAAGC,KAAKC,EAAE,mBAAmB;qBACjFC,eAAeH,iBAA8B,GAAGC,KAAKC,EAAE,mBAAmB;qBAG1EE,kBAAkBJ,iBAAkC,GAAGC,KAAKC,EAAE,8BAA8B;qBAG5FG,gBAAgBL,iBAAgC,GAAGC,KAAKC,EAAE,8BAA8B;qBAQxFI,gBAAgBN,iBAAgC,GAAGC,KAAKC,EAAE,6BAA6B;qBAGvFK,aAAaP,iBAAkC,GAAGC,KAAKC,EAAE,yBAAyB;AACjG,GApBiBJ,sBAAAA,oBAAAA,CAAAA,EAAAA;;",
6
+ "names": ["defineCapability", "SpaceCapabilities", "State", "defineCapability", "meta", "id", "MutableState", "SettingsSection", "onCreateSpace", "OnSchemaAdded", "ObjectForm"]
7
+ }
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  meta
3
- } from "./chunk-IRKDREHY.mjs";
3
+ } from "./chunk-VZBIIYFM.mjs";
4
4
 
5
5
  // src/translations.ts
6
6
  import { Type } from "@dxos/echo";
7
- import { StoredSchema } from "@dxos/echo-schema";
7
+ import { StoredSchema } from "@dxos/echo/internal";
8
8
  import { DataType } from "@dxos/schema";
9
9
  var translations = [
10
10
  {
@@ -182,10 +182,12 @@ var translations = [
182
182
  "creating in collection label": "In Collection",
183
183
  "clear input label": "Clear",
184
184
  "expose object label": "Expose in navtree",
185
+ "add tag label": "Add tag",
185
186
  "advanced settings label": "Advanced",
186
187
  "foreign keys": "Foreign Keys",
187
188
  "add key": "Add Key",
188
189
  "open space settings label": "Open settings",
190
+ "related objects label": "Related",
189
191
  "row details no selection label": "No objects selected",
190
192
  "companion selected objects label": "Selected",
191
193
  "field deleted label": "Field deleted",
@@ -215,7 +217,13 @@ var translations = [
215
217
  "edge replication description": "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.",
216
218
  "archive space description": "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.",
217
219
  "archive space label": "Archive",
218
- "unarchive space label": "Unarchive"
220
+ "unarchive space label": "Unarchive",
221
+ "sync edge connected label": "Edge connected",
222
+ "sync edge disconnected label": "Edge disconnected",
223
+ "sync no connection label": "No connection to edge service",
224
+ "sync latency label": "Latency",
225
+ "sync upload label": "Upload",
226
+ "sync download label": "Download"
219
227
  }
220
228
  }
221
229
  }
@@ -224,4 +232,4 @@ var translations = [
224
232
  export {
225
233
  translations
226
234
  };
227
- //# sourceMappingURL=chunk-ZIZ2JLW6.mjs.map
235
+ //# sourceMappingURL=chunk-4V4JNJ33.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 { Type } from '@dxos/echo';\nimport { StoredSchema } from '@dxos/echo/internal';\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 [Type.getTypename(DataType.QueryCollection)]: {\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 [Type.getTypename(DataType.View)]: {\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 [Type.getTypename(DataType.Project)]: {\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 'add tag label': 'Add tag',\n 'advanced settings label': 'Advanced',\n 'foreign keys': 'Foreign Keys',\n 'add key': 'Add Key',\n 'open space settings label': 'Open settings',\n 'related objects label': 'Related',\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 'sync edge connected label': 'Edge connected',\n 'sync edge disconnected label': 'Edge disconnected',\n 'sync no connection label': 'No connection to edge service',\n 'sync latency label': 'Latency',\n 'sync upload label': 'Upload',\n 'sync download label': 'Download',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": "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",
6
+ "names": ["Type", "StoredSchema", "DataType", "translations", "DataType", "Collection", "typename", "Type", "getTypename", "QueryCollection", "StoredSchema", "View", "Event", "Organization", "Person", "Project", "Task", "meta", "id"]
7
+ }