@awiki/dsh-plugin 0.3.7 → 0.3.10

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 (213) hide show
  1. package/README.md +109 -71
  2. package/README.zh.md +89 -61
  3. package/THIRD_PARTY_NOTICES.md +1 -1
  4. package/cordis.patch.yml +6 -5
  5. package/lib/builtin-tenants.json +22 -0
  6. package/lib/builtin-tenants.sha256 +1 -0
  7. package/lib/client.js +7973 -2264
  8. package/lib/client.js.map +1 -1
  9. package/lib/index.js +3481 -1145
  10. package/lib/model-proxy-contract.js +11 -3
  11. package/lib/provider.js +73 -17
  12. package/lib/{sdk-adapter--trNlr-T.mjs → sdk-adapter-CYcJH7sM.mjs} +374 -101
  13. package/lib/typert.host.js +1595 -168
  14. package/lib/typert.remote-client.d.ts +43 -7
  15. package/lib/typert.remote-client.d.ts.map +1 -1
  16. package/lib/typert.remote-client.js +1595 -168
  17. package/lib/types/builtin-tenant-config.d.ts +19 -0
  18. package/lib/types/builtin-tenant-config.d.ts.map +1 -0
  19. package/lib/types/builtin-tenant-config.js +57 -0
  20. package/lib/types/builtin-tenant-config.js.map +1 -0
  21. package/lib/types/client/AwikiDeviceJoinReminder.d.ts +15 -0
  22. package/lib/types/client/AwikiDeviceJoinReminder.d.ts.map +1 -0
  23. package/lib/types/client/AwikiDeviceJoinReminder.js +74 -0
  24. package/lib/types/client/AwikiDeviceJoinReminder.js.map +1 -0
  25. package/lib/types/client/AwikiDevices.d.ts +33 -0
  26. package/lib/types/client/AwikiDevices.d.ts.map +1 -0
  27. package/lib/types/client/AwikiDevices.js +141 -0
  28. package/lib/types/client/AwikiDevices.js.map +1 -0
  29. package/lib/types/client/AwikiGroupDetails.d.ts.map +1 -1
  30. package/lib/types/client/AwikiGroupDetails.js +16 -13
  31. package/lib/types/client/AwikiGroupDetails.js.map +1 -1
  32. package/lib/types/client/AwikiIdentityAccess.d.ts +15 -8
  33. package/lib/types/client/AwikiIdentityAccess.d.ts.map +1 -1
  34. package/lib/types/client/AwikiIdentityAccess.js +203 -39
  35. package/lib/types/client/AwikiIdentityAccess.js.map +1 -1
  36. package/lib/types/client/AwikiIntegrationSettings.d.ts +21 -0
  37. package/lib/types/client/AwikiIntegrationSettings.d.ts.map +1 -0
  38. package/lib/types/client/AwikiIntegrationSettings.js +105 -0
  39. package/lib/types/client/AwikiIntegrationSettings.js.map +1 -0
  40. package/lib/types/client/AwikiMail.d.ts +1 -1
  41. package/lib/types/client/AwikiMail.d.ts.map +1 -1
  42. package/lib/types/client/AwikiMail.js +17 -137
  43. package/lib/types/client/AwikiMail.js.map +1 -1
  44. package/lib/types/client/AwikiOverlay.d.ts +0 -1
  45. package/lib/types/client/AwikiOverlay.d.ts.map +1 -1
  46. package/lib/types/client/AwikiOverlay.js +26 -28
  47. package/lib/types/client/AwikiOverlay.js.map +1 -1
  48. package/lib/types/client/AwikiProfileCard.d.ts.map +1 -1
  49. package/lib/types/client/AwikiProfileCard.js +17 -18
  50. package/lib/types/client/AwikiProfileCard.js.map +1 -1
  51. package/lib/types/client/AwikiRecoveryForm.d.ts +5 -1
  52. package/lib/types/client/AwikiRecoveryForm.d.ts.map +1 -1
  53. package/lib/types/client/AwikiRecoveryForm.js +73 -30
  54. package/lib/types/client/AwikiRecoveryForm.js.map +1 -1
  55. package/lib/types/client/AwikiSettingsSection.d.ts +28 -13
  56. package/lib/types/client/AwikiSettingsSection.d.ts.map +1 -1
  57. package/lib/types/client/AwikiSettingsSection.js +93 -61
  58. package/lib/types/client/AwikiSettingsSection.js.map +1 -1
  59. package/lib/types/client/AwikiUpdates.d.ts +10 -0
  60. package/lib/types/client/AwikiUpdates.d.ts.map +1 -0
  61. package/lib/types/client/AwikiUpdates.js +57 -0
  62. package/lib/types/client/AwikiUpdates.js.map +1 -0
  63. package/lib/types/client/awiki-client-bridge.d.ts +1 -1
  64. package/lib/types/client/awiki-client-bridge.d.ts.map +1 -1
  65. package/lib/types/client/awiki-client-bridge.js +4 -1
  66. package/lib/types/client/awiki-client-bridge.js.map +1 -1
  67. package/lib/types/client/controller.d.ts +84 -44
  68. package/lib/types/client/controller.d.ts.map +1 -1
  69. package/lib/types/client/controller.js +515 -309
  70. package/lib/types/client/controller.js.map +1 -1
  71. package/lib/types/client/drafts.d.ts +31 -0
  72. package/lib/types/client/drafts.d.ts.map +1 -0
  73. package/lib/types/client/drafts.js +94 -0
  74. package/lib/types/client/drafts.js.map +1 -0
  75. package/lib/types/client/image-cache.d.ts +2 -2
  76. package/lib/types/client/image-cache.d.ts.map +1 -1
  77. package/lib/types/client/image-cache.js +15 -2
  78. package/lib/types/client/image-cache.js.map +1 -1
  79. package/lib/types/client/index.d.ts.map +1 -1
  80. package/lib/types/client/index.js +63 -19
  81. package/lib/types/client/index.js.map +1 -1
  82. package/lib/types/client/integration-operation.d.ts +9 -0
  83. package/lib/types/client/integration-operation.d.ts.map +1 -0
  84. package/lib/types/client/integration-operation.js +54 -0
  85. package/lib/types/client/integration-operation.js.map +1 -0
  86. package/lib/types/client/mail-list-cache.d.ts +2 -0
  87. package/lib/types/client/mail-list-cache.d.ts.map +1 -1
  88. package/lib/types/client/mail-list-cache.js +18 -0
  89. package/lib/types/client/mail-list-cache.js.map +1 -1
  90. package/lib/types/client/otp-cooldown.d.ts +6 -0
  91. package/lib/types/client/otp-cooldown.d.ts.map +1 -0
  92. package/lib/types/client/otp-cooldown.js +18 -0
  93. package/lib/types/client/otp-cooldown.js.map +1 -0
  94. package/lib/types/client/settings-controller.d.ts +34 -0
  95. package/lib/types/client/settings-controller.d.ts.map +1 -1
  96. package/lib/types/client/settings-controller.js +182 -2
  97. package/lib/types/client/settings-controller.js.map +1 -1
  98. package/lib/types/client/settings-locales.d.ts +1 -1
  99. package/lib/types/client/settings-locales.d.ts.map +1 -1
  100. package/lib/types/client/settings-locales.js +192 -14
  101. package/lib/types/client/settings-locales.js.map +1 -1
  102. package/lib/types/client/slots.d.ts +20 -10
  103. package/lib/types/client/slots.d.ts.map +1 -1
  104. package/lib/types/client/slots.js +0 -1
  105. package/lib/types/client/slots.js.map +1 -1
  106. package/lib/types/conversation-preferences.d.ts.map +1 -1
  107. package/lib/types/conversation-preferences.js +0 -17
  108. package/lib/types/conversation-preferences.js.map +1 -1
  109. package/lib/types/desktop-distribution.d.ts +25 -0
  110. package/lib/types/desktop-distribution.d.ts.map +1 -0
  111. package/lib/types/desktop-distribution.js +57 -0
  112. package/lib/types/desktop-distribution.js.map +1 -0
  113. package/lib/types/domain.d.ts +1 -1
  114. package/lib/types/domain.d.ts.map +1 -1
  115. package/lib/types/domain.js +2 -1
  116. package/lib/types/domain.js.map +1 -1
  117. package/lib/types/index.d.ts +164 -41
  118. package/lib/types/index.d.ts.map +1 -1
  119. package/lib/types/index.js +1562 -529
  120. package/lib/types/index.js.map +1 -1
  121. package/lib/types/integration-client.d.ts +17 -0
  122. package/lib/types/integration-client.d.ts.map +1 -0
  123. package/lib/types/integration-client.js +233 -0
  124. package/lib/types/integration-client.js.map +1 -0
  125. package/lib/types/legacy-sent-mail-cache.d.ts +4 -0
  126. package/lib/types/legacy-sent-mail-cache.d.ts.map +1 -0
  127. package/lib/types/legacy-sent-mail-cache.js +29 -0
  128. package/lib/types/legacy-sent-mail-cache.js.map +1 -0
  129. package/lib/types/listener-state.d.ts +5 -3
  130. package/lib/types/listener-state.d.ts.map +1 -1
  131. package/lib/types/listener-state.js +28 -13
  132. package/lib/types/listener-state.js.map +1 -1
  133. package/lib/types/listener.d.ts +9 -32
  134. package/lib/types/listener.d.ts.map +1 -1
  135. package/lib/types/listener.js +11 -127
  136. package/lib/types/listener.js.map +1 -1
  137. package/lib/types/mail-list-client.d.ts +12 -0
  138. package/lib/types/mail-list-client.d.ts.map +1 -0
  139. package/lib/types/mail-list-client.js +254 -0
  140. package/lib/types/mail-list-client.js.map +1 -0
  141. package/lib/types/mail-recovery-observability.d.ts +8 -0
  142. package/lib/types/mail-recovery-observability.d.ts.map +1 -0
  143. package/lib/types/mail-recovery-observability.js +119 -0
  144. package/lib/types/mail-recovery-observability.js.map +1 -0
  145. package/lib/types/mail.d.ts +2 -28
  146. package/lib/types/mail.d.ts.map +1 -1
  147. package/lib/types/mail.js +2 -79
  148. package/lib/types/mail.js.map +1 -1
  149. package/lib/types/model-proxy-contract.d.ts.map +1 -1
  150. package/lib/types/model-proxy-contract.js +7 -0
  151. package/lib/types/model-proxy-contract.js.map +1 -1
  152. package/lib/types/package-version.generated.d.ts +4 -0
  153. package/lib/types/package-version.generated.d.ts.map +1 -0
  154. package/lib/types/package-version.generated.js +4 -0
  155. package/lib/types/package-version.generated.js.map +1 -0
  156. package/lib/types/profile-state.d.ts +2 -13
  157. package/lib/types/profile-state.d.ts.map +1 -1
  158. package/lib/types/profile-state.js +3 -20
  159. package/lib/types/profile-state.js.map +1 -1
  160. package/lib/types/provider-api.d.ts +134 -43
  161. package/lib/types/provider-api.d.ts.map +1 -1
  162. package/lib/types/provider.d.ts +8 -2
  163. package/lib/types/provider.d.ts.map +1 -1
  164. package/lib/types/provider.js +76 -16
  165. package/lib/types/provider.js.map +1 -1
  166. package/lib/types/realtime-supervisor.d.ts +60 -0
  167. package/lib/types/realtime-supervisor.d.ts.map +1 -0
  168. package/lib/types/realtime-supervisor.js +255 -0
  169. package/lib/types/realtime-supervisor.js.map +1 -0
  170. package/lib/types/sdk-adapter.d.ts +62 -11
  171. package/lib/types/sdk-adapter.d.ts.map +1 -1
  172. package/lib/types/sdk-adapter.js +285 -123
  173. package/lib/types/sdk-adapter.js.map +1 -1
  174. package/lib/types/settings-rpc-contract.d.ts +58 -0
  175. package/lib/types/settings-rpc-contract.d.ts.map +1 -1
  176. package/lib/types/settings-rpc-contract.js +103 -0
  177. package/lib/types/settings-rpc-contract.js.map +1 -1
  178. package/lib/types/settings-rpc.d.ts +14 -1
  179. package/lib/types/settings-rpc.d.ts.map +1 -1
  180. package/lib/types/settings-rpc.js +130 -1
  181. package/lib/types/settings-rpc.js.map +1 -1
  182. package/lib/types/tenant-registry.d.ts +74 -0
  183. package/lib/types/tenant-registry.d.ts.map +1 -0
  184. package/lib/types/tenant-registry.js +440 -0
  185. package/lib/types/tenant-registry.js.map +1 -0
  186. package/lib/types/tools.d.ts +1 -1
  187. package/lib/types/tools.d.ts.map +1 -1
  188. package/lib/types/tools.js +4 -20
  189. package/lib/types/tools.js.map +1 -1
  190. package/lib/types/types.d.ts +249 -66
  191. package/lib/types/types.d.ts.map +1 -1
  192. package/lib/types/types.js.map +1 -1
  193. package/lib/types/update-policy.d.ts +51 -0
  194. package/lib/types/update-policy.d.ts.map +1 -0
  195. package/lib/types/update-policy.js +379 -0
  196. package/lib/types/update-policy.js.map +1 -0
  197. package/lib/types/version.d.ts +4 -0
  198. package/lib/types/version.d.ts.map +1 -0
  199. package/lib/types/version.js +44 -0
  200. package/lib/types/version.js.map +1 -0
  201. package/package.json +26 -8
  202. package/lib/types/base64.d.ts +0 -4
  203. package/lib/types/base64.d.ts.map +0 -1
  204. package/lib/types/base64.js +0 -28
  205. package/lib/types/base64.js.map +0 -1
  206. package/lib/types/client/mail-attachment.d.ts +0 -40
  207. package/lib/types/client/mail-attachment.d.ts.map +0 -1
  208. package/lib/types/client/mail-attachment.js +0 -187
  209. package/lib/types/client/mail-attachment.js.map +0 -1
  210. package/lib/types/sent-mail-store.d.ts +0 -27
  211. package/lib/types/sent-mail-store.d.ts.map +0 -1
  212. package/lib/types/sent-mail-store.js +0 -348
  213. package/lib/types/sent-mail-store.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useEffect, useState } from 'react';
2
+ import { useDraftState } from "./drafts.js";
3
+ import { useState } from 'react';
3
4
  import { IconCloseOutline16, IconEditOutline16, IconPlusOutline16, IconUserOutline16, Modal, Tooltip, } from '@deepseek-ai/dsh-client-ui-primitives';
4
5
  import css from './AwikiOverlay.module.css';
5
6
  const MAX_DISPLAY_NAME = 50;
@@ -18,24 +19,21 @@ function initialProfile(identity, profile) {
18
19
  }
19
20
  /** Compact public profile with an explicit, bounded editor for all supported fields. */
20
21
  export function AwikiProfileCard(props) {
21
- const [editing, setEditing] = useState(false);
22
- const [displayName, setDisplayName] = useState('');
23
- const [bio, setBio] = useState('');
24
- const [tags, setTags] = useState([]);
25
- const [tagInput, setTagInput] = useState('');
22
+ const [editing, setEditing] = useDraftState('profile:editing', false, false);
23
+ const [draft, setDraft] = useDraftState('profile:fields', null);
24
+ const { displayName, bio, tags, tagInput } = draft ?? { ...initialProfile(props.identity, props.profile), tagInput: '' };
26
25
  const [error, setError] = useState(null);
27
- const reset = () => {
28
- const next = initialProfile(props.identity, props.profile);
29
- setDisplayName(next.displayName);
30
- setBio(next.bio);
31
- setTags(next.tags);
32
- setTagInput('');
33
- setError(null);
26
+ const update = (key, value) => {
27
+ setDraft(previous => {
28
+ const fields = previous ?? { ...initialProfile(props.identity, props.profile), tagInput: '' };
29
+ return { ...fields, [key]: typeof value === 'function' ? value(fields[key]) : value };
30
+ });
34
31
  };
35
- useEffect(() => {
36
- if (!editing)
37
- reset();
38
- }, [editing, props.identity.did, props.identity.displayName, props.profile]);
32
+ const setDisplayName = (value) => update('displayName', value);
33
+ const setBio = (value) => update('bio', value);
34
+ const setTags = (value) => update('tags', value);
35
+ const setTagInput = (value) => update('tagInput', value);
36
+ const reset = () => { setDraft(null); setError(null); };
39
37
  const close = () => {
40
38
  reset();
41
39
  setEditing(false);
@@ -77,9 +75,10 @@ export function AwikiProfileCard(props) {
77
75
  setError(result.error);
78
76
  return;
79
77
  }
78
+ setDraft(null);
80
79
  setEditing(false);
81
80
  };
82
- return (_jsxs(_Fragment, { children: [_jsxs("section", { className: css.identityCard, "aria-label": "AWiki \u4E2A\u4EBA\u8D44\u6599", children: [_jsxs("div", { className: css.identityNameRow, children: [_jsx("span", { className: css.profileAvatar, children: _jsx(IconUserOutline16, { size: 14 }) }), _jsx(Tooltip, { label: props.identity.did, side: "bottom", children: _jsx("strong", { className: css.identityNameText, children: props.profile?.displayName ?? props.identity.displayName ?? '未设置昵称' }) }), _jsx(Tooltip, { label: "\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", side: "right", children: _jsx("button", { type: "button", className: css.identityEdit, "aria-label": "\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", disabled: props.pending, onClick: () => { reset(); setEditing(true); }, children: _jsx(IconEditOutline16, { size: 14 }) }) })] }), _jsx("small", { className: css.identityHandle, children: props.identity.handle }), props.profile?.bio !== undefined && props.profile.bio !== '' && _jsx("p", { className: css.profileBio, children: props.profile.bio }), props.profile !== null && props.profile.tags.length > 0 && (_jsx("div", { className: css.profileTags, "aria-label": "\u4E2A\u4EBA\u6807\u7B7E", children: props.profile.tags.map(tag => _jsx("span", { children: tag }, tag)) })), _jsxs("span", { className: css.identityStatus, children: [_jsx("i", {}), "\u5728\u7EBF"] })] }), _jsx(Modal, { open: editing, onClose: () => { if (!props.pending)
81
+ return (_jsxs(_Fragment, { children: [_jsxs("section", { className: css.identityCard, "aria-label": "AWiki \u4E2A\u4EBA\u8D44\u6599", children: [_jsxs("div", { className: css.identityNameRow, children: [_jsx("span", { className: css.profileAvatar, children: _jsx(IconUserOutline16, { size: 14 }) }), _jsx(Tooltip, { label: props.identity.did, side: "bottom", children: _jsx("strong", { className: css.identityNameText, children: props.profile?.displayName ?? props.identity.displayName ?? '未设置昵称' }) }), _jsx(Tooltip, { label: "\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", side: "right", children: _jsx("button", { type: "button", className: css.identityEdit, "aria-label": "\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", disabled: props.pending, onClick: () => { setEditing(true); }, children: _jsx(IconEditOutline16, { size: 14 }) }) })] }), _jsx("small", { className: css.identityHandle, children: props.identity.handle }), props.profile?.bio !== undefined && props.profile.bio !== '' && _jsx("p", { className: css.profileBio, children: props.profile.bio }), props.profile !== null && props.profile.tags.length > 0 && (_jsx("div", { className: css.profileTags, "aria-label": "\u4E2A\u4EBA\u6807\u7B7E", children: props.profile.tags.map(tag => _jsx("span", { children: tag }, tag)) })), _jsxs("span", { className: css.identityStatus, children: [_jsx("i", {}), "\u5728\u7EBF"] })] }), _jsx(Modal, { open: editing, onClose: () => { if (!props.pending)
83
82
  close(); }, title: "\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", closeLabel: "\u53D6\u6D88\u7F16\u8F91\u4E2A\u4EBA\u8D44\u6599", className: css.compactModal ?? '', contentClassName: css.compactModalContent ?? '', children: _jsxs("form", { className: css.profileEditor, onSubmit: (event) => { event.preventDefault(); void save(); }, children: [_jsx("small", { className: css.identityHandle, children: props.identity.handle }), _jsxs("label", { children: ["\u6635\u79F0", _jsx("input", { "aria-label": "\u6635\u79F0", autoFocus: true, disabled: props.pending, value: displayName, maxLength: MAX_DISPLAY_NAME * 2, onChange: (event) => { setDisplayName(event.target.value); setError(null); } }), _jsxs("small", { children: [length(displayName), "/", MAX_DISPLAY_NAME] })] }), _jsxs("label", { children: ["\u4E2A\u4EBA\u7B80\u4ECB", _jsx("textarea", { "aria-label": "\u4E2A\u4EBA\u7B80\u4ECB", disabled: props.pending, rows: 3, value: bio, onChange: (event) => { setBio(event.target.value); setError(null); } }), _jsxs("small", { children: [length(bio), "/", MAX_BIO] })] }), _jsxs("div", { className: css.profileTagEditor, children: [_jsxs("label", { htmlFor: "awiki-profile-tag", children: ["\u6807\u7B7E ", _jsxs("small", { children: [tags.length, "/", MAX_TAGS] })] }), _jsxs("div", { children: [_jsx("input", { id: "awiki-profile-tag", "aria-label": "\u65B0\u6807\u7B7E", disabled: props.pending || tags.length >= MAX_TAGS, value: tagInput, onChange: (event) => { setTagInput(event.target.value); setError(null); }, onKeyDown: (event) => {
84
83
  if (event.key !== 'Enter' || event.nativeEvent.isComposing)
85
84
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"AwikiProfileCard.js","sourceRoot":"","sources":["../../../src/client/AwikiProfileCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AwikiProfileCard.js","sourceRoot":"","sources":["../../../src/client/AwikiProfileCard.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { AwikiRecoveryOtpRequest, AwikiRecoveryOtpResult, AwikiRecoveryPrepareRequest, AwikiRecoveryProgress } from '@awiki/dsh-plugin/types';
2
2
  import type { AwikiActionResult } from './controller.ts';
3
3
  export interface AwikiRecoveryActions {
4
+ continueRecoveryForHandle?: (handle: string) => Promise<AwikiActionResult<boolean>>;
5
+ enterRecoveredSession?: () => Promise<AwikiActionResult<AwikiRecoveryProgress>>;
4
6
  sendRecoveryOtp: (request: AwikiRecoveryOtpRequest) => Promise<AwikiActionResult<AwikiRecoveryOtpResult>>;
5
7
  prepareRecovery: (request: Omit<AwikiRecoveryPrepareRequest, 'operationId'>) => Promise<AwikiActionResult<AwikiRecoveryProgress>>;
6
8
  activateRecovery: () => Promise<AwikiActionResult<AwikiRecoveryProgress>>;
@@ -12,8 +14,10 @@ export interface AwikiRecoveryFactorContext {
12
14
  readonly fullHandle: string;
13
15
  readonly phone: string;
14
16
  }
15
- /** Status-first Handle recovery. Secret inputs remain inside the mounted form only. */
17
+ /** Status-first Handle recovery. Secret inputs stay in browser memory only. */
16
18
  export declare function AwikiRecoveryForm(props: AwikiRecoveryActions & {
19
+ readonly statusError?: string | null;
20
+ readonly requestError?: string | null;
17
21
  readonly operationId: string | null;
18
22
  readonly progress: AwikiRecoveryProgress | null;
19
23
  readonly pending: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"AwikiRecoveryForm.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiRecoveryForm.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAIxD,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,CAAC,CAAA;IACzG,eAAe,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,aAAa,CAAC,KAAK,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACjI,gBAAgB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACzE,qBAAqB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IAC9E,cAAc,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACvE,eAAe,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAClD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AA+CD,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,GAAG;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI,CAAA;IAC/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;IAC1D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CACrC,+BAsMA"}
1
+ {"version":3,"file":"AwikiRecoveryForm.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiRecoveryForm.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAIxD,MAAM,WAAW,oBAAoB;IACnC,yBAAyB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAA;IACnF,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IAC/E,eAAe,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,CAAC,CAAA;IACzG,eAAe,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,aAAa,CAAC,KAAK,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACjI,gBAAgB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACzE,qBAAqB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IAC9E,cAAc,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACvE,eAAe,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAClD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAgDD,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,GAAG;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI,CAAA;IAC/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;IAC1D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CACrC,+BAuPA"}
@@ -1,5 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useEffect, useRef, useState } from 'react';
2
+ import { useRecoveryOtpCooldown } from "./otp-cooldown.js";
3
+ import { useDraftState } from "./drafts.js";
4
+ import { useEffect, useRef } from 'react';
3
5
  import { IconCheckOutline16, IconLoadingOutline16, IconRefreshOutline16, IconUserOutline16, IconWarningOutline16, } from '@deepseek-ai/dsh-client-ui-primitives';
4
6
  import { AwikiIdentityPage } from "./AwikiIdentityPage.js";
5
7
  import css from './AwikiOverlay.module.css';
@@ -15,7 +17,7 @@ function phaseLabel(phase) {
15
17
  }
16
18
  }
17
19
  function canResume(progress) {
18
- return progress.retryable || ['remote_outcome_unknown', 'remote_committed', 'identity_transition_pending'].includes(progress.phase);
20
+ return progress.allowedActions?.includes('resume') === true;
19
21
  }
20
22
  function maskedPhone(value) {
21
23
  const normalized = value.replace(/[\s()-]/g, '');
@@ -24,53 +26,63 @@ function maskedPhone(value) {
24
26
  return `${normalized.slice(0, 3)}****${normalized.slice(-4)}`;
25
27
  }
26
28
  function progressMessage(progress) {
29
+ if (progress.failureCode === 'local_transition_superseded')
30
+ return '此恢复操作已由更新的身份状态关闭。请返回身份入口重新检查当前身份。';
27
31
  switch (progress.phase) {
28
32
  case 'remote_outcome_unknown': return '恢复请求已经提交,正在确认服务端结果。请不要重新发起恢复。';
29
33
  case 'remote_committed': return '身份已在服务端恢复,正在为当前设备更新本机凭证。';
30
34
  case 'identity_transition_pending': return '身份已在服务端恢复,本机切换尚未完成。请继续完成本机切换。';
31
35
  case 'quarantined_key_unavailable': return '新的本机凭证暂时不可用,请稍后重新检查恢复结果。';
32
36
  case 'applied': return '身份已经恢复完成。';
33
- default: return '正在处理身份恢复,请保持窗口打开。';
37
+ default: return '请根据当前状态继续操作,也可以返回入口稍后处理。';
34
38
  }
35
39
  }
36
40
  function RecoveryDiagnostics(props) {
37
41
  return (_jsxs("details", { className: css.recoveryDiagnostics, children: [_jsx("summary", { children: "\u8BCA\u65AD\u4FE1\u606F" }), _jsxs("dl", { children: [_jsxs("div", { children: [_jsx("dt", { children: "\u6062\u590D\u8BF7\u6C42\u7F16\u53F7" }), _jsx("dd", { children: _jsx("code", { children: props.operationId }) })] }), props.failureCode !== undefined && _jsxs("div", { children: [_jsx("dt", { children: "\u72B6\u6001\u4EE3\u7801" }), _jsx("dd", { children: _jsx("code", { children: props.failureCode }) })] })] })] }));
38
42
  }
39
- /** Status-first Handle recovery. Secret inputs remain inside the mounted form only. */
43
+ /** Status-first Handle recovery. Secret inputs stay in browser memory only. */
40
44
  export function AwikiRecoveryForm(props) {
45
+ const cooldown = useRecoveryOtpCooldown();
41
46
  const handle = useRef(null);
42
47
  const requestPhone = useRef(null);
43
48
  const factorPhone = useRef(null);
44
49
  const otp = useRef(null);
45
- const [commitAttempted, setCommitAttempted] = useState(false);
46
- const [factorContext, setFactorContext] = useState(null);
47
- const [notice, setNotice] = useState(null);
48
- const [error, setError] = useState(null);
49
- const effectiveFactorContext = factorContext ?? props.initialFactorContext ?? null;
50
+ const [handleDraft, setHandleDraft] = useDraftState('recovery:handle', props.fixedHandle ?? '');
51
+ const targetHandle = props.progress?.fullHandle ?? props.fixedHandle ?? props.initialFactorContext?.fullHandle ?? handleDraft;
52
+ const initialContext = props.initialFactorContext?.fullHandle === targetHandle ? props.initialFactorContext : undefined;
53
+ const [phoneDraft, setPhoneDraft] = useDraftState(`recovery:${targetHandle}:phone`, initialContext?.phone ?? '');
54
+ const [otpDraft, setOtpDraft] = useDraftState(`recovery:${props.operationId}:otp`, '');
55
+ const [autoAttempt, setAutoAttempt] = useDraftState(`recovery:${props.operationId}:autoAttempt`, false, false);
56
+ const [commitAttempted, setCommitAttempted] = useDraftState(`recovery:${props.operationId}:commitAttempted`, false, false);
57
+ const [factorContext, setFactorContext] = useDraftState(`recovery:${targetHandle}:factorContext`, null, false);
58
+ const [notice, setNotice] = useDraftState(`recovery:${props.operationId}:notice`, null, false);
59
+ const [error, setError] = useDraftState(`recovery:${props.operationId}:error`, null, false);
60
+ const effectiveFactorContext = factorContext ?? initialContext ?? null;
50
61
  useEffect(() => {
51
- setCommitAttempted(false);
52
62
  setNotice(null);
53
63
  setError(null);
54
64
  }, [props.operationId]);
55
65
  useEffect(() => {
56
66
  const progress = props.progress;
57
67
  if (progress === null
68
+ || !canResume(progress)
58
69
  || progress.phase === 'awaiting_factor'
59
70
  || progress.phase === 'ready_to_commit'
60
71
  || progress.phase === 'applied'
61
72
  || progress.phase === 'quarantined_key_unavailable'
62
73
  || props.pending
74
+ || props.statusError
75
+ || autoAttempt
63
76
  || error !== null)
64
77
  return;
65
78
  const timer = setTimeout(() => {
79
+ setAutoAttempt(true);
66
80
  void (canResume(progress) ? resume() : refresh());
67
81
  }, 900);
68
82
  return () => { clearTimeout(timer); };
69
- }, [error, props.pending, props.progress]);
70
- const requestOtp = async () => {
83
+ }, [error, props.pending, props.progress, props.statusError, autoAttempt]);
84
+ const sendOtp = async (fullHandle, phone) => {
71
85
  setError(null);
72
- const fullHandle = props.fixedHandle?.trim() ?? handle.current?.value.trim() ?? '';
73
- const phone = requestPhone.current?.value.trim() ?? '';
74
86
  const result = await props.sendRecoveryOtp({
75
87
  fullHandle,
76
88
  phone,
@@ -79,19 +91,38 @@ export function AwikiRecoveryForm(props) {
79
91
  setError(result.error);
80
92
  return;
81
93
  }
94
+ cooldown.start(result.value.retryAfterSeconds);
95
+ setOtpDraft('');
82
96
  setFactorContext({ fullHandle: result.value.fullHandle, phone });
83
97
  setNotice('恢复验证码已发送。');
84
98
  };
99
+ const requestOtp = async () => {
100
+ const fullHandle = props.fixedHandle?.trim() ?? handleDraft.trim();
101
+ const phone = phoneDraft.trim();
102
+ const continued = await props.continueRecoveryForHandle?.(fullHandle);
103
+ if (continued !== undefined && !continued.ok)
104
+ return setError(continued.error);
105
+ if (continued?.ok && continued.value)
106
+ return;
107
+ await sendOtp(fullHandle, phone);
108
+ };
109
+ const resendOtp = async () => {
110
+ if (props.progress?.allowedActions?.includes('request_otp') !== true || props.pending)
111
+ return;
112
+ const fullHandle = effectiveFactorContext?.fullHandle ?? props.progress?.fullHandle;
113
+ if (fullHandle === undefined)
114
+ return;
115
+ await sendOtp(fullHandle, effectiveFactorContext?.phone ?? phoneDraft.trim());
116
+ };
85
117
  const prepare = async () => {
118
+ if (props.progress?.allowedActions?.includes('prepare') !== true || props.pending)
119
+ return;
86
120
  setError(null);
87
121
  const result = await props.prepareRecovery({
88
- phone: effectiveFactorContext?.phone ?? factorPhone.current?.value.trim() ?? '',
89
- otp: otp.current?.value.trim() ?? '',
122
+ phone: effectiveFactorContext?.phone ?? phoneDraft.trim(),
123
+ otp: otpDraft.trim(),
90
124
  });
91
- if (factorPhone.current !== null)
92
- factorPhone.current.value = '';
93
- if (otp.current !== null)
94
- otp.current.value = '';
125
+ setOtpDraft('');
95
126
  if (!result.ok) {
96
127
  setError(result.error);
97
128
  return;
@@ -99,6 +130,8 @@ export function AwikiRecoveryForm(props) {
99
130
  setNotice(null);
100
131
  };
101
132
  const activate = async () => {
133
+ if (props.progress?.allowedActions?.includes('activate') !== true || props.pending)
134
+ return;
102
135
  setCommitAttempted(true);
103
136
  setError(null);
104
137
  const result = await props.activateRecovery();
@@ -113,7 +146,7 @@ export function AwikiRecoveryForm(props) {
113
146
  setError(result.error);
114
147
  return;
115
148
  }
116
- if (result.value.phase === 'ready_to_commit')
149
+ if (result.value.allowedActions?.includes('discard_pre_attempt'))
117
150
  setCommitAttempted(false);
118
151
  };
119
152
  const resume = async () => {
@@ -123,30 +156,40 @@ export function AwikiRecoveryForm(props) {
123
156
  setError(result.error);
124
157
  return;
125
158
  }
126
- if (result.value.phase === 'ready_to_commit')
159
+ if (result.value.allowedActions?.includes('discard_pre_attempt'))
127
160
  setCommitAttempted(false);
128
161
  };
129
162
  const discard = async () => {
163
+ if (props.progress?.allowedActions?.includes('discard_pre_attempt') !== true || props.pending)
164
+ return;
130
165
  setError(null);
131
166
  const result = await props.discardRecovery();
132
167
  if (!result.ok) {
133
168
  setError(result.error);
134
169
  return;
135
170
  }
171
+ setHandleDraft('');
172
+ setPhoneDraft('');
173
+ setOtpDraft('');
174
+ setFactorContext(null);
136
175
  props.onExit?.();
137
176
  };
138
177
  if (props.operationId === null) {
139
- return (_jsx(AwikiIdentityPage, { ...props.onExit === undefined ? {} : { onBack: props.onExit }, backLabel: props.onExitLabel ?? '返回本机身份', backDisabled: props.pending, children: _jsxs("form", { className: css.recoveryForm, onSubmit: (event) => { event.preventDefault(); void requestOtp(); }, children: [_jsx("div", { className: css.registrationIcon, children: _jsx(IconUserOutline16, { size: 24 }) }), _jsx("h3", { children: props.requestTitle ?? '恢复已有身份' }), _jsx("p", { children: props.requestDescription ?? '输入原来的完整 Handle 和绑定手机号,我们会发送验证码来确认身份归属。' }), props.fixedHandle === undefined
140
- ? _jsxs("label", { children: ["\u5B8C\u6574 Handle", _jsx("input", { ref: handle, autoComplete: "username", placeholder: "\u4F8B\u5982 alice.awiki.info", autoFocus: true })] })
141
- : (_jsxs("div", { className: css.recoveryIdentitySummary, children: [_jsx("span", { children: "\u5F53\u524D\u8EAB\u4EFD" }), _jsx("strong", { children: props.fixedHandle })] })), _jsxs("label", { children: ["\u7ED1\u5B9A\u624B\u673A\u53F7", _jsx("input", { ref: requestPhone, type: "tel", autoComplete: "tel", autoFocus: props.fixedHandle !== undefined })] }), _jsx("button", { type: "submit", className: css.primary, disabled: props.pending, children: "\u83B7\u53D6\u6062\u590D\u9A8C\u8BC1\u7801" }), error !== null && _jsx("small", { className: css.inlineError, role: "alert", children: error })] }) }));
178
+ return (_jsx(AwikiIdentityPage, { ...props.onExit === undefined ? {} : { onBack: props.onExit }, backLabel: props.onExitLabel ?? '返回身份入口', backDisabled: false, children: _jsxs("form", { className: css.recoveryForm, onSubmit: (event) => { event.preventDefault(); void requestOtp(); }, children: [_jsx("div", { className: css.registrationIcon, children: _jsx(IconUserOutline16, { size: 24 }) }), _jsx("h3", { children: props.requestTitle ?? '恢复已有身份' }), _jsx("p", { children: props.requestDescription ?? '输入原来的完整 Handle 和绑定手机号,我们会发送验证码来确认身份归属。' }), props.fixedHandle === undefined
179
+ ? _jsxs("label", { children: ["\u5B8C\u6574 Handle", _jsx("input", { ref: handle, value: handleDraft, onChange: event => { setHandleDraft(event.target.value); }, autoComplete: "username", placeholder: "\u4F8B\u5982 alice.awiki.info", autoFocus: true })] })
180
+ : (_jsxs("div", { className: css.recoveryIdentitySummary, children: [_jsx("span", { children: "\u5F53\u524D\u8EAB\u4EFD" }), _jsx("strong", { children: props.fixedHandle })] })), _jsxs("label", { children: ["\u7ED1\u5B9A\u624B\u673A\u53F7", _jsx("input", { ref: requestPhone, value: phoneDraft, onChange: event => { setPhoneDraft(event.target.value); }, type: "tel", autoComplete: "tel", autoFocus: props.fixedHandle !== undefined })] }), _jsx("button", { type: "submit", className: css.primary, disabled: props.pending || cooldown.seconds > 0 || phoneDraft.trim() === '', children: "\u83B7\u53D6\u6062\u590D\u9A8C\u8BC1\u7801" }), (error ?? props.requestError) && _jsx("small", { className: css.inlineError, role: "alert", children: error ?? props.requestError })] }) }));
181
+ }
182
+ if (props.progress === null || props.statusError) {
183
+ return _jsx(AwikiIdentityPage, { ...props.onExit === undefined ? {} : { onBack: props.onExit }, backLabel: props.onExitLabel ?? '返回身份入口', children: _jsxs("div", { className: css.recoveryForm, children: [_jsx("h3", { children: "\u786E\u8BA4\u4E0A\u6B21\u6062\u590D\u7684\u8FDB\u5EA6" }), _jsx("p", { children: "\u8BF7\u5148\u786E\u8BA4\u6062\u590D\u72B6\u6001\uFF0C\u65E0\u9700\u91CD\u65B0\u53D1\u8D77\u6062\u590D\u3002" }), _jsx("p", { children: "\u6062\u590D\u8FDB\u5EA6\u5DF2\u4FDD\u7559\u3002\u8FD4\u56DE\u4E0D\u4F1A\u64A4\u9500\u5DF2\u63D0\u4EA4\u7684\u6062\u590D\u3002" }), (error ?? props.statusError) && _jsx("p", { role: "alert", children: error ?? props.statusError }), _jsx("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void refresh(); }, children: "\u91CD\u65B0\u68C0\u67E5\u6062\u590D\u7ED3\u679C" })] }) });
142
184
  }
143
- if (props.progress === null || props.progress.phase === 'awaiting_factor') {
144
- return (_jsx(AwikiIdentityPage, { onBack: () => { void discard(); }, backLabel: "\u53D6\u6D88\u6062\u590D", backDisabled: props.pending || commitAttempted, children: _jsxs("form", { className: css.recoveryForm, onSubmit: (event) => { event.preventDefault(); void prepare(); }, children: [_jsx("div", { className: css.recoveryStatusLine, children: _jsx("span", { children: "\u6062\u590D\u8BF7\u6C42\u5DF2\u521B\u5EFA" }) }), _jsx("h3", { children: "\u9A8C\u8BC1\u8EAB\u4EFD\u5F52\u5C5E" }), _jsx("p", { children: "\u9A8C\u8BC1\u7801\u5DF2\u53D1\u9001\uFF0C\u8BF7\u5B8C\u6210\u9A8C\u8BC1\u540E\u518D\u786E\u8BA4\u662F\u5426\u6062\u590D\u3002" }), _jsxs("div", { className: css.recoveryIdentitySummary, children: [_jsx("span", { children: "\u6062\u590D\u8EAB\u4EFD" }), _jsx("strong", { children: effectiveFactorContext?.fullHandle ?? props.progress?.fullHandle ?? '待确认' }), effectiveFactorContext !== null && _jsxs(_Fragment, { children: [_jsx("span", { children: "\u9A8C\u8BC1\u7801\u5DF2\u53D1\u9001\u81F3" }), _jsx("strong", { children: maskedPhone(effectiveFactorContext.phone) })] })] }), effectiveFactorContext === null && (_jsxs("label", { children: ["\u7ED1\u5B9A\u624B\u673A\u53F7", _jsx("input", { ref: factorPhone, type: "tel", autoComplete: "tel", autoFocus: true })] })), _jsxs("label", { children: ["\u6062\u590D\u9A8C\u8BC1\u7801", _jsx("input", { ref: otp, inputMode: "numeric", autoComplete: "one-time-code", autoFocus: effectiveFactorContext !== null })] }), _jsx("button", { type: "submit", className: css.primary, disabled: props.pending, children: "\u9A8C\u8BC1\u6062\u590D\u4FE1\u606F" }), notice !== null && _jsx("small", { className: css.notice, role: "status", children: notice }), error !== null && _jsx("small", { className: css.inlineError, role: "alert", children: error }), _jsx(RecoveryDiagnostics, { operationId: props.operationId })] }) }));
185
+ if (props.progress.phase === 'awaiting_factor' || (props.progress.allowedActions?.includes('prepare') && !props.progress.allowedActions?.includes('activate'))) {
186
+ return (_jsx(AwikiIdentityPage, { ...props.onExit === undefined ? {} : { onBack: props.onExit }, backLabel: props.onExitLabel ?? '返回身份入口', children: _jsxs("form", { className: css.recoveryForm, onSubmit: (event) => { event.preventDefault(); void prepare(); }, children: [_jsx("div", { className: css.recoveryStatusLine, children: _jsx("span", { children: "\u6062\u590D\u8BF7\u6C42\u5DF2\u521B\u5EFA" }) }), _jsx("h3", { children: "\u9A8C\u8BC1\u8EAB\u4EFD\u5F52\u5C5E" }), _jsx("p", { children: "\u8BF7\u586B\u5199\u6536\u5230\u7684\u9A8C\u8BC1\u7801\u3002\u9A8C\u8BC1\u7801\u8FC7\u671F\u65F6\uFF0C\u53EF\u4EE5\u91CD\u65B0\u83B7\u53D6\u3002" }), _jsxs("div", { className: css.recoveryIdentitySummary, children: [_jsx("span", { children: "\u6062\u590D\u8EAB\u4EFD" }), _jsx("strong", { children: effectiveFactorContext?.fullHandle ?? props.progress?.fullHandle ?? '待确认' }), effectiveFactorContext !== null && _jsxs(_Fragment, { children: [_jsx("span", { children: "\u9A8C\u8BC1\u7801\u5DF2\u53D1\u9001\u81F3" }), _jsx("strong", { children: maskedPhone(effectiveFactorContext.phone) })] })] }), effectiveFactorContext === null && (_jsxs("label", { children: ["\u7ED1\u5B9A\u624B\u673A\u53F7", _jsx("input", { ref: factorPhone, value: phoneDraft, onChange: event => { setPhoneDraft(event.target.value); }, type: "tel", autoComplete: "tel", autoFocus: true })] })), _jsxs("label", { children: ["\u6062\u590D\u9A8C\u8BC1\u7801", _jsx("input", { ref: otp, value: otpDraft, onChange: event => { setOtpDraft(event.target.value); }, inputMode: "numeric", autoComplete: "one-time-code", autoFocus: effectiveFactorContext !== null })] }), _jsx("button", { type: "submit", className: css.primary, disabled: props.pending || !props.progress.allowedActions?.includes('prepare'), children: "\u9A8C\u8BC1\u6062\u590D\u4FE1\u606F" }), (effectiveFactorContext !== null || props.progress.fullHandle !== '') && (_jsx("button", { type: "button", className: css.secondary, disabled: props.pending || !props.progress.allowedActions?.includes('request_otp') || cooldown.seconds > 0 || (effectiveFactorContext === null && phoneDraft.trim() === ''), onClick: () => { void resendOtp(); }, children: cooldown.seconds > 0 ? `${cooldown.seconds} 秒后重新获取恢复验证码` : '重新获取恢复验证码' })), notice !== null && _jsx("small", { className: css.notice, role: "status", children: notice }), error !== null && _jsx("small", { className: css.inlineError, role: "alert", children: error }), props.progress.allowedActions?.includes('discard_pre_attempt') && _jsx("button", { type: "button", className: css.secondary, disabled: props.pending, onClick: () => { void discard(); }, children: "\u53D6\u6D88\u6062\u590D" }), _jsx(RecoveryDiagnostics, { operationId: props.operationId })] }) }));
145
187
  }
146
188
  const progress = props.progress;
147
- const preCommit = progress.phase === 'ready_to_commit' && !commitAttempted;
148
- return (_jsx(AwikiIdentityPage, { ...preCommit ? { onBack: () => { void discard(); }, backLabel: '取消恢复', backDisabled: props.pending } : {}, live: preCommit ? 'off' : 'polite', children: _jsxs("div", { className: css.recoveryForm, children: [_jsx("div", { className: css.recoveryStatusLine, children: _jsx("span", { children: phaseLabel(progress.phase) }) }), _jsx("h3", { children: preCommit ? '确认恢复已有身份' : '身份恢复进度' }), _jsx("p", { className: css.recoveryHandle, children: progress.fullHandle }), _jsxs("div", { className: css.recoveryImpact, children: [_jsxs("p", { "data-tone": progress.localOrdinaryDataWillMigrate ? 'success' : 'neutral', children: [progress.localOrdinaryDataWillMigrate ? _jsx(IconCheckOutline16, { size: 14 }) : _jsx(IconWarningOutline16, { size: 14 }), "\u666E\u901A\u672C\u5730\u4F1A\u8BDD\u6570\u636E", progress.localOrdinaryDataWillMigrate ? '将迁移到恢复后的身份' : '不会迁移'] }), progress.unsupportedE2eeGroupCount > 0 && _jsxs("p", { "data-tone": "neutral", children: [_jsx(IconWarningOutline16, { size: 14 }), "\u6709 ", progress.unsupportedE2eeGroupCount, " \u4E2A\u52A0\u5BC6\u7FA4\u804A\u65E0\u6CD5\u81EA\u52A8\u8FC1\u79FB\u3002"] }), progress.unsupportedDidOnlyGroupCount > 0 && _jsxs("p", { "data-tone": "neutral", children: [_jsx(IconWarningOutline16, { size: 14 }), "\u6709 ", progress.unsupportedDidOnlyGroupCount, " \u4E2A\u4EC5 DID \u7FA4\u804A\u9700\u8981\u624B\u52A8\u5904\u7406\u3002"] })] }), preCommit ? (_jsxs(_Fragment, { children: [_jsx("p", { className: css.recoveryConfirmationCopy, children: "\u786E\u8BA4\u540E\uFF0C\u8FD9\u53F0\u8BBE\u5907\u5C06\u4F7F\u7528\u65B0\u7684\u672C\u673A\u51ED\u8BC1\u3002\u6062\u590D\u5F00\u59CB\u540E\u8BF7\u4FDD\u6301\u7A97\u53E3\u6253\u5F00\uFF0C\u4E0D\u8981\u91CD\u590D\u63D0\u4EA4\u3002" }), _jsx("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void activate(); }, children: "\u786E\u8BA4\u5E76\u6062\u590D\u8EAB\u4EFD" })] })) : (_jsxs("div", { className: css.recoveryProgressPanel, "aria-live": "polite", children: [error === null && progress.phase !== 'quarantined_key_unavailable' && _jsx(IconLoadingOutline16, { size: 18 }), _jsx("p", { children: progressMessage(progress) }), (error !== null || progress.phase === 'quarantined_key_unavailable') && (_jsxs("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void (canResume(progress) ? resume() : refresh()); }, children: [_jsx(IconRefreshOutline16, { size: 14 }), progress.phase === 'identity_transition_pending' || progress.phase === 'remote_committed'
189
+ const preCommit = progress.phase === 'ready_to_commit' && progress.allowedActions?.includes('activate') === true && !commitAttempted;
190
+ return (_jsx(AwikiIdentityPage, { ...props.onExit === undefined ? {} : { onBack: props.onExit }, backLabel: props.onExitLabel ?? '返回身份入口', live: preCommit ? 'off' : 'polite', children: _jsxs("div", { className: css.recoveryForm, children: [_jsx("div", { className: css.recoveryStatusLine, children: _jsx("span", { children: phaseLabel(progress.phase) }) }), _jsx("h3", { children: preCommit ? '确认恢复已有身份' : '身份恢复进度' }), _jsx("p", { className: css.recoveryHandle, children: progress.fullHandle }), _jsx("div", { className: css.recoveryImpact, children: _jsxs("p", { "data-tone": progress.localOrdinaryDataWillMigrate ? 'success' : 'neutral', children: [progress.localOrdinaryDataWillMigrate ? _jsx(IconCheckOutline16, { size: 14 }) : _jsx(IconWarningOutline16, { size: 14 }), "\u666E\u901A\u672C\u5730\u4F1A\u8BDD\u6570\u636E", progress.localOrdinaryDataWillMigrate ? '将迁移到恢复后的身份' : '不会迁移'] }) }), preCommit ? (_jsxs(_Fragment, { children: [_jsx("p", { className: css.recoveryConfirmationCopy, children: "\u786E\u8BA4\u540E\uFF0C\u8FD9\u53F0\u8BBE\u5907\u5C06\u4F7F\u7528\u65B0\u7684\u672C\u673A\u51ED\u8BC1\u3002\u8BF7\u52FF\u91CD\u590D\u63D0\u4EA4\uFF1B\u8FD4\u56DE\u5165\u53E3\u4E0D\u4F1A\u64A4\u9500\u5DF2\u63D0\u4EA4\u7684\u6062\u590D\u3002" }), _jsx("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void activate(); }, children: "\u786E\u8BA4\u5E76\u6062\u590D\u8EAB\u4EFD" })] })) : (_jsxs("div", { className: css.recoveryProgressPanel, "aria-live": "polite", children: [props.pending && _jsx(IconLoadingOutline16, { size: 18 }), _jsx("p", { children: progressMessage(progress) }), _jsx("p", { children: "\u6062\u590D\u8FDB\u5EA6\u5DF2\u4FDD\u7559\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u5165\u53E3\u7A0D\u540E\u7EE7\u7EED\u3002" }), progress.phase === 'applied' && progress.allowedActions?.includes('activate_identity') && _jsx("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void props.enterRecoveredSession?.().then(result => { if (!result.ok)
191
+ setError(result.error); }); }, children: "\u8FDB\u5165 AWiki" }), progress.phase !== 'applied' && (_jsxs("button", { type: "button", className: css.primary, disabled: props.pending, onClick: () => { void (canResume(progress) ? resume() : refresh()); }, children: [_jsx(IconRefreshOutline16, { size: 14 }), canResume(progress) && (progress.phase === 'identity_transition_pending' || progress.phase === 'remote_committed')
149
192
  ? '继续完成本机切换'
150
- : '重新检查恢复结果'] }))] })), error !== null && _jsx("small", { className: css.inlineError, role: "alert", children: error }), _jsx(RecoveryDiagnostics, { operationId: progress.operationId, ...progress.failureCode === undefined ? {} : { failureCode: progress.failureCode } })] }) }));
193
+ : '重新检查恢复结果'] }))] })), progress.allowedActions?.includes('discard_pre_attempt') && _jsx("button", { type: "button", className: css.secondary, disabled: props.pending, onClick: () => { void discard(); }, children: "\u53D6\u6D88\u6062\u590D" }), error !== null && _jsx("small", { className: css.inlineError, role: "alert", children: error }), _jsx(RecoveryDiagnostics, { operationId: progress.operationId, ...progress.failureCode === undefined ? {} : { failureCode: progress.failureCode } })] }) }));
151
194
  }
152
195
  //# sourceMappingURL=AwikiRecoveryForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AwikiRecoveryForm.js","sourceRoot":"","sources":["../../../src/client/AwikiRecoveryForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AwikiRecoveryForm.js","sourceRoot":"","sources":["../../../src/client/AwikiRecoveryForm.tsx"],"names":[],"mappings":"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"}
@@ -1,25 +1,40 @@
1
- /** AWiki identity and installation settings contributed to DSH settings. */
1
+ import { type AwikiDraftStore } from './drafts.tsx';
2
+ /** AWiki tenant, local-data, and optional-integration settings. */
2
3
  import { type ReactNode } from 'react';
3
- import type { SettingsScope, SettingsScopeSnapshot } from '@deepseek-ai/dsh-client-runtime/client';
4
- import type { InjectFace, PropsLocale, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots';
4
+ import type { HostObservable, InjectFace, PropsLocale, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots';
5
+ import type { SettingsScope } from '@deepseek-ai/dsh-client-runtime/client';
5
6
  import type { AwikiSettings } from '../settings.ts';
6
- /** Browser actions and reactive Host-owned AWiki settings state. */
7
- export interface AwikiSettingsInjected {
7
+ import type { AwikiGroupSnapshot, AwikiIntegrationFields, AwikiIntegrationView } from '../types.ts';
8
+ import type { AwikiActionResult, AwikiView } from './controller.ts';
9
+ import type { AwikiTenantScope } from './settings-controller.ts';
10
+ import { type AwikiDevicesProps } from './AwikiDevices.tsx';
11
+ export interface AwikiSettingsInjected extends Omit<AwikiDevicesProps, 'active' | 'pending'> {
12
+ drafts?: AwikiDraftStore;
8
13
  hooks: {
9
- /** Host-backed AWiki settings namespace. */
14
+ awikiTenants: AwikiTenantScope;
10
15
  awikiSettings: SettingsScope<AwikiSettings>;
16
+ awiki: HostObservable<AwikiView>;
11
17
  };
12
- /** Persist a normalized domain. */
18
+ /** Legacy migration setting retained for older browser bundles. */
13
19
  saveDomain: (domain: string) => Promise<void>;
14
- /** Remove the user override and restore the composition default. */
20
+ /** Legacy migration setting retained for older browser bundles. */
15
21
  resetDomain: () => Promise<void>;
16
- /** Permanently remove the Host installation's local AWiki state. */
22
+ createTenant: (displayName: string, domain: string) => Promise<void>;
23
+ renameTenant: (tenantId: string, displayName: string) => Promise<void>;
24
+ switchTenant: (tenantId: string) => Promise<void>;
25
+ archiveTenant: (tenantId: string) => Promise<void>;
26
+ refreshUpdatePolicy: () => Promise<void>;
17
27
  clearLocalData: () => Promise<void>;
28
+ /** Load the shared identity state when settings is opened before the AWiki overlay. */
29
+ loadAwiki: () => Promise<AwikiActionResult>;
30
+ loadIntegration: () => Promise<AwikiActionResult<AwikiIntegrationView | null>>;
31
+ saveIntegration: (fields: AwikiIntegrationFields, current: AwikiIntegrationView | null) => Promise<AwikiActionResult<AwikiIntegrationView>>;
32
+ rotateIntegrationId: (current: AwikiIntegrationView) => Promise<AwikiActionResult<AwikiIntegrationView>>;
33
+ closeIntegration: (current: AwikiIntegrationView) => Promise<AwikiActionResult<AwikiIntegrationView>>;
34
+ reopenIntegration: (fields: AwikiIntegrationFields, current: AwikiIntegrationView) => Promise<AwikiActionResult<AwikiIntegrationView>>;
35
+ listOwnedGroups: () => Promise<AwikiActionResult<readonly AwikiGroupSnapshot[]>>;
36
+ openIntegrationGuide: () => void;
18
37
  }
19
- /** Full composed settings-section props. */
20
38
  export type AwikiSettingsSectionProps = PropsRuntime<'settings.section'> & PropsLocale<'settings.awiki'> & InjectFace<AwikiSettingsInjected>;
21
- declare function hasDomainOverride(snapshot: SettingsScopeSnapshot<AwikiSettings>): boolean;
22
- /** Render only the settings owned by the main AWiki identity and messaging plugin. */
23
39
  export declare function AwikiSettingsSection(props: AwikiSettingsSectionProps): ReactNode;
24
- export { hasDomainOverride };
25
40
  //# sourceMappingURL=AwikiSettingsSection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AwikiSettingsSection.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiSettingsSection.tsx"],"names":[],"mappings":"AAAA,4EAA4E;AAE5E,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAM7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,oEAAoE;AACpE,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE;QACL,4CAA4C;QAC5C,aAAa,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;KAC5C,CAAA;IACD,mCAAmC;IACnC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,oEAAoE;IACpE,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,oEAAoE;IACpE,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACpC;AAED,4CAA4C;AAC5C,MAAM,MAAM,yBAAyB,GACnC,YAAY,CAAC,kBAAkB,CAAC,GAC9B,WAAW,CAAC,gBAAgB,CAAC,GAC7B,UAAU,CAAC,qBAAqB,CAAC,CAAA;AAIrC,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,qBAAqB,CAAC,aAAa,CAAC,GAAG,OAAO,CAKlF;AAED,sFAAsF;AACtF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,SAAS,CAWhF;AAkID,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"AwikiSettingsSection.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiSettingsSection.tsx"],"names":[],"mappings":"AACA,OAAO,EAAqC,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACtF,mEAAmE;AAEnE,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE3E,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC7G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAEnG,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAA4B,MAAM,0BAA0B,CAAA;AAC1F,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAIzE,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC1F,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,KAAK,EAAE;QACL,YAAY,EAAE,gBAAgB,CAAA;QAC9B,aAAa,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;QAC3C,KAAK,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;KACjC,CAAA;IACD,mEAAmE;IACnE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,mEAAmE;IACnE,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpE,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtE,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,mBAAmB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACnC,uFAAuF;IACvF,SAAS,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC3C,eAAe,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC,CAAA;IAC9E,eAAe,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI,KAAK,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAC3I,mBAAmB,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAA;IACxG,gBAAgB,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAA;IACrG,iBAAiB,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAA;IACtI,eAAe,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC,CAAA;IAChF,oBAAoB,EAAE,MAAM,IAAI,CAAA;CACjC;AAED,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,kBAAkB,CAAC,GACpE,WAAW,CAAC,gBAAgB,CAAC,GAC7B,UAAU,CAAC,qBAAqB,CAAC,CAAA;AAKrC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,SAAS,CAEhF"}