@dxos/plugin-client 0.8.4-main.fd6878d → 0.8.4-main.fffef41

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 (147) hide show
  1. package/dist/lib/browser/{app-graph-builder-ENKIVZWH.mjs → app-graph-builder-ARY4H3VC.mjs} +26 -25
  2. package/dist/lib/browser/app-graph-builder-ARY4H3VC.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-56EADSTE.mjs → chunk-4G4YWIUQ.mjs} +45 -54
  4. package/dist/lib/browser/chunk-4G4YWIUQ.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-4LRO3Y2O.mjs +19 -0
  6. package/dist/lib/browser/chunk-4LRO3Y2O.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-N5UR2HOE.mjs +18 -0
  8. package/dist/lib/browser/chunk-N5UR2HOE.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-HLWIF3AW.mjs → chunk-RDIG75CA.mjs} +3 -3
  10. package/dist/lib/browser/chunk-RDIG75CA.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-ZRVMXLDR.mjs +15 -0
  12. package/dist/lib/browser/chunk-ZRVMXLDR.mjs.map +7 -0
  13. package/dist/lib/browser/{client-F73MIXMT.mjs → client-O7U3MQ6J.mjs} +6 -6
  14. package/dist/lib/browser/{client-F73MIXMT.mjs.map → client-O7U3MQ6J.mjs.map} +1 -1
  15. package/dist/lib/browser/index.mjs +23 -19
  16. package/dist/lib/browser/index.mjs.map +4 -4
  17. package/dist/lib/browser/{intent-resolver-S3PUYK5Q.mjs → intent-resolver-KLK7PJZK.mjs} +10 -10
  18. package/dist/lib/browser/intent-resolver-KLK7PJZK.mjs.map +7 -0
  19. package/dist/lib/browser/meta.json +1 -1
  20. package/dist/lib/browser/{migrations-YJSO7JXY.mjs → migrations-RUAKBBTF.mjs} +6 -6
  21. package/dist/lib/browser/migrations-RUAKBBTF.mjs.map +7 -0
  22. package/dist/lib/browser/{react-context-QBXCHNH2.mjs → react-context-PCT5C3BN.mjs} +9 -8
  23. package/dist/lib/browser/react-context-PCT5C3BN.mjs.map +7 -0
  24. package/dist/lib/browser/{react-surface-YON76BFE.mjs → react-surface-RCXEA65V.mjs} +6 -6
  25. package/dist/lib/browser/{react-surface-YON76BFE.mjs.map → react-surface-RCXEA65V.mjs.map} +1 -1
  26. package/dist/lib/browser/{schema-defs-AMSX6T3B.mjs → schema-defs-UNNBAEFW.mjs} +6 -6
  27. package/dist/lib/browser/schema-defs-UNNBAEFW.mjs.map +7 -0
  28. package/dist/lib/browser/types/index.mjs +2 -2
  29. package/dist/lib/node-esm/{app-graph-builder-D4XJCLPN.mjs → app-graph-builder-LLM25DRR.mjs} +26 -25
  30. package/dist/lib/node-esm/app-graph-builder-LLM25DRR.mjs.map +7 -0
  31. package/dist/lib/node-esm/chunk-6ANOJ7ZM.mjs +19 -0
  32. package/dist/lib/node-esm/chunk-6ANOJ7ZM.mjs.map +7 -0
  33. package/dist/lib/node-esm/chunk-7M7VWQJW.mjs +20 -0
  34. package/dist/lib/node-esm/chunk-7M7VWQJW.mjs.map +7 -0
  35. package/dist/lib/node-esm/{chunk-J6I6JZPI.mjs → chunk-DJ6XKSE4.mjs} +45 -54
  36. package/dist/lib/node-esm/chunk-DJ6XKSE4.mjs.map +7 -0
  37. package/dist/lib/node-esm/chunk-QT3EQXDU.mjs +17 -0
  38. package/dist/lib/node-esm/chunk-QT3EQXDU.mjs.map +7 -0
  39. package/dist/lib/node-esm/{chunk-JG6AFSFU.mjs → chunk-VENKFPBC.mjs} +3 -3
  40. package/dist/lib/node-esm/chunk-VENKFPBC.mjs.map +7 -0
  41. package/dist/lib/node-esm/{client-A7CNP37P.mjs → client-6MTNT7M6.mjs} +6 -6
  42. package/dist/lib/node-esm/{client-A7CNP37P.mjs.map → client-6MTNT7M6.mjs.map} +1 -1
  43. package/dist/lib/node-esm/index.mjs +23 -19
  44. package/dist/lib/node-esm/index.mjs.map +4 -4
  45. package/dist/lib/node-esm/{intent-resolver-EBJABYM3.mjs → intent-resolver-YR2C224X.mjs} +10 -10
  46. package/dist/lib/node-esm/intent-resolver-YR2C224X.mjs.map +7 -0
  47. package/dist/lib/node-esm/meta.json +1 -1
  48. package/dist/lib/node-esm/{migrations-UOEK7HB7.mjs → migrations-ASF2SAUR.mjs} +6 -6
  49. package/dist/lib/node-esm/migrations-ASF2SAUR.mjs.map +7 -0
  50. package/dist/lib/node-esm/{react-context-JIH7YBFI.mjs → react-context-F4QOBWSP.mjs} +9 -8
  51. package/dist/lib/node-esm/react-context-F4QOBWSP.mjs.map +7 -0
  52. package/dist/lib/node-esm/{react-surface-YKCZF43D.mjs → react-surface-SQBRXVMZ.mjs} +6 -6
  53. package/dist/lib/node-esm/{react-surface-YKCZF43D.mjs.map → react-surface-SQBRXVMZ.mjs.map} +1 -1
  54. package/dist/lib/node-esm/{schema-defs-4UTKKRTF.mjs → schema-defs-MSIT2KK2.mjs} +6 -6
  55. package/dist/lib/node-esm/schema-defs-MSIT2KK2.mjs.map +7 -0
  56. package/dist/lib/node-esm/types/index.mjs +2 -2
  57. package/dist/types/src/ClientPlugin.d.ts +1 -1
  58. package/dist/types/src/ClientPlugin.d.ts.map +1 -1
  59. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  60. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  61. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  62. package/dist/types/src/capabilities/client.d.ts +1 -1
  63. package/dist/types/src/capabilities/index.d.ts +10 -10
  64. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  65. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  66. package/dist/types/src/capabilities/migrations.d.ts +1 -1
  67. package/dist/types/src/capabilities/react-context.d.ts +2 -2
  68. package/dist/types/src/capabilities/react-context.d.ts.map +1 -1
  69. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  70. package/dist/types/src/capabilities/schema-defs.d.ts +1 -1
  71. package/dist/types/src/components/DevicesContainer.d.ts.map +1 -1
  72. package/dist/types/src/components/DevicesContainer.stories.d.ts +224 -5
  73. package/dist/types/src/components/DevicesContainer.stories.d.ts.map +1 -1
  74. package/dist/types/src/components/JoinDialog.d.ts +1 -1
  75. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  76. package/dist/types/src/components/ProfileContainer.d.ts.map +1 -1
  77. package/dist/types/src/components/ProfileContainer.stories.d.ts +57 -5
  78. package/dist/types/src/components/ProfileContainer.stories.d.ts.map +1 -1
  79. package/dist/types/src/components/RecoveryCodeDialog.d.ts +1 -1
  80. package/dist/types/src/components/RecoveryCodeDialog.d.ts.map +1 -1
  81. package/dist/types/src/components/RecoveryCodeDialog.stories.d.ts +59 -5
  82. package/dist/types/src/components/RecoveryCodeDialog.stories.d.ts.map +1 -1
  83. package/dist/types/src/components/RecoveryCredentialsContainer.d.ts +1 -1
  84. package/dist/types/src/components/RecoveryCredentialsContainer.d.ts.map +1 -1
  85. package/dist/types/src/components/RecoveryCredentialsContainer.stories.d.ts +57 -5
  86. package/dist/types/src/components/RecoveryCredentialsContainer.stories.d.ts.map +1 -1
  87. package/dist/types/src/components/ResetDialog.d.ts +1 -1
  88. package/dist/types/src/components/ResetDialog.d.ts.map +1 -1
  89. package/dist/types/src/components/ResetDialog.stories.d.ts +59 -4
  90. package/dist/types/src/components/ResetDialog.stories.d.ts.map +1 -1
  91. package/dist/types/src/events.d.ts.map +1 -1
  92. package/dist/types/src/index.d.ts +3 -2
  93. package/dist/types/src/index.d.ts.map +1 -1
  94. package/dist/types/src/meta.d.ts +0 -1
  95. package/dist/types/src/meta.d.ts.map +1 -1
  96. package/dist/types/src/types/schema.d.ts +1 -1
  97. package/dist/types/src/types/schema.d.ts.map +1 -1
  98. package/dist/types/tsconfig.tsbuildinfo +1 -1
  99. package/package.json +35 -36
  100. package/src/ClientPlugin.ts +55 -57
  101. package/src/capabilities/app-graph-builder.ts +22 -21
  102. package/src/capabilities/capabilities.ts +5 -5
  103. package/src/capabilities/intent-resolver.ts +2 -2
  104. package/src/capabilities/migrations.ts +1 -1
  105. package/src/capabilities/react-context.tsx +4 -3
  106. package/src/capabilities/schema-defs.ts +1 -1
  107. package/src/components/DevicesContainer.stories.tsx +5 -8
  108. package/src/components/DevicesContainer.tsx +55 -68
  109. package/src/components/JoinDialog.tsx +5 -4
  110. package/src/components/ProfileContainer.stories.tsx +5 -7
  111. package/src/components/ProfileContainer.tsx +19 -27
  112. package/src/components/RecoveryCodeDialog.stories.tsx +7 -9
  113. package/src/components/RecoveryCodeDialog.tsx +6 -6
  114. package/src/components/RecoveryCredentialsContainer.stories.tsx +5 -8
  115. package/src/components/RecoveryCredentialsContainer.tsx +46 -50
  116. package/src/components/ResetDialog.stories.tsx +7 -9
  117. package/src/components/ResetDialog.tsx +5 -4
  118. package/src/events.ts +6 -6
  119. package/src/index.ts +4 -3
  120. package/src/meta.ts +6 -3
  121. package/src/types/schema.ts +1 -1
  122. package/dist/lib/browser/app-graph-builder-ENKIVZWH.mjs.map +0 -7
  123. package/dist/lib/browser/chunk-3F2Q2RKC.mjs +0 -18
  124. package/dist/lib/browser/chunk-3F2Q2RKC.mjs.map +0 -7
  125. package/dist/lib/browser/chunk-56EADSTE.mjs.map +0 -7
  126. package/dist/lib/browser/chunk-CAF2COXW.mjs +0 -19
  127. package/dist/lib/browser/chunk-CAF2COXW.mjs.map +0 -7
  128. package/dist/lib/browser/chunk-GS3LDHYD.mjs +0 -12
  129. package/dist/lib/browser/chunk-GS3LDHYD.mjs.map +0 -7
  130. package/dist/lib/browser/chunk-HLWIF3AW.mjs.map +0 -7
  131. package/dist/lib/browser/intent-resolver-S3PUYK5Q.mjs.map +0 -7
  132. package/dist/lib/browser/migrations-YJSO7JXY.mjs.map +0 -7
  133. package/dist/lib/browser/react-context-QBXCHNH2.mjs.map +0 -7
  134. package/dist/lib/browser/schema-defs-AMSX6T3B.mjs.map +0 -7
  135. package/dist/lib/node-esm/app-graph-builder-D4XJCLPN.mjs.map +0 -7
  136. package/dist/lib/node-esm/chunk-IOGTQFLM.mjs +0 -19
  137. package/dist/lib/node-esm/chunk-IOGTQFLM.mjs.map +0 -7
  138. package/dist/lib/node-esm/chunk-J6I6JZPI.mjs.map +0 -7
  139. package/dist/lib/node-esm/chunk-JG6AFSFU.mjs.map +0 -7
  140. package/dist/lib/node-esm/chunk-SZLX4BVJ.mjs +0 -14
  141. package/dist/lib/node-esm/chunk-SZLX4BVJ.mjs.map +0 -7
  142. package/dist/lib/node-esm/chunk-UMO3ETDV.mjs +0 -20
  143. package/dist/lib/node-esm/chunk-UMO3ETDV.mjs.map +0 -7
  144. package/dist/lib/node-esm/intent-resolver-EBJABYM3.mjs.map +0 -7
  145. package/dist/lib/node-esm/migrations-UOEK7HB7.mjs.map +0 -7
  146. package/dist/lib/node-esm/react-context-JIH7YBFI.mjs.map +0 -7
  147. package/dist/lib/node-esm/schema-defs-4UTKKRTF.mjs.map +0 -7
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe } from 'effect';\n\nimport {\n Capabilities,\n LayoutAction,\n type PluginContext,\n chain,\n contributes,\n createIntent,\n createResolver,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { PublicKey } from '@dxos/react-client';\nimport { type JoinPanelProps } from '@dxos/shell/react';\n\nimport { JOIN_DIALOG, RECOVERY_CODE_DIALOG, RESET_DIALOG } from '../components';\nimport { ClientEvents } from '../events';\nimport { Account, ClientAction } from '../types';\n\nimport { ClientCapabilities } from './capabilities';\n\ntype IntentResolverOptions = {\n context: PluginContext;\n appName?: string;\n};\n\nconst RECOVER_IDENTITY_RPC_TIMEOUT = 20_000;\n\nexport default ({ context, appName = 'Composer' }: IntentResolverOptions) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: ClientAction.CreateIdentity,\n resolve: async (profile) => {\n const manager = context.getCapability(Capabilities.PluginManager);\n const client = context.getCapability(ClientCapabilities.Client);\n const data = await client.halo.createIdentity(profile);\n await manager.activate(ClientEvents.IdentityCreated);\n return {\n data,\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'identity.create',\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.JoinIdentity,\n resolve: async (data) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: JOIN_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n initialInvitationCode: data.invitationCode,\n initialDisposition: 'accept-halo-invitation',\n },\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.ShareIdentity,\n resolve: async () => {\n return {\n intents: [\n pipe(\n createIntent(LayoutAction.SwitchWorkspace, {\n part: 'workspace',\n subject: Account.id,\n }),\n chain(LayoutAction.Open, {\n part: 'main',\n subject: [Account.Profile],\n }),\n ),\n createIntent(ObservabilityAction.SendEvent, {\n name: 'identity.share',\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.RecoverIdentity,\n resolve: async () => {\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: JOIN_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n initialDisposition: 'recover-identity',\n } satisfies Partial<JoinPanelProps>,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.ResetStorage,\n resolve: async (data) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: RESET_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n mode: data.mode ?? 'reset storage',\n },\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.CreateAgent,\n resolve: async () => {\n const client = context.getCapability(ClientCapabilities.Client);\n invariant(client.services.services.EdgeAgentService, 'Missing EdgeAgentService');\n await client.services.services.EdgeAgentService.createAgent(null as any, { timeout: 10_000 });\n },\n }),\n createResolver({\n intent: ClientAction.CreateRecoveryCode,\n resolve: async () => {\n const client = context.getCapability(ClientCapabilities.Client);\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n // TODO(wittjosiah): This needs a proper api.\n const { recoveryCode } = await client.services.services.IdentityService.createRecoveryCredential({});\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: RECOVERY_CODE_DIALOG,\n options: {\n blockAlign: 'start',\n type: 'alert',\n props: { code: recoveryCode },\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ClientAction.CreatePasskey,\n resolve: async () => {\n const client = context.getCapability(ClientCapabilities.Client);\n const identity = client.halo.identity.get();\n invariant(identity, 'Identity not available');\n\n // TODO(wittjosiah): Consider factoring out passkey creation to the halo api.\n const lookupKey = PublicKey.random();\n const credential = await navigator.credentials.create({\n publicKey: {\n challenge: new Uint8Array(),\n rp: { id: location.hostname, name: appName },\n user: {\n id: lookupKey.asUint8Array() as Uint8Array<ArrayBuffer>,\n name: identity.did,\n displayName: identity.profile?.displayName ?? '',\n },\n pubKeyCredParams: [\n { type: 'public-key', alg: -8 }, // Ed25519 (not yet supported across all browsers)\n { type: 'public-key', alg: -7 }, // ES256\n ],\n // https://web.dev/articles/webauthn-discoverable-credentials#resident-key\n authenticatorSelection: {\n residentKey: 'required',\n requireResidentKey: true,\n },\n },\n });\n\n invariant(credential, 'Credential not available');\n const recoveryKey = PublicKey.from(new Uint8Array((credential as any).response.getPublicKey()));\n const algorithm = (credential as any).response.getPublicKeyAlgorithm() === -7 ? 'ES256' : 'ED25519';\n\n // TODO(wittjosiah): This needs a proper api.\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n await client.services.services.IdentityService.createRecoveryCredential({\n data: {\n recoveryKey,\n algorithm,\n lookupKey,\n },\n });\n },\n }),\n createResolver({\n intent: ClientAction.RedeemPasskey,\n resolve: async () => {\n const client = context.getCapability(ClientCapabilities.Client);\n // TODO(wittjosiah): This needs a proper api.\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n const { deviceKey, controlFeedKey, challenge } =\n await client.services.services.IdentityService.requestRecoveryChallenge();\n const credential = await navigator.credentials.get({\n publicKey: {\n challenge: Buffer.from(challenge, 'base64'),\n rpId: location.hostname,\n userVerification: 'required',\n },\n });\n const lookupKey = PublicKey.from(new Uint8Array((credential as any).response.userHandle));\n await client.services.services.IdentityService.recoverIdentity(\n {\n external: {\n lookupKey,\n deviceKey,\n controlFeedKey,\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 { timeout: RECOVER_IDENTITY_RPC_TIMEOUT },\n );\n },\n }),\n createResolver({\n intent: ClientAction.RedeemToken,\n resolve: async (data) => {\n const client = context.getCapability(ClientCapabilities.Client);\n // TODO(wittjosiah): This needs a proper api.\n invariant(client.services.services.IdentityService, 'IdentityService not available');\n await client.services.services.IdentityService.recoverIdentity(\n { token: data.token },\n { timeout: RECOVER_IDENTITY_RPC_TIMEOUT },\n );\n },\n }),\n ]);\n"],
5
- "mappings": "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",
6
- "names": ["pipe", "Capabilities", "LayoutAction", "chain", "contributes", "createIntent", "createResolver", "invariant", "ObservabilityAction", "PublicKey", "RECOVER_IDENTITY_RPC_TIMEOUT", "context", "appName", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ClientAction", "CreateIdentity", "resolve", "profile", "manager", "getCapability", "PluginManager", "client", "ClientCapabilities", "Client", "data", "halo", "createIdentity", "activate", "ClientEvents", "IdentityCreated", "intents", "createIntent", "ObservabilityAction", "SendEvent", "name", "JoinIdentity", "LayoutAction", "UpdateDialog", "part", "subject", "JOIN_DIALOG", "options", "blockAlign", "props", "initialInvitationCode", "invitationCode", "initialDisposition", "ShareIdentity", "pipe", "SwitchWorkspace", "Account", "id", "chain", "Open", "Profile", "RecoverIdentity", "ResetStorage", "RESET_DIALOG", "mode", "CreateAgent", "invariant", "services", "EdgeAgentService", "createAgent", "timeout", "CreateRecoveryCode", "IdentityService", "recoveryCode", "createRecoveryCredential", "RECOVERY_CODE_DIALOG", "type", "code", "CreatePasskey", "identity", "get", "lookupKey", "PublicKey", "random", "credential", "navigator", "credentials", "create", "publicKey", "challenge", "Uint8Array", "rp", "location", "hostname", "user", "asUint8Array", "did", "displayName", "pubKeyCredParams", "alg", "authenticatorSelection", "residentKey", "requireResidentKey", "recoveryKey", "from", "response", "getPublicKey", "algorithm", "getPublicKeyAlgorithm", "RedeemPasskey", "deviceKey", "controlFeedKey", "requestRecoveryChallenge", "Buffer", "rpId", "userVerification", "userHandle", "recoverIdentity", "external", "signature", "clientDataJson", "clientDataJSON", "authenticatorData", "RedeemToken", "token"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/migrations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\n\nimport { ClientCapabilities } from './capabilities';\n\nexport default (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.RxRegistry);\n const client = context.getCapability(ClientCapabilities.Client);\n\n // NOTE: Migrations are currently unidirectional and idempotent.\n const cancel = registry.subscribe(\n context.capabilities(ClientCapabilities.Migration),\n (_migrations) => {\n const migrations = Array.from(new Set(_migrations.flat()));\n const spaces = client.spaces.get();\n void Promise.all(spaces.map((space) => space.db.runMigrations(migrations)));\n },\n { immediate: true },\n );\n\n return contributes(Capabilities.Null, null, () => cancel());\n};\n"],
5
- "mappings": ";;;;;;;AAIA,SAASA,cAAkCC,mBAAmB;AAI9D,IAAA,qBAAe,CAACC,YAAAA;AACd,QAAMC,WAAWD,QAAQE,cAAcC,aAAaC,UAAU;AAC9D,QAAMC,SAASL,QAAQE,cAAcI,mBAAmBC,MAAM;AAG9D,QAAMC,SAASP,SAASQ,UACtBT,QAAQU,aAAaJ,mBAAmBK,SAAS,GACjD,CAACC,gBAAAA;AACC,UAAMC,aAAaC,MAAMC,KAAK,IAAIC,IAAIJ,YAAYK,KAAI,CAAA,CAAA;AACtD,UAAMC,SAASb,OAAOa,OAAOC,IAAG;AAChC,SAAKC,QAAQC,IAAIH,OAAOI,IAAI,CAACC,UAAUA,MAAMC,GAAGC,cAAcZ,UAAAA,CAAAA,CAAAA;EAChE,GACA;IAAEa,WAAW;EAAK,CAAA;AAGpB,SAAOC,YAAYxB,aAAayB,MAAM,MAAM,MAAMpB,OAAAA,CAAAA;AACpD;",
6
- "names": ["Capabilities", "contributes", "context", "registry", "getCapability", "Capabilities", "RxRegistry", "client", "ClientCapabilities", "Client", "cancel", "subscribe", "capabilities", "Migration", "_migrations", "migrations", "Array", "from", "Set", "flat", "spaces", "get", "Promise", "all", "map", "space", "db", "runMigrations", "immediate", "contributes", "Null"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-context.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, useCapability } from '@dxos/app-framework';\nimport { ClientProvider } from '@dxos/react-client';\n\nimport { CLIENT_PLUGIN } from '../meta';\n\nimport { ClientCapabilities } from './capabilities';\n\nexport default () =>\n contributes(Capabilities.ReactContext, {\n id: CLIENT_PLUGIN,\n context: ({ children }) => {\n const client = useCapability(ClientCapabilities.Client);\n return <ClientProvider client={client}>{children}</ClientProvider>;\n },\n });\n"],
5
- "mappings": ";;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,sBAAsB;AAM/B,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,IAAIC;EACJC,SAAS,CAAC,EAAEC,SAAQ,MAAE;AACpB,UAAMC,SAASC,cAAcC,mBAAmBC,MAAM;AACtD,WAAO,sBAAA,cAACC,gBAAAA;MAAeJ;OAAiBD,QAAAA;EAC1C;AACF,CAAA;",
6
- "names": ["React", "Capabilities", "contributes", "useCapability", "ClientProvider", "contributes", "Capabilities", "ReactContext", "id", "CLIENT_PLUGIN", "context", "children", "client", "useCapability", "ClientCapabilities", "Client", "ClientProvider"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/schema-defs.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { type Type } from '@dxos/echo';\n\nimport { ClientCapabilities } from './capabilities';\n\nexport default (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.RxRegistry);\n const client = context.getCapability(ClientCapabilities.Client);\n\n // TODO(wittjosiah): Unregister schemas when they are disabled.\n let previous: Type.Obj.Any[] = [];\n const cancel = registry.subscribe(\n context.capabilities(ClientCapabilities.Schema),\n (_schemas) => {\n const schemas = Array.from(new Set(_schemas.flat()));\n // TODO(wittjosiah): Filter out schemas which the client has already registered.\n const newSchemas = schemas.filter((schema) => !previous.includes(schema));\n previous = schemas;\n client.addTypes(newSchemas);\n },\n { immediate: true },\n );\n\n return contributes(Capabilities.Null, null, () => cancel());\n};\n"],
5
- "mappings": ";;;;;;;AAIA,SAASA,cAAkCC,mBAAmB;AAK9D,IAAA,sBAAe,CAACC,YAAAA;AACd,QAAMC,WAAWD,QAAQE,cAAcC,aAAaC,UAAU;AAC9D,QAAMC,SAASL,QAAQE,cAAcI,mBAAmBC,MAAM;AAG9D,MAAIC,WAA2B,CAAA;AAC/B,QAAMC,SAASR,SAASS,UACtBV,QAAQW,aAAaL,mBAAmBM,MAAM,GAC9C,CAACC,aAAAA;AACC,UAAMC,UAAUC,MAAMC,KAAK,IAAIC,IAAIJ,SAASK,KAAI,CAAA,CAAA;AAEhD,UAAMC,aAAaL,QAAQM,OAAO,CAACC,WAAW,CAACb,SAASc,SAASD,MAAAA,CAAAA;AACjEb,eAAWM;AACXT,WAAOkB,SAASJ,UAAAA;EAClB,GACA;IAAEK,WAAW;EAAK,CAAA;AAGpB,SAAOC,YAAYtB,aAAauB,MAAM,MAAM,MAAMjB,OAAAA,CAAAA;AACpD;",
6
- "names": ["Capabilities", "contributes", "context", "registry", "getCapability", "Capabilities", "RxRegistry", "client", "ClientCapabilities", "Client", "previous", "cancel", "subscribe", "capabilities", "Schema", "_schemas", "schemas", "Array", "from", "Set", "flat", "newSchemas", "filter", "schema", "includes", "addTypes", "immediate", "contributes", "Null"]
7
- }