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

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 (816) hide show
  1. package/dist/lib/browser/CollectionArticle-WPLUW5HF.mjs +111 -0
  2. package/dist/lib/browser/CollectionArticle-WPLUW5HF.mjs.map +7 -0
  3. package/dist/lib/browser/CollectionSection-H2MBNI63.mjs +23 -0
  4. package/dist/lib/browser/CollectionSection-H2MBNI63.mjs.map +7 -0
  5. package/dist/lib/browser/CreateObjectDialog-M3NRXGWW.mjs +142 -0
  6. package/dist/lib/browser/CreateObjectDialog-M3NRXGWW.mjs.map +7 -0
  7. package/dist/lib/browser/CreateSpaceDialog-3M2LAWV6.mjs +64 -0
  8. package/dist/lib/browser/CreateSpaceDialog-3M2LAWV6.mjs.map +7 -0
  9. package/dist/lib/browser/InlineSyncStatus-K5MZ3YMZ.mjs +53 -0
  10. package/dist/lib/browser/InlineSyncStatus-K5MZ3YMZ.mjs.map +7 -0
  11. package/dist/lib/browser/JoinDialog-PBK2RE5F.mjs +115 -0
  12. package/dist/lib/browser/JoinDialog-PBK2RE5F.mjs.map +7 -0
  13. package/dist/lib/browser/MembersContainer-OGYV2L4M.mjs +257 -0
  14. package/dist/lib/browser/MembersContainer-OGYV2L4M.mjs.map +7 -0
  15. package/dist/lib/browser/MenuFooter-XCBDK7WP.mjs +37 -0
  16. package/dist/lib/browser/MenuFooter-XCBDK7WP.mjs.map +7 -0
  17. package/dist/lib/browser/ObjectCardStack-UYS2TMK6.mjs +64 -0
  18. package/dist/lib/browser/ObjectCardStack-UYS2TMK6.mjs.map +7 -0
  19. package/dist/lib/browser/ObjectDetails-B2BJLOK5.mjs +43 -0
  20. package/dist/lib/browser/ObjectDetails-B2BJLOK5.mjs.map +7 -0
  21. package/dist/lib/browser/ObjectRenamePopover-JNPJIFIR.mjs +70 -0
  22. package/dist/lib/browser/ObjectRenamePopover-JNPJIFIR.mjs.map +7 -0
  23. package/dist/lib/browser/RecordArticle-BO2XHBFN.mjs +112 -0
  24. package/dist/lib/browser/RecordArticle-BO2XHBFN.mjs.map +7 -0
  25. package/dist/lib/browser/SchemaContainer-QWCSIZBS.mjs +49 -0
  26. package/dist/lib/browser/SchemaContainer-QWCSIZBS.mjs.map +7 -0
  27. package/dist/lib/browser/SmallPresenceLive-AHHLBAUP.mjs +9 -0
  28. package/dist/lib/browser/SmallPresenceLive-AHHLBAUP.mjs.map +7 -0
  29. package/dist/lib/browser/SpacePluginSettings-QGZKNQLK.mjs +59 -0
  30. package/dist/lib/browser/SpacePluginSettings-QGZKNQLK.mjs.map +7 -0
  31. package/dist/lib/browser/SpacePresence-JIWLBUWO.mjs +12 -0
  32. package/dist/lib/browser/SpacePresence-JIWLBUWO.mjs.map +7 -0
  33. package/dist/lib/browser/SpaceRenamePopover-ZL6RRZ2B.mjs +62 -0
  34. package/dist/lib/browser/SpaceRenamePopover-ZL6RRZ2B.mjs.map +7 -0
  35. package/dist/lib/browser/SpaceSettingsContainer-MIOOT63N.mjs +242 -0
  36. package/dist/lib/browser/SpaceSettingsContainer-MIOOT63N.mjs.map +7 -0
  37. package/dist/lib/browser/SyncStatus-JSCSODPL.mjs +141 -0
  38. package/dist/lib/browser/SyncStatus-JSCSODPL.mjs.map +7 -0
  39. package/dist/lib/browser/ViewEditor-3FX5HDRT.mjs +113 -0
  40. package/dist/lib/browser/ViewEditor-3FX5HDRT.mjs.map +7 -0
  41. package/dist/lib/browser/app-graph-builder-JORZZE3P.mjs +1203 -0
  42. package/dist/lib/browser/app-graph-builder-JORZZE3P.mjs.map +7 -0
  43. package/dist/lib/browser/app-graph-serializer-UZWWGLGY.mjs +85 -0
  44. package/dist/lib/browser/app-graph-serializer-UZWWGLGY.mjs.map +7 -0
  45. package/dist/lib/browser/chunk-3A3FUI2R.mjs +576 -0
  46. package/dist/lib/browser/chunk-3A3FUI2R.mjs.map +7 -0
  47. package/dist/lib/browser/chunk-6IT5IBB5.mjs +683 -0
  48. package/dist/lib/browser/chunk-6IT5IBB5.mjs.map +7 -0
  49. package/dist/lib/browser/chunk-6OA75CWN.mjs +77 -0
  50. package/dist/lib/browser/chunk-6OA75CWN.mjs.map +7 -0
  51. package/dist/lib/browser/{chunk-QACNNDOT.mjs → chunk-AUX3RRLY.mjs} +100 -67
  52. package/dist/lib/browser/chunk-AUX3RRLY.mjs.map +7 -0
  53. package/dist/lib/browser/chunk-CBWGVOJE.mjs +16 -0
  54. package/dist/lib/browser/chunk-CBWGVOJE.mjs.map +7 -0
  55. package/dist/lib/browser/chunk-ICXESMDI.mjs +118 -0
  56. package/dist/lib/browser/chunk-ICXESMDI.mjs.map +7 -0
  57. package/dist/lib/browser/chunk-RJUOHI3B.mjs +19 -0
  58. package/dist/lib/browser/chunk-RJUOHI3B.mjs.map +7 -0
  59. package/dist/lib/browser/chunk-SJCNERZI.mjs +115 -0
  60. package/dist/lib/browser/chunk-SJCNERZI.mjs.map +7 -0
  61. package/dist/lib/browser/chunk-SSTUPFZ2.mjs +13 -0
  62. package/dist/lib/browser/chunk-SSTUPFZ2.mjs.map +7 -0
  63. package/dist/lib/browser/chunk-UYOJYBGW.mjs +168 -0
  64. package/dist/lib/browser/chunk-UYOJYBGW.mjs.map +7 -0
  65. package/dist/lib/browser/cli/index.mjs +851 -0
  66. package/dist/lib/browser/cli/index.mjs.map +7 -0
  67. package/dist/lib/browser/identity-created-ETXNQYR6.mjs +23 -0
  68. package/dist/lib/browser/identity-created-ETXNQYR6.mjs.map +7 -0
  69. package/dist/lib/browser/index.mjs +233 -315
  70. package/dist/lib/browser/index.mjs.map +4 -4
  71. package/dist/lib/browser/meta.json +1 -1
  72. package/dist/lib/browser/operation-resolver-D4LHB4D4.mjs +807 -0
  73. package/dist/lib/browser/operation-resolver-D4LHB4D4.mjs.map +7 -0
  74. package/dist/lib/browser/react-root-ARQTOU44.mjs +30 -0
  75. package/dist/lib/browser/react-root-ARQTOU44.mjs.map +7 -0
  76. package/dist/lib/browser/react-surface-TO4KE77V.mjs +364 -0
  77. package/dist/lib/browser/react-surface-TO4KE77V.mjs.map +7 -0
  78. package/dist/lib/browser/repair-NUVEV4AK.mjs +31 -0
  79. package/dist/lib/browser/repair-NUVEV4AK.mjs.map +7 -0
  80. package/dist/lib/browser/settings-RUDP2Q56.mjs +34 -0
  81. package/dist/lib/browser/settings-RUDP2Q56.mjs.map +7 -0
  82. package/dist/lib/browser/spaces-ready-B2GYL5IN.mjs +243 -0
  83. package/dist/lib/browser/spaces-ready-B2GYL5IN.mjs.map +7 -0
  84. package/dist/lib/browser/state-I6JDZCDE.mjs +58 -0
  85. package/dist/lib/browser/state-I6JDZCDE.mjs.map +7 -0
  86. package/dist/lib/browser/types/index.mjs +18 -10
  87. package/dist/lib/node-esm/CollectionArticle-JGVNBX66.mjs +112 -0
  88. package/dist/lib/node-esm/CollectionArticle-JGVNBX66.mjs.map +7 -0
  89. package/dist/lib/node-esm/CollectionSection-BI66Y34F.mjs +24 -0
  90. package/dist/lib/node-esm/CollectionSection-BI66Y34F.mjs.map +7 -0
  91. package/dist/lib/node-esm/CreateObjectDialog-GCAWIXTK.mjs +143 -0
  92. package/dist/lib/node-esm/CreateObjectDialog-GCAWIXTK.mjs.map +7 -0
  93. package/dist/lib/node-esm/CreateSpaceDialog-J47M5FPQ.mjs +65 -0
  94. package/dist/lib/node-esm/CreateSpaceDialog-J47M5FPQ.mjs.map +7 -0
  95. package/dist/lib/node-esm/InlineSyncStatus-BLD57LB5.mjs +54 -0
  96. package/dist/lib/node-esm/InlineSyncStatus-BLD57LB5.mjs.map +7 -0
  97. package/dist/lib/node-esm/JoinDialog-XCOYKSHA.mjs +116 -0
  98. package/dist/lib/node-esm/JoinDialog-XCOYKSHA.mjs.map +7 -0
  99. package/dist/lib/node-esm/MembersContainer-4PV3Z4BA.mjs +258 -0
  100. package/dist/lib/node-esm/MembersContainer-4PV3Z4BA.mjs.map +7 -0
  101. package/dist/lib/node-esm/MenuFooter-PXG2GV6A.mjs +38 -0
  102. package/dist/lib/node-esm/MenuFooter-PXG2GV6A.mjs.map +7 -0
  103. package/dist/lib/node-esm/ObjectCardStack-DXBIXQI3.mjs +65 -0
  104. package/dist/lib/node-esm/ObjectCardStack-DXBIXQI3.mjs.map +7 -0
  105. package/dist/lib/node-esm/ObjectDetails-F3JBIK5E.mjs +44 -0
  106. package/dist/lib/node-esm/ObjectDetails-F3JBIK5E.mjs.map +7 -0
  107. package/dist/lib/node-esm/ObjectRenamePopover-BRPKVNVF.mjs +71 -0
  108. package/dist/lib/node-esm/ObjectRenamePopover-BRPKVNVF.mjs.map +7 -0
  109. package/dist/lib/node-esm/RecordArticle-XUIT25PP.mjs +113 -0
  110. package/dist/lib/node-esm/RecordArticle-XUIT25PP.mjs.map +7 -0
  111. package/dist/lib/node-esm/SchemaContainer-5G4R3Z6O.mjs +50 -0
  112. package/dist/lib/node-esm/SchemaContainer-5G4R3Z6O.mjs.map +7 -0
  113. package/dist/lib/node-esm/SmallPresenceLive-4K7RJS74.mjs +10 -0
  114. package/dist/lib/node-esm/SmallPresenceLive-4K7RJS74.mjs.map +7 -0
  115. package/dist/lib/node-esm/SpacePluginSettings-PENV4GHL.mjs +60 -0
  116. package/dist/lib/node-esm/SpacePluginSettings-PENV4GHL.mjs.map +7 -0
  117. package/dist/lib/node-esm/SpacePresence-H3VZWFJV.mjs +13 -0
  118. package/dist/lib/node-esm/SpacePresence-H3VZWFJV.mjs.map +7 -0
  119. package/dist/lib/node-esm/SpaceRenamePopover-XEMTI4PU.mjs +63 -0
  120. package/dist/lib/node-esm/SpaceRenamePopover-XEMTI4PU.mjs.map +7 -0
  121. package/dist/lib/node-esm/SpaceSettingsContainer-WI4D7RWA.mjs +243 -0
  122. package/dist/lib/node-esm/SpaceSettingsContainer-WI4D7RWA.mjs.map +7 -0
  123. package/dist/lib/node-esm/SyncStatus-TPCFGM4S.mjs +142 -0
  124. package/dist/lib/node-esm/SyncStatus-TPCFGM4S.mjs.map +7 -0
  125. package/dist/lib/node-esm/ViewEditor-CUQVNM2H.mjs +114 -0
  126. package/dist/lib/node-esm/ViewEditor-CUQVNM2H.mjs.map +7 -0
  127. package/dist/lib/node-esm/app-graph-builder-WTM6SSX7.mjs +1204 -0
  128. package/dist/lib/node-esm/app-graph-builder-WTM6SSX7.mjs.map +7 -0
  129. package/dist/lib/node-esm/app-graph-serializer-RT2RQTV2.mjs +86 -0
  130. package/dist/lib/node-esm/app-graph-serializer-RT2RQTV2.mjs.map +7 -0
  131. package/dist/lib/node-esm/chunk-2KM3ZHSP.mjs +577 -0
  132. package/dist/lib/node-esm/chunk-2KM3ZHSP.mjs.map +7 -0
  133. package/dist/lib/node-esm/chunk-2OLR2ZKH.mjs +119 -0
  134. package/dist/lib/node-esm/chunk-2OLR2ZKH.mjs.map +7 -0
  135. package/dist/lib/node-esm/chunk-5KTTTTEX.mjs +20 -0
  136. package/dist/lib/node-esm/chunk-5KTTTTEX.mjs.map +7 -0
  137. package/dist/lib/node-esm/chunk-63N5JJXI.mjs +18 -0
  138. package/dist/lib/node-esm/chunk-63N5JJXI.mjs.map +7 -0
  139. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs +169 -0
  140. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs.map +7 -0
  141. package/dist/lib/node-esm/chunk-EVNSLSQS.mjs +684 -0
  142. package/dist/lib/node-esm/chunk-EVNSLSQS.mjs.map +7 -0
  143. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs +78 -0
  144. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs.map +7 -0
  145. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs +117 -0
  146. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs.map +7 -0
  147. package/dist/lib/node-esm/{chunk-P442DOQ3.mjs → chunk-RYQQXNI7.mjs} +100 -67
  148. package/dist/lib/node-esm/chunk-RYQQXNI7.mjs.map +7 -0
  149. package/dist/lib/node-esm/chunk-XYLDAH5C.mjs +15 -0
  150. package/dist/lib/node-esm/chunk-XYLDAH5C.mjs.map +7 -0
  151. package/dist/lib/node-esm/cli/index.mjs +852 -0
  152. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  153. package/dist/lib/node-esm/identity-created-U5LGULVL.mjs +25 -0
  154. package/dist/lib/node-esm/identity-created-U5LGULVL.mjs.map +7 -0
  155. package/dist/lib/node-esm/index.mjs +233 -315
  156. package/dist/lib/node-esm/index.mjs.map +4 -4
  157. package/dist/lib/node-esm/meta.json +1 -1
  158. package/dist/lib/node-esm/operation-resolver-IL2AHNPN.mjs +808 -0
  159. package/dist/lib/node-esm/operation-resolver-IL2AHNPN.mjs.map +7 -0
  160. package/dist/lib/node-esm/react-root-ZGMTYSXL.mjs +31 -0
  161. package/dist/lib/node-esm/react-root-ZGMTYSXL.mjs.map +7 -0
  162. package/dist/lib/node-esm/react-surface-LK26ZXWC.mjs +365 -0
  163. package/dist/lib/node-esm/react-surface-LK26ZXWC.mjs.map +7 -0
  164. package/dist/lib/node-esm/repair-LRZHFPSJ.mjs +32 -0
  165. package/dist/lib/node-esm/repair-LRZHFPSJ.mjs.map +7 -0
  166. package/dist/lib/node-esm/settings-3EKSEAAG.mjs +35 -0
  167. package/dist/lib/node-esm/settings-3EKSEAAG.mjs.map +7 -0
  168. package/dist/lib/node-esm/spaces-ready-QK3EHBOS.mjs +244 -0
  169. package/dist/lib/node-esm/spaces-ready-QK3EHBOS.mjs.map +7 -0
  170. package/dist/lib/node-esm/state-W36RRYUO.mjs +59 -0
  171. package/dist/lib/node-esm/state-W36RRYUO.mjs.map +7 -0
  172. package/dist/lib/node-esm/types/index.mjs +18 -10
  173. package/dist/types/src/SpacePlugin.d.ts +3 -15
  174. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  175. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  176. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  177. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +33 -0
  178. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -0
  179. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts +19 -0
  180. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -0
  181. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts +6 -0
  182. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts.map +1 -0
  183. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +12 -0
  184. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -0
  185. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +57 -0
  186. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -0
  187. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts +2 -0
  188. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts.map +1 -0
  189. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +24 -0
  190. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -0
  191. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts +38 -0
  192. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts.map +1 -0
  193. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  194. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  195. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +5 -0
  196. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +1 -0
  197. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +3 -0
  198. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +1 -0
  199. package/dist/types/src/capabilities/identity-created/identity-created.d.ts +5 -0
  200. package/dist/types/src/capabilities/identity-created/identity-created.d.ts.map +1 -0
  201. package/dist/types/src/capabilities/identity-created/index.d.ts +3 -0
  202. package/dist/types/src/capabilities/identity-created/index.d.ts.map +1 -0
  203. package/dist/types/src/capabilities/index.d.ts +10 -21
  204. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  205. package/dist/types/src/capabilities/operation-resolver/index.d.ts +6 -0
  206. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  207. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +9 -0
  208. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  209. package/dist/types/src/capabilities/react-root/index.d.ts +6 -0
  210. package/dist/types/src/capabilities/react-root/index.d.ts.map +1 -0
  211. package/dist/types/src/capabilities/react-root/react-root.d.ts +9 -0
  212. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -0
  213. package/dist/types/src/capabilities/react-surface/index.d.ts +5 -0
  214. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  215. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +8 -0
  216. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  217. package/dist/types/src/capabilities/repair/index.d.ts +3 -0
  218. package/dist/types/src/capabilities/repair/index.d.ts.map +1 -0
  219. package/dist/types/src/capabilities/repair/repair.d.ts +6 -0
  220. package/dist/types/src/capabilities/repair/repair.d.ts.map +1 -0
  221. package/dist/types/src/capabilities/settings/index.d.ts +7 -0
  222. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  223. package/dist/types/src/capabilities/settings/settings.d.ts +10 -0
  224. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  225. package/dist/types/src/capabilities/spaces-ready/index.d.ts +3 -0
  226. package/dist/types/src/capabilities/spaces-ready/index.d.ts.map +1 -0
  227. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts +5 -0
  228. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts.map +1 -0
  229. package/dist/types/src/capabilities/state/index.d.ts +13 -0
  230. package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
  231. package/dist/types/src/capabilities/state/state.d.ts +17 -0
  232. package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
  233. package/dist/types/src/cli/commands/database/add.d.ts +16 -0
  234. package/dist/types/src/cli/commands/database/add.d.ts.map +1 -0
  235. package/dist/types/src/cli/commands/database/index.d.ts +3 -0
  236. package/dist/types/src/cli/commands/database/index.d.ts.map +1 -0
  237. package/dist/types/src/cli/commands/database/query/index.d.ts +2 -0
  238. package/dist/types/src/cli/commands/database/query/index.d.ts.map +1 -0
  239. package/dist/types/src/cli/commands/database/query/query.d.ts +13 -0
  240. package/dist/types/src/cli/commands/database/query/query.d.ts.map +1 -0
  241. package/dist/types/src/cli/commands/database/query/query.test.d.ts +2 -0
  242. package/dist/types/src/cli/commands/database/query/query.test.d.ts.map +1 -0
  243. package/dist/types/src/cli/commands/database/remove.d.ts +9 -0
  244. package/dist/types/src/cli/commands/database/remove.d.ts.map +1 -0
  245. package/dist/types/src/cli/commands/database/stats.d.ts +6 -0
  246. package/dist/types/src/cli/commands/database/stats.d.ts.map +1 -0
  247. package/dist/types/src/cli/commands/database/util.d.ts +14 -0
  248. package/dist/types/src/cli/commands/database/util.d.ts.map +1 -0
  249. package/dist/types/src/cli/commands/index.d.ts +4 -0
  250. package/dist/types/src/cli/commands/index.d.ts.map +1 -0
  251. package/dist/types/src/cli/commands/queue/index.d.ts +7 -0
  252. package/dist/types/src/cli/commands/queue/index.d.ts.map +1 -0
  253. package/dist/types/src/cli/commands/queue/query.d.ts +8 -0
  254. package/dist/types/src/cli/commands/queue/query.d.ts.map +1 -0
  255. package/dist/types/src/cli/commands/queue/util.d.ts +6 -0
  256. package/dist/types/src/cli/commands/queue/util.d.ts.map +1 -0
  257. package/dist/types/src/cli/commands/space/close/close.d.ts +12 -0
  258. package/dist/types/src/cli/commands/space/close/close.d.ts.map +1 -0
  259. package/dist/types/src/cli/commands/space/close/index.d.ts +2 -0
  260. package/dist/types/src/cli/commands/space/close/index.d.ts.map +1 -0
  261. package/dist/types/src/cli/commands/space/create/create.d.ts +12 -0
  262. package/dist/types/src/cli/commands/space/create/create.d.ts.map +1 -0
  263. package/dist/types/src/cli/commands/space/create/create.test.d.ts +2 -0
  264. package/dist/types/src/cli/commands/space/create/create.test.d.ts.map +1 -0
  265. package/dist/types/src/cli/commands/space/create/index.d.ts +2 -0
  266. package/dist/types/src/cli/commands/space/create/index.d.ts.map +1 -0
  267. package/dist/types/src/cli/commands/space/index.d.ts +31 -0
  268. package/dist/types/src/cli/commands/space/index.d.ts.map +1 -0
  269. package/dist/types/src/cli/commands/space/info/index.d.ts +2 -0
  270. package/dist/types/src/cli/commands/space/info/index.d.ts.map +1 -0
  271. package/dist/types/src/cli/commands/space/info/info.d.ts +13 -0
  272. package/dist/types/src/cli/commands/space/info/info.d.ts.map +1 -0
  273. package/dist/types/src/cli/commands/space/info/info.test.d.ts +2 -0
  274. package/dist/types/src/cli/commands/space/info/info.test.d.ts.map +1 -0
  275. package/dist/types/src/cli/commands/space/join/index.d.ts +2 -0
  276. package/dist/types/src/cli/commands/space/join/index.d.ts.map +1 -0
  277. package/dist/types/src/cli/commands/space/join/join.d.ts +14 -0
  278. package/dist/types/src/cli/commands/space/join/join.d.ts.map +1 -0
  279. package/dist/types/src/cli/commands/space/join/util.d.ts +17 -0
  280. package/dist/types/src/cli/commands/space/join/util.d.ts.map +1 -0
  281. package/dist/types/src/cli/commands/space/list/index.d.ts +2 -0
  282. package/dist/types/src/cli/commands/space/list/index.d.ts.map +1 -0
  283. package/dist/types/src/cli/commands/space/list/list.d.ts +7 -0
  284. package/dist/types/src/cli/commands/space/list/list.d.ts.map +1 -0
  285. package/dist/types/src/cli/commands/space/list/list.test.d.ts +2 -0
  286. package/dist/types/src/cli/commands/space/list/list.test.d.ts.map +1 -0
  287. package/dist/types/src/cli/commands/space/members/index.d.ts +2 -0
  288. package/dist/types/src/cli/commands/space/members/index.d.ts.map +1 -0
  289. package/dist/types/src/cli/commands/space/members/members.d.ts +13 -0
  290. package/dist/types/src/cli/commands/space/members/members.d.ts.map +1 -0
  291. package/dist/types/src/cli/commands/space/members/members.test.d.ts +2 -0
  292. package/dist/types/src/cli/commands/space/members/members.test.d.ts.map +1 -0
  293. package/dist/types/src/cli/commands/space/members/util.d.ts +9 -0
  294. package/dist/types/src/cli/commands/space/members/util.d.ts.map +1 -0
  295. package/dist/types/src/cli/commands/space/open/index.d.ts +2 -0
  296. package/dist/types/src/cli/commands/space/open/index.d.ts.map +1 -0
  297. package/dist/types/src/cli/commands/space/open/open.d.ts +12 -0
  298. package/dist/types/src/cli/commands/space/open/open.d.ts.map +1 -0
  299. package/dist/types/src/cli/commands/space/schema/index.d.ts +8 -0
  300. package/dist/types/src/cli/commands/space/schema/index.d.ts.map +1 -0
  301. package/dist/types/src/cli/commands/space/schema/list/index.d.ts +2 -0
  302. package/dist/types/src/cli/commands/space/schema/list/index.d.ts.map +1 -0
  303. package/dist/types/src/cli/commands/space/schema/list/list.d.ts +15 -0
  304. package/dist/types/src/cli/commands/space/schema/list/list.d.ts.map +1 -0
  305. package/dist/types/src/cli/commands/space/schema/list/list.test.d.ts +2 -0
  306. package/dist/types/src/cli/commands/space/schema/list/list.test.d.ts.map +1 -0
  307. package/dist/types/src/cli/commands/space/schema/list/util.d.ts +15 -0
  308. package/dist/types/src/cli/commands/space/schema/list/util.d.ts.map +1 -0
  309. package/dist/types/src/cli/commands/space/share/index.d.ts +2 -0
  310. package/dist/types/src/cli/commands/space/share/index.d.ts.map +1 -0
  311. package/dist/types/src/cli/commands/space/share/share.d.ts +19 -0
  312. package/dist/types/src/cli/commands/space/share/share.d.ts.map +1 -0
  313. package/dist/types/src/cli/commands/space/sync/index.d.ts +2 -0
  314. package/dist/types/src/cli/commands/space/sync/index.d.ts.map +1 -0
  315. package/dist/types/src/cli/commands/space/sync/sync.d.ts +6 -0
  316. package/dist/types/src/cli/commands/space/sync/sync.d.ts.map +1 -0
  317. package/dist/types/src/cli/commands/space/sync/sync.test.d.ts +2 -0
  318. package/dist/types/src/cli/commands/space/sync/sync.test.d.ts.map +1 -0
  319. package/dist/types/src/cli/index.d.ts +2 -0
  320. package/dist/types/src/cli/index.d.ts.map +1 -0
  321. package/dist/types/src/cli/plugin.d.ts +4 -0
  322. package/dist/types/src/cli/plugin.d.ts.map +1 -0
  323. package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -0
  324. package/dist/types/src/components/AwaitingObject/index.d.ts +2 -0
  325. package/dist/types/src/components/AwaitingObject/index.d.ts.map +1 -0
  326. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +27 -10
  327. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  328. package/dist/types/src/components/CreateDialog/index.d.ts +1 -2
  329. package/dist/types/src/components/CreateDialog/index.d.ts.map +1 -1
  330. package/dist/types/src/components/{ObjectSettings → ObjectDetails}/BaseObjectSettings.d.ts +3 -3
  331. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts.map +1 -0
  332. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts +1487 -0
  333. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts.map +1 -0
  334. package/dist/types/src/components/ObjectDetails/ForeignKeys.d.ts +8 -0
  335. package/dist/types/src/components/ObjectDetails/ForeignKeys.d.ts.map +1 -0
  336. package/dist/types/src/components/ObjectDetails/index.d.ts +3 -0
  337. package/dist/types/src/components/ObjectDetails/index.d.ts.map +1 -0
  338. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts +9 -0
  339. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts.map +1 -0
  340. package/dist/types/src/components/ObjectForm/index.d.ts +2 -0
  341. package/dist/types/src/components/ObjectForm/index.d.ts.map +1 -0
  342. package/dist/types/src/components/SyncStatus/index.d.ts +2 -2
  343. package/dist/types/src/components/SyncStatus/index.d.ts.map +1 -1
  344. package/dist/types/src/components/index.d.ts +2 -20
  345. package/dist/types/src/components/index.d.ts.map +1 -1
  346. package/dist/types/src/constants.d.ts +6 -0
  347. package/dist/types/src/constants.d.ts.map +1 -0
  348. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts +8 -0
  349. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -0
  350. package/dist/types/src/containers/CollectionArticle/index.d.ts +3 -0
  351. package/dist/types/src/containers/CollectionArticle/index.d.ts.map +1 -0
  352. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts +5 -0
  353. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -0
  354. package/dist/types/src/containers/CollectionSection/index.d.ts +3 -0
  355. package/dist/types/src/containers/CollectionSection/index.d.ts.map +1 -0
  356. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts +12 -0
  357. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -0
  358. package/dist/types/src/containers/CreateObjectDialog/index.d.ts +3 -0
  359. package/dist/types/src/containers/CreateObjectDialog/index.d.ts.map +1 -0
  360. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts +4 -0
  361. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -0
  362. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts +3 -0
  363. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts.map +1 -0
  364. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -0
  365. package/dist/types/src/containers/InlineSyncStatus/index.d.ts +3 -0
  366. package/dist/types/src/containers/InlineSyncStatus/index.d.ts.map +1 -0
  367. package/dist/types/src/{components → containers/JoinDialog}/JoinDialog.d.ts +1 -1
  368. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -0
  369. package/dist/types/src/containers/JoinDialog/index.d.ts +3 -0
  370. package/dist/types/src/containers/JoinDialog/index.d.ts.map +1 -0
  371. package/dist/types/src/{components → containers/MembersContainer}/MembersContainer.d.ts +3 -2
  372. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -0
  373. package/dist/types/src/containers/MembersContainer/index.d.ts +3 -0
  374. package/dist/types/src/containers/MembersContainer/index.d.ts.map +1 -0
  375. package/dist/types/src/{components → containers/MenuFooter}/MenuFooter.d.ts +1 -1
  376. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +1 -0
  377. package/dist/types/src/containers/MenuFooter/index.d.ts +3 -0
  378. package/dist/types/src/containers/MenuFooter/index.d.ts.map +1 -0
  379. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts +11 -0
  380. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -0
  381. package/dist/types/src/containers/ObjectCardStack/index.d.ts +3 -0
  382. package/dist/types/src/containers/ObjectCardStack/index.d.ts.map +1 -0
  383. package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts +10 -0
  384. package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts.map +1 -0
  385. package/dist/types/src/containers/ObjectDetails/index.d.ts +3 -0
  386. package/dist/types/src/containers/ObjectDetails/index.d.ts.map +1 -0
  387. package/dist/types/src/containers/ObjectRenamePopover/ObjectRenamePopover.d.ts +7 -0
  388. package/dist/types/src/containers/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -0
  389. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts +3 -0
  390. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts.map +1 -0
  391. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts +4 -0
  392. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -0
  393. package/dist/types/src/containers/RecordArticle/index.d.ts +3 -0
  394. package/dist/types/src/containers/RecordArticle/index.d.ts.map +1 -0
  395. package/dist/types/src/{components → containers/SchemaContainer}/SchemaContainer.d.ts +2 -2
  396. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -0
  397. package/dist/types/src/containers/SchemaContainer/index.d.ts +3 -0
  398. package/dist/types/src/containers/SchemaContainer/index.d.ts.map +1 -0
  399. package/dist/types/src/containers/SmallPresenceLive/index.d.ts +2 -0
  400. package/dist/types/src/containers/SmallPresenceLive/index.d.ts.map +1 -0
  401. package/dist/types/src/containers/SpacePluginSettings/SpacePluginSettings.d.ts +8 -0
  402. package/dist/types/src/containers/SpacePluginSettings/SpacePluginSettings.d.ts.map +1 -0
  403. package/dist/types/src/containers/SpacePluginSettings/index.d.ts +3 -0
  404. package/dist/types/src/containers/SpacePluginSettings/index.d.ts.map +1 -0
  405. package/dist/types/src/{components → containers/SpacePresence}/SpacePresence.d.ts +7 -6
  406. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -0
  407. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +1484 -0
  408. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -0
  409. package/dist/types/src/containers/SpacePresence/index.d.ts +3 -0
  410. package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -0
  411. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts +7 -0
  412. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -0
  413. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts +3 -0
  414. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts.map +1 -0
  415. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts +10 -0
  416. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -0
  417. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +1490 -0
  418. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -0
  419. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts +3 -0
  420. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts.map +1 -0
  421. package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts.map +1 -0
  422. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +1489 -0
  423. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -0
  424. package/dist/types/src/containers/SyncStatus/index.d.ts +3 -0
  425. package/dist/types/src/containers/SyncStatus/index.d.ts.map +1 -0
  426. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts +7 -0
  427. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -0
  428. package/dist/types/src/containers/ViewEditor/index.d.ts +3 -0
  429. package/dist/types/src/containers/ViewEditor/index.d.ts.map +1 -0
  430. package/dist/types/src/containers/index.d.ts +23 -0
  431. package/dist/types/src/containers/index.d.ts.map +1 -0
  432. package/dist/types/src/helpers/index.d.ts +2 -0
  433. package/dist/types/src/helpers/index.d.ts.map +1 -0
  434. package/dist/types/src/helpers/query.d.ts +7 -0
  435. package/dist/types/src/helpers/query.d.ts.map +1 -0
  436. package/dist/types/src/helpers/query.test.d.ts +2 -0
  437. package/dist/types/src/helpers/query.test.d.ts.map +1 -0
  438. package/dist/types/src/hooks/index.d.ts +1 -0
  439. package/dist/types/src/hooks/index.d.ts.map +1 -1
  440. package/dist/types/src/hooks/useActiveSpace.d.ts +2 -2
  441. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  442. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +2 -8
  443. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  444. package/dist/types/src/hooks/usePath.d.ts +3 -3
  445. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  446. package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
  447. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
  448. package/dist/types/src/index.d.ts +3 -3
  449. package/dist/types/src/index.d.ts.map +1 -1
  450. package/dist/types/src/meta.d.ts +2 -3
  451. package/dist/types/src/meta.d.ts.map +1 -1
  452. package/dist/types/src/translations.d.ts +1324 -67
  453. package/dist/types/src/translations.d.ts.map +1 -1
  454. package/dist/types/src/types/capabilities.d.ts +71 -0
  455. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  456. package/dist/types/src/types/events.d.ts +9 -0
  457. package/dist/types/src/types/events.d.ts.map +1 -0
  458. package/dist/types/src/types/form.d.ts +20 -0
  459. package/dist/types/src/types/form.d.ts.map +1 -0
  460. package/dist/types/src/types/index.d.ts +3 -0
  461. package/dist/types/src/types/index.d.ts.map +1 -1
  462. package/dist/types/src/types/types.d.ts +582 -421
  463. package/dist/types/src/types/types.d.ts.map +1 -1
  464. package/dist/types/src/util.d.ts +11 -133
  465. package/dist/types/src/util.d.ts.map +1 -1
  466. package/dist/types/tsconfig.tsbuildinfo +1 -1
  467. package/package.json +89 -66
  468. package/src/SpacePlugin.ts +188 -255
  469. package/src/capabilities/app-graph-builder/app-graph-builder.ts +32 -0
  470. package/src/capabilities/app-graph-builder/extensions/collections.ts +351 -0
  471. package/src/capabilities/app-graph-builder/extensions/companions.ts +80 -0
  472. package/src/capabilities/app-graph-builder/extensions/index.ts +9 -0
  473. package/src/capabilities/app-graph-builder/extensions/settings.ts +60 -0
  474. package/src/capabilities/app-graph-builder/extensions/shared.test.ts +112 -0
  475. package/src/capabilities/app-graph-builder/extensions/shared.ts +171 -0
  476. package/src/capabilities/app-graph-builder/extensions/spaces.ts +338 -0
  477. package/src/capabilities/app-graph-builder/extensions/types.ts +421 -0
  478. package/src/capabilities/app-graph-builder/index.ts +7 -0
  479. package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +83 -0
  480. package/src/capabilities/app-graph-serializer/index.ts +7 -0
  481. package/src/capabilities/identity-created/identity-created.ts +29 -0
  482. package/src/capabilities/identity-created/index.ts +7 -0
  483. package/src/capabilities/index.ts +10 -15
  484. package/src/capabilities/operation-resolver/index.ts +7 -0
  485. package/src/capabilities/operation-resolver/operation-resolver.ts +763 -0
  486. package/src/capabilities/react-root/index.ts +7 -0
  487. package/src/capabilities/react-root/react-root.tsx +25 -0
  488. package/src/capabilities/react-surface/index.ts +7 -0
  489. package/src/capabilities/react-surface/react-surface.tsx +355 -0
  490. package/src/capabilities/repair/index.ts +7 -0
  491. package/src/capabilities/repair/repair.ts +42 -0
  492. package/src/capabilities/settings/index.ts +7 -0
  493. package/src/capabilities/settings/settings.ts +33 -0
  494. package/src/capabilities/spaces-ready/index.ts +7 -0
  495. package/src/capabilities/spaces-ready/spaces-ready.ts +290 -0
  496. package/src/capabilities/state/index.ts +7 -0
  497. package/src/capabilities/state/state.ts +66 -0
  498. package/src/cli/commands/database/add.ts +114 -0
  499. package/src/cli/commands/database/index.ts +16 -0
  500. package/src/cli/commands/database/query/index.ts +5 -0
  501. package/src/cli/commands/database/query/query.test.ts +55 -0
  502. package/src/cli/commands/database/query/query.ts +44 -0
  503. package/src/cli/commands/database/remove.ts +51 -0
  504. package/src/cli/commands/database/stats.ts +44 -0
  505. package/src/cli/commands/database/util.ts +32 -0
  506. package/src/cli/commands/index.ts +7 -0
  507. package/src/cli/commands/queue/index.ts +12 -0
  508. package/src/cli/commands/queue/query.ts +45 -0
  509. package/src/cli/commands/queue/util.ts +19 -0
  510. package/src/cli/commands/space/close/close.ts +40 -0
  511. package/src/cli/commands/space/close/index.ts +5 -0
  512. package/src/cli/commands/space/create/create.test.ts +67 -0
  513. package/src/cli/commands/space/create/create.ts +61 -0
  514. package/src/cli/commands/space/create/index.ts +5 -0
  515. package/src/cli/commands/space/index.ts +21 -0
  516. package/src/cli/commands/space/info/index.ts +5 -0
  517. package/src/cli/commands/space/info/info.test.ts +47 -0
  518. package/src/cli/commands/space/info/info.ts +37 -0
  519. package/src/cli/commands/space/join/index.ts +5 -0
  520. package/src/cli/commands/space/join/join.ts +122 -0
  521. package/src/cli/commands/space/join/util.ts +82 -0
  522. package/src/cli/commands/space/list/index.ts +5 -0
  523. package/src/cli/commands/space/list/list.test.ts +36 -0
  524. package/src/cli/commands/space/list/list.ts +30 -0
  525. package/src/cli/commands/space/members/index.ts +5 -0
  526. package/src/cli/commands/space/members/members.test.ts +46 -0
  527. package/src/cli/commands/space/members/members.ts +40 -0
  528. package/src/cli/commands/space/members/util.ts +29 -0
  529. package/src/cli/commands/space/open/index.ts +5 -0
  530. package/src/cli/commands/space/open/open.ts +39 -0
  531. package/src/cli/commands/space/schema/index.ts +12 -0
  532. package/src/cli/commands/space/schema/list/index.ts +5 -0
  533. package/src/cli/commands/space/schema/list/list.test.ts +42 -0
  534. package/src/cli/commands/space/schema/list/list.ts +64 -0
  535. package/src/cli/commands/space/schema/list/util.ts +39 -0
  536. package/src/cli/commands/space/share/index.ts +5 -0
  537. package/src/cli/commands/space/share/share.ts +112 -0
  538. package/src/cli/commands/space/sync/index.ts +5 -0
  539. package/src/cli/commands/space/sync/sync.test.ts +12 -0
  540. package/src/cli/commands/space/sync/sync.ts +33 -0
  541. package/src/cli/index.ts +5 -0
  542. package/src/cli/plugin.ts +88 -0
  543. package/src/components/{AwaitingObject.tsx → AwaitingObject/AwaitingObject.tsx} +23 -21
  544. package/src/components/AwaitingObject/index.ts +5 -0
  545. package/src/components/CreateDialog/CreateObjectPanel.tsx +156 -108
  546. package/src/components/CreateDialog/index.ts +1 -2
  547. package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +63 -0
  548. package/src/components/ObjectDetails/BaseObjectSettings.tsx +122 -0
  549. package/src/components/{ObjectSettings → ObjectDetails}/ForeignKeys.tsx +7 -7
  550. package/src/components/ObjectDetails/index.ts +6 -0
  551. package/src/components/ObjectForm/ObjectForm.tsx +97 -0
  552. package/src/components/ObjectForm/index.ts +5 -0
  553. package/src/components/SyncStatus/index.ts +2 -2
  554. package/src/components/SyncStatus/save-tracker.ts +2 -2
  555. package/src/components/index.ts +2 -18
  556. package/src/constants.ts +11 -0
  557. package/src/containers/CollectionArticle/CollectionArticle.tsx +133 -0
  558. package/src/containers/CollectionArticle/index.ts +7 -0
  559. package/src/containers/CollectionSection/CollectionSection.tsx +22 -0
  560. package/src/containers/CollectionSection/index.ts +7 -0
  561. package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +164 -0
  562. package/src/containers/CreateObjectDialog/index.ts +6 -0
  563. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.tsx +72 -0
  564. package/src/containers/CreateSpaceDialog/index.ts +7 -0
  565. package/src/containers/InlineSyncStatus/InlineSyncStatus.tsx +51 -0
  566. package/src/containers/InlineSyncStatus/index.ts +7 -0
  567. package/src/{components → containers/JoinDialog}/JoinDialog.tsx +29 -39
  568. package/src/containers/JoinDialog/index.ts +6 -0
  569. package/src/{components → containers/MembersContainer}/MembersContainer.tsx +94 -98
  570. package/src/containers/MembersContainer/index.ts +7 -0
  571. package/src/{components → containers/MenuFooter}/MenuFooter.tsx +7 -7
  572. package/src/containers/MenuFooter/index.ts +7 -0
  573. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +82 -0
  574. package/src/containers/ObjectCardStack/index.ts +7 -0
  575. package/src/containers/ObjectDetails/ObjectDetails.tsx +36 -0
  576. package/src/containers/ObjectDetails/index.ts +7 -0
  577. package/src/containers/ObjectRenamePopover/ObjectRenamePopover.tsx +52 -0
  578. package/src/containers/ObjectRenamePopover/index.ts +7 -0
  579. package/src/containers/RecordArticle/RecordArticle.tsx +124 -0
  580. package/src/containers/RecordArticle/index.ts +7 -0
  581. package/src/containers/SchemaContainer/SchemaContainer.tsx +60 -0
  582. package/src/containers/SchemaContainer/index.ts +7 -0
  583. package/src/containers/SmallPresenceLive/index.ts +5 -0
  584. package/src/containers/SpacePluginSettings/SpacePluginSettings.tsx +65 -0
  585. package/src/containers/SpacePluginSettings/index.ts +7 -0
  586. package/src/{components → containers/SpacePresence}/SpacePresence.stories.tsx +24 -23
  587. package/src/{components → containers/SpacePresence}/SpacePresence.tsx +34 -42
  588. package/src/containers/SpacePresence/index.ts +6 -0
  589. package/src/{components/PopoverRenameSpace.tsx → containers/SpaceRenamePopover/SpaceRenamePopover.tsx} +16 -16
  590. package/src/containers/SpaceRenamePopover/index.ts +7 -0
  591. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.tsx +46 -0
  592. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +202 -0
  593. package/src/containers/SpaceSettingsContainer/index.ts +7 -0
  594. package/src/{components → containers}/SyncStatus/SyncStatus.stories.tsx +10 -10
  595. package/src/containers/SyncStatus/SyncStatus.tsx +153 -0
  596. package/src/containers/SyncStatus/index.ts +7 -0
  597. package/src/containers/ViewEditor/ViewEditor.tsx +102 -0
  598. package/src/containers/ViewEditor/index.ts +7 -0
  599. package/src/containers/index.ts +28 -0
  600. package/src/helpers/index.ts +5 -0
  601. package/src/helpers/query.test.ts +24 -0
  602. package/src/helpers/query.ts +166 -0
  603. package/src/hooks/index.ts +1 -0
  604. package/src/hooks/useActiveSpace.ts +11 -7
  605. package/src/hooks/useInputSurfaceLookup.tsx +9 -13
  606. package/src/hooks/usePath.ts +5 -5
  607. package/src/hooks/useTypeOptions.ts +25 -0
  608. package/src/index.ts +4 -3
  609. package/src/meta.ts +8 -5
  610. package/src/translations.ts +96 -58
  611. package/src/types/capabilities.ts +73 -0
  612. package/src/types/events.ts +16 -0
  613. package/src/types/form.ts +62 -0
  614. package/src/types/index.ts +3 -0
  615. package/src/types/types.ts +521 -256
  616. package/src/util.ts +82 -0
  617. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs +0 -31
  618. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  619. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs +0 -88
  620. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs.map +0 -7
  621. package/dist/lib/browser/app-graph-builder-V3MP3CDK.mjs +0 -480
  622. package/dist/lib/browser/app-graph-builder-V3MP3CDK.mjs.map +0 -7
  623. package/dist/lib/browser/app-graph-serializer-H6AW7KGS.mjs +0 -80
  624. package/dist/lib/browser/app-graph-serializer-H6AW7KGS.mjs.map +0 -7
  625. package/dist/lib/browser/chunk-CEFHNVU7.mjs +0 -20
  626. package/dist/lib/browser/chunk-CEFHNVU7.mjs.map +0 -7
  627. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  628. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  629. package/dist/lib/browser/chunk-FBJEXW54.mjs +0 -1984
  630. package/dist/lib/browser/chunk-FBJEXW54.mjs.map +0 -7
  631. package/dist/lib/browser/chunk-JS3MMC42.mjs +0 -19
  632. package/dist/lib/browser/chunk-JS3MMC42.mjs.map +0 -7
  633. package/dist/lib/browser/chunk-QACNNDOT.mjs.map +0 -7
  634. package/dist/lib/browser/chunk-SGTQ52SU.mjs +0 -338
  635. package/dist/lib/browser/chunk-SGTQ52SU.mjs.map +0 -7
  636. package/dist/lib/browser/chunk-VLBRSGJ2.mjs +0 -94
  637. package/dist/lib/browser/chunk-VLBRSGJ2.mjs.map +0 -7
  638. package/dist/lib/browser/chunk-XUYKJUU7.mjs +0 -649
  639. package/dist/lib/browser/chunk-XUYKJUU7.mjs.map +0 -7
  640. package/dist/lib/browser/identity-created-23XJJV2N.mjs +0 -23
  641. package/dist/lib/browser/identity-created-23XJJV2N.mjs.map +0 -7
  642. package/dist/lib/browser/intent-resolver-XHGD73WZ.mjs +0 -760
  643. package/dist/lib/browser/intent-resolver-XHGD73WZ.mjs.map +0 -7
  644. package/dist/lib/browser/react-root-CMWOGJG5.mjs +0 -29
  645. package/dist/lib/browser/react-root-CMWOGJG5.mjs.map +0 -7
  646. package/dist/lib/browser/react-surface-YWZZQF7H.mjs +0 -375
  647. package/dist/lib/browser/react-surface-YWZZQF7H.mjs.map +0 -7
  648. package/dist/lib/browser/schema-defs-Z6FC4AHC.mjs +0 -26
  649. package/dist/lib/browser/schema-defs-Z6FC4AHC.mjs.map +0 -7
  650. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs +0 -124
  651. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs.map +0 -7
  652. package/dist/lib/browser/settings-4IMP5RYT.mjs +0 -24
  653. package/dist/lib/browser/settings-4IMP5RYT.mjs.map +0 -7
  654. package/dist/lib/browser/spaces-ready-TOPG6IV4.mjs +0 -199
  655. package/dist/lib/browser/spaces-ready-TOPG6IV4.mjs.map +0 -7
  656. package/dist/lib/browser/state-QYZAB45H.mjs +0 -47
  657. package/dist/lib/browser/state-QYZAB45H.mjs.map +0 -7
  658. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs +0 -32
  659. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  660. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs +0 -89
  661. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs.map +0 -7
  662. package/dist/lib/node-esm/app-graph-builder-SG4VECBB.mjs +0 -481
  663. package/dist/lib/node-esm/app-graph-builder-SG4VECBB.mjs.map +0 -7
  664. package/dist/lib/node-esm/app-graph-serializer-2ICUGQQT.mjs +0 -81
  665. package/dist/lib/node-esm/app-graph-serializer-2ICUGQQT.mjs.map +0 -7
  666. package/dist/lib/node-esm/chunk-2A3VBXBP.mjs +0 -1985
  667. package/dist/lib/node-esm/chunk-2A3VBXBP.mjs.map +0 -7
  668. package/dist/lib/node-esm/chunk-4AOMYKDE.mjs +0 -650
  669. package/dist/lib/node-esm/chunk-4AOMYKDE.mjs.map +0 -7
  670. package/dist/lib/node-esm/chunk-5HHYE264.mjs +0 -20
  671. package/dist/lib/node-esm/chunk-5HHYE264.mjs.map +0 -7
  672. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs +0 -21
  673. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs.map +0 -7
  674. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs +0 -15
  675. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  676. package/dist/lib/node-esm/chunk-JH6F4C3I.mjs +0 -339
  677. package/dist/lib/node-esm/chunk-JH6F4C3I.mjs.map +0 -7
  678. package/dist/lib/node-esm/chunk-P442DOQ3.mjs.map +0 -7
  679. package/dist/lib/node-esm/chunk-SSLBYZEY.mjs +0 -96
  680. package/dist/lib/node-esm/chunk-SSLBYZEY.mjs.map +0 -7
  681. package/dist/lib/node-esm/identity-created-IJQO6GCR.mjs +0 -25
  682. package/dist/lib/node-esm/identity-created-IJQO6GCR.mjs.map +0 -7
  683. package/dist/lib/node-esm/intent-resolver-LEANKSKZ.mjs +0 -761
  684. package/dist/lib/node-esm/intent-resolver-LEANKSKZ.mjs.map +0 -7
  685. package/dist/lib/node-esm/react-root-5Y7LJRX6.mjs +0 -30
  686. package/dist/lib/node-esm/react-root-5Y7LJRX6.mjs.map +0 -7
  687. package/dist/lib/node-esm/react-surface-YQFNIKYT.mjs +0 -376
  688. package/dist/lib/node-esm/react-surface-YQFNIKYT.mjs.map +0 -7
  689. package/dist/lib/node-esm/schema-defs-WHJM7UZE.mjs +0 -27
  690. package/dist/lib/node-esm/schema-defs-WHJM7UZE.mjs.map +0 -7
  691. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs +0 -126
  692. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs.map +0 -7
  693. package/dist/lib/node-esm/settings-SAOBPND3.mjs +0 -25
  694. package/dist/lib/node-esm/settings-SAOBPND3.mjs.map +0 -7
  695. package/dist/lib/node-esm/spaces-ready-HIUKNDZK.mjs +0 -200
  696. package/dist/lib/node-esm/spaces-ready-HIUKNDZK.mjs.map +0 -7
  697. package/dist/lib/node-esm/state-ZVEHQ4BJ.mjs +0 -48
  698. package/dist/lib/node-esm/state-ZVEHQ4BJ.mjs.map +0 -7
  699. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  700. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  701. package/dist/types/src/capabilities/app-graph-serializer.d.ts +0 -4
  702. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +0 -1
  703. package/dist/types/src/capabilities/capabilities.d.ts +0 -28
  704. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  705. package/dist/types/src/capabilities/identity-created.d.ts +0 -4
  706. package/dist/types/src/capabilities/identity-created.d.ts.map +0 -1
  707. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -9
  708. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  709. package/dist/types/src/capabilities/react-root.d.ts +0 -7
  710. package/dist/types/src/capabilities/react-root.d.ts.map +0 -1
  711. package/dist/types/src/capabilities/react-surface.d.ts +0 -7
  712. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  713. package/dist/types/src/capabilities/schema-defs.d.ts +0 -4
  714. package/dist/types/src/capabilities/schema-defs.d.ts.map +0 -1
  715. package/dist/types/src/capabilities/schema-tool.test.d.ts +0 -2
  716. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +0 -1
  717. package/dist/types/src/capabilities/schema-tools.d.ts +0 -13
  718. package/dist/types/src/capabilities/schema-tools.d.ts.map +0 -1
  719. package/dist/types/src/capabilities/settings.d.ts +0 -4
  720. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  721. package/dist/types/src/capabilities/spaces-ready.d.ts +0 -4
  722. package/dist/types/src/capabilities/spaces-ready.d.ts.map +0 -1
  723. package/dist/types/src/capabilities/state.d.ts +0 -5
  724. package/dist/types/src/capabilities/state.d.ts.map +0 -1
  725. package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
  726. package/dist/types/src/components/CollectionMain.d.ts +0 -7
  727. package/dist/types/src/components/CollectionMain.d.ts.map +0 -1
  728. package/dist/types/src/components/CollectionSection.d.ts +0 -6
  729. package/dist/types/src/components/CollectionSection.d.ts.map +0 -1
  730. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +0 -10
  731. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +0 -1
  732. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +0 -10
  733. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +0 -1
  734. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +0 -4
  735. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +0 -1
  736. package/dist/types/src/components/JoinDialog.d.ts.map +0 -1
  737. package/dist/types/src/components/MembersContainer.d.ts.map +0 -1
  738. package/dist/types/src/components/MembersContainer.stories.d.ts +0 -8
  739. package/dist/types/src/components/MembersContainer.stories.d.ts.map +0 -1
  740. package/dist/types/src/components/MenuFooter.d.ts.map +0 -1
  741. package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
  742. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
  743. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +0 -7
  744. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +0 -1
  745. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +0 -1
  746. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +0 -8
  747. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +0 -1
  748. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +0 -8
  749. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +0 -1
  750. package/dist/types/src/components/ObjectSettings/index.d.ts +0 -2
  751. package/dist/types/src/components/ObjectSettings/index.d.ts.map +0 -1
  752. package/dist/types/src/components/PersistenceStatus.d.ts +0 -6
  753. package/dist/types/src/components/PersistenceStatus.d.ts.map +0 -1
  754. package/dist/types/src/components/PopoverRenameObject.d.ts +0 -7
  755. package/dist/types/src/components/PopoverRenameObject.d.ts.map +0 -1
  756. package/dist/types/src/components/PopoverRenameSpace.d.ts +0 -7
  757. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +0 -1
  758. package/dist/types/src/components/SchemaContainer.d.ts.map +0 -1
  759. package/dist/types/src/components/SpacePluginSettings.d.ts +0 -6
  760. package/dist/types/src/components/SpacePluginSettings.d.ts.map +0 -1
  761. package/dist/types/src/components/SpacePresence.d.ts.map +0 -1
  762. package/dist/types/src/components/SpacePresence.stories.d.ts +0 -9
  763. package/dist/types/src/components/SpacePresence.stories.d.ts.map +0 -1
  764. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +0 -7
  765. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +0 -1
  766. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +0 -7
  767. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +0 -1
  768. package/dist/types/src/components/SpaceSettings/index.d.ts +0 -2
  769. package/dist/types/src/components/SpaceSettings/index.d.ts.map +0 -1
  770. package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +0 -1
  771. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +0 -1
  772. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +0 -9
  773. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +0 -1
  774. package/dist/types/src/components/ViewEditor.d.ts +0 -8
  775. package/dist/types/src/components/ViewEditor.d.ts.map +0 -1
  776. package/dist/types/src/events.d.ts +0 -8
  777. package/dist/types/src/events.d.ts.map +0 -1
  778. package/src/capabilities/app-graph-builder.ts +0 -705
  779. package/src/capabilities/app-graph-serializer.ts +0 -76
  780. package/src/capabilities/capabilities.ts +0 -29
  781. package/src/capabilities/identity-created.ts +0 -25
  782. package/src/capabilities/intent-resolver.ts +0 -694
  783. package/src/capabilities/react-root.tsx +0 -20
  784. package/src/capabilities/react-surface.tsx +0 -391
  785. package/src/capabilities/schema-defs.ts +0 -30
  786. package/src/capabilities/schema-tool.test.ts +0 -44
  787. package/src/capabilities/schema-tools.ts +0 -125
  788. package/src/capabilities/settings.ts +0 -21
  789. package/src/capabilities/spaces-ready.ts +0 -231
  790. package/src/capabilities/state.ts +0 -45
  791. package/src/components/CollectionMain.tsx +0 -32
  792. package/src/components/CollectionSection.tsx +0 -20
  793. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +0 -84
  794. package/src/components/CreateDialog/CreateObjectDialog.tsx +0 -124
  795. package/src/components/CreateDialog/CreateSpaceDialog.tsx +0 -66
  796. package/src/components/MembersContainer.stories.tsx +0 -30
  797. package/src/components/ObjectDetailsPanel.tsx +0 -77
  798. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +0 -80
  799. package/src/components/ObjectSettings/BaseObjectSettings.tsx +0 -47
  800. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +0 -36
  801. package/src/components/ObjectSettings/index.ts +0 -5
  802. package/src/components/PersistenceStatus.tsx +0 -83
  803. package/src/components/PopoverRenameObject.tsx +0 -62
  804. package/src/components/SchemaContainer.tsx +0 -59
  805. package/src/components/SpacePluginSettings.tsx +0 -53
  806. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +0 -38
  807. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +0 -184
  808. package/src/components/SpaceSettings/index.ts +0 -5
  809. package/src/components/SyncStatus/InlineSyncStatus.tsx +0 -62
  810. package/src/components/SyncStatus/SyncStatus.tsx +0 -58
  811. package/src/components/ViewEditor.tsx +0 -64
  812. package/src/events.ts +0 -15
  813. package/src/util.tsx +0 -668
  814. /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
  815. /package/dist/types/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.d.ts +0 -0
  816. /package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/AwaitingObject/AwaitingObject.tsx", "../../../src/components/CreateDialog/CreateObjectPanel.tsx", "../../../src/components/ObjectDetails/BaseObjectSettings.tsx", "../../../src/components/ObjectDetails/ForeignKeys.tsx", "../../../src/components/ObjectForm/ObjectForm.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 { Obj } from '@dxos/echo';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, 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 '../../types';\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.id);\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.getDXN(object).toString() === 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 return (\n <Toast.Root open={open} duration={TOAST_TIMEOUT} onOpenChange={setOpen}>\n <Toast.Body>\n <Toast.Title classNames='flex items-center gap-2'>\n {found ? (\n <>\n <Icon icon='ph--check-circle--regular' size={5} />\n <span>{t('found object label')}</span>\n </>\n ) : waiting ? (\n <>\n <Icon icon='ph--circle-notch--regular' size={5} classNames='animate-spin' />\n <span>{t('waiting for object label')}</span>\n </>\n ) : (\n <>\n <Icon icon='ph--circle-dashed--regular' size={5} />\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.Body>\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 type * as Schema from 'effect/Schema';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { type Database, Obj } from '@dxos/echo';\nimport { type Collection } from '@dxos/echo';\nimport { type AnyProperties } from '@dxos/echo/internal';\nimport { type Space, type SpaceId } from '@dxos/react-client/echo';\nimport { toLocalizedString, useDefaultValue, useTranslation } from '@dxos/react-ui';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { SearchList, useSearchListResults } from '@dxos/react-ui-searchlist';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { useInputSurfaceLookup } from '../../hooks';\nimport { meta } from '../../meta';\nimport { type CreateObject } from '../../types';\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};\n\nexport type Metadata = {\n createObject: CreateObject;\n inputSchema?: Schema.Schema.AnyNoContext;\n icon?: string;\n};\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) {\n await onCreateObject?.({ metadata });\n } else {\n onTypenameChange?.(id);\n }\n },\n [resolve, onCreateObject],\n );\n\n const inputSurfaceLookup = useInputSurfaceLookup({ target });\n\n // TODO(wittjosiah): These inputs should be rolled into a `Form` once it supports the necessary variants.\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.inputSchema) {\n return (\n <Form.Root\n testId='create-object-form'\n autoFocus\n schema={omitId(metadata.inputSchema)}\n defaultValues={initialFormValues}\n db={Obj.isObject(target) ? Obj.getDatabase(target) : target}\n fieldProvider={inputSurfaceLookup}\n onSave={handleCreateObject}\n >\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n <Form.Submit />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n );\n }\n\n return null;\n};\n\nCreateObjectPanel.displayName = 'CreateObjectPanel';\n\nconst SelectSpace = ({\n spaces,\n defaultSpaceId,\n onChange,\n}: { onChange?: (db: Database.Database) => void } & Pick<CreateObjectPanelProps, 'spaces' | 'defaultSpaceId'>) => {\n const { t } = useTranslation(meta.id);\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.Content>\n <SearchList.Input\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 <SearchList.Item\n key={space.id}\n value={space.id}\n label={toLocalizedString(\n getSpaceDisplayName(space, {\n personal: space.id === defaultSpaceId,\n }),\n t,\n )}\n onSelect={() => onChange?.(space.db)}\n classNames='flex items-center gap-2'\n />\n ))}\n </SearchList.Viewport>\n </SearchList.Content>\n </SearchList.Root>\n );\n};\n\nconst SelectType = ({ options, onChange }: { options: CreateObjectOption[]; onChange: (id: string) => void }) => {\n const { t } = useTranslation(meta.id);\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.Content>\n <SearchList.Input\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 <SearchList.Item\n key={option.id}\n value={option.id}\n label={option.label}\n icon={option.icon ?? 'ph--placeholder--regular'}\n classNames='flex items-center gap-2'\n onSelect={() => onChange(option.id)}\n />\n ))}\n </SearchList.Viewport>\n </SearchList.Content>\n </SearchList.Root>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\nimport React, { type PropsWithChildren, useCallback, useMemo } from 'react';\n\nimport { DXN, Obj, Ref, Tag, Type } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta as pluginMeta } from '../../meta';\n\n// TODO(wittjosiah): Would be nice to control order when extending so this isn't always first/last.\nconst BaseSchema = Schema.Struct({\n tags: Schema.Array(Ref.Ref(Tag.Tag)).pipe(Schema.optional),\n});\n\nexport type BaseObjectSettingsProps = ThemedClassName<\n PropsWithChildren<{\n object: Obj.Unknown;\n }>\n>;\n\n// TODO(wittjosiah): Reconcile w/ ObjectForm.\nexport const BaseObjectSettings = ({ classNames, children, object }: BaseObjectSettingsProps) => {\n const db = Obj.getDatabase(object);\n\n const formSchema = useMemo(() => {\n return Function.pipe(\n Obj.getSchema(object),\n Option.fromNullable,\n Option.map((schema) => BaseSchema.pipe(Schema.extend(schema))),\n Option.getOrUndefined,\n );\n }, [object]);\n\n const meta = Obj.getMeta(object);\n const tags = (meta.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);\n const values = useMemo(\n () => ({\n tags,\n ...object,\n }),\n [object, tags],\n );\n\n const handleCreate = useCallback((schema: Type.AnyEntity, values: any) => {\n invariant(db);\n invariant(Type.isObjectSchema(schema));\n const newObject = db.add(Obj.make(schema, values));\n if (Obj.instanceOf(Tag.Tag, newObject)) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = [...(Obj.getMeta(obj).tags ?? []), Obj.getDXN(newObject).toString()];\n });\n }\n }, []);\n\n // TODO(wittjosiah): Use FormRootProps type.\n const handleChange = useCallback(\n (\n { tags, ...values }: Schema.Schema.Type<typeof formSchema>,\n { isValid, changed }: { isValid: boolean; changed: Record<JsonPath, boolean> },\n ) => {\n if (!isValid) {\n return;\n }\n\n const changedPaths = Object.keys(changed).filter((path) => changed[path as JsonPath]) as JsonPath[];\n\n // Handle tags separately using Obj.change.\n const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === 'tags');\n if (hasTagsChange) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = tags?.map((tag: Ref.Ref<Tag.Tag>) => tag.dxn.toString()) ?? [];\n });\n }\n\n // Handle other property changes.\n const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== 'tags');\n if (nonTagPaths.length > 0) {\n Obj.change(object, () => {\n for (const path of nonTagPaths) {\n const parts = splitJsonPath(path);\n const value = Obj.getValue(values, parts);\n Obj.setValue(object, parts, value);\n }\n });\n }\n },\n [object],\n );\n\n if (!formSchema) {\n return null;\n }\n\n return (\n <Form.Root\n schema={omitId(formSchema)}\n defaultValues={values}\n createOptionIcon='ph--plus--regular'\n createOptionLabel={['add tag label', { ns: pluginMeta.id }]}\n createInitialValuePath='label'\n db={db}\n onValuesChanged={handleChange}\n onCreate={handleCreate}\n >\n <Form.Viewport>\n <Form.Content classNames={classNames}>\n <Form.FieldSet />\n {children}\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { type Key } from '@dxos/echo';\nimport { IconButton, List, ListItem, useTranslation } from '@dxos/react-ui';\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 <List classNames='flex flex-col gap-2'>\n {keys.map((key) => (\n <KeyItem key={key.id} forignKey={key} onDelete={onDelete} />\n ))}\n </List>\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.id);\n\n const handleDelete = useCallback(() => {\n onDelete?.(forignKey);\n }, [forignKey, onDelete]);\n\n return (\n <ListItem.Root classNames='px-2'>\n <ListItem.Heading classNames='flex flex-col grow truncate'>\n <div>{forignKey.source}</div>\n <div className='text-description text-sm truncate'>{forignKey.id}</div>\n </ListItem.Heading>\n <ListItem.Endcap>\n <IconButton iconOnly icon='ph--x--regular' variant='ghost' label={t('delete key')} onClick={handleDelete} />\n </ListItem.Endcap>\n </ListItem.Root>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { DXN, Obj, Ref, Tag, Type } from '@dxos/echo';\nimport { type JsonPath, splitJsonPath } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { Form, omitId } from '@dxos/react-ui-form';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta as pluginMeta } from '../../meta';\n\nexport type ObjectFormProps = {\n schema: Schema.Schema.AnyNoContext;\n object: Obj.Unknown;\n};\n\nexport const ObjectForm = ({ object, schema }: ObjectFormProps) => {\n const db = Obj.getDatabase(object);\n\n const formSchema = useMemo(\n () =>\n Schema.Struct({\n tags: Schema.Array(Ref.Ref(Tag.Tag)).pipe(Schema.optional),\n }).pipe(Schema.extend(omitId(schema))),\n [schema],\n );\n\n const meta = Obj.getMeta(object);\n const tags = (meta.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);\n const values = useMemo(() => ({ tags, ...object }), [object, tags]);\n\n const handleCreate = useCallback((schema: Type.AnyEntity, values: any) => {\n invariant(db);\n invariant(Type.isObjectSchema(schema));\n const newObject = db.add(Obj.make(schema, values));\n if (Obj.instanceOf(Tag.Tag, newObject)) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = [...(Obj.getMeta(obj).tags ?? []), Obj.getDXN(newObject).toString()];\n });\n }\n }, []);\n\n // TODO(wittjosiah): Use FormRootProps type.\n const handleChange = useCallback(\n ({ tags, ...values }: any, { isValid, changed }: { isValid: boolean; changed: Record<JsonPath, boolean> }) => {\n if (!isValid) {\n return;\n }\n\n const changedPaths = Object.keys(changed).filter((path) => changed[path as JsonPath]) as JsonPath[];\n\n // Handle tags separately using Obj.change.\n const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === 'tags');\n if (hasTagsChange) {\n Obj.change(object, (obj) => {\n Obj.getMeta(obj).tags = tags?.map((tag: Ref.Ref<Tag.Tag>) => tag.dxn.toString()) ?? [];\n });\n }\n\n // Handle other property changes.\n const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== 'tags');\n if (nonTagPaths.length > 0) {\n Obj.change(object, () => {\n for (const path of nonTagPaths) {\n const parts = splitJsonPath(path);\n const value = Obj.getValue(values, parts);\n Obj.setValue(object, parts, value);\n }\n });\n }\n },\n [object],\n );\n\n return (\n <Form.Root\n schema={omitId(formSchema)}\n defaultValues={values}\n createOptionIcon='ph--plus--regular'\n createOptionLabel={['add tag label', { ns: pluginMeta.id }]}\n createInitialValuePath='label'\n db={db}\n onValuesChanged={handleChange}\n onCreate={handleCreate}\n >\n <Form.Viewport>\n <Form.Content>\n <Form.FieldSet />\n </Form.Content>\n </Form.Viewport>\n </Form.Root>\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, type SpaceId } from '@dxos/client/echo';\nimport { Context } from '@dxos/context';\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", "Obj", "useClient", "Filter", "useQuery", "Button", "Icon", "Toast", "useTranslation", "osTranslations", "WAIT_FOR_OBJECT_TIMEOUT", "TOAST_TIMEOUT", "AwaitingObject", "id", "t", "useTranslation", "meta", "invokePromise", "useOperationInvoker", "open", "setOpen", "useState", "waiting", "setWaiting", "found", "setFound", "layout", "useLayout", "client", "useClient", "objects", "useQuery", "spaces", "Filter", "everything", "useEffect", "timeout", "setTimeout", "clearTimeout", "findIndex", "object", "Obj", "getDXN", "toString", "active", "includes", "handleClose", "useCallback", "SpaceOperation", "WaitForObject", "undefined", "handleNavigate", "LayoutOperation", "Open", "subject", "Toast", "Root", "duration", "onOpenChange", "Body", "Title", "classNames", "Icon", "icon", "size", "span", "Description", "Actions", "Action", "altText", "asChild", "Button", "variant", "onClick", "Close", "ns", "osTranslations", "React", "useCallback", "useMemo", "Obj", "toLocalizedString", "useDefaultValue", "useTranslation", "Form", "omitId", "SearchList", "useSearchListResults", "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", "inputSurfaceLookup", "useInputSurfaceLookup", "React", "SelectType", "onChange", "SelectSpace", "Form", "Root", "testId", "autoFocus", "schema", "omitId", "defaultValues", "db", "Obj", "isObject", "getDatabase", "fieldProvider", "onSave", "Viewport", "Content", "FieldSet", "Submit", "displayName", "t", "useTranslation", "meta", "sortedSpaces", "labelA", "toLocalizedString", "getSpaceDisplayName", "personal", "labelB", "results", "handleSearch", "useSearchListResults", "items", "extract", "space", "SearchList", "onSearch", "Input", "data-testid", "placeholder", "map", "Item", "key", "value", "onSelect", "classNames", "option", "icon", "Function", "Option", "Schema", "React", "useCallback", "useMemo", "DXN", "Obj", "Ref", "Tag", "Type", "splitJsonPath", "invariant", "Form", "omitId", "isNonNullable", "BaseSchema", "Struct", "tags", "Array", "Ref", "Tag", "pipe", "optional", "BaseObjectSettings", "classNames", "children", "object", "db", "Obj", "getDatabase", "formSchema", "useMemo", "getSchema", "fromNullable", "map", "schema", "extend", "getOrUndefined", "meta", "getMeta", "tag", "makeRef", "DXN", "parse", "filter", "isNonNullable", "values", "handleCreate", "useCallback", "invariant", "Type", "isObjectSchema", "newObject", "add", "make", "instanceOf", "change", "obj", "getDXN", "toString", "handleChange", "isValid", "changed", "changedPaths", "Object", "keys", "path", "hasTagsChange", "some", "splitJsonPath", "dxn", "nonTagPaths", "length", "parts", "value", "getValue", "setValue", "React", "Form", "Root", "omitId", "defaultValues", "createOptionIcon", "createOptionLabel", "ns", "pluginMeta", "id", "createInitialValuePath", "onValuesChanged", "onCreate", "Viewport", "Content", "FieldSet", "React", "useCallback", "IconButton", "List", "ListItem", "useTranslation", "ForeignKeys", "keys", "onDelete", "React", "List", "classNames", "map", "key", "KeyItem", "id", "forignKey", "t", "useTranslation", "meta", "handleDelete", "useCallback", "ListItem", "Root", "Heading", "div", "source", "className", "Endcap", "IconButton", "iconOnly", "icon", "variant", "label", "onClick", "Schema", "React", "useCallback", "useMemo", "DXN", "Obj", "Ref", "Tag", "Type", "splitJsonPath", "invariant", "Form", "omitId", "isNonNullable", "ObjectForm", "object", "schema", "db", "Obj", "getDatabase", "formSchema", "useMemo", "Struct", "tags", "Array", "Ref", "Tag", "pipe", "optional", "extend", "omitId", "meta", "getMeta", "map", "tag", "makeRef", "DXN", "parse", "filter", "isNonNullable", "values", "handleCreate", "useCallback", "invariant", "Type", "isObjectSchema", "newObject", "add", "make", "instanceOf", "change", "obj", "getDXN", "toString", "handleChange", "isValid", "changed", "changedPaths", "Object", "keys", "path", "hasTagsChange", "some", "splitJsonPath", "dxn", "nonTagPaths", "length", "parts", "value", "getValue", "setValue", "React", "Form", "Root", "defaultValues", "createOptionIcon", "createOptionLabel", "ns", "pluginMeta", "id", "createInitialValuePath", "onValuesChanged", "onCreate", "Viewport", "Content", "FieldSet", "Context", "createClientSaveTracker", "client", "cb", "CleanupFns", "state", "install", "spaces", "space", "id", "createSpaceSaveTracker", "s", "Object", "values", "some", "subscribe", "get", "unsubscribe", "ctx", "waitUntilReady", "then", "disposed", "hasUnsavedChanges", "lastFlushPromise", "internal", "db", "saveStateChanged", "on", "unsavedDocuments", "length", "debounce", "undefined", "flushPromise", "flush", "dispose", "getStatus", "offline", "saved", "needsToUpload", "needsToDownload", "getIcon", "status"]
7
+ }
@@ -0,0 +1,119 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ getTypenames
4
+ } from "./chunk-EVNSLSQS.mjs";
5
+
6
+ // src/hooks/useActiveSpace.ts
7
+ import { Capabilities } from "@dxos/app-framework";
8
+ import { AppCapabilities, getSpaceIdFromPath } from "@dxos/app-toolkit";
9
+ import { useLayout } from "@dxos/app-toolkit/ui";
10
+ import { ClientCapabilities } from "@dxos/plugin-client";
11
+ import { useSpace } from "@dxos/react-client/echo";
12
+ var getActiveSpace = (capabilities) => {
13
+ const client = capabilities.get(ClientCapabilities.Client);
14
+ const registry = capabilities.get(Capabilities.AtomRegistry);
15
+ const layoutAtom = capabilities.get(AppCapabilities.Layout);
16
+ const layout = registry.get(layoutAtom);
17
+ const spaceId = getSpaceIdFromPath(layout.workspace);
18
+ return spaceId ? client.spaces.get(spaceId) : void 0;
19
+ };
20
+ var useActiveSpace = () => {
21
+ const layout = useLayout();
22
+ const spaceId = getSpaceIdFromPath(layout.workspace);
23
+ return useSpace(spaceId);
24
+ };
25
+
26
+ // src/hooks/useInputSurfaceLookup.tsx
27
+ import React, { useCallback } from "react";
28
+ import { Surface, usePluginManager } from "@dxos/app-framework/ui";
29
+ var useInputSurfaceLookup = (baseData) => {
30
+ const pluginManager = usePluginManager();
31
+ return useCallback(({ schema, prop, fieldProps }) => {
32
+ const data = {
33
+ prop,
34
+ schema,
35
+ ...baseData
36
+ };
37
+ if (Surface.isAvailable(pluginManager.capabilities, {
38
+ role: "form-input",
39
+ data
40
+ })) {
41
+ return /* @__PURE__ */ React.createElement(Surface.Surface, {
42
+ role: "form-input",
43
+ data,
44
+ ...fieldProps
45
+ });
46
+ }
47
+ }, [
48
+ pluginManager,
49
+ baseData
50
+ ]);
51
+ };
52
+
53
+ // src/hooks/usePath.ts
54
+ import * as Option from "effect/Option";
55
+ import { useEffect, useState } from "react";
56
+ import { Graph } from "@dxos/plugin-graph";
57
+ var usePath = (graph, id, timeout) => {
58
+ const [pathState, setPathState] = useState(id ? Graph.getPath(graph, {
59
+ target: id
60
+ }) : Option.none());
61
+ useEffect(() => {
62
+ if (!id && pathState) {
63
+ setPathState(Option.none());
64
+ }
65
+ if (Option.isSome(pathState) && pathState.value.at(-1) === id || !id) {
66
+ return;
67
+ }
68
+ const frame = requestAnimationFrame(async () => {
69
+ try {
70
+ const path = await Graph.waitForPath(graph, {
71
+ target: id
72
+ }, {
73
+ timeout
74
+ });
75
+ if (path) {
76
+ setPathState(Option.some(path));
77
+ }
78
+ } catch {
79
+ }
80
+ });
81
+ return () => cancelAnimationFrame(frame);
82
+ }, [
83
+ graph,
84
+ id,
85
+ timeout,
86
+ pathState
87
+ ]);
88
+ return pathState;
89
+ };
90
+
91
+ // src/hooks/useTypeOptions.ts
92
+ import { useMemo } from "react";
93
+ import { useTranslation } from "@dxos/react-ui";
94
+ var useTypeOptions = ({ space, annotation }) => {
95
+ const { t } = useTranslation();
96
+ const typenames = getTypenames({
97
+ annotation,
98
+ space
99
+ });
100
+ return useMemo(() => typenames.map((typename) => ({
101
+ value: typename,
102
+ label: t("typename label", {
103
+ ns: typename,
104
+ defaultValue: typename
105
+ })
106
+ })).toSorted((a, b) => a.label.localeCompare(b.label)), [
107
+ t,
108
+ typenames
109
+ ]);
110
+ };
111
+
112
+ export {
113
+ getActiveSpace,
114
+ useActiveSpace,
115
+ useInputSurfaceLookup,
116
+ usePath,
117
+ useTypeOptions
118
+ };
119
+ //# sourceMappingURL=chunk-2OLR2ZKH.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useActiveSpace.ts", "../../../src/hooks/useInputSurfaceLookup.tsx", "../../../src/hooks/usePath.ts", "../../../src/hooks/useTypeOptions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type CapabilityManager } from '@dxos/app-framework';\nimport { AppCapabilities, getSpaceIdFromPath } from '@dxos/app-toolkit';\nimport { useLayout } from '@dxos/app-toolkit/ui';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { useSpace } from '@dxos/react-client/echo';\n\nexport const getActiveSpace = (capabilities: CapabilityManager.CapabilityManager) => {\n const client = capabilities.get(ClientCapabilities.Client);\n const registry = capabilities.get(Capabilities.AtomRegistry);\n const layoutAtom = capabilities.get(AppCapabilities.Layout);\n const layout = registry.get(layoutAtom);\n const spaceId = getSpaceIdFromPath(layout.workspace);\n return spaceId ? client.spaces.get(spaceId) : undefined;\n};\n\nexport const useActiveSpace = () => {\n const layout = useLayout();\n const spaceId = getSpaceIdFromPath(layout.workspace);\n return useSpace(spaceId);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { Surface, usePluginManager } from '@dxos/app-framework/ui';\nimport { type FormFieldProvider } from '@dxos/react-ui-form';\n\n/**\n * Creates a surface input component based on plugin context.\n * @param baseData Additional data that will be merged with form data and passed to the surface.\n * This allows providing more context to the surface than what's available from the form itself.\n */\n// TODO(burdon): Factor out?\nexport const useInputSurfaceLookup = (baseData?: Record<string, any>): FormFieldProvider => {\n const pluginManager = usePluginManager();\n return useCallback<FormFieldProvider>(\n ({ schema, prop, fieldProps }) => {\n const data = { prop, schema, ...baseData };\n if (Surface.isAvailable(pluginManager.capabilities, { role: 'form-input', data })) {\n return <Surface.Surface role='form-input' data={data} {...fieldProps} />;\n }\n },\n [pluginManager, baseData],\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Option from 'effect/Option';\nimport { useEffect, useState } from 'react';\n\nimport { Graph } from '@dxos/plugin-graph';\n\n/**\n * React hook to get a path from the graph.\n *\n * @param graph Graph to find the node in.\n * @param id Id of the node to find a path to.\n * @param timeout Optional timeout in milliseconds to wait for the node to be found.\n * @returns Path if found, undefined otherwise.\n */\n// TODO(wittjosiah): Factor out.\nexport const usePath = (graph: Graph.ReadableGraph, id?: string, timeout?: number): Option.Option<string[]> => {\n const [pathState, setPathState] = useState<Option.Option<string[]>>(\n id ? Graph.getPath(graph, { target: id }) : Option.none(),\n );\n\n useEffect(() => {\n if (!id && pathState) {\n setPathState(Option.none());\n }\n\n if ((Option.isSome(pathState) && pathState.value.at(-1) === id) || !id) {\n return;\n }\n\n // Set timeout did not seem to effectively not block the UI thread.\n const frame = requestAnimationFrame(async () => {\n try {\n const path = await Graph.waitForPath(graph, { target: id }, { timeout });\n if (path) {\n setPathState(Option.some(path));\n }\n } catch {}\n });\n\n return () => cancelAnimationFrame(frame);\n }, [graph, id, timeout, pathState]);\n\n return pathState;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useMemo } from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\n\nimport { type TypeInputOptions, getTypenames } from '../types';\n\nexport const useTypeOptions = ({ space, annotation }: { space?: Space; annotation: TypeInputOptions }) => {\n const { t } = useTranslation();\n const typenames = getTypenames({ annotation, space });\n return useMemo(\n () =>\n typenames\n .map((typename) => ({\n value: typename,\n label: t('typename label', { ns: typename, defaultValue: typename }),\n }))\n .toSorted((a, b) => a.label.localeCompare(b.label)),\n [t, typenames],\n );\n};\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,oBAA4C;AACrD,SAASC,iBAAiBC,0BAA0B;AACpD,SAASC,iBAAiB;AAC1B,SAASC,0BAA0B;AACnC,SAASC,gBAAgB;AAElB,IAAMC,iBAAiB,CAACC,iBAAAA;AAC7B,QAAMC,SAASD,aAAaE,IAAIC,mBAAmBC,MAAM;AACzD,QAAMC,WAAWL,aAAaE,IAAII,aAAaC,YAAY;AAC3D,QAAMC,aAAaR,aAAaE,IAAIO,gBAAgBC,MAAM;AAC1D,QAAMC,SAASN,SAASH,IAAIM,UAAAA;AAC5B,QAAMI,UAAUC,mBAAmBF,OAAOG,SAAS;AACnD,SAAOF,UAAUX,OAAOc,OAAOb,IAAIU,OAAAA,IAAWI;AAChD;AAEO,IAAMC,iBAAiB,MAAA;AAC5B,QAAMN,SAASO,UAAAA;AACf,QAAMN,UAAUC,mBAAmBF,OAAOG,SAAS;AACnD,SAAOK,SAASP,OAAAA;AAClB;;;ACnBA,OAAOQ,SAASC,mBAAmB;AAEnC,SAASC,SAASC,wBAAwB;AASnC,IAAMC,wBAAwB,CAACC,aAAAA;AACpC,QAAMC,gBAAgBC,iBAAAA;AACtB,SAAOC,YACL,CAAC,EAAEC,QAAQC,MAAMC,WAAU,MAAE;AAC3B,UAAMC,OAAO;MAAEF;MAAMD;MAAQ,GAAGJ;IAAS;AACzC,QAAIQ,QAAQC,YAAYR,cAAcS,cAAc;MAAEC,MAAM;MAAcJ;IAAK,CAAA,GAAI;AACjF,aAAO,sBAAA,cAACC,QAAQA,SAAO;QAACG,MAAK;QAAaJ;QAAa,GAAGD;;IAC5D;EACF,GACA;IAACL;IAAeD;GAAS;AAE7B;;;ACtBA,YAAYY,YAAY;AACxB,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,aAAa;AAWf,IAAMC,UAAU,CAACC,OAA4BC,IAAaC,YAAAA;AAC/D,QAAM,CAACC,WAAWC,YAAAA,IAAgBC,SAChCJ,KAAKK,MAAMC,QAAQP,OAAO;IAAEQ,QAAQP;EAAG,CAAA,IAAYQ,YAAI,CAAA;AAGzDC,YAAU,MAAA;AACR,QAAI,CAACT,MAAME,WAAW;AACpBC,mBAAoBK,YAAI,CAAA;IAC1B;AAEA,QAAYE,cAAOR,SAAAA,KAAcA,UAAUS,MAAMC,GAAG,EAAC,MAAOZ,MAAO,CAACA,IAAI;AACtE;IACF;AAGA,UAAMa,QAAQC,sBAAsB,YAAA;AAClC,UAAI;AACF,cAAMC,OAAO,MAAMV,MAAMW,YAAYjB,OAAO;UAAEQ,QAAQP;QAAG,GAAG;UAAEC;QAAQ,CAAA;AACtE,YAAIc,MAAM;AACRZ,uBAAoBc,YAAKF,IAAAA,CAAAA;QAC3B;MACF,QAAQ;MAAC;IACX,CAAA;AAEA,WAAO,MAAMG,qBAAqBL,KAAAA;EACpC,GAAG;IAACd;IAAOC;IAAIC;IAASC;GAAU;AAElC,SAAOA;AACT;;;AC1CA,SAASiB,eAAe;AAGxB,SAASC,sBAAsB;AAIxB,IAAMC,iBAAiB,CAAC,EAAEC,OAAOC,WAAU,MAAmD;AACnG,QAAM,EAAEC,EAAC,IAAKC,eAAAA;AACd,QAAMC,YAAYC,aAAa;IAAEJ;IAAYD;EAAM,CAAA;AACnD,SAAOM,QACL,MACEF,UACGG,IAAI,CAACC,cAAc;IAClBC,OAAOD;IACPE,OAAOR,EAAE,kBAAkB;MAAES,IAAIH;MAAUI,cAAcJ;IAAS,CAAA;EACpE,EAAA,EACCK,SAAS,CAACC,GAAGC,MAAMD,EAAEJ,MAAMM,cAAcD,EAAEL,KAAK,CAAA,GACrD;IAACR;IAAGE;GAAU;AAElB;",
6
+ "names": ["Capabilities", "AppCapabilities", "getSpaceIdFromPath", "useLayout", "ClientCapabilities", "useSpace", "getActiveSpace", "capabilities", "client", "get", "ClientCapabilities", "Client", "registry", "Capabilities", "AtomRegistry", "layoutAtom", "AppCapabilities", "Layout", "layout", "spaceId", "getSpaceIdFromPath", "workspace", "spaces", "undefined", "useActiveSpace", "useLayout", "useSpace", "React", "useCallback", "Surface", "usePluginManager", "useInputSurfaceLookup", "baseData", "pluginManager", "usePluginManager", "useCallback", "schema", "prop", "fieldProps", "data", "Surface", "isAvailable", "capabilities", "role", "Option", "useEffect", "useState", "Graph", "usePath", "graph", "id", "timeout", "pathState", "setPathState", "useState", "Graph", "getPath", "target", "none", "useEffect", "isSome", "value", "at", "frame", "requestAnimationFrame", "path", "waitForPath", "some", "cancelAnimationFrame", "useMemo", "useTranslation", "useTypeOptions", "space", "annotation", "t", "useTranslation", "typenames", "getTypenames", "useMemo", "map", "typename", "value", "label", "ns", "defaultValue", "toSorted", "a", "b", "localeCompare"]
7
+ }
@@ -0,0 +1,20 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ meta
4
+ } from "./chunk-63N5JJXI.mjs";
5
+
6
+ // src/constants.ts
7
+ var CREATE_OBJECT_DIALOG = `${meta.id}.CreateObjectDialog`;
8
+ var CREATE_SPACE_DIALOG = `${meta.id}.CreateSpaceDialog`;
9
+ var JOIN_DIALOG = `${meta.id}.JoinDialog`;
10
+ var OBJECT_RENAME_POPOVER = `${meta.id}.ObjectRenamePopover`;
11
+ var SPACE_RENAME_POPOVER = `${meta.id}.SpaceRenamePopover`;
12
+
13
+ export {
14
+ CREATE_OBJECT_DIALOG,
15
+ CREATE_SPACE_DIALOG,
16
+ JOIN_DIALOG,
17
+ OBJECT_RENAME_POPOVER,
18
+ SPACE_RENAME_POPOVER
19
+ };
20
+ //# sourceMappingURL=chunk-5KTTTTEX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/constants.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { meta } from './meta';\n\nexport const CREATE_OBJECT_DIALOG = `${meta.id}.CreateObjectDialog`;\nexport const CREATE_SPACE_DIALOG = `${meta.id}.CreateSpaceDialog`;\nexport const JOIN_DIALOG = `${meta.id}.JoinDialog`;\nexport const OBJECT_RENAME_POPOVER = `${meta.id}.ObjectRenamePopover`;\nexport const SPACE_RENAME_POPOVER = `${meta.id}.SpaceRenamePopover`;\n"],
5
+ "mappings": ";;;;;;AAMO,IAAMA,uBAAuB,GAAGC,KAAKC,EAAE;AACvC,IAAMC,sBAAsB,GAAGF,KAAKC,EAAE;AACtC,IAAME,cAAc,GAAGH,KAAKC,EAAE;AAC9B,IAAMG,wBAAwB,GAAGJ,KAAKC,EAAE;AACxC,IAAMI,uBAAuB,GAAGL,KAAKC,EAAE;",
6
+ "names": ["CREATE_OBJECT_DIALOG", "meta", "id", "CREATE_SPACE_DIALOG", "JOIN_DIALOG", "OBJECT_RENAME_POPOVER", "SPACE_RENAME_POPOVER"]
7
+ }
@@ -0,0 +1,18 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+
3
+ // src/meta.ts
4
+ import { trim } from "@dxos/util";
5
+ var meta = {
6
+ id: "org.dxos.plugin.space",
7
+ name: "Spaces",
8
+ description: trim`
9
+ Core workspace container system for organizing and sharing collaborative environments.
10
+ Create, manage, and share spaces with granular access control and invitation management.
11
+ `,
12
+ icon: "ph--planet--regular"
13
+ };
14
+
15
+ export {
16
+ meta
17
+ };
18
+ //# sourceMappingURL=chunk-63N5JJXI.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.space',\n name: 'Spaces',\n description: trim`\n Core workspace container system for organizing and sharing collaborative environments.\n Create, manage, and share spaces with granular access control and invitation management.\n `,\n icon: 'ph--planet--regular',\n};\n"],
5
+ "mappings": ";;;AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaC;;;;EAIbC,MAAM;AACR;",
6
+ "names": ["trim", "meta", "id", "name", "description", "trim", "icon"]
7
+ }
@@ -0,0 +1,169 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ SpaceCapabilities
4
+ } from "./chunk-EVNSLSQS.mjs";
5
+ import {
6
+ meta
7
+ } from "./chunk-63N5JJXI.mjs";
8
+
9
+ // src/containers/SpacePresence/SpacePresence.tsx
10
+ import React, { forwardRef, useCallback, useEffect, useState } from "react";
11
+ import { useAtomCapability } from "@dxos/app-framework/ui";
12
+ import { generateName } from "@dxos/display-name";
13
+ import { Obj } from "@dxos/echo";
14
+ import { PublicKey } from "@dxos/react-client";
15
+ import { useMembers, useSpace } from "@dxos/react-client/echo";
16
+ import { useIdentity } from "@dxos/react-client/halo";
17
+ import { Avatar, List, ListItem, Popover, Tooltip, useDefaultValue, useTranslation } from "@dxos/react-ui";
18
+ import { AttentionGlyph, useAttention } from "@dxos/react-ui-attention";
19
+ import { ComplexMap, keyToFallback } from "@dxos/util";
20
+ var REFRESH_INTERVAL = 5e3;
21
+ var ACTIVITY_DURATION = 3e4;
22
+ var noViewers = new ComplexMap(PublicKey.hash);
23
+ var getName = (identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
24
+ var SpacePresence = ({ object, spaceId }) => {
25
+ const ephemeral = useAtomCapability(SpaceCapabilities.EphemeralState);
26
+ const identity = useIdentity();
27
+ const db = Obj.getDatabase(object);
28
+ const space = useSpace(spaceId ?? db?.spaceId);
29
+ const spaceMembers = useMembers(spaceId ?? db?.spaceId);
30
+ const [_moment, setMoment] = useState(Date.now());
31
+ useEffect(() => {
32
+ const interval = setInterval(() => setMoment(Date.now()), REFRESH_INTERVAL);
33
+ return () => clearInterval(interval);
34
+ }, []);
35
+ const memberOnline = useCallback((member) => member.presence === 1, []);
36
+ const memberIsNotSelf = useCallback((member) => !identity?.identityKey.equals(member.identity.identityKey), [
37
+ identity?.identityKey
38
+ ]);
39
+ if (!identity || !ephemeral || !space) {
40
+ return null;
41
+ }
42
+ const currentObjectViewers = ephemeral.viewersByObject[Obj.getDXN(object).toString()] ?? noViewers;
43
+ const membersForObject = spaceMembers.filter((member) => memberOnline(member) && memberIsNotSelf(member)).filter((member) => currentObjectViewers.has(member.identity.identityKey)).map((member) => {
44
+ const objectView = currentObjectViewers.get(member.identity.identityKey);
45
+ const lastSeen = objectView?.lastSeen ?? -Infinity;
46
+ const currentlyAttended = objectView?.currentlyAttended ?? false;
47
+ return {
48
+ ...member,
49
+ currentlyAttended,
50
+ lastSeen
51
+ };
52
+ }).toSorted((a, b) => a.lastSeen - b.lastSeen);
53
+ return /* @__PURE__ */ React.createElement(FullPresence, {
54
+ members: membersForObject
55
+ });
56
+ };
57
+ var FullPresence = (props) => {
58
+ const { size = 9, onMemberClick } = props;
59
+ const members = useDefaultValue(props.members, () => []);
60
+ if (members.length === 0) {
61
+ return null;
62
+ }
63
+ return /* @__PURE__ */ React.createElement("div", {
64
+ className: "dx-avatar-group",
65
+ "data-testid": "spacePlugin.presence"
66
+ }, members.slice(0, 3).map((member, i) => /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
67
+ key: member.identity.identityKey.toHex(),
68
+ side: "bottom",
69
+ content: getName(member.identity),
70
+ className: "grid focus:outline-hidden"
71
+ }, /* @__PURE__ */ React.createElement(PresenceAvatar, {
72
+ identity: member.identity,
73
+ match: member.currentlyAttended,
74
+ index: members.length - i,
75
+ onClick: () => onMemberClick?.(member),
76
+ size
77
+ }))), members.length > 3 && /* @__PURE__ */ React.createElement(Popover.Root, null, /* @__PURE__ */ React.createElement(Popover.Trigger, {
78
+ className: "grid focus:outline-hidden"
79
+ }, /* @__PURE__ */ React.createElement(Avatar.Root, null, /* @__PURE__ */ React.createElement(Avatar.Content, {
80
+ status: "inactive",
81
+ style: {
82
+ zIndex: members.length - 4
83
+ },
84
+ fallback: `+${members.length - 3}`,
85
+ size
86
+ }))), /* @__PURE__ */ React.createElement(Popover.Portal, null, /* @__PURE__ */ React.createElement(Popover.Content, {
87
+ side: "bottom"
88
+ }, /* @__PURE__ */ React.createElement(Popover.Arrow, null), /* @__PURE__ */ React.createElement(Popover.Viewport, {
89
+ classNames: "max-h-56"
90
+ }, /* @__PURE__ */ React.createElement(List, null, members.map((member) => /* @__PURE__ */ React.createElement(ListItem.Root, {
91
+ key: member.identity.identityKey.toHex(),
92
+ classNames: "flex gap-2 items-center cursor-pointer mb-2",
93
+ onClick: () => onMemberClick?.(member),
94
+ "data-testid": "identity-list-item"
95
+ }, /* @__PURE__ */ React.createElement(PresenceAvatar, {
96
+ identity: member.identity,
97
+ size,
98
+ showName: true,
99
+ match: member.currentlyAttended
100
+ })))))))));
101
+ };
102
+ var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, index, onClick, size }, forwardedRef) => {
103
+ const status = match ? "current" : "active";
104
+ const fallbackValue = keyToFallback(identity.identityKey);
105
+ return /* @__PURE__ */ React.createElement(Avatar.Root, null, /* @__PURE__ */ React.createElement(Avatar.Content, {
106
+ status,
107
+ hue: identity.profile?.data?.hue || fallbackValue.hue,
108
+ "data-testid": "spacePlugin.presence.member",
109
+ "data-status": status,
110
+ size,
111
+ ...index ? {
112
+ style: {
113
+ zIndex: index
114
+ }
115
+ } : {},
116
+ onClick,
117
+ fallback: identity.profile?.data?.emoji || fallbackValue.emoji,
118
+ ref: forwardedRef
119
+ }), /* @__PURE__ */ React.createElement(Avatar.Label, {
120
+ classNames: showName ? "text-sm truncate px-2" : "sr-only"
121
+ }, getName(identity)));
122
+ });
123
+ var SmallPresenceLive = ({ id, open, viewers }) => {
124
+ const { hasAttention, isAncestor, isRelated } = useAttention(id);
125
+ const attended = hasAttention || isRelated;
126
+ const containsAttended = isAncestor && !open;
127
+ const getActiveViewers = (viewers2) => {
128
+ const moment = Date.now();
129
+ return Array.from(viewers2.values()).filter((viewer) => moment - viewer.lastSeen < ACTIVITY_DURATION);
130
+ };
131
+ const [activeViewers, setActiveViewers] = useState(viewers ? getActiveViewers(viewers) : []);
132
+ useEffect(() => {
133
+ if (viewers) {
134
+ setActiveViewers(getActiveViewers(viewers));
135
+ const interval = setInterval(() => {
136
+ setActiveViewers(getActiveViewers(viewers));
137
+ }, REFRESH_INTERVAL);
138
+ return () => clearInterval(interval);
139
+ }
140
+ }, [
141
+ viewers
142
+ ]);
143
+ return /* @__PURE__ */ React.createElement(SmallPresence, {
144
+ count: activeViewers.length,
145
+ attended,
146
+ containsAttended
147
+ });
148
+ };
149
+ var SmallPresence = ({ count = 0, attended, containsAttended }) => {
150
+ const { t } = useTranslation(meta.id);
151
+ return /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
152
+ asChild: true,
153
+ content: t("presence label", {
154
+ count
155
+ }),
156
+ side: "bottom"
157
+ }, /* @__PURE__ */ React.createElement(AttentionGlyph, {
158
+ attended,
159
+ containsAttended,
160
+ presence: count > 1 ? "many" : count === 1 ? "one" : "none",
161
+ classNames: "self-center mx-1"
162
+ }));
163
+ };
164
+
165
+ export {
166
+ SpacePresence,
167
+ SmallPresenceLive
168
+ };
169
+ //# sourceMappingURL=chunk-EDC2RUJU.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/containers/SpacePresence/SpacePresence.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { forwardRef, useCallback, useEffect, useState } from 'react';\n\nimport { useAtomCapability } from '@dxos/app-framework/ui';\nimport { generateName } from '@dxos/display-name';\nimport { type Key, Obj } from '@dxos/echo';\nimport { PublicKey } from '@dxos/react-client';\nimport { type SpaceMember, useMembers, useSpace } from '@dxos/react-client/echo';\nimport { type Identity, useIdentity } from '@dxos/react-client/halo';\nimport {\n Avatar,\n type AvatarContentProps,\n type DxAvatar,\n List,\n ListItem,\n Popover,\n type Size,\n type ThemedClassName,\n Tooltip,\n useDefaultValue,\n useTranslation,\n} from '@dxos/react-ui';\nimport { AttentionGlyph, type AttentionGlyphProps, useAttention } from '@dxos/react-ui-attention';\nimport { ComplexMap, keyToFallback } from '@dxos/util';\n\nimport { meta } from '../../meta';\nimport { type ObjectViewerProps, SpaceCapabilities } from '../../types';\n\n// TODO(thure): Get/derive these values from protocol\nconst REFRESH_INTERVAL = 5000;\nconst ACTIVITY_DURATION = 30_000;\n\n// TODO(thure): This is chiefly meant to satisfy TS & provide an empty map after `deepSignal` interactions.\nconst noViewers = new ComplexMap<PublicKey, ObjectViewerProps>(PublicKey.hash);\n\n// TODO(wittjosiah): Factor out?\nconst getName = (identity: Identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());\n\nexport type SpacePresenceProps = {\n object: Obj.Unknown;\n spaceId?: Key.SpaceId;\n};\n\nexport const SpacePresence = ({ object, spaceId }: SpacePresenceProps) => {\n const ephemeral = useAtomCapability(SpaceCapabilities.EphemeralState);\n const identity = useIdentity();\n const db = Obj.getDatabase(object);\n const space = useSpace(spaceId ?? db?.spaceId);\n const spaceMembers = useMembers(spaceId ?? db?.spaceId);\n\n const [_moment, setMoment] = useState(Date.now());\n\n // NOTE(thure): This is necessary so Presence updates without any underlying data updating.\n useEffect(() => {\n const interval = setInterval(() => setMoment(Date.now()), REFRESH_INTERVAL);\n return () => clearInterval(interval);\n }, []);\n\n const memberOnline = useCallback((member: SpaceMember) => member.presence === 1, []);\n const memberIsNotSelf = useCallback(\n (member: SpaceMember) => !identity?.identityKey.equals(member.identity.identityKey),\n [identity?.identityKey],\n );\n\n // TODO(thure): Could it be a smell to return early when there are interactions with `deepSignal` later, since it\n // prevents reactivity?\n if (!identity || !ephemeral || !space) {\n return null;\n }\n\n const currentObjectViewers = ephemeral.viewersByObject[Obj.getDXN(object).toString()] ?? noViewers;\n\n const membersForObject = spaceMembers\n .filter((member) => memberOnline(member) && memberIsNotSelf(member))\n .filter((member) => currentObjectViewers.has(member.identity.identityKey))\n .map((member) => {\n const objectView = currentObjectViewers.get(member.identity.identityKey);\n const lastSeen = objectView?.lastSeen ?? -Infinity;\n const currentlyAttended = objectView?.currentlyAttended ?? false;\n\n return {\n ...member,\n currentlyAttended,\n lastSeen,\n };\n })\n .toSorted((a, b) => a.lastSeen - b.lastSeen);\n\n return <FullPresence members={membersForObject} />;\n};\n\nexport type Member = SpaceMember & {\n /**\n * Last time a member was seen on this object.\n */\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type MemberPresenceProps = ThemedClassName<{\n size?: Size;\n members?: Member[];\n showCount?: boolean;\n onMemberClick?: (member: Member) => void;\n}>;\n\nexport const FullPresence = (props: MemberPresenceProps) => {\n const { size = 9, onMemberClick } = props;\n const members = useDefaultValue(props.members, () => []);\n\n if (members.length === 0) {\n return null;\n }\n\n return (\n <div className='dx-avatar-group' data-testid='spacePlugin.presence'>\n {members.slice(0, 3).map((member, i) => (\n <Tooltip.Trigger\n key={member.identity.identityKey.toHex()}\n side='bottom'\n content={getName(member.identity)}\n className='grid focus:outline-hidden'\n >\n <PresenceAvatar\n identity={member.identity}\n match={member.currentlyAttended} // TODO(Zan): Match always true now we're showing 'members viewing current object'.\n index={members.length - i}\n onClick={() => onMemberClick?.(member)}\n size={size}\n />\n </Tooltip.Trigger>\n ))}\n\n {members.length > 3 && (\n <Popover.Root>\n <Popover.Trigger className='grid focus:outline-hidden'>\n <Avatar.Root>\n {/* TODO(wittjosiah): Make text fit. */}\n <Avatar.Content\n status='inactive'\n style={{ zIndex: members.length - 4 }}\n fallback={`+${members.length - 3}`}\n size={size}\n />\n </Avatar.Root>\n </Popover.Trigger>\n <Popover.Portal>\n <Popover.Content side='bottom'>\n <Popover.Arrow />\n <Popover.Viewport classNames='max-h-56'>\n <List>\n {members.map((member) => (\n <ListItem.Root\n key={member.identity.identityKey.toHex()}\n classNames='flex gap-2 items-center cursor-pointer mb-2'\n onClick={() => onMemberClick?.(member)}\n data-testid='identity-list-item'\n >\n {/* TODO(Zan): Match always true now we're showing 'members viewing current object'. */}\n <PresenceAvatar\n identity={member.identity}\n size={size}\n showName\n match={member.currentlyAttended}\n />\n </ListItem.Root>\n ))}\n </List>\n </Popover.Viewport>\n </Popover.Content>\n </Popover.Portal>\n </Popover.Root>\n )}\n </div>\n );\n};\n\ntype PresenceAvatarProps = Pick<AvatarContentProps, 'size'> & {\n identity: Identity;\n showName?: boolean;\n match?: boolean;\n index?: number;\n onClick?: () => void;\n};\n\nconst PresenceAvatar = forwardRef<DxAvatar, PresenceAvatarProps>(\n ({ identity, showName, match, index, onClick, size }, forwardedRef) => {\n const status = match ? 'current' : 'active';\n const fallbackValue = keyToFallback(identity.identityKey);\n return (\n <Avatar.Root>\n <Avatar.Content\n status={status}\n hue={identity.profile?.data?.hue || fallbackValue.hue}\n data-testid='spacePlugin.presence.member'\n data-status={status}\n size={size}\n {...(index ? { style: { zIndex: index } } : {})}\n onClick={onClick}\n fallback={identity.profile?.data?.emoji || fallbackValue.emoji}\n ref={forwardedRef}\n />\n <Avatar.Label classNames={showName ? 'text-sm truncate px-2' : 'sr-only'}>{getName(identity)}</Avatar.Label>\n </Avatar.Root>\n );\n },\n);\n\nexport type SmallPresenceLiveProps = {\n id?: string;\n open?: boolean;\n viewers?: ComplexMap<PublicKey, ObjectViewerProps>;\n};\n\nexport const SmallPresenceLive = ({ id, open, viewers }: SmallPresenceLiveProps) => {\n const { hasAttention, isAncestor, isRelated } = useAttention(id);\n const attended = hasAttention || isRelated;\n const containsAttended = isAncestor && !open;\n const getActiveViewers = (viewers: ComplexMap<PublicKey, ObjectViewerProps>): ObjectViewerProps[] => {\n const moment = Date.now();\n return Array.from<ObjectViewerProps>(viewers.values()).filter(\n (viewer) => moment - viewer.lastSeen < ACTIVITY_DURATION,\n );\n };\n\n const [activeViewers, setActiveViewers] = useState(viewers ? getActiveViewers(viewers) : []);\n\n useEffect(() => {\n if (viewers) {\n setActiveViewers(getActiveViewers(viewers));\n const interval = setInterval(() => {\n setActiveViewers(getActiveViewers(viewers));\n }, REFRESH_INTERVAL);\n return () => clearInterval(interval);\n }\n }, [viewers]);\n\n return <SmallPresence count={activeViewers.length} attended={attended} containsAttended={containsAttended} />;\n};\n\nexport type SmallPresenceProps = {\n count?: number;\n} & Pick<AttentionGlyphProps, 'attended' | 'containsAttended'>;\n\nexport const SmallPresence = ({ count = 0, attended, containsAttended }: SmallPresenceProps) => {\n const { t } = useTranslation(meta.id);\n\n return (\n <Tooltip.Trigger asChild content={t('presence label', { count })} side='bottom'>\n <AttentionGlyph\n attended={attended}\n containsAttended={containsAttended}\n presence={count > 1 ? 'many' : count === 1 ? 'one' : 'none'}\n classNames='self-center mx-1'\n />\n </Tooltip.Trigger>\n );\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "forwardRef", "useCallback", "useEffect", "useState", "useAtomCapability", "generateName", "Obj", "PublicKey", "useMembers", "useSpace", "useIdentity", "Avatar", "List", "ListItem", "Popover", "Tooltip", "useDefaultValue", "useTranslation", "AttentionGlyph", "useAttention", "ComplexMap", "keyToFallback", "REFRESH_INTERVAL", "ACTIVITY_DURATION", "noViewers", "ComplexMap", "PublicKey", "hash", "getName", "identity", "profile", "displayName", "generateName", "identityKey", "toHex", "SpacePresence", "object", "spaceId", "ephemeral", "useAtomCapability", "SpaceCapabilities", "EphemeralState", "useIdentity", "db", "Obj", "getDatabase", "space", "useSpace", "spaceMembers", "useMembers", "_moment", "setMoment", "useState", "Date", "now", "useEffect", "interval", "setInterval", "clearInterval", "memberOnline", "useCallback", "member", "presence", "memberIsNotSelf", "equals", "currentObjectViewers", "viewersByObject", "getDXN", "toString", "membersForObject", "filter", "has", "map", "objectView", "get", "lastSeen", "currentlyAttended", "toSorted", "a", "b", "FullPresence", "members", "props", "size", "onMemberClick", "useDefaultValue", "length", "div", "className", "data-testid", "slice", "i", "Tooltip", "Trigger", "key", "side", "content", "PresenceAvatar", "match", "index", "onClick", "Popover", "Root", "Avatar", "Content", "status", "style", "zIndex", "fallback", "Portal", "Arrow", "Viewport", "classNames", "List", "ListItem", "showName", "forwardRef", "forwardedRef", "fallbackValue", "keyToFallback", "hue", "data", "data-status", "emoji", "ref", "Label", "SmallPresenceLive", "id", "open", "viewers", "hasAttention", "isAncestor", "isRelated", "useAttention", "attended", "containsAttended", "getActiveViewers", "moment", "Array", "from", "values", "viewer", "activeViewers", "setActiveViewers", "SmallPresence", "count", "t", "useTranslation", "meta", "asChild", "AttentionGlyph"]
7
+ }