@dxos/plugin-client 0.8.4-main.422d1c7879 → 0.8.4-main.4668b7de9b

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 (529) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/AccountContainer-FZ3IC6H4.mjs +182 -0
  4. package/dist/lib/neutral/AccountContainer-FZ3IC6H4.mjs.map +7 -0
  5. package/dist/lib/neutral/ClientPlugin.mjs +72 -0
  6. package/dist/lib/neutral/ClientPlugin.mjs.map +7 -0
  7. package/dist/lib/{browser/cli/index.mjs → neutral/ClientPlugin.node.mjs} +83 -93
  8. package/dist/lib/neutral/ClientPlugin.node.mjs.map +7 -0
  9. package/dist/lib/neutral/ClientPlugin.workerd.mjs +16 -0
  10. package/dist/lib/neutral/ClientPlugin.workerd.mjs.map +7 -0
  11. package/dist/lib/neutral/DevicesContainer-6MWNUC3I.mjs +262 -0
  12. package/dist/lib/neutral/DevicesContainer-6MWNUC3I.mjs.map +7 -0
  13. package/dist/lib/neutral/InvitationsContainer-ME722VKS.mjs +132 -0
  14. package/dist/lib/neutral/InvitationsContainer-ME722VKS.mjs.map +7 -0
  15. package/dist/lib/neutral/JoinDialog-2NXAKPLP.mjs +53 -0
  16. package/dist/lib/neutral/JoinDialog-2NXAKPLP.mjs.map +7 -0
  17. package/dist/lib/neutral/ProfileContainer-VPX3FPWG.mjs +168 -0
  18. package/dist/lib/neutral/ProfileContainer-VPX3FPWG.mjs.map +7 -0
  19. package/dist/lib/neutral/RecoveryCodeDialog-GBRH6ZSA.mjs +59 -0
  20. package/dist/lib/neutral/RecoveryCodeDialog-GBRH6ZSA.mjs.map +7 -0
  21. package/dist/lib/neutral/RecoveryCredentialsContainer-IPBGDMIA.mjs +51 -0
  22. package/dist/lib/neutral/RecoveryCredentialsContainer-IPBGDMIA.mjs.map +7 -0
  23. package/dist/lib/neutral/ResetDialog-HZ5OKKG4.mjs +57 -0
  24. package/dist/lib/neutral/ResetDialog-HZ5OKKG4.mjs.map +7 -0
  25. package/dist/lib/neutral/account-cache-4EKGEUJI.mjs +43 -0
  26. package/dist/lib/neutral/account-cache-4EKGEUJI.mjs.map +7 -0
  27. package/dist/lib/neutral/app-graph-builder-A74W7C36.mjs +145 -0
  28. package/dist/lib/neutral/app-graph-builder-A74W7C36.mjs.map +7 -0
  29. package/dist/lib/neutral/capabilities/index.mjs +34 -0
  30. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  31. package/dist/lib/neutral/capabilities/node.mjs +21 -0
  32. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  33. package/dist/lib/{browser/chunk-M43LJQ5U.mjs → neutral/chunk-D6HPCLTS.mjs} +36 -26
  34. package/dist/lib/neutral/chunk-D6HPCLTS.mjs.map +7 -0
  35. package/dist/lib/neutral/chunk-FVESSI4C.mjs +8 -0
  36. package/dist/lib/neutral/chunk-FVESSI4C.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-JEF2FQGB.mjs +27 -0
  38. package/dist/lib/neutral/chunk-JEF2FQGB.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-JOCCVODY.mjs +21 -0
  40. package/dist/lib/neutral/chunk-JOCCVODY.mjs.map +7 -0
  41. package/dist/lib/{browser/chunk-WNJRYPGG.mjs → neutral/chunk-TUK3ELUU.mjs} +8 -4
  42. package/dist/lib/neutral/chunk-TUK3ELUU.mjs.map +7 -0
  43. package/dist/lib/neutral/chunk-WWCVZG3K.mjs +13 -0
  44. package/dist/lib/neutral/chunk-WWCVZG3K.mjs.map +7 -0
  45. package/dist/lib/neutral/client-MCFHLJEA.mjs +62 -0
  46. package/dist/lib/neutral/client-MCFHLJEA.mjs.map +7 -0
  47. package/dist/lib/neutral/components/index.mjs +1 -0
  48. package/dist/lib/neutral/containers/index.mjs +23 -0
  49. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  50. package/dist/lib/{browser/create-agent-SS5SE35J.mjs → neutral/create-agent-6HLW4D3A.mjs} +5 -13
  51. package/dist/lib/neutral/create-agent-6HLW4D3A.mjs.map +7 -0
  52. package/dist/lib/{browser/create-identity-PBEUEIPN.mjs → neutral/create-identity-WV2CVZBS.mjs} +18 -6
  53. package/dist/lib/neutral/create-identity-WV2CVZBS.mjs.map +7 -0
  54. package/dist/lib/{browser/create-passkey-JN6I5WMM.mjs → neutral/create-passkey-FOXEMXGF.mjs} +7 -31
  55. package/dist/lib/neutral/create-passkey-FOXEMXGF.mjs.map +7 -0
  56. package/dist/lib/{browser/create-recovery-code-32I6IWZC.mjs → neutral/create-recovery-code-ZWDKLPH4.mjs} +6 -14
  57. package/dist/lib/neutral/create-recovery-code-ZWDKLPH4.mjs.map +7 -0
  58. package/dist/lib/neutral/hub-http-client-WOJUCDKV.mjs +19 -0
  59. package/dist/lib/neutral/hub-http-client-WOJUCDKV.mjs.map +7 -0
  60. package/dist/lib/neutral/index.mjs +23 -0
  61. package/dist/lib/{browser/join-identity-2BP4G2SD.mjs → neutral/join-identity-QEQFAE2S.mjs} +4 -4
  62. package/dist/lib/{browser/join-identity-2BP4G2SD.mjs.map → neutral/join-identity-QEQFAE2S.mjs.map} +1 -1
  63. package/dist/lib/neutral/layer-specs-FLXR263J.mjs +61 -0
  64. package/dist/lib/neutral/layer-specs-FLXR263J.mjs.map +7 -0
  65. package/dist/lib/neutral/meta.json +1 -0
  66. package/dist/lib/neutral/meta.mjs +8 -0
  67. package/dist/lib/neutral/migrations-7FTW55ER.mjs +23 -0
  68. package/dist/lib/neutral/migrations-7FTW55ER.mjs.map +7 -0
  69. package/dist/lib/neutral/navigation-handler-FWSGOXGG.mjs +46 -0
  70. package/dist/lib/neutral/navigation-handler-FWSGOXGG.mjs.map +7 -0
  71. package/dist/lib/neutral/operation-handler-E3HB7E2T.mjs +13 -0
  72. package/dist/lib/neutral/operation-handler-E3HB7E2T.mjs.map +7 -0
  73. package/dist/lib/neutral/operations/index.mjs +12 -0
  74. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  75. package/dist/lib/neutral/plugin.mjs +17 -0
  76. package/dist/lib/neutral/plugin.mjs.map +7 -0
  77. package/dist/lib/neutral/react-context-B5LXMHVM.mjs +23 -0
  78. package/dist/lib/neutral/react-context-B5LXMHVM.mjs.map +7 -0
  79. package/dist/lib/neutral/react-surface-DEKGWTCD.mjs +70 -0
  80. package/dist/lib/neutral/react-surface-DEKGWTCD.mjs.map +7 -0
  81. package/dist/lib/{browser/recover-identity-LS6B5INB.mjs → neutral/recover-identity-JNFKLCUD.mjs} +4 -4
  82. package/dist/lib/{browser/recover-identity-LS6B5INB.mjs.map → neutral/recover-identity-JNFKLCUD.mjs.map} +1 -1
  83. package/dist/lib/{browser/redeem-passkey-OCIV6VCK.mjs → neutral/redeem-passkey-4SBAI4AG.mjs} +6 -22
  84. package/dist/lib/neutral/redeem-passkey-4SBAI4AG.mjs.map +7 -0
  85. package/dist/lib/{browser/redeem-token-6BCRGKV6.mjs → neutral/redeem-token-POBD6TMN.mjs} +5 -13
  86. package/dist/lib/neutral/redeem-token-POBD6TMN.mjs.map +7 -0
  87. package/dist/lib/{browser/reset-storage-QJLTL7J3.mjs → neutral/reset-storage-LQKUV5RA.mjs} +4 -4
  88. package/dist/lib/{browser/reset-storage-QJLTL7J3.mjs.map → neutral/reset-storage-LQKUV5RA.mjs.map} +1 -1
  89. package/dist/lib/neutral/schema-defs-IHBCKTMM.mjs +51 -0
  90. package/dist/lib/neutral/schema-defs-IHBCKTMM.mjs.map +7 -0
  91. package/dist/lib/{browser/share-identity-YJEBJTPA.mjs → neutral/share-identity-KNQ2XNXV.mjs} +5 -5
  92. package/dist/lib/{browser/share-identity-YJEBJTPA.mjs.map → neutral/share-identity-KNQ2XNXV.mjs.map} +1 -1
  93. package/dist/lib/{browser → neutral}/testing/index.mjs +3 -0
  94. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  95. package/dist/lib/{browser/index.mjs → neutral/translations.mjs} +31 -73
  96. package/dist/lib/neutral/translations.mjs.map +7 -0
  97. package/dist/lib/{browser → neutral}/types/index.mjs +1 -1
  98. package/dist/lib/neutral/types/index.mjs.map +7 -0
  99. package/dist/types/src/ClientPlugin.d.ts +1 -0
  100. package/dist/types/src/ClientPlugin.d.ts.map +1 -1
  101. package/dist/types/src/{cli/plugin.d.ts → ClientPlugin.node.d.ts} +2 -1
  102. package/dist/types/src/ClientPlugin.node.d.ts.map +1 -0
  103. package/dist/types/src/ClientPlugin.test.d.ts +2 -0
  104. package/dist/types/src/ClientPlugin.test.d.ts.map +1 -0
  105. package/dist/types/src/ClientPlugin.workerd.d.ts +4 -0
  106. package/dist/types/src/ClientPlugin.workerd.d.ts.map +1 -0
  107. package/dist/types/src/capabilities/account-cache.d.ts +35 -0
  108. package/dist/types/src/capabilities/account-cache.d.ts.map +1 -0
  109. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/client.d.ts +1 -1
  111. package/dist/types/src/capabilities/client.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/hub-http-client.d.ts +6 -0
  113. package/dist/types/src/capabilities/hub-http-client.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/index.d.ts +47 -14
  115. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/layer-specs.d.ts +6 -0
  117. package/dist/types/src/capabilities/layer-specs.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
  119. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -1
  120. package/dist/types/src/capabilities/node.d.ts +18 -13
  121. package/dist/types/src/capabilities/node.d.ts.map +1 -1
  122. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  123. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
  124. package/dist/types/src/capabilities/react-context.d.ts.map +1 -1
  125. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  126. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  127. package/dist/types/src/{cli/commands → commands}/config/index.d.ts +1 -1
  128. package/dist/types/src/commands/config/index.d.ts.map +1 -0
  129. package/dist/types/src/{cli/commands → commands}/config/view.d.ts +1 -1
  130. package/dist/types/src/commands/config/view.d.ts.map +1 -0
  131. package/dist/types/src/commands/device/index.d.ts.map +1 -0
  132. package/dist/types/src/commands/device/info/index.d.ts.map +1 -0
  133. package/dist/types/src/commands/device/info/info.d.ts.map +1 -0
  134. package/dist/types/src/commands/device/info/info.test.d.ts.map +1 -0
  135. package/dist/types/src/commands/device/list/index.d.ts.map +1 -0
  136. package/dist/types/src/commands/device/list/list.d.ts.map +1 -0
  137. package/dist/types/src/commands/device/list/list.test.d.ts.map +1 -0
  138. package/dist/types/src/commands/device/update/index.d.ts.map +1 -0
  139. package/dist/types/src/commands/device/update/update.d.ts.map +1 -0
  140. package/dist/types/src/commands/device/util.d.ts.map +1 -0
  141. package/dist/types/src/commands/edge/index.d.ts.map +1 -0
  142. package/dist/types/src/commands/edge/status.d.ts.map +1 -0
  143. package/dist/types/src/{cli/commands → commands}/halo/create/create.d.ts +2 -2
  144. package/dist/types/src/commands/halo/create/create.d.ts.map +1 -0
  145. package/dist/types/src/commands/halo/create/create.test.d.ts.map +1 -0
  146. package/dist/types/src/commands/halo/create/index.d.ts.map +1 -0
  147. package/dist/types/src/commands/halo/credential/add/add.d.ts.map +1 -0
  148. package/dist/types/src/commands/halo/credential/add/index.d.ts.map +1 -0
  149. package/dist/types/src/commands/halo/credential/index.d.ts.map +1 -0
  150. package/dist/types/src/commands/halo/credential/list/index.d.ts.map +1 -0
  151. package/dist/types/src/{cli/commands → commands}/halo/credential/list/list.d.ts +2 -2
  152. package/dist/types/src/commands/halo/credential/list/list.d.ts.map +1 -0
  153. package/dist/types/src/commands/halo/credential/list/list.test.d.ts.map +1 -0
  154. package/dist/types/src/commands/halo/identity/identity.d.ts.map +1 -0
  155. package/dist/types/src/commands/halo/identity/identity.test.d.ts.map +1 -0
  156. package/dist/types/src/commands/halo/identity/index.d.ts.map +1 -0
  157. package/dist/types/src/commands/halo/index.d.ts.map +1 -0
  158. package/dist/types/src/commands/halo/join/index.d.ts.map +1 -0
  159. package/dist/types/src/{cli/commands → commands}/halo/join/join.d.ts +1 -1
  160. package/dist/types/src/commands/halo/join/join.d.ts.map +1 -0
  161. package/dist/types/src/commands/halo/join/join.test.d.ts.map +1 -0
  162. package/dist/types/src/commands/halo/keys/index.d.ts.map +1 -0
  163. package/dist/types/src/commands/halo/keys/keys.d.ts.map +1 -0
  164. package/dist/types/src/commands/halo/keys/keys.test.d.ts.map +1 -0
  165. package/dist/types/src/commands/halo/recover/index.d.ts.map +1 -0
  166. package/dist/types/src/commands/halo/recover/recover.d.ts.map +1 -0
  167. package/dist/types/src/commands/halo/recover/recover.test.d.ts.map +1 -0
  168. package/dist/types/src/commands/halo/seed/index.d.ts.map +1 -0
  169. package/dist/types/src/commands/halo/seed/seed.d.ts.map +1 -0
  170. package/dist/types/src/commands/halo/share/index.d.ts.map +1 -0
  171. package/dist/types/src/commands/halo/share/share.d.ts.map +1 -0
  172. package/dist/types/src/commands/halo/update/index.d.ts.map +1 -0
  173. package/dist/types/src/commands/halo/update/update.d.ts.map +1 -0
  174. package/dist/types/src/commands/halo/update/update.test.d.ts.map +1 -0
  175. package/dist/types/src/{cli/commands → commands}/halo/util.d.ts +1 -4
  176. package/dist/types/src/commands/halo/util.d.ts.map +1 -0
  177. package/dist/types/src/commands/index.d.ts.map +1 -0
  178. package/dist/types/src/{cli/commands → commands}/profile/create.d.ts +1 -1
  179. package/dist/types/src/commands/profile/create.d.ts.map +1 -0
  180. package/dist/types/src/commands/profile/delete.d.ts.map +1 -0
  181. package/dist/types/src/{cli/commands → commands}/profile/import.d.ts +2 -2
  182. package/dist/types/src/commands/profile/import.d.ts.map +1 -0
  183. package/dist/types/src/{cli/commands → commands}/profile/index.d.ts +6 -6
  184. package/dist/types/src/commands/profile/index.d.ts.map +1 -0
  185. package/dist/types/src/commands/profile/inspect.d.ts.map +1 -0
  186. package/dist/types/src/commands/profile/list.d.ts.map +1 -0
  187. package/dist/types/src/{cli/commands → commands}/profile/reset.d.ts +1 -1
  188. package/dist/types/src/commands/profile/reset.d.ts.map +1 -0
  189. package/dist/types/src/commands/profile/util.d.ts.map +1 -0
  190. package/dist/types/src/constants.d.ts +4 -3
  191. package/dist/types/src/constants.d.ts.map +1 -1
  192. package/dist/types/src/containers/AccountContainer/AccountContainer.d.ts +3 -0
  193. package/dist/types/src/containers/AccountContainer/AccountContainer.d.ts.map +1 -0
  194. package/dist/types/src/containers/AccountContainer/index.d.ts +2 -0
  195. package/dist/types/src/containers/AccountContainer/index.d.ts.map +1 -0
  196. package/dist/types/src/containers/DevicesContainer/DevicesContainer.d.ts.map +1 -1
  197. package/dist/types/src/containers/DevicesContainer/DevicesContainer.stories.d.ts +165 -165
  198. package/dist/types/src/containers/DevicesContainer/DevicesContainer.stories.d.ts.map +1 -1
  199. package/dist/types/src/containers/InvitationsContainer/InvitationsContainer.d.ts +3 -0
  200. package/dist/types/src/containers/InvitationsContainer/InvitationsContainer.d.ts.map +1 -0
  201. package/dist/types/src/containers/InvitationsContainer/index.d.ts +2 -0
  202. package/dist/types/src/containers/InvitationsContainer/index.d.ts.map +1 -0
  203. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
  204. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -1
  205. package/dist/types/src/containers/ProfileContainer/ProfileContainer.stories.d.ts.map +1 -1
  206. package/dist/types/src/containers/RecoveryCodeDialog/RecoveryCodeDialog.d.ts.map +1 -1
  207. package/dist/types/src/containers/RecoveryCodeDialog/RecoveryCodeDialog.stories.d.ts.map +1 -1
  208. package/dist/types/src/containers/RecoveryCodeDialog/index.d.ts.map +1 -1
  209. package/dist/types/src/containers/RecoveryCredentialsContainer/RecoveryCredentialsContainer.stories.d.ts.map +1 -1
  210. package/dist/types/src/containers/ResetDialog/ResetDialog.d.ts +6 -1
  211. package/dist/types/src/containers/ResetDialog/ResetDialog.d.ts.map +1 -1
  212. package/dist/types/src/containers/ResetDialog/ResetDialog.stories.d.ts +2 -2
  213. package/dist/types/src/containers/ResetDialog/ResetDialog.stories.d.ts.map +1 -1
  214. package/dist/types/src/containers/ResetDialog/index.d.ts.map +1 -1
  215. package/dist/types/src/containers/index.d.ts +2 -0
  216. package/dist/types/src/containers/index.d.ts.map +1 -1
  217. package/dist/types/src/index.d.ts +2 -1
  218. package/dist/types/src/index.d.ts.map +1 -1
  219. package/dist/types/src/meta.d.ts +1 -1
  220. package/dist/types/src/meta.d.ts.map +1 -1
  221. package/dist/types/src/operations/create-agent.d.ts +1 -1
  222. package/dist/types/src/operations/create-agent.d.ts.map +1 -1
  223. package/dist/types/src/operations/create-identity.d.ts +1 -1
  224. package/dist/types/src/operations/create-identity.d.ts.map +1 -1
  225. package/dist/types/src/operations/create-passkey.d.ts +1 -1
  226. package/dist/types/src/operations/create-passkey.d.ts.map +1 -1
  227. package/dist/types/src/operations/create-recovery-code.d.ts +1 -1
  228. package/dist/types/src/operations/create-recovery-code.d.ts.map +1 -1
  229. package/dist/types/src/operations/definitions.d.ts +4 -4
  230. package/dist/types/src/operations/definitions.d.ts.map +1 -1
  231. package/dist/types/src/operations/index.d.ts +1 -1
  232. package/dist/types/src/operations/index.d.ts.map +1 -1
  233. package/dist/types/src/operations/join-identity.d.ts +1 -1
  234. package/dist/types/src/operations/join-identity.d.ts.map +1 -1
  235. package/dist/types/src/operations/recover-identity.d.ts +1 -1
  236. package/dist/types/src/operations/recover-identity.d.ts.map +1 -1
  237. package/dist/types/src/operations/redeem-passkey.d.ts +1 -1
  238. package/dist/types/src/operations/redeem-passkey.d.ts.map +1 -1
  239. package/dist/types/src/operations/redeem-token.d.ts +1 -1
  240. package/dist/types/src/operations/redeem-token.d.ts.map +1 -1
  241. package/dist/types/src/operations/reset-storage.d.ts +1 -1
  242. package/dist/types/src/operations/reset-storage.d.ts.map +1 -1
  243. package/dist/types/src/operations/share-identity.d.ts +1 -1
  244. package/dist/types/src/operations/share-identity.d.ts.map +1 -1
  245. package/dist/types/src/plugin.d.ts +4 -0
  246. package/dist/types/src/plugin.d.ts.map +1 -0
  247. package/dist/types/src/state/account-cache.d.ts +42 -0
  248. package/dist/types/src/state/account-cache.d.ts.map +1 -0
  249. package/dist/types/src/state/use-hub-http.d.ts +8 -0
  250. package/dist/types/src/state/use-hub-http.d.ts.map +1 -0
  251. package/dist/types/src/testing/index.d.ts +1 -0
  252. package/dist/types/src/testing/index.d.ts.map +1 -1
  253. package/dist/types/src/testing/initializeIdentity.d.ts +5 -4
  254. package/dist/types/src/testing/initializeIdentity.d.ts.map +1 -1
  255. package/dist/types/src/translations.d.ts.map +1 -1
  256. package/dist/types/src/types/capabilities.d.ts +34 -0
  257. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  258. package/dist/types/src/types/events.d.ts.map +1 -1
  259. package/dist/types/src/types/schema.d.ts +20 -3
  260. package/dist/types/src/types/schema.d.ts.map +1 -1
  261. package/dist/types/tsconfig.tsbuildinfo +1 -1
  262. package/package.json +105 -62
  263. package/src/{cli/plugin.ts → ClientPlugin.node.ts} +12 -1
  264. package/src/ClientPlugin.test.ts +29 -0
  265. package/src/ClientPlugin.ts +18 -2
  266. package/src/ClientPlugin.workerd.ts +16 -0
  267. package/src/capabilities/account-cache.ts +25 -0
  268. package/src/capabilities/app-graph-builder.ts +20 -2
  269. package/src/capabilities/client.ts +1 -0
  270. package/src/capabilities/hub-http-client.ts +21 -0
  271. package/src/capabilities/index.ts +4 -1
  272. package/src/capabilities/layer-specs.ts +92 -0
  273. package/src/capabilities/navigation-handler/navigation-handler.ts +1 -1
  274. package/src/capabilities/node.ts +9 -1
  275. package/src/capabilities/operation-handler.ts +1 -1
  276. package/src/capabilities/react-surface.tsx +12 -0
  277. package/src/capabilities/schema-defs.ts +29 -9
  278. package/src/{cli/commands → commands}/halo/create/create.test.ts +11 -9
  279. package/src/{cli/commands → commands}/halo/create/create.ts +1 -1
  280. package/src/{cli/commands → commands}/halo/identity/identity.test.ts +4 -4
  281. package/src/{cli/commands → commands}/halo/identity/identity.ts +2 -2
  282. package/src/{cli/commands → commands}/halo/join/join.ts +2 -2
  283. package/src/{cli/commands → commands}/halo/recover/recover.ts +2 -2
  284. package/src/{cli/commands → commands}/halo/update/update.test.ts +5 -5
  285. package/src/{cli/commands → commands}/halo/update/update.ts +2 -2
  286. package/src/{cli/commands → commands}/halo/util.ts +2 -5
  287. package/src/constants.ts +5 -3
  288. package/src/containers/AccountContainer/AccountContainer.tsx +179 -0
  289. package/src/containers/AccountContainer/index.ts +5 -0
  290. package/src/containers/DevicesContainer/DevicesContainer.stories.tsx +3 -4
  291. package/src/containers/DevicesContainer/DevicesContainer.tsx +1 -1
  292. package/src/containers/InvitationsContainer/InvitationsContainer.tsx +137 -0
  293. package/src/containers/InvitationsContainer/index.ts +5 -0
  294. package/src/containers/JoinDialog/JoinDialog.stories.tsx +2 -1
  295. package/src/containers/JoinDialog/JoinDialog.tsx +1 -1
  296. package/src/containers/ProfileContainer/ProfileContainer.stories.tsx +2 -1
  297. package/src/containers/ProfileContainer/ProfileContainer.tsx +1 -1
  298. package/src/containers/RecoveryCodeDialog/RecoveryCodeDialog.stories.tsx +2 -1
  299. package/src/containers/RecoveryCredentialsContainer/RecoveryCredentialsContainer.stories.tsx +3 -4
  300. package/src/containers/ResetDialog/ResetDialog.stories.tsx +4 -3
  301. package/src/containers/ResetDialog/ResetDialog.tsx +9 -1
  302. package/src/containers/index.ts +2 -0
  303. package/src/index.ts +2 -1
  304. package/src/meta.ts +7 -4
  305. package/src/operations/create-agent.ts +1 -1
  306. package/src/operations/create-identity.ts +11 -3
  307. package/src/operations/create-passkey.ts +1 -1
  308. package/src/operations/create-recovery-code.ts +1 -1
  309. package/src/operations/definitions.ts +23 -15
  310. package/src/operations/index.ts +1 -1
  311. package/src/operations/join-identity.ts +1 -1
  312. package/src/operations/recover-identity.ts +2 -2
  313. package/src/operations/redeem-passkey.ts +1 -1
  314. package/src/operations/redeem-token.ts +1 -1
  315. package/src/operations/reset-storage.ts +1 -1
  316. package/src/operations/share-identity.ts +2 -2
  317. package/src/plugin.ts +11 -0
  318. package/src/state/account-cache.ts +33 -0
  319. package/src/state/use-hub-http.ts +32 -0
  320. package/src/testing/index.ts +1 -0
  321. package/src/testing/initializeIdentity.ts +10 -4
  322. package/src/translations.ts +34 -3
  323. package/src/types/capabilities.ts +7 -0
  324. package/src/types/schema.ts +6 -3
  325. package/dist/lib/browser/chunk-ELAYKIQU.mjs +0 -12
  326. package/dist/lib/browser/chunk-ELAYKIQU.mjs.map +0 -7
  327. package/dist/lib/browser/chunk-M43LJQ5U.mjs.map +0 -7
  328. package/dist/lib/browser/chunk-WNJRYPGG.mjs.map +0 -7
  329. package/dist/lib/browser/cli/index.mjs.map +0 -7
  330. package/dist/lib/browser/create-agent-SS5SE35J.mjs.map +0 -7
  331. package/dist/lib/browser/create-identity-PBEUEIPN.mjs.map +0 -7
  332. package/dist/lib/browser/create-passkey-JN6I5WMM.mjs.map +0 -7
  333. package/dist/lib/browser/create-recovery-code-32I6IWZC.mjs.map +0 -7
  334. package/dist/lib/browser/index.mjs.map +0 -7
  335. package/dist/lib/browser/meta.json +0 -1
  336. package/dist/lib/browser/operations/index.mjs +0 -13
  337. package/dist/lib/browser/operations/index.mjs.map +0 -7
  338. package/dist/lib/browser/redeem-passkey-OCIV6VCK.mjs.map +0 -7
  339. package/dist/lib/browser/redeem-token-6BCRGKV6.mjs.map +0 -7
  340. package/dist/lib/browser/testing/index.mjs.map +0 -7
  341. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  342. package/dist/lib/node-esm/chunk-IT5LAIV3.mjs +0 -133
  343. package/dist/lib/node-esm/chunk-IT5LAIV3.mjs.map +0 -7
  344. package/dist/lib/node-esm/chunk-J5RWSQT6.mjs +0 -14
  345. package/dist/lib/node-esm/chunk-J5RWSQT6.mjs.map +0 -7
  346. package/dist/lib/node-esm/chunk-SJ6FDER5.mjs +0 -176
  347. package/dist/lib/node-esm/chunk-SJ6FDER5.mjs.map +0 -7
  348. package/dist/lib/node-esm/cli/index.mjs +0 -1060
  349. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  350. package/dist/lib/node-esm/create-agent-QGEHMHBL.mjs +0 -35
  351. package/dist/lib/node-esm/create-agent-QGEHMHBL.mjs.map +0 -7
  352. package/dist/lib/node-esm/create-identity-EHRJQOO4.mjs +0 -31
  353. package/dist/lib/node-esm/create-identity-EHRJQOO4.mjs.map +0 -7
  354. package/dist/lib/node-esm/create-passkey-PFBHHBEQ.mjs +0 -106
  355. package/dist/lib/node-esm/create-passkey-PFBHHBEQ.mjs.map +0 -7
  356. package/dist/lib/node-esm/create-recovery-code-HBAM2A72.mjs +0 -45
  357. package/dist/lib/node-esm/create-recovery-code-HBAM2A72.mjs.map +0 -7
  358. package/dist/lib/node-esm/index.mjs +0 -144
  359. package/dist/lib/node-esm/index.mjs.map +0 -7
  360. package/dist/lib/node-esm/join-identity-75JCKQHM.mjs +0 -28
  361. package/dist/lib/node-esm/join-identity-75JCKQHM.mjs.map +0 -7
  362. package/dist/lib/node-esm/meta.json +0 -1
  363. package/dist/lib/node-esm/operations/index.mjs +0 -14
  364. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  365. package/dist/lib/node-esm/recover-identity-AKGNTUJI.mjs +0 -27
  366. package/dist/lib/node-esm/recover-identity-AKGNTUJI.mjs.map +0 -7
  367. package/dist/lib/node-esm/redeem-passkey-FZO3LZ57.mjs +0 -83
  368. package/dist/lib/node-esm/redeem-passkey-FZO3LZ57.mjs.map +0 -7
  369. package/dist/lib/node-esm/redeem-token-IHHIAIQ2.mjs +0 -38
  370. package/dist/lib/node-esm/redeem-token-IHHIAIQ2.mjs.map +0 -7
  371. package/dist/lib/node-esm/reset-storage-S5MJITI3.mjs +0 -27
  372. package/dist/lib/node-esm/reset-storage-S5MJITI3.mjs.map +0 -7
  373. package/dist/lib/node-esm/share-identity-QZLY3VHE.mjs +0 -32
  374. package/dist/lib/node-esm/share-identity-QZLY3VHE.mjs.map +0 -7
  375. package/dist/lib/node-esm/testing/index.mjs +0 -23
  376. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  377. package/dist/lib/node-esm/types/index.mjs +0 -15
  378. package/dist/types/src/cli/commands/config/index.d.ts.map +0 -1
  379. package/dist/types/src/cli/commands/config/view.d.ts.map +0 -1
  380. package/dist/types/src/cli/commands/device/index.d.ts.map +0 -1
  381. package/dist/types/src/cli/commands/device/info/index.d.ts.map +0 -1
  382. package/dist/types/src/cli/commands/device/info/info.d.ts.map +0 -1
  383. package/dist/types/src/cli/commands/device/info/info.test.d.ts.map +0 -1
  384. package/dist/types/src/cli/commands/device/list/index.d.ts.map +0 -1
  385. package/dist/types/src/cli/commands/device/list/list.d.ts.map +0 -1
  386. package/dist/types/src/cli/commands/device/list/list.test.d.ts.map +0 -1
  387. package/dist/types/src/cli/commands/device/update/index.d.ts.map +0 -1
  388. package/dist/types/src/cli/commands/device/update/update.d.ts.map +0 -1
  389. package/dist/types/src/cli/commands/device/util.d.ts.map +0 -1
  390. package/dist/types/src/cli/commands/edge/index.d.ts.map +0 -1
  391. package/dist/types/src/cli/commands/edge/status.d.ts.map +0 -1
  392. package/dist/types/src/cli/commands/halo/create/create.d.ts.map +0 -1
  393. package/dist/types/src/cli/commands/halo/create/create.test.d.ts.map +0 -1
  394. package/dist/types/src/cli/commands/halo/create/index.d.ts.map +0 -1
  395. package/dist/types/src/cli/commands/halo/credential/add/add.d.ts.map +0 -1
  396. package/dist/types/src/cli/commands/halo/credential/add/index.d.ts.map +0 -1
  397. package/dist/types/src/cli/commands/halo/credential/index.d.ts.map +0 -1
  398. package/dist/types/src/cli/commands/halo/credential/list/index.d.ts.map +0 -1
  399. package/dist/types/src/cli/commands/halo/credential/list/list.d.ts.map +0 -1
  400. package/dist/types/src/cli/commands/halo/credential/list/list.test.d.ts.map +0 -1
  401. package/dist/types/src/cli/commands/halo/identity/identity.d.ts.map +0 -1
  402. package/dist/types/src/cli/commands/halo/identity/identity.test.d.ts.map +0 -1
  403. package/dist/types/src/cli/commands/halo/identity/index.d.ts.map +0 -1
  404. package/dist/types/src/cli/commands/halo/index.d.ts.map +0 -1
  405. package/dist/types/src/cli/commands/halo/join/index.d.ts.map +0 -1
  406. package/dist/types/src/cli/commands/halo/join/join.d.ts.map +0 -1
  407. package/dist/types/src/cli/commands/halo/join/join.test.d.ts.map +0 -1
  408. package/dist/types/src/cli/commands/halo/keys/index.d.ts.map +0 -1
  409. package/dist/types/src/cli/commands/halo/keys/keys.d.ts.map +0 -1
  410. package/dist/types/src/cli/commands/halo/keys/keys.test.d.ts.map +0 -1
  411. package/dist/types/src/cli/commands/halo/recover/index.d.ts.map +0 -1
  412. package/dist/types/src/cli/commands/halo/recover/recover.d.ts.map +0 -1
  413. package/dist/types/src/cli/commands/halo/recover/recover.test.d.ts.map +0 -1
  414. package/dist/types/src/cli/commands/halo/seed/index.d.ts.map +0 -1
  415. package/dist/types/src/cli/commands/halo/seed/seed.d.ts.map +0 -1
  416. package/dist/types/src/cli/commands/halo/share/index.d.ts.map +0 -1
  417. package/dist/types/src/cli/commands/halo/share/share.d.ts.map +0 -1
  418. package/dist/types/src/cli/commands/halo/update/index.d.ts.map +0 -1
  419. package/dist/types/src/cli/commands/halo/update/update.d.ts.map +0 -1
  420. package/dist/types/src/cli/commands/halo/update/update.test.d.ts.map +0 -1
  421. package/dist/types/src/cli/commands/halo/util.d.ts.map +0 -1
  422. package/dist/types/src/cli/commands/index.d.ts.map +0 -1
  423. package/dist/types/src/cli/commands/profile/create.d.ts.map +0 -1
  424. package/dist/types/src/cli/commands/profile/delete.d.ts.map +0 -1
  425. package/dist/types/src/cli/commands/profile/import.d.ts.map +0 -1
  426. package/dist/types/src/cli/commands/profile/index.d.ts.map +0 -1
  427. package/dist/types/src/cli/commands/profile/inspect.d.ts.map +0 -1
  428. package/dist/types/src/cli/commands/profile/list.d.ts.map +0 -1
  429. package/dist/types/src/cli/commands/profile/reset.d.ts.map +0 -1
  430. package/dist/types/src/cli/commands/profile/util.d.ts.map +0 -1
  431. package/dist/types/src/cli/index.d.ts +0 -2
  432. package/dist/types/src/cli/index.d.ts.map +0 -1
  433. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  434. package/dist/types/src/cli/testing/test-console.d.ts +0 -37
  435. package/dist/types/src/cli/testing/test-console.d.ts.map +0 -1
  436. package/src/cli/index.ts +0 -5
  437. package/src/cli/testing/test-console.ts +0 -87
  438. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  439. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  440. /package/dist/lib/{browser/types → neutral/components}/index.mjs.map +0 -0
  441. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  442. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
  443. /package/dist/types/src/{cli/commands → commands}/device/index.d.ts +0 -0
  444. /package/dist/types/src/{cli/commands → commands}/device/info/index.d.ts +0 -0
  445. /package/dist/types/src/{cli/commands → commands}/device/info/info.d.ts +0 -0
  446. /package/dist/types/src/{cli/commands → commands}/device/info/info.test.d.ts +0 -0
  447. /package/dist/types/src/{cli/commands → commands}/device/list/index.d.ts +0 -0
  448. /package/dist/types/src/{cli/commands → commands}/device/list/list.d.ts +0 -0
  449. /package/dist/types/src/{cli/commands → commands}/device/list/list.test.d.ts +0 -0
  450. /package/dist/types/src/{cli/commands → commands}/device/update/index.d.ts +0 -0
  451. /package/dist/types/src/{cli/commands → commands}/device/update/update.d.ts +0 -0
  452. /package/dist/types/src/{cli/commands → commands}/device/util.d.ts +0 -0
  453. /package/dist/types/src/{cli/commands → commands}/edge/index.d.ts +0 -0
  454. /package/dist/types/src/{cli/commands → commands}/edge/status.d.ts +0 -0
  455. /package/dist/types/src/{cli/commands → commands}/halo/create/create.test.d.ts +0 -0
  456. /package/dist/types/src/{cli/commands → commands}/halo/create/index.d.ts +0 -0
  457. /package/dist/types/src/{cli/commands → commands}/halo/credential/add/add.d.ts +0 -0
  458. /package/dist/types/src/{cli/commands → commands}/halo/credential/add/index.d.ts +0 -0
  459. /package/dist/types/src/{cli/commands → commands}/halo/credential/index.d.ts +0 -0
  460. /package/dist/types/src/{cli/commands → commands}/halo/credential/list/index.d.ts +0 -0
  461. /package/dist/types/src/{cli/commands → commands}/halo/credential/list/list.test.d.ts +0 -0
  462. /package/dist/types/src/{cli/commands → commands}/halo/identity/identity.d.ts +0 -0
  463. /package/dist/types/src/{cli/commands → commands}/halo/identity/identity.test.d.ts +0 -0
  464. /package/dist/types/src/{cli/commands → commands}/halo/identity/index.d.ts +0 -0
  465. /package/dist/types/src/{cli/commands → commands}/halo/index.d.ts +0 -0
  466. /package/dist/types/src/{cli/commands → commands}/halo/join/index.d.ts +0 -0
  467. /package/dist/types/src/{cli/commands → commands}/halo/join/join.test.d.ts +0 -0
  468. /package/dist/types/src/{cli/commands → commands}/halo/keys/index.d.ts +0 -0
  469. /package/dist/types/src/{cli/commands → commands}/halo/keys/keys.d.ts +0 -0
  470. /package/dist/types/src/{cli/commands → commands}/halo/keys/keys.test.d.ts +0 -0
  471. /package/dist/types/src/{cli/commands → commands}/halo/recover/index.d.ts +0 -0
  472. /package/dist/types/src/{cli/commands → commands}/halo/recover/recover.d.ts +0 -0
  473. /package/dist/types/src/{cli/commands → commands}/halo/recover/recover.test.d.ts +0 -0
  474. /package/dist/types/src/{cli/commands → commands}/halo/seed/index.d.ts +0 -0
  475. /package/dist/types/src/{cli/commands → commands}/halo/seed/seed.d.ts +0 -0
  476. /package/dist/types/src/{cli/commands → commands}/halo/share/index.d.ts +0 -0
  477. /package/dist/types/src/{cli/commands → commands}/halo/share/share.d.ts +0 -0
  478. /package/dist/types/src/{cli/commands → commands}/halo/update/index.d.ts +0 -0
  479. /package/dist/types/src/{cli/commands → commands}/halo/update/update.d.ts +0 -0
  480. /package/dist/types/src/{cli/commands → commands}/halo/update/update.test.d.ts +0 -0
  481. /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
  482. /package/dist/types/src/{cli/commands → commands}/profile/delete.d.ts +0 -0
  483. /package/dist/types/src/{cli/commands → commands}/profile/inspect.d.ts +0 -0
  484. /package/dist/types/src/{cli/commands → commands}/profile/list.d.ts +0 -0
  485. /package/dist/types/src/{cli/commands → commands}/profile/util.d.ts +0 -0
  486. /package/src/{cli/commands → commands}/config/index.ts +0 -0
  487. /package/src/{cli/commands → commands}/config/view.ts +0 -0
  488. /package/src/{cli/commands → commands}/device/index.ts +0 -0
  489. /package/src/{cli/commands → commands}/device/info/index.ts +0 -0
  490. /package/src/{cli/commands → commands}/device/info/info.test.ts +0 -0
  491. /package/src/{cli/commands → commands}/device/info/info.ts +0 -0
  492. /package/src/{cli/commands → commands}/device/list/index.ts +0 -0
  493. /package/src/{cli/commands → commands}/device/list/list.test.ts +0 -0
  494. /package/src/{cli/commands → commands}/device/list/list.ts +0 -0
  495. /package/src/{cli/commands → commands}/device/update/index.ts +0 -0
  496. /package/src/{cli/commands → commands}/device/update/update.ts +0 -0
  497. /package/src/{cli/commands → commands}/device/util.ts +0 -0
  498. /package/src/{cli/commands → commands}/edge/index.ts +0 -0
  499. /package/src/{cli/commands → commands}/edge/status.ts +0 -0
  500. /package/src/{cli/commands → commands}/halo/create/index.ts +0 -0
  501. /package/src/{cli/commands → commands}/halo/credential/add/add.ts +0 -0
  502. /package/src/{cli/commands → commands}/halo/credential/add/index.ts +0 -0
  503. /package/src/{cli/commands → commands}/halo/credential/index.ts +0 -0
  504. /package/src/{cli/commands → commands}/halo/credential/list/index.ts +0 -0
  505. /package/src/{cli/commands → commands}/halo/credential/list/list.test.ts +0 -0
  506. /package/src/{cli/commands → commands}/halo/credential/list/list.ts +0 -0
  507. /package/src/{cli/commands → commands}/halo/identity/index.ts +0 -0
  508. /package/src/{cli/commands → commands}/halo/index.ts +0 -0
  509. /package/src/{cli/commands → commands}/halo/join/index.ts +0 -0
  510. /package/src/{cli/commands → commands}/halo/join/join.test.ts +0 -0
  511. /package/src/{cli/commands → commands}/halo/keys/index.ts +0 -0
  512. /package/src/{cli/commands → commands}/halo/keys/keys.test.ts +0 -0
  513. /package/src/{cli/commands → commands}/halo/keys/keys.ts +0 -0
  514. /package/src/{cli/commands → commands}/halo/recover/index.ts +0 -0
  515. /package/src/{cli/commands → commands}/halo/recover/recover.test.ts +0 -0
  516. /package/src/{cli/commands → commands}/halo/seed/index.ts +0 -0
  517. /package/src/{cli/commands → commands}/halo/seed/seed.ts +0 -0
  518. /package/src/{cli/commands → commands}/halo/share/index.ts +0 -0
  519. /package/src/{cli/commands → commands}/halo/share/share.ts +0 -0
  520. /package/src/{cli/commands → commands}/halo/update/index.ts +0 -0
  521. /package/src/{cli/commands → commands}/index.ts +0 -0
  522. /package/src/{cli/commands → commands}/profile/create.ts +0 -0
  523. /package/src/{cli/commands → commands}/profile/delete.ts +0 -0
  524. /package/src/{cli/commands → commands}/profile/import.ts +0 -0
  525. /package/src/{cli/commands → commands}/profile/index.ts +0 -0
  526. /package/src/{cli/commands → commands}/profile/inspect.ts +0 -0
  527. /package/src/{cli/commands → commands}/profile/list.ts +0 -0
  528. /package/src/{cli/commands → commands}/profile/reset.ts +0 -0
  529. /package/src/{cli/commands → commands}/profile/util.ts +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/plugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport const ClientPlugin = Plugin.lazy(meta, () => import('#plugin'));\n\nexport { ClientOperationHandlerSet } from './operations';\n"],
5
+ "mappings": ";;;;;;;;;;AAIA,SAASA,cAAc;AAIhB,IAAMC,eAAeC,OAAOC,KAAKC,MAAM,MAAM,OAAO,SAAA,CAAA;",
6
+ "names": ["Plugin", "ClientPlugin", "Plugin", "lazy", "meta"]
7
+ }
@@ -0,0 +1,23 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/react-context.tsx
4
+ import * as Effect from "effect/Effect";
5
+ import React from "react";
6
+ import { Capabilities, Capability } from "@dxos/app-framework";
7
+ import { useCapability } from "@dxos/app-framework/ui";
8
+ import { ClientProvider } from "@dxos/react-client";
9
+ import { meta } from "#meta";
10
+ import { ClientCapabilities } from "#types";
11
+ var react_context_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactContext, {
12
+ id: meta.id,
13
+ context: ({ children }) => {
14
+ const client = useCapability(ClientCapabilities.Client);
15
+ return /* @__PURE__ */ React.createElement(ClientProvider, {
16
+ client
17
+ }, children);
18
+ }
19
+ })));
20
+ export {
21
+ react_context_default as default
22
+ };
23
+ //# sourceMappingURL=react-context-B5LXMHVM.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-context.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React, { ReactNode } from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { useCapability } from '@dxos/app-framework/ui';\nimport { ClientProvider } from '@dxos/react-client';\n\nimport { meta } from '#meta';\nimport { ClientCapabilities } from '#types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactContext, {\n id: meta.id,\n context: ({ children }: { children?: ReactNode }) => {\n const client = useCapability(ClientCapabilities.Client);\n return <ClientProvider client={client}>{children}</ClientProvider>;\n },\n }),\n ),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAA0B;AAEjC,SAASC,cAAcC,kBAAkB;AACzC,SAASC,qBAAqB;AAC9B,SAASC,sBAAsB;AAE/B,SAASC,YAAY;AACrB,SAASC,0BAA0B;AAEnC,IAAA,wBAAeJ,WAAWK,WAAW,MAC5BC,eACLN,WAAWO,YAAYR,aAAaS,cAAc;EAChDC,IAAIN,KAAKM;EACTC,SAAS,CAAC,EAAEC,SAAQ,MAA4B;AAC9C,UAAMC,SAASX,cAAcG,mBAAmBS,MAAM;AACtD,WAAO,sBAAA,cAACX,gBAAAA;MAAeU;OAAiBD,QAAAA;EAC1C;AACF,CAAA,CAAA,CAAA;",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "useCapability", "ClientProvider", "meta", "ClientCapabilities", "makeModule", "succeed", "contributes", "ReactContext", "id", "context", "children", "client", "Client"]
7
+ }
@@ -0,0 +1,70 @@
1
+ import {
2
+ JOIN_DIALOG,
3
+ RECOVERY_CODE_DIALOG,
4
+ RESET_DIALOG
5
+ } from "./chunk-WWCVZG3K.mjs";
6
+ import "./chunk-J5LGTIGS.mjs";
7
+
8
+ // src/capabilities/react-surface.tsx
9
+ import * as Effect from "effect/Effect";
10
+ import React from "react";
11
+ import { Capabilities, Capability } from "@dxos/app-framework";
12
+ import { Surface } from "@dxos/app-framework/ui";
13
+ import { AppSurface } from "@dxos/app-toolkit/ui";
14
+ import { AccountContainer, DevicesContainer, InvitationsContainer, JoinDialog, ProfileContainer, RecoveryCodeDialog, RecoveryCredentialsContainer, ResetDialog } from "#containers";
15
+ import { Account } from "#types";
16
+ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({ createInvitationUrl, onReset }) {
17
+ const capabilityManager = yield* Capability.Service;
18
+ return Capability.contributes(Capabilities.ReactSurface, [
19
+ Surface.create({
20
+ id: Account.Profile,
21
+ filter: AppSurface.literal(AppSurface.Article, Account.Profile),
22
+ component: () => /* @__PURE__ */ React.createElement(ProfileContainer, null)
23
+ }),
24
+ Surface.create({
25
+ id: Account.Devices,
26
+ filter: AppSurface.literal(AppSurface.Article, Account.Devices),
27
+ component: () => /* @__PURE__ */ React.createElement(DevicesContainer, {
28
+ createInvitationUrl
29
+ })
30
+ }),
31
+ Surface.create({
32
+ id: Account.Security,
33
+ filter: AppSurface.literal(AppSurface.Article, Account.Security),
34
+ component: () => /* @__PURE__ */ React.createElement(RecoveryCredentialsContainer, null)
35
+ }),
36
+ Surface.create({
37
+ id: Account.Account,
38
+ filter: AppSurface.literal(AppSurface.Article, Account.Account),
39
+ component: () => /* @__PURE__ */ React.createElement(AccountContainer, null)
40
+ }),
41
+ Surface.create({
42
+ id: Account.Invitations,
43
+ filter: AppSurface.literal(AppSurface.Article, Account.Invitations),
44
+ component: () => /* @__PURE__ */ React.createElement(InvitationsContainer, null)
45
+ }),
46
+ Surface.create({
47
+ id: JOIN_DIALOG,
48
+ filter: AppSurface.component(AppSurface.Dialog, JOIN_DIALOG),
49
+ component: ({ data }) => /* @__PURE__ */ React.createElement(JoinDialog, data.props)
50
+ }),
51
+ Surface.create({
52
+ id: RECOVERY_CODE_DIALOG,
53
+ filter: AppSurface.component(AppSurface.Dialog, RECOVERY_CODE_DIALOG),
54
+ component: ({ data }) => /* @__PURE__ */ React.createElement(RecoveryCodeDialog, data.props)
55
+ }),
56
+ Surface.create({
57
+ id: RESET_DIALOG,
58
+ filter: AppSurface.component(AppSurface.Dialog, RESET_DIALOG),
59
+ component: ({ data }) => /* @__PURE__ */ React.createElement(ResetDialog, {
60
+ ...data.props,
61
+ onReset,
62
+ capabilityManager
63
+ })
64
+ })
65
+ ]);
66
+ }));
67
+ export {
68
+ react_surface_default as default
69
+ };
70
+ //# sourceMappingURL=react-surface-DEKGWTCD.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React, { type ComponentProps } from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { AppSurface } from '@dxos/app-toolkit/ui';\n\nimport {\n AccountContainer,\n DevicesContainer,\n InvitationsContainer,\n JoinDialog,\n ProfileContainer,\n RecoveryCodeDialog,\n RecoveryCredentialsContainer,\n ResetDialog,\n} from '#containers';\nimport { Account, type ClientPluginOptions } from '#types';\n\nimport { JOIN_DIALOG, RECOVERY_CODE_DIALOG, RESET_DIALOG } from '../constants';\n\ntype ReactSurfaceOptions = Pick<ClientPluginOptions, 'onReset'> & {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* ({ createInvitationUrl, onReset }: ReactSurfaceOptions) {\n const capabilityManager = yield* Capability.Service;\n\n return Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: Account.Profile,\n filter: AppSurface.literal(AppSurface.Article, Account.Profile),\n component: () => <ProfileContainer />,\n }),\n Surface.create({\n id: Account.Devices,\n filter: AppSurface.literal(AppSurface.Article, Account.Devices),\n component: () => <DevicesContainer createInvitationUrl={createInvitationUrl} />,\n }),\n Surface.create({\n id: Account.Security,\n filter: AppSurface.literal(AppSurface.Article, Account.Security),\n component: () => <RecoveryCredentialsContainer />,\n }),\n Surface.create({\n id: Account.Account,\n filter: AppSurface.literal(AppSurface.Article, Account.Account),\n component: () => <AccountContainer />,\n }),\n Surface.create({\n id: Account.Invitations,\n filter: AppSurface.literal(AppSurface.Article, Account.Invitations),\n component: () => <InvitationsContainer />,\n }),\n Surface.create({\n id: JOIN_DIALOG,\n filter: AppSurface.component<ComponentProps<typeof JoinDialog>>(AppSurface.Dialog, JOIN_DIALOG),\n component: ({ data }) => <JoinDialog {...data.props} />,\n }),\n Surface.create({\n id: RECOVERY_CODE_DIALOG,\n filter: AppSurface.component<ComponentProps<typeof RecoveryCodeDialog>>(\n AppSurface.Dialog,\n RECOVERY_CODE_DIALOG,\n ),\n component: ({ data }) => <RecoveryCodeDialog {...data.props} />,\n }),\n Surface.create({\n id: RESET_DIALOG,\n filter: AppSurface.component<Pick<ComponentProps<typeof ResetDialog>, 'mode'>>(AppSurface.Dialog, RESET_DIALOG),\n component: ({ data }) => (\n <ResetDialog {...data.props} onReset={onReset} capabilityManager={capabilityManager} />\n ),\n }),\n ]);\n }),\n);\n"],
5
+ "mappings": ";;;;;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAoC;AAE3C,SAASC,cAAcC,kBAAkB;AACzC,SAASC,eAAe;AACxB,SAASC,kBAAkB;AAE3B,SACEC,kBACAC,kBACAC,sBACAC,YACAC,kBACAC,oBACAC,8BACAC,mBACK;AACP,SAASC,eAAyC;AAQlD,IAAA,wBAAeC,WAAWC,WACjBC,kBAAW,WAAW,EAAEC,qBAAqBC,QAAO,GAAuB;AAChF,QAAMC,oBAAoB,OAAOL,WAAWM;AAE5C,SAAON,WAAWO,YAAYC,aAAaC,cAAc;IACvDC,QAAQC,OAAO;MACbC,IAAIC,QAAQC;MACZC,QAAQC,WAAWC,QAAQD,WAAWE,SAASL,QAAQC,OAAO;MAC9DK,WAAW,MAAM,sBAAA,cAACC,kBAAAA,IAAAA;IACpB,CAAA;IACAV,QAAQC,OAAO;MACbC,IAAIC,QAAQQ;MACZN,QAAQC,WAAWC,QAAQD,WAAWE,SAASL,QAAQQ,OAAO;MAC9DF,WAAW,MAAM,sBAAA,cAACG,kBAAAA;QAAiBnB;;IACrC,CAAA;IACAO,QAAQC,OAAO;MACbC,IAAIC,QAAQU;MACZR,QAAQC,WAAWC,QAAQD,WAAWE,SAASL,QAAQU,QAAQ;MAC/DJ,WAAW,MAAM,sBAAA,cAACK,8BAAAA,IAAAA;IACpB,CAAA;IACAd,QAAQC,OAAO;MACbC,IAAIC,QAAQA;MACZE,QAAQC,WAAWC,QAAQD,WAAWE,SAASL,QAAQA,OAAO;MAC9DM,WAAW,MAAM,sBAAA,cAACM,kBAAAA,IAAAA;IACpB,CAAA;IACAf,QAAQC,OAAO;MACbC,IAAIC,QAAQa;MACZX,QAAQC,WAAWC,QAAQD,WAAWE,SAASL,QAAQa,WAAW;MAClEP,WAAW,MAAM,sBAAA,cAACQ,sBAAAA,IAAAA;IACpB,CAAA;IACAjB,QAAQC,OAAO;MACbC,IAAIgB;MACJb,QAAQC,WAAWG,UAA6CH,WAAWa,QAAQD,WAAAA;MACnFT,WAAW,CAAC,EAAEW,KAAI,MAAO,sBAAA,cAACC,YAAeD,KAAKE,KAAK;IACrD,CAAA;IACAtB,QAAQC,OAAO;MACbC,IAAIqB;MACJlB,QAAQC,WAAWG,UACjBH,WAAWa,QACXI,oBAAAA;MAEFd,WAAW,CAAC,EAAEW,KAAI,MAAO,sBAAA,cAACI,oBAAuBJ,KAAKE,KAAK;IAC7D,CAAA;IACAtB,QAAQC,OAAO;MACbC,IAAIuB;MACJpB,QAAQC,WAAWG,UAA4DH,WAAWa,QAAQM,YAAAA;MAClGhB,WAAW,CAAC,EAAEW,KAAI,MAChB,sBAAA,cAACM,aAAAA;QAAa,GAAGN,KAAKE;QAAO5B;QAAkBC;;IAEnD,CAAA;GACD;AACH,CAAA,CAAA;",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "Surface", "AppSurface", "AccountContainer", "DevicesContainer", "InvitationsContainer", "JoinDialog", "ProfileContainer", "RecoveryCodeDialog", "RecoveryCredentialsContainer", "ResetDialog", "Account", "Capability", "makeModule", "fnUntraced", "createInvitationUrl", "onReset", "capabilityManager", "Service", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "Account", "Profile", "filter", "AppSurface", "literal", "Article", "component", "ProfileContainer", "Devices", "DevicesContainer", "Security", "RecoveryCredentialsContainer", "AccountContainer", "Invitations", "InvitationsContainer", "JOIN_DIALOG", "Dialog", "data", "JoinDialog", "props", "RECOVERY_CODE_DIALOG", "RecoveryCodeDialog", "RESET_DIALOG", "ResetDialog"]
7
+ }
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  JOIN_DIALOG
3
- } from "./chunk-ELAYKIQU.mjs";
3
+ } from "./chunk-WWCVZG3K.mjs";
4
4
  import {
5
5
  RecoverIdentity
6
- } from "./chunk-M43LJQ5U.mjs";
6
+ } from "./chunk-D6HPCLTS.mjs";
7
7
  import "./chunk-J5LGTIGS.mjs";
8
8
 
9
9
  // src/operations/recover-identity.ts
10
10
  import * as Effect from "effect/Effect";
11
11
  import { LayoutOperation } from "@dxos/app-toolkit";
12
- import { Operation } from "@dxos/operation";
12
+ import { Operation } from "@dxos/compute";
13
13
  var handler = RecoverIdentity.pipe(Operation.withHandler(Effect.fnUntraced(function* () {
14
14
  yield* Operation.invoke(LayoutOperation.UpdateDialog, {
15
15
  subject: JOIN_DIALOG,
@@ -23,4 +23,4 @@ var recover_identity_default = handler;
23
23
  export {
24
24
  recover_identity_default as default
25
25
  };
26
- //# sourceMappingURL=recover-identity-LS6B5INB.mjs.map
26
+ //# sourceMappingURL=recover-identity-JNFKLCUD.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operations/recover-identity.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/operation';\nimport { type JoinPanelProps } from '@dxos/shell/react';\n\nimport { JOIN_DIALOG } from '../constants';\nimport { RecoverIdentity } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RecoverIdentity> = RecoverIdentity.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* () {\n yield* Operation.invoke(LayoutOperation.UpdateDialog, {\n subject: JOIN_DIALOG,\n blockAlign: 'start',\n props: {\n initialDisposition: 'recover-identity',\n } satisfies Partial<JoinPanelProps>,\n });\n }),\n ),\n);\n\nexport default handler;\n"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\nimport type { JoinPanelProps } from '@dxos/shell/react';\n\nimport { JOIN_DIALOG } from '../constants';\nimport { RecoverIdentity } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RecoverIdentity> = RecoverIdentity.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* () {\n yield* Operation.invoke(LayoutOperation.UpdateDialog, {\n subject: JOIN_DIALOG,\n blockAlign: 'start',\n props: {\n initialDisposition: 'recover-identity',\n } satisfies Partial<JoinPanelProps>,\n });\n }),\n ),\n);\n\nexport default handler;\n"],
5
5
  "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,uBAAuB;AAChC,SAASC,iBAAiB;AAM1B,IAAMC,UAAyDC,gBAAgBC,KAC7EC,UAAUC,YACDC,kBAAW,aAAA;AAChB,SAAOF,UAAUG,OAAOC,gBAAgBC,cAAc;IACpDC,SAASC;IACTC,YAAY;IACZC,OAAO;MACLC,oBAAoB;IACtB;EACF,CAAA;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,2BAAeb;",
6
6
  "names": ["Effect", "LayoutOperation", "Operation", "handler", "RecoverIdentity", "pipe", "Operation", "withHandler", "fnUntraced", "invoke", "LayoutOperation", "UpdateDialog", "subject", "JOIN_DIALOG", "blockAlign", "props", "initialDisposition"]
7
7
  }
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  RedeemPasskey
3
- } from "./chunk-M43LJQ5U.mjs";
3
+ } from "./chunk-D6HPCLTS.mjs";
4
4
  import {
5
5
  ClientCapabilities
6
- } from "./chunk-WNJRYPGG.mjs";
6
+ } from "./chunk-TUK3ELUU.mjs";
7
7
  import "./chunk-J5LGTIGS.mjs";
8
8
 
9
9
  // src/operations/redeem-passkey.ts
@@ -12,34 +12,18 @@ import * as Match from "effect/Match";
12
12
  import { Capability } from "@dxos/app-framework";
13
13
  import { decodeUrlSafeBase64, supportsNativePasskeys, loginNativePasskey } from "@dxos/app-toolkit";
14
14
  import { PublicKey } from "@dxos/client";
15
+ import { Operation } from "@dxos/compute";
15
16
  import { invariant } from "@dxos/invariant";
16
- import { Operation } from "@dxos/operation";
17
17
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-client/src/operations/redeem-passkey.ts";
18
18
  var handler = RedeemPasskey.pipe(Operation.withHandler(Effect.fnUntraced(function* () {
19
19
  const client = yield* Capability.get(ClientCapabilities.Client);
20
- invariant(client.services.services.IdentityService, "IdentityService not available", {
21
- F: __dxlog_file,
22
- L: 21,
23
- S: this,
24
- A: [
25
- "client.services.services.IdentityService",
26
- "'IdentityService not available'"
27
- ]
28
- });
20
+ invariant(client.services.services.IdentityService, "IdentityService not available", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 15, S: this, A: ["client.services.services.IdentityService", "'IdentityService not available'"] });
29
21
  const { deviceKey, controlFeedKey, challenge } = yield* Effect.promise(() => client.services.services.IdentityService.requestRecoveryChallenge());
30
22
  const { lookupKey, signature, clientDataJson, authenticatorData } = yield* Match.value(supportsNativePasskeys()).pipe(Match.when(true, () => Effect.gen(function* () {
31
23
  const result = yield* Effect.promise(() => loginNativePasskey({
32
24
  challenge: Uint8Array.from(Buffer.from(challenge, "base64"))
33
25
  }));
34
- invariant(result, "Native passkey login returned no result", {
35
- F: __dxlog_file,
36
- L: 34,
37
- S: this,
38
- A: [
39
- "result",
40
- "'Native passkey login returned no result'"
41
- ]
42
- });
26
+ invariant(result, "Native passkey login returned no result", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 21, S: this, A: ["result", "'Native passkey login returned no result'"] });
43
27
  return {
44
28
  lookupKey: PublicKey.from(decodeUrlSafeBase64(result.user_handle)),
45
29
  signature: Buffer.from(decodeUrlSafeBase64(result.signature)),
@@ -79,4 +63,4 @@ var RECOVER_IDENTITY_RPC_TIMEOUT = 2e4;
79
63
  export {
80
64
  redeem_passkey_default as default
81
65
  };
82
- //# sourceMappingURL=redeem-passkey-OCIV6VCK.mjs.map
66
+ //# sourceMappingURL=redeem-passkey-4SBAI4AG.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/redeem-passkey.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Match from 'effect/Match';\n\nimport { Capability } from '@dxos/app-framework';\nimport { decodeUrlSafeBase64, supportsNativePasskeys, loginNativePasskey } from '@dxos/app-toolkit';\nimport { PublicKey } from '@dxos/client';\nimport { Operation } from '@dxos/compute';\nimport { invariant } from '@dxos/invariant';\n\nimport { ClientCapabilities } from '../types';\nimport { RedeemPasskey } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RedeemPasskey> = RedeemPasskey.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* () {\n const client = yield* Capability.get(ClientCapabilities.Client);\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n const { deviceKey, controlFeedKey, challenge } = yield* Effect.promise(() =>\n client.services.services.IdentityService!.requestRecoveryChallenge(),\n );\n\n const { lookupKey, signature, clientDataJson, authenticatorData } = yield* Match.value(\n supportsNativePasskeys(),\n ).pipe(\n Match.when(true, () =>\n Effect.gen(function* () {\n const result = yield* Effect.promise(() =>\n loginNativePasskey({ challenge: Uint8Array.from(Buffer.from(challenge, 'base64')) }),\n );\n invariant(result, 'Native passkey login returned no result');\n return {\n lookupKey: PublicKey.from(decodeUrlSafeBase64(result.user_handle)),\n signature: Buffer.from(decodeUrlSafeBase64(result.signature)),\n clientDataJson: Buffer.from(decodeUrlSafeBase64(result.client_data_json)),\n authenticatorData: Buffer.from(decodeUrlSafeBase64(result.authenticator_data)),\n };\n }),\n ),\n Match.orElse(() =>\n Effect.gen(function* () {\n const credential = yield* Effect.promise(() =>\n navigator.credentials.get({\n publicKey: {\n challenge: Buffer.from(challenge, 'base64'),\n rpId: location.hostname,\n userVerification: 'required',\n },\n }),\n );\n return {\n lookupKey: PublicKey.from(new Uint8Array((credential as any).response.userHandle)),\n signature: Buffer.from((credential as any).response.signature),\n clientDataJson: Buffer.from((credential as any).response.clientDataJSON),\n authenticatorData: Buffer.from((credential as any).response.authenticatorData),\n };\n }),\n ),\n );\n\n yield* Effect.promise(() =>\n client.services.services.IdentityService!.recoverIdentity(\n {\n external: {\n lookupKey,\n deviceKey,\n controlFeedKey,\n signature,\n clientDataJson,\n authenticatorData,\n },\n },\n { timeout: RECOVER_IDENTITY_RPC_TIMEOUT },\n ),\n );\n }),\n ),\n);\n\nexport default handler;\n\nconst RECOVER_IDENTITY_RPC_TIMEOUT = 20_000;\n"],
5
+ "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,WAAW;AAEvB,SAASC,kBAAkB;AAC3B,SAASC,qBAAqBC,wBAAwBC,0BAA0B;AAChF,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAK1B,IAAA,eAA6DC;IAIvDC,UAAUC,cAAgBC,KAAAA,UAASC,YAAiB,kBAAA,aAAA;AACpD,QAAM,SAAEC,OAAWC,WAAc,IAAEC,mBAAqBC,MAAAA;AAIxD,YAAQC,OAAS,SAAEC,SAAWC,iBAAgBC,iCAAmCC,EAAAA,YAC/EC,YAAAA,GAAAA,cAEAC,GAAMC,IAAAA,GAAK,MAAA,GAAM,CAAA,4CACJ,iCAAA,EAAA,CAAA;UACT,WAAMC,gBAAgBT,UAAe,IACnCU,OAAAA,eAAmB,MAAA,OAAA,SAAA,SAAA,gBAAA,yBAAA,CAAA;qBAAEX,WAAWY,gBAAgBC,kBAAYb,IAAW,OAAA,YAAA,uBAAA,CAAA,EAAA,KAAA,WAAA,MAAA,MAAA,WAAA,aAAA;UAAW,SAAA,OAAA,eAAA,MAAA,mBAAA;MAEpFN,WAAkB,WAAA,KAAA,OAAA,KAAA,WAAA,QAAA,CAAA;IAClB,CAAA,CAAA;cACEQ,QAAWY,2CAA0CC,EAAAA,YAAW,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,UAAA,2CAAA,EAAA,CAAA;WAChEZ;MACAC,WAAAA,UAAgBS,KAAOG,oBAAKC,OAAoBP,WAAOQ,CAAAA;MACvDb,WAAAA,OAAAA,KAAmBQ,oBAAYI,OAAAA,SAA2BE,CAAAA;MAC5D,gBAAA,OAAA,KAAA,oBAAA,OAAA,gBAAA,CAAA;MAGJX,mBACEP,OAAW,KAAA,oBAAA,OAAA,kBAAA,CAAA;IACT;oBAEImB,MAAW,WAAA,aAAA;uBACTpB,OAAkBgB,eAAKhB,MAAAA,UAAW,YAAA,IAAA;iBAC5BqB;QACNC,WAAAA,OAAkB,KAAA,WAAA,QAAA;QACpB,MAAA,SAAA;QACF,kBAAA;MAEK;IACLpB,CAAAA,CAAAA;WACAC;MACAC,WAAAA,UAAgBS,KAAOG,IAAMO,WAAmBC,WAASC,SAAAA,UAAc,CAAA;MACvEpB,WAAAA,OAAAA,KAAmBQ,WAAaU,SAAmBC,SAASnB;MAC9D,gBAAA,OAAA,KAAA,WAAA,SAAA,cAAA;MACF,mBAAA,OAAA,KAAA,WAAA,SAAA,iBAAA;IAIGJ;;SAICC,eAAAA,MAAAA,OAAAA,SAAAA,SAAAA,gBAAAA,gBAAAA;cACAJ;MACAC;MACAI;MACAC;MACAC;MACF;MAEF;IAAEqB;EAAsC,GAAA;IAG9C,SAAA;EAIJ,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA;;;",
6
+ "names": ["Effect", "Match", "Capability", "decodeUrlSafeBase64", "supportsNativePasskeys", "loginNativePasskey", "PublicKey", "Operation", "invariant", "RedeemPasskey", "invariant", "client", "services", "IdentityService", "deviceKey", "controlFeedKey", "challenge", "Effect", "lookupKey", "signature", "clientDataJson", "authenticatorData", "value", "supportsNativePasskeys", "Match", "when", "result", "loginNativePasskey", "Uint8Array", "Buffer", "PublicKey", "user_handle", "from", "decodeUrlSafeBase64", "client_data_json", "authenticator_data", "publicKey", "location", "userVerification", "credential", "response", "clientDataJSON", "timeout"]
7
+ }
@@ -1,28 +1,20 @@
1
1
  import {
2
2
  RedeemToken
3
- } from "./chunk-M43LJQ5U.mjs";
3
+ } from "./chunk-D6HPCLTS.mjs";
4
4
  import {
5
5
  ClientCapabilities
6
- } from "./chunk-WNJRYPGG.mjs";
6
+ } from "./chunk-TUK3ELUU.mjs";
7
7
  import "./chunk-J5LGTIGS.mjs";
8
8
 
9
9
  // src/operations/redeem-token.ts
10
10
  import * as Effect from "effect/Effect";
11
11
  import { Capability } from "@dxos/app-framework";
12
+ import { Operation } from "@dxos/compute";
12
13
  import { invariant } from "@dxos/invariant";
13
- import { Operation } from "@dxos/operation";
14
14
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-client/src/operations/redeem-token.ts";
15
15
  var handler = RedeemToken.pipe(Operation.withHandler(Effect.fnUntraced(function* (data) {
16
16
  const client = yield* Capability.get(ClientCapabilities.Client);
17
- invariant(client.services.services.IdentityService, "IdentityService not available", {
18
- F: __dxlog_file,
19
- L: 18,
20
- S: this,
21
- A: [
22
- "client.services.services.IdentityService",
23
- "'IdentityService not available'"
24
- ]
25
- });
17
+ invariant(client.services.services.IdentityService, "IdentityService not available", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 12, S: this, A: ["client.services.services.IdentityService", "'IdentityService not available'"] });
26
18
  yield* Effect.promise(() => client.services.services.IdentityService.recoverIdentity({
27
19
  token: data.token
28
20
  }, {
@@ -34,4 +26,4 @@ var RECOVER_IDENTITY_RPC_TIMEOUT = 2e4;
34
26
  export {
35
27
  redeem_token_default as default
36
28
  };
37
- //# sourceMappingURL=redeem-token-6BCRGKV6.mjs.map
29
+ //# sourceMappingURL=redeem-token-POBD6TMN.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/redeem-token.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\nimport { invariant } from '@dxos/invariant';\n\nimport { ClientCapabilities } from '../types';\nimport { RedeemToken } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RedeemToken> = RedeemToken.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (data) {\n const client = yield* Capability.get(ClientCapabilities.Client);\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n yield* Effect.promise(() =>\n client.services.services.IdentityService!.recoverIdentity(\n { token: data.token },\n { timeout: RECOVER_IDENTITY_RPC_TIMEOUT },\n ),\n );\n }),\n ),\n);\n\nexport default handler;\n\nconst RECOVER_IDENTITY_RPC_TIMEOUT = 20_000;\n"],
5
+ "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAK1B,IAAA,eAA2DC;IAIrDC,UAAUC,YAAOC,KAASA,UAASC,YAAiB,kBAAA,WAAA,MAAA;AACpD,QAAA,SAAcC,OAAQ,WACbF,IAAAA,mBAAkBC,MAAAA;YACrBE,OAAOC,SAAU,SAAA,iBAAA,iCAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,4CAAA,iCAAA,EAAA,CAAA;SACnB,eAAA,MAAA,OAAA,SAAA,SAAA,gBAAA,gBAAA;IAAEC,OAAAA,KAASC;EAA6B,GAAA;IAG9C,SAAA;EAIJ,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA;;;",
6
+ "names": ["Effect", "Capability", "Operation", "invariant", "RedeemToken", "invariant", "client", "services", "IdentityService", "promise", "token", "data", "timeout", "RECOVER_IDENTITY_RPC_TIMEOUT"]
7
+ }
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  RESET_DIALOG
3
- } from "./chunk-ELAYKIQU.mjs";
3
+ } from "./chunk-WWCVZG3K.mjs";
4
4
  import {
5
5
  ResetStorage
6
- } from "./chunk-M43LJQ5U.mjs";
6
+ } from "./chunk-D6HPCLTS.mjs";
7
7
  import "./chunk-J5LGTIGS.mjs";
8
8
 
9
9
  // src/operations/reset-storage.ts
10
10
  import * as Effect from "effect/Effect";
11
11
  import { LayoutOperation } from "@dxos/app-toolkit";
12
- import { Operation } from "@dxos/operation";
12
+ import { Operation } from "@dxos/compute";
13
13
  var handler = ResetStorage.pipe(Operation.withHandler(Effect.fnUntraced(function* (data) {
14
14
  yield* Operation.invoke(LayoutOperation.UpdateDialog, {
15
15
  subject: RESET_DIALOG,
@@ -23,4 +23,4 @@ var reset_storage_default = handler;
23
23
  export {
24
24
  reset_storage_default as default
25
25
  };
26
- //# sourceMappingURL=reset-storage-QJLTL7J3.mjs.map
26
+ //# sourceMappingURL=reset-storage-LQKUV5RA.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operations/reset-storage.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/operation';\n\nimport { RESET_DIALOG } from '../constants';\nimport { ResetStorage } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ResetStorage> = ResetStorage.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (data) {\n yield* Operation.invoke(LayoutOperation.UpdateDialog, {\n subject: RESET_DIALOG,\n blockAlign: 'start',\n props: {\n mode: data.mode ?? 'reset-storage',\n },\n });\n }),\n ),\n);\n\nexport default handler;\n"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\n\nimport { RESET_DIALOG } from '../constants';\nimport { ResetStorage } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ResetStorage> = ResetStorage.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (data) {\n yield* Operation.invoke(LayoutOperation.UpdateDialog, {\n subject: RESET_DIALOG,\n blockAlign: 'start',\n props: {\n mode: data.mode ?? 'reset-storage',\n },\n });\n }),\n ),\n);\n\nexport default handler;\n"],
5
5
  "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,uBAAuB;AAChC,SAASC,iBAAiB;AAK1B,IAAMC,UAAsDC,aAAaC,KACvEC,UAAUC,YACDC,kBAAW,WAAWC,MAAI;AAC/B,SAAOH,UAAUI,OAAOC,gBAAgBC,cAAc;IACpDC,SAASC;IACTC,YAAY;IACZC,OAAO;MACLC,MAAMR,KAAKQ,QAAQ;IACrB;EACF,CAAA;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,wBAAed;",
6
6
  "names": ["Effect", "LayoutOperation", "Operation", "handler", "ResetStorage", "pipe", "Operation", "withHandler", "fnUntraced", "data", "invoke", "LayoutOperation", "UpdateDialog", "subject", "RESET_DIALOG", "blockAlign", "props", "mode"]
7
7
  }
@@ -0,0 +1,51 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/schema-defs.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capabilities, Capability } from "@dxos/app-framework";
6
+ import { AppCapabilities } from "@dxos/app-toolkit";
7
+ import { Type } from "@dxos/echo";
8
+ import { log } from "@dxos/log";
9
+ import { ClientCapabilities } from "#types";
10
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-client/src/capabilities/schema-defs.ts";
11
+ var schema_defs_default = Capability.makeModule(Effect.fnUntraced(function* () {
12
+ const registry = yield* Capability.get(Capabilities.AtomRegistry);
13
+ const client = yield* Capability.get(ClientCapabilities.Client);
14
+ const schemasAtom = yield* Capability.atom(AppCapabilities.Schema);
15
+ let previousDxns = /* @__PURE__ */ new Set();
16
+ const cancel = registry.subscribe(schemasAtom, async (schemas) => {
17
+ const seenSchemaDxns = /* @__PURE__ */ new Set();
18
+ const batch = [];
19
+ for (const schema of schemas.flat()) {
20
+ const uri = Type.getURI(schema);
21
+ if (!uri) {
22
+ log.warn("skipping schema without uri", void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 22, S: this });
23
+ continue;
24
+ }
25
+ const key = uri.toString();
26
+ if (seenSchemaDxns.has(key)) {
27
+ log("skipping duplicate schema for echo registration", {
28
+ uri: key
29
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 27, S: this });
30
+ continue;
31
+ }
32
+ seenSchemaDxns.add(key);
33
+ batch.push({
34
+ schema,
35
+ dxnKey: key
36
+ });
37
+ }
38
+ const toRegister = batch.filter(({ dxnKey }) => !previousDxns.has(dxnKey));
39
+ await client.addTypes(toRegister.map(({ schema }) => schema));
40
+ for (const { dxnKey } of toRegister) {
41
+ previousDxns.add(dxnKey);
42
+ }
43
+ }, {
44
+ immediate: true
45
+ });
46
+ return Capability.contributes(Capabilities.Null, null, () => Effect.sync(() => cancel()));
47
+ }));
48
+ export {
49
+ schema_defs_default as default
50
+ };
51
+ //# sourceMappingURL=schema-defs-IHBCKTMM.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/schema-defs.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { Type } from '@dxos/echo';\nimport { log } from '@dxos/log';\n\nimport { ClientCapabilities } from '#types';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const client = yield* Capability.get(ClientCapabilities.Client);\n const schemasAtom = yield* Capability.atom(AppCapabilities.Schema);\n\n // TODO(wittjosiah): Unregister schemas when they are disabled.\n let previousDxns = new Set<string>();\n const cancel = registry.subscribe(\n schemasAtom,\n async (schemas) => {\n const seenSchemaDxns = new Set<string>();\n const batch: { schema: Type.AnyEntity; dxnKey: string }[] = [];\n for (const schema of schemas.flat()) {\n const uri = Type.getURI(schema);\n if (!uri) {\n log.warn('skipping schema without uri');\n continue;\n }\n\n const key = uri.toString();\n if (seenSchemaDxns.has(key)) {\n log('skipping duplicate schema for echo registration', { uri: key });\n continue;\n }\n\n seenSchemaDxns.add(key);\n batch.push({ schema, dxnKey: key });\n }\n\n const toRegister = batch.filter(({ dxnKey }) => !previousDxns.has(dxnKey));\n\n await client.addTypes(toRegister.map(({ schema }) => schema));\n for (const { dxnKey } of toRegister) {\n previousDxns.add(dxnKey);\n }\n },\n { immediate: true },\n );\n\n return Capability.contributes(Capabilities.Null, null, () => Effect.sync(() => cancel()));\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAASC,YAAY;AACrB,SAASC,WAAW;AAEpB,SAASC,0BAA0B;AAEnC,IAAA,eAAeJ;IAGX,sBAAMK,WAAgBL,WAAeI,kBAAAA,aAAyB;AAC9D,QAAME,WAAAA,OAAc,WAAON,IAAWO,aAAKN,YAAgBO;AAE3D,QAAA,SAAA,OAAA,WAAA,IAAA,mBAAA,MAAA;AACA,QAAIC,cAAe,OAAIC,WAAAA,KAAAA,gBAAAA,MAAAA;MAInB,eAAMC,oBAAAA,IAAiB;QACvB,SAAMC,SAAwD,UAAA,aAAA,OAAA,YAAA;AAC9D,UAAK,iBAAgBC,oBAAAA,IAAQC;UAC3B,QAAMC,CAAAA;eACDA,UAAK,QAAA,KAAA,GAAA;YACRZ,MAAQ,KAAC,OAAA,MAAA;UACT,CAAA,KAAA;AACF,YAAA,KAAA,+BAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AAEA;MACA;YACEA,MAAI,IAAA,SAAA;yBAA0Da,IAAAA,GAAAA,GAAAA;AAAI,YAAA,mDAAA;UAClE,KAAA;QACF,GAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AAEAL;MACAC;qBAAaK,IAAAA,GAAAA;YAAQC,KAAAA;QAAY;QACnC,QAAA;MAEA,CAAA;IAEA;AACA,UAAK,aAAc,MAAMC,OAAAA,CAAAA,EAAAA,OAAY,MAAA,CAAA,aAAA,IAAA,MAAA,CAAA;UACnCV,OAAAA,SAAiBS,WAAAA,IAAAA,CAAAA,EAAAA,OAAAA,MAAAA,MAAAA,CAAAA;AACnB,eAAA,EAAA,OAAA,KAAA,YAAA;AAEF,mBAAA,IAAA,MAAA;IAAEE;EAAgB,GAAA;IAGpB,WAAOpB;EAET,CAAA;;;",
6
+ "names": ["Effect", "Capabilities", "Capability", "AppCapabilities", "Type", "log", "ClientCapabilities", "client", "schemasAtom", "atom", "Schema", "previousDxns", "Set", "seenSchemaDxns", "batch", "schemas", "flat", "uri", "key", "schema", "dxnKey", "toRegister", "immediate"]
7
+ }
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  ShareIdentity
3
- } from "./chunk-M43LJQ5U.mjs";
3
+ } from "./chunk-D6HPCLTS.mjs";
4
4
  import {
5
5
  Account
6
- } from "./chunk-WNJRYPGG.mjs";
6
+ } from "./chunk-TUK3ELUU.mjs";
7
7
  import "./chunk-J5LGTIGS.mjs";
8
8
 
9
9
  // src/operations/share-identity.ts
10
10
  import * as Effect from "effect/Effect";
11
11
  import { LayoutOperation, getSpacePath } from "@dxos/app-toolkit";
12
- import { Operation } from "@dxos/operation";
13
- import { ObservabilityOperation } from "@dxos/plugin-observability/operations";
12
+ import { Operation } from "@dxos/compute";
13
+ import { ObservabilityOperation } from "@dxos/plugin-observability";
14
14
  var handler = ShareIdentity.pipe(Operation.withHandler(Effect.fnUntraced(function* () {
15
15
  yield* Operation.invoke(LayoutOperation.SwitchWorkspace, {
16
16
  subject: getSpacePath(Account.id)
@@ -28,4 +28,4 @@ var share_identity_default = handler;
28
28
  export {
29
29
  share_identity_default as default
30
30
  };
31
- //# sourceMappingURL=share-identity-YJEBJTPA.mjs.map
31
+ //# sourceMappingURL=share-identity-KNQ2XNXV.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operations/share-identity.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation, getSpacePath } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/operation';\nimport { ObservabilityOperation } from '@dxos/plugin-observability/operations';\n\nimport { Account } from '../types';\nimport { ShareIdentity } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ShareIdentity> = ShareIdentity.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* () {\n yield* Operation.invoke(LayoutOperation.SwitchWorkspace, { subject: getSpacePath(Account.id) });\n yield* Operation.invoke(LayoutOperation.Open, {\n subject: [`${getSpacePath(Account.id)}/${Account.Profile}`],\n });\n yield* Operation.schedule(ObservabilityOperation.SendEvent, { name: 'identity.share' });\n }),\n ),\n);\n\nexport default handler;\n"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation, getSpacePath } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\nimport { ObservabilityOperation } from '@dxos/plugin-observability';\n\nimport { Account } from '../types';\nimport { ShareIdentity } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ShareIdentity> = ShareIdentity.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* () {\n yield* Operation.invoke(LayoutOperation.SwitchWorkspace, { subject: getSpacePath(Account.id) });\n yield* Operation.invoke(LayoutOperation.Open, {\n subject: [`${getSpacePath(Account.id)}/${Account.Profile}`],\n });\n yield* Operation.schedule(ObservabilityOperation.SendEvent, { name: 'identity.share' });\n }),\n ),\n);\n\nexport default handler;\n"],
5
5
  "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiBC,oBAAoB;AAC9C,SAASC,iBAAiB;AAC1B,SAASC,8BAA8B;AAKvC,IAAMC,UAAuDC,cAAcC,KACzEC,UAAUC,YACDC,kBAAW,aAAA;AAChB,SAAOF,UAAUG,OAAOC,gBAAgBC,iBAAiB;IAAEC,SAASC,aAAaC,QAAQC,EAAE;EAAE,CAAA;AAC7F,SAAOT,UAAUG,OAAOC,gBAAgBM,MAAM;IAC5CJ,SAAS;MAAC,GAAGC,aAAaC,QAAQC,EAAE,CAAA,IAAKD,QAAQG,OAAO;;EAC1D,CAAA;AACA,SAAOX,UAAUY,SAASC,uBAAuBC,WAAW;IAAEC,MAAM;EAAiB,CAAA;AACvF,CAAA,CAAA,CAAA;AAIJ,IAAA,yBAAelB;",
6
6
  "names": ["Effect", "LayoutOperation", "getSpacePath", "Operation", "ObservabilityOperation", "handler", "ShareIdentity", "pipe", "Operation", "withHandler", "fnUntraced", "invoke", "LayoutOperation", "SwitchWorkspace", "subject", "getSpacePath", "Account", "id", "Open", "Profile", "schedule", "ObservabilityOperation", "SendEvent", "name"]
7
7
  }
@@ -1,5 +1,8 @@
1
1
  import "../chunk-J5LGTIGS.mjs";
2
2
 
3
+ // src/testing/index.ts
4
+ export * from "#plugin";
5
+
3
6
  // src/testing/initializeIdentity.ts
4
7
  import * as Effect from "effect/Effect";
5
8
  import { PERSONAL_SPACE_TAG } from "@dxos/app-toolkit";
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/testing/index.ts", "../../../../src/testing/initializeIdentity.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nexport * from '#plugin';\nexport { initializeIdentity } from './initializeIdentity';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { PERSONAL_SPACE_TAG } from '@dxos/app-toolkit';\nimport { type Client } from '@dxos/client';\nimport { type Space } from '@dxos/client-protocol';\nimport { type Identity } from '@dxos/protocols/proto/dxos/client/services';\n\nexport type InitializeIdentityResult = {\n identity: Identity;\n personalSpace: Space;\n};\n\n/**\n * Create an identity and a personal space.\n * Returns the identity and space for further setup.\n */\nexport const initializeIdentity = (client: Client): Effect.Effect<InitializeIdentityResult, never, never> =>\n Effect.gen(function* () {\n const identity = yield* Effect.promise(() => client.halo.createIdentity());\n const personalSpace = yield* Effect.promise(() => client.spaces.create({}, { tags: [PERSONAL_SPACE_TAG] }));\n yield* Effect.promise(() => personalSpace.waitUntilReady());\n return {\n identity,\n personalSpace,\n };\n });\n"],
5
+ "mappings": ";;;AAIA,cAAc;;;ACAd,YAAYA,YAAY;AAExB,SAASC,0BAA0B;AAc5B,IAAMC,qBAAqB,CAACC,WAC1BC,WAAI,aAAA;AACT,QAAMC,WAAW,OAAcC,eAAQ,MAAMH,OAAOI,KAAKC,eAAc,CAAA;AACvE,QAAMC,gBAAgB,OAAcH,eAAQ,MAAMH,OAAOO,OAAOC,OAAO,CAAC,GAAG;IAAEC,MAAM;MAACX;;EAAoB,CAAA,CAAA;AACxG,SAAcK,eAAQ,MAAMG,cAAcI,eAAc,CAAA;AACxD,SAAO;IACLR;IACAI;EACF;AACF,CAAA;",
6
+ "names": ["Effect", "PERSONAL_SPACE_TAG", "initializeIdentity", "client", "gen", "identity", "promise", "halo", "createIdentity", "personalSpace", "spaces", "create", "tags", "waitUntilReady"]
7
+ }
@@ -1,12 +1,5 @@
1
1
  import "./chunk-J5LGTIGS.mjs";
2
2
 
3
- // src/ClientPlugin.ts
4
- import { ActivationEvent, ActivationEvents, Capability, Plugin } from "@dxos/app-framework";
5
- import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
6
- import { AppGraphBuilder, Client, Migrations, NavigationHandler, OperationHandler, ReactContext, ReactSurface, SchemaDefs } from "#capabilities";
7
- import { meta as meta2 } from "#meta";
8
- import { ClientEvents } from "#types";
9
-
10
3
  // src/translations.ts
11
4
  import { translations as shellTranslations } from "@dxos/shell/react";
12
5
  import { meta } from "#meta";
@@ -16,15 +9,42 @@ var pluginTranslations = [
16
9
  [meta.id]: {
17
10
  "account.label": "User profile",
18
11
  "profile.label": "Profile",
19
- "profile.description": "You can adjust how your user settings here.",
12
+ "profile.description": "User profile and account settings.",
20
13
  "devices.label": "Devices",
21
14
  "add-device.label": "Add device",
22
15
  "devices-verbose.label": "Manage devices",
23
16
  "add-device.description": "Authenticating another device is a two-step process. To get started, create a code using the button below.",
24
- "devices.description": "You can add and remove devices, configure your agent in the cloud, reset this device, or log in as a different identity here.",
17
+ "devices.description": "Devices, cloud agents, and account access for this identity.",
25
18
  "create-device-invitation.label": "Create code",
26
19
  "qr-code.description": "Scan this QR code using the device you want to log in to, or copy the URL and share it with the new device.",
27
20
  "security.label": "Security",
21
+ "account-panel.label": "Account",
22
+ "invitations-panel.label": "Invitations",
23
+ "account-section.title": "Account",
24
+ "account-section.description": "Your identity on this device is bound to a DXOS account that gates access to edge services like sync, agents, and AI.",
25
+ "invitations-section.title": "Invitations",
26
+ "invitations-section.description": "Share an invitation with someone you\u2019d like to bring onto DXOS. Each code grants one-time access to create an account.",
27
+ "no-edge-access.title": "No edge access",
28
+ "no-edge-access.description": "This identity is not bound to a DXOS account, so features that depend on edge services will not work. Request access below to be notified when an invitation is available.",
29
+ "access-request-email.placeholder": "you@example.com",
30
+ "access-request-submitted.message": "Thanks \u2014 we\u2019ll be in touch.",
31
+ "request-access.label": "Request access",
32
+ "request-access.description": "Enter your email and we\u2019ll add you to the waiting list.",
33
+ "account-offline.title": "Couldn\u2019t reach the server",
34
+ "account-offline.description": "Account information could not be refreshed. Reconnect to update; cached values are shown until then.",
35
+ "email.label": "Email",
36
+ "resend-verification.label": "Resend verification email",
37
+ "verification-sent.message": "Verification email sent.",
38
+ "verification-cooldown.message": "Please wait {{seconds}}s before resending.",
39
+ "verification-failed.message": "Could not send verification email.",
40
+ "delete-account.label": "Delete account",
41
+ "delete-account.description": "Permanently delete your account and all associated data. This will sign you out of this device.",
42
+ "generate-invitation.label": "Generate invitation",
43
+ "generate-invitation.description_zero": "You have no invitations left to generate.",
44
+ "generate-invitation.description_one": "You have {{count}} invitation left to generate.",
45
+ "generate-invitation.description_other": "You have {{count}} invitations left to generate.",
46
+ "available-invitations.title": "Available invitations",
47
+ "redeemed-invitations.title": "Redeemed invitations",
28
48
  "reset-device.description": "Log out from this device, erasing all the data on this\xA0device.",
29
49
  "join-new-identity.description": "Log out from this device, erasing all the data currently on this device, and use a QR code or URL to log\xA0in.",
30
50
  "recover-identity.description": "Log out from this device, erasing all the data currently on this device, and use a passkey or recovery code to log\xA0in.",
@@ -75,69 +95,7 @@ var translations = [
75
95
  ...pluginTranslations,
76
96
  ...shellTranslations
77
97
  ];
78
-
79
- // src/ClientPlugin.ts
80
- var ClientPlugin = Plugin.define(meta2).pipe(AppPlugin.addAppGraphModule({
81
- activate: AppGraphBuilder
82
- }), AppPlugin.addNavigationHandlerModule(({ invitationProp }) => ({
83
- activate: () => NavigationHandler({
84
- invitationProp
85
- })
86
- })), AppPlugin.addOperationHandlerModule({
87
- activate: OperationHandler
88
- }), AppPlugin.addReactContextModule({
89
- activate: ReactContext
90
- }), AppPlugin.addTranslationsModule({
91
- translations
92
- }), Plugin.addModule((options) => {
93
- return {
94
- id: Capability.getModuleTag(Client),
95
- activatesOn: ActivationEvent.oneOf(ActivationEvents.Startup, AppActivationEvents.SetupAppGraph),
96
- firesAfterActivation: [
97
- ClientEvents.ClientReady
98
- ],
99
- activate: () => Client(options)
100
- };
101
- }), Plugin.addModule({
102
- activatesOn: ClientEvents.ClientReady,
103
- firesBeforeActivation: [
104
- AppActivationEvents.SetupSchema
105
- ],
106
- activate: SchemaDefs
107
- }), Plugin.addModule({
108
- activatesOn: ClientEvents.ClientReady,
109
- firesBeforeActivation: [
110
- ClientEvents.SetupMigration
111
- ],
112
- activate: Migrations
113
- }), Plugin.addModule(({ shareableLinkOrigin = typeof window !== "undefined" ? window.location.origin : "http://localhost", invitationPath = "/", invitationProp = "deviceInvitationCode", onReset }) => {
114
- const createInvitationUrl = (invitationCode) => {
115
- const baseUrl = new URL(invitationPath || "/", shareableLinkOrigin);
116
- baseUrl.searchParams.set(invitationProp, invitationCode);
117
- return baseUrl.toString();
118
- };
119
- return {
120
- id: Capability.getModuleTag(ReactSurface),
121
- activatesOn: ActivationEvents.SetupReactSurface,
122
- activate: () => ReactSurface({
123
- createInvitationUrl,
124
- onReset
125
- })
126
- };
127
- }), Plugin.make);
128
-
129
- // src/meta.ts
130
- import { trim } from "@dxos/util";
131
- var meta3 = {
132
- id: "org.dxos.plugin.client",
133
- name: "Client",
134
- description: trim`
135
- Core client connectivity and peer-to-peer networking infrastructure.
136
- Manages identity, authentication, and real-time synchronization across devices.
137
- `
138
- };
139
98
  export {
140
- ClientPlugin,
141
- meta3 as meta
99
+ translations
142
100
  };
143
- //# sourceMappingURL=index.mjs.map
101
+ //# sourceMappingURL=translations.mjs.map