@dxos/plugin-client 0.7.5-main.9d2a38b → 0.7.5-main.e94eead

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 (148) hide show
  1. package/dist/lib/browser/{app-graph-builder-6LOTDB4T.mjs → app-graph-builder-ON64R7SO.mjs} +2 -2
  2. package/dist/lib/browser/{chunk-E3OUNOEL.mjs → chunk-7DPLXOMO.mjs} +14 -2
  3. package/dist/lib/browser/chunk-7DPLXOMO.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-EYBZZHSM.mjs +271 -0
  5. package/dist/lib/browser/chunk-EYBZZHSM.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-SVBQRT7I.mjs → chunk-GHEQL2E6.mjs} +1 -2
  7. package/dist/lib/browser/{chunk-SVBQRT7I.mjs.map → chunk-GHEQL2E6.mjs.map} +3 -3
  8. package/dist/lib/browser/{chunk-R4Q6H7RD.mjs → chunk-RGMLBYIF.mjs} +2 -2
  9. package/dist/lib/browser/{chunk-R4Q6H7RD.mjs.map → chunk-RGMLBYIF.mjs.map} +2 -2
  10. package/dist/lib/browser/{client-25GYH6TN.mjs → client-A7YSVURS.mjs} +4 -13
  11. package/dist/lib/browser/client-A7YSVURS.mjs.map +7 -0
  12. package/dist/lib/browser/index.mjs +28 -15
  13. package/dist/lib/browser/index.mjs.map +3 -3
  14. package/dist/lib/browser/intent-resolver-A6SKE7WJ.mjs +267 -0
  15. package/dist/lib/browser/intent-resolver-A6SKE7WJ.mjs.map +7 -0
  16. package/dist/lib/browser/meta.json +1 -1
  17. package/dist/lib/browser/{react-context-M3RT6SSG.mjs → react-context-R3SG55F5.mjs} +2 -2
  18. package/dist/lib/browser/{react-surface-XXONPG5T.mjs → react-surface-XGOUHVIH.mjs} +23 -7
  19. package/dist/lib/browser/react-surface-XGOUHVIH.mjs.map +7 -0
  20. package/dist/lib/browser/schema-J4MJIXRP.mjs +23 -0
  21. package/dist/lib/browser/schema-J4MJIXRP.mjs.map +7 -0
  22. package/dist/lib/browser/types.mjs +1 -1
  23. package/dist/lib/node/{app-graph-builder-JCND3P6G.cjs → app-graph-builder-RW7ESEX3.cjs} +6 -6
  24. package/dist/lib/node/chunk-7LVBFGKQ.cjs +299 -0
  25. package/dist/lib/node/chunk-7LVBFGKQ.cjs.map +7 -0
  26. package/dist/lib/node/{chunk-NVYWMDF3.cjs → chunk-TREVKZCJ.cjs} +17 -5
  27. package/dist/lib/node/chunk-TREVKZCJ.cjs.map +7 -0
  28. package/dist/lib/node/{chunk-3OB25QN2.cjs → chunk-UHIGZJQL.cjs} +4 -5
  29. package/dist/lib/node/{chunk-3OB25QN2.cjs.map → chunk-UHIGZJQL.cjs.map} +3 -3
  30. package/dist/lib/node/{chunk-IXVWJCYB.cjs → chunk-XPC4JOPP.cjs} +5 -5
  31. package/dist/lib/node/{chunk-IXVWJCYB.cjs.map → chunk-XPC4JOPP.cjs.map} +2 -2
  32. package/dist/lib/node/{client-52L4TUYU.cjs → client-2RQATBB6.cjs} +9 -18
  33. package/dist/lib/node/client-2RQATBB6.cjs.map +7 -0
  34. package/dist/lib/node/index.cjs +30 -17
  35. package/dist/lib/node/index.cjs.map +3 -3
  36. package/dist/lib/node/intent-resolver-DKQHARC2.cjs +275 -0
  37. package/dist/lib/node/intent-resolver-DKQHARC2.cjs.map +7 -0
  38. package/dist/lib/node/meta.json +1 -1
  39. package/dist/lib/node/{react-context-B2DNULH4.cjs → react-context-TD6VGBVA.cjs} +6 -6
  40. package/dist/lib/node/{react-surface-7USN5NOO.cjs → react-surface-IY7GXEGU.cjs} +28 -16
  41. package/dist/lib/node/react-surface-IY7GXEGU.cjs.map +7 -0
  42. package/dist/lib/node/schema-JXJS75HQ.cjs +39 -0
  43. package/dist/lib/node/schema-JXJS75HQ.cjs.map +7 -0
  44. package/dist/lib/node/types.cjs +2 -2
  45. package/dist/lib/node/types.cjs.map +1 -1
  46. package/dist/lib/node-esm/{app-graph-builder-ZLGKFBLY.mjs → app-graph-builder-TDYRWNI7.mjs} +2 -2
  47. package/dist/lib/node-esm/chunk-CRF22MJJ.mjs +272 -0
  48. package/dist/lib/node-esm/chunk-CRF22MJJ.mjs.map +7 -0
  49. package/dist/lib/node-esm/{chunk-74T33KTB.mjs → chunk-QJMF2MWP.mjs} +14 -2
  50. package/dist/lib/node-esm/chunk-QJMF2MWP.mjs.map +7 -0
  51. package/dist/lib/node-esm/{chunk-73M5MK5Q.mjs → chunk-QR72BXJK.mjs} +2 -2
  52. package/dist/lib/node-esm/{chunk-73M5MK5Q.mjs.map → chunk-QR72BXJK.mjs.map} +2 -2
  53. package/dist/lib/node-esm/{chunk-OBGRL3DF.mjs → chunk-T35SFKK3.mjs} +1 -2
  54. package/dist/lib/node-esm/{chunk-OBGRL3DF.mjs.map → chunk-T35SFKK3.mjs.map} +3 -3
  55. package/dist/lib/node-esm/{client-K52NWOUN.mjs → client-36DKBSB7.mjs} +4 -13
  56. package/dist/lib/node-esm/client-36DKBSB7.mjs.map +7 -0
  57. package/dist/lib/node-esm/index.mjs +28 -15
  58. package/dist/lib/node-esm/index.mjs.map +3 -3
  59. package/dist/lib/node-esm/intent-resolver-HFYRSXUG.mjs +268 -0
  60. package/dist/lib/node-esm/intent-resolver-HFYRSXUG.mjs.map +7 -0
  61. package/dist/lib/node-esm/meta.json +1 -1
  62. package/dist/lib/node-esm/{react-context-IGEHJQK5.mjs → react-context-ZOGDOWJ2.mjs} +2 -2
  63. package/dist/lib/node-esm/{react-surface-CXLBCMPN.mjs → react-surface-F3PDFJMV.mjs} +23 -7
  64. package/dist/lib/node-esm/react-surface-F3PDFJMV.mjs.map +7 -0
  65. package/dist/lib/node-esm/schema-XM4HBLIX.mjs +24 -0
  66. package/dist/lib/node-esm/schema-XM4HBLIX.mjs.map +7 -0
  67. package/dist/lib/node-esm/types.mjs +1 -1
  68. package/dist/types/src/ClientPlugin.d.ts.map +1 -1
  69. package/dist/types/src/capabilities/app-graph-builder.d.ts +110 -110
  70. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  71. package/dist/types/src/capabilities/capabilities.d.ts +0 -1
  72. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  73. package/dist/types/src/capabilities/client.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/index.d.ts +119 -117
  75. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  76. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -1
  77. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  78. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  79. package/dist/types/src/capabilities/schema.d.ts +4 -0
  80. package/dist/types/src/capabilities/schema.d.ts.map +1 -0
  81. package/dist/types/src/components/IdentityDialog.d.ts +1 -2
  82. package/dist/types/src/components/IdentityDialog.d.ts.map +1 -1
  83. package/dist/types/src/components/JoinDialog.d.ts +1 -2
  84. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  85. package/dist/types/src/components/ManageCredentialsDialog.d.ts +3 -0
  86. package/dist/types/src/components/ManageCredentialsDialog.d.ts.map +1 -0
  87. package/dist/types/src/components/ManageCredentialsDialog.stories.d.ts +8 -0
  88. package/dist/types/src/components/ManageCredentialsDialog.stories.d.ts.map +1 -0
  89. package/dist/types/src/components/RecoveryCodeDialog.d.ts +1 -2
  90. package/dist/types/src/components/RecoveryCodeDialog.d.ts.map +1 -1
  91. package/dist/types/src/components/RecoverySetupDialog.d.ts +3 -0
  92. package/dist/types/src/components/RecoverySetupDialog.d.ts.map +1 -0
  93. package/dist/types/src/components/RecoverySetupDialog.stories.d.ts +8 -0
  94. package/dist/types/src/components/RecoverySetupDialog.stories.d.ts.map +1 -0
  95. package/dist/types/src/components/index.d.ts +1 -0
  96. package/dist/types/src/components/index.d.ts.map +1 -1
  97. package/dist/types/src/events.d.ts +1 -1
  98. package/dist/types/src/translations.d.ts +7 -0
  99. package/dist/types/src/translations.d.ts.map +1 -1
  100. package/dist/types/src/types.d.ts +17 -1
  101. package/dist/types/src/types.d.ts.map +1 -1
  102. package/package.json +23 -17
  103. package/src/ClientPlugin.ts +11 -6
  104. package/src/capabilities/capabilities.ts +0 -1
  105. package/src/capabilities/client.ts +1 -9
  106. package/src/capabilities/index.ts +1 -0
  107. package/src/capabilities/intent-resolver.ts +171 -67
  108. package/src/capabilities/react-surface.tsx +21 -6
  109. package/src/capabilities/schema.ts +26 -0
  110. package/src/components/IdentityDialog.tsx +15 -3
  111. package/src/components/JoinDialog.tsx +1 -1
  112. package/src/components/ManageCredentialsDialog.stories.tsx +57 -0
  113. package/src/components/ManageCredentialsDialog.tsx +64 -0
  114. package/src/components/RecoveryCodeDialog.stories.tsx +5 -5
  115. package/src/components/RecoveryCodeDialog.tsx +2 -1
  116. package/src/components/RecoverySetupDialog.stories.tsx +77 -0
  117. package/src/components/RecoverySetupDialog.tsx +52 -0
  118. package/src/components/index.ts +1 -0
  119. package/src/events.ts +1 -1
  120. package/src/translations.ts +10 -1
  121. package/src/types.ts +11 -1
  122. package/dist/lib/browser/chunk-6IF6PREG.mjs +0 -158
  123. package/dist/lib/browser/chunk-6IF6PREG.mjs.map +0 -7
  124. package/dist/lib/browser/chunk-E3OUNOEL.mjs.map +0 -7
  125. package/dist/lib/browser/client-25GYH6TN.mjs.map +0 -7
  126. package/dist/lib/browser/intent-resolver-IWWLWOZD.mjs +0 -132
  127. package/dist/lib/browser/intent-resolver-IWWLWOZD.mjs.map +0 -7
  128. package/dist/lib/browser/react-surface-XXONPG5T.mjs.map +0 -7
  129. package/dist/lib/node/chunk-N3U7KVO3.cjs +0 -186
  130. package/dist/lib/node/chunk-N3U7KVO3.cjs.map +0 -7
  131. package/dist/lib/node/chunk-NVYWMDF3.cjs.map +0 -7
  132. package/dist/lib/node/client-52L4TUYU.cjs.map +0 -7
  133. package/dist/lib/node/intent-resolver-H3Y64MIP.cjs +0 -140
  134. package/dist/lib/node/intent-resolver-H3Y64MIP.cjs.map +0 -7
  135. package/dist/lib/node/react-surface-7USN5NOO.cjs.map +0 -7
  136. package/dist/lib/node-esm/chunk-74T33KTB.mjs.map +0 -7
  137. package/dist/lib/node-esm/chunk-EHGD3UJH.mjs +0 -159
  138. package/dist/lib/node-esm/chunk-EHGD3UJH.mjs.map +0 -7
  139. package/dist/lib/node-esm/client-K52NWOUN.mjs.map +0 -7
  140. package/dist/lib/node-esm/intent-resolver-JCKD6R6L.mjs +0 -133
  141. package/dist/lib/node-esm/intent-resolver-JCKD6R6L.mjs.map +0 -7
  142. package/dist/lib/node-esm/react-surface-CXLBCMPN.mjs.map +0 -7
  143. /package/dist/lib/browser/{app-graph-builder-6LOTDB4T.mjs.map → app-graph-builder-ON64R7SO.mjs.map} +0 -0
  144. /package/dist/lib/browser/{react-context-M3RT6SSG.mjs.map → react-context-R3SG55F5.mjs.map} +0 -0
  145. /package/dist/lib/node/{app-graph-builder-JCND3P6G.cjs.map → app-graph-builder-RW7ESEX3.cjs.map} +0 -0
  146. /package/dist/lib/node/{react-context-B2DNULH4.cjs.map → react-context-TD6VGBVA.cjs.map} +0 -0
  147. /package/dist/lib/node-esm/{app-graph-builder-ZLGKFBLY.mjs.map → app-graph-builder-TDYRWNI7.mjs.map} +0 -0
  148. /package/dist/lib/node-esm/{react-context-IGEHJQK5.mjs.map → react-context-ZOGDOWJ2.mjs.map} +0 -0
@@ -29,28 +29,36 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  var node_exports = {};
30
30
  __export(node_exports, {
31
31
  CLIENT_PLUGIN: () => import_chunk_OIFPM5ZW.CLIENT_PLUGIN,
32
- ClientCapabilities: () => import_chunk_3OB25QN2.ClientCapabilities,
33
- ClientEvents: () => import_chunk_IXVWJCYB.ClientEvents,
32
+ ClientCapabilities: () => import_chunk_UHIGZJQL.ClientCapabilities,
33
+ ClientEvents: () => import_chunk_XPC4JOPP.ClientEvents,
34
34
  ClientPlugin: () => ClientPlugin,
35
35
  meta: () => import_chunk_OIFPM5ZW.meta
36
36
  });
37
37
  module.exports = __toCommonJS(node_exports);
38
- var import_chunk_IXVWJCYB = require("./chunk-IXVWJCYB.cjs");
39
- var import_chunk_3OB25QN2 = require("./chunk-3OB25QN2.cjs");
38
+ var import_chunk_XPC4JOPP = require("./chunk-XPC4JOPP.cjs");
39
+ var import_chunk_UHIGZJQL = require("./chunk-UHIGZJQL.cjs");
40
40
  var import_chunk_OIFPM5ZW = require("./chunk-OIFPM5ZW.cjs");
41
41
  var import_app_framework = require("@dxos/app-framework");
42
42
  var import_app_framework2 = require("@dxos/app-framework");
43
- var AppGraphBuilder = (0, import_app_framework2.lazy)(async () => import("./app-graph-builder-JCND3P6G.cjs"));
44
- var Client = (0, import_app_framework2.lazy)(async () => import("./client-52L4TUYU.cjs"));
45
- var IntentResolver = (0, import_app_framework2.lazy)(async () => import("./intent-resolver-H3Y64MIP.cjs"));
46
- var ReactContext = (0, import_app_framework2.lazy)(async () => import("./react-context-B2DNULH4.cjs"));
47
- var ReactSurface = (0, import_app_framework2.lazy)(async () => import("./react-surface-7USN5NOO.cjs"));
43
+ var AppGraphBuilder = (0, import_app_framework2.lazy)(async () => import("./app-graph-builder-RW7ESEX3.cjs"));
44
+ var Client = (0, import_app_framework2.lazy)(async () => import("./client-2RQATBB6.cjs"));
45
+ var IntentResolver = (0, import_app_framework2.lazy)(async () => import("./intent-resolver-DKQHARC2.cjs"));
46
+ var ReactContext = (0, import_app_framework2.lazy)(async () => import("./react-context-TD6VGBVA.cjs"));
47
+ var ReactSurface = (0, import_app_framework2.lazy)(async () => import("./react-surface-IY7GXEGU.cjs"));
48
+ var Schema = (0, import_app_framework2.lazy)(async () => import("./schema-JXJS75HQ.cjs"));
48
49
  var translations_default = [
49
50
  {
50
51
  "en-US": {
51
52
  [import_chunk_OIFPM5ZW.CLIENT_PLUGIN]: {
52
53
  "open shell label": "Open HALO",
53
- "recovery code dialog title": "Account Recovery",
54
+ "manage credentials dialog title": "Manage Account Recovery",
55
+ "recovery setup dialog title": "Account Recovery",
56
+ "recovery setup dialog description": "In order to recover your account you need to register a recovery credential. Passkeys are the recommended way to do this, they can be stored in your browser or in a password manager.",
57
+ "create passkey label": "Create Passkey",
58
+ "create passkey description": "A passkey is a secure and easy to use credential that can be used to recover your account.",
59
+ "create recovery code label": "Create Recovery Code",
60
+ "create recovery code description": "A recovery code is 12 word phrase representing a private key.",
61
+ "recovery code dialog title": "Recovery Code",
54
62
  "recovery code dialog description": "This is your identity recovery code, store it in a safe place. You can use it to recover your identity if you ever lose access to your devices.",
55
63
  "recovery code dialog warning 1": "NOTE: This code will not be displayed again.",
56
64
  "recovery code dialog warning 2": "It is your private key for recovering DXOS data. Anyone with this key will be able to gain access to your account.",
@@ -69,18 +77,23 @@ var ClientPlugin = ({ invitationUrl = window.location.origin, invitationParam =
69
77
  return (0, import_app_framework.definePlugin)(import_chunk_OIFPM5ZW.meta, [
70
78
  (0, import_app_framework.defineModule)({
71
79
  id: `${import_chunk_OIFPM5ZW.meta.id}/module/client`,
72
- activatesOn: import_app_framework.Events.Startup,
73
- activatesBefore: [
74
- import_chunk_IXVWJCYB.ClientEvents.SetupClient
75
- ],
80
+ activatesOn: (0, import_app_framework.oneOf)(import_app_framework.Events.Startup, import_app_framework.Events.SetupAppGraph),
76
81
  activatesAfter: [
77
- import_chunk_IXVWJCYB.ClientEvents.ClientReady
82
+ import_chunk_XPC4JOPP.ClientEvents.ClientReady
78
83
  ],
79
84
  activate: (context) => Client({
80
85
  ...options,
81
86
  context
82
87
  })
83
88
  }),
89
+ (0, import_app_framework.defineModule)({
90
+ id: `${import_chunk_OIFPM5ZW.meta.id}/module/schema`,
91
+ activatesOn: import_chunk_XPC4JOPP.ClientEvents.ClientReady,
92
+ activatesBefore: [
93
+ import_chunk_XPC4JOPP.ClientEvents.SetupSchema
94
+ ],
95
+ activate: Schema
96
+ }),
84
97
  (0, import_app_framework.defineModule)({
85
98
  id: `${import_chunk_OIFPM5ZW.meta.id}/module/react-context`,
86
99
  activatesOn: import_app_framework.Events.Startup,
@@ -88,7 +101,7 @@ var ClientPlugin = ({ invitationUrl = window.location.origin, invitationParam =
88
101
  }),
89
102
  (0, import_app_framework.defineModule)({
90
103
  id: `${import_chunk_OIFPM5ZW.meta.id}/module/react-surface`,
91
- activatesOn: import_app_framework.Events.Startup,
104
+ activatesOn: import_app_framework.Events.SetupReactSurface,
92
105
  activate: () => ReactSurface({
93
106
  createInvitationUrl
94
107
  })
@@ -100,7 +113,7 @@ var ClientPlugin = ({ invitationUrl = window.location.origin, invitationParam =
100
113
  }),
101
114
  (0, import_app_framework.defineModule)({
102
115
  id: `${import_chunk_OIFPM5ZW.meta.id}/module/intent-resolver`,
103
- activatesOn: import_app_framework.Events.SetupIntents,
116
+ activatesOn: import_app_framework.Events.SetupIntentResolver,
104
117
  activate: (context) => IntentResolver({
105
118
  context,
106
119
  onReset
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/ClientPlugin.ts", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, defineModule, definePlugin, Events } from '@dxos/app-framework';\n\nimport { Client, AppGraphBuilder, IntentResolver, ReactContext, ReactSurface } from './capabilities';\nimport { ClientEvents } from './events';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { type ClientPluginOptions } from './types';\n\nexport const ClientPlugin = ({\n invitationUrl = window.location.origin,\n invitationParam = 'deviceInvitationCode',\n onReset,\n ...options\n}: ClientPluginOptions) => {\n const createInvitationUrl = (invitationCode: string) => {\n const baseUrl = new URL(invitationUrl);\n baseUrl.searchParams.set(invitationParam, invitationCode);\n return baseUrl.toString();\n };\n\n return definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/client`,\n activatesOn: Events.Startup,\n activatesBefore: [ClientEvents.SetupClient],\n activatesAfter: [ClientEvents.ClientReady],\n activate: (context) => Client({ ...options, context }),\n }),\n defineModule({\n id: `${meta.id}/module/react-context`,\n activatesOn: Events.Startup,\n activate: ReactContext,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.Startup,\n activate: () => ReactSurface({ createInvitationUrl }),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: (context) => IntentResolver({ context, onReset }),\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n ]);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = lazy(async () => import('./app-graph-builder'));\nexport const Client = lazy(async () => import('./client'));\nexport const IntentResolver = lazy(async () => import('./intent-resolver'));\nexport const ReactContext = lazy(async () => import('./react-context'));\nexport const ReactSurface = lazy(async () => import('./react-surface'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CLIENT_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [CLIENT_PLUGIN]: {\n 'open shell label': 'Open HALO',\n 'recovery code dialog title': 'Account Recovery',\n 'recovery code dialog description':\n 'This is your identity recovery code, store it in a safe place. You can use it to recover your identity if you ever lose access to your devices.',\n 'recovery code dialog warning 1': 'NOTE: This code will not be displayed again.',\n 'recovery code dialog warning 2':\n 'It is your private key for recovering DXOS data. Anyone with this key will be able to gain access to your account.',\n 'recovery code confirmation label': 'Please confirm you have saved the code.',\n 'continue label': 'Continue',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA8E;ACA9E,IAAAA,wBAAqB;AAEd,IAAMC,sBAAkBC,4BAAK,YAAY,OAAO,kCAAA,CAAA;AAChD,IAAMC,aAASD,4BAAK,YAAY,OAAO,uBAAA,CAAA;AACvC,IAAME,qBAAiBF,4BAAK,YAAY,OAAO,gCAAA,CAAA;AAC/C,IAAMG,mBAAeH,4BAAK,YAAY,OAAO,8BAAA,CAAA;AAC7C,IAAMI,mBAAeJ,4BAAK,YAAY,OAAO,8BAAA,CAAA;ACJpD,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACK,mCAAAA,GAAgB;QACf,oBAAoB;QACpB,8BAA8B;QAC9B,oCACE;QACF,kCAAkC;QAClC,kCACE;QACF,oCAAoC;QACpC,kBAAkB;MACpB;IACF;EACF;;AFTK,IAAMC,eAAe,CAAC,EAC3BC,gBAAgBC,OAAOC,SAASC,QAChCC,kBAAkB,wBAClBC,SACA,GAAGC,QAAAA,MACiB;AACpB,QAAMC,sBAAsB,CAACC,mBAAAA;AAC3B,UAAMC,UAAU,IAAIC,IAAIV,aAAAA;AACxBS,YAAQE,aAAaC,IAAIR,iBAAiBI,cAAAA;AAC1C,WAAOC,QAAQI,SAAQ;EACzB;AAEA,aAAOC,mCAAaC,4BAAM;QACxBC,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOC;MACpBC,iBAAiB;QAACC,mCAAaC;;MAC/BC,gBAAgB;QAACF,mCAAaG;;MAC9BC,UAAU,CAACC,YAAYjC,OAAO;QAAE,GAAGY;QAASqB;MAAQ,CAAA;IACtD,CAAA;QACAX,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOC;MACpBM,UAAU9B;IACZ,CAAA;QACAoB,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOC;MACpBM,UAAU,MAAM7B,aAAa;QAAEU;MAAoB,CAAA;IACrD,CAAA;QACAS,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOS;MACpBF,UAAUlC;IACZ,CAAA;QACAwB,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOU;MACpBH,UAAU,CAACC,YAAYhC,eAAe;QAAEgC;QAAStB;MAAQ,CAAA;IAC3D,CAAA;QACAW,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaC,4BAAOW;MACpBJ,UAAU,UAAMK,kCAAYC,kCAAaC,cAAcC,oBAAAA;IACzD,CAAA;GACD;AACH;",
6
- "names": ["import_app_framework", "AppGraphBuilder", "lazy", "Client", "IntentResolver", "ReactContext", "ReactSurface", "CLIENT_PLUGIN", "ClientPlugin", "invitationUrl", "window", "location", "origin", "invitationParam", "onReset", "options", "createInvitationUrl", "invitationCode", "baseUrl", "URL", "searchParams", "set", "toString", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "Startup", "activatesBefore", "ClientEvents", "SetupClient", "activatesAfter", "ClientReady", "activate", "context", "SetupAppGraph", "SetupIntents", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, defineModule, definePlugin, Events, oneOf } from '@dxos/app-framework';\n\nimport { Client, AppGraphBuilder, IntentResolver, ReactContext, ReactSurface, Schema } from './capabilities';\nimport { ClientEvents } from './events';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { type ClientPluginOptions } from './types';\n\nexport const ClientPlugin = ({\n invitationUrl = window.location.origin,\n invitationParam = 'deviceInvitationCode',\n onReset,\n ...options\n}: ClientPluginOptions) => {\n const createInvitationUrl = (invitationCode: string) => {\n const baseUrl = new URL(invitationUrl);\n baseUrl.searchParams.set(invitationParam, invitationCode);\n return baseUrl.toString();\n };\n\n return definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/client`,\n activatesOn: oneOf(Events.Startup, Events.SetupAppGraph),\n activatesAfter: [ClientEvents.ClientReady],\n activate: (context) => Client({ ...options, context }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.ClientReady,\n activatesBefore: [ClientEvents.SetupSchema],\n activate: Schema,\n }),\n defineModule({\n id: `${meta.id}/module/react-context`,\n activatesOn: Events.Startup,\n activate: ReactContext,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: () => ReactSurface({ createInvitationUrl }),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: (context) => IntentResolver({ context, onReset }),\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n ]);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = lazy(async () => import('./app-graph-builder'));\nexport const Client = lazy(async () => import('./client'));\nexport const IntentResolver = lazy(async () => import('./intent-resolver'));\nexport const ReactContext = lazy(async () => import('./react-context'));\nexport const ReactSurface = lazy(async () => import('./react-surface'));\nexport const Schema = lazy(async () => import('./schema'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CLIENT_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [CLIENT_PLUGIN]: {\n 'open shell label': 'Open HALO',\n 'manage credentials dialog title': 'Manage Account Recovery',\n 'recovery setup dialog title': 'Account Recovery',\n 'recovery setup dialog description':\n 'In order to recover your account you need to register a recovery credential. Passkeys are the recommended way to do this, they can be stored in your browser or in a password manager.',\n 'create passkey label': 'Create Passkey',\n 'create passkey description':\n 'A passkey is a secure and easy to use credential that can be used to recover your account.',\n 'create recovery code label': 'Create Recovery Code',\n 'create recovery code description': 'A recovery code is 12 word phrase representing a private key.',\n 'recovery code dialog title': 'Recovery Code',\n 'recovery code dialog description':\n 'This is your identity recovery code, store it in a safe place. You can use it to recover your identity if you ever lose access to your devices.',\n 'recovery code dialog warning 1': 'NOTE: This code will not be displayed again.',\n 'recovery code dialog warning 2':\n 'It is your private key for recovering DXOS data. Anyone with this key will be able to gain access to your account.',\n 'recovery code confirmation label': 'Please confirm you have saved the code.',\n 'continue label': 'Continue',\n },\n },\n },\n];\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAAqF;ACArF,IAAAA,wBAAqB;AAEd,IAAMC,sBAAkBC,4BAAK,YAAY,OAAO,kCAAA,CAAA;AAChD,IAAMC,aAASD,4BAAK,YAAY,OAAO,uBAAA,CAAA;AACvC,IAAME,qBAAiBF,4BAAK,YAAY,OAAO,gCAAA,CAAA;AAC/C,IAAMG,mBAAeH,4BAAK,YAAY,OAAO,8BAAA,CAAA;AAC7C,IAAMI,mBAAeJ,4BAAK,YAAY,OAAO,8BAAA,CAAA;AAC7C,IAAMK,aAASL,4BAAK,YAAY,OAAO,uBAAA,CAAA;ACL9C,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACM,mCAAAA,GAAgB;QACf,oBAAoB;QACpB,mCAAmC;QACnC,+BAA+B;QAC/B,qCACE;QACF,wBAAwB;QACxB,8BACE;QACF,8BAA8B;QAC9B,oCAAoC;QACpC,8BAA8B;QAC9B,oCACE;QACF,kCAAkC;QAClC,kCACE;QACF,oCAAoC;QACpC,kBAAkB;MACpB;IACF;EACF;;AFlBK,IAAMC,eAAe,CAAC,EAC3BC,gBAAgBC,OAAOC,SAASC,QAChCC,kBAAkB,wBAClBC,SACA,GAAGC,QAAAA,MACiB;AACpB,QAAMC,sBAAsB,CAACC,mBAAAA;AAC3B,UAAMC,UAAU,IAAIC,IAAIV,aAAAA;AACxBS,YAAQE,aAAaC,IAAIR,iBAAiBI,cAAAA;AAC1C,WAAOC,QAAQI,SAAQ;EACzB;AAEA,aAAOC,mCAAaC,4BAAM;QACxBC,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,iBAAaC,4BAAMC,4BAAOC,SAASD,4BAAOE,aAAa;MACvDC,gBAAgB;QAACC,mCAAaC;;MAC9BC,UAAU,CAACC,YAAYlC,OAAO;QAAE,GAAGa;QAASqB;MAAQ,CAAA;IACtD,CAAA;QACAX,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaM,mCAAaC;MAC1BG,iBAAiB;QAACJ,mCAAaK;;MAC/BH,UAAU7B;IACZ,CAAA;QACAmB,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaE,4BAAOC;MACpBK,UAAU/B;IACZ,CAAA;QACAqB,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaE,4BAAOU;MACpBJ,UAAU,MAAM9B,aAAa;QAAEW;MAAoB,CAAA;IACrD,CAAA;QACAS,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaE,4BAAOE;MACpBI,UAAUnC;IACZ,CAAA;QACAyB,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaE,4BAAOW;MACpBL,UAAU,CAACC,YAAYjC,eAAe;QAAEiC;QAAStB;MAAQ,CAAA;IAC3D,CAAA;QACAW,mCAAa;MACXC,IAAI,GAAGF,2BAAKE,EAAE;MACdC,aAAaE,4BAAOY;MACpBN,UAAU,UAAMO,kCAAYC,kCAAaC,cAAcC,oBAAAA;IACzD,CAAA;GACD;AACH;",
6
+ "names": ["import_app_framework", "AppGraphBuilder", "lazy", "Client", "IntentResolver", "ReactContext", "ReactSurface", "Schema", "CLIENT_PLUGIN", "ClientPlugin", "invitationUrl", "window", "location", "origin", "invitationParam", "onReset", "options", "createInvitationUrl", "invitationCode", "baseUrl", "URL", "searchParams", "set", "toString", "definePlugin", "meta", "defineModule", "id", "activatesOn", "oneOf", "Events", "Startup", "SetupAppGraph", "activatesAfter", "ClientEvents", "ClientReady", "activate", "context", "activatesBefore", "SetupSchema", "SetupReactSurface", "SetupIntentResolver", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations"]
7
7
  }
@@ -0,0 +1,275 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var intent_resolver_DKQHARC2_exports = {};
20
+ __export(intent_resolver_DKQHARC2_exports, {
21
+ default: () => intent_resolver_default
22
+ });
23
+ module.exports = __toCommonJS(intent_resolver_DKQHARC2_exports);
24
+ var import_chunk_XPC4JOPP = require("./chunk-XPC4JOPP.cjs");
25
+ var import_chunk_7LVBFGKQ = require("./chunk-7LVBFGKQ.cjs");
26
+ var import_chunk_TREVKZCJ = require("./chunk-TREVKZCJ.cjs");
27
+ var import_chunk_UHIGZJQL = require("./chunk-UHIGZJQL.cjs");
28
+ var import_chunk_OIFPM5ZW = require("./chunk-OIFPM5ZW.cjs");
29
+ var import_app_framework = require("@dxos/app-framework");
30
+ var import_invariant = require("@dxos/invariant");
31
+ var import_types = require("@dxos/plugin-observability/types");
32
+ var import_react_client = require("@dxos/react-client");
33
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-client/src/capabilities/intent-resolver.ts";
34
+ var intent_resolver_default = ({ context, appName = "Composer", onReset }) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, [
35
+ (0, import_app_framework.createResolver)({
36
+ intent: import_chunk_TREVKZCJ.ClientAction.CreateIdentity,
37
+ resolve: async () => {
38
+ const manager = context.requestCapability(import_app_framework.Capabilities.PluginManager);
39
+ const client = context.requestCapability(import_chunk_UHIGZJQL.ClientCapabilities.Client);
40
+ const data = await client.halo.createIdentity();
41
+ await manager.activate(import_chunk_XPC4JOPP.ClientEvents.IdentityCreated);
42
+ return {
43
+ data,
44
+ intents: [
45
+ (0, import_app_framework.createIntent)(import_types.ObservabilityAction.SendEvent, {
46
+ name: "identity.create"
47
+ })
48
+ ]
49
+ };
50
+ }
51
+ }),
52
+ (0, import_app_framework.createResolver)({
53
+ intent: import_chunk_TREVKZCJ.ClientAction.JoinIdentity,
54
+ resolve: async (data) => {
55
+ return {
56
+ intents: [
57
+ (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
58
+ part: "dialog",
59
+ subject: import_chunk_7LVBFGKQ.JOIN_DIALOG,
60
+ options: {
61
+ blockAlign: "start",
62
+ props: {
63
+ initialInvitationCode: data.invitationCode,
64
+ initialDisposition: "accept-halo-invitation"
65
+ }
66
+ }
67
+ })
68
+ ]
69
+ };
70
+ }
71
+ }),
72
+ (0, import_app_framework.createResolver)({
73
+ intent: import_chunk_TREVKZCJ.ClientAction.ShareIdentity,
74
+ resolve: async () => {
75
+ return {
76
+ intents: [
77
+ (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
78
+ part: "dialog",
79
+ subject: import_chunk_7LVBFGKQ.IDENTITY_DIALOG,
80
+ options: {
81
+ blockAlign: "start"
82
+ }
83
+ }),
84
+ (0, import_app_framework.createIntent)(import_types.ObservabilityAction.SendEvent, {
85
+ name: "identity.share"
86
+ })
87
+ ]
88
+ };
89
+ }
90
+ }),
91
+ (0, import_app_framework.createResolver)({
92
+ intent: import_chunk_TREVKZCJ.ClientAction.RecoverIdentity,
93
+ resolve: async () => {
94
+ return {
95
+ intents: [
96
+ (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
97
+ part: "dialog",
98
+ subject: import_chunk_7LVBFGKQ.JOIN_DIALOG,
99
+ options: {
100
+ blockAlign: "start",
101
+ props: {
102
+ initialDisposition: "recover-identity"
103
+ }
104
+ }
105
+ })
106
+ ]
107
+ };
108
+ }
109
+ }),
110
+ (0, import_app_framework.createResolver)({
111
+ intent: import_chunk_TREVKZCJ.ClientAction.ResetStorage,
112
+ resolve: async (data) => {
113
+ await onReset?.({
114
+ target: data.target
115
+ });
116
+ }
117
+ }),
118
+ (0, import_app_framework.createResolver)({
119
+ intent: import_chunk_TREVKZCJ.ClientAction.CreateAgent,
120
+ resolve: async () => {
121
+ const client = context.requestCapability(import_chunk_UHIGZJQL.ClientCapabilities.Client);
122
+ (0, import_invariant.invariant)(client.services.services.EdgeAgentService, "Missing EdgeAgentService", {
123
+ F: __dxlog_file,
124
+ L: 106,
125
+ S: void 0,
126
+ A: [
127
+ "client.services.services.EdgeAgentService",
128
+ "'Missing EdgeAgentService'"
129
+ ]
130
+ });
131
+ await client.services.services.EdgeAgentService.createAgent(null, {
132
+ timeout: 1e4
133
+ });
134
+ }
135
+ }),
136
+ (0, import_app_framework.createResolver)({
137
+ intent: import_chunk_TREVKZCJ.ClientAction.CreateRecoveryCode,
138
+ resolve: async () => {
139
+ const client = context.requestCapability(import_chunk_UHIGZJQL.ClientCapabilities.Client);
140
+ (0, import_invariant.invariant)(client.services.services.IdentityService, "IdentityService not available", {
141
+ F: __dxlog_file,
142
+ L: 114,
143
+ S: void 0,
144
+ A: [
145
+ "client.services.services.IdentityService",
146
+ "'IdentityService not available'"
147
+ ]
148
+ });
149
+ const { recoveryCode } = await client.services.services.IdentityService.createRecoveryCredential({});
150
+ return {
151
+ intents: [
152
+ (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
153
+ part: "dialog",
154
+ subject: import_chunk_7LVBFGKQ.RECOVER_CODE_DIALOG,
155
+ options: {
156
+ blockAlign: "start",
157
+ type: "alert",
158
+ props: {
159
+ code: recoveryCode
160
+ }
161
+ }
162
+ })
163
+ ]
164
+ };
165
+ }
166
+ }),
167
+ (0, import_app_framework.createResolver)({
168
+ intent: import_chunk_TREVKZCJ.ClientAction.CreatePasskey,
169
+ resolve: async () => {
170
+ const client = context.requestCapability(import_chunk_UHIGZJQL.ClientCapabilities.Client);
171
+ const identity = client.halo.identity.get();
172
+ (0, import_invariant.invariant)(identity, "Identity not available", {
173
+ F: __dxlog_file,
174
+ L: 137,
175
+ S: void 0,
176
+ A: [
177
+ "identity",
178
+ "'Identity not available'"
179
+ ]
180
+ });
181
+ const lookupKey = import_react_client.PublicKey.random();
182
+ const credential = await navigator.credentials.create({
183
+ publicKey: {
184
+ challenge: new Uint8Array(),
185
+ rp: {
186
+ id: location.hostname,
187
+ name: appName
188
+ },
189
+ user: {
190
+ id: lookupKey.asUint8Array(),
191
+ name: identity.did,
192
+ displayName: identity.profile?.displayName ?? ""
193
+ },
194
+ pubKeyCredParams: [
195
+ {
196
+ type: "public-key",
197
+ alg: -8
198
+ },
199
+ {
200
+ type: "public-key",
201
+ alg: -7
202
+ }
203
+ ],
204
+ // https://web.dev/articles/webauthn-discoverable-credentials#resident-key
205
+ authenticatorSelection: {
206
+ residentKey: "required",
207
+ requireResidentKey: true
208
+ }
209
+ }
210
+ });
211
+ (0, import_invariant.invariant)(credential, "Credential not available", {
212
+ F: __dxlog_file,
213
+ L: 162,
214
+ S: void 0,
215
+ A: [
216
+ "credential",
217
+ "'Credential not available'"
218
+ ]
219
+ });
220
+ const recoveryKey = import_react_client.PublicKey.from(new Uint8Array(credential.response.getPublicKey()));
221
+ const algorithm = credential.response.getPublicKeyAlgorithm() === -7 ? "ES256" : "ED25519";
222
+ (0, import_invariant.invariant)(client.services.services.IdentityService, "IdentityService not available", {
223
+ F: __dxlog_file,
224
+ L: 167,
225
+ S: void 0,
226
+ A: [
227
+ "client.services.services.IdentityService",
228
+ "'IdentityService not available'"
229
+ ]
230
+ });
231
+ await client.services.services.IdentityService.createRecoveryCredential({
232
+ data: {
233
+ recoveryKey,
234
+ algorithm,
235
+ lookupKey
236
+ }
237
+ });
238
+ }
239
+ }),
240
+ (0, import_app_framework.createResolver)({
241
+ intent: import_chunk_TREVKZCJ.ClientAction.RedeemPasskey,
242
+ resolve: async () => {
243
+ const client = context.requestCapability(import_chunk_UHIGZJQL.ClientCapabilities.Client);
244
+ (0, import_invariant.invariant)(client.services.services.IdentityService, "IdentityService not available", {
245
+ F: __dxlog_file,
246
+ L: 182,
247
+ S: void 0,
248
+ A: [
249
+ "client.services.services.IdentityService",
250
+ "'IdentityService not available'"
251
+ ]
252
+ });
253
+ const { deviceKey, controlFeedKey, challenge } = await client.services.services.IdentityService.requestRecoveryChallenge();
254
+ const credential = await navigator.credentials.get({
255
+ publicKey: {
256
+ challenge: Buffer.from(challenge, "base64"),
257
+ rpId: location.hostname,
258
+ userVerification: "required"
259
+ }
260
+ });
261
+ const lookupKey = import_react_client.PublicKey.from(new Uint8Array(credential.response.userHandle));
262
+ await client.services.services.IdentityService.recoverIdentity({
263
+ external: {
264
+ lookupKey,
265
+ deviceKey,
266
+ controlFeedKey,
267
+ signature: Buffer.from(credential.response.signature),
268
+ clientDataJson: Buffer.from(credential.response.clientDataJSON),
269
+ authenticatorData: Buffer.from(credential.response.authenticatorData)
270
+ }
271
+ });
272
+ }
273
+ })
274
+ ]);
275
+ //# sourceMappingURL=intent-resolver-DKQHARC2.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n createResolver,\n LayoutAction,\n type PluginsContext,\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 { ClientCapabilities } from './capabilities';\nimport { IDENTITY_DIALOG, JOIN_DIALOG, RECOVER_CODE_DIALOG } from '../components';\nimport { ClientEvents } from '../events';\nimport { ClientAction, type ClientPluginOptions } from '../types';\n\ntype IntentResolverOptions = Pick<ClientPluginOptions, 'onReset'> & {\n context: PluginsContext;\n appName?: string;\n};\n\nexport default ({ context, appName = 'Composer', onReset }: IntentResolverOptions) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: ClientAction.CreateIdentity,\n resolve: async () => {\n const manager = context.requestCapability(Capabilities.PluginManager);\n const client = context.requestCapability(ClientCapabilities.Client);\n const data = await client.halo.createIdentity();\n await manager.activate(ClientEvents.IdentityCreated);\n return { data, intents: [createIntent(ObservabilityAction.SendEvent, { name: 'identity.create' })] };\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 createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: IDENTITY_DIALOG,\n options: {\n blockAlign: 'start',\n },\n }),\n createIntent(ObservabilityAction.SendEvent, { name: 'identity.share' }),\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 await onReset?.({ target: data.target });\n },\n }),\n createResolver({\n intent: ClientAction.CreateAgent,\n resolve: async () => {\n const client = context.requestCapability(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.requestCapability(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: RECOVER_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.requestCapability(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(),\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.requestCapability(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 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 },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAOO;AACP,uBAA0B;AAC1B,mBAAoC;AACpC,0BAA0B;;AAa1B,IAAA,0BAAe,CAAC,EAAEA,SAASC,UAAU,YAAYC,QAAO,UACtDC,kCAAYC,kCAAaC,gBAAgB;MACvCC,qCAAe;IACbC,QAAQC,mCAAaC;IACrBC,SAAS,YAAA;AACP,YAAMC,UAAUX,QAAQY,kBAAkBR,kCAAaS,aAAa;AACpE,YAAMC,SAASd,QAAQY,kBAAkBG,yCAAmBC,MAAM;AAClE,YAAMC,OAAO,MAAMH,OAAOI,KAAKC,eAAc;AAC7C,YAAMR,QAAQS,SAASC,mCAAaC,eAAe;AACnD,aAAO;QAAEL;QAAMM,SAAS;cAACC,mCAAaC,iCAAoBC,WAAW;YAAEC,MAAM;UAAkB,CAAA;;MAAI;IACrG;EACF,CAAA;MACArB,qCAAe;IACbC,QAAQC,mCAAaoB;IACrBlB,SAAS,OAAOO,SAAAA;AACd,aAAO;QACLM,SAAS;cACPC,mCAAaK,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASC;YACTC,SAAS;cACPC,YAAY;cACZC,OAAO;gBACLC,uBAAuBpB,KAAKqB;gBAC5BC,oBAAoB;cACtB;YACF;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;MACAjC,qCAAe;IACbC,QAAQC,mCAAagC;IACrB9B,SAAS,YAAA;AACP,aAAO;QACLa,SAAS;cACPC,mCAAaK,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASS;YACTP,SAAS;cACPC,YAAY;YACd;UACF,CAAA;cACAX,mCAAaC,iCAAoBC,WAAW;YAAEC,MAAM;UAAiB,CAAA;;MAEzE;IACF;EACF,CAAA;MACArB,qCAAe;IACbC,QAAQC,mCAAakC;IACrBhC,SAAS,YAAA;AACP,aAAO;QACLa,SAAS;cACPC,mCAAaK,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASC;YACTC,SAAS;cACPC,YAAY;cACZC,OAAO;gBACLG,oBAAoB;cACtB;YACF;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;MACAjC,qCAAe;IACbC,QAAQC,mCAAamC;IACrBjC,SAAS,OAAOO,SAAAA;AACd,YAAMf,UAAU;QAAE0C,QAAQ3B,KAAK2B;MAAO,CAAA;IACxC;EACF,CAAA;MACAtC,qCAAe;IACbC,QAAQC,mCAAaqC;IACrBnC,SAAS,YAAA;AACP,YAAMI,SAASd,QAAQY,kBAAkBG,yCAAmBC,MAAM;AAClE8B,sCAAUhC,OAAOiC,SAASA,SAASC,kBAAkB,4BAAA;;;;;;;;;AACrD,YAAMlC,OAAOiC,SAASA,SAASC,iBAAiBC,YAAY,MAAa;QAAEC,SAAS;MAAO,CAAA;IAC7F;EACF,CAAA;MACA5C,qCAAe;IACbC,QAAQC,mCAAa2C;IACrBzC,SAAS,YAAA;AACP,YAAMI,SAASd,QAAQY,kBAAkBG,yCAAmBC,MAAM;AAClE8B,sCAAUhC,OAAOiC,SAASA,SAASK,iBAAiB,iCAAA;;;;;;;;;AAEpD,YAAM,EAAEC,aAAY,IAAK,MAAMvC,OAAOiC,SAASA,SAASK,gBAAgBE,yBAAyB,CAAC,CAAA;AAClG,aAAO;QACL/B,SAAS;cACPC,mCAAaK,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASuB;YACTrB,SAAS;cACPC,YAAY;cACZqB,MAAM;cACNpB,OAAO;gBAAEqB,MAAMJ;cAAa;YAC9B;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;MACA/C,qCAAe;IACbC,QAAQC,mCAAakD;IACrBhD,SAAS,YAAA;AACP,YAAMI,SAASd,QAAQY,kBAAkBG,yCAAmBC,MAAM;AAClE,YAAM2C,WAAW7C,OAAOI,KAAKyC,SAASC,IAAG;AACzCd,sCAAUa,UAAU,0BAAA;;;;;;;;;AAGpB,YAAME,YAAYC,8BAAUC,OAAM;AAClC,YAAMC,aAAa,MAAMC,UAAUC,YAAYC,OAAO;QACpDC,WAAW;UACTC,WAAW,IAAIC,WAAAA;UACfC,IAAI;YAAEC,IAAIC,SAASC;YAAU/C,MAAM1B;UAAQ;UAC3C0E,MAAM;YACJH,IAAIX,UAAUe,aAAY;YAC1BjD,MAAMgC,SAASkB;YACfC,aAAanB,SAASoB,SAASD,eAAe;UAChD;UACAE,kBAAkB;YAChB;cAAExB,MAAM;cAAcyB,KAAK;YAAG;YAC9B;cAAEzB,MAAM;cAAcyB,KAAK;YAAG;;;UAGhCC,wBAAwB;YACtBC,aAAa;YACbC,oBAAoB;UACtB;QACF;MACF,CAAA;AAEAtC,sCAAUkB,YAAY,4BAAA;;;;;;;;;AACtB,YAAMqB,cAAcvB,8BAAUwB,KAAK,IAAIhB,WAAYN,WAAmBuB,SAASC,aAAY,CAAA,CAAA;AAC3F,YAAMC,YAAazB,WAAmBuB,SAASG,sBAAqB,MAAO,KAAK,UAAU;AAG1F5C,sCAAUhC,OAAOiC,SAASA,SAASK,iBAAiB,iCAAA;;;;;;;;;AACpD,YAAMtC,OAAOiC,SAASA,SAASK,gBAAgBE,yBAAyB;QACtErC,MAAM;UACJoE;UACAI;UACA5B;QACF;MACF,CAAA;IACF;EACF,CAAA;MACAvD,qCAAe;IACbC,QAAQC,mCAAamF;IACrBjF,SAAS,YAAA;AACP,YAAMI,SAASd,QAAQY,kBAAkBG,yCAAmBC,MAAM;AAElE8B,sCAAUhC,OAAOiC,SAASA,SAASK,iBAAiB,iCAAA;;;;;;;;;AACpD,YAAM,EAAEwC,WAAWC,gBAAgBxB,UAAS,IAC1C,MAAMvD,OAAOiC,SAASA,SAASK,gBAAgB0C,yBAAwB;AACzE,YAAM9B,aAAa,MAAMC,UAAUC,YAAYN,IAAI;QACjDQ,WAAW;UACTC,WAAW0B,OAAOT,KAAKjB,WAAW,QAAA;UAClC2B,MAAMvB,SAASC;UACfuB,kBAAkB;QACpB;MACF,CAAA;AACA,YAAMpC,YAAYC,8BAAUwB,KAAK,IAAIhB,WAAYN,WAAmBuB,SAASW,UAAU,CAAA;AACvF,YAAMpF,OAAOiC,SAASA,SAASK,gBAAgB+C,gBAAgB;QAC7DC,UAAU;UACRvC;UACA+B;UACAC;UACAQ,WAAWN,OAAOT,KAAMtB,WAAmBuB,SAASc,SAAS;UAC7DC,gBAAgBP,OAAOT,KAAMtB,WAAmBuB,SAASgB,cAAc;UACvEC,mBAAmBT,OAAOT,KAAMtB,WAAmBuB,SAASiB,iBAAiB;QAC/E;MACF,CAAA;IACF;EACF,CAAA;CACD;",
6
+ "names": ["context", "appName", "onReset", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ClientAction", "CreateIdentity", "resolve", "manager", "requestCapability", "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", "IDENTITY_DIALOG", "RecoverIdentity", "ResetStorage", "target", "CreateAgent", "invariant", "services", "EdgeAgentService", "createAgent", "timeout", "CreateRecoveryCode", "IdentityService", "recoveryCode", "createRecoveryCredential", "RECOVER_CODE_DIALOG", "type", "code", "CreatePasskey", "identity", "get", "lookupKey", "PublicKey", "random", "credential", "navigator", "credentials", "create", "publicKey", "challenge", "Uint8Array", "rp", "id", "location", "hostname", "user", "asUint8Array", "did", "displayName", "profile", "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"]
7
+ }
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytes":975,"imports":[],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytes":2096,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/types.ts":{"bytes":8847,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytes":5039,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/events.ts":{"bytes":2078,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytes":6283,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"}],"format":"esm"},"packages/plugins/plugin-client/src/components/IdentityDialog.tsx":{"bytes":6849,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytes":6207,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytes":8973,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/index.ts":{"bytes":739,"imports":[{"path":"packages/plugins/plugin-client/src/components/IdentityDialog.tsx","kind":"import-statement","original":"./IdentityDialog"},{"path":"packages/plugins/plugin-client/src/components/JoinDialog.tsx","kind":"import-statement","original":"./JoinDialog"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx","kind":"import-statement","original":"./RecoveryCodeDialog"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytes":14201,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytes":2461,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytes":4827,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytes":1968,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"packages/plugins/plugin-client/src/capabilities/client.ts","kind":"dynamic-import","original":"./client"},{"path":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","kind":"dynamic-import","original":"./react-context"},{"path":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-client/src/translations.ts":{"bytes":2699,"imports":[{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytes":7810,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-client/src/index.ts":{"bytes":944,"imports":[{"path":"packages/plugins/plugin-client/src/ClientPlugin.ts","kind":"import-statement","original":"./ClientPlugin"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-client/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5694},"packages/plugins/plugin-client/dist/lib/node/index.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-IXVWJCYB.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-JCND3P6G.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/client-52L4TUYU.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/intent-resolver-H3Y64MIP.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/react-context-B2DNULH4.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/react-surface-7USN5NOO.cjs","kind":"dynamic-import"}],"exports":["CLIENT_PLUGIN","ClientCapabilities","ClientEvents","ClientPlugin","meta"],"entryPoint":"packages/plugins/plugin-client/src/index.ts","inputs":{"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytesInOutput":1649},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytesInOutput":427},"packages/plugins/plugin-client/src/translations.ts":{"bytesInOutput":758},"packages/plugins/plugin-client/src/index.ts":{"bytesInOutput":0}},"bytes":3365},"packages/plugins/plugin-client/dist/lib/node/types.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-client/dist/lib/node/types.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"}],"exports":["ClientAction"],"entryPoint":"packages/plugins/plugin-client/src/types.ts","inputs":{},"bytes":148},"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-JCND3P6G.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2382},"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-JCND3P6G.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytesInOutput":1065}},"bytes":1356},"packages/plugins/plugin-client/dist/lib/node/client-52L4TUYU.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3400},"packages/plugins/plugin-client/dist/lib/node/client-52L4TUYU.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-IXVWJCYB.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/client.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytesInOutput":1222}},"bytes":1516},"packages/plugins/plugin-client/dist/lib/node/intent-resolver-H3Y64MIP.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6634},"packages/plugins/plugin-client/dist/lib/node/intent-resolver-H3Y64MIP.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-IXVWJCYB.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-N3U7KVO3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytesInOutput":3531}},"bytes":4003},"packages/plugins/plugin-client/dist/lib/node/chunk-IXVWJCYB.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":978},"packages/plugins/plugin-client/dist/lib/node/chunk-IXVWJCYB.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientEvents"],"inputs":{"packages/plugins/plugin-client/src/events.ts":{"bytesInOutput":473}},"bytes":650},"packages/plugins/plugin-client/dist/lib/node/react-context-B2DNULH4.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1225},"packages/plugins/plugin-client/dist/lib/node/react-context-B2DNULH4.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytesInOutput":452}},"bytes":738},"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1030},"packages/plugins/plugin-client/dist/lib/node/chunk-3OB25QN2.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientCapabilities"],"inputs":{"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytesInOutput":440}},"bytes":642},"packages/plugins/plugin-client/dist/lib/node/react-surface-7USN5NOO.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2456},"packages/plugins/plugin-client/dist/lib/node/react-surface-7USN5NOO.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-N3U7KVO3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytesInOutput":918}},"bytes":1299},"packages/plugins/plugin-client/dist/lib/node/chunk-N3U7KVO3.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11527},"packages/plugins/plugin-client/dist/lib/node/chunk-N3U7KVO3.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["IDENTITY_DIALOG","IdentityDialog","JOIN_DIALOG","JoinDialog","RECOVER_CODE_DIALOG","RecoveryCodeDialog"],"inputs":{"packages/plugins/plugin-client/src/components/IdentityDialog.tsx":{"bytesInOutput":1654},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytesInOutput":1552},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytesInOutput":2774},"packages/plugins/plugin-client/src/components/index.ts":{"bytesInOutput":0}},"bytes":6465},"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4636},"packages/plugins/plugin-client/dist/lib/node/chunk-NVYWMDF3.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["ClientAction"],"inputs":{"packages/plugins/plugin-client/src/types.ts":{"bytesInOutput":1957}},"bytes":2133},"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":462},"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs":{"imports":[],"exports":["CLIENT_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytesInOutput":100}},"bytes":227}}}
1
+ {"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytes":975,"imports":[],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytes":1763,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/types.ts":{"bytes":10155,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytes":5039,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/events.ts":{"bytes":2078,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytes":4478,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"}],"format":"esm"},"packages/plugins/plugin-client/src/components/ManageCredentialsDialog.tsx":{"bytes":8888,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/IdentityDialog.tsx":{"bytes":8421,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/components/ManageCredentialsDialog.tsx","kind":"import-statement","original":"./ManageCredentialsDialog"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytes":6324,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytes":9086,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoverySetupDialog.tsx":{"bytes":7223,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/index.ts":{"bytes":858,"imports":[{"path":"packages/plugins/plugin-client/src/components/IdentityDialog.tsx","kind":"import-statement","original":"./IdentityDialog"},{"path":"packages/plugins/plugin-client/src/components/JoinDialog.tsx","kind":"import-statement","original":"./JoinDialog"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx","kind":"import-statement","original":"./RecoveryCodeDialog"},{"path":"packages/plugins/plugin-client/src/components/RecoverySetupDialog.tsx","kind":"import-statement","original":"./RecoverySetupDialog"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytes":29239,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytes":2461,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytes":6816,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/components/ManageCredentialsDialog.tsx","kind":"import-statement","original":"../components/ManageCredentialsDialog"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytes":3522,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytes":2186,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"packages/plugins/plugin-client/src/capabilities/client.ts","kind":"dynamic-import","original":"./client"},{"path":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","kind":"dynamic-import","original":"./react-context"},{"path":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-client/src/capabilities/schema.ts","kind":"dynamic-import","original":"./schema"}],"format":"esm"},"packages/plugins/plugin-client/src/translations.ts":{"bytes":4585,"imports":[{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytes":8570,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-client/src/index.ts":{"bytes":944,"imports":[{"path":"packages/plugins/plugin-client/src/ClientPlugin.ts","kind":"import-statement","original":"./ClientPlugin"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-client/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7003},"packages/plugins/plugin-client/dist/lib/node/index.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-XPC4JOPP.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-RW7ESEX3.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/client-2RQATBB6.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/intent-resolver-DKQHARC2.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/react-context-TD6VGBVA.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/react-surface-IY7GXEGU.cjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/node/schema-JXJS75HQ.cjs","kind":"dynamic-import"}],"exports":["CLIENT_PLUGIN","ClientCapabilities","ClientEvents","ClientPlugin","meta"],"entryPoint":"packages/plugins/plugin-client/src/index.ts","inputs":{"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytesInOutput":1835},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytesInOutput":491},"packages/plugins/plugin-client/src/translations.ts":{"bytesInOutput":1468},"packages/plugins/plugin-client/src/index.ts":{"bytesInOutput":0}},"bytes":4325},"packages/plugins/plugin-client/dist/lib/node/types.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-client/dist/lib/node/types.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"}],"exports":["ClientAction"],"entryPoint":"packages/plugins/plugin-client/src/types.ts","inputs":{},"bytes":148},"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-RW7ESEX3.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2382},"packages/plugins/plugin-client/dist/lib/node/app-graph-builder-RW7ESEX3.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytesInOutput":1065}},"bytes":1356},"packages/plugins/plugin-client/dist/lib/node/client-2RQATBB6.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2341},"packages/plugins/plugin-client/dist/lib/node/client-2RQATBB6.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-XPC4JOPP.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/client.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytesInOutput":773}},"bytes":1067},"packages/plugins/plugin-client/dist/lib/node/intent-resolver-DKQHARC2.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":12950},"packages/plugins/plugin-client/dist/lib/node/intent-resolver-DKQHARC2.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-XPC4JOPP.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-7LVBFGKQ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytesInOutput":7582}},"bytes":8054},"packages/plugins/plugin-client/dist/lib/node/chunk-XPC4JOPP.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":978},"packages/plugins/plugin-client/dist/lib/node/chunk-XPC4JOPP.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientEvents"],"inputs":{"packages/plugins/plugin-client/src/events.ts":{"bytesInOutput":473}},"bytes":650},"packages/plugins/plugin-client/dist/lib/node/react-context-TD6VGBVA.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1225},"packages/plugins/plugin-client/dist/lib/node/react-context-TD6VGBVA.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytesInOutput":452}},"bytes":738},"packages/plugins/plugin-client/dist/lib/node/react-surface-IY7GXEGU.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3395},"packages/plugins/plugin-client/dist/lib/node/react-surface-IY7GXEGU.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-7LVBFGKQ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytesInOutput":1368}},"bytes":1852},"packages/plugins/plugin-client/dist/lib/node/chunk-7LVBFGKQ.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":20549},"packages/plugins/plugin-client/dist/lib/node/chunk-7LVBFGKQ.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true}],"exports":["IDENTITY_DIALOG","IdentityDialog","JOIN_DIALOG","JoinDialog","MANAGE_CREDENTIALS_DIALOG","ManageCredentialsDialog","RECOVER_CODE_DIALOG","RECOVER_SETUP_DIALOG","RecoveryCodeDialog","RecoverySetupDialog"],"inputs":{"packages/plugins/plugin-client/src/components/ManageCredentialsDialog.tsx":{"bytesInOutput":2202},"packages/plugins/plugin-client/src/components/IdentityDialog.tsx":{"bytesInOutput":2086},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytesInOutput":1587},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytesInOutput":2781},"packages/plugins/plugin-client/src/components/RecoverySetupDialog.tsx":{"bytesInOutput":1952},"packages/plugins/plugin-client/src/components/index.ts":{"bytesInOutput":0}},"bytes":11348},"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5279},"packages/plugins/plugin-client/dist/lib/node/chunk-TREVKZCJ.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["ClientAction"],"inputs":{"packages/plugins/plugin-client/src/types.ts":{"bytesInOutput":2327}},"bytes":2503},"packages/plugins/plugin-client/dist/lib/node/schema-JXJS75HQ.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1855},"packages/plugins/plugin-client/dist/lib/node/schema-JXJS75HQ.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/schema.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytesInOutput":594}},"bytes":833},"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":865},"packages/plugins/plugin-client/dist/lib/node/chunk-UHIGZJQL.cjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientCapabilities"],"inputs":{"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytesInOutput":340}},"bytes":542},"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":462},"packages/plugins/plugin-client/dist/lib/node/chunk-OIFPM5ZW.cjs":{"imports":[],"exports":["CLIENT_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytesInOutput":100}},"bytes":227}}}