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

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 (94) hide show
  1. package/dist/lib/browser/{chunk-SVBQRT7I.mjs → chunk-MSK3TLIH.mjs} +1 -1
  2. package/dist/lib/browser/{chunk-SVBQRT7I.mjs.map → chunk-MSK3TLIH.mjs.map} +2 -2
  3. package/dist/lib/browser/{chunk-6IF6PREG.mjs → chunk-PDSHZE3P.mjs} +11 -7
  4. package/dist/lib/browser/chunk-PDSHZE3P.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-R4Q6H7RD.mjs → chunk-RGMLBYIF.mjs} +2 -2
  6. package/dist/lib/browser/{chunk-R4Q6H7RD.mjs.map → chunk-RGMLBYIF.mjs.map} +2 -2
  7. package/dist/lib/browser/{client-25GYH6TN.mjs → client-BEJK55IM.mjs} +3 -7
  8. package/dist/lib/browser/client-BEJK55IM.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +18 -12
  10. package/dist/lib/browser/index.mjs.map +3 -3
  11. package/dist/lib/browser/intent-resolver-XNZZLRBY.mjs +159 -0
  12. package/dist/lib/browser/intent-resolver-XNZZLRBY.mjs.map +7 -0
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/{react-context-M3RT6SSG.mjs → react-context-PHX2CVI7.mjs} +2 -2
  15. package/dist/lib/browser/{react-surface-XXONPG5T.mjs → react-surface-K5NKVCIB.mjs} +5 -5
  16. package/dist/lib/browser/react-surface-K5NKVCIB.mjs.map +7 -0
  17. package/dist/lib/browser/schema-AL34NY2M.mjs +33 -0
  18. package/dist/lib/browser/schema-AL34NY2M.mjs.map +7 -0
  19. package/dist/lib/node/{chunk-N3U7KVO3.cjs → chunk-VUJ3ZPK3.cjs} +14 -10
  20. package/dist/lib/node/chunk-VUJ3ZPK3.cjs.map +7 -0
  21. package/dist/lib/node/{chunk-IXVWJCYB.cjs → chunk-XPC4JOPP.cjs} +5 -5
  22. package/dist/lib/node/{chunk-IXVWJCYB.cjs.map → chunk-XPC4JOPP.cjs.map} +2 -2
  23. package/dist/lib/node/{chunk-3OB25QN2.cjs → chunk-ZI7AV5RP.cjs} +4 -4
  24. package/dist/lib/node/{chunk-3OB25QN2.cjs.map → chunk-ZI7AV5RP.cjs.map} +2 -2
  25. package/dist/lib/node/{client-52L4TUYU.cjs → client-AHIW24VM.cjs} +8 -12
  26. package/dist/lib/node/client-AHIW24VM.cjs.map +7 -0
  27. package/dist/lib/node/index.cjs +20 -14
  28. package/dist/lib/node/index.cjs.map +3 -3
  29. package/dist/lib/node/intent-resolver-UZEK4ODS.cjs +167 -0
  30. package/dist/lib/node/intent-resolver-UZEK4ODS.cjs.map +7 -0
  31. package/dist/lib/node/meta.json +1 -1
  32. package/dist/lib/node/{react-context-B2DNULH4.cjs → react-context-WMOFXPT4.cjs} +6 -6
  33. package/dist/lib/node/{react-surface-7USN5NOO.cjs → react-surface-YQ2PKXNV.cjs} +15 -15
  34. package/dist/lib/node/react-surface-YQ2PKXNV.cjs.map +7 -0
  35. package/dist/lib/node/schema-HW4W3QYU.cjs +49 -0
  36. package/dist/lib/node/schema-HW4W3QYU.cjs.map +7 -0
  37. package/dist/lib/node-esm/{chunk-OBGRL3DF.mjs → chunk-B73LKPGU.mjs} +1 -1
  38. package/dist/lib/node-esm/{chunk-OBGRL3DF.mjs.map → chunk-B73LKPGU.mjs.map} +2 -2
  39. package/dist/lib/node-esm/{chunk-73M5MK5Q.mjs → chunk-QR72BXJK.mjs} +2 -2
  40. package/dist/lib/node-esm/{chunk-73M5MK5Q.mjs.map → chunk-QR72BXJK.mjs.map} +2 -2
  41. package/dist/lib/node-esm/{chunk-EHGD3UJH.mjs → chunk-WS4CKCUR.mjs} +11 -7
  42. package/dist/lib/node-esm/chunk-WS4CKCUR.mjs.map +7 -0
  43. package/dist/lib/node-esm/{client-K52NWOUN.mjs → client-FY7IDNRL.mjs} +3 -7
  44. package/dist/lib/node-esm/client-FY7IDNRL.mjs.map +7 -0
  45. package/dist/lib/node-esm/index.mjs +18 -12
  46. package/dist/lib/node-esm/index.mjs.map +3 -3
  47. package/dist/lib/node-esm/intent-resolver-DLCCRSFV.mjs +160 -0
  48. package/dist/lib/node-esm/intent-resolver-DLCCRSFV.mjs.map +7 -0
  49. package/dist/lib/node-esm/meta.json +1 -1
  50. package/dist/lib/node-esm/{react-context-IGEHJQK5.mjs → react-context-EEGDXBWA.mjs} +2 -2
  51. package/dist/lib/node-esm/{react-surface-CXLBCMPN.mjs → react-surface-H34XQPWC.mjs} +5 -5
  52. package/dist/lib/node-esm/react-surface-H34XQPWC.mjs.map +7 -0
  53. package/dist/lib/node-esm/schema-74LVJ3EU.mjs +34 -0
  54. package/dist/lib/node-esm/schema-74LVJ3EU.mjs.map +7 -0
  55. package/dist/types/src/ClientPlugin.d.ts.map +1 -1
  56. package/dist/types/src/capabilities/app-graph-builder.d.ts +22 -22
  57. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  58. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  59. package/dist/types/src/capabilities/client.d.ts.map +1 -1
  60. package/dist/types/src/capabilities/index.d.ts +30 -29
  61. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  62. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  63. package/dist/types/src/capabilities/schema.d.ts +4 -0
  64. package/dist/types/src/capabilities/schema.d.ts.map +1 -0
  65. package/dist/types/src/events.d.ts +1 -1
  66. package/package.json +17 -16
  67. package/src/ClientPlugin.ts +10 -5
  68. package/src/capabilities/capabilities.ts +1 -0
  69. package/src/capabilities/client.ts +0 -6
  70. package/src/capabilities/index.ts +1 -0
  71. package/src/capabilities/intent-resolver.ts +95 -66
  72. package/src/capabilities/react-surface.tsx +6 -6
  73. package/src/capabilities/schema.ts +36 -0
  74. package/src/components/IdentityDialog.tsx +3 -3
  75. package/src/components/JoinDialog.tsx +1 -1
  76. package/src/events.ts +1 -1
  77. package/dist/lib/browser/chunk-6IF6PREG.mjs.map +0 -7
  78. package/dist/lib/browser/client-25GYH6TN.mjs.map +0 -7
  79. package/dist/lib/browser/intent-resolver-IWWLWOZD.mjs +0 -132
  80. package/dist/lib/browser/intent-resolver-IWWLWOZD.mjs.map +0 -7
  81. package/dist/lib/browser/react-surface-XXONPG5T.mjs.map +0 -7
  82. package/dist/lib/node/chunk-N3U7KVO3.cjs.map +0 -7
  83. package/dist/lib/node/client-52L4TUYU.cjs.map +0 -7
  84. package/dist/lib/node/intent-resolver-H3Y64MIP.cjs +0 -140
  85. package/dist/lib/node/intent-resolver-H3Y64MIP.cjs.map +0 -7
  86. package/dist/lib/node/react-surface-7USN5NOO.cjs.map +0 -7
  87. package/dist/lib/node-esm/chunk-EHGD3UJH.mjs.map +0 -7
  88. package/dist/lib/node-esm/client-K52NWOUN.mjs.map +0 -7
  89. package/dist/lib/node-esm/intent-resolver-JCKD6R6L.mjs +0 -133
  90. package/dist/lib/node-esm/intent-resolver-JCKD6R6L.mjs.map +0 -7
  91. package/dist/lib/node-esm/react-surface-CXLBCMPN.mjs.map +0 -7
  92. /package/dist/lib/browser/{react-context-M3RT6SSG.mjs.map → react-context-PHX2CVI7.mjs.map} +0 -0
  93. /package/dist/lib/node/{react-context-B2DNULH4.cjs.map → react-context-WMOFXPT4.cjs.map} +0 -0
  94. /package/dist/lib/node-esm/{react-context-IGEHJQK5.mjs.map → react-context-EEGDXBWA.mjs.map} +0 -0
@@ -1,140 +0,0 @@
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_H3Y64MIP_exports = {};
20
- __export(intent_resolver_H3Y64MIP_exports, {
21
- default: () => intent_resolver_default
22
- });
23
- module.exports = __toCommonJS(intent_resolver_H3Y64MIP_exports);
24
- var import_chunk_IXVWJCYB = require("./chunk-IXVWJCYB.cjs");
25
- var import_chunk_3OB25QN2 = require("./chunk-3OB25QN2.cjs");
26
- var import_chunk_N3U7KVO3 = require("./chunk-N3U7KVO3.cjs");
27
- var import_chunk_NVYWMDF3 = require("./chunk-NVYWMDF3.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 __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-client/src/capabilities/intent-resolver.ts";
33
- var intent_resolver_default = ({ context, onReset }) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, [
34
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.CreateIdentity, async () => {
35
- const manager = context.requestCapability(import_app_framework.Capabilities.PluginManager);
36
- const client = context.requestCapability(import_chunk_3OB25QN2.ClientCapabilities.Client);
37
- const data = await client.halo.createIdentity();
38
- await manager.activate(import_chunk_IXVWJCYB.ClientEvents.IdentityCreated);
39
- return {
40
- data,
41
- intents: [
42
- (0, import_app_framework.createIntent)(import_types.ObservabilityAction.SendEvent, {
43
- name: "identity.create"
44
- })
45
- ]
46
- };
47
- }),
48
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.JoinIdentity, async (data) => {
49
- return {
50
- intents: [
51
- (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.SetLayout, {
52
- element: "dialog",
53
- component: import_chunk_N3U7KVO3.JOIN_DIALOG,
54
- dialogBlockAlign: "start",
55
- subject: {
56
- initialInvitationCode: data.invitationCode,
57
- initialDisposition: "accept-halo-invitation"
58
- }
59
- })
60
- ]
61
- };
62
- }),
63
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.ShareIdentity, async () => {
64
- return {
65
- intents: [
66
- (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.SetLayout, {
67
- element: "dialog",
68
- component: import_chunk_N3U7KVO3.IDENTITY_DIALOG,
69
- dialogBlockAlign: "start"
70
- }),
71
- (0, import_app_framework.createIntent)(import_types.ObservabilityAction.SendEvent, {
72
- name: "identity.share"
73
- })
74
- ]
75
- };
76
- }),
77
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.RecoverIdentity, async () => {
78
- return {
79
- intents: [
80
- (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.SetLayout, {
81
- element: "dialog",
82
- component: import_chunk_N3U7KVO3.JOIN_DIALOG,
83
- dialogBlockAlign: "start",
84
- subject: {
85
- initialDisposition: "recover-identity"
86
- }
87
- })
88
- ]
89
- };
90
- }),
91
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.ResetStorage, async (data) => {
92
- await onReset?.({
93
- target: data.target
94
- });
95
- return {};
96
- }),
97
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.CreateAgent, async () => {
98
- const client = context.requestCapability(import_chunk_3OB25QN2.ClientCapabilities.Client);
99
- (0, import_invariant.invariant)(client.services.services.EdgeAgentService, "Missing EdgeAgentService", {
100
- F: __dxlog_file,
101
- L: 80,
102
- S: void 0,
103
- A: [
104
- "client.services.services.EdgeAgentService",
105
- "'Missing EdgeAgentService'"
106
- ]
107
- });
108
- await client.services.services.EdgeAgentService.createAgent(null, {
109
- timeout: 1e4
110
- });
111
- }),
112
- (0, import_app_framework.createResolver)(import_chunk_NVYWMDF3.ClientAction.CreateRecoveryCode, async () => {
113
- const client = context.requestCapability(import_chunk_3OB25QN2.ClientCapabilities.Client);
114
- (0, import_invariant.invariant)(client.services.services.IdentityService, "IdentityService not available", {
115
- F: __dxlog_file,
116
- L: 85,
117
- S: void 0,
118
- A: [
119
- "client.services.services.IdentityService",
120
- "'IdentityService not available'"
121
- ]
122
- });
123
- const { seedphrase } = await client.services.services.IdentityService.createRecoveryPhrase();
124
- return {
125
- intents: [
126
- (0, import_app_framework.createIntent)(import_app_framework.LayoutAction.SetLayout, {
127
- element: "dialog",
128
- dialogBlockAlign: "start",
129
- dialogType: "alert",
130
- state: true,
131
- component: import_chunk_N3U7KVO3.RECOVER_CODE_DIALOG,
132
- subject: {
133
- code: seedphrase
134
- }
135
- })
136
- ]
137
- };
138
- })
139
- ]);
140
- //# sourceMappingURL=intent-resolver-H3Y64MIP.cjs.map
@@ -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 {\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 { 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};\n\nexport default ({ context, onReset }: IntentResolverOptions) =>\n contributes(Capabilities.IntentResolver, [\n createResolver(ClientAction.CreateIdentity, 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 createResolver(ClientAction.JoinIdentity, async (data) => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: JOIN_DIALOG,\n dialogBlockAlign: 'start',\n subject: {\n initialInvitationCode: data.invitationCode,\n initialDisposition: 'accept-halo-invitation',\n } satisfies Partial<JoinPanelProps>,\n }),\n ],\n };\n }),\n createResolver(ClientAction.ShareIdentity, async () => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: IDENTITY_DIALOG,\n dialogBlockAlign: 'start',\n }),\n createIntent(ObservabilityAction.SendEvent, { name: 'identity.share' }),\n ],\n };\n }),\n createResolver(ClientAction.RecoverIdentity, async () => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: JOIN_DIALOG,\n dialogBlockAlign: 'start',\n subject: { initialDisposition: 'recover-identity' } satisfies Partial<JoinPanelProps>,\n }),\n ],\n };\n }),\n createResolver(ClientAction.ResetStorage, async (data) => {\n await onReset?.({ target: data.target });\n return {};\n }),\n createResolver(ClientAction.CreateAgent, 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 createResolver(ClientAction.CreateRecoveryCode, 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. Rename property.\n const { seedphrase } = await client.services.services.IdentityService.createRecoveryPhrase();\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n dialogBlockAlign: 'start',\n dialogType: 'alert',\n state: true,\n component: RECOVER_CODE_DIALOG,\n subject: { code: seedphrase },\n }),\n ],\n };\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAOO;AACP,uBAA0B;AAC1B,mBAAoC;;AAYpC,IAAA,0BAAe,CAAC,EAAEA,SAASC,QAAO,UAChCC,kCAAYC,kCAAaC,gBAAgB;MACvCC,qCAAeC,mCAAaC,gBAAgB,YAAA;AAC1C,UAAMC,UAAUR,QAAQS,kBAAkBN,kCAAaO,aAAa;AACpE,UAAMC,SAASX,QAAQS,kBAAkBG,yCAAmBC,MAAM;AAClE,UAAMC,OAAO,MAAMH,OAAOI,KAAKC,eAAc;AAC7C,UAAMR,QAAQS,SAASC,mCAAaC,eAAe;AACnD,WAAO;MAAEL;MAAMM,SAAS;YAACC,mCAAaC,iCAAoBC,WAAW;UAAEC,MAAM;QAAkB,CAAA;;IAAI;EACrG,CAAA;MACAnB,qCAAeC,mCAAamB,cAAc,OAAOX,SAAAA;AAC/C,WAAO;MACLM,SAAS;YACPC,mCAAaK,kCAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWC;UACXC,kBAAkB;UAClBC,SAAS;YACPC,uBAAuBnB,KAAKoB;YAC5BC,oBAAoB;UACtB;QACF,CAAA;;IAEJ;EACF,CAAA;MACA9B,qCAAeC,mCAAa8B,eAAe,YAAA;AACzC,WAAO;MACLhB,SAAS;YACPC,mCAAaK,kCAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWQ;UACXN,kBAAkB;QACpB,CAAA;YACAV,mCAAaC,iCAAoBC,WAAW;UAAEC,MAAM;QAAiB,CAAA;;IAEzE;EACF,CAAA;MACAnB,qCAAeC,mCAAagC,iBAAiB,YAAA;AAC3C,WAAO;MACLlB,SAAS;YACPC,mCAAaK,kCAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWC;UACXC,kBAAkB;UAClBC,SAAS;YAAEG,oBAAoB;UAAmB;QACpD,CAAA;;IAEJ;EACF,CAAA;MACA9B,qCAAeC,mCAAaiC,cAAc,OAAOzB,SAAAA;AAC/C,UAAMb,UAAU;MAAEuC,QAAQ1B,KAAK0B;IAAO,CAAA;AACtC,WAAO,CAAC;EACV,CAAA;MACAnC,qCAAeC,mCAAamC,aAAa,YAAA;AACvC,UAAM9B,SAASX,QAAQS,kBAAkBG,yCAAmBC,MAAM;AAClE6B,oCAAU/B,OAAOgC,SAASA,SAASC,kBAAkB,4BAAA;;;;;;;;;AACrD,UAAMjC,OAAOgC,SAASA,SAASC,iBAAiBC,YAAY,MAAa;MAAEC,SAAS;IAAO,CAAA;EAC7F,CAAA;MACAzC,qCAAeC,mCAAayC,oBAAoB,YAAA;AAC9C,UAAMpC,SAASX,QAAQS,kBAAkBG,yCAAmBC,MAAM;AAClE6B,oCAAU/B,OAAOgC,SAASA,SAASK,iBAAiB,iCAAA;;;;;;;;;AAEpD,UAAM,EAAEC,WAAU,IAAK,MAAMtC,OAAOgC,SAASA,SAASK,gBAAgBE,qBAAoB;AAC1F,WAAO;MACL9B,SAAS;YACPC,mCAAaK,kCAAaC,WAAW;UACnCC,SAAS;UACTG,kBAAkB;UAClBoB,YAAY;UACZC,OAAO;UACPvB,WAAWwB;UACXrB,SAAS;YAAEsB,MAAML;UAAW;QAC9B,CAAA;;IAEJ;EACF,CAAA;CACD;",
6
- "names": ["context", "onReset", "contributes", "Capabilities", "IntentResolver", "createResolver", "ClientAction", "CreateIdentity", "manager", "requestCapability", "PluginManager", "client", "ClientCapabilities", "Client", "data", "halo", "createIdentity", "activate", "ClientEvents", "IdentityCreated", "intents", "createIntent", "ObservabilityAction", "SendEvent", "name", "JoinIdentity", "LayoutAction", "SetLayout", "element", "component", "JOIN_DIALOG", "dialogBlockAlign", "subject", "initialInvitationCode", "invitationCode", "initialDisposition", "ShareIdentity", "IDENTITY_DIALOG", "RecoverIdentity", "ResetStorage", "target", "CreateAgent", "invariant", "services", "EdgeAgentService", "createAgent", "timeout", "CreateRecoveryCode", "IdentityService", "seedphrase", "createRecoveryPhrase", "dialogType", "state", "RECOVER_CODE_DIALOG", "code"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { createSurface, Capabilities, contributes } from '@dxos/app-framework';\nimport { type IdentityPanelProps, type JoinPanelProps } from '@dxos/shell/react';\n\nimport {\n IDENTITY_DIALOG,\n IdentityDialog,\n JOIN_DIALOG,\n JoinDialog,\n RECOVER_CODE_DIALOG,\n RecoveryCodeDialog,\n type RecoveryCodeDialogProps,\n} from '../components';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nexport default ({ createInvitationUrl }: ReactSurfaceOptions) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: IDENTITY_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: IdentityPanelProps } => data.component === IDENTITY_DIALOG,\n component: ({ data }) => <IdentityDialog {...data.subject} createInvitationUrl={createInvitationUrl} />,\n }),\n createSurface({\n id: JOIN_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: JoinPanelProps } => data.component === JOIN_DIALOG,\n component: ({ data }) => <JoinDialog {...data.subject} />,\n }),\n createSurface({\n id: RECOVER_CODE_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: RecoveryCodeDialogProps } => data.component === RECOVER_CODE_DIALOG,\n component: ({ data }) => <RecoveryCodeDialog {...data.subject} />,\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAkB;AAElB,2BAAyD;AAiBzD,IAAA,wBAAe,CAAC,EAAEA,oBAAmB,UACnCC,kCAAYC,kCAAaC,cAAc;MACrCC,oCAAc;IACZC,IAAIC;IACJC,MAAM;IACNC,QAAQ,CAACC,SAAkDA,KAAKC,cAAcJ;IAC9EI,WAAW,CAAC,EAAED,KAAI,MAAO,6BAAAE,QAAA,cAACC,sCAAAA;MAAgB,GAAGH,KAAKI;MAASb;;EAC7D,CAAA;MACAI,oCAAc;IACZC,IAAIS;IACJP,MAAM;IACNC,QAAQ,CAACC,SAA8CA,KAAKC,cAAcI;IAC1EJ,WAAW,CAAC,EAAED,KAAI,MAAO,6BAAAE,QAAA,cAACI,kCAAeN,KAAKI,OAAO;EACvD,CAAA;MACAT,oCAAc;IACZC,IAAIW;IACJT,MAAM;IACNC,QAAQ,CAACC,SAAuDA,KAAKC,cAAcM;IACnFN,WAAW,CAAC,EAAED,KAAI,MAAO,6BAAAE,QAAA,cAACM,0CAAuBR,KAAKI,OAAO;EAC/D,CAAA;CACD;",
6
- "names": ["createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "IDENTITY_DIALOG", "role", "filter", "data", "component", "React", "IdentityDialog", "subject", "JOIN_DIALOG", "JoinDialog", "RECOVER_CODE_DIALOG", "RecoveryCodeDialog"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/IdentityDialog.tsx", "../../../src/components/JoinDialog.tsx", "../../../src/components/RecoveryCodeDialog.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { useClient } from '@dxos/react-client';\nimport { Clipboard, Dialog } from '@dxos/react-ui';\nimport { IdentityPanel, type IdentityPanelProps } from '@dxos/shell/react';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { ClientAction } from '../types';\n\nexport const IDENTITY_DIALOG = `${CLIENT_PLUGIN}/IdentityDialog`;\n\nexport const IdentityDialog = (props: IdentityPanelProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const client = useClient();\n\n const handleDone = useCallback(\n () =>\n dispatch(\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n state: false,\n }),\n ),\n [dispatch],\n );\n\n const handleResetStorage = useCallback(async () => {\n await client.reset();\n await dispatch(createIntent(ClientAction.ResetStorage));\n }, [dispatch]);\n\n const handleRecover = useCallback(async () => {\n await client.reset();\n await dispatch(createIntent(ClientAction.ResetStorage, { target: 'recoverIdentity' }));\n }, [dispatch]);\n\n const handleJoinNewIdentity = useCallback(async () => {\n await client.reset();\n await dispatch(createIntent(ClientAction.ResetStorage, { target: 'deviceInvitation' }));\n }, [dispatch]);\n\n return (\n <Dialog.Content>\n <Clipboard.Provider>\n <IdentityPanel\n {...props}\n doneActionParent={<Dialog.Close asChild />}\n onDone={handleDone}\n onResetStorage={handleResetStorage}\n onRecover={handleRecover}\n onJoinNewIdentity={handleJoinNewIdentity}\n />\n </Clipboard.Provider>\n </Dialog.Content>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { type InvitationResult } from '@dxos/react-client/invitations';\nimport { Dialog } from '@dxos/react-ui';\nimport { JoinPanel, type JoinPanelProps } from '@dxos/shell/react';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { ClientAction } from '../types';\n\nexport const JOIN_DIALOG = `${CLIENT_PLUGIN}/JoinDialog`;\n\nexport const JoinDialog = (props: JoinPanelProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n const handleCancelResetStorage = useCallback(() => dispatch(createIntent(ClientAction.ShareIdentity)), [dispatch]);\n\n const handleDone = useCallback(\n async (result: InvitationResult | null) => {\n if (result?.identityKey) {\n await Promise.all([\n dispatch(createIntent(LayoutAction.SetLayout, { element: 'dialog', state: false })),\n dispatch(\n createIntent(ObservabilityAction.SendEvent, {\n name: props.initialDisposition === 'recover-identity' ? 'identity.recover' : 'identity.join',\n }),\n ),\n ]);\n }\n },\n [dispatch],\n );\n\n return (\n <Dialog.Content>\n <JoinPanel\n mode='halo-only'\n {...props}\n exitActionParent={<Dialog.Close asChild />}\n doneActionParent={<Dialog.Close asChild />}\n onCancelResetStorage={handleCancelResetStorage}\n onDone={handleDone}\n />\n </Dialog.Content>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useState } from 'react';\n\nimport { AlertDialog, Button, Clipboard, Input, useTranslation } from '@dxos/react-ui';\n\nimport { CLIENT_PLUGIN } from '../meta';\n\nexport const RECOVER_CODE_DIALOG = `${CLIENT_PLUGIN}/RecoveryCodeDialog`;\n\nexport type RecoveryCodeDialogProps = {\n code: string;\n};\n\nexport const RecoveryCodeDialog = ({ code }: RecoveryCodeDialogProps) => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const [confirmation, setConfirmation] = useState(false);\n\n const handleConfirmation = useCallback((checked: boolean) => setConfirmation(checked), []);\n\n return (\n <AlertDialog.Content classNames='bs-content min-bs-[15rem] max-bs-full md:max-is-[40rem] overflow-hidden'>\n <AlertDialog.Title>{t('recovery code dialog title')}</AlertDialog.Title>\n <p className='py-4'>{t('recovery code dialog description')}</p>\n <Clipboard.Provider>\n <Code code={code} />\n </Clipboard.Provider>\n <div className='flex flex-col py-4 gap-2'>\n <p>{t('recovery code dialog warning 1')}</p>\n <p>{t('recovery code dialog warning 2')}</p>\n </div>\n <div className='flex items-center gap-2 pbe-4'>\n <Input.Root>\n <Input.Checkbox\n data-testid='recoveryCode.confirm'\n checked={confirmation}\n onCheckedChange={handleConfirmation}\n />\n <Input.Label>{t('recovery code confirmation label')}</Input.Label>\n </Input.Root>\n </div>\n <div className='flex justify-end'>\n <AlertDialog.Action asChild>\n <Button data-testid='recoveryCode.continue' variant='primary' disabled={!confirmation}>\n {t('continue label')}\n </Button>\n </AlertDialog.Action>\n </div>\n </AlertDialog.Content>\n );\n};\n\nconst Code = ({ code }: { code: string }) => {\n const words = code.split(' ');\n return (\n <div className='relative p-2 border border-separator rounded group'>\n <Clipboard.IconButton value={code} classNames='absolute top-2 right-2 invisible group-hover:visible' />\n <div className='grid grid-cols-4'>\n {words.map((word, i) => (\n <div key={i} className='flex items-center p-2 gap-2 items-center'>\n <div className='w-4 text-xs text-center text-subdued'>{i + 1}</div>\n <div className='text-sm'>{word}</div>\n </div>\n ))}\n </div>\n </div>\n );\n};\n"],
5
- "mappings": "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",
6
- "names": ["React", "useCallback", "createIntent", "LayoutAction", "useIntentDispatcher", "useClient", "Clipboard", "Dialog", "IdentityPanel", "IDENTITY_DIALOG", "CLIENT_PLUGIN", "IdentityDialog", "props", "dispatchPromise", "dispatch", "useIntentDispatcher", "client", "useClient", "handleDone", "useCallback", "createIntent", "LayoutAction", "SetLayout", "element", "state", "handleResetStorage", "reset", "ClientAction", "ResetStorage", "handleRecover", "target", "handleJoinNewIdentity", "Dialog", "Content", "Clipboard", "Provider", "IdentityPanel", "doneActionParent", "Close", "asChild", "onDone", "onResetStorage", "onRecover", "onJoinNewIdentity", "React", "useCallback", "createIntent", "LayoutAction", "useIntentDispatcher", "ObservabilityAction", "Dialog", "JoinPanel", "JOIN_DIALOG", "CLIENT_PLUGIN", "JoinDialog", "props", "dispatchPromise", "dispatch", "useIntentDispatcher", "handleCancelResetStorage", "useCallback", "createIntent", "ClientAction", "ShareIdentity", "handleDone", "result", "identityKey", "Promise", "all", "LayoutAction", "SetLayout", "element", "state", "ObservabilityAction", "SendEvent", "name", "initialDisposition", "React", "Dialog", "Content", "JoinPanel", "mode", "exitActionParent", "Close", "asChild", "doneActionParent", "onCancelResetStorage", "onDone", "React", "useCallback", "useState", "AlertDialog", "Button", "Clipboard", "Input", "useTranslation", "RECOVER_CODE_DIALOG", "CLIENT_PLUGIN", "RecoveryCodeDialog", "code", "t", "useTranslation", "confirmation", "setConfirmation", "useState", "handleConfirmation", "useCallback", "checked", "React", "AlertDialog", "Content", "classNames", "Title", "p", "className", "Clipboard", "Provider", "Code", "div", "Input", "Root", "Checkbox", "data-testid", "onCheckedChange", "Label", "Action", "asChild", "Button", "variant", "disabled", "words", "split", "IconButton", "value", "map", "word", "i", "key"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/client.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes, type PluginsContext } from '@dxos/app-framework';\nimport { Config, Defaults, Envs, Local, Storage } from '@dxos/config';\nimport { Client } from '@dxos/react-client';\n\nimport { ClientCapabilities } from './capabilities';\nimport { ClientEvents } from '../events';\nimport { type ClientPluginOptions } from '../types';\n\ntype ClientCapabilityOptions = Omit<ClientPluginOptions, 'appKey' | 'invitationUrl' | 'invitationParam' | 'onReset'> & {\n context: PluginsContext;\n};\n\nexport default async ({ context, onClientInitialized, ...options }: ClientCapabilityOptions) => {\n const config = new Config(await Storage(), Envs(), Local(), Defaults());\n const client = new Client({ config, ...options });\n\n await client.initialize();\n await onClientInitialized?.(context, client);\n\n const systemSchemas = Array.from(new Set(context.requestCapabilities(ClientCapabilities.SystemSchema).flat()));\n const schemas = Array.from(new Set(context.requestCapabilities(ClientCapabilities.Schema).flat()));\n client.addTypes(systemSchemas);\n client.addTypes(schemas);\n\n // TODO(wittjosiah): Remove. This is a hack to get the app to boot with the new identity after a reset.\n client.reloaded.on(() => {\n client.halo.identity.subscribe(async (identity) => {\n if (identity) {\n window.location.href = window.location.origin;\n }\n });\n });\n\n const subscription = client.spaces.isReady.subscribe(async (ready) => {\n if (ready) {\n await context.activate(ClientEvents.SpacesReady);\n }\n });\n\n return contributes(ClientCapabilities.Client, client, async () => {\n subscription.unsubscribe();\n await client.destroy();\n });\n};\n"],
5
- "mappings": ";;;;;;;;;;AAIA,SAASA,mBAAwC;AACjD,SAASC,QAAQC,UAAUC,MAAMC,OAAOC,eAAe;AACvD,SAASC,cAAc;AAUvB,IAAA,iBAAe,OAAO,EAAEC,SAASC,qBAAqB,GAAGC,QAAAA,MAAkC;AACzF,QAAMC,SAAS,IAAIC,OAAO,MAAMC,QAAAA,GAAWC,KAAAA,GAAQC,MAAAA,GAASC,SAAAA,CAAAA;AAC5D,QAAMC,SAAS,IAAIC,OAAO;IAAEP;IAAQ,GAAGD;EAAQ,CAAA;AAE/C,QAAMO,OAAOE,WAAU;AACvB,QAAMV,sBAAsBD,SAASS,MAAAA;AAErC,QAAMG,gBAAgBC,MAAMC,KAAK,IAAIC,IAAIf,QAAQgB,oBAAoBC,mBAAmBC,YAAY,EAAEC,KAAI,CAAA,CAAA;AAC1G,QAAMC,UAAUP,MAAMC,KAAK,IAAIC,IAAIf,QAAQgB,oBAAoBC,mBAAmBI,MAAM,EAAEF,KAAI,CAAA,CAAA;AAC9FV,SAAOa,SAASV,aAAAA;AAChBH,SAAOa,SAASF,OAAAA;AAGhBX,SAAOc,SAASC,GAAG,MAAA;AACjBf,WAAOgB,KAAKC,SAASC,UAAU,OAAOD,aAAAA;AACpC,UAAIA,UAAU;AACZE,eAAOC,SAASC,OAAOF,OAAOC,SAASE;MACzC;IACF,CAAA;EACF,CAAA;AAEA,QAAMC,eAAevB,OAAOwB,OAAOC,QAAQP,UAAU,OAAOQ,UAAAA;AAC1D,QAAIA,OAAO;AACT,YAAMnC,QAAQoC,SAASC,aAAaC,WAAW;IACjD;EACF,CAAA;AAEA,SAAOC,YAAYtB,mBAAmBP,QAAQD,QAAQ,YAAA;AACpDuB,iBAAaQ,YAAW;AACxB,UAAM/B,OAAOgC,QAAO;EACtB,CAAA;AACF;",
6
- "names": ["contributes", "Config", "Defaults", "Envs", "Local", "Storage", "Client", "context", "onClientInitialized", "options", "config", "Config", "Storage", "Envs", "Local", "Defaults", "client", "Client", "initialize", "systemSchemas", "Array", "from", "Set", "requestCapabilities", "ClientCapabilities", "SystemSchema", "flat", "schemas", "Schema", "addTypes", "reloaded", "on", "halo", "identity", "subscribe", "window", "location", "href", "origin", "subscription", "spaces", "isReady", "ready", "activate", "ClientEvents", "SpacesReady", "contributes", "unsubscribe", "destroy"]
7
- }
@@ -1,133 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- ClientEvents
4
- } from "./chunk-73M5MK5Q.mjs";
5
- import {
6
- ClientCapabilities
7
- } from "./chunk-OBGRL3DF.mjs";
8
- import {
9
- IDENTITY_DIALOG,
10
- JOIN_DIALOG,
11
- RECOVER_CODE_DIALOG
12
- } from "./chunk-EHGD3UJH.mjs";
13
- import {
14
- ClientAction
15
- } from "./chunk-74T33KTB.mjs";
16
- import "./chunk-HO7WDE7C.mjs";
17
-
18
- // packages/plugins/plugin-client/src/capabilities/intent-resolver.ts
19
- import { Capabilities, contributes, createIntent, createResolver, LayoutAction } from "@dxos/app-framework";
20
- import { invariant } from "@dxos/invariant";
21
- import { ObservabilityAction } from "@dxos/plugin-observability/types";
22
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-client/src/capabilities/intent-resolver.ts";
23
- var intent_resolver_default = ({ context, onReset }) => contributes(Capabilities.IntentResolver, [
24
- createResolver(ClientAction.CreateIdentity, async () => {
25
- const manager = context.requestCapability(Capabilities.PluginManager);
26
- const client = context.requestCapability(ClientCapabilities.Client);
27
- const data = await client.halo.createIdentity();
28
- await manager.activate(ClientEvents.IdentityCreated);
29
- return {
30
- data,
31
- intents: [
32
- createIntent(ObservabilityAction.SendEvent, {
33
- name: "identity.create"
34
- })
35
- ]
36
- };
37
- }),
38
- createResolver(ClientAction.JoinIdentity, async (data) => {
39
- return {
40
- intents: [
41
- createIntent(LayoutAction.SetLayout, {
42
- element: "dialog",
43
- component: JOIN_DIALOG,
44
- dialogBlockAlign: "start",
45
- subject: {
46
- initialInvitationCode: data.invitationCode,
47
- initialDisposition: "accept-halo-invitation"
48
- }
49
- })
50
- ]
51
- };
52
- }),
53
- createResolver(ClientAction.ShareIdentity, async () => {
54
- return {
55
- intents: [
56
- createIntent(LayoutAction.SetLayout, {
57
- element: "dialog",
58
- component: IDENTITY_DIALOG,
59
- dialogBlockAlign: "start"
60
- }),
61
- createIntent(ObservabilityAction.SendEvent, {
62
- name: "identity.share"
63
- })
64
- ]
65
- };
66
- }),
67
- createResolver(ClientAction.RecoverIdentity, async () => {
68
- return {
69
- intents: [
70
- createIntent(LayoutAction.SetLayout, {
71
- element: "dialog",
72
- component: JOIN_DIALOG,
73
- dialogBlockAlign: "start",
74
- subject: {
75
- initialDisposition: "recover-identity"
76
- }
77
- })
78
- ]
79
- };
80
- }),
81
- createResolver(ClientAction.ResetStorage, async (data) => {
82
- await onReset?.({
83
- target: data.target
84
- });
85
- return {};
86
- }),
87
- createResolver(ClientAction.CreateAgent, async () => {
88
- const client = context.requestCapability(ClientCapabilities.Client);
89
- invariant(client.services.services.EdgeAgentService, "Missing EdgeAgentService", {
90
- F: __dxlog_file,
91
- L: 80,
92
- S: void 0,
93
- A: [
94
- "client.services.services.EdgeAgentService",
95
- "'Missing EdgeAgentService'"
96
- ]
97
- });
98
- await client.services.services.EdgeAgentService.createAgent(null, {
99
- timeout: 1e4
100
- });
101
- }),
102
- createResolver(ClientAction.CreateRecoveryCode, async () => {
103
- const client = context.requestCapability(ClientCapabilities.Client);
104
- invariant(client.services.services.IdentityService, "IdentityService not available", {
105
- F: __dxlog_file,
106
- L: 85,
107
- S: void 0,
108
- A: [
109
- "client.services.services.IdentityService",
110
- "'IdentityService not available'"
111
- ]
112
- });
113
- const { seedphrase } = await client.services.services.IdentityService.createRecoveryPhrase();
114
- return {
115
- intents: [
116
- createIntent(LayoutAction.SetLayout, {
117
- element: "dialog",
118
- dialogBlockAlign: "start",
119
- dialogType: "alert",
120
- state: true,
121
- component: RECOVER_CODE_DIALOG,
122
- subject: {
123
- code: seedphrase
124
- }
125
- })
126
- ]
127
- };
128
- })
129
- ]);
130
- export {
131
- intent_resolver_default as default
132
- };
133
- //# sourceMappingURL=intent-resolver-JCKD6R6L.mjs.map
@@ -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 {\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 { 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};\n\nexport default ({ context, onReset }: IntentResolverOptions) =>\n contributes(Capabilities.IntentResolver, [\n createResolver(ClientAction.CreateIdentity, 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 createResolver(ClientAction.JoinIdentity, async (data) => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: JOIN_DIALOG,\n dialogBlockAlign: 'start',\n subject: {\n initialInvitationCode: data.invitationCode,\n initialDisposition: 'accept-halo-invitation',\n } satisfies Partial<JoinPanelProps>,\n }),\n ],\n };\n }),\n createResolver(ClientAction.ShareIdentity, async () => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: IDENTITY_DIALOG,\n dialogBlockAlign: 'start',\n }),\n createIntent(ObservabilityAction.SendEvent, { name: 'identity.share' }),\n ],\n };\n }),\n createResolver(ClientAction.RecoverIdentity, async () => {\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n component: JOIN_DIALOG,\n dialogBlockAlign: 'start',\n subject: { initialDisposition: 'recover-identity' } satisfies Partial<JoinPanelProps>,\n }),\n ],\n };\n }),\n createResolver(ClientAction.ResetStorage, async (data) => {\n await onReset?.({ target: data.target });\n return {};\n }),\n createResolver(ClientAction.CreateAgent, 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 createResolver(ClientAction.CreateRecoveryCode, 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. Rename property.\n const { seedphrase } = await client.services.services.IdentityService.createRecoveryPhrase();\n return {\n intents: [\n createIntent(LayoutAction.SetLayout, {\n element: 'dialog',\n dialogBlockAlign: 'start',\n dialogType: 'alert',\n state: true,\n component: RECOVER_CODE_DIALOG,\n subject: { code: seedphrase },\n }),\n ],\n };\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAIA,SACEA,cACAC,aACAC,cACAC,gBACAC,oBAEK;AACP,SAASC,iBAAiB;AAC1B,SAASC,2BAA2B;;AAYpC,IAAA,0BAAe,CAAC,EAAEC,SAASC,QAAO,MAChCC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAeC,aAAaC,gBAAgB,YAAA;AAC1C,UAAMC,UAAUR,QAAQS,kBAAkBN,aAAaO,aAAa;AACpE,UAAMC,SAASX,QAAQS,kBAAkBG,mBAAmBC,MAAM;AAClE,UAAMC,OAAO,MAAMH,OAAOI,KAAKC,eAAc;AAC7C,UAAMR,QAAQS,SAASC,aAAaC,eAAe;AACnD,WAAO;MAAEL;MAAMM,SAAS;QAACC,aAAaC,oBAAoBC,WAAW;UAAEC,MAAM;QAAkB,CAAA;;IAAI;EACrG,CAAA;EACAnB,eAAeC,aAAamB,cAAc,OAAOX,SAAAA;AAC/C,WAAO;MACLM,SAAS;QACPC,aAAaK,aAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWC;UACXC,kBAAkB;UAClBC,SAAS;YACPC,uBAAuBnB,KAAKoB;YAC5BC,oBAAoB;UACtB;QACF,CAAA;;IAEJ;EACF,CAAA;EACA9B,eAAeC,aAAa8B,eAAe,YAAA;AACzC,WAAO;MACLhB,SAAS;QACPC,aAAaK,aAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWQ;UACXN,kBAAkB;QACpB,CAAA;QACAV,aAAaC,oBAAoBC,WAAW;UAAEC,MAAM;QAAiB,CAAA;;IAEzE;EACF,CAAA;EACAnB,eAAeC,aAAagC,iBAAiB,YAAA;AAC3C,WAAO;MACLlB,SAAS;QACPC,aAAaK,aAAaC,WAAW;UACnCC,SAAS;UACTC,WAAWC;UACXC,kBAAkB;UAClBC,SAAS;YAAEG,oBAAoB;UAAmB;QACpD,CAAA;;IAEJ;EACF,CAAA;EACA9B,eAAeC,aAAaiC,cAAc,OAAOzB,SAAAA;AAC/C,UAAMb,UAAU;MAAEuC,QAAQ1B,KAAK0B;IAAO,CAAA;AACtC,WAAO,CAAC;EACV,CAAA;EACAnC,eAAeC,aAAamC,aAAa,YAAA;AACvC,UAAM9B,SAASX,QAAQS,kBAAkBG,mBAAmBC,MAAM;AAClE6B,cAAU/B,OAAOgC,SAASA,SAASC,kBAAkB,4BAAA;;;;;;;;;AACrD,UAAMjC,OAAOgC,SAASA,SAASC,iBAAiBC,YAAY,MAAa;MAAEC,SAAS;IAAO,CAAA;EAC7F,CAAA;EACAzC,eAAeC,aAAayC,oBAAoB,YAAA;AAC9C,UAAMpC,SAASX,QAAQS,kBAAkBG,mBAAmBC,MAAM;AAClE6B,cAAU/B,OAAOgC,SAASA,SAASK,iBAAiB,iCAAA;;;;;;;;;AAEpD,UAAM,EAAEC,WAAU,IAAK,MAAMtC,OAAOgC,SAASA,SAASK,gBAAgBE,qBAAoB;AAC1F,WAAO;MACL9B,SAAS;QACPC,aAAaK,aAAaC,WAAW;UACnCC,SAAS;UACTG,kBAAkB;UAClBoB,YAAY;UACZC,OAAO;UACPvB,WAAWwB;UACXrB,SAAS;YAAEsB,MAAML;UAAW;QAC9B,CAAA;;IAEJ;EACF,CAAA;CACD;",
6
- "names": ["Capabilities", "contributes", "createIntent", "createResolver", "LayoutAction", "invariant", "ObservabilityAction", "context", "onReset", "contributes", "Capabilities", "IntentResolver", "createResolver", "ClientAction", "CreateIdentity", "manager", "requestCapability", "PluginManager", "client", "ClientCapabilities", "Client", "data", "halo", "createIdentity", "activate", "ClientEvents", "IdentityCreated", "intents", "createIntent", "ObservabilityAction", "SendEvent", "name", "JoinIdentity", "LayoutAction", "SetLayout", "element", "component", "JOIN_DIALOG", "dialogBlockAlign", "subject", "initialInvitationCode", "invitationCode", "initialDisposition", "ShareIdentity", "IDENTITY_DIALOG", "RecoverIdentity", "ResetStorage", "target", "CreateAgent", "invariant", "services", "EdgeAgentService", "createAgent", "timeout", "CreateRecoveryCode", "IdentityService", "seedphrase", "createRecoveryPhrase", "dialogType", "state", "RECOVER_CODE_DIALOG", "code"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { createSurface, Capabilities, contributes } from '@dxos/app-framework';\nimport { type IdentityPanelProps, type JoinPanelProps } from '@dxos/shell/react';\n\nimport {\n IDENTITY_DIALOG,\n IdentityDialog,\n JOIN_DIALOG,\n JoinDialog,\n RECOVER_CODE_DIALOG,\n RecoveryCodeDialog,\n type RecoveryCodeDialogProps,\n} from '../components';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nexport default ({ createInvitationUrl }: ReactSurfaceOptions) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: IDENTITY_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: IdentityPanelProps } => data.component === IDENTITY_DIALOG,\n component: ({ data }) => <IdentityDialog {...data.subject} createInvitationUrl={createInvitationUrl} />,\n }),\n createSurface({\n id: JOIN_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: JoinPanelProps } => data.component === JOIN_DIALOG,\n component: ({ data }) => <JoinDialog {...data.subject} />,\n }),\n createSurface({\n id: RECOVER_CODE_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: RecoveryCodeDialogProps } => data.component === RECOVER_CODE_DIALOG,\n component: ({ data }) => <RecoveryCodeDialog {...data.subject} />,\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,eAAeC,cAAcC,mBAAmB;AAiBzD,IAAA,wBAAe,CAAC,EAAEC,oBAAmB,MACnCC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAIC;IACJC,MAAM;IACNC,QAAQ,CAACC,SAAkDA,KAAKC,cAAcJ;IAC9EI,WAAW,CAAC,EAAED,KAAI,MAAO,sBAAA,cAACE,gBAAAA;MAAgB,GAAGF,KAAKG;MAASZ;;EAC7D,CAAA;EACAI,cAAc;IACZC,IAAIQ;IACJN,MAAM;IACNC,QAAQ,CAACC,SAA8CA,KAAKC,cAAcG;IAC1EH,WAAW,CAAC,EAAED,KAAI,MAAO,sBAAA,cAACK,YAAeL,KAAKG,OAAO;EACvD,CAAA;EACAR,cAAc;IACZC,IAAIU;IACJR,MAAM;IACNC,QAAQ,CAACC,SAAuDA,KAAKC,cAAcK;IACnFL,WAAW,CAAC,EAAED,KAAI,MAAO,sBAAA,cAACO,oBAAuBP,KAAKG,OAAO;EAC/D,CAAA;CACD;",
6
- "names": ["React", "createSurface", "Capabilities", "contributes", "createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "IDENTITY_DIALOG", "role", "filter", "data", "component", "IdentityDialog", "subject", "JOIN_DIALOG", "JoinDialog", "RECOVER_CODE_DIALOG", "RecoveryCodeDialog"]
7
- }