@awiki/dsh-plugin 0.3.0-rc.1 → 0.3.0
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.
- package/README.md +17 -16
- package/README.zh.md +15 -11
- package/THIRD_PARTY_NOTICES.md +0 -7
- package/lib/client.js +5572 -8534
- package/lib/client.js.map +1 -1
- package/lib/index.js +373 -36
- package/lib/provider.js +1 -1
- package/lib/{sdk-adapter-DLhLrLI6.mjs → sdk-adapter-BIbsJmRj.mjs} +28 -4
- package/lib/typert.host.js +221 -81
- package/lib/typert.remote-client.d.ts +5 -1
- package/lib/typert.remote-client.d.ts.map +1 -1
- package/lib/typert.remote-client.js +221 -81
- package/lib/types/client/AwikiGroupAccessNotice.d.ts +12 -0
- package/lib/types/client/AwikiGroupAccessNotice.d.ts.map +1 -0
- package/lib/types/client/AwikiGroupAccessNotice.js +31 -0
- package/lib/types/client/AwikiGroupAccessNotice.js.map +1 -0
- package/lib/types/client/AwikiGroupDetails.d.ts +8 -1
- package/lib/types/client/AwikiGroupDetails.d.ts.map +1 -1
- package/lib/types/client/AwikiGroupDetails.js +40 -4
- package/lib/types/client/AwikiGroupDetails.js.map +1 -1
- package/lib/types/client/AwikiIdentityAccess.d.ts +2 -1
- package/lib/types/client/AwikiIdentityAccess.d.ts.map +1 -1
- package/lib/types/client/AwikiIdentityAccess.js +10 -2
- package/lib/types/client/AwikiIdentityAccess.js.map +1 -1
- package/lib/types/client/AwikiMail.d.ts.map +1 -1
- package/lib/types/client/AwikiMail.js +5 -1
- package/lib/types/client/AwikiMail.js.map +1 -1
- package/lib/types/client/AwikiOverlay.d.ts.map +1 -1
- package/lib/types/client/AwikiOverlay.js +72 -11
- package/lib/types/client/AwikiOverlay.js.map +1 -1
- package/lib/types/client/AwikiRecoveryForm.d.ts +3 -0
- package/lib/types/client/AwikiRecoveryForm.d.ts.map +1 -1
- package/lib/types/client/AwikiRecoveryForm.js +10 -6
- package/lib/types/client/AwikiRecoveryForm.js.map +1 -1
- package/lib/types/client/AwikiSettingsSection.d.ts +4 -18
- package/lib/types/client/AwikiSettingsSection.d.ts.map +1 -1
- package/lib/types/client/AwikiSettingsSection.js +7 -271
- package/lib/types/client/AwikiSettingsSection.js.map +1 -1
- package/lib/types/client/awiki-client-bridge.d.ts +18 -0
- package/lib/types/client/awiki-client-bridge.d.ts.map +1 -0
- package/lib/types/client/awiki-client-bridge.js +18 -0
- package/lib/types/client/awiki-client-bridge.js.map +1 -0
- package/lib/types/client/controller.d.ts +38 -2
- package/lib/types/client/controller.d.ts.map +1 -1
- package/lib/types/client/controller.js +473 -47
- package/lib/types/client/controller.js.map +1 -1
- package/lib/types/client/index.d.ts +3 -3
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/index.js +7 -46
- package/lib/types/client/index.js.map +1 -1
- package/lib/types/client/settings-locales.d.ts +2 -5
- package/lib/types/client/settings-locales.d.ts.map +1 -1
- package/lib/types/client/settings-locales.js +3 -183
- package/lib/types/client/settings-locales.js.map +1 -1
- package/lib/types/client/slots.d.ts +6 -0
- package/lib/types/client/slots.d.ts.map +1 -1
- package/lib/types/conversation-preferences.d.ts +20 -0
- package/lib/types/conversation-preferences.d.ts.map +1 -0
- package/lib/types/conversation-preferences.js +294 -0
- package/lib/types/conversation-preferences.js.map +1 -0
- package/lib/types/index.d.ts +6 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +39 -0
- package/lib/types/index.js.map +1 -1
- package/lib/types/sdk-adapter.d.ts.map +1 -1
- package/lib/types/sdk-adapter.js +35 -4
- package/lib/types/sdk-adapter.js.map +1 -1
- package/lib/types/types.d.ts +32 -1
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js.map +1 -1
- package/package.json +57 -55
- package/lib/types/client/AwikiOnboarding.d.ts +0 -22
- package/lib/types/client/AwikiOnboarding.d.ts.map +0 -1
- package/lib/types/client/AwikiOnboarding.js +0 -104
- package/lib/types/client/AwikiOnboarding.js.map +0 -1
- package/lib/types/client/RechargeComingSoonDialog.d.ts +0 -11
- package/lib/types/client/RechargeComingSoonDialog.d.ts.map +0 -1
- package/lib/types/client/RechargeComingSoonDialog.js +0 -8
- package/lib/types/client/RechargeComingSoonDialog.js.map +0 -1
- package/lib/types/client/model-availability-controller.d.ts +0 -27
- package/lib/types/client/model-availability-controller.d.ts.map +0 -1
- package/lib/types/client/model-availability-controller.js +0 -111
- package/lib/types/client/model-availability-controller.js.map +0 -1
- package/lib/types/client/model-proxy-controller.d.ts +0 -45
- package/lib/types/client/model-proxy-controller.d.ts.map +0 -1
- package/lib/types/client/model-proxy-controller.js +0 -306
- package/lib/types/client/model-proxy-controller.js.map +0 -1
- package/lib/types/client/recharge-availability.d.ts +0 -6
- package/lib/types/client/recharge-availability.d.ts.map +0 -1
- package/lib/types/client/recharge-availability.js +0 -6
- package/lib/types/client/recharge-availability.js.map +0 -1
|
@@ -1,97 +1,7 @@
|
|
|
1
|
-
/** Bilingual copy for the AWiki settings
|
|
2
|
-
/** Simplified Chinese dictionary. */
|
|
1
|
+
/** Bilingual copy for the AWiki identity and installation settings page. */
|
|
3
2
|
export const zh = {
|
|
4
3
|
nav: 'AWiki',
|
|
5
|
-
intro: '管理 AWiki
|
|
6
|
-
tabAccount: '账户与充值',
|
|
7
|
-
tabUsage: '用量明细',
|
|
8
|
-
tabAdvanced: '高级设置',
|
|
9
|
-
accountBalance: '账户余额',
|
|
10
|
-
billingMode: '计费模式',
|
|
11
|
-
billingStrict: '正式计费',
|
|
12
|
-
billingBypass: '开发联调',
|
|
13
|
-
billingBypassNotice: '当前为开发联调模式,模型调用不会扣减账户余额。',
|
|
14
|
-
modelStatus: 'AWiki 托管模型',
|
|
15
|
-
statusEnabled: '已启用',
|
|
16
|
-
statusDisabled: '未启用',
|
|
17
|
-
enableModels: '启用 AWiki 托管模型',
|
|
18
|
-
disableModels: '停用 AWiki 托管模型',
|
|
19
|
-
enablingModels: '正在启用…',
|
|
20
|
-
disablingModels: '正在停用…',
|
|
21
|
-
modelsEnabled: 'AWiki 托管模型已启用,默认模型为 DeepSeek V4 Flash。',
|
|
22
|
-
modelsDisabled: 'AWiki 托管模型已停用,并已恢复此前的默认模型。',
|
|
23
|
-
modelActionFailed: '未能更新 AWiki 托管模型状态。',
|
|
24
|
-
insufficientBalanceTitle: '余额不足',
|
|
25
|
-
insufficientBalanceDescription: '充值到账后即可启用 AWiki 托管模型。充值不会自动启用模型或切换当前模型。',
|
|
26
|
-
modelAccessUnavailableTitle: '暂时无法启用',
|
|
27
|
-
modelAccessUnavailable: '当前账户暂不满足模型访问条件,请稍后刷新重试。',
|
|
28
|
-
modelAccountLoading: '正在读取 AWiki 托管模型账户…',
|
|
29
|
-
modelAccountUnavailable: 'AWiki 托管模型账户暂不可用。',
|
|
30
|
-
paymentsUnavailable: '开发环境暂未开放充值。',
|
|
31
|
-
rechargeComingSoonTitle: '充值功能正在开通中',
|
|
32
|
-
rechargeComingSoonDescription: '我们正在完善充值服务,暂时无法创建充值订单,敬请期待。',
|
|
33
|
-
rechargeComingSoonAcknowledge: '知道了',
|
|
34
|
-
rechargeComingSoonClose: '关闭提示',
|
|
35
|
-
rechargeAmount: '充值金额(元)',
|
|
36
|
-
createRecharge: '创建充值',
|
|
37
|
-
creatingRecharge: '正在创建…',
|
|
38
|
-
invalidRechargeAmount: '请输入大于 0 且最多两位小数的金额。',
|
|
39
|
-
rechargeCreated: '充值订单已创建。支付完成后余额会自动刷新,但不会自动启用或切换模型。',
|
|
40
|
-
rechargeFailed: '未能创建充值订单。',
|
|
41
|
-
rechargePaid: '充值已到账。是否启用 AWiki 托管模型仍由你决定。',
|
|
42
|
-
rechargeClosed: '充值订单已关闭。',
|
|
43
|
-
rechargeStatusFailed: '暂时无法刷新充值状态。',
|
|
44
|
-
paymentWindowFailed: '未能打开系统浏览器中的支付页面。',
|
|
45
|
-
paymentQrAlt: '支付宝充值二维码',
|
|
46
|
-
paymentQrHint: '请使用支付宝扫描二维码完成充值。',
|
|
47
|
-
paymentQrFailed: '未能生成支付二维码,请刷新页面后重试。',
|
|
48
|
-
pendingRechargeTitle: '等待完成充值',
|
|
49
|
-
pendingRechargeDescription: '已有一笔 {amount} 的订单等待支付。',
|
|
50
|
-
pendingRechargeLimit: '该订单支付或关闭前不能创建新的充值订单。支付到账后仍需由你明确启用模型。',
|
|
51
|
-
continuePayment: '继续支付',
|
|
52
|
-
changeRechargeAmount: '取消并修改金额',
|
|
53
|
-
cancelRechargeDialogTitle: '取消当前充值订单?',
|
|
54
|
-
cancelRechargeDialogDescription: '当前 {amount} 订单及二维码将立即失效。关闭后可以重新选择充值金额。',
|
|
55
|
-
cancelRechargeWarning: '如果你已经完成支付,请先返回并刷新支付状态。',
|
|
56
|
-
confirmCancelRecharge: '确认取消',
|
|
57
|
-
cancellingRecharge: '正在取消…',
|
|
58
|
-
rechargeCancelled: '订单已取消,现在可以修改充值金额。',
|
|
59
|
-
rechargeCancelFailed: '未能取消充值订单,当前支付入口仍然有效。',
|
|
60
|
-
refreshPaymentStatus: '刷新支付状态',
|
|
61
|
-
refreshingPaymentStatus: '正在刷新…',
|
|
62
|
-
rechargeOrderStatus: '订单状态:{status}',
|
|
63
|
-
orderPending: '等待支付',
|
|
64
|
-
orderPaid: '已支付',
|
|
65
|
-
orderClosed: '已关闭',
|
|
66
|
-
usageLoading: '正在读取模型用量…',
|
|
67
|
-
usageDescription: '最近 100 条模型调用记录。',
|
|
68
|
-
usageDescriptionBypass: '最近 100 条模型调用记录。开发联调模式仍记录 Token,但实际扣费为 0。',
|
|
69
|
-
reloadUsage: '刷新用量',
|
|
70
|
-
usageEmpty: '暂无模型调用记录。',
|
|
71
|
-
usageTokens: 'Token',
|
|
72
|
-
usageCalculated: '计算费用',
|
|
73
|
-
usageCharged: '实际扣费',
|
|
74
|
-
usageNoPrice: '未配置价表',
|
|
75
|
-
onboardingUseApiKey: '使用 API Key',
|
|
76
|
-
onboardingLater: '稍后配置',
|
|
77
|
-
onboardingClose: '关闭首次引导',
|
|
78
|
-
onboardingConnectTitle: '连接 AWiki',
|
|
79
|
-
onboardingIdentityUnavailable: 'AWiki 身份服务暂不可用。',
|
|
80
|
-
onboardingModelTitle: '使用 AWiki 托管模型',
|
|
81
|
-
onboardingRegistrationDescription: '创建或使用当前设备的 AWiki 身份,即可通过 AWiki 托管代理服务访问 DeepSeek 模型。',
|
|
82
|
-
onboardingRestoreTitle: '恢复 AWiki 身份',
|
|
83
|
-
onboardingRestoreDescription: '这台设备保留了一个已退出的 AWiki 身份。恢复后可以继续使用原账户。',
|
|
84
|
-
onboardingRestore: '恢复身份',
|
|
85
|
-
onboardingEnableTitle: '启用 AWiki 托管模型',
|
|
86
|
-
onboardingBypassDescription: '当前为开发联调模式,可直接启用模型,不会扣减账户余额。',
|
|
87
|
-
onboardingStrictDescription: '启用后默认使用 DeepSeek V4 Flash,可随时在模型选择器中切换到 Pro。',
|
|
88
|
-
onboardingInsufficientBalanceDescription: '当前余额不足,需要先充值。充值到账后,你可以再决定是否启用 AWiki 托管模型。',
|
|
89
|
-
onboardingPendingRechargeDescription: '你有一笔充值订单等待支付。完成支付后,再由你明确启用 AWiki 托管模型。',
|
|
90
|
-
goToRecharge: '前往充值',
|
|
91
|
-
identityLoading: '正在读取 AWiki 身份状态…',
|
|
92
|
-
identitySignedOutRequired: '当前 AWiki 身份已退出。恢复这台设备保留的身份后,才能查看账户余额、充值和用量。',
|
|
93
|
-
identityRegistrationRequired: '请先通过 AWiki 面板创建身份,再查看账户余额、充值和用量。',
|
|
94
|
-
identityRestoring: '正在恢复…',
|
|
4
|
+
intro: '管理 AWiki 身份、域名与本地数据设置。',
|
|
95
5
|
domainLabel: '默认域名',
|
|
96
6
|
domainDescription: '输入纯域名,不要包含协议、路径或端口。',
|
|
97
7
|
defaultValue: '默认值:{domain}',
|
|
@@ -121,99 +31,9 @@ export const zh = {
|
|
|
121
31
|
clearFailed: '未能清空本地 AWiki 数据,未完成删除。请重试。',
|
|
122
32
|
cancel: '取消',
|
|
123
33
|
};
|
|
124
|
-
/** English dictionary. */
|
|
125
34
|
export const en = {
|
|
126
35
|
nav: 'AWiki',
|
|
127
|
-
intro: 'Manage
|
|
128
|
-
tabAccount: 'Account & Recharge',
|
|
129
|
-
tabUsage: 'Usage',
|
|
130
|
-
tabAdvanced: 'Advanced',
|
|
131
|
-
accountBalance: 'Account balance',
|
|
132
|
-
billingMode: 'Billing mode',
|
|
133
|
-
billingStrict: 'Production billing',
|
|
134
|
-
billingBypass: 'Development',
|
|
135
|
-
billingBypassNotice: 'Development bypass is active. Model calls do not reduce the account balance.',
|
|
136
|
-
modelStatus: 'AWiki-hosted DeepSeek',
|
|
137
|
-
statusEnabled: 'Enabled',
|
|
138
|
-
statusDisabled: 'Disabled',
|
|
139
|
-
enableModels: 'Enable AWiki-hosted DeepSeek',
|
|
140
|
-
disableModels: 'Disable AWiki-hosted DeepSeek',
|
|
141
|
-
enablingModels: 'Enabling…',
|
|
142
|
-
disablingModels: 'Disabling…',
|
|
143
|
-
modelsEnabled: 'AWiki-hosted DeepSeek is enabled. DeepSeek V4 Flash is now the default.',
|
|
144
|
-
modelsDisabled: 'AWiki-hosted DeepSeek is disabled and the previous default model was restored.',
|
|
145
|
-
modelActionFailed: 'The AWiki-hosted DeepSeek setting could not be updated.',
|
|
146
|
-
insufficientBalanceTitle: 'Insufficient balance',
|
|
147
|
-
insufficientBalanceDescription: 'Recharge the account before enabling AWiki-hosted DeepSeek. Recharge never enables or switches models automatically.',
|
|
148
|
-
modelAccessUnavailableTitle: 'Temporarily unavailable',
|
|
149
|
-
modelAccessUnavailable: 'This account cannot access hosted models right now. Refresh and try again later.',
|
|
150
|
-
modelAccountLoading: 'Loading the AWiki-hosted DeepSeek account…',
|
|
151
|
-
modelAccountUnavailable: 'The AWiki-hosted DeepSeek account is unavailable.',
|
|
152
|
-
paymentsUnavailable: 'Recharge is not available in this development environment.',
|
|
153
|
-
rechargeComingSoonTitle: 'Recharge is coming soon',
|
|
154
|
-
rechargeComingSoonDescription: 'We are preparing the recharge service. New recharge orders are temporarily unavailable. Please stay tuned.',
|
|
155
|
-
rechargeComingSoonAcknowledge: 'Got it',
|
|
156
|
-
rechargeComingSoonClose: 'Close notice',
|
|
157
|
-
rechargeAmount: 'Recharge amount (CNY)',
|
|
158
|
-
createRecharge: 'Create recharge',
|
|
159
|
-
creatingRecharge: 'Creating…',
|
|
160
|
-
invalidRechargeAmount: 'Enter an amount greater than zero with no more than two decimal places.',
|
|
161
|
-
rechargeCreated: 'The recharge order was created. Payment refreshes the balance but never enables or switches models automatically.',
|
|
162
|
-
rechargeFailed: 'The recharge order could not be created.',
|
|
163
|
-
rechargePaid: 'The recharge was credited. You still decide whether to enable AWiki-hosted DeepSeek.',
|
|
164
|
-
rechargeClosed: 'The recharge order was closed.',
|
|
165
|
-
rechargeStatusFailed: 'The recharge status could not be refreshed.',
|
|
166
|
-
paymentWindowFailed: 'The payment page could not be opened in the system browser.',
|
|
167
|
-
paymentQrAlt: 'Alipay recharge QR code',
|
|
168
|
-
paymentQrHint: 'Scan this QR code with Alipay to complete the recharge.',
|
|
169
|
-
paymentQrFailed: 'The payment QR code could not be generated. Refresh the page and try again.',
|
|
170
|
-
pendingRechargeTitle: 'Complete your recharge',
|
|
171
|
-
pendingRechargeDescription: 'A {amount} order is awaiting payment.',
|
|
172
|
-
pendingRechargeLimit: 'A new recharge cannot be created until this order is paid or closed. Payment never enables models automatically.',
|
|
173
|
-
continuePayment: 'Continue payment',
|
|
174
|
-
changeRechargeAmount: 'Cancel and change amount',
|
|
175
|
-
cancelRechargeDialogTitle: 'Cancel this recharge order?',
|
|
176
|
-
cancelRechargeDialogDescription: 'The current {amount} order and payment code will stop working. You can then choose a new amount.',
|
|
177
|
-
cancelRechargeWarning: 'If you have already paid, go back and refresh the payment status first.',
|
|
178
|
-
confirmCancelRecharge: 'Cancel order',
|
|
179
|
-
cancellingRecharge: 'Cancelling…',
|
|
180
|
-
rechargeCancelled: 'The order was cancelled. You can now change the recharge amount.',
|
|
181
|
-
rechargeCancelFailed: 'The recharge order could not be cancelled. Its payment action is still available.',
|
|
182
|
-
refreshPaymentStatus: 'Refresh payment status',
|
|
183
|
-
refreshingPaymentStatus: 'Refreshing…',
|
|
184
|
-
rechargeOrderStatus: 'Order status: {status}',
|
|
185
|
-
orderPending: 'Awaiting payment',
|
|
186
|
-
orderPaid: 'Paid',
|
|
187
|
-
orderClosed: 'Closed',
|
|
188
|
-
usageLoading: 'Loading model usage…',
|
|
189
|
-
usageDescription: 'The latest 100 model calls.',
|
|
190
|
-
usageDescriptionBypass: 'The latest 100 model calls. Development mode records tokens while charging zero.',
|
|
191
|
-
reloadUsage: 'Refresh usage',
|
|
192
|
-
usageEmpty: 'No model usage has been recorded.',
|
|
193
|
-
usageTokens: 'Tokens',
|
|
194
|
-
usageCalculated: 'Calculated',
|
|
195
|
-
usageCharged: 'Charged',
|
|
196
|
-
usageNoPrice: 'No active price',
|
|
197
|
-
onboardingUseApiKey: 'Use an API key',
|
|
198
|
-
onboardingLater: 'Configure later',
|
|
199
|
-
onboardingClose: 'Close onboarding',
|
|
200
|
-
onboardingConnectTitle: 'Connect AWiki',
|
|
201
|
-
onboardingIdentityUnavailable: 'The AWiki identity service is unavailable.',
|
|
202
|
-
onboardingModelTitle: 'Use AWiki-hosted DeepSeek',
|
|
203
|
-
onboardingRegistrationDescription: 'Create or use this device’s AWiki identity to access DeepSeek through AWiki’s hosted proxy service.',
|
|
204
|
-
onboardingRestoreTitle: 'Restore AWiki identity',
|
|
205
|
-
onboardingRestoreDescription: 'This device retains a signed-out AWiki identity. Restore it to continue using the existing account.',
|
|
206
|
-
onboardingRestore: 'Restore identity',
|
|
207
|
-
onboardingEnableTitle: 'Enable AWiki-hosted DeepSeek',
|
|
208
|
-
onboardingBypassDescription: 'Development bypass is active, so models can be enabled without reducing the account balance.',
|
|
209
|
-
onboardingStrictDescription: 'DeepSeek V4 Flash becomes the default. You can switch to Pro from the model selector.',
|
|
210
|
-
onboardingInsufficientBalanceDescription: 'The balance is insufficient. Recharge first, then decide whether to enable AWiki-hosted DeepSeek.',
|
|
211
|
-
onboardingPendingRechargeDescription: 'A recharge order is awaiting payment. After it is paid, you still explicitly choose whether to enable AWiki-hosted DeepSeek.',
|
|
212
|
-
goToRecharge: 'Go to recharge',
|
|
213
|
-
identityLoading: 'Loading the AWiki identity…',
|
|
214
|
-
identitySignedOutRequired: 'The AWiki identity is signed out. Restore the identity retained on this device to view the account, recharge, and usage.',
|
|
215
|
-
identityRegistrationRequired: 'Create an identity from the AWiki panel before viewing the account, recharge, and usage.',
|
|
216
|
-
identityRestoring: 'Restoring…',
|
|
36
|
+
intro: 'Manage AWiki identity, domain, and local data settings.',
|
|
217
37
|
domainLabel: 'Default domain',
|
|
218
38
|
domainDescription: 'Enter a bare domain without a protocol, path, or port.',
|
|
219
39
|
defaultValue: 'Default: {domain}',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-locales.js","sourceRoot":"","sources":["../../../src/client/settings-locales.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"settings-locales.js","sourceRoot":"","sources":["../../../src/client/settings-locales.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAkC5E,MAAM,CAAC,MAAM,EAAE,GAAqC;IAClD,GAAG,EAAE,OAAO;IACZ,KAAK,EAAE,wBAAwB;IAC/B,WAAW,EAAE,MAAM;IACnB,iBAAiB,EAAE,qBAAqB;IACxC,YAAY,EAAE,cAAc;IAC5B,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,MAAM;IACb,aAAa,EAAE,0BAA0B;IACzC,cAAc,EAAE,mDAAmD;IACnE,aAAa,EAAE,uBAAuB;IACtC,UAAU,EAAE,gBAAgB;IAC5B,OAAO,EAAE,gBAAgB;IACzB,WAAW,EAAE,kDAAkD;IAC/D,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,MAAM;IACnB,iBAAiB,EAAE,gDAAgD;IACnE,cAAc,EAAE,eAAe;IAC/B,gBAAgB,EAAE,iBAAiB;IACnC,sBAAsB,EAAE,6BAA6B;IACrD,UAAU,EAAE,uCAAuC;IACnD,iBAAiB,EAAE,wFAAwF;IAC3G,sBAAsB,EAAE,mBAAmB;IAC3C,uBAAuB,EAAE,MAAM;IAC/B,YAAY,EAAE,MAAM;IACpB,QAAQ,EAAE,OAAO;IACjB,cAAc,EAAE,qDAAqD;IACrE,WAAW,EAAE,4BAA4B;IACzC,MAAM,EAAE,IAAI;CACb,CAAA;AAED,MAAM,CAAC,MAAM,EAAE,GAAqC;IAClD,GAAG,EAAE,OAAO;IACZ,KAAK,EAAE,yDAAyD;IAChE,WAAW,EAAE,gBAAgB;IAC7B,iBAAiB,EAAE,wDAAwD;IAC3E,YAAY,EAAE,mBAAmB;IACjC,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,iBAAiB;IACxB,KAAK,EAAE,QAAQ;IACf,aAAa,EAAE,yDAAyD;IACxE,cAAc,EAAE,+GAA+G;IAC/H,aAAa,EAAE,yCAAyC;IACxD,UAAU,EAAE,wDAAwD;IACpE,OAAO,EAAE,yBAAyB;IAClC,WAAW,EAAE,oGAAoG;IACjH,QAAQ,EAAE,qCAAqC;IAC/C,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,+IAA+I;IAClK,cAAc,EAAE,wBAAwB;IACxC,gBAAgB,EAAE,yBAAyB;IAC3C,sBAAsB,EAAE,8FAA8F;IACtH,UAAU,EAAE,iIAAiI;IAC7I,iBAAiB,EAAE,6PAA6P;IAChR,sBAAsB,EAAE,6BAA6B;IACrD,uBAAuB,EAAE,mBAAmB;IAC5C,YAAY,EAAE,mBAAmB;IACjC,QAAQ,EAAE,WAAW;IACrB,cAAc,EAAE,oJAAoJ;IACpK,WAAW,EAAE,8EAA8E;IAC3F,MAAM,EAAE,QAAQ;CACjB,CAAA"}
|
|
@@ -38,6 +38,12 @@ export interface AwikiInjected {
|
|
|
38
38
|
loadMoreConversations: () => Promise<AwikiActionResult>;
|
|
39
39
|
/** Retry Core-owned migration for old groups restored after Handle recovery. */
|
|
40
40
|
retryGroupRebindRecovery: () => Promise<AwikiActionResult<AwikiGroupRebindRecoverySummary>>;
|
|
41
|
+
/** Hide only the current recovery-summary revision. */
|
|
42
|
+
dismissGroupRecoveryNotice: () => Promise<AwikiActionResult>;
|
|
43
|
+
/** Remove one conversation from this installation's recent roster. */
|
|
44
|
+
hideConversation: (conversationId: AwikiConversationId) => Promise<AwikiActionResult>;
|
|
45
|
+
/** Restore one locally hidden conversation. */
|
|
46
|
+
restoreConversation: (conversationId: AwikiConversationId) => Promise<AwikiActionResult>;
|
|
41
47
|
/**
|
|
42
48
|
* Open an existing direct conversation or a local draft for one Handle.
|
|
43
49
|
* @param handle - peer Handle or DID typed by the user.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../../src/client/slots.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../../src/client/slots.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AwikiConversationPreferenceMutation, AwikiConversationPreferences, AwikiDid } from './types.ts';
|
|
2
|
+
/** Validate one browser mutation before entering private Host persistence. */
|
|
3
|
+
export declare function normalizeConversationPreferenceMutation(value: unknown): AwikiConversationPreferenceMutation | undefined;
|
|
4
|
+
/** Atomic identity-scoped product preferences, independent of Core membership and history. */
|
|
5
|
+
export declare class AwikiConversationPreferenceStore {
|
|
6
|
+
private readonly hostDirectory;
|
|
7
|
+
private readonly directory;
|
|
8
|
+
private mutation;
|
|
9
|
+
constructor(stateRoot: string);
|
|
10
|
+
get(ownerDid: AwikiDid): Promise<AwikiConversationPreferences>;
|
|
11
|
+
update(ownerDid: AwikiDid, request: AwikiConversationPreferenceMutation): Promise<AwikiConversationPreferences>;
|
|
12
|
+
clear(): Promise<void>;
|
|
13
|
+
private load;
|
|
14
|
+
private write;
|
|
15
|
+
private ensureDirectory;
|
|
16
|
+
private hasDirectory;
|
|
17
|
+
private path;
|
|
18
|
+
private key;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=conversation-preferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-preferences.d.ts","sourceRoot":"","sources":["../../src/conversation-preferences.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAGV,mCAAmC,EACnC,4BAA4B,EAC5B,QAAQ,EAGT,MAAM,YAAY,CAAA;AAyInB,8EAA8E;AAC9E,wBAAgB,uCAAuC,CACrD,KAAK,EAAE,OAAO,GACb,mCAAmC,GAAG,SAAS,CAoBjD;AAED,8FAA8F;AAC9F,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAmC;gBAEhC,SAAS,EAAE,MAAM;IAKvB,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAKpE,MAAM,CACX,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC,4BAA4B,CAAC;IAsC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAerB,IAAI;YAkBJ,KAAK;YAgBL,eAAe;YAWf,YAAY;IAW1B,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,GAAG;CAGZ"}
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
import { createHash, randomUUID } from 'node:crypto';
|
|
2
|
+
import { chmod, lstat, mkdir, readFile, rm, rename, unlink, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
const STORE_VERSION = 1;
|
|
5
|
+
const STORE_DIRECTORY = 'conversation-preferences';
|
|
6
|
+
const MAX_STORE_BYTES = 2 * 1024 * 1024;
|
|
7
|
+
const MAX_HIDDEN_CONVERSATIONS = 500;
|
|
8
|
+
const MAX_IDENTIFIER_CHARACTERS = 2_048;
|
|
9
|
+
const MAX_TITLE_CHARACTERS = 1_024;
|
|
10
|
+
const MAX_PREVIEW_CHARACTERS = 4_096;
|
|
11
|
+
const MAX_HANDLE_CHARACTERS = 512;
|
|
12
|
+
const MAX_RECOVERY_SIGNATURE_CHARACTERS = 128;
|
|
13
|
+
function invalidState() {
|
|
14
|
+
throw new TypeError('awiki: conversation preferences are invalid');
|
|
15
|
+
}
|
|
16
|
+
function isMissing(error) {
|
|
17
|
+
return typeof error === 'object' && error !== null && 'code' in error && error.code === 'ENOENT';
|
|
18
|
+
}
|
|
19
|
+
function isFileExists(error) {
|
|
20
|
+
return typeof error === 'object' && error !== null && 'code' in error && error.code === 'EEXIST';
|
|
21
|
+
}
|
|
22
|
+
function isRecord(value) {
|
|
23
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
24
|
+
}
|
|
25
|
+
function boundedString(value, maximum) {
|
|
26
|
+
if (typeof value !== 'string' || value.length === 0 || value.length > maximum * 2)
|
|
27
|
+
invalidState();
|
|
28
|
+
if (Array.from(value).length > maximum)
|
|
29
|
+
invalidState();
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
function optionalString(value, maximum) {
|
|
33
|
+
return value === undefined ? undefined : boundedString(value, maximum);
|
|
34
|
+
}
|
|
35
|
+
function optionalCount(value) {
|
|
36
|
+
if (value === undefined)
|
|
37
|
+
return undefined;
|
|
38
|
+
if (!Number.isSafeInteger(value) || value < 0 || value > 0xffff_ffff)
|
|
39
|
+
invalidState();
|
|
40
|
+
return value;
|
|
41
|
+
}
|
|
42
|
+
function optionalTimestamp(value) {
|
|
43
|
+
if (value === undefined)
|
|
44
|
+
return undefined;
|
|
45
|
+
if (!Number.isSafeInteger(value) || value < 0)
|
|
46
|
+
invalidState();
|
|
47
|
+
return value;
|
|
48
|
+
}
|
|
49
|
+
/** Rebuild a bounded display-only snapshot before it reaches private persistence. */
|
|
50
|
+
function conversation(value) {
|
|
51
|
+
if (!isRecord(value))
|
|
52
|
+
invalidState();
|
|
53
|
+
const kind = value.kind;
|
|
54
|
+
const id = boundedString(value.id, MAX_IDENTIFIER_CHARACTERS);
|
|
55
|
+
const title = boundedString(value.title, MAX_TITLE_CHARACTERS);
|
|
56
|
+
const unreadCount = optionalCount(value.unreadCount);
|
|
57
|
+
const lastMessageAt = optionalTimestamp(value.lastMessageAt);
|
|
58
|
+
const lastMessagePreview = optionalString(value.lastMessagePreview, MAX_PREVIEW_CHARACTERS);
|
|
59
|
+
const common = {
|
|
60
|
+
id,
|
|
61
|
+
title,
|
|
62
|
+
...(unreadCount === undefined ? {} : { unreadCount }),
|
|
63
|
+
...(lastMessageAt === undefined ? {} : { lastMessageAt }),
|
|
64
|
+
...(lastMessagePreview === undefined ? {} : { lastMessagePreview }),
|
|
65
|
+
};
|
|
66
|
+
if (kind === 'direct') {
|
|
67
|
+
const peerDid = boundedString(value.peerDid, MAX_IDENTIFIER_CHARACTERS);
|
|
68
|
+
if (!peerDid.startsWith('did:'))
|
|
69
|
+
invalidState();
|
|
70
|
+
const peerHandle = optionalString(value.peerHandle, MAX_HANDLE_CHARACTERS);
|
|
71
|
+
const displayName = optionalString(value.displayName, MAX_TITLE_CHARACTERS);
|
|
72
|
+
return {
|
|
73
|
+
kind,
|
|
74
|
+
...common,
|
|
75
|
+
peerDid: peerDid,
|
|
76
|
+
...(peerHandle === undefined ? {} : { peerHandle: peerHandle }),
|
|
77
|
+
...(displayName === undefined ? {} : { displayName }),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
if (kind === 'group') {
|
|
81
|
+
const groupDid = boundedString(value.groupDid, MAX_IDENTIFIER_CHARACTERS);
|
|
82
|
+
if (!groupDid.startsWith('did:'))
|
|
83
|
+
invalidState();
|
|
84
|
+
return { kind, ...common, groupDid: groupDid };
|
|
85
|
+
}
|
|
86
|
+
invalidState();
|
|
87
|
+
}
|
|
88
|
+
function hiddenPreference(value) {
|
|
89
|
+
if (!isRecord(value) || !Number.isSafeInteger(value.hiddenAt) || value.hiddenAt < 0)
|
|
90
|
+
invalidState();
|
|
91
|
+
return { conversation: conversation(value.conversation), hiddenAt: value.hiddenAt };
|
|
92
|
+
}
|
|
93
|
+
function preferences(value, expectedOwnerDid) {
|
|
94
|
+
if (!isRecord(value)
|
|
95
|
+
|| value.version !== STORE_VERSION
|
|
96
|
+
|| value.ownerDid !== String(expectedOwnerDid)
|
|
97
|
+
|| !Array.isArray(value.hiddenConversations)
|
|
98
|
+
|| value.hiddenConversations.length > MAX_HIDDEN_CONVERSATIONS)
|
|
99
|
+
invalidState();
|
|
100
|
+
const hiddenConversations = value.hiddenConversations.map(hiddenPreference);
|
|
101
|
+
const seen = new Set();
|
|
102
|
+
for (const hidden of hiddenConversations) {
|
|
103
|
+
if (seen.has(hidden.conversation.id))
|
|
104
|
+
invalidState();
|
|
105
|
+
seen.add(hidden.conversation.id);
|
|
106
|
+
}
|
|
107
|
+
const dismissedGroupRecoverySignature = optionalString(value.dismissedGroupRecoverySignature, MAX_RECOVERY_SIGNATURE_CHARACTERS);
|
|
108
|
+
return {
|
|
109
|
+
version: STORE_VERSION,
|
|
110
|
+
ownerDid: String(expectedOwnerDid),
|
|
111
|
+
hiddenConversations,
|
|
112
|
+
...(dismissedGroupRecoverySignature === undefined ? {} : { dismissedGroupRecoverySignature }),
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
function publicPreferences(value) {
|
|
116
|
+
return {
|
|
117
|
+
hiddenConversations: value.hiddenConversations.map(hidden => ({
|
|
118
|
+
conversation: { ...hidden.conversation },
|
|
119
|
+
hiddenAt: hidden.hiddenAt,
|
|
120
|
+
})),
|
|
121
|
+
...(value.dismissedGroupRecoverySignature === undefined
|
|
122
|
+
? {}
|
|
123
|
+
: { dismissedGroupRecoverySignature: value.dismissedGroupRecoverySignature }),
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
function emptyPreferences(ownerDid) {
|
|
127
|
+
return { version: STORE_VERSION, ownerDid: String(ownerDid), hiddenConversations: [] };
|
|
128
|
+
}
|
|
129
|
+
/** Validate one browser mutation before entering private Host persistence. */
|
|
130
|
+
export function normalizeConversationPreferenceMutation(value) {
|
|
131
|
+
try {
|
|
132
|
+
if (!isRecord(value))
|
|
133
|
+
return undefined;
|
|
134
|
+
if (value.action === 'hide')
|
|
135
|
+
return { action: 'hide', conversation: conversation(value.conversation) };
|
|
136
|
+
if (value.action === 'restore') {
|
|
137
|
+
return {
|
|
138
|
+
action: 'restore',
|
|
139
|
+
conversationId: boundedString(value.conversationId, MAX_IDENTIFIER_CHARACTERS),
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
if (value.action === 'dismiss-group-recovery') {
|
|
143
|
+
return {
|
|
144
|
+
action: 'dismiss-group-recovery',
|
|
145
|
+
signature: boundedString(value.signature, MAX_RECOVERY_SIGNATURE_CHARACTERS),
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
return undefined;
|
|
151
|
+
}
|
|
152
|
+
return undefined;
|
|
153
|
+
}
|
|
154
|
+
/** Atomic identity-scoped product preferences, independent of Core membership and history. */
|
|
155
|
+
export class AwikiConversationPreferenceStore {
|
|
156
|
+
hostDirectory;
|
|
157
|
+
directory;
|
|
158
|
+
mutation = Promise.resolve();
|
|
159
|
+
constructor(stateRoot) {
|
|
160
|
+
this.hostDirectory = join(stateRoot, '.host');
|
|
161
|
+
this.directory = join(this.hostDirectory, STORE_DIRECTORY);
|
|
162
|
+
}
|
|
163
|
+
async get(ownerDid) {
|
|
164
|
+
await this.mutation;
|
|
165
|
+
return publicPreferences(await this.load(ownerDid));
|
|
166
|
+
}
|
|
167
|
+
update(ownerDid, request) {
|
|
168
|
+
const mutate = async () => {
|
|
169
|
+
const normalized = normalizeConversationPreferenceMutation(request);
|
|
170
|
+
if (normalized === undefined)
|
|
171
|
+
invalidState();
|
|
172
|
+
const current = await this.load(ownerDid);
|
|
173
|
+
let next;
|
|
174
|
+
switch (normalized.action) {
|
|
175
|
+
case 'hide': {
|
|
176
|
+
const snapshot = normalized.conversation;
|
|
177
|
+
const hidden = current.hiddenConversations.filter(item => item.conversation.id !== snapshot.id);
|
|
178
|
+
hidden.unshift({ conversation: snapshot, hiddenAt: Date.now() });
|
|
179
|
+
next = { ...current, hiddenConversations: hidden.slice(0, MAX_HIDDEN_CONVERSATIONS) };
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
case 'restore': {
|
|
183
|
+
const conversationId = normalized.conversationId;
|
|
184
|
+
next = {
|
|
185
|
+
...current,
|
|
186
|
+
hiddenConversations: current.hiddenConversations.filter(item => item.conversation.id !== conversationId),
|
|
187
|
+
};
|
|
188
|
+
break;
|
|
189
|
+
}
|
|
190
|
+
case 'dismiss-group-recovery': {
|
|
191
|
+
const signature = normalized.signature;
|
|
192
|
+
next = { ...current, dismissedGroupRecoverySignature: signature };
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
default:
|
|
196
|
+
invalidState();
|
|
197
|
+
}
|
|
198
|
+
await this.write(ownerDid, next);
|
|
199
|
+
return publicPreferences(next);
|
|
200
|
+
};
|
|
201
|
+
const pending = this.mutation.then(mutate, mutate);
|
|
202
|
+
this.mutation = pending.then(() => undefined, () => undefined);
|
|
203
|
+
return pending;
|
|
204
|
+
}
|
|
205
|
+
async clear() {
|
|
206
|
+
await this.mutation;
|
|
207
|
+
try {
|
|
208
|
+
if (!(await this.hasDirectory(this.hostDirectory)))
|
|
209
|
+
return;
|
|
210
|
+
const metadata = await lstat(this.directory);
|
|
211
|
+
if (metadata.isSymbolicLink() || !metadata.isDirectory()) {
|
|
212
|
+
await unlink(this.directory);
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
await rm(this.directory, { recursive: true, force: true });
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
if (!isMissing(error))
|
|
219
|
+
throw error;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
async load(ownerDid) {
|
|
223
|
+
if (!(await this.hasDirectory(this.hostDirectory)) || !(await this.hasDirectory(this.directory))) {
|
|
224
|
+
return emptyPreferences(ownerDid);
|
|
225
|
+
}
|
|
226
|
+
const path = this.path(ownerDid);
|
|
227
|
+
try {
|
|
228
|
+
const metadata = await lstat(path);
|
|
229
|
+
if (!metadata.isFile() || metadata.isSymbolicLink() || metadata.size > MAX_STORE_BYTES)
|
|
230
|
+
invalidState();
|
|
231
|
+
const text = await readFile(path, 'utf8');
|
|
232
|
+
if (Buffer.byteLength(text, 'utf8') > MAX_STORE_BYTES)
|
|
233
|
+
invalidState();
|
|
234
|
+
return preferences(JSON.parse(text), ownerDid);
|
|
235
|
+
}
|
|
236
|
+
catch (error) {
|
|
237
|
+
if (isMissing(error))
|
|
238
|
+
return emptyPreferences(ownerDid);
|
|
239
|
+
if (error instanceof SyntaxError)
|
|
240
|
+
invalidState();
|
|
241
|
+
throw error;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
async write(ownerDid, value) {
|
|
245
|
+
const snapshot = preferences(value, ownerDid);
|
|
246
|
+
const text = `${JSON.stringify(snapshot)}\n`;
|
|
247
|
+
if (Buffer.byteLength(text, 'utf8') > MAX_STORE_BYTES)
|
|
248
|
+
invalidState();
|
|
249
|
+
await this.ensureDirectory();
|
|
250
|
+
const path = this.path(ownerDid);
|
|
251
|
+
const temporary = join(this.directory, `.${this.key(ownerDid)}.${randomUUID()}.tmp`);
|
|
252
|
+
try {
|
|
253
|
+
await writeFile(temporary, text, { flag: 'wx', mode: 0o600 });
|
|
254
|
+
await rename(temporary, path);
|
|
255
|
+
await chmod(path, 0o600);
|
|
256
|
+
}
|
|
257
|
+
finally {
|
|
258
|
+
await unlink(temporary).catch(() => undefined);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
async ensureDirectory() {
|
|
262
|
+
await mkdir(this.hostDirectory, { recursive: true, mode: 0o700 });
|
|
263
|
+
if (!(await this.hasDirectory(this.hostDirectory)))
|
|
264
|
+
invalidState();
|
|
265
|
+
await chmod(this.hostDirectory, 0o700);
|
|
266
|
+
await mkdir(this.directory, { mode: 0o700 }).catch((error) => {
|
|
267
|
+
if (!isFileExists(error))
|
|
268
|
+
throw error;
|
|
269
|
+
});
|
|
270
|
+
if (!(await this.hasDirectory(this.directory)))
|
|
271
|
+
invalidState();
|
|
272
|
+
await chmod(this.directory, 0o700);
|
|
273
|
+
}
|
|
274
|
+
async hasDirectory(path) {
|
|
275
|
+
try {
|
|
276
|
+
const metadata = await lstat(path);
|
|
277
|
+
if (!metadata.isDirectory() || metadata.isSymbolicLink())
|
|
278
|
+
invalidState();
|
|
279
|
+
return true;
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
if (isMissing(error))
|
|
283
|
+
return false;
|
|
284
|
+
throw error;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
path(ownerDid) {
|
|
288
|
+
return join(this.directory, `${this.key(ownerDid)}.json`);
|
|
289
|
+
}
|
|
290
|
+
key(ownerDid) {
|
|
291
|
+
return createHash('sha256').update(String(ownerDid)).digest('hex');
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
//# sourceMappingURL=conversation-preferences.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-preferences.js","sourceRoot":"","sources":["../../src/conversation-preferences.ts"],"names":[],"mappings":"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"}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { Context } from '@deepseek-ai/cordis';
|
|
3
3
|
import z from '@deepseek-ai/schemastery';
|
|
4
4
|
import { TypertRemoteService } from '@deepseek-ai/dsh-typert-protocol';
|
|
5
|
-
import type { AwikiClearLocalDataRequest, AwikiClearLocalDataResult, AwikiCompletion, AwikiConversation, AwikiConversationSummary, AwikiCreateGroupRequest, AwikiCreateGroupResult, AwikiDownloadAttachmentRequest, AwikiDownloadedAttachment, AwikiGroupMember, AwikiGroupMemberPage, AwikiGroupRebindRecoverySummary, AwikiGroupMembersRequest, AwikiGroupRequest, AwikiGroupSnapshot, AwikiAddGroupMemberRequest, AwikiRemoveGroupMemberRequest, AwikiHistoryRequest, AwikiHostClient, AwikiIdentityAccessInspection, AwikiIdentityAccessInspectionRequest, AwikiIdentity, AwikiLogoutRequest, AwikiMessage, AwikiMailAccount, AwikiMailInboxPage, AwikiMailInboxRequest, AwikiMailMarkReadRequest, AwikiMailMarkReadResult, AwikiMailMessage, AwikiMailReadRequest, AwikiMailSendRequest, AwikiMailSendResult, AwikiMarkConversationReadRequest, AwikiPage, AwikiPageRequest, AwikiProfile, AwikiRecoveryOperationRequest, AwikiRecoveryOtpRequest, AwikiRecoveryOtpResult, AwikiRecoveryPrepareRequest, AwikiRecoveryProgress, AwikiRegistrationOtpRequest, AwikiRegistrationOtpResult, AwikiRegistrationRequest, AwikiResolvePeerRequest, AwikiResolvedPeer, AwikiResult, AwikiRuntimeConfig, AwikiSession, AwikiSendAttachmentRequest, AwikiSendTextRequest, AwikiSummarizeConversationRequest, AwikiUpdateDisplayNameRequest, AwikiUpdateProfileRequest } from './types.ts';
|
|
5
|
+
import type { AwikiClearLocalDataRequest, AwikiClearLocalDataResult, AwikiCompletion, AwikiConversation, AwikiConversationPreferenceMutation, AwikiConversationPreferences, AwikiConversationSummary, AwikiCreateGroupRequest, AwikiCreateGroupResult, AwikiDownloadAttachmentRequest, AwikiDownloadedAttachment, AwikiGroupMember, AwikiGroupMemberPage, AwikiGroupRebindRecoverySummary, AwikiGroupMembersRequest, AwikiGroupRequest, AwikiGroupSnapshot, AwikiAddGroupMemberRequest, AwikiRemoveGroupMemberRequest, AwikiHistoryRequest, AwikiHostClient, AwikiIdentityAccessInspection, AwikiIdentityAccessInspectionRequest, AwikiIdentity, AwikiLogoutRequest, AwikiMessage, AwikiMailAccount, AwikiMailInboxPage, AwikiMailInboxRequest, AwikiMailMarkReadRequest, AwikiMailMarkReadResult, AwikiMailMessage, AwikiMailReadRequest, AwikiMailSendRequest, AwikiMailSendResult, AwikiMarkConversationReadRequest, AwikiPage, AwikiPageRequest, AwikiProfile, AwikiRecoveryOperationRequest, AwikiRecoveryOtpRequest, AwikiRecoveryOtpResult, AwikiRecoveryPrepareRequest, AwikiRecoveryProgress, AwikiRegistrationOtpRequest, AwikiRegistrationOtpResult, AwikiRegistrationRequest, AwikiResolvePeerRequest, AwikiResolvedPeer, AwikiResult, AwikiRuntimeConfig, AwikiSession, AwikiSendAttachmentRequest, AwikiSendTextRequest, AwikiSummarizeConversationRequest, AwikiUpdateDisplayNameRequest, AwikiUpdateProfileRequest } from './types.ts';
|
|
6
6
|
import type { AwikiClientFactory } from './provider-api.ts';
|
|
7
7
|
import type { AwikiSummaryProvider } from './summary-provider-api.ts';
|
|
8
8
|
import type { AwikiExternalHttpAuth } from './external-http-auth.ts';
|
|
@@ -86,6 +86,7 @@ export declare class AwikiService extends TypertRemoteService implements AwikiHo
|
|
|
86
86
|
private readonly sessionStore;
|
|
87
87
|
private readonly imageAttachmentCache;
|
|
88
88
|
private readonly sentMailStore;
|
|
89
|
+
private readonly conversationPreferenceStore;
|
|
89
90
|
private startupUserServiceDomain;
|
|
90
91
|
private settingsProvider;
|
|
91
92
|
private provider;
|
|
@@ -187,6 +188,10 @@ export declare class AwikiService extends TypertRemoteService implements AwikiHo
|
|
|
187
188
|
removeGroupMember(request: AwikiRemoveGroupMemberRequest): Promise<AwikiResult<AwikiGroupMember>>;
|
|
188
189
|
/** Resume durable group membership convergence after account sync restores old groups. */
|
|
189
190
|
resumeGroupRebindRecovery(): Promise<AwikiResult<AwikiGroupRebindRecoverySummary>>;
|
|
191
|
+
/** Read presentation-only roster preferences for the active identity. */
|
|
192
|
+
getConversationPreferences(): Promise<AwikiResult<AwikiConversationPreferences>>;
|
|
193
|
+
/** Persist one bounded local roster preference without changing Core or remote membership. */
|
|
194
|
+
updateConversationPreference(request: AwikiConversationPreferenceMutation): Promise<AwikiResult<AwikiConversationPreferences>>;
|
|
190
195
|
/**
|
|
191
196
|
* List direct and existing group conversations.
|
|
192
197
|
* @param request - Optional opaque cursor and page limit.
|