@dxos/plugin-client 0.8.1-staging.5be625a → 0.8.1-staging.97aedb1

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 (134) hide show
  1. package/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs +119 -0
  2. package/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-VZ5F6WXE.mjs → chunk-AN7FJKIJ.mjs} +20 -3
  4. package/dist/lib/browser/{chunk-VZ5F6WXE.mjs.map → chunk-AN7FJKIJ.mjs.map} +3 -3
  5. package/dist/lib/browser/chunk-XZ4TQC56.mjs +619 -0
  6. package/dist/lib/browser/chunk-XZ4TQC56.mjs.map +7 -0
  7. package/dist/lib/browser/{client-OE5TVJAO.mjs → client-LV67Q3R7.mjs} +2 -2
  8. package/dist/lib/browser/{client-OE5TVJAO.mjs.map → client-LV67Q3R7.mjs.map} +3 -3
  9. package/dist/lib/browser/index.mjs +45 -16
  10. package/dist/lib/browser/index.mjs.map +2 -2
  11. package/dist/lib/browser/{intent-resolver-SC35ILQN.mjs → intent-resolver-NCISOZW4.mjs} +62 -24
  12. package/dist/lib/browser/intent-resolver-NCISOZW4.mjs.map +7 -0
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/react-surface-J7SZR2J6.mjs +66 -0
  15. package/dist/lib/browser/react-surface-J7SZR2J6.mjs.map +7 -0
  16. package/dist/lib/browser/types.mjs +3 -1
  17. package/dist/lib/node/app-graph-builder-PXOJZJO5.cjs +130 -0
  18. package/dist/lib/node/app-graph-builder-PXOJZJO5.cjs.map +7 -0
  19. package/dist/lib/node/chunk-3JE5BFCT.cjs +644 -0
  20. package/dist/lib/node/chunk-3JE5BFCT.cjs.map +7 -0
  21. package/dist/lib/node/{chunk-2MVZ5CAW.cjs → chunk-FROKBEVH.cjs} +23 -5
  22. package/dist/lib/node/chunk-FROKBEVH.cjs.map +7 -0
  23. package/dist/lib/node/{client-4L2EFL2K.cjs → client-BKTGRBYM.cjs} +5 -5
  24. package/dist/lib/node/{client-4L2EFL2K.cjs.map → client-BKTGRBYM.cjs.map} +3 -3
  25. package/dist/lib/node/index.cjs +45 -16
  26. package/dist/lib/node/index.cjs.map +2 -2
  27. package/dist/lib/node/{intent-resolver-HT7A7YJC.cjs → intent-resolver-U2576ALY.cjs} +72 -35
  28. package/dist/lib/node/intent-resolver-U2576ALY.cjs.map +7 -0
  29. package/dist/lib/node/meta.json +1 -1
  30. package/dist/lib/node/{react-surface-UW35ICXB.cjs → react-surface-BSTIXMER.cjs} +33 -25
  31. package/dist/lib/node/react-surface-BSTIXMER.cjs.map +7 -0
  32. package/dist/lib/node/types.cjs +4 -2
  33. package/dist/lib/node/types.cjs.map +2 -2
  34. package/dist/lib/node-esm/app-graph-builder-KIN6NWFI.mjs +120 -0
  35. package/dist/lib/node-esm/app-graph-builder-KIN6NWFI.mjs.map +7 -0
  36. package/dist/lib/node-esm/{chunk-TBU6HCXG.mjs → chunk-AD5W5QCQ.mjs} +20 -3
  37. package/dist/lib/node-esm/{chunk-TBU6HCXG.mjs.map → chunk-AD5W5QCQ.mjs.map} +3 -3
  38. package/dist/lib/node-esm/chunk-LZN2UNN7.mjs +620 -0
  39. package/dist/lib/node-esm/chunk-LZN2UNN7.mjs.map +7 -0
  40. package/dist/lib/node-esm/{client-M52MGTIR.mjs → client-QQD6WFOB.mjs} +2 -2
  41. package/dist/lib/node-esm/{client-M52MGTIR.mjs.map → client-QQD6WFOB.mjs.map} +3 -3
  42. package/dist/lib/node-esm/index.mjs +45 -16
  43. package/dist/lib/node-esm/index.mjs.map +2 -2
  44. package/dist/lib/node-esm/{intent-resolver-JZLW7ZY3.mjs → intent-resolver-G25U4UGI.mjs} +62 -24
  45. package/dist/lib/node-esm/intent-resolver-G25U4UGI.mjs.map +7 -0
  46. package/dist/lib/node-esm/meta.json +1 -1
  47. package/dist/lib/node-esm/react-surface-ZPI7T4EM.mjs +67 -0
  48. package/dist/lib/node-esm/react-surface-ZPI7T4EM.mjs.map +7 -0
  49. package/dist/lib/node-esm/types.mjs +3 -1
  50. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  51. package/dist/types/src/capabilities/index.d.ts +4 -4
  52. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  53. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -3
  54. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  55. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  56. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  57. package/dist/types/src/components/DevicesContainer.d.ts +5 -0
  58. package/dist/types/src/components/DevicesContainer.d.ts.map +1 -0
  59. package/dist/types/src/components/DevicesContainer.stories.d.ts +8 -0
  60. package/dist/types/src/components/DevicesContainer.stories.d.ts.map +1 -0
  61. package/dist/types/src/components/ProfileContainer.d.ts +3 -0
  62. package/dist/types/src/components/ProfileContainer.d.ts.map +1 -0
  63. package/dist/types/src/components/ProfileContainer.stories.d.ts +8 -0
  64. package/dist/types/src/components/ProfileContainer.stories.d.ts.map +1 -0
  65. package/dist/types/src/components/RecoveryCodeDialog.d.ts +1 -1
  66. package/dist/types/src/components/RecoveryCodeDialog.d.ts.map +1 -1
  67. package/dist/types/src/components/RecoveryCredentialsContainer.d.ts +4 -0
  68. package/dist/types/src/components/RecoveryCredentialsContainer.d.ts.map +1 -0
  69. package/dist/types/src/components/RecoveryCredentialsContainer.stories.d.ts +8 -0
  70. package/dist/types/src/components/RecoveryCredentialsContainer.stories.d.ts.map +1 -0
  71. package/dist/types/src/components/ResetDialog.d.ts +7 -0
  72. package/dist/types/src/components/ResetDialog.d.ts.map +1 -0
  73. package/dist/types/src/components/ResetDialog.stories.d.ts +10 -0
  74. package/dist/types/src/components/ResetDialog.stories.d.ts.map +1 -0
  75. package/dist/types/src/components/index.d.ts +4 -2
  76. package/dist/types/src/components/index.d.ts.map +1 -1
  77. package/dist/types/src/translations.d.ts +28 -1
  78. package/dist/types/src/translations.d.ts.map +1 -1
  79. package/dist/types/src/types.d.ts +17 -1
  80. package/dist/types/src/types.d.ts.map +1 -1
  81. package/package.json +26 -19
  82. package/src/ClientPlugin.ts +2 -2
  83. package/src/capabilities/app-graph-builder.ts +62 -6
  84. package/src/capabilities/client.ts +1 -1
  85. package/src/capabilities/intent-resolver.ts +68 -23
  86. package/src/capabilities/react-surface.tsx +32 -24
  87. package/src/components/DevicesContainer.stories.tsx +45 -0
  88. package/src/components/DevicesContainer.tsx +270 -0
  89. package/src/components/ProfileContainer.stories.tsx +29 -0
  90. package/src/components/ProfileContainer.tsx +163 -0
  91. package/src/components/RecoveryCodeDialog.stories.tsx +2 -2
  92. package/src/components/RecoveryCodeDialog.tsx +1 -2
  93. package/src/components/{ManageCredentialsDialog.stories.tsx → RecoveryCredentialsContainer.stories.tsx} +4 -17
  94. package/src/components/RecoveryCredentialsContainer.tsx +74 -0
  95. package/src/components/ResetDialog.stories.tsx +47 -0
  96. package/src/components/ResetDialog.tsx +49 -0
  97. package/src/components/index.ts +4 -2
  98. package/src/translations.ts +45 -9
  99. package/src/types.ts +20 -1
  100. package/dist/lib/browser/app-graph-builder-AYO4YOHF.mjs +0 -44
  101. package/dist/lib/browser/app-graph-builder-AYO4YOHF.mjs.map +0 -7
  102. package/dist/lib/browser/chunk-RVH34XOH.mjs +0 -281
  103. package/dist/lib/browser/chunk-RVH34XOH.mjs.map +0 -7
  104. package/dist/lib/browser/intent-resolver-SC35ILQN.mjs.map +0 -7
  105. package/dist/lib/browser/react-surface-BSCIKZIB.mjs +0 -57
  106. package/dist/lib/browser/react-surface-BSCIKZIB.mjs.map +0 -7
  107. package/dist/lib/node/app-graph-builder-LYPDRPML.cjs +0 -58
  108. package/dist/lib/node/app-graph-builder-LYPDRPML.cjs.map +0 -7
  109. package/dist/lib/node/chunk-2MVZ5CAW.cjs.map +0 -7
  110. package/dist/lib/node/chunk-BGAW4D7O.cjs +0 -309
  111. package/dist/lib/node/chunk-BGAW4D7O.cjs.map +0 -7
  112. package/dist/lib/node/intent-resolver-HT7A7YJC.cjs.map +0 -7
  113. package/dist/lib/node/react-surface-UW35ICXB.cjs.map +0 -7
  114. package/dist/lib/node-esm/app-graph-builder-RAWYJUPF.mjs +0 -45
  115. package/dist/lib/node-esm/app-graph-builder-RAWYJUPF.mjs.map +0 -7
  116. package/dist/lib/node-esm/chunk-IRS6TBYR.mjs +0 -282
  117. package/dist/lib/node-esm/chunk-IRS6TBYR.mjs.map +0 -7
  118. package/dist/lib/node-esm/intent-resolver-JZLW7ZY3.mjs.map +0 -7
  119. package/dist/lib/node-esm/react-surface-6TPONAIZ.mjs +0 -58
  120. package/dist/lib/node-esm/react-surface-6TPONAIZ.mjs.map +0 -7
  121. package/dist/types/src/components/IdentityDialog.d.ts +0 -5
  122. package/dist/types/src/components/IdentityDialog.d.ts.map +0 -1
  123. package/dist/types/src/components/ManageCredentialsDialog.d.ts +0 -4
  124. package/dist/types/src/components/ManageCredentialsDialog.d.ts.map +0 -1
  125. package/dist/types/src/components/ManageCredentialsDialog.stories.d.ts +0 -8
  126. package/dist/types/src/components/ManageCredentialsDialog.stories.d.ts.map +0 -1
  127. package/dist/types/src/components/RecoverySetupDialog.d.ts +0 -4
  128. package/dist/types/src/components/RecoverySetupDialog.d.ts.map +0 -1
  129. package/dist/types/src/components/RecoverySetupDialog.stories.d.ts +0 -8
  130. package/dist/types/src/components/RecoverySetupDialog.stories.d.ts.map +0 -1
  131. package/src/components/IdentityDialog.tsx +0 -75
  132. package/src/components/ManageCredentialsDialog.tsx +0 -64
  133. package/src/components/RecoverySetupDialog.stories.tsx +0 -77
  134. package/src/components/RecoverySetupDialog.tsx +0 -52
@@ -0,0 +1,119 @@
1
+ import {
2
+ ClientCapabilities
3
+ } from "./chunk-BGY6BSUC.mjs";
4
+ import {
5
+ Account,
6
+ ClientAction
7
+ } from "./chunk-AN7FJKIJ.mjs";
8
+ import {
9
+ CLIENT_PLUGIN
10
+ } from "./chunk-MCEXD5XH.mjs";
11
+
12
+ // packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts
13
+ import { createIntent } from "@dxos/app-framework";
14
+ import { Capabilities, contributes } from "@dxos/app-framework";
15
+ import { createExtension, toSignal } from "@dxos/plugin-graph";
16
+ import { ConnectionState } from "@dxos/react-client/mesh";
17
+ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, createExtension({
18
+ id: CLIENT_PLUGIN,
19
+ filter: (node) => node.id === "root",
20
+ actions: () => [
21
+ {
22
+ id: `${CLIENT_PLUGIN}/open-user-account`,
23
+ data: async () => {
24
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
25
+ await dispatch(createIntent(ClientAction.ShareIdentity));
26
+ },
27
+ properties: {
28
+ label: [
29
+ "open user account label",
30
+ {
31
+ ns: CLIENT_PLUGIN
32
+ }
33
+ ],
34
+ icon: "ph--user--regular",
35
+ keyBinding: {
36
+ macos: "meta+shift+.",
37
+ // TODO(wittjosiah): Test on windows to see if it behaves the same as linux.
38
+ windows: "alt+shift+.",
39
+ linux: "alt+shift+>"
40
+ }
41
+ }
42
+ }
43
+ ],
44
+ connector: () => {
45
+ const client = context.requestCapability(ClientCapabilities.Client);
46
+ const identity = client.halo.identity.get();
47
+ const status = toSignal((onChange) => client.mesh.networkStatus.subscribe(() => onChange()).unsubscribe, () => client.mesh.networkStatus.get());
48
+ return [
49
+ {
50
+ id: Account.id,
51
+ type: CLIENT_PLUGIN,
52
+ properties: {
53
+ label: [
54
+ "account label",
55
+ {
56
+ ns: CLIENT_PLUGIN
57
+ }
58
+ ],
59
+ icon: "ph--user--regular",
60
+ disposition: "user-account",
61
+ // NOTE: This currently needs to be the identity key because the fallback is generated from hex.
62
+ userId: identity?.identityKey.toHex(),
63
+ hue: identity?.profile?.data?.hue,
64
+ emoji: identity?.profile?.data?.emoji,
65
+ status: status?.swarm === ConnectionState.OFFLINE ? "error" : "active"
66
+ },
67
+ nodes: [
68
+ {
69
+ id: Account.Profile,
70
+ data: Account.Profile,
71
+ type: CLIENT_PLUGIN,
72
+ properties: {
73
+ label: [
74
+ "profile label",
75
+ {
76
+ ns: CLIENT_PLUGIN
77
+ }
78
+ ],
79
+ icon: "ph--user--regular"
80
+ }
81
+ },
82
+ {
83
+ id: Account.Devices,
84
+ data: Account.Devices,
85
+ type: CLIENT_PLUGIN,
86
+ properties: {
87
+ label: [
88
+ "devices label",
89
+ {
90
+ ns: CLIENT_PLUGIN
91
+ }
92
+ ],
93
+ icon: "ph--devices--regular",
94
+ testId: "clientPlugin.devices"
95
+ }
96
+ },
97
+ {
98
+ id: Account.Security,
99
+ data: Account.Security,
100
+ type: CLIENT_PLUGIN,
101
+ properties: {
102
+ label: [
103
+ "security label",
104
+ {
105
+ ns: CLIENT_PLUGIN
106
+ }
107
+ ],
108
+ icon: "ph--key--regular"
109
+ }
110
+ }
111
+ ]
112
+ }
113
+ ];
114
+ }
115
+ }));
116
+ export {
117
+ app_graph_builder_default as default
118
+ };
119
+ //# sourceMappingURL=app-graph-builder-WAS4YZNA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { createIntent } from '@dxos/app-framework';\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { createExtension, toSignal, type Node } from '@dxos/plugin-graph';\nimport { ConnectionState } from '@dxos/react-client/mesh';\n\nimport { ClientCapabilities } from './capabilities';\nimport { CLIENT_PLUGIN } from '../meta';\nimport { Account, ClientAction } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(\n Capabilities.AppGraphBuilder,\n createExtension({\n id: CLIENT_PLUGIN,\n filter: (node): node is Node<null> => node.id === 'root',\n actions: () => [\n {\n id: `${CLIENT_PLUGIN}/open-user-account`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(ClientAction.ShareIdentity));\n },\n properties: {\n label: ['open user account label', { ns: CLIENT_PLUGIN }],\n icon: 'ph--user--regular',\n keyBinding: {\n macos: 'meta+shift+.',\n // TODO(wittjosiah): Test on windows to see if it behaves the same as linux.\n windows: 'alt+shift+.',\n linux: 'alt+shift+>',\n },\n },\n },\n ],\n connector: () => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const identity = client.halo.identity.get();\n const status = toSignal(\n (onChange) => client.mesh.networkStatus.subscribe(() => onChange()).unsubscribe,\n () => client.mesh.networkStatus.get(),\n );\n\n return [\n {\n id: Account.id,\n type: CLIENT_PLUGIN,\n properties: {\n label: ['account label', { ns: CLIENT_PLUGIN }],\n icon: 'ph--user--regular',\n disposition: 'user-account',\n // NOTE: This currently needs to be the identity key because the fallback is generated from hex.\n userId: identity?.identityKey.toHex(),\n hue: identity?.profile?.data?.hue,\n emoji: identity?.profile?.data?.emoji,\n status: status?.swarm === ConnectionState.OFFLINE ? 'error' : 'active',\n },\n nodes: [\n {\n id: Account.Profile,\n data: Account.Profile,\n type: CLIENT_PLUGIN,\n properties: {\n label: ['profile label', { ns: CLIENT_PLUGIN }],\n icon: 'ph--user--regular',\n },\n },\n {\n id: Account.Devices,\n data: Account.Devices,\n type: CLIENT_PLUGIN,\n properties: {\n label: ['devices label', { ns: CLIENT_PLUGIN }],\n icon: 'ph--devices--regular',\n testId: 'clientPlugin.devices',\n },\n },\n {\n id: Account.Security,\n data: Account.Security,\n type: CLIENT_PLUGIN,\n properties: {\n label: ['security label', { ns: CLIENT_PLUGIN }],\n icon: 'ph--key--regular',\n },\n },\n ],\n },\n ];\n },\n }),\n );\n"],
5
+ "mappings": ";;;;;;;;;;;;AAIA,SAASA,oBAAoB;AAC7B,SAASC,cAAcC,mBAAwC;AAC/D,SAASC,iBAAiBC,gBAA2B;AACrD,SAASC,uBAAuB;AAMhC,IAAA,4BAAe,CAACC,YACdC,YACEC,aAAaC,iBACbC,gBAAgB;EACdC,IAAIC;EACJC,QAAQ,CAACC,SAA6BA,KAAKH,OAAO;EAClDI,SAAS,MAAM;IACb;MACEJ,IAAI,GAAGC,aAAAA;MACPI,MAAM,YAAA;AACJ,cAAM,EAAEC,iBAAiBC,SAAQ,IAAKZ,QAAQa,kBAAkBX,aAAaY,gBAAgB;AAC7F,cAAMF,SAASG,aAAaC,aAAaC,aAAa,CAAA;MACxD;MACAC,YAAY;QACVC,OAAO;UAAC;UAA2B;YAAEC,IAAId;UAAc;;QACvDe,MAAM;QACNC,YAAY;UACVC,OAAO;;UAEPC,SAAS;UACTC,OAAO;QACT;MACF;IACF;;EAEFC,WAAW,MAAA;AACT,UAAMC,SAAS3B,QAAQa,kBAAkBe,mBAAmBC,MAAM;AAClE,UAAMC,WAAWH,OAAOI,KAAKD,SAASE,IAAG;AACzC,UAAMC,SAASC,SACb,CAACC,aAAaR,OAAOS,KAAKC,cAAcC,UAAU,MAAMH,SAAAA,CAAAA,EAAYI,aACpE,MAAMZ,OAAOS,KAAKC,cAAcL,IAAG,CAAA;AAGrC,WAAO;MACL;QACE3B,IAAImC,QAAQnC;QACZoC,MAAMnC;QACNY,YAAY;UACVC,OAAO;YAAC;YAAiB;cAAEC,IAAId;YAAc;;UAC7Ce,MAAM;UACNqB,aAAa;;UAEbC,QAAQb,UAAUc,YAAYC,MAAAA;UAC9BC,KAAKhB,UAAUiB,SAASrC,MAAMoC;UAC9BE,OAAOlB,UAAUiB,SAASrC,MAAMsC;UAChCf,QAAQA,QAAQgB,UAAUC,gBAAgBC,UAAU,UAAU;QAChE;QACAC,OAAO;UACL;YACE/C,IAAImC,QAAQa;YACZ3C,MAAM8B,QAAQa;YACdZ,MAAMnC;YACNY,YAAY;cACVC,OAAO;gBAAC;gBAAiB;kBAAEC,IAAId;gBAAc;;cAC7Ce,MAAM;YACR;UACF;UACA;YACEhB,IAAImC,QAAQc;YACZ5C,MAAM8B,QAAQc;YACdb,MAAMnC;YACNY,YAAY;cACVC,OAAO;gBAAC;gBAAiB;kBAAEC,IAAId;gBAAc;;cAC7Ce,MAAM;cACNkC,QAAQ;YACV;UACF;UACA;YACElD,IAAImC,QAAQgB;YACZ9C,MAAM8B,QAAQgB;YACdf,MAAMnC;YACNY,YAAY;cACVC,OAAO;gBAAC;gBAAkB;kBAAEC,IAAId;gBAAc;;cAC9Ce,MAAM;YACR;UACF;;MAEJ;;EAEJ;AACF,CAAA,CAAA;",
6
+ "names": ["createIntent", "Capabilities", "contributes", "createExtension", "toSignal", "ConnectionState", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "CLIENT_PLUGIN", "filter", "node", "actions", "data", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "createIntent", "ClientAction", "ShareIdentity", "properties", "label", "ns", "icon", "keyBinding", "macos", "windows", "linux", "connector", "client", "ClientCapabilities", "Client", "identity", "halo", "get", "status", "toSignal", "onChange", "mesh", "networkStatus", "subscribe", "unsubscribe", "Account", "type", "disposition", "userId", "identityKey", "toHex", "hue", "profile", "emoji", "swarm", "ConnectionState", "OFFLINE", "nodes", "Profile", "Devices", "testId", "Security"]
7
+ }
@@ -50,7 +50,7 @@ var ClientAction;
50
50
  ClientAction2.RecoverIdentity = RecoverIdentity;
51
51
  class ResetStorage extends S.TaggedClass()(`${CLIENT_ACTION}/reset-storage`, {
52
52
  input: S.Struct({
53
- target: S.optional(S.String)
53
+ mode: S.optional(S.String)
54
54
  }),
55
55
  output: S.Void
56
56
  }) {
@@ -80,9 +80,26 @@ var ClientAction;
80
80
  }) {
81
81
  }
82
82
  ClientAction2.RedeemPasskey = RedeemPasskey;
83
+ class RedeemToken extends S.TaggedClass()(`${CLIENT_ACTION}/redeem-token`, {
84
+ input: S.Struct({
85
+ token: S.String
86
+ }),
87
+ output: S.Void
88
+ }) {
89
+ }
90
+ ClientAction2.RedeemToken = RedeemToken;
83
91
  })(ClientAction || (ClientAction = {}));
92
+ var Account;
93
+ (function(Account2) {
94
+ const _id = "dxos.org.plugin.client.account";
95
+ Account2.id = `!${_id}`;
96
+ Account2.Profile = `${_id}.profile`;
97
+ Account2.Devices = `${_id}.devices`;
98
+ Account2.Security = `${_id}.security`;
99
+ })(Account || (Account = {}));
84
100
 
85
101
  export {
86
- ClientAction
102
+ ClientAction,
103
+ Account
87
104
  };
88
- //# sourceMappingURL=chunk-VZ5F6WXE.mjs.map
105
+ //# sourceMappingURL=chunk-AN7FJKIJ.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/types.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { type PluginsContext } from '@dxos/app-framework';\nimport { S } from '@dxos/echo-schema';\nimport { type Client, PublicKey, type ClientOptions } from '@dxos/react-client';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { CLIENT_PLUGIN } from './meta';\n\n// TODO(wittjosiah): Factor out. Generate?\nconst IdentitySchema = S.Struct({\n identityKey: S.instanceOf(PublicKey),\n spaceKey: S.optional(S.instanceOf(PublicKey)),\n profile: S.optional(\n S.Struct({\n displayName: S.optional(S.String),\n avatarCid: S.optional(S.String),\n data: S.optional(S.Record({ key: S.String, value: S.Any })),\n }),\n ),\n});\n\nconst CLIENT_ACTION = `${CLIENT_PLUGIN}/action`;\nexport namespace ClientAction {\n export class CreateIdentity extends S.TaggedClass<CreateIdentity>()(`${CLIENT_ACTION}/create-identity`, {\n input: S.Struct({\n displayName: S.optional(S.String),\n }),\n output: IdentitySchema,\n }) {}\n\n export class JoinIdentity extends S.TaggedClass<JoinIdentity>()(`${CLIENT_ACTION}/join-identity`, {\n input: S.Struct({\n invitationCode: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class ShareIdentity extends S.TaggedClass<ShareIdentity>()(`${CLIENT_ACTION}/share-identity`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class RecoverIdentity extends S.TaggedClass<RecoverIdentity>()(`${CLIENT_ACTION}/recover-identity`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class ResetStorage extends S.TaggedClass<ResetStorage>()(`${CLIENT_ACTION}/reset-storage`, {\n input: S.Struct({\n target: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class CreateAgent extends S.TaggedClass<CreateAgent>()(`${CLIENT_ACTION}/create-agent`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class CreateRecoveryCode extends S.TaggedClass<CreateRecoveryCode>()(`${CLIENT_ACTION}/create-recovery-code`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class CreatePasskey extends S.TaggedClass<CreatePasskey>()(`${CLIENT_ACTION}/create-passkey`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class RedeemPasskey extends S.TaggedClass<RedeemPasskey>()(`${CLIENT_ACTION}/redeem-passkey`, {\n input: S.Void,\n output: S.Void,\n }) {}\n}\n\nexport type ClientPluginOptions = ClientOptions & {\n /**\n * Base URL for the invitation link.\n */\n invitationUrl?: string;\n\n /**\n * Query parameter for the invitation code.\n */\n invitationParam?: string;\n\n /**\n * Run after the client has been initialized.\n */\n onClientInitialized?: (context: PluginsContext, client: Client) => MaybePromise<void>;\n\n /**\n * Called when the client is reset.\n */\n onReset?: (params: { target?: string }) => MaybePromise<void>;\n};\n"],
5
- "mappings": ";;;;;AAKA,SAASA,SAAS;AAClB,SAAsBC,iBAAqC;AAM3D,IAAMC,iBAAiBC,EAAEC,OAAO;EAC9BC,aAAaF,EAAEG,WAAWC,SAAAA;EAC1BC,UAAUL,EAAEM,SAASN,EAAEG,WAAWC,SAAAA,CAAAA;EAClCG,SAASP,EAAEM,SACTN,EAAEC,OAAO;IACPO,aAAaR,EAAEM,SAASN,EAAES,MAAM;IAChCC,WAAWV,EAAEM,SAASN,EAAES,MAAM;IAC9BE,MAAMX,EAAEM,SAASN,EAAEY,OAAO;MAAEC,KAAKb,EAAES;MAAQK,OAAOd,EAAEe;IAAI,CAAA,CAAA;EAC1D,CAAA,CAAA;AAEJ,CAAA;AAEA,IAAMC,gBAAgB,GAAGC,aAAAA;;UACRC,eAAAA;EACR,MAAMC,uBAAuBnB,EAAEoB,YAAW,EAAmB,GAAGJ,aAAAA,oBAAiC;IACtGK,OAAOrB,EAAEC,OAAO;MACdO,aAAaR,EAAEM,SAASN,EAAES,MAAM;IAClC,CAAA;IACAa,QAAQvB;EACV,CAAA,EAAA;EAAI;gBALSoB,iBAAAA;EAON,MAAMI,qBAAqBvB,EAAEoB,YAAW,EAAiB,GAAGJ,aAAAA,kBAA+B;IAChGK,OAAOrB,EAAEC,OAAO;MACduB,gBAAgBxB,EAAEM,SAASN,EAAES,MAAM;IACrC,CAAA;IACAa,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBALSF,eAAAA;EAON,MAAMG,sBAAsB1B,EAAEoB,YAAW,EAAkB,GAAGJ,aAAAA,mBAAgC;IACnGK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSC,gBAAAA;EAKN,MAAMC,wBAAwB3B,EAAEoB,YAAW,EAAoB,GAAGJ,aAAAA,qBAAkC;IACzGK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSE,kBAAAA;EAKN,MAAMC,qBAAqB5B,EAAEoB,YAAW,EAAiB,GAAGJ,aAAAA,kBAA+B;IAChGK,OAAOrB,EAAEC,OAAO;MACd4B,QAAQ7B,EAAEM,SAASN,EAAES,MAAM;IAC7B,CAAA;IACAa,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBALSG,eAAAA;EAON,MAAME,oBAAoB9B,EAAEoB,YAAW,EAAgB,GAAGJ,aAAAA,iBAA8B;IAC7FK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSK,cAAAA;EAKN,MAAMC,2BAA2B/B,EAAEoB,YAAW,EAAuB,GAAGJ,aAAAA,yBAAsC;IACnHK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSM,qBAAAA;EAKN,MAAMC,sBAAsBhC,EAAEoB,YAAW,EAAkB,GAAGJ,aAAAA,mBAAgC;IACnGK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSO,gBAAAA;EAKN,MAAMC,sBAAsBjC,EAAEoB,YAAW,EAAkB,GAAGJ,aAAAA,mBAAgC;IACnGK,OAAOrB,EAAEyB;IACTH,QAAQtB,EAAEyB;EACZ,CAAA,EAAA;EAAI;gBAHSQ,gBAAAA;AAIf,GAnDiBf,iBAAAA,eAAAA,CAAAA,EAAAA;",
6
- "names": ["S", "PublicKey", "IdentitySchema", "S", "Struct", "identityKey", "instanceOf", "PublicKey", "spaceKey", "optional", "profile", "displayName", "String", "avatarCid", "data", "Record", "key", "value", "Any", "CLIENT_ACTION", "CLIENT_PLUGIN", "ClientAction", "CreateIdentity", "TaggedClass", "input", "output", "JoinIdentity", "invitationCode", "Void", "ShareIdentity", "RecoverIdentity", "ResetStorage", "target", "CreateAgent", "CreateRecoveryCode", "CreatePasskey", "RedeemPasskey"]
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { type PluginsContext } from '@dxos/app-framework';\nimport { S } from '@dxos/echo-schema';\nimport { type Client, PublicKey, type ClientOptions } from '@dxos/react-client';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { CLIENT_PLUGIN } from './meta';\n\n// TODO(wittjosiah): Factor out. Generate?\nconst IdentitySchema = S.Struct({\n identityKey: S.instanceOf(PublicKey),\n spaceKey: S.optional(S.instanceOf(PublicKey)),\n profile: S.optional(\n S.Struct({\n displayName: S.optional(S.String),\n avatarCid: S.optional(S.String),\n data: S.optional(S.Record({ key: S.String, value: S.Any })),\n }),\n ),\n});\n\nconst CLIENT_ACTION = `${CLIENT_PLUGIN}/action`;\nexport namespace ClientAction {\n export class CreateIdentity extends S.TaggedClass<CreateIdentity>()(`${CLIENT_ACTION}/create-identity`, {\n input: S.Struct({\n displayName: S.optional(S.String),\n }),\n output: IdentitySchema,\n }) {}\n\n export class JoinIdentity extends S.TaggedClass<JoinIdentity>()(`${CLIENT_ACTION}/join-identity`, {\n input: S.Struct({\n invitationCode: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class ShareIdentity extends S.TaggedClass<ShareIdentity>()(`${CLIENT_ACTION}/share-identity`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class RecoverIdentity extends S.TaggedClass<RecoverIdentity>()(`${CLIENT_ACTION}/recover-identity`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class ResetStorage extends S.TaggedClass<ResetStorage>()(`${CLIENT_ACTION}/reset-storage`, {\n input: S.Struct({\n mode: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class CreateAgent extends S.TaggedClass<CreateAgent>()(`${CLIENT_ACTION}/create-agent`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class CreateRecoveryCode extends S.TaggedClass<CreateRecoveryCode>()(`${CLIENT_ACTION}/create-recovery-code`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class CreatePasskey extends S.TaggedClass<CreatePasskey>()(`${CLIENT_ACTION}/create-passkey`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class RedeemPasskey extends S.TaggedClass<RedeemPasskey>()(`${CLIENT_ACTION}/redeem-passkey`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class RedeemToken extends S.TaggedClass<RedeemToken>()(`${CLIENT_ACTION}/redeem-token`, {\n input: S.Struct({\n token: S.String,\n }),\n output: S.Void,\n }) {}\n}\n\nexport type ClientPluginOptions = ClientOptions & {\n /**\n * Base URL for the invitation link.\n */\n invitationUrl?: string;\n\n /**\n * Query parameter for the invitation code.\n */\n invitationParam?: string;\n\n /**\n * Run after the client has been initialized.\n */\n onClientInitialized?: (context: PluginsContext, client: Client) => MaybePromise<void>;\n\n /**\n * Called when the client is reset.\n */\n onReset?: (params: { target?: string }) => MaybePromise<void>;\n};\n\nexport namespace Account {\n // TODO(wittjosiah): Cannot use slashes in ids until we have a router which decouples ids from url paths.\n const _id = 'dxos.org.plugin.client.account';\n // TODO(wittjosiah): This is a hack to prevent the previous deck from being set for pinned items.\n // Ideally this should be worked into the data model in a generic way.\n export const id = `!${_id}`;\n\n export const Profile = `${_id}.profile`;\n export const Devices = `${_id}.devices`;\n export const Security = `${_id}.security`;\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["S", "PublicKey", "IdentitySchema", "S", "Struct", "identityKey", "instanceOf", "PublicKey", "spaceKey", "optional", "profile", "displayName", "String", "avatarCid", "data", "Record", "key", "value", "Any", "CLIENT_ACTION", "CLIENT_PLUGIN", "ClientAction", "CreateIdentity", "TaggedClass", "input", "output", "JoinIdentity", "invitationCode", "Void", "ShareIdentity", "RecoverIdentity", "ResetStorage", "mode", "CreateAgent", "CreateRecoveryCode", "CreatePasskey", "RedeemPasskey", "RedeemToken", "token", "Account", "_id", "id", "Profile", "Devices", "Security"]
7
7
  }