@awiki/dsh-plugin 0.3.4 → 0.3.6
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 +60 -51
- package/README.zh.md +51 -43
- package/cordis.patch.yml +7 -21
- package/lib/client.js +785 -1308
- package/lib/client.js.map +1 -1
- package/lib/index.js +715 -1017
- package/lib/provider.js +16 -52
- package/lib/{sdk-adapter-BeJakxLP.mjs → sdk-adapter--trNlr-T.mjs} +38 -143
- package/lib/typert.host.js +139 -414
- package/lib/typert.remote-client.d.ts +5 -19
- package/lib/typert.remote-client.d.ts.map +1 -1
- package/lib/typert.remote-client.js +139 -414
- package/lib/types/client/AwikiIdentityAccess.d.ts +5 -6
- package/lib/types/client/AwikiIdentityAccess.d.ts.map +1 -1
- package/lib/types/client/AwikiIdentityAccess.js +27 -88
- package/lib/types/client/AwikiIdentityAccess.js.map +1 -1
- package/lib/types/client/AwikiMail.d.ts +1 -1
- package/lib/types/client/AwikiMail.d.ts.map +1 -1
- package/lib/types/client/AwikiMail.js +130 -6
- 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 +3 -4
- package/lib/types/client/AwikiOverlay.js.map +1 -1
- package/lib/types/client/controller.d.ts +11 -20
- package/lib/types/client/controller.d.ts.map +1 -1
- package/lib/types/client/controller.js +48 -53
- package/lib/types/client/controller.js.map +1 -1
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/index.js +2 -8
- package/lib/types/client/index.js.map +1 -1
- package/lib/types/client/mail-attachment.d.ts +40 -0
- package/lib/types/client/mail-attachment.d.ts.map +1 -0
- package/lib/types/client/mail-attachment.js +186 -0
- package/lib/types/client/mail-attachment.js.map +1 -0
- package/lib/types/client/settings-locales.js +8 -8
- package/lib/types/client/settings-locales.js.map +1 -1
- package/lib/types/client/slots.d.ts +6 -10
- package/lib/types/client/slots.d.ts.map +1 -1
- package/lib/types/index.d.ts +28 -59
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +417 -800
- package/lib/types/index.js.map +1 -1
- package/lib/types/listener-state.d.ts +3 -5
- package/lib/types/listener-state.d.ts.map +1 -1
- package/lib/types/listener-state.js +13 -28
- package/lib/types/listener-state.js.map +1 -1
- package/lib/types/listener.d.ts +32 -9
- package/lib/types/listener.d.ts.map +1 -1
- package/lib/types/listener.js +127 -11
- package/lib/types/listener.js.map +1 -1
- package/lib/types/mail.d.ts +28 -2
- package/lib/types/mail.d.ts.map +1 -1
- package/lib/types/mail.js +78 -2
- package/lib/types/mail.js.map +1 -1
- package/lib/types/profile-state.d.ts +17 -0
- package/lib/types/profile-state.d.ts.map +1 -0
- package/lib/types/profile-state.js +58 -0
- package/lib/types/profile-state.js.map +1 -0
- package/lib/types/provider-api.d.ts +36 -100
- package/lib/types/provider-api.d.ts.map +1 -1
- package/lib/types/provider.d.ts +1 -7
- package/lib/types/provider.d.ts.map +1 -1
- package/lib/types/provider.js +15 -53
- package/lib/types/provider.js.map +1 -1
- package/lib/types/sdk-adapter.d.ts +5 -30
- package/lib/types/sdk-adapter.d.ts.map +1 -1
- package/lib/types/sdk-adapter.js +48 -133
- package/lib/types/sdk-adapter.js.map +1 -1
- package/lib/types/sent-mail-store.d.ts +7 -2
- package/lib/types/sent-mail-store.d.ts.map +1 -1
- package/lib/types/sent-mail-store.js +125 -23
- package/lib/types/sent-mail-store.js.map +1 -1
- package/lib/types/tools.d.ts +1 -1
- package/lib/types/tools.d.ts.map +1 -1
- package/lib/types/tools.js +20 -4
- package/lib/types/tools.js.map +1 -1
- package/lib/types/types.d.ts +45 -77
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js.map +1 -1
- package/package.json +4 -6
- package/lib/types/client/AwikiDevices.d.ts +0 -28
- package/lib/types/client/AwikiDevices.d.ts.map +0 -1
- package/lib/types/client/AwikiDevices.js +0 -85
- package/lib/types/client/AwikiDevices.js.map +0 -1
- package/lib/types/realtime-supervisor.d.ts +0 -43
- package/lib/types/realtime-supervisor.d.ts.map +0 -1
- package/lib/types/realtime-supervisor.js +0 -166
- package/lib/types/realtime-supervisor.js.map +0 -1
package/lib/client.js
CHANGED
|
@@ -589,7 +589,7 @@ window.__ModuleLoader__.load({
|
|
|
589
589
|
const ipv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;
|
|
590
590
|
const cidrv4 = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/;
|
|
591
591
|
const cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
|
|
592
|
-
const base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/;
|
|
592
|
+
const base64$1 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/;
|
|
593
593
|
const base64url = /^[A-Za-z0-9_-]*$/;
|
|
594
594
|
const httpProtocol = /^https?$/;
|
|
595
595
|
const e164 = /^\+[1-9]\d{6,14}$/;
|
|
@@ -1326,7 +1326,7 @@ window.__ModuleLoader__.load({
|
|
|
1326
1326
|
}
|
|
1327
1327
|
}
|
|
1328
1328
|
const $ZodBase64 = /*@__PURE__*/ $constructor("$ZodBase64", (inst, def) => {
|
|
1329
|
-
def.pattern ?? (def.pattern = base64);
|
|
1329
|
+
def.pattern ?? (def.pattern = base64$1);
|
|
1330
1330
|
$ZodStringFormat.init(inst, def);
|
|
1331
1331
|
inst._zod.bag.contentEncoding = "base64";
|
|
1332
1332
|
inst._zod.check = (payload) => {
|
|
@@ -4112,6 +4112,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4112
4112
|
literal("forbidden"),
|
|
4113
4113
|
literal("identity-recovery-required"),
|
|
4114
4114
|
literal("conflict"),
|
|
4115
|
+
literal("state-in-use"),
|
|
4115
4116
|
literal("rate-limited"),
|
|
4116
4117
|
literal("group-membership-required"),
|
|
4117
4118
|
literal("group-identity-stale"),
|
|
@@ -4153,7 +4154,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4153
4154
|
})]);
|
|
4154
4155
|
const _awiki_dsh_plugin_awiki_addGroupMember_parameter_0$schema = object({
|
|
4155
4156
|
"member": string().readonly(),
|
|
4156
|
-
"role": union([literal("
|
|
4157
|
+
"role": union([literal("admin"), literal("member")]).readonly().optional(),
|
|
4157
4158
|
"groupDid": intersection(string(), unknown()).readonly()
|
|
4158
4159
|
});
|
|
4159
4160
|
const _awiki_dsh_plugin_awiki_addGroupMember_result$schema = union([object({
|
|
@@ -4171,6 +4172,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4171
4172
|
literal("forbidden"),
|
|
4172
4173
|
literal("identity-recovery-required"),
|
|
4173
4174
|
literal("conflict"),
|
|
4175
|
+
literal("state-in-use"),
|
|
4174
4176
|
literal("rate-limited"),
|
|
4175
4177
|
literal("group-membership-required"),
|
|
4176
4178
|
literal("group-identity-stale"),
|
|
@@ -4193,139 +4195,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4193
4195
|
"handle": intersection(string(), unknown()).readonly().optional()
|
|
4194
4196
|
}).readonly()
|
|
4195
4197
|
})]);
|
|
4196
|
-
const _awiki_dsh_plugin_awiki_approveDeviceJoin_parameter_0$schema = object({
|
|
4197
|
-
"enteredSas": string().readonly(),
|
|
4198
|
-
"confirmation": string().readonly(),
|
|
4199
|
-
"requestRef": string().readonly()
|
|
4200
|
-
});
|
|
4201
|
-
const _awiki_dsh_plugin_awiki_approveDeviceJoin_result$schema = union([object({
|
|
4202
|
-
"ok": literal(false).readonly(),
|
|
4203
|
-
"error": object({
|
|
4204
|
-
"code": union([
|
|
4205
|
-
literal("not-registered"),
|
|
4206
|
-
literal("signed-out"),
|
|
4207
|
-
literal("already-registered"),
|
|
4208
|
-
literal("invalid-request"),
|
|
4209
|
-
literal("invalid-otp"),
|
|
4210
|
-
literal("challenge-expired"),
|
|
4211
|
-
literal("handle-unavailable"),
|
|
4212
|
-
literal("not-found"),
|
|
4213
|
-
literal("forbidden"),
|
|
4214
|
-
literal("identity-recovery-required"),
|
|
4215
|
-
literal("conflict"),
|
|
4216
|
-
literal("rate-limited"),
|
|
4217
|
-
literal("group-membership-required"),
|
|
4218
|
-
literal("group-identity-stale"),
|
|
4219
|
-
literal("attachment-too-large"),
|
|
4220
|
-
literal("summary-unavailable"),
|
|
4221
|
-
literal("summary-timeout"),
|
|
4222
|
-
literal("summary-cancelled"),
|
|
4223
|
-
literal("summary-invalid-output"),
|
|
4224
|
-
literal("summary-failed"),
|
|
4225
|
-
literal("delivery-unknown"),
|
|
4226
|
-
literal("network"),
|
|
4227
|
-
literal("remote")
|
|
4228
|
-
]).readonly(),
|
|
4229
|
-
"message": string().readonly()
|
|
4230
|
-
}).readonly()
|
|
4231
|
-
}), object({
|
|
4232
|
-
"ok": literal(true).readonly(),
|
|
4233
|
-
"value": object({
|
|
4234
|
-
"requestRef": string().readonly(),
|
|
4235
|
-
"phase": union([
|
|
4236
|
-
literal("pending"),
|
|
4237
|
-
literal("verifying"),
|
|
4238
|
-
literal("sas-ready"),
|
|
4239
|
-
literal("authorized"),
|
|
4240
|
-
literal("cancelled"),
|
|
4241
|
-
literal("rejected"),
|
|
4242
|
-
literal("expired")
|
|
4243
|
-
]).readonly(),
|
|
4244
|
-
"expiresAt": string().readonly(),
|
|
4245
|
-
"sas": string().readonly().optional()
|
|
4246
|
-
}).readonly()
|
|
4247
|
-
})]);
|
|
4248
|
-
const _awiki_dsh_plugin_awiki_beginDeviceJoin_result$schema = union([object({
|
|
4249
|
-
"ok": literal(false).readonly(),
|
|
4250
|
-
"error": object({
|
|
4251
|
-
"code": union([
|
|
4252
|
-
literal("not-registered"),
|
|
4253
|
-
literal("signed-out"),
|
|
4254
|
-
literal("already-registered"),
|
|
4255
|
-
literal("invalid-request"),
|
|
4256
|
-
literal("invalid-otp"),
|
|
4257
|
-
literal("challenge-expired"),
|
|
4258
|
-
literal("handle-unavailable"),
|
|
4259
|
-
literal("not-found"),
|
|
4260
|
-
literal("forbidden"),
|
|
4261
|
-
literal("identity-recovery-required"),
|
|
4262
|
-
literal("conflict"),
|
|
4263
|
-
literal("rate-limited"),
|
|
4264
|
-
literal("group-membership-required"),
|
|
4265
|
-
literal("group-identity-stale"),
|
|
4266
|
-
literal("attachment-too-large"),
|
|
4267
|
-
literal("summary-unavailable"),
|
|
4268
|
-
literal("summary-timeout"),
|
|
4269
|
-
literal("summary-cancelled"),
|
|
4270
|
-
literal("summary-invalid-output"),
|
|
4271
|
-
literal("summary-failed"),
|
|
4272
|
-
literal("delivery-unknown"),
|
|
4273
|
-
literal("network"),
|
|
4274
|
-
literal("remote")
|
|
4275
|
-
]).readonly(),
|
|
4276
|
-
"message": string().readonly()
|
|
4277
|
-
}).readonly()
|
|
4278
|
-
}), object({
|
|
4279
|
-
"ok": literal(true).readonly(),
|
|
4280
|
-
"value": object({
|
|
4281
|
-
"phase": union([
|
|
4282
|
-
literal("pending"),
|
|
4283
|
-
literal("verifying"),
|
|
4284
|
-
literal("sas-ready"),
|
|
4285
|
-
literal("authorized"),
|
|
4286
|
-
literal("cancelled"),
|
|
4287
|
-
literal("rejected"),
|
|
4288
|
-
literal("expired")
|
|
4289
|
-
]).readonly(),
|
|
4290
|
-
"expiresAt": string().readonly(),
|
|
4291
|
-
"sas": string().readonly().optional(),
|
|
4292
|
-
"completed": boolean().readonly()
|
|
4293
|
-
}).readonly()
|
|
4294
|
-
})]);
|
|
4295
|
-
const _awiki_dsh_plugin_awiki_cancelDeviceJoin_result$schema = union([object({
|
|
4296
|
-
"ok": literal(false).readonly(),
|
|
4297
|
-
"error": object({
|
|
4298
|
-
"code": union([
|
|
4299
|
-
literal("not-registered"),
|
|
4300
|
-
literal("signed-out"),
|
|
4301
|
-
literal("already-registered"),
|
|
4302
|
-
literal("invalid-request"),
|
|
4303
|
-
literal("invalid-otp"),
|
|
4304
|
-
literal("challenge-expired"),
|
|
4305
|
-
literal("handle-unavailable"),
|
|
4306
|
-
literal("not-found"),
|
|
4307
|
-
literal("forbidden"),
|
|
4308
|
-
literal("identity-recovery-required"),
|
|
4309
|
-
literal("conflict"),
|
|
4310
|
-
literal("rate-limited"),
|
|
4311
|
-
literal("group-membership-required"),
|
|
4312
|
-
literal("group-identity-stale"),
|
|
4313
|
-
literal("attachment-too-large"),
|
|
4314
|
-
literal("summary-unavailable"),
|
|
4315
|
-
literal("summary-timeout"),
|
|
4316
|
-
literal("summary-cancelled"),
|
|
4317
|
-
literal("summary-invalid-output"),
|
|
4318
|
-
literal("summary-failed"),
|
|
4319
|
-
literal("delivery-unknown"),
|
|
4320
|
-
literal("network"),
|
|
4321
|
-
literal("remote")
|
|
4322
|
-
]).readonly(),
|
|
4323
|
-
"message": string().readonly()
|
|
4324
|
-
}).readonly()
|
|
4325
|
-
}), object({
|
|
4326
|
-
"ok": literal(true).readonly(),
|
|
4327
|
-
"value": object({ "completed": literal(true).readonly() }).readonly()
|
|
4328
|
-
})]);
|
|
4329
4198
|
const _awiki_dsh_plugin_awiki_clearLocalData_parameter_0$schema = object({ "confirmation": string().readonly() });
|
|
4330
4199
|
const _awiki_dsh_plugin_awiki_clearLocalData_result$schema = union([object({
|
|
4331
4200
|
"ok": literal(false).readonly(),
|
|
@@ -4342,6 +4211,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4342
4211
|
literal("forbidden"),
|
|
4343
4212
|
literal("identity-recovery-required"),
|
|
4344
4213
|
literal("conflict"),
|
|
4214
|
+
literal("state-in-use"),
|
|
4345
4215
|
literal("rate-limited"),
|
|
4346
4216
|
literal("group-membership-required"),
|
|
4347
4217
|
literal("group-identity-stale"),
|
|
@@ -4380,6 +4250,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4380
4250
|
literal("forbidden"),
|
|
4381
4251
|
literal("identity-recovery-required"),
|
|
4382
4252
|
literal("conflict"),
|
|
4253
|
+
literal("state-in-use"),
|
|
4383
4254
|
literal("rate-limited"),
|
|
4384
4255
|
literal("group-membership-required"),
|
|
4385
4256
|
literal("group-identity-stale"),
|
|
@@ -4426,6 +4297,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4426
4297
|
literal("forbidden"),
|
|
4427
4298
|
literal("identity-recovery-required"),
|
|
4428
4299
|
literal("conflict"),
|
|
4300
|
+
literal("state-in-use"),
|
|
4429
4301
|
literal("rate-limited"),
|
|
4430
4302
|
literal("group-membership-required"),
|
|
4431
4303
|
literal("group-identity-stale"),
|
|
@@ -4460,6 +4332,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4460
4332
|
literal("forbidden"),
|
|
4461
4333
|
literal("identity-recovery-required"),
|
|
4462
4334
|
literal("conflict"),
|
|
4335
|
+
literal("state-in-use"),
|
|
4463
4336
|
literal("rate-limited"),
|
|
4464
4337
|
literal("group-membership-required"),
|
|
4465
4338
|
literal("group-identity-stale"),
|
|
@@ -4498,6 +4371,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4498
4371
|
literal("forbidden"),
|
|
4499
4372
|
literal("identity-recovery-required"),
|
|
4500
4373
|
literal("conflict"),
|
|
4374
|
+
literal("state-in-use"),
|
|
4501
4375
|
literal("rate-limited"),
|
|
4502
4376
|
literal("group-membership-required"),
|
|
4503
4377
|
literal("group-identity-stale"),
|
|
@@ -4526,7 +4400,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4526
4400
|
"bytesBase64": string().readonly()
|
|
4527
4401
|
}).readonly()
|
|
4528
4402
|
})]);
|
|
4529
|
-
const
|
|
4403
|
+
const _awiki_dsh_plugin_awiki_downloadMailAttachment_parameter_0$schema = object({
|
|
4404
|
+
"localMessageId": intersection(string(), unknown()).readonly(),
|
|
4405
|
+
"attachmentIndex": number().readonly()
|
|
4406
|
+
});
|
|
4407
|
+
const _awiki_dsh_plugin_awiki_downloadMailAttachment_result$schema = union([object({
|
|
4530
4408
|
"ok": literal(false).readonly(),
|
|
4531
4409
|
"error": object({
|
|
4532
4410
|
"code": union([
|
|
@@ -4541,6 +4419,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4541
4419
|
literal("forbidden"),
|
|
4542
4420
|
literal("identity-recovery-required"),
|
|
4543
4421
|
literal("conflict"),
|
|
4422
|
+
literal("state-in-use"),
|
|
4544
4423
|
literal("rate-limited"),
|
|
4545
4424
|
literal("group-membership-required"),
|
|
4546
4425
|
literal("group-identity-stale"),
|
|
@@ -4559,12 +4438,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4559
4438
|
}), object({
|
|
4560
4439
|
"ok": literal(true).readonly(),
|
|
4561
4440
|
"value": object({
|
|
4562
|
-
"
|
|
4563
|
-
"
|
|
4564
|
-
"
|
|
4441
|
+
"fileName": string().readonly(),
|
|
4442
|
+
"contentType": string().readonly(),
|
|
4443
|
+
"sizeBytes": number().readonly(),
|
|
4444
|
+
"sha256": string().readonly(),
|
|
4445
|
+
"bytesBase64": string().readonly()
|
|
4565
4446
|
}).readonly()
|
|
4566
4447
|
})]);
|
|
4567
|
-
const
|
|
4448
|
+
const _awiki_dsh_plugin_awiki_getConfig_result$schema = union([object({
|
|
4568
4449
|
"ok": literal(false).readonly(),
|
|
4569
4450
|
"error": object({
|
|
4570
4451
|
"code": union([
|
|
@@ -4579,6 +4460,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4579
4460
|
literal("forbidden"),
|
|
4580
4461
|
literal("identity-recovery-required"),
|
|
4581
4462
|
literal("conflict"),
|
|
4463
|
+
literal("state-in-use"),
|
|
4582
4464
|
literal("rate-limited"),
|
|
4583
4465
|
literal("group-membership-required"),
|
|
4584
4466
|
literal("group-identity-stale"),
|
|
@@ -4597,32 +4479,17 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4597
4479
|
}), object({
|
|
4598
4480
|
"ok": literal(true).readonly(),
|
|
4599
4481
|
"value": object({
|
|
4600
|
-
"
|
|
4601
|
-
|
|
4602
|
-
|
|
4603
|
-
|
|
4604
|
-
|
|
4605
|
-
|
|
4606
|
-
|
|
4607
|
-
|
|
4608
|
-
"lastMessagePreview": string().readonly().optional()
|
|
4609
|
-
}), object({
|
|
4610
|
-
"kind": literal("direct").readonly(),
|
|
4611
|
-
"id": intersection(string(), unknown()).readonly(),
|
|
4612
|
-
"peerDid": intersection(string(), unknown()).readonly(),
|
|
4613
|
-
"peerHandle": intersection(string(), unknown()).readonly().optional(),
|
|
4614
|
-
"displayName": string().readonly().optional(),
|
|
4615
|
-
"title": string().readonly(),
|
|
4616
|
-
"unreadCount": number().readonly().optional(),
|
|
4617
|
-
"lastMessageAt": number().readonly().optional(),
|
|
4618
|
-
"lastMessagePreview": string().readonly().optional()
|
|
4619
|
-
})]).readonly(),
|
|
4620
|
-
"hiddenAt": number().readonly()
|
|
4621
|
-
})).readonly(),
|
|
4622
|
-
"dismissedGroupRecoverySignature": string().readonly().optional()
|
|
4482
|
+
"tenantDomain": string().readonly(),
|
|
4483
|
+
"pollIntervalMs": number().readonly(),
|
|
4484
|
+
"attachmentMaxBytes": number().readonly(),
|
|
4485
|
+
"mailAttachmentMaxCount": number().readonly(),
|
|
4486
|
+
"mailAttachmentMaxBytes": number().readonly(),
|
|
4487
|
+
"mailAttachmentTotalMaxBytes": number().readonly(),
|
|
4488
|
+
"profileName": string().readonly().optional(),
|
|
4489
|
+
"legacySharedStateDetected": boolean().readonly().optional()
|
|
4623
4490
|
}).readonly()
|
|
4624
4491
|
})]);
|
|
4625
|
-
const
|
|
4492
|
+
const _awiki_dsh_plugin_awiki_getConversationPreferences_result$schema = union([object({
|
|
4626
4493
|
"ok": literal(false).readonly(),
|
|
4627
4494
|
"error": object({
|
|
4628
4495
|
"code": union([
|
|
@@ -4637,6 +4504,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4637
4504
|
literal("forbidden"),
|
|
4638
4505
|
literal("identity-recovery-required"),
|
|
4639
4506
|
literal("conflict"),
|
|
4507
|
+
literal("state-in-use"),
|
|
4640
4508
|
literal("rate-limited"),
|
|
4641
4509
|
literal("group-membership-required"),
|
|
4642
4510
|
literal("group-identity-stale"),
|
|
@@ -4654,20 +4522,31 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4654
4522
|
}).readonly()
|
|
4655
4523
|
}), object({
|
|
4656
4524
|
"ok": literal(true).readonly(),
|
|
4657
|
-
"value":
|
|
4658
|
-
"
|
|
4659
|
-
|
|
4660
|
-
|
|
4661
|
-
|
|
4662
|
-
|
|
4663
|
-
|
|
4664
|
-
|
|
4665
|
-
|
|
4666
|
-
|
|
4667
|
-
|
|
4668
|
-
|
|
4669
|
-
|
|
4670
|
-
|
|
4525
|
+
"value": object({
|
|
4526
|
+
"hiddenConversations": array(object({
|
|
4527
|
+
"conversation": union([object({
|
|
4528
|
+
"kind": literal("group").readonly(),
|
|
4529
|
+
"id": intersection(string(), unknown()).readonly(),
|
|
4530
|
+
"groupDid": intersection(string(), unknown()).readonly(),
|
|
4531
|
+
"title": string().readonly(),
|
|
4532
|
+
"unreadCount": number().readonly().optional(),
|
|
4533
|
+
"lastMessageAt": number().readonly().optional(),
|
|
4534
|
+
"lastMessagePreview": string().readonly().optional()
|
|
4535
|
+
}), object({
|
|
4536
|
+
"kind": literal("direct").readonly(),
|
|
4537
|
+
"id": intersection(string(), unknown()).readonly(),
|
|
4538
|
+
"peerDid": intersection(string(), unknown()).readonly(),
|
|
4539
|
+
"peerHandle": intersection(string(), unknown()).readonly().optional(),
|
|
4540
|
+
"displayName": string().readonly().optional(),
|
|
4541
|
+
"title": string().readonly(),
|
|
4542
|
+
"unreadCount": number().readonly().optional(),
|
|
4543
|
+
"lastMessageAt": number().readonly().optional(),
|
|
4544
|
+
"lastMessagePreview": string().readonly().optional()
|
|
4545
|
+
})]).readonly(),
|
|
4546
|
+
"hiddenAt": number().readonly()
|
|
4547
|
+
})).readonly(),
|
|
4548
|
+
"dismissedGroupRecoverySignature": string().readonly().optional()
|
|
4549
|
+
}).readonly()
|
|
4671
4550
|
})]);
|
|
4672
4551
|
const _awiki_dsh_plugin_awiki_getGroup_parameter_0$schema = object({ "groupDid": intersection(string(), unknown()).readonly() });
|
|
4673
4552
|
const _awiki_dsh_plugin_awiki_getGroup_result$schema = union([object({
|
|
@@ -4685,6 +4564,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4685
4564
|
literal("forbidden"),
|
|
4686
4565
|
literal("identity-recovery-required"),
|
|
4687
4566
|
literal("conflict"),
|
|
4567
|
+
literal("state-in-use"),
|
|
4688
4568
|
literal("rate-limited"),
|
|
4689
4569
|
literal("group-membership-required"),
|
|
4690
4570
|
literal("group-identity-stale"),
|
|
@@ -4732,6 +4612,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4732
4612
|
literal("forbidden"),
|
|
4733
4613
|
literal("identity-recovery-required"),
|
|
4734
4614
|
literal("conflict"),
|
|
4615
|
+
literal("state-in-use"),
|
|
4735
4616
|
literal("rate-limited"),
|
|
4736
4617
|
literal("group-membership-required"),
|
|
4737
4618
|
literal("group-identity-stale"),
|
|
@@ -4800,6 +4681,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4800
4681
|
literal("forbidden"),
|
|
4801
4682
|
literal("identity-recovery-required"),
|
|
4802
4683
|
literal("conflict"),
|
|
4684
|
+
literal("state-in-use"),
|
|
4803
4685
|
literal("rate-limited"),
|
|
4804
4686
|
literal("group-membership-required"),
|
|
4805
4687
|
literal("group-identity-stale"),
|
|
@@ -4844,6 +4726,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4844
4726
|
literal("forbidden"),
|
|
4845
4727
|
literal("identity-recovery-required"),
|
|
4846
4728
|
literal("conflict"),
|
|
4729
|
+
literal("state-in-use"),
|
|
4847
4730
|
literal("rate-limited"),
|
|
4848
4731
|
literal("group-membership-required"),
|
|
4849
4732
|
literal("group-identity-stale"),
|
|
@@ -4912,6 +4795,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4912
4795
|
literal("forbidden"),
|
|
4913
4796
|
literal("identity-recovery-required"),
|
|
4914
4797
|
literal("conflict"),
|
|
4798
|
+
literal("state-in-use"),
|
|
4915
4799
|
literal("rate-limited"),
|
|
4916
4800
|
literal("group-membership-required"),
|
|
4917
4801
|
literal("group-identity-stale"),
|
|
@@ -4950,6 +4834,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4950
4834
|
literal("forbidden"),
|
|
4951
4835
|
literal("identity-recovery-required"),
|
|
4952
4836
|
literal("conflict"),
|
|
4837
|
+
literal("state-in-use"),
|
|
4953
4838
|
literal("rate-limited"),
|
|
4954
4839
|
literal("group-membership-required"),
|
|
4955
4840
|
literal("group-identity-stale"),
|
|
@@ -4992,6 +4877,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4992
4877
|
literal("forbidden"),
|
|
4993
4878
|
literal("identity-recovery-required"),
|
|
4994
4879
|
literal("conflict"),
|
|
4880
|
+
literal("state-in-use"),
|
|
4995
4881
|
literal("rate-limited"),
|
|
4996
4882
|
literal("group-membership-required"),
|
|
4997
4883
|
literal("group-identity-stale"),
|
|
@@ -5046,6 +4932,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5046
4932
|
literal("forbidden"),
|
|
5047
4933
|
literal("identity-recovery-required"),
|
|
5048
4934
|
literal("conflict"),
|
|
4935
|
+
literal("state-in-use"),
|
|
5049
4936
|
literal("rate-limited"),
|
|
5050
4937
|
literal("group-membership-required"),
|
|
5051
4938
|
literal("group-identity-stale"),
|
|
@@ -5093,6 +4980,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5093
4980
|
literal("forbidden"),
|
|
5094
4981
|
literal("identity-recovery-required"),
|
|
5095
4982
|
literal("conflict"),
|
|
4983
|
+
literal("state-in-use"),
|
|
5096
4984
|
literal("rate-limited"),
|
|
5097
4985
|
literal("group-membership-required"),
|
|
5098
4986
|
literal("group-identity-stale"),
|
|
@@ -5131,6 +5019,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5131
5019
|
literal("forbidden"),
|
|
5132
5020
|
literal("identity-recovery-required"),
|
|
5133
5021
|
literal("conflict"),
|
|
5022
|
+
literal("state-in-use"),
|
|
5134
5023
|
literal("rate-limited"),
|
|
5135
5024
|
literal("group-membership-required"),
|
|
5136
5025
|
literal("group-identity-stale"),
|
|
@@ -5174,6 +5063,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5174
5063
|
literal("forbidden"),
|
|
5175
5064
|
literal("identity-recovery-required"),
|
|
5176
5065
|
literal("conflict"),
|
|
5066
|
+
literal("state-in-use"),
|
|
5177
5067
|
literal("rate-limited"),
|
|
5178
5068
|
literal("group-membership-required"),
|
|
5179
5069
|
literal("group-identity-stale"),
|
|
@@ -5212,6 +5102,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5212
5102
|
literal("forbidden"),
|
|
5213
5103
|
literal("identity-recovery-required"),
|
|
5214
5104
|
literal("conflict"),
|
|
5105
|
+
literal("state-in-use"),
|
|
5215
5106
|
literal("rate-limited"),
|
|
5216
5107
|
literal("group-membership-required"),
|
|
5217
5108
|
literal("group-identity-stale"),
|
|
@@ -5273,6 +5164,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5273
5164
|
literal("forbidden"),
|
|
5274
5165
|
literal("identity-recovery-required"),
|
|
5275
5166
|
literal("conflict"),
|
|
5167
|
+
literal("state-in-use"),
|
|
5276
5168
|
literal("rate-limited"),
|
|
5277
5169
|
literal("group-membership-required"),
|
|
5278
5170
|
literal("group-identity-stale"),
|
|
@@ -5332,6 +5224,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5332
5224
|
literal("forbidden"),
|
|
5333
5225
|
literal("identity-recovery-required"),
|
|
5334
5226
|
literal("conflict"),
|
|
5227
|
+
literal("state-in-use"),
|
|
5335
5228
|
literal("rate-limited"),
|
|
5336
5229
|
literal("group-membership-required"),
|
|
5337
5230
|
literal("group-identity-stale"),
|
|
@@ -5385,6 +5278,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5385
5278
|
literal("forbidden"),
|
|
5386
5279
|
literal("identity-recovery-required"),
|
|
5387
5280
|
literal("conflict"),
|
|
5281
|
+
literal("state-in-use"),
|
|
5388
5282
|
literal("rate-limited"),
|
|
5389
5283
|
literal("group-membership-required"),
|
|
5390
5284
|
literal("group-identity-stale"),
|
|
@@ -5432,6 +5326,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5432
5326
|
literal("forbidden"),
|
|
5433
5327
|
literal("identity-recovery-required"),
|
|
5434
5328
|
literal("conflict"),
|
|
5329
|
+
literal("state-in-use"),
|
|
5435
5330
|
literal("rate-limited"),
|
|
5436
5331
|
literal("group-membership-required"),
|
|
5437
5332
|
literal("group-identity-stale"),
|
|
@@ -5479,6 +5374,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5479
5374
|
literal("forbidden"),
|
|
5480
5375
|
literal("identity-recovery-required"),
|
|
5481
5376
|
literal("conflict"),
|
|
5377
|
+
literal("state-in-use"),
|
|
5482
5378
|
literal("rate-limited"),
|
|
5483
5379
|
literal("group-membership-required"),
|
|
5484
5380
|
literal("group-identity-stale"),
|
|
@@ -5514,6 +5410,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5514
5410
|
literal("forbidden"),
|
|
5515
5411
|
literal("identity-recovery-required"),
|
|
5516
5412
|
literal("conflict"),
|
|
5413
|
+
literal("state-in-use"),
|
|
5517
5414
|
literal("rate-limited"),
|
|
5518
5415
|
literal("group-membership-required"),
|
|
5519
5416
|
literal("group-identity-stale"),
|
|
@@ -5553,6 +5450,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5553
5450
|
literal("forbidden"),
|
|
5554
5451
|
literal("identity-recovery-required"),
|
|
5555
5452
|
literal("conflict"),
|
|
5453
|
+
literal("state-in-use"),
|
|
5556
5454
|
literal("rate-limited"),
|
|
5557
5455
|
literal("group-membership-required"),
|
|
5558
5456
|
literal("group-identity-stale"),
|
|
@@ -5608,6 +5506,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5608
5506
|
literal("forbidden"),
|
|
5609
5507
|
literal("identity-recovery-required"),
|
|
5610
5508
|
literal("conflict"),
|
|
5509
|
+
literal("state-in-use"),
|
|
5611
5510
|
literal("rate-limited"),
|
|
5612
5511
|
literal("group-membership-required"),
|
|
5613
5512
|
literal("group-identity-stale"),
|
|
@@ -5653,74 +5552,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5653
5552
|
})).readonly()
|
|
5654
5553
|
}).readonly()
|
|
5655
5554
|
})]);
|
|
5656
|
-
const _awiki_dsh_plugin_awiki_refreshDeviceManagement_result$schema = union([object({
|
|
5657
|
-
"ok": literal(false).readonly(),
|
|
5658
|
-
"error": object({
|
|
5659
|
-
"code": union([
|
|
5660
|
-
literal("not-registered"),
|
|
5661
|
-
literal("signed-out"),
|
|
5662
|
-
literal("already-registered"),
|
|
5663
|
-
literal("invalid-request"),
|
|
5664
|
-
literal("invalid-otp"),
|
|
5665
|
-
literal("challenge-expired"),
|
|
5666
|
-
literal("handle-unavailable"),
|
|
5667
|
-
literal("not-found"),
|
|
5668
|
-
literal("forbidden"),
|
|
5669
|
-
literal("identity-recovery-required"),
|
|
5670
|
-
literal("conflict"),
|
|
5671
|
-
literal("rate-limited"),
|
|
5672
|
-
literal("group-membership-required"),
|
|
5673
|
-
literal("group-identity-stale"),
|
|
5674
|
-
literal("attachment-too-large"),
|
|
5675
|
-
literal("summary-unavailable"),
|
|
5676
|
-
literal("summary-timeout"),
|
|
5677
|
-
literal("summary-cancelled"),
|
|
5678
|
-
literal("summary-invalid-output"),
|
|
5679
|
-
literal("summary-failed"),
|
|
5680
|
-
literal("delivery-unknown"),
|
|
5681
|
-
literal("network"),
|
|
5682
|
-
literal("remote")
|
|
5683
|
-
]).readonly(),
|
|
5684
|
-
"message": string().readonly()
|
|
5685
|
-
}).readonly()
|
|
5686
|
-
}), object({
|
|
5687
|
-
"ok": literal(true).readonly(),
|
|
5688
|
-
"value": object({
|
|
5689
|
-
"canManage": boolean().readonly(),
|
|
5690
|
-
"role": union([literal("member"), literal("admin")]).readonly().optional(),
|
|
5691
|
-
"readiness": union([
|
|
5692
|
-
literal("legacy"),
|
|
5693
|
-
literal("member_ready"),
|
|
5694
|
-
literal("admin_awaiting_root"),
|
|
5695
|
-
literal("admin_ready"),
|
|
5696
|
-
literal("blocked")
|
|
5697
|
-
]).readonly(),
|
|
5698
|
-
"devices": array(object({
|
|
5699
|
-
"deviceRef": string().readonly(),
|
|
5700
|
-
"status": union([literal("active"), literal("revoked")]).readonly(),
|
|
5701
|
-
"role": union([literal("member"), literal("admin")]).readonly(),
|
|
5702
|
-
"managementReady": boolean().readonly(),
|
|
5703
|
-
"isCurrent": boolean().readonly()
|
|
5704
|
-
})).readonly(),
|
|
5705
|
-
"requests": array(object({
|
|
5706
|
-
"requestRef": string().readonly(),
|
|
5707
|
-
"candidateKeyFingerprint": string().readonly(),
|
|
5708
|
-
"issuedAt": string().readonly(),
|
|
5709
|
-
"expiresAt": string().readonly(),
|
|
5710
|
-
"state": union([
|
|
5711
|
-
literal("pending"),
|
|
5712
|
-
literal("verifying"),
|
|
5713
|
-
literal("sas-ready"),
|
|
5714
|
-
literal("authorized"),
|
|
5715
|
-
literal("cancelled"),
|
|
5716
|
-
literal("rejected"),
|
|
5717
|
-
literal("expired")
|
|
5718
|
-
]).readonly(),
|
|
5719
|
-
"claimedByCurrentDevice": boolean().readonly(),
|
|
5720
|
-
"canStartVerification": boolean().readonly()
|
|
5721
|
-
})).readonly()
|
|
5722
|
-
}).readonly()
|
|
5723
|
-
})]);
|
|
5724
5555
|
const _awiki_dsh_plugin_awiki_registerIdentity_parameter_0$schema = object({
|
|
5725
5556
|
"handle": string().readonly(),
|
|
5726
5557
|
"phone": string().readonly(),
|
|
@@ -5741,57 +5572,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5741
5572
|
literal("forbidden"),
|
|
5742
5573
|
literal("identity-recovery-required"),
|
|
5743
5574
|
literal("conflict"),
|
|
5744
|
-
literal("
|
|
5745
|
-
literal("group-membership-required"),
|
|
5746
|
-
literal("group-identity-stale"),
|
|
5747
|
-
literal("attachment-too-large"),
|
|
5748
|
-
literal("summary-unavailable"),
|
|
5749
|
-
literal("summary-timeout"),
|
|
5750
|
-
literal("summary-cancelled"),
|
|
5751
|
-
literal("summary-invalid-output"),
|
|
5752
|
-
literal("summary-failed"),
|
|
5753
|
-
literal("delivery-unknown"),
|
|
5754
|
-
literal("network"),
|
|
5755
|
-
literal("remote")
|
|
5756
|
-
]).readonly(),
|
|
5757
|
-
"message": string().readonly()
|
|
5758
|
-
}).readonly()
|
|
5759
|
-
}), object({
|
|
5760
|
-
"ok": literal(true).readonly(),
|
|
5761
|
-
"value": union([object({
|
|
5762
|
-
"status": literal("registered").readonly(),
|
|
5763
|
-
"identity": object({
|
|
5764
|
-
"handle": intersection(string(), unknown()).readonly(),
|
|
5765
|
-
"did": intersection(string(), unknown()).readonly(),
|
|
5766
|
-
"displayName": string().readonly().optional(),
|
|
5767
|
-
"registeredAt": number().readonly()
|
|
5768
|
-
}).readonly()
|
|
5769
|
-
}), object({
|
|
5770
|
-
"status": literal("join-required").readonly(),
|
|
5771
|
-
"fullHandle": intersection(string(), unknown()).readonly(),
|
|
5772
|
-
"mode": union([literal("ordinary"), literal("handle-recovery-rebind")]).readonly(),
|
|
5773
|
-
"requiresUserPresence": boolean().readonly()
|
|
5774
|
-
})]).readonly()
|
|
5775
|
-
})]);
|
|
5776
|
-
const _awiki_dsh_plugin_awiki_rejectDeviceJoin_parameter_0$schema = object({
|
|
5777
|
-
"reason": union([literal("user_rejected"), literal("sas_mismatch")]).readonly(),
|
|
5778
|
-
"requestRef": string().readonly()
|
|
5779
|
-
});
|
|
5780
|
-
const _awiki_dsh_plugin_awiki_rejectDeviceJoin_result$schema = union([object({
|
|
5781
|
-
"ok": literal(false).readonly(),
|
|
5782
|
-
"error": object({
|
|
5783
|
-
"code": union([
|
|
5784
|
-
literal("not-registered"),
|
|
5785
|
-
literal("signed-out"),
|
|
5786
|
-
literal("already-registered"),
|
|
5787
|
-
literal("invalid-request"),
|
|
5788
|
-
literal("invalid-otp"),
|
|
5789
|
-
literal("challenge-expired"),
|
|
5790
|
-
literal("handle-unavailable"),
|
|
5791
|
-
literal("not-found"),
|
|
5792
|
-
literal("forbidden"),
|
|
5793
|
-
literal("identity-recovery-required"),
|
|
5794
|
-
literal("conflict"),
|
|
5575
|
+
literal("state-in-use"),
|
|
5795
5576
|
literal("rate-limited"),
|
|
5796
5577
|
literal("group-membership-required"),
|
|
5797
5578
|
literal("group-identity-stale"),
|
|
@@ -5810,18 +5591,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5810
5591
|
}), object({
|
|
5811
5592
|
"ok": literal(true).readonly(),
|
|
5812
5593
|
"value": object({
|
|
5813
|
-
"
|
|
5814
|
-
"
|
|
5815
|
-
|
|
5816
|
-
|
|
5817
|
-
literal("sas-ready"),
|
|
5818
|
-
literal("authorized"),
|
|
5819
|
-
literal("cancelled"),
|
|
5820
|
-
literal("rejected"),
|
|
5821
|
-
literal("expired")
|
|
5822
|
-
]).readonly(),
|
|
5823
|
-
"expiresAt": string().readonly(),
|
|
5824
|
-
"sas": string().readonly().optional()
|
|
5594
|
+
"handle": intersection(string(), unknown()).readonly(),
|
|
5595
|
+
"did": intersection(string(), unknown()).readonly(),
|
|
5596
|
+
"displayName": string().readonly().optional(),
|
|
5597
|
+
"registeredAt": number().readonly()
|
|
5825
5598
|
}).readonly()
|
|
5826
5599
|
})]);
|
|
5827
5600
|
const _awiki_dsh_plugin_awiki_removeGroupMember_parameter_0$schema = object({
|
|
@@ -5843,6 +5616,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5843
5616
|
literal("forbidden"),
|
|
5844
5617
|
literal("identity-recovery-required"),
|
|
5845
5618
|
literal("conflict"),
|
|
5619
|
+
literal("state-in-use"),
|
|
5846
5620
|
literal("rate-limited"),
|
|
5847
5621
|
literal("group-membership-required"),
|
|
5848
5622
|
literal("group-identity-stale"),
|
|
@@ -5881,6 +5655,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5881
5655
|
literal("forbidden"),
|
|
5882
5656
|
literal("identity-recovery-required"),
|
|
5883
5657
|
literal("conflict"),
|
|
5658
|
+
literal("state-in-use"),
|
|
5884
5659
|
literal("rate-limited"),
|
|
5885
5660
|
literal("group-membership-required"),
|
|
5886
5661
|
literal("group-identity-stale"),
|
|
@@ -5920,6 +5695,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5920
5695
|
literal("forbidden"),
|
|
5921
5696
|
literal("identity-recovery-required"),
|
|
5922
5697
|
literal("conflict"),
|
|
5698
|
+
literal("state-in-use"),
|
|
5923
5699
|
literal("rate-limited"),
|
|
5924
5700
|
literal("group-membership-required"),
|
|
5925
5701
|
literal("group-identity-stale"),
|
|
@@ -5964,6 +5740,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5964
5740
|
literal("forbidden"),
|
|
5965
5741
|
literal("identity-recovery-required"),
|
|
5966
5742
|
literal("conflict"),
|
|
5743
|
+
literal("state-in-use"),
|
|
5967
5744
|
literal("rate-limited"),
|
|
5968
5745
|
literal("group-membership-required"),
|
|
5969
5746
|
literal("group-identity-stale"),
|
|
@@ -6003,78 +5780,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6003
5780
|
"unsupportedDidOnlyGroupCount": number().readonly()
|
|
6004
5781
|
}).readonly()
|
|
6005
5782
|
})]);
|
|
6006
|
-
const _awiki_dsh_plugin_awiki_revokeDevice_parameter_0$schema = object({
|
|
6007
|
-
"deviceRef": string().readonly(),
|
|
6008
|
-
"confirmation": string().readonly()
|
|
6009
|
-
});
|
|
6010
|
-
const _awiki_dsh_plugin_awiki_revokeDevice_result$schema = union([object({
|
|
6011
|
-
"ok": literal(false).readonly(),
|
|
6012
|
-
"error": object({
|
|
6013
|
-
"code": union([
|
|
6014
|
-
literal("not-registered"),
|
|
6015
|
-
literal("signed-out"),
|
|
6016
|
-
literal("already-registered"),
|
|
6017
|
-
literal("invalid-request"),
|
|
6018
|
-
literal("invalid-otp"),
|
|
6019
|
-
literal("challenge-expired"),
|
|
6020
|
-
literal("handle-unavailable"),
|
|
6021
|
-
literal("not-found"),
|
|
6022
|
-
literal("forbidden"),
|
|
6023
|
-
literal("identity-recovery-required"),
|
|
6024
|
-
literal("conflict"),
|
|
6025
|
-
literal("rate-limited"),
|
|
6026
|
-
literal("group-membership-required"),
|
|
6027
|
-
literal("group-identity-stale"),
|
|
6028
|
-
literal("attachment-too-large"),
|
|
6029
|
-
literal("summary-unavailable"),
|
|
6030
|
-
literal("summary-timeout"),
|
|
6031
|
-
literal("summary-cancelled"),
|
|
6032
|
-
literal("summary-invalid-output"),
|
|
6033
|
-
literal("summary-failed"),
|
|
6034
|
-
literal("delivery-unknown"),
|
|
6035
|
-
literal("network"),
|
|
6036
|
-
literal("remote")
|
|
6037
|
-
]).readonly(),
|
|
6038
|
-
"message": string().readonly()
|
|
6039
|
-
}).readonly()
|
|
6040
|
-
}), object({
|
|
6041
|
-
"ok": literal(true).readonly(),
|
|
6042
|
-
"value": object({
|
|
6043
|
-
"canManage": boolean().readonly(),
|
|
6044
|
-
"role": union([literal("member"), literal("admin")]).readonly().optional(),
|
|
6045
|
-
"readiness": union([
|
|
6046
|
-
literal("legacy"),
|
|
6047
|
-
literal("member_ready"),
|
|
6048
|
-
literal("admin_awaiting_root"),
|
|
6049
|
-
literal("admin_ready"),
|
|
6050
|
-
literal("blocked")
|
|
6051
|
-
]).readonly(),
|
|
6052
|
-
"devices": array(object({
|
|
6053
|
-
"deviceRef": string().readonly(),
|
|
6054
|
-
"status": union([literal("active"), literal("revoked")]).readonly(),
|
|
6055
|
-
"role": union([literal("member"), literal("admin")]).readonly(),
|
|
6056
|
-
"managementReady": boolean().readonly(),
|
|
6057
|
-
"isCurrent": boolean().readonly()
|
|
6058
|
-
})).readonly(),
|
|
6059
|
-
"requests": array(object({
|
|
6060
|
-
"requestRef": string().readonly(),
|
|
6061
|
-
"candidateKeyFingerprint": string().readonly(),
|
|
6062
|
-
"issuedAt": string().readonly(),
|
|
6063
|
-
"expiresAt": string().readonly(),
|
|
6064
|
-
"state": union([
|
|
6065
|
-
literal("pending"),
|
|
6066
|
-
literal("verifying"),
|
|
6067
|
-
literal("sas-ready"),
|
|
6068
|
-
literal("authorized"),
|
|
6069
|
-
literal("cancelled"),
|
|
6070
|
-
literal("rejected"),
|
|
6071
|
-
literal("expired")
|
|
6072
|
-
]).readonly(),
|
|
6073
|
-
"claimedByCurrentDevice": boolean().readonly(),
|
|
6074
|
-
"canStartVerification": boolean().readonly()
|
|
6075
|
-
})).readonly()
|
|
6076
|
-
}).readonly()
|
|
6077
|
-
})]);
|
|
6078
5783
|
const _awiki_dsh_plugin_awiki_sendAttachment_parameter_0$schema = object({
|
|
6079
5784
|
"target": union([object({
|
|
6080
5785
|
"kind": literal("direct").readonly(),
|
|
@@ -6104,6 +5809,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6104
5809
|
literal("forbidden"),
|
|
6105
5810
|
literal("identity-recovery-required"),
|
|
6106
5811
|
literal("conflict"),
|
|
5812
|
+
literal("state-in-use"),
|
|
6107
5813
|
literal("rate-limited"),
|
|
6108
5814
|
literal("group-membership-required"),
|
|
6109
5815
|
literal("group-identity-stale"),
|
|
@@ -6157,7 +5863,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6157
5863
|
"to": array(string()).readonly(),
|
|
6158
5864
|
"cc": array(string()).readonly().optional(),
|
|
6159
5865
|
"subject": string().readonly(),
|
|
6160
|
-
"bodyText": string().readonly()
|
|
5866
|
+
"bodyText": string().readonly(),
|
|
5867
|
+
"attachments": array(object({
|
|
5868
|
+
"fileName": string().readonly(),
|
|
5869
|
+
"contentType": string().readonly(),
|
|
5870
|
+
"sizeBytes": number().readonly(),
|
|
5871
|
+
"bytesBase64": string().readonly()
|
|
5872
|
+
})).readonly().optional()
|
|
6161
5873
|
});
|
|
6162
5874
|
const _awiki_dsh_plugin_awiki_sendMail_result$schema = union([object({
|
|
6163
5875
|
"ok": literal(false).readonly(),
|
|
@@ -6174,6 +5886,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6174
5886
|
literal("forbidden"),
|
|
6175
5887
|
literal("identity-recovery-required"),
|
|
6176
5888
|
literal("conflict"),
|
|
5889
|
+
literal("state-in-use"),
|
|
6177
5890
|
literal("rate-limited"),
|
|
6178
5891
|
literal("group-membership-required"),
|
|
6179
5892
|
literal("group-identity-stale"),
|
|
@@ -6216,6 +5929,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6216
5929
|
literal("forbidden"),
|
|
6217
5930
|
literal("identity-recovery-required"),
|
|
6218
5931
|
literal("conflict"),
|
|
5932
|
+
literal("state-in-use"),
|
|
6219
5933
|
literal("rate-limited"),
|
|
6220
5934
|
literal("group-membership-required"),
|
|
6221
5935
|
literal("group-identity-stale"),
|
|
@@ -6259,6 +5973,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6259
5973
|
literal("forbidden"),
|
|
6260
5974
|
literal("identity-recovery-required"),
|
|
6261
5975
|
literal("conflict"),
|
|
5976
|
+
literal("state-in-use"),
|
|
6262
5977
|
literal("rate-limited"),
|
|
6263
5978
|
literal("group-membership-required"),
|
|
6264
5979
|
literal("group-identity-stale"),
|
|
@@ -6314,6 +6029,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6314
6029
|
literal("forbidden"),
|
|
6315
6030
|
literal("identity-recovery-required"),
|
|
6316
6031
|
literal("conflict"),
|
|
6032
|
+
literal("state-in-use"),
|
|
6317
6033
|
literal("rate-limited"),
|
|
6318
6034
|
literal("group-membership-required"),
|
|
6319
6035
|
literal("group-identity-stale"),
|
|
@@ -6363,54 +6079,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6363
6079
|
})]).readonly()
|
|
6364
6080
|
}).readonly()
|
|
6365
6081
|
})]);
|
|
6366
|
-
const _awiki_dsh_plugin_awiki_startDeviceJoinVerification_parameter_0$schema = object({ "requestRef": string().readonly() });
|
|
6367
|
-
const _awiki_dsh_plugin_awiki_startDeviceJoinVerification_result$schema = union([object({
|
|
6368
|
-
"ok": literal(false).readonly(),
|
|
6369
|
-
"error": object({
|
|
6370
|
-
"code": union([
|
|
6371
|
-
literal("not-registered"),
|
|
6372
|
-
literal("signed-out"),
|
|
6373
|
-
literal("already-registered"),
|
|
6374
|
-
literal("invalid-request"),
|
|
6375
|
-
literal("invalid-otp"),
|
|
6376
|
-
literal("challenge-expired"),
|
|
6377
|
-
literal("handle-unavailable"),
|
|
6378
|
-
literal("not-found"),
|
|
6379
|
-
literal("forbidden"),
|
|
6380
|
-
literal("identity-recovery-required"),
|
|
6381
|
-
literal("conflict"),
|
|
6382
|
-
literal("rate-limited"),
|
|
6383
|
-
literal("group-membership-required"),
|
|
6384
|
-
literal("group-identity-stale"),
|
|
6385
|
-
literal("attachment-too-large"),
|
|
6386
|
-
literal("summary-unavailable"),
|
|
6387
|
-
literal("summary-timeout"),
|
|
6388
|
-
literal("summary-cancelled"),
|
|
6389
|
-
literal("summary-invalid-output"),
|
|
6390
|
-
literal("summary-failed"),
|
|
6391
|
-
literal("delivery-unknown"),
|
|
6392
|
-
literal("network"),
|
|
6393
|
-
literal("remote")
|
|
6394
|
-
]).readonly(),
|
|
6395
|
-
"message": string().readonly()
|
|
6396
|
-
}).readonly()
|
|
6397
|
-
}), object({
|
|
6398
|
-
"ok": literal(true).readonly(),
|
|
6399
|
-
"value": object({
|
|
6400
|
-
"requestRef": string().readonly(),
|
|
6401
|
-
"phase": union([
|
|
6402
|
-
literal("pending"),
|
|
6403
|
-
literal("verifying"),
|
|
6404
|
-
literal("sas-ready"),
|
|
6405
|
-
literal("authorized"),
|
|
6406
|
-
literal("cancelled"),
|
|
6407
|
-
literal("rejected"),
|
|
6408
|
-
literal("expired")
|
|
6409
|
-
]).readonly(),
|
|
6410
|
-
"expiresAt": string().readonly(),
|
|
6411
|
-
"sas": string().readonly().optional()
|
|
6412
|
-
}).readonly()
|
|
6413
|
-
})]);
|
|
6414
6082
|
const _awiki_dsh_plugin_awiki_summarizeConversation_parameter_0$schema = object({
|
|
6415
6083
|
"conversationId": intersection(string(), unknown()).readonly(),
|
|
6416
6084
|
"unreadCountAtOpen": number().readonly().optional()
|
|
@@ -6430,6 +6098,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6430
6098
|
literal("forbidden"),
|
|
6431
6099
|
literal("identity-recovery-required"),
|
|
6432
6100
|
literal("conflict"),
|
|
6101
|
+
literal("state-in-use"),
|
|
6433
6102
|
literal("rate-limited"),
|
|
6434
6103
|
literal("group-membership-required"),
|
|
6435
6104
|
literal("group-identity-stale"),
|
|
@@ -6512,6 +6181,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6512
6181
|
literal("forbidden"),
|
|
6513
6182
|
literal("identity-recovery-required"),
|
|
6514
6183
|
literal("conflict"),
|
|
6184
|
+
literal("state-in-use"),
|
|
6515
6185
|
literal("rate-limited"),
|
|
6516
6186
|
literal("group-membership-required"),
|
|
6517
6187
|
literal("group-identity-stale"),
|
|
@@ -6571,6 +6241,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6571
6241
|
literal("forbidden"),
|
|
6572
6242
|
literal("identity-recovery-required"),
|
|
6573
6243
|
literal("conflict"),
|
|
6244
|
+
literal("state-in-use"),
|
|
6574
6245
|
literal("rate-limited"),
|
|
6575
6246
|
literal("group-membership-required"),
|
|
6576
6247
|
literal("group-identity-stale"),
|
|
@@ -6615,6 +6286,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6615
6286
|
literal("forbidden"),
|
|
6616
6287
|
literal("identity-recovery-required"),
|
|
6617
6288
|
literal("conflict"),
|
|
6289
|
+
literal("state-in-use"),
|
|
6618
6290
|
literal("rate-limited"),
|
|
6619
6291
|
literal("group-membership-required"),
|
|
6620
6292
|
literal("group-identity-stale"),
|
|
@@ -6667,7 +6339,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6667
6339
|
},
|
|
6668
6340
|
sourceLocation: {
|
|
6669
6341
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6670
|
-
"line":
|
|
6342
|
+
"line": 119,
|
|
6671
6343
|
"column": 9
|
|
6672
6344
|
}
|
|
6673
6345
|
},
|
|
@@ -6694,73 +6366,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6694
6366
|
},
|
|
6695
6367
|
sourceLocation: {
|
|
6696
6368
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6697
|
-
"line":
|
|
6369
|
+
"line": 149,
|
|
6698
6370
|
"column": 3
|
|
6699
6371
|
}
|
|
6700
6372
|
},
|
|
6701
|
-
{
|
|
6702
|
-
id: "@awiki/dsh-plugin#awiki/approveDeviceJoin",
|
|
6703
|
-
service: "awiki",
|
|
6704
|
-
namespace: "awiki",
|
|
6705
|
-
method: "approveDeviceJoin",
|
|
6706
|
-
invocation: { kind: "direct" },
|
|
6707
|
-
parameters: [{
|
|
6708
|
-
name: "request",
|
|
6709
|
-
wire: "request",
|
|
6710
|
-
source: "json",
|
|
6711
|
-
codec: {
|
|
6712
|
-
mode: "strict",
|
|
6713
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiApproveDeviceJoinRequest",
|
|
6714
|
-
schema: _awiki_dsh_plugin_awiki_approveDeviceJoin_parameter_0$schema
|
|
6715
|
-
}
|
|
6716
|
-
}],
|
|
6717
|
-
result: {
|
|
6718
|
-
mode: "strict",
|
|
6719
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6720
|
-
schema: _awiki_dsh_plugin_awiki_approveDeviceJoin_result$schema
|
|
6721
|
-
},
|
|
6722
|
-
sourceLocation: {
|
|
6723
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
6724
|
-
"line": 129,
|
|
6725
|
-
"column": 9
|
|
6726
|
-
}
|
|
6727
|
-
},
|
|
6728
|
-
{
|
|
6729
|
-
id: "@awiki/dsh-plugin#awiki/beginDeviceJoin",
|
|
6730
|
-
service: "awiki",
|
|
6731
|
-
namespace: "awiki",
|
|
6732
|
-
method: "beginDeviceJoin",
|
|
6733
|
-
invocation: { kind: "direct" },
|
|
6734
|
-
parameters: [],
|
|
6735
|
-
result: {
|
|
6736
|
-
mode: "strict",
|
|
6737
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6738
|
-
schema: _awiki_dsh_plugin_awiki_beginDeviceJoin_result$schema
|
|
6739
|
-
},
|
|
6740
|
-
sourceLocation: {
|
|
6741
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
6742
|
-
"line": 112,
|
|
6743
|
-
"column": 9
|
|
6744
|
-
}
|
|
6745
|
-
},
|
|
6746
|
-
{
|
|
6747
|
-
id: "@awiki/dsh-plugin#awiki/cancelDeviceJoin",
|
|
6748
|
-
service: "awiki",
|
|
6749
|
-
namespace: "awiki",
|
|
6750
|
-
method: "cancelDeviceJoin",
|
|
6751
|
-
invocation: { kind: "direct" },
|
|
6752
|
-
parameters: [],
|
|
6753
|
-
result: {
|
|
6754
|
-
mode: "strict",
|
|
6755
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6756
|
-
schema: _awiki_dsh_plugin_awiki_cancelDeviceJoin_result$schema
|
|
6757
|
-
},
|
|
6758
|
-
sourceLocation: {
|
|
6759
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
6760
|
-
"line": 118,
|
|
6761
|
-
"column": 9
|
|
6762
|
-
}
|
|
6763
|
-
},
|
|
6764
6373
|
{
|
|
6765
6374
|
id: "@awiki/dsh-plugin#awiki/clearLocalData",
|
|
6766
6375
|
service: "awiki",
|
|
@@ -6784,7 +6393,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6784
6393
|
},
|
|
6785
6394
|
sourceLocation: {
|
|
6786
6395
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6787
|
-
"line":
|
|
6396
|
+
"line": 212,
|
|
6788
6397
|
"column": 3
|
|
6789
6398
|
}
|
|
6790
6399
|
},
|
|
@@ -6811,7 +6420,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6811
6420
|
},
|
|
6812
6421
|
sourceLocation: {
|
|
6813
6422
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6814
|
-
"line":
|
|
6423
|
+
"line": 134,
|
|
6815
6424
|
"column": 9
|
|
6816
6425
|
}
|
|
6817
6426
|
},
|
|
@@ -6838,7 +6447,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6838
6447
|
},
|
|
6839
6448
|
sourceLocation: {
|
|
6840
6449
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6841
|
-
"line":
|
|
6450
|
+
"line": 128,
|
|
6842
6451
|
"column": 9
|
|
6843
6452
|
}
|
|
6844
6453
|
},
|
|
@@ -6861,11 +6470,38 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6861
6470
|
result: {
|
|
6862
6471
|
mode: "strict",
|
|
6863
6472
|
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6864
|
-
schema: _awiki_dsh_plugin_awiki_downloadAttachment_result$schema
|
|
6473
|
+
schema: _awiki_dsh_plugin_awiki_downloadAttachment_result$schema
|
|
6474
|
+
},
|
|
6475
|
+
sourceLocation: {
|
|
6476
|
+
"file": "packages/dsh-awiki/src/index.ts",
|
|
6477
|
+
"line": 189,
|
|
6478
|
+
"column": 9
|
|
6479
|
+
}
|
|
6480
|
+
},
|
|
6481
|
+
{
|
|
6482
|
+
id: "@awiki/dsh-plugin#awiki/downloadMailAttachment",
|
|
6483
|
+
service: "awiki",
|
|
6484
|
+
namespace: "awiki",
|
|
6485
|
+
method: "downloadMailAttachment",
|
|
6486
|
+
invocation: { kind: "direct" },
|
|
6487
|
+
parameters: [{
|
|
6488
|
+
name: "request",
|
|
6489
|
+
wire: "request",
|
|
6490
|
+
source: "json",
|
|
6491
|
+
codec: {
|
|
6492
|
+
mode: "strict",
|
|
6493
|
+
typeSymbol: "@awiki/dsh-plugin/types#AwikiMailAttachmentDownloadRequest",
|
|
6494
|
+
schema: _awiki_dsh_plugin_awiki_downloadMailAttachment_parameter_0$schema
|
|
6495
|
+
}
|
|
6496
|
+
}],
|
|
6497
|
+
result: {
|
|
6498
|
+
mode: "strict",
|
|
6499
|
+
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6500
|
+
schema: _awiki_dsh_plugin_awiki_downloadMailAttachment_result$schema
|
|
6865
6501
|
},
|
|
6866
6502
|
sourceLocation: {
|
|
6867
6503
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6868
|
-
"line":
|
|
6504
|
+
"line": 207,
|
|
6869
6505
|
"column": 9
|
|
6870
6506
|
}
|
|
6871
6507
|
},
|
|
@@ -6883,8 +6519,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6883
6519
|
},
|
|
6884
6520
|
sourceLocation: {
|
|
6885
6521
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6886
|
-
"line":
|
|
6887
|
-
"column":
|
|
6522
|
+
"line": 78,
|
|
6523
|
+
"column": 3
|
|
6888
6524
|
}
|
|
6889
6525
|
},
|
|
6890
6526
|
{
|
|
@@ -6901,28 +6537,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6901
6537
|
},
|
|
6902
6538
|
sourceLocation: {
|
|
6903
6539
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6904
|
-
"line":
|
|
6540
|
+
"line": 158,
|
|
6905
6541
|
"column": 3
|
|
6906
6542
|
}
|
|
6907
6543
|
},
|
|
6908
|
-
{
|
|
6909
|
-
id: "@awiki/dsh-plugin#awiki/getDeviceJoinStatus",
|
|
6910
|
-
service: "awiki",
|
|
6911
|
-
namespace: "awiki",
|
|
6912
|
-
method: "getDeviceJoinStatus",
|
|
6913
|
-
invocation: { kind: "direct" },
|
|
6914
|
-
parameters: [],
|
|
6915
|
-
result: {
|
|
6916
|
-
mode: "strict",
|
|
6917
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
6918
|
-
schema: _awiki_dsh_plugin_awiki_getDeviceJoinStatus_result$schema
|
|
6919
|
-
},
|
|
6920
|
-
sourceLocation: {
|
|
6921
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
6922
|
-
"line": 115,
|
|
6923
|
-
"column": 9
|
|
6924
|
-
}
|
|
6925
|
-
},
|
|
6926
6544
|
{
|
|
6927
6545
|
id: "@awiki/dsh-plugin#awiki/getGroup",
|
|
6928
6546
|
service: "awiki",
|
|
@@ -6946,7 +6564,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6946
6564
|
},
|
|
6947
6565
|
sourceLocation: {
|
|
6948
6566
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6949
|
-
"line":
|
|
6567
|
+
"line": 137,
|
|
6950
6568
|
"column": 3
|
|
6951
6569
|
}
|
|
6952
6570
|
},
|
|
@@ -6973,7 +6591,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6973
6591
|
},
|
|
6974
6592
|
sourceLocation: {
|
|
6975
6593
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6976
|
-
"line":
|
|
6594
|
+
"line": 169,
|
|
6977
6595
|
"column": 3
|
|
6978
6596
|
}
|
|
6979
6597
|
},
|
|
@@ -6991,7 +6609,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6991
6609
|
},
|
|
6992
6610
|
sourceLocation: {
|
|
6993
6611
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
6994
|
-
"line":
|
|
6612
|
+
"line": 81,
|
|
6995
6613
|
"column": 9
|
|
6996
6614
|
}
|
|
6997
6615
|
},
|
|
@@ -7018,7 +6636,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7018
6636
|
},
|
|
7019
6637
|
sourceLocation: {
|
|
7020
6638
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7021
|
-
"line":
|
|
6639
|
+
"line": 172,
|
|
7022
6640
|
"column": 3
|
|
7023
6641
|
}
|
|
7024
6642
|
},
|
|
@@ -7036,7 +6654,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7036
6654
|
},
|
|
7037
6655
|
sourceLocation: {
|
|
7038
6656
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7039
|
-
"line":
|
|
6657
|
+
"line": 192,
|
|
7040
6658
|
"column": 3
|
|
7041
6659
|
}
|
|
7042
6660
|
},
|
|
@@ -7054,7 +6672,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7054
6672
|
},
|
|
7055
6673
|
sourceLocation: {
|
|
7056
6674
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7057
|
-
"line":
|
|
6675
|
+
"line": 107,
|
|
7058
6676
|
"column": 3
|
|
7059
6677
|
}
|
|
7060
6678
|
},
|
|
@@ -7081,7 +6699,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7081
6699
|
},
|
|
7082
6700
|
sourceLocation: {
|
|
7083
6701
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7084
|
-
"line":
|
|
6702
|
+
"line": 122,
|
|
7085
6703
|
"column": 9
|
|
7086
6704
|
}
|
|
7087
6705
|
},
|
|
@@ -7099,7 +6717,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7099
6717
|
},
|
|
7100
6718
|
sourceLocation: {
|
|
7101
6719
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7102
|
-
"line":
|
|
6720
|
+
"line": 84,
|
|
7103
6721
|
"column": 9
|
|
7104
6722
|
}
|
|
7105
6723
|
},
|
|
@@ -7126,7 +6744,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7126
6744
|
},
|
|
7127
6745
|
sourceLocation: {
|
|
7128
6746
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7129
|
-
"line":
|
|
6747
|
+
"line": 93,
|
|
7130
6748
|
"column": 9
|
|
7131
6749
|
}
|
|
7132
6750
|
},
|
|
@@ -7153,7 +6771,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7153
6771
|
},
|
|
7154
6772
|
sourceLocation: {
|
|
7155
6773
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7156
|
-
"line":
|
|
6774
|
+
"line": 140,
|
|
7157
6775
|
"column": 3
|
|
7158
6776
|
}
|
|
7159
6777
|
},
|
|
@@ -7180,7 +6798,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7180
6798
|
},
|
|
7181
6799
|
sourceLocation: {
|
|
7182
6800
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7183
|
-
"line":
|
|
6801
|
+
"line": 143,
|
|
7184
6802
|
"column": 9
|
|
7185
6803
|
}
|
|
7186
6804
|
},
|
|
@@ -7208,7 +6826,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7208
6826
|
},
|
|
7209
6827
|
sourceLocation: {
|
|
7210
6828
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7211
|
-
"line":
|
|
6829
|
+
"line": 166,
|
|
7212
6830
|
"column": 3
|
|
7213
6831
|
}
|
|
7214
6832
|
},
|
|
@@ -7235,7 +6853,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7235
6853
|
},
|
|
7236
6854
|
sourceLocation: {
|
|
7237
6855
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7238
|
-
"line":
|
|
6856
|
+
"line": 146,
|
|
7239
6857
|
"column": 3
|
|
7240
6858
|
}
|
|
7241
6859
|
},
|
|
@@ -7263,7 +6881,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7263
6881
|
},
|
|
7264
6882
|
sourceLocation: {
|
|
7265
6883
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7266
|
-
"line":
|
|
6884
|
+
"line": 195,
|
|
7267
6885
|
"column": 9
|
|
7268
6886
|
}
|
|
7269
6887
|
},
|
|
@@ -7281,7 +6899,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7281
6899
|
},
|
|
7282
6900
|
sourceLocation: {
|
|
7283
6901
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7284
|
-
"line":
|
|
6902
|
+
"line": 90,
|
|
7285
6903
|
"column": 3
|
|
7286
6904
|
}
|
|
7287
6905
|
},
|
|
@@ -7308,7 +6926,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7308
6926
|
},
|
|
7309
6927
|
sourceLocation: {
|
|
7310
6928
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7311
|
-
"line":
|
|
6929
|
+
"line": 87,
|
|
7312
6930
|
"column": 3
|
|
7313
6931
|
}
|
|
7314
6932
|
},
|
|
@@ -7335,7 +6953,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7335
6953
|
},
|
|
7336
6954
|
sourceLocation: {
|
|
7337
6955
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7338
|
-
"line":
|
|
6956
|
+
"line": 180,
|
|
7339
6957
|
"column": 3
|
|
7340
6958
|
}
|
|
7341
6959
|
},
|
|
@@ -7362,7 +6980,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7362
6980
|
},
|
|
7363
6981
|
sourceLocation: {
|
|
7364
6982
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7365
|
-
"line":
|
|
6983
|
+
"line": 201,
|
|
7366
6984
|
"column": 3
|
|
7367
6985
|
}
|
|
7368
6986
|
},
|
|
@@ -7389,7 +7007,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7389
7007
|
},
|
|
7390
7008
|
sourceLocation: {
|
|
7391
7009
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7392
|
-
"line":
|
|
7010
|
+
"line": 116,
|
|
7393
7011
|
"column": 3
|
|
7394
7012
|
}
|
|
7395
7013
|
},
|
|
@@ -7416,28 +7034,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7416
7034
|
},
|
|
7417
7035
|
sourceLocation: {
|
|
7418
7036
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7419
|
-
"line":
|
|
7037
|
+
"line": 198,
|
|
7420
7038
|
"column": 9
|
|
7421
7039
|
}
|
|
7422
7040
|
},
|
|
7423
|
-
{
|
|
7424
|
-
id: "@awiki/dsh-plugin#awiki/refreshDeviceManagement",
|
|
7425
|
-
service: "awiki",
|
|
7426
|
-
namespace: "awiki",
|
|
7427
|
-
method: "refreshDeviceManagement",
|
|
7428
|
-
invocation: { kind: "direct" },
|
|
7429
|
-
parameters: [],
|
|
7430
|
-
result: {
|
|
7431
|
-
mode: "strict",
|
|
7432
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
7433
|
-
schema: _awiki_dsh_plugin_awiki_refreshDeviceManagement_result$schema
|
|
7434
|
-
},
|
|
7435
|
-
sourceLocation: {
|
|
7436
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
7437
|
-
"line": 121,
|
|
7438
|
-
"column": 3
|
|
7439
|
-
}
|
|
7440
|
-
},
|
|
7441
7041
|
{
|
|
7442
7042
|
id: "@awiki/dsh-plugin#awiki/registerIdentity",
|
|
7443
7043
|
service: "awiki",
|
|
@@ -7461,34 +7061,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7461
7061
|
},
|
|
7462
7062
|
sourceLocation: {
|
|
7463
7063
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7464
|
-
"line":
|
|
7465
|
-
"column": 9
|
|
7466
|
-
}
|
|
7467
|
-
},
|
|
7468
|
-
{
|
|
7469
|
-
id: "@awiki/dsh-plugin#awiki/rejectDeviceJoin",
|
|
7470
|
-
service: "awiki",
|
|
7471
|
-
namespace: "awiki",
|
|
7472
|
-
method: "rejectDeviceJoin",
|
|
7473
|
-
invocation: { kind: "direct" },
|
|
7474
|
-
parameters: [{
|
|
7475
|
-
name: "request",
|
|
7476
|
-
wire: "request",
|
|
7477
|
-
source: "json",
|
|
7478
|
-
codec: {
|
|
7479
|
-
mode: "strict",
|
|
7480
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiRejectDeviceJoinRequest",
|
|
7481
|
-
schema: _awiki_dsh_plugin_awiki_rejectDeviceJoin_parameter_0$schema
|
|
7482
|
-
}
|
|
7483
|
-
}],
|
|
7484
|
-
result: {
|
|
7485
|
-
mode: "strict",
|
|
7486
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
7487
|
-
schema: _awiki_dsh_plugin_awiki_rejectDeviceJoin_result$schema
|
|
7488
|
-
},
|
|
7489
|
-
sourceLocation: {
|
|
7490
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
7491
|
-
"line": 134,
|
|
7064
|
+
"line": 101,
|
|
7492
7065
|
"column": 9
|
|
7493
7066
|
}
|
|
7494
7067
|
},
|
|
@@ -7515,7 +7088,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7515
7088
|
},
|
|
7516
7089
|
sourceLocation: {
|
|
7517
7090
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7518
|
-
"line":
|
|
7091
|
+
"line": 152,
|
|
7519
7092
|
"column": 3
|
|
7520
7093
|
}
|
|
7521
7094
|
},
|
|
@@ -7542,7 +7115,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7542
7115
|
},
|
|
7543
7116
|
sourceLocation: {
|
|
7544
7117
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7545
|
-
"line":
|
|
7118
|
+
"line": 131,
|
|
7546
7119
|
"column": 3
|
|
7547
7120
|
}
|
|
7548
7121
|
},
|
|
@@ -7560,7 +7133,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7560
7133
|
},
|
|
7561
7134
|
sourceLocation: {
|
|
7562
7135
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7563
|
-
"line":
|
|
7136
|
+
"line": 155,
|
|
7564
7137
|
"column": 9
|
|
7565
7138
|
}
|
|
7566
7139
|
},
|
|
@@ -7587,34 +7160,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7587
7160
|
},
|
|
7588
7161
|
sourceLocation: {
|
|
7589
7162
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7590
|
-
"line":
|
|
7591
|
-
"column": 9
|
|
7592
|
-
}
|
|
7593
|
-
},
|
|
7594
|
-
{
|
|
7595
|
-
id: "@awiki/dsh-plugin#awiki/revokeDevice",
|
|
7596
|
-
service: "awiki",
|
|
7597
|
-
namespace: "awiki",
|
|
7598
|
-
method: "revokeDevice",
|
|
7599
|
-
invocation: { kind: "direct" },
|
|
7600
|
-
parameters: [{
|
|
7601
|
-
name: "request",
|
|
7602
|
-
wire: "request",
|
|
7603
|
-
source: "json",
|
|
7604
|
-
codec: {
|
|
7605
|
-
mode: "strict",
|
|
7606
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiRevokeDeviceRequest",
|
|
7607
|
-
schema: _awiki_dsh_plugin_awiki_revokeDevice_parameter_0$schema
|
|
7608
|
-
}
|
|
7609
|
-
}],
|
|
7610
|
-
result: {
|
|
7611
|
-
mode: "strict",
|
|
7612
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
7613
|
-
schema: _awiki_dsh_plugin_awiki_revokeDevice_result$schema
|
|
7614
|
-
},
|
|
7615
|
-
sourceLocation: {
|
|
7616
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
7617
|
-
"line": 139,
|
|
7163
|
+
"line": 125,
|
|
7618
7164
|
"column": 9
|
|
7619
7165
|
}
|
|
7620
7166
|
},
|
|
@@ -7641,7 +7187,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7641
7187
|
},
|
|
7642
7188
|
sourceLocation: {
|
|
7643
7189
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7644
|
-
"line":
|
|
7190
|
+
"line": 186,
|
|
7645
7191
|
"column": 9
|
|
7646
7192
|
}
|
|
7647
7193
|
},
|
|
@@ -7668,7 +7214,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7668
7214
|
},
|
|
7669
7215
|
sourceLocation: {
|
|
7670
7216
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7671
|
-
"line":
|
|
7217
|
+
"line": 204,
|
|
7672
7218
|
"column": 9
|
|
7673
7219
|
}
|
|
7674
7220
|
},
|
|
@@ -7695,7 +7241,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7695
7241
|
},
|
|
7696
7242
|
sourceLocation: {
|
|
7697
7243
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7698
|
-
"line":
|
|
7244
|
+
"line": 113,
|
|
7699
7245
|
"column": 3
|
|
7700
7246
|
}
|
|
7701
7247
|
},
|
|
@@ -7722,8 +7268,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7722
7268
|
},
|
|
7723
7269
|
sourceLocation: {
|
|
7724
7270
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7725
|
-
"line":
|
|
7726
|
-
"column":
|
|
7271
|
+
"line": 98,
|
|
7272
|
+
"column": 3
|
|
7727
7273
|
}
|
|
7728
7274
|
},
|
|
7729
7275
|
{
|
|
@@ -7749,37 +7295,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7749
7295
|
},
|
|
7750
7296
|
sourceLocation: {
|
|
7751
7297
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7752
|
-
"line":
|
|
7298
|
+
"line": 183,
|
|
7753
7299
|
"column": 3
|
|
7754
7300
|
}
|
|
7755
7301
|
},
|
|
7756
|
-
{
|
|
7757
|
-
id: "@awiki/dsh-plugin#awiki/startDeviceJoinVerification",
|
|
7758
|
-
service: "awiki",
|
|
7759
|
-
namespace: "awiki",
|
|
7760
|
-
method: "startDeviceJoinVerification",
|
|
7761
|
-
invocation: { kind: "direct" },
|
|
7762
|
-
parameters: [{
|
|
7763
|
-
name: "request",
|
|
7764
|
-
wire: "request",
|
|
7765
|
-
source: "json",
|
|
7766
|
-
codec: {
|
|
7767
|
-
mode: "strict",
|
|
7768
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiRequestRefInput",
|
|
7769
|
-
schema: _awiki_dsh_plugin_awiki_startDeviceJoinVerification_parameter_0$schema
|
|
7770
|
-
}
|
|
7771
|
-
}],
|
|
7772
|
-
result: {
|
|
7773
|
-
mode: "strict",
|
|
7774
|
-
typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
|
|
7775
|
-
schema: _awiki_dsh_plugin_awiki_startDeviceJoinVerification_result$schema
|
|
7776
|
-
},
|
|
7777
|
-
sourceLocation: {
|
|
7778
|
-
"file": "packages/dsh-awiki/src/index.ts",
|
|
7779
|
-
"line": 124,
|
|
7780
|
-
"column": 9
|
|
7781
|
-
}
|
|
7782
|
-
},
|
|
7783
7302
|
{
|
|
7784
7303
|
id: "@awiki/dsh-plugin#awiki/summarizeConversation",
|
|
7785
7304
|
service: "awiki",
|
|
@@ -7803,7 +7322,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7803
7322
|
},
|
|
7804
7323
|
sourceLocation: {
|
|
7805
7324
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7806
|
-
"line":
|
|
7325
|
+
"line": 175,
|
|
7807
7326
|
"column": 9
|
|
7808
7327
|
}
|
|
7809
7328
|
},
|
|
@@ -7830,7 +7349,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7830
7349
|
},
|
|
7831
7350
|
sourceLocation: {
|
|
7832
7351
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7833
|
-
"line":
|
|
7352
|
+
"line": 161,
|
|
7834
7353
|
"column": 3
|
|
7835
7354
|
}
|
|
7836
7355
|
},
|
|
@@ -7857,7 +7376,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7857
7376
|
},
|
|
7858
7377
|
sourceLocation: {
|
|
7859
7378
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7860
|
-
"line":
|
|
7379
|
+
"line": 104,
|
|
7861
7380
|
"column": 9
|
|
7862
7381
|
}
|
|
7863
7382
|
},
|
|
@@ -7884,7 +7403,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7884
7403
|
},
|
|
7885
7404
|
sourceLocation: {
|
|
7886
7405
|
"file": "packages/dsh-awiki/src/index.ts",
|
|
7887
|
-
"line":
|
|
7406
|
+
"line": 110,
|
|
7888
7407
|
"column": 3
|
|
7889
7408
|
}
|
|
7890
7409
|
}
|
|
@@ -7913,13 +7432,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7913
7432
|
const AWIKI_CLEAR_LOCAL_DATA_CONFIRMATION = "clear-awiki-local-data";
|
|
7914
7433
|
//#endregion
|
|
7915
7434
|
//#region \0dsh-awiki-css:AwikiIdentityPage.module.css.mjs
|
|
7916
|
-
const css$
|
|
7917
|
-
const tagId$
|
|
7918
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$
|
|
7435
|
+
const css$4 = "._0dbJua_page{width:100%;height:100%;min-height:0;color:var(--dsw-alias-label-secondary);grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}._0dbJua_navigation{box-sizing:border-box;align-items:center;min-height:44px;padding:8px 16px 0;display:flex}._0dbJua_backButton{min-height:36px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 8px;font-size:12px;line-height:18px;display:inline-flex}._0dbJua_backButton:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}._0dbJua_backButton:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}._0dbJua_backButton:disabled{cursor:default;opacity:.5}._0dbJua_viewport{min-height:0;overflow:auto}._0dbJua_content{box-sizing:border-box;align-content:center;width:min(400px,100%);min-height:100%;margin:0 auto;padding:28px 32px;display:grid}@media (height<=560px){._0dbJua_navigation{min-height:36px;padding:4px 8px 0}._0dbJua_backButton{min-height:32px}._0dbJua_content{align-content:start;padding:12px 16px}}@media (prefers-reduced-motion:reduce){._0dbJua_backButton{transition-duration:.001ms!important}}";
|
|
7436
|
+
const tagId$4 = "@awiki/dsh-plugin/AwikiIdentityPage.module.css";
|
|
7437
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$4) + "]") === null) {
|
|
7919
7438
|
const tag = document.createElement("style");
|
|
7920
7439
|
tag.dataset.plugin = "@awiki/dsh-plugin";
|
|
7921
|
-
tag.dataset.pluginCss = tagId$
|
|
7922
|
-
tag.textContent = css$
|
|
7440
|
+
tag.dataset.pluginCss = tagId$4;
|
|
7441
|
+
tag.textContent = css$4;
|
|
7923
7442
|
document.head.appendChild(tag);
|
|
7924
7443
|
}
|
|
7925
7444
|
var _dsh_awiki_css_AwikiIdentityPage_module_css_default = {
|
|
@@ -7957,13 +7476,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7957
7476
|
}
|
|
7958
7477
|
//#endregion
|
|
7959
7478
|
//#region \0dsh-awiki-css:AwikiOverlay.module.css.mjs
|
|
7960
|
-
const css$4 = ".EtEeYG_trigger{z-index:2;border:1px solid var(--dsw-alias-border-l2);width:48px;height:48px;color:var(--dsw-alias-brand-primary);box-shadow:var(--dsw-shadow-lv2);cursor:grab;font:inherit;touch-action:none;user-select:none;background:#fff;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;overflow:visible}.EtEeYG_trigger:hover{box-shadow:var(--dsw-shadow-lv3);background:#fff}.EtEeYG_trigger:active,.EtEeYG_trigger[data-dragging]{cursor:grabbing}.EtEeYG_launcherIcon{object-fit:cover;pointer-events:none;border-radius:50%;width:100%;height:100%;display:block}.EtEeYG_unreadBadge{border:2px solid var(--dsw-alias-bg-base);background:var(--dsw-alias-state-error-primary);color:#fff;box-sizing:border-box;pointer-events:none;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:600;line-height:16px;display:grid;position:absolute;top:-5px;right:-5px}.EtEeYG_trigger:focus-visible,.EtEeYG_drawer button:focus-visible,.EtEeYG_drawer input:focus-visible,.EtEeYG_drawer textarea:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_drawer{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);z-index:1;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:min(720px,100vw - 80px);min-width:min(360px,100vw - 80px);height:min(720px,100vh - 16px);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv3);border-radius:16px;flex-direction:column;transition:width .16s;display:flex;position:fixed;overflow:hidden}.EtEeYG_drawer[data-mode=mail]{width:min(1040px,100vw - 80px)}.EtEeYG_drawer[data-resizing]{user-select:none;transition:none}.EtEeYG_resizeHandle{z-index:5;touch-action:none;user-select:none;position:absolute}.EtEeYG_resizeHandle[data-resize-handle=n],.EtEeYG_resizeHandle[data-resize-handle=s]{cursor:ns-resize;height:8px;left:14px;right:14px}.EtEeYG_resizeHandle[data-resize-handle=n]{top:0}.EtEeYG_resizeHandle[data-resize-handle=s]{bottom:0}.EtEeYG_resizeHandle[data-resize-handle=e],.EtEeYG_resizeHandle[data-resize-handle=w]{cursor:ew-resize;width:8px;top:14px;bottom:14px}.EtEeYG_resizeHandle[data-resize-handle=e]{right:0}.EtEeYG_resizeHandle[data-resize-handle=w]{left:0}.EtEeYG_resizeHandle[data-resize-handle=ne],.EtEeYG_resizeHandle[data-resize-handle=se],.EtEeYG_resizeHandle[data-resize-handle=sw],.EtEeYG_resizeHandle[data-resize-handle=nw]{width:14px;height:14px}.EtEeYG_resizeHandle[data-resize-handle=ne]{cursor:nesw-resize;top:0;right:0}.EtEeYG_resizeHandle[data-resize-handle=se]{cursor:nwse-resize;bottom:0;right:0}.EtEeYG_resizeHandle[data-resize-handle=sw]{cursor:nesw-resize;bottom:0;left:0}.EtEeYG_resizeHandle[data-resize-handle=nw]{cursor:nwse-resize;top:0;left:0}.EtEeYG_drawerHeader{border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;touch-action:none;user-select:none;flex:none;align-items:center;gap:8px;height:58px;padding:0 14px 0 18px;display:flex}.EtEeYG_drawerHeader[data-dragging]{cursor:grabbing}.EtEeYG_drawerHeader>div{flex:1;align-items:center;gap:8px;display:flex}.EtEeYG_drawerHeader h2{margin:0;font-size:16px;line-height:24px}.EtEeYG_drawerHeader button,.EtEeYG_back{cursor:pointer;width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.EtEeYG_drawerHeader button:hover,.EtEeYG_back:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_centerState,.EtEeYG_threadEmpty{text-align:center;color:var(--dsw-alias-label-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:32px;display:flex}.EtEeYG_centerState p{overflow-wrap:anywhere;max-width:420px;margin:0}.EtEeYG_registrationIcon{background:var(--dsw-alias-interactive-bg-active);width:48px;height:48px;color:var(--dsw-alias-brand-primary);border-radius:50%;justify-self:center;place-items:center;display:grid}.EtEeYG_fileDraft input,.EtEeYG_composeRow textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:10px}.EtEeYG_primary,.EtEeYG_more,.EtEeYG_fileDraft button{background:var(--dsw-alias-button-primary-fill);min-height:36px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;font:inherit;border:0;border-radius:10px;padding:0 14px}.EtEeYG_primary:hover,.EtEeYG_fileDraft button:hover{background:var(--dsw-alias-button-primary-hover)}.EtEeYG_primary:disabled,.EtEeYG_fileDraft button:disabled{opacity:.5;cursor:default}.EtEeYG_secondary{border:1px solid var(--dsw-alias-border-l2);min-height:36px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:10px;padding:0 14px}.EtEeYG_secondary:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_composeBackdrop{background:color-mix(in srgb, var(--dsw-alias-bg-layer-1) 72%, transparent);place-items:center;padding:24px;display:grid;position:absolute;inset:58px 0 0;overflow:auto}.EtEeYG_composeCard{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:min(360px,100%);box-shadow:var(--dsw-shadow-lv3);border-radius:14px;gap:12px;padding:20px;display:grid}.EtEeYG_composeCard h3{margin:0;font-size:16px;line-height:24px}.EtEeYG_composeCard p{color:var(--dsw-alias-label-secondary);margin:0;font-size:13px;line-height:20px}.EtEeYG_composeCard label{color:var(--dsw-alias-label-secondary);gap:6px;font-size:13px;line-height:20px;display:grid}.EtEeYG_composeCard input,.EtEeYG_composeCard textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:10px;padding:9px 12px}.EtEeYG_composeCard input{height:40px;padding-block:0}.EtEeYG_composeCard textarea{resize:vertical;min-height:92px}.EtEeYG_composeActions{justify-content:flex-end;gap:8px;display:flex}.EtEeYG_logoutWarning{color:var(--dsw-alias-label-secondary);gap:8px;font-size:13px;line-height:20px;display:grid}.EtEeYG_logoutWarning p{margin:0}.EtEeYG_logoutConfirm{border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}.EtEeYG_compactModal.EtEeYG_compactModal{max-height:calc(100vh - 48px)}.EtEeYG_compactModalContent{min-height:0;overflow-y:auto}.EtEeYG_linkButton{color:var(--dsw-alias-brand-primary);cursor:pointer;background:0 0;border:0}.EtEeYG_notice{color:var(--dsw-alias-state-success-primary);text-align:center}.EtEeYG_identityAccess{flex:1;min-height:0;overflow:hidden}.EtEeYG_recoveryForm{width:100%;min-width:0;color:var(--dsw-alias-label-secondary);gap:14px;display:grid}.EtEeYG_recoveryForm h3{color:var(--dsw-alias-label-primary);text-align:center;margin:0}.EtEeYG_recoveryForm>p{text-align:center;margin:0;font-size:13px;line-height:20px}.EtEeYG_recoveryForm>label:not(.EtEeYG_recoveryConfirmation){gap:6px;font-size:13px;line-height:20px;display:grid}.EtEeYG_recoveryForm>label>input:not([type=checkbox]){box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;height:40px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:0 12px}.EtEeYG_recoveryForm input:focus-visible,.EtEeYG_recoveryForm button:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_recoveryStatusLine{border-bottom:1px solid var(--dsw-alias-border-l1);gap:3px;min-width:0;padding-bottom:10px;display:grid}.EtEeYG_recoveryStatusLine span{color:var(--dsw-alias-brand-primary);font-size:12px;font-weight:600}.EtEeYG_recoveryIdentitySummary{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:8px;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;min-width:0;padding:12px;font-size:12px;line-height:18px;display:grid}.EtEeYG_recoveryIdentitySummary span{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryIdentitySummary strong{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-primary)}.EtEeYG_recoveryDiagnostics{border-top:1px solid var(--dsw-alias-border-l1);min-width:0;color:var(--dsw-alias-label-tertiary);padding-top:2px;font-size:11px;line-height:17px}.EtEeYG_recoveryDiagnostics summary{cursor:pointer;width:max-content;color:var(--dsw-alias-label-secondary);user-select:none}.EtEeYG_recoveryDiagnostics summary:hover{color:var(--dsw-alias-label-primary)}.EtEeYG_recoveryDiagnostics summary:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px;border-radius:4px}.EtEeYG_recoveryDiagnostics dl{gap:6px;margin:8px 0 0;display:grid}.EtEeYG_recoveryDiagnostics dl>div{gap:2px;min-width:0;display:grid}.EtEeYG_recoveryDiagnostics dt{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryDiagnostics dd{min-width:0;margin:0}.EtEeYG_recoveryDiagnostics code{overflow-wrap:anywhere;color:var(--dsw-alias-label-secondary);font-size:10px;line-height:16px;display:block}.EtEeYG_recoveryImpact{border-left:3px solid var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-2);gap:6px;padding:12px;display:grid}.EtEeYG_recoveryImpact p{align-items:flex-start;gap:7px;margin:0;font-size:12px;line-height:18px;display:flex}.EtEeYG_recoveryImpact svg{flex:none;margin-top:2px}.EtEeYG_recoveryImpact p[data-tone=success] svg{color:var(--dsw-alias-state-success-primary)}.EtEeYG_recoveryImpact p[data-tone=neutral] svg{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryHandle{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);text-align:center;margin:-8px 0 0;font-size:13px;line-height:20px}.EtEeYG_recoveryConfirmationCopy{color:var(--dsw-alias-label-secondary);text-align:left;margin:0;font-size:12px;line-height:18px}.EtEeYG_recoveryProgressPanel{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);text-align:center;border-radius:8px;justify-items:center;gap:10px;min-width:0;padding:16px;display:grid}.EtEeYG_recoveryProgressPanel>svg{color:var(--dsw-alias-brand-primary);animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_recoveryProgressPanel p{margin:0;font-size:12px;line-height:18px}.EtEeYG_recoveryProgressPanel button{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.EtEeYG_chat{flex:1;grid-template-columns:240px minmax(0,1fr);min-height:0;display:grid}.EtEeYG_roster{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex-direction:column;min-width:0;display:flex}.EtEeYG_identityCard{background:var(--dsw-alias-bg-layer-3);border-radius:12px;flex-direction:column;gap:2px;margin:14px;padding:12px;display:flex}.EtEeYG_identityNameRow{align-items:center;min-width:0;min-height:24px;display:flex}.EtEeYG_profileAvatar{background:var(--dsw-alias-interactive-bg-active);width:24px;height:24px;color:var(--dsw-alias-brand-primary);border-radius:50%;flex:none;place-items:center;margin-right:7px;display:grid}.EtEeYG_identityNameText{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;line-height:22px;overflow:hidden}.EtEeYG_identityName{min-width:0;color:var(--dsw-alias-label-primary);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;background:0 0;border:0;flex:1;padding:0;font-size:16px;font-weight:600;line-height:24px;overflow:hidden}.EtEeYG_identityName:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px;border-radius:4px}.EtEeYG_identityEdit{width:24px;height:24px;color:var(--dsw-alias-label-secondary);cursor:pointer;opacity:.72;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin-left:4px;padding:0;transition:opacity .12s;display:grid}.EtEeYG_identityNameRow:hover .EtEeYG_identityEdit,.EtEeYG_identityNameRow:focus-within .EtEeYG_identityEdit{opacity:1}.EtEeYG_identityEdit:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_identityEditor{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.EtEeYG_identityEditor input{border:1px solid var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1);min-width:0;height:28px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;outline:none;flex:1;padding:0 8px;font-size:13px}.EtEeYG_identityEditor button{width:26px;height:26px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_identityEditor button:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_identityEditor button:disabled,.EtEeYG_identityName:disabled{cursor:default;opacity:.5}.EtEeYG_identityEdit:disabled{cursor:default}.EtEeYG_identityHandle{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.EtEeYG_identityStatus{color:var(--dsw-alias-state-success-primary);margin-top:4px;font-size:12px;line-height:18px}.EtEeYG_identityError{color:var(--dsw-alias-state-error-primary);margin-top:4px;font-size:11px;line-height:16px}.EtEeYG_identityCard i{background:var(--dsw-alias-state-success-primary);border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.EtEeYG_profileBio{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 2px;font-size:11px;line-height:17px;display:-webkit-box;overflow:hidden}.EtEeYG_profileTags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.EtEeYG_profileTags>span{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);min-width:0;max-width:100%;min-height:20px;color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;border-radius:7px;align-items:center;gap:3px;padding:0 6px;font-size:10px;line-height:16px;display:inline-flex}.EtEeYG_profileTags>span>button{width:16px;height:16px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.EtEeYG_profileTags>span>button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_profileEditor{gap:10px;display:grid}.EtEeYG_profileEditor label{color:var(--dsw-alias-label-secondary);gap:4px;font-size:11px;line-height:16px;display:grid;position:relative}.EtEeYG_profileEditor label>small{color:var(--dsw-alias-label-tertiary);font-size:10px;position:absolute;top:0;right:1px}.EtEeYG_profileEditor input,.EtEeYG_profileEditor textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;padding:7px 8px;font-size:12px}.EtEeYG_profileEditor input{height:32px;padding-block:0}.EtEeYG_profileEditor textarea{resize:vertical}.EtEeYG_profileTagEditor{gap:4px;display:grid}.EtEeYG_profileTagEditor>div:first-of-type{grid-template-columns:minmax(0,1fr) 30px;gap:5px;display:grid}.EtEeYG_profileTagEditor>div:first-of-type button{border:1px solid var(--dsw-alias-border-l2);width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border-radius:7px;place-items:center;padding:0;display:grid}.EtEeYG_profileEditorActions{grid-template-columns:1fr 1fr;gap:6px;margin-top:2px;display:grid}.EtEeYG_profileEditorActions button{min-width:0;padding-inline:6px;font-size:12px}.EtEeYG_modePanel{flex:1;min-height:0;display:none}.EtEeYG_modePanel[data-active]{display:flex}.EtEeYG_modeTabs{background:var(--dsw-alias-bg-layer-3);border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;margin:0 14px 12px;padding:3px;display:grid}.EtEeYG_modeTabs button{min-height:30px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:12px;line-height:18px;display:flex}.EtEeYG_modeTabs button:hover{color:var(--dsw-alias-label-primary)}.EtEeYG_modeTabs button[aria-selected=true]{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1)}.EtEeYG_modeTabs small{min-width:18px;color:var(--dsw-alias-brand-primary);font-size:10px;line-height:14px}.EtEeYG_rosterHeader{justify-content:space-between;align-items:center;min-height:32px;padding:0 8px 8px 16px;display:flex}.EtEeYG_rosterTitle{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}.EtEeYG_rosterActions{align-items:center;gap:2px;display:flex}.EtEeYG_rosterAction{width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.EtEeYG_rosterAction:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_rosterActions .EtEeYG_rosterAction{position:relative}.EtEeYG_rosterActions .EtEeYG_rosterAction small{background:var(--dsw-alias-bg-layer-3);min-width:14px;height:14px;color:var(--dsw-alias-label-secondary);box-sizing:border-box;border-radius:7px;place-items:center;padding:0 3px;font-size:9px;line-height:12px;display:grid;position:absolute;top:1px;right:0}.EtEeYG_groupRecoveryNotice{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);border-radius:8px;align-items:flex-start;gap:8px;margin:0 8px 8px;padding:9px 10px;display:flex}.EtEeYG_groupRecoveryNotice[data-status=blocked]{border-color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupRecoveryNotice>span{flex:1;gap:2px;min-width:0;display:grid}.EtEeYG_groupRecoveryNotice strong{font-size:12px;line-height:18px}.EtEeYG_groupRecoveryNotice small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_groupRecoveryNotice button{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_groupRecoveryNotice button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupRecoveryNotice button:disabled{cursor:default;opacity:.5}.EtEeYG_conversationList{flex:1;min-height:0;padding:0 8px;overflow:auto}.EtEeYG_conversationRow{width:100%;color:inherit;background:0 0;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.EtEeYG_conversationRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_conversationRow[data-active]{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_conversationSelect{width:100%;min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px;display:flex}.EtEeYG_conversationMenu{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:7px;place-items:center;margin-right:5px;padding:0;display:grid}.EtEeYG_conversationRow:hover .EtEeYG_conversationMenu,.EtEeYG_conversationRow:focus-within .EtEeYG_conversationMenu,.EtEeYG_conversationMenu[aria-expanded=true]{opacity:1}.EtEeYG_conversationMenu:hover{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.EtEeYG_conversationMenu:disabled{cursor:default;opacity:.45}.EtEeYG_avatar{background:var(--dsw-alias-interactive-bg-active);width:34px;height:34px;color:var(--dsw-alias-brand-primary);border-radius:50%;flex:none;place-items:center;font-size:12px;line-height:18px;display:grid;position:relative;overflow:visible}.EtEeYG_conversationUnreadBadge{border:2px solid var(--dsw-alias-bg-layer-2);background:var(--dsw-alias-state-error-primary);min-width:18px;height:18px;color:var(--dsw-alias-label-primary-inverted);box-sizing:border-box;pointer-events:none;border-radius:9px;place-items:center;padding:0 4px;font-size:10px;font-weight:600;line-height:14px;display:grid;position:absolute;top:-6px;right:-7px}.EtEeYG_conversationText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.EtEeYG_conversationHeader{align-items:center;gap:8px;min-width:0;display:flex}.EtEeYG_conversationHeader strong{flex:1;min-width:0}.EtEeYG_conversationTime{color:var(--dsw-alias-label-tertiary);flex:none;font-size:11px;font-weight:400;line-height:16px}.EtEeYG_conversationText strong,.EtEeYG_conversationText small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_conversationText strong{font-size:13px;line-height:20px}.EtEeYG_conversationText small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_more{background:var(--dsw-alias-button-elevated-fill);color:var(--dsw-alias-label-secondary);margin:8px}.EtEeYG_more:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_hiddenConversationList{max-height:min(320px,48vh);display:grid;overflow:auto}.EtEeYG_hiddenConversationRow{border-bottom:1px solid var(--dsw-alias-border-l1);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:50px;padding:6px 2px;display:grid}.EtEeYG_hiddenConversationRow:last-child{border-bottom:0}.EtEeYG_hiddenConversationRow .EtEeYG_avatar{width:30px;height:30px}.EtEeYG_hiddenConversationRow>span:nth-child(2){min-width:0;display:grid}.EtEeYG_hiddenConversationRow strong,.EtEeYG_hiddenConversationRow small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_hiddenConversationRow strong{font-size:12px;line-height:18px}.EtEeYG_hiddenConversationRow small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.EtEeYG_hiddenConversationRow>button{border:1px solid var(--dsw-alias-border-l2);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:7px;padding:0 9px;font-size:11px}.EtEeYG_hiddenConversationRow>button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_hiddenConversationRow>button:disabled{cursor:default;opacity:.55}.EtEeYG_conversationPreferenceError{color:var(--dsw-alias-state-error-primary);font-size:11px;line-height:17px}.EtEeYG_thread{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.EtEeYG_threadHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:8px;height:56px;padding:0 14px;display:flex}.EtEeYG_threadTitle{flex-direction:column;flex:1;min-width:0;display:flex}.EtEeYG_threadTitle strong,.EtEeYG_threadTitle small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_threadHeader small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_threadAction{width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_threadAction:hover,.EtEeYG_threadAction[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupAccessNotice{border-bottom:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex:none;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:8px 10px;padding:11px 14px;display:grid}.EtEeYG_groupAccessNotice[data-status=blocked],.EtEeYG_groupAccessNotice[data-status=not-member]{background:var(--dsw-alias-interactive-bg-hover-danger)}.EtEeYG_groupAccessNotice[data-compact]{grid-template-columns:20px minmax(0,1fr);padding:12px 16px}.EtEeYG_groupAccessIcon{min-height:20px;color:var(--dsw-alias-label-secondary);place-items:center;display:grid}.EtEeYG_groupAccessNotice[data-status=loading] .EtEeYG_groupAccessIcon svg,.EtEeYG_groupAccessNotice[data-status=recovering] .EtEeYG_groupAccessIcon svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupAccessCopy{gap:2px;min-width:0;display:grid}.EtEeYG_groupAccessCopy strong{font-size:12px;line-height:18px}.EtEeYG_groupAccessCopy small{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;font-size:11px;line-height:17px}.EtEeYG_groupAccessActions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.EtEeYG_groupAccessNotice[data-compact] .EtEeYG_groupAccessActions{grid-column:2;justify-content:flex-start}.EtEeYG_groupAccessActions button{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:11px;line-height:16px;display:flex}.EtEeYG_groupAccessActions button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_groupAccessActions button:disabled{cursor:default;opacity:.55}.EtEeYG_groupDetails{z-index:4;border-left:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:min(360px,100%);min-width:0;box-shadow:var(--dsw-shadow-lv2);flex-direction:column;display:flex;position:absolute;top:56px;bottom:0;right:0;overflow:hidden}.EtEeYG_groupDetailsHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:12px;min-height:54px;padding:0 12px 0 16px;display:flex}.EtEeYG_groupDetailsHeader>div{flex-direction:column;flex:1;min-width:0;display:flex}.EtEeYG_groupDetailsHeader strong{font-size:14px;line-height:21px}.EtEeYG_groupDetailsHeader small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;overflow:hidden}.EtEeYG_groupDetailsHeader button,.EtEeYG_groupMemberHeading button,.EtEeYG_groupMemberRemove{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_groupDetailsHeader button:hover,.EtEeYG_groupMemberHeading button:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupDetailsLoading{color:var(--dsw-alias-label-tertiary);margin:auto;font-size:12px}.EtEeYG_groupSummary{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:5px;padding:16px;display:grid}.EtEeYG_groupSummary>strong{font-size:15px;line-height:22px}.EtEeYG_groupSummary>code{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.EtEeYG_groupSummary>p{color:var(--dsw-alias-label-secondary);margin:3px 0 0;font-size:12px;line-height:18px}.EtEeYG_groupSummary dl{grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 0;display:grid}.EtEeYG_groupSummary dl>div{gap:1px;display:grid}.EtEeYG_groupSummary dt{color:var(--dsw-alias-label-tertiary);font-size:10px}.EtEeYG_groupSummary dd{color:var(--dsw-alias-label-primary);margin:0;font-size:12px}.EtEeYG_groupInvite{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:5px;padding:12px 16px;display:grid}.EtEeYG_groupInvite label{color:var(--dsw-alias-label-secondary);font-size:11px}.EtEeYG_groupInvite>div{grid-template-columns:minmax(0,1fr) 32px;gap:6px;display:grid}.EtEeYG_groupInvite input{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);min-width:0;height:32px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;padding:0 9px;font-size:12px}.EtEeYG_groupInvite button{background:var(--dsw-alias-button-primary-fill);width:32px;height:32px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.EtEeYG_groupInvite button:disabled{cursor:default;opacity:.7}.EtEeYG_groupInvite button[data-busy] svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupInviteStatus{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-tertiary);margin:0;font-size:10px;line-height:16px}.EtEeYG_groupInviteStatus[data-state=success]{color:var(--dsw-alias-state-success-primary)}.EtEeYG_groupInviteStatus[data-state=error]{color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupMemberSection{flex-direction:column;flex:1;min-height:0;display:flex}.EtEeYG_groupMemberHeading{flex:none;justify-content:space-between;align-items:center;min-height:40px;padding:0 12px 0 16px;display:flex}.EtEeYG_groupMemberHeading strong{font-size:12px;line-height:18px}.EtEeYG_groupMemberHeading button[data-busy] svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupMemberRefreshStatus{overflow-wrap:anywhere;min-height:22px;color:var(--dsw-alias-label-tertiary);flex:none;margin:0;padding:2px 16px 4px;font-size:10px;line-height:16px}.EtEeYG_groupMemberRefreshStatus[data-state=success]{color:var(--dsw-alias-state-success-primary)}.EtEeYG_groupMemberRefreshStatus[data-state=error]{color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupMemberList{min-height:0;padding:0 8px;overflow:auto}.EtEeYG_groupMemberRow{border-bottom:1px solid var(--dsw-alias-border-l1);grid-template-columns:30px minmax(0,1fr) auto 28px;align-items:center;gap:8px;min-height:48px;padding:4px 6px;display:grid}.EtEeYG_groupMemberAvatar{background:var(--dsw-alias-interactive-bg-active);width:30px;height:30px;color:var(--dsw-alias-brand-primary);border-radius:50%;place-items:center;font-size:11px;display:grid}.EtEeYG_groupMemberIdentity{flex-direction:column;min-width:0;display:flex}.EtEeYG_groupMemberIdentity strong{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:12px;line-height:18px;display:flex;overflow:hidden}.EtEeYG_groupMemberIdentity strong small{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-brand-primary);border-radius:4px;padding:0 4px;font-size:9px}.EtEeYG_groupMemberIdentity>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;overflow:hidden}.EtEeYG_groupMemberRole{color:var(--dsw-alias-label-tertiary);white-space:nowrap;font-size:10px}.EtEeYG_groupMemberRemove:hover{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupDetailsFooter{border-top:1px solid var(--dsw-alias-border-l1);flex:none;justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:0 16px;display:flex}.EtEeYG_groupDetailsFooter small{color:var(--dsw-alias-label-tertiary);font-size:10px}.EtEeYG_dangerText{color:var(--dsw-alias-state-error-primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:12px}.EtEeYG_dangerText:disabled{color:var(--dsw-alias-label-tertiary);cursor:default}.EtEeYG_groupDetailsError{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);flex:none;padding:8px 12px;font-size:11px;line-height:17px}.EtEeYG_summaryTrigger{min-height:30px;color:var(--dsw-alias-brand-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:5px;padding:0 8px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summaryTrigger:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryTrigger:disabled{cursor:default;opacity:.7}.EtEeYG_summaryTrigger[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.EtEeYG_summaryTrigger>svg:first-child{flex:none}.EtEeYG_summaryPanel{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);min-height:0;max-height:min(220px,33%);color:var(--dsw-alias-label-primary);border-radius:10px;flex:0 33%;margin:8px 10px 0;overflow:hidden}.EtEeYG_summaryPanel[data-collapsed]{flex-basis:auto;max-height:42px}.EtEeYG_summaryHeader{border-bottom:1px solid var(--dsw-alias-border-l1);align-items:center;gap:9px;min-height:38px;padding:0 8px 0 12px;display:flex}.EtEeYG_summaryHeader>span{color:var(--dsw-alias-brand-primary);align-items:center;gap:6px;display:flex}.EtEeYG_summaryHeader>span strong{color:var(--dsw-alias-label-primary);font-size:13px;line-height:20px}.EtEeYG_summaryHeader>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;line-height:16px;overflow:hidden}.EtEeYG_summaryHeader>button{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_summaryHeader>button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryCollapsed{width:100%;min-height:40px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:0 10px 0 12px;display:grid}.EtEeYG_summaryCollapsed:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryCollapsed>span{color:var(--dsw-alias-brand-primary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.EtEeYG_summaryCollapsed>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_summaryCollapsed>em{color:var(--dsw-alias-state-warn-label);white-space:nowrap;font-size:11px;font-style:normal}.EtEeYG_summaryLoading{min-height:88px;color:var(--dsw-alias-brand-primary);justify-content:center;align-items:center;gap:10px;padding:16px;display:flex}.EtEeYG_summaryLoading>svg,.EtEeYG_summaryTrigger:disabled>svg:first-child{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_summaryLoading>span{flex-direction:column;gap:2px;display:flex}.EtEeYG_summaryLoading strong{color:var(--dsw-alias-label-primary);font-size:13px;line-height:20px}.EtEeYG_summaryLoading small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_summaryError{min-height:58px;color:var(--dsw-alias-state-error-primary);justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summaryError>span{overflow-wrap:anywhere;min-width:0}.EtEeYG_summaryError button,.EtEeYG_summaryStale button{border:1px solid var(--dsw-alias-border-l2);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:7px;flex:none;align-items:center;gap:5px;padding:0 8px;font-size:11px;display:flex}.EtEeYG_summaryError button:hover,.EtEeYG_summaryStale button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryStale{background:var(--dsw-alias-bg-layer-3);color:var(--dsw-alias-state-warn-label);justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;font-size:11px;line-height:16px;display:flex}.EtEeYG_summaryBody{gap:10px;max-height:118px;padding:10px 12px;display:grid;overflow:auto}.EtEeYG_summarySection h4{color:var(--dsw-alias-label-primary);align-items:center;gap:6px;margin:0 0 4px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summarySection h4>svg{color:var(--dsw-alias-label-secondary);flex:none}.EtEeYG_summarySection ul{color:var(--dsw-alias-label-secondary);gap:2px;margin:0;padding-left:18px;font-size:11px;line-height:17px;display:grid}.EtEeYG_summarySection li{overflow-wrap:anywhere;padding-left:1px}.EtEeYG_summarySection p{color:var(--dsw-alias-label-tertiary);margin:0;font-size:11px;line-height:17px}.EtEeYG_summarySection b{color:var(--dsw-alias-label-primary);font-weight:500}.EtEeYG_summaryActions{border-top:1px solid var(--dsw-alias-border-l1);grid-template-columns:auto 1fr auto auto;align-items:center;gap:4px;min-height:34px;padding:0 8px;display:grid}.EtEeYG_summaryActions button{min-height:26px;color:var(--dsw-alias-brand-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:0 6px;font-size:11px;line-height:16px;display:flex}.EtEeYG_summaryActions button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryPrivacy{border-top:1px solid var(--dsw-alias-border-l1);min-height:28px;color:var(--dsw-alias-label-tertiary);align-items:center;gap:6px;padding:0 10px;font-size:10px;line-height:15px;display:flex}.EtEeYG_summaryPrivacy svg{flex:none}.EtEeYG_summaryCopyError{color:var(--dsw-alias-state-error-primary);padding:4px 10px;font-size:10px;line-height:15px}@keyframes EtEeYG_summary-spin{to{transform:rotate(360deg)}}.EtEeYG_back{display:none}.EtEeYG_historyShell{flex:1;min-height:0;position:relative}.EtEeYG_history{box-sizing:border-box;flex-direction:column;gap:12px;height:100%;min-height:0;padding:16px;display:flex;overflow:auto}.EtEeYG_historyLoading{color:var(--dsw-alias-label-tertiary);align-items:center;gap:8px;margin:auto;font-size:12px;line-height:18px;display:flex}.EtEeYG_historyLoading>svg{color:var(--dsw-alias-brand-primary);animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_latestMessages{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-button-floating-fill);min-width:30px;min-height:30px;color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv2);cursor:pointer;font:inherit;border-radius:16px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:11px;line-height:16px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.EtEeYG_latestMessages:hover{background:var(--dsw-alias-button-floating-hover)}.EtEeYG_message{align-self:flex-start;max-width:min(78%,420px)}.EtEeYG_message[data-outgoing]{align-self:flex-end}.EtEeYG_messageMeta{color:var(--dsw-alias-label-tertiary);justify-content:space-between;gap:10px;margin-bottom:3px;font-size:11px;line-height:16px;display:flex}.EtEeYG_message p,.EtEeYG_attachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:9px 11px;line-height:20px}.EtEeYG_message[data-outgoing] p,.EtEeYG_message[data-outgoing] .EtEeYG_attachment{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_mention{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-brand-primary);border-radius:3px;padding:0 2px;font-weight:600}.EtEeYG_pendingMessage{grid-template-columns:auto minmax(0,1fr);align-self:flex-end;align-items:end;gap:7px;max-width:min(78%,420px);display:grid}.EtEeYG_pendingMessageSpinner{color:var(--dsw-alias-label-tertiary);margin-bottom:12px;animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_pendingMessageContent{opacity:.82;min-width:0}.EtEeYG_pendingMessageContent>p,.EtEeYG_pendingAttachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:9px 11px;line-height:20px}.EtEeYG_pendingAttachment{align-items:center;gap:9px;display:flex}.EtEeYG_pendingAttachment>svg{color:var(--dsw-alias-label-secondary);flex:none}.EtEeYG_pendingAttachment span{flex-direction:column;min-width:0;display:flex}.EtEeYG_pendingAttachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_pendingAttachment small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_pendingMessageContent>.EtEeYG_pendingCaption{color:var(--dsw-alias-label-secondary);background:0 0;border:0;margin-top:4px;padding:4px 8px;font-size:12px}.EtEeYG_attachment{cursor:pointer;font:inherit;text-align:left;align-items:center;gap:12px;display:flex}.EtEeYG_attachment span{flex-direction:column;min-width:0;display:flex}.EtEeYG_attachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_attachment small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_attachment:disabled{cursor:default}.EtEeYG_imageAttachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);width:280px;max-width:100%;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;text-align:left;border-radius:12px;margin:0;padding:0;display:block;overflow:hidden}.EtEeYG_imageAttachment img{background:var(--dsw-alias-bg-layer-1);object-fit:contain;width:100%;max-height:280px;display:block}.EtEeYG_imageAttachment span{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 10px;padding:7px 9px;display:grid}.EtEeYG_imageAttachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_imageAttachment small{color:var(--dsw-alias-label-tertiary);grid-column:1}.EtEeYG_imageAttachment svg{grid-area:1/2/span 2}.EtEeYG_message .EtEeYG_caption{color:var(--dsw-alias-label-secondary);background:0 0;margin-top:4px;padding:4px 8px;font-size:12px}.EtEeYG_inlineError{color:var(--dsw-alias-state-error-primary);margin-top:4px;display:block}.EtEeYG_empty{color:var(--dsw-alias-label-tertiary);text-align:center;margin:auto;padding:20px}.EtEeYG_composer{border-top:1px solid var(--dsw-alias-border-l1);flex:none;gap:8px;padding:10px 14px 14px;display:grid}.EtEeYG_filePicker{border:1px solid var(--dsw-alias-border-l2);width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_filePicker:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_filePicker:disabled{opacity:.45;cursor:default}.EtEeYG_fileInput{display:none}.EtEeYG_composeInput{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);border-radius:10px;gap:6px;min-width:0;padding:9px 10px 8px;display:grid;position:relative}.EtEeYG_mentionCandidates{z-index:3;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);max-height:180px;box-shadow:var(--dsw-shadow-lv2);border-radius:8px;padding:5px;position:absolute;bottom:calc(100% + 7px);left:0;right:0;overflow:auto}.EtEeYG_mentionCandidates button{width:100%;min-height:42px;color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr);align-items:center;column-gap:8px;padding:4px 7px;display:grid}.EtEeYG_mentionCandidates button:hover,.EtEeYG_mentionCandidates button[aria-selected=true]{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_mentionCandidates button>span{background:var(--dsw-alias-bg-layer-3);width:28px;height:28px;color:var(--dsw-alias-brand-primary);border-radius:50%;grid-row:1/span 2;place-items:center;font-size:10px;display:grid}.EtEeYG_mentionCandidates strong,.EtEeYG_mentionCandidates small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.EtEeYG_mentionCandidates strong{align-self:end;font-size:12px;line-height:16px}.EtEeYG_mentionCandidates small{color:var(--dsw-alias-label-tertiary);align-self:start;font-size:10px;line-height:14px}.EtEeYG_composeInput:focus-within{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_composeInput textarea{resize:none;background:0 0;border:0;border-radius:0;outline:0;min-width:0;min-height:42px;padding:0}.EtEeYG_composeInput textarea:focus-visible{outline:0}.EtEeYG_composeActions{justify-content:space-between;align-items:center;min-height:32px;display:flex}.EtEeYG_filePreview{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:10px;align-items:center;gap:8px;width:min(240px,100% - 8px);min-height:36px;padding:5px 28px 5px 8px;display:flex;position:relative}.EtEeYG_filePreview[data-image]{width:72px;height:72px;min-height:0;padding:0}.EtEeYG_filePreview img{object-fit:cover;border-radius:9px;width:72px;height:72px;display:block}.EtEeYG_filePreviewIcon{color:var(--dsw-alias-label-secondary);flex:none;place-items:center;display:grid}.EtEeYG_filePreviewName{min-width:0;color:var(--dsw-alias-label-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.EtEeYG_removeFile{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-button-floating-fill);width:22px;height:22px;color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:-7px;right:-7px}.EtEeYG_removeFile:hover{background:var(--dsw-alias-button-floating-hover)}.EtEeYG_send{background:var(--dsw-alias-button-primary-fill);width:32px;height:32px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_send:disabled{opacity:.45;cursor:default}.EtEeYG_error{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere;flex:none;padding:8px 14px;font-size:12px;line-height:18px}.EtEeYG_pending{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-inverted);box-shadow:var(--dsw-shadow-lv2);border-radius:9px;padding:7px 10px;font-size:12px;line-height:18px;position:absolute;bottom:14px;right:14px}@media (width<=620px){.EtEeYG_trigger span{display:none}.EtEeYG_trigger{justify-content:center;width:36px;padding:0}.EtEeYG_drawer{width:calc(100vw - 56px);min-width:0}.EtEeYG_chat{grid-template-columns:1fr}.EtEeYG_thread{display:none}.EtEeYG_thread[data-visible]{display:flex}.EtEeYG_roster[data-hidden]{display:none}.EtEeYG_back{display:grid}.EtEeYG_summaryPanel{max-height:min(190px,33%);margin-left:8px;margin-right:8px}.EtEeYG_summaryTrigger>span{display:none}.EtEeYG_summaryTrigger{justify-content:center;width:30px;padding:0}.EtEeYG_summaryTrigger>svg:last-child{display:none}}@media (height<=420px){.EtEeYG_drawer{border-radius:10px}.EtEeYG_drawerHeader{height:44px;padding:0 8px 0 12px}.EtEeYG_drawerHeader h2{font-size:14px;line-height:20px}.EtEeYG_drawerHeader button,.EtEeYG_back{width:28px;height:28px}.EtEeYG_centerState,.EtEeYG_threadEmpty{justify-content:flex-start;gap:8px;min-height:0;padding:12px;overflow:auto}.EtEeYG_registrationIcon{width:32px;height:32px}.EtEeYG_composeBackdrop{place-items:start center;padding:8px;inset:44px 0 0}.EtEeYG_composeCard{border-radius:10px;gap:8px;padding:12px}.EtEeYG_recoveryForm{gap:8px}.EtEeYG_identityCard{border-radius:8px;margin:6px 8px;padding:7px 9px}.EtEeYG_profileBio,.EtEeYG_profileTags,.EtEeYG_identityStatus{display:none}.EtEeYG_modeTabs{margin:0 8px 4px}.EtEeYG_modeTabs button{min-height:26px}.EtEeYG_rosterHeader{min-height:28px;padding:0 4px 2px 12px}.EtEeYG_conversationSelect{gap:7px;padding:5px 7px}.EtEeYG_avatar{width:28px;height:28px}.EtEeYG_threadHeader{gap:5px;height:44px;padding:0 8px}.EtEeYG_groupAccessNotice{grid-template-columns:18px minmax(0,1fr);gap:6px 8px;padding:8px}.EtEeYG_groupAccessActions{grid-column:2;justify-content:flex-start}.EtEeYG_groupDetails{top:44px;overflow-y:auto}.EtEeYG_groupDetailsHeader{z-index:2;background:var(--dsw-alias-bg-layer-1);min-height:44px;padding-left:12px;position:sticky;top:0}.EtEeYG_groupSummary{gap:2px;padding:8px 12px}.EtEeYG_groupSummary dl{gap:6px;margin-top:3px}.EtEeYG_groupInvite{gap:3px;padding:7px 12px}.EtEeYG_groupMemberSection{flex:none}.EtEeYG_groupMemberHeading{min-height:32px;padding-left:12px}.EtEeYG_groupMemberList{overflow:visible}.EtEeYG_groupMemberRow{min-height:40px}.EtEeYG_groupDetailsFooter{background:var(--dsw-alias-bg-layer-1);min-height:40px;padding:0 12px;position:sticky;bottom:0}.EtEeYG_history{gap:6px;padding:8px}.EtEeYG_composer{gap:4px;padding:5px 8px 7px}.EtEeYG_composeInput{gap:3px;padding:5px 7px 4px}.EtEeYG_composeInput textarea{height:28px;min-height:28px}.EtEeYG_composeActions{min-height:28px}.EtEeYG_filePicker,.EtEeYG_send{width:28px;height:28px}.EtEeYG_mentionCandidates{max-height:72px}.EtEeYG_compactModal.EtEeYG_compactModal{border-radius:12px;gap:10px;max-height:calc(100vh - 48px);padding-bottom:12px}}@media (hover:none){.EtEeYG_conversationMenu{opacity:1}}@media (prefers-reduced-motion:reduce){.EtEeYG_drawer{scroll-behavior:auto;transition:none}.EtEeYG_summaryLoading>svg,.EtEeYG_summaryTrigger:disabled>svg:first-child,.EtEeYG_historyLoading>svg,.EtEeYG_recoveryProgressPanel>svg,.EtEeYG_groupMemberHeading button[data-busy] svg,.EtEeYG_pendingMessageSpinner{animation:none}}";
|
|
7961
|
-
const tagId$
|
|
7962
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$
|
|
7479
|
+
const css$3 = ".EtEeYG_trigger{z-index:2;border:1px solid var(--dsw-alias-border-l2);width:48px;height:48px;color:var(--dsw-alias-brand-primary);box-shadow:var(--dsw-shadow-lv2);cursor:grab;font:inherit;touch-action:none;user-select:none;background:#fff;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;overflow:visible}.EtEeYG_trigger:hover{box-shadow:var(--dsw-shadow-lv3);background:#fff}.EtEeYG_trigger:active,.EtEeYG_trigger[data-dragging]{cursor:grabbing}.EtEeYG_launcherIcon{object-fit:cover;pointer-events:none;border-radius:50%;width:100%;height:100%;display:block}.EtEeYG_unreadBadge{border:2px solid var(--dsw-alias-bg-base);background:var(--dsw-alias-state-error-primary);color:#fff;box-sizing:border-box;pointer-events:none;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:600;line-height:16px;display:grid;position:absolute;top:-5px;right:-5px}.EtEeYG_trigger:focus-visible,.EtEeYG_drawer button:focus-visible,.EtEeYG_drawer input:focus-visible,.EtEeYG_drawer textarea:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_drawer{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);z-index:1;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:min(720px,100vw - 80px);min-width:min(360px,100vw - 80px);height:min(720px,100vh - 16px);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv3);border-radius:16px;flex-direction:column;transition:width .16s;display:flex;position:fixed;overflow:hidden}.EtEeYG_drawer[data-mode=mail]{width:min(1040px,100vw - 80px)}.EtEeYG_drawer[data-resizing]{user-select:none;transition:none}.EtEeYG_resizeHandle{z-index:5;touch-action:none;user-select:none;position:absolute}.EtEeYG_resizeHandle[data-resize-handle=n],.EtEeYG_resizeHandle[data-resize-handle=s]{cursor:ns-resize;height:8px;left:14px;right:14px}.EtEeYG_resizeHandle[data-resize-handle=n]{top:0}.EtEeYG_resizeHandle[data-resize-handle=s]{bottom:0}.EtEeYG_resizeHandle[data-resize-handle=e],.EtEeYG_resizeHandle[data-resize-handle=w]{cursor:ew-resize;width:8px;top:14px;bottom:14px}.EtEeYG_resizeHandle[data-resize-handle=e]{right:0}.EtEeYG_resizeHandle[data-resize-handle=w]{left:0}.EtEeYG_resizeHandle[data-resize-handle=ne],.EtEeYG_resizeHandle[data-resize-handle=se],.EtEeYG_resizeHandle[data-resize-handle=sw],.EtEeYG_resizeHandle[data-resize-handle=nw]{width:14px;height:14px}.EtEeYG_resizeHandle[data-resize-handle=ne]{cursor:nesw-resize;top:0;right:0}.EtEeYG_resizeHandle[data-resize-handle=se]{cursor:nwse-resize;bottom:0;right:0}.EtEeYG_resizeHandle[data-resize-handle=sw]{cursor:nesw-resize;bottom:0;left:0}.EtEeYG_resizeHandle[data-resize-handle=nw]{cursor:nwse-resize;top:0;left:0}.EtEeYG_drawerHeader{border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;touch-action:none;user-select:none;flex:none;align-items:center;gap:8px;height:58px;padding:0 14px 0 18px;display:flex}.EtEeYG_drawerHeader[data-dragging]{cursor:grabbing}.EtEeYG_drawerHeader>div{flex:1;align-items:center;gap:8px;display:flex}.EtEeYG_drawerHeader h2{margin:0;font-size:16px;line-height:24px}.EtEeYG_drawerHeader button,.EtEeYG_back{cursor:pointer;width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.EtEeYG_drawerHeader button:hover,.EtEeYG_back:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_centerState,.EtEeYG_threadEmpty{text-align:center;color:var(--dsw-alias-label-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:32px;display:flex}.EtEeYG_centerState p{overflow-wrap:anywhere;max-width:420px;margin:0}.EtEeYG_registrationIcon{background:var(--dsw-alias-interactive-bg-active);width:48px;height:48px;color:var(--dsw-alias-brand-primary);border-radius:50%;justify-self:center;place-items:center;display:grid}.EtEeYG_fileDraft input,.EtEeYG_composeRow textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:10px}.EtEeYG_primary,.EtEeYG_more,.EtEeYG_fileDraft button{background:var(--dsw-alias-button-primary-fill);min-height:36px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;font:inherit;border:0;border-radius:10px;padding:0 14px}.EtEeYG_primary:hover,.EtEeYG_fileDraft button:hover{background:var(--dsw-alias-button-primary-hover)}.EtEeYG_primary:disabled,.EtEeYG_fileDraft button:disabled{opacity:.5;cursor:default}.EtEeYG_secondary{border:1px solid var(--dsw-alias-border-l2);min-height:36px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:10px;padding:0 14px}.EtEeYG_secondary:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_composeBackdrop{background:color-mix(in srgb, var(--dsw-alias-bg-layer-1) 72%, transparent);place-items:center;padding:24px;display:grid;position:absolute;inset:58px 0 0;overflow:auto}.EtEeYG_composeCard{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:min(360px,100%);box-shadow:var(--dsw-shadow-lv3);border-radius:14px;gap:12px;padding:20px;display:grid}.EtEeYG_composeCard h3{margin:0;font-size:16px;line-height:24px}.EtEeYG_composeCard p{color:var(--dsw-alias-label-secondary);margin:0;font-size:13px;line-height:20px}.EtEeYG_composeCard label{color:var(--dsw-alias-label-secondary);gap:6px;font-size:13px;line-height:20px;display:grid}.EtEeYG_composeCard input,.EtEeYG_composeCard textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:10px;padding:9px 12px}.EtEeYG_composeCard input{height:40px;padding-block:0}.EtEeYG_composeCard textarea{resize:vertical;min-height:92px}.EtEeYG_composeActions{justify-content:flex-end;gap:8px;display:flex}.EtEeYG_logoutWarning{color:var(--dsw-alias-label-secondary);gap:8px;font-size:13px;line-height:20px;display:grid}.EtEeYG_logoutWarning p{margin:0}.EtEeYG_logoutConfirm{border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}.EtEeYG_compactModal.EtEeYG_compactModal{max-height:calc(100vh - 48px)}.EtEeYG_compactModalContent{min-height:0;overflow-y:auto}.EtEeYG_linkButton{color:var(--dsw-alias-brand-primary);cursor:pointer;background:0 0;border:0}.EtEeYG_notice{color:var(--dsw-alias-state-success-primary);text-align:center}.EtEeYG_identityAccess{flex:1;min-height:0;overflow:hidden}.EtEeYG_recoveryForm{width:100%;min-width:0;color:var(--dsw-alias-label-secondary);gap:14px;display:grid}.EtEeYG_recoveryForm h3{color:var(--dsw-alias-label-primary);text-align:center;margin:0}.EtEeYG_recoveryForm>p{text-align:center;margin:0;font-size:13px;line-height:20px}.EtEeYG_recoveryForm>label:not(.EtEeYG_recoveryConfirmation){gap:6px;font-size:13px;line-height:20px;display:grid}.EtEeYG_recoveryForm>label>input:not([type=checkbox]){box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;height:40px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:0 12px}.EtEeYG_recoveryForm input:focus-visible,.EtEeYG_recoveryForm button:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_recoveryStatusLine{border-bottom:1px solid var(--dsw-alias-border-l1);gap:3px;min-width:0;padding-bottom:10px;display:grid}.EtEeYG_recoveryStatusLine span{color:var(--dsw-alias-brand-primary);font-size:12px;font-weight:600}.EtEeYG_recoveryIdentitySummary{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:8px;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;min-width:0;padding:12px;font-size:12px;line-height:18px;display:grid}.EtEeYG_recoveryIdentitySummary span{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryIdentitySummary strong{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-primary)}.EtEeYG_recoveryDiagnostics{border-top:1px solid var(--dsw-alias-border-l1);min-width:0;color:var(--dsw-alias-label-tertiary);padding-top:2px;font-size:11px;line-height:17px}.EtEeYG_recoveryDiagnostics summary{cursor:pointer;width:max-content;color:var(--dsw-alias-label-secondary);user-select:none}.EtEeYG_recoveryDiagnostics summary:hover{color:var(--dsw-alias-label-primary)}.EtEeYG_recoveryDiagnostics summary:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px;border-radius:4px}.EtEeYG_recoveryDiagnostics dl{gap:6px;margin:8px 0 0;display:grid}.EtEeYG_recoveryDiagnostics dl>div{gap:2px;min-width:0;display:grid}.EtEeYG_recoveryDiagnostics dt{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryDiagnostics dd{min-width:0;margin:0}.EtEeYG_recoveryDiagnostics code{overflow-wrap:anywhere;color:var(--dsw-alias-label-secondary);font-size:10px;line-height:16px;display:block}.EtEeYG_recoveryImpact{border-left:3px solid var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-2);gap:6px;padding:12px;display:grid}.EtEeYG_recoveryImpact p{align-items:flex-start;gap:7px;margin:0;font-size:12px;line-height:18px;display:flex}.EtEeYG_recoveryImpact svg{flex:none;margin-top:2px}.EtEeYG_recoveryImpact p[data-tone=success] svg{color:var(--dsw-alias-state-success-primary)}.EtEeYG_recoveryImpact p[data-tone=neutral] svg{color:var(--dsw-alias-label-tertiary)}.EtEeYG_recoveryHandle{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);text-align:center;margin:-8px 0 0;font-size:13px;line-height:20px}.EtEeYG_recoveryConfirmationCopy{color:var(--dsw-alias-label-secondary);text-align:left;margin:0;font-size:12px;line-height:18px}.EtEeYG_recoveryProgressPanel{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);text-align:center;border-radius:8px;justify-items:center;gap:10px;min-width:0;padding:16px;display:grid}.EtEeYG_recoveryProgressPanel>svg{color:var(--dsw-alias-brand-primary);animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_recoveryProgressPanel p{margin:0;font-size:12px;line-height:18px}.EtEeYG_recoveryProgressPanel button{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.EtEeYG_chat{flex:1;grid-template-columns:240px minmax(0,1fr);min-height:0;display:grid}.EtEeYG_roster{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex-direction:column;min-width:0;display:flex}.EtEeYG_identityCard{background:var(--dsw-alias-bg-layer-3);border-radius:12px;flex-direction:column;gap:2px;margin:14px;padding:12px;display:flex}.EtEeYG_identityNameRow{align-items:center;min-width:0;min-height:24px;display:flex}.EtEeYG_profileAvatar{background:var(--dsw-alias-interactive-bg-active);width:24px;height:24px;color:var(--dsw-alias-brand-primary);border-radius:50%;flex:none;place-items:center;margin-right:7px;display:grid}.EtEeYG_identityNameText{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;line-height:22px;overflow:hidden}.EtEeYG_identityName{min-width:0;color:var(--dsw-alias-label-primary);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;background:0 0;border:0;flex:1;padding:0;font-size:16px;font-weight:600;line-height:24px;overflow:hidden}.EtEeYG_identityName:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px;border-radius:4px}.EtEeYG_identityEdit{width:24px;height:24px;color:var(--dsw-alias-label-secondary);cursor:pointer;opacity:.72;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin-left:4px;padding:0;transition:opacity .12s;display:grid}.EtEeYG_identityNameRow:hover .EtEeYG_identityEdit,.EtEeYG_identityNameRow:focus-within .EtEeYG_identityEdit{opacity:1}.EtEeYG_identityEdit:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_identityEditor{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.EtEeYG_identityEditor input{border:1px solid var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1);min-width:0;height:28px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;outline:none;flex:1;padding:0 8px;font-size:13px}.EtEeYG_identityEditor button{width:26px;height:26px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_identityEditor button:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_identityEditor button:disabled,.EtEeYG_identityName:disabled{cursor:default;opacity:.5}.EtEeYG_identityEdit:disabled{cursor:default}.EtEeYG_identityHandle{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.EtEeYG_identityStatus{color:var(--dsw-alias-state-success-primary);margin-top:4px;font-size:12px;line-height:18px}.EtEeYG_identityError{color:var(--dsw-alias-state-error-primary);margin-top:4px;font-size:11px;line-height:16px}.EtEeYG_identityCard i{background:var(--dsw-alias-state-success-primary);border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.EtEeYG_profileBio{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 2px;font-size:11px;line-height:17px;display:-webkit-box;overflow:hidden}.EtEeYG_profileTags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.EtEeYG_profileTags>span{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);min-width:0;max-width:100%;min-height:20px;color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;border-radius:7px;align-items:center;gap:3px;padding:0 6px;font-size:10px;line-height:16px;display:inline-flex}.EtEeYG_profileTags>span>button{width:16px;height:16px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.EtEeYG_profileTags>span>button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_profileEditor{gap:10px;display:grid}.EtEeYG_profileEditor label{color:var(--dsw-alias-label-secondary);gap:4px;font-size:11px;line-height:16px;display:grid;position:relative}.EtEeYG_profileEditor label>small{color:var(--dsw-alias-label-tertiary);font-size:10px;position:absolute;top:0;right:1px}.EtEeYG_profileEditor input,.EtEeYG_profileEditor textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;padding:7px 8px;font-size:12px}.EtEeYG_profileEditor input{height:32px;padding-block:0}.EtEeYG_profileEditor textarea{resize:vertical}.EtEeYG_profileTagEditor{gap:4px;display:grid}.EtEeYG_profileTagEditor>div:first-of-type{grid-template-columns:minmax(0,1fr) 30px;gap:5px;display:grid}.EtEeYG_profileTagEditor>div:first-of-type button{border:1px solid var(--dsw-alias-border-l2);width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border-radius:7px;place-items:center;padding:0;display:grid}.EtEeYG_profileEditorActions{grid-template-columns:1fr 1fr;gap:6px;margin-top:2px;display:grid}.EtEeYG_profileEditorActions button{min-width:0;padding-inline:6px;font-size:12px}.EtEeYG_modePanel{flex:1;min-height:0;display:none}.EtEeYG_modePanel[data-active]{display:flex}.EtEeYG_modeTabs{background:var(--dsw-alias-bg-layer-3);border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;margin:0 14px 12px;padding:3px;display:grid}.EtEeYG_modeTabs button{min-height:30px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:12px;line-height:18px;display:flex}.EtEeYG_modeTabs button:hover{color:var(--dsw-alias-label-primary)}.EtEeYG_modeTabs button[aria-selected=true]{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1)}.EtEeYG_modeTabs small{min-width:18px;color:var(--dsw-alias-brand-primary);font-size:10px;line-height:14px}.EtEeYG_rosterHeader{justify-content:space-between;align-items:center;min-height:32px;padding:0 8px 8px 16px;display:flex}.EtEeYG_rosterTitle{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}.EtEeYG_rosterActions{align-items:center;gap:2px;display:flex}.EtEeYG_rosterAction{width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.EtEeYG_rosterAction:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_rosterActions .EtEeYG_rosterAction{position:relative}.EtEeYG_rosterActions .EtEeYG_rosterAction small{background:var(--dsw-alias-bg-layer-3);min-width:14px;height:14px;color:var(--dsw-alias-label-secondary);box-sizing:border-box;border-radius:7px;place-items:center;padding:0 3px;font-size:9px;line-height:12px;display:grid;position:absolute;top:1px;right:0}.EtEeYG_groupRecoveryNotice{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);border-radius:8px;align-items:flex-start;gap:8px;margin:0 8px 8px;padding:9px 10px;display:flex}.EtEeYG_groupRecoveryNotice[data-status=blocked]{border-color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupRecoveryNotice>span{flex:1;gap:2px;min-width:0;display:grid}.EtEeYG_groupRecoveryNotice strong{font-size:12px;line-height:18px}.EtEeYG_groupRecoveryNotice small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_groupRecoveryNotice button{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_groupRecoveryNotice button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupRecoveryNotice button:disabled{cursor:default;opacity:.5}.EtEeYG_conversationList{flex:1;min-height:0;padding:0 8px;overflow:auto}.EtEeYG_conversationRow{width:100%;color:inherit;background:0 0;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.EtEeYG_conversationRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_conversationRow[data-active]{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_conversationSelect{width:100%;min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px;display:flex}.EtEeYG_conversationMenu{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:7px;place-items:center;margin-right:5px;padding:0;display:grid}.EtEeYG_conversationRow:hover .EtEeYG_conversationMenu,.EtEeYG_conversationRow:focus-within .EtEeYG_conversationMenu,.EtEeYG_conversationMenu[aria-expanded=true]{opacity:1}.EtEeYG_conversationMenu:hover{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.EtEeYG_conversationMenu:disabled{cursor:default;opacity:.45}.EtEeYG_avatar{background:var(--dsw-alias-interactive-bg-active);width:34px;height:34px;color:var(--dsw-alias-brand-primary);border-radius:50%;flex:none;place-items:center;font-size:12px;line-height:18px;display:grid;position:relative;overflow:visible}.EtEeYG_conversationUnreadBadge{border:2px solid var(--dsw-alias-bg-layer-2);background:var(--dsw-alias-state-error-primary);min-width:18px;height:18px;color:var(--dsw-alias-label-primary-inverted);box-sizing:border-box;pointer-events:none;border-radius:9px;place-items:center;padding:0 4px;font-size:10px;font-weight:600;line-height:14px;display:grid;position:absolute;top:-6px;right:-7px}.EtEeYG_conversationText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.EtEeYG_conversationHeader{align-items:center;gap:8px;min-width:0;display:flex}.EtEeYG_conversationHeader strong{flex:1;min-width:0}.EtEeYG_conversationTime{color:var(--dsw-alias-label-tertiary);flex:none;font-size:11px;font-weight:400;line-height:16px}.EtEeYG_conversationText strong,.EtEeYG_conversationText small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_conversationText strong{font-size:13px;line-height:20px}.EtEeYG_conversationText small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_more{background:var(--dsw-alias-button-elevated-fill);color:var(--dsw-alias-label-secondary);margin:8px}.EtEeYG_more:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_hiddenConversationList{max-height:min(320px,48vh);display:grid;overflow:auto}.EtEeYG_hiddenConversationRow{border-bottom:1px solid var(--dsw-alias-border-l1);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:50px;padding:6px 2px;display:grid}.EtEeYG_hiddenConversationRow:last-child{border-bottom:0}.EtEeYG_hiddenConversationRow .EtEeYG_avatar{width:30px;height:30px}.EtEeYG_hiddenConversationRow>span:nth-child(2){min-width:0;display:grid}.EtEeYG_hiddenConversationRow strong,.EtEeYG_hiddenConversationRow small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_hiddenConversationRow strong{font-size:12px;line-height:18px}.EtEeYG_hiddenConversationRow small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.EtEeYG_hiddenConversationRow>button{border:1px solid var(--dsw-alias-border-l2);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:7px;padding:0 9px;font-size:11px}.EtEeYG_hiddenConversationRow>button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_hiddenConversationRow>button:disabled{cursor:default;opacity:.55}.EtEeYG_conversationPreferenceError{color:var(--dsw-alias-state-error-primary);font-size:11px;line-height:17px}.EtEeYG_thread{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.EtEeYG_threadHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:8px;height:56px;padding:0 14px;display:flex}.EtEeYG_threadTitle{flex-direction:column;flex:1;min-width:0;display:flex}.EtEeYG_threadTitle strong,.EtEeYG_threadTitle small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_threadHeader small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_threadAction{width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_threadAction:hover,.EtEeYG_threadAction[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupAccessNotice{border-bottom:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex:none;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:8px 10px;padding:11px 14px;display:grid}.EtEeYG_groupAccessNotice[data-status=blocked],.EtEeYG_groupAccessNotice[data-status=not-member]{background:var(--dsw-alias-interactive-bg-hover-danger)}.EtEeYG_groupAccessNotice[data-compact]{grid-template-columns:20px minmax(0,1fr);padding:12px 16px}.EtEeYG_groupAccessIcon{min-height:20px;color:var(--dsw-alias-label-secondary);place-items:center;display:grid}.EtEeYG_groupAccessNotice[data-status=loading] .EtEeYG_groupAccessIcon svg,.EtEeYG_groupAccessNotice[data-status=recovering] .EtEeYG_groupAccessIcon svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupAccessCopy{gap:2px;min-width:0;display:grid}.EtEeYG_groupAccessCopy strong{font-size:12px;line-height:18px}.EtEeYG_groupAccessCopy small{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;font-size:11px;line-height:17px}.EtEeYG_groupAccessActions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.EtEeYG_groupAccessNotice[data-compact] .EtEeYG_groupAccessActions{grid-column:2;justify-content:flex-start}.EtEeYG_groupAccessActions button{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:11px;line-height:16px;display:flex}.EtEeYG_groupAccessActions button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_groupAccessActions button:disabled{cursor:default;opacity:.55}.EtEeYG_groupDetails{z-index:4;border-left:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:min(360px,100%);min-width:0;box-shadow:var(--dsw-shadow-lv2);flex-direction:column;display:flex;position:absolute;top:56px;bottom:0;right:0;overflow:hidden}.EtEeYG_groupDetailsHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:12px;min-height:54px;padding:0 12px 0 16px;display:flex}.EtEeYG_groupDetailsHeader>div{flex-direction:column;flex:1;min-width:0;display:flex}.EtEeYG_groupDetailsHeader strong{font-size:14px;line-height:21px}.EtEeYG_groupDetailsHeader small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;overflow:hidden}.EtEeYG_groupDetailsHeader button,.EtEeYG_groupMemberHeading button,.EtEeYG_groupMemberRemove{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_groupDetailsHeader button:hover,.EtEeYG_groupMemberHeading button:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_groupDetailsLoading{color:var(--dsw-alias-label-tertiary);margin:auto;font-size:12px}.EtEeYG_groupSummary{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:5px;padding:16px;display:grid}.EtEeYG_groupSummary>strong{font-size:15px;line-height:22px}.EtEeYG_groupSummary>code{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.EtEeYG_groupSummary>p{color:var(--dsw-alias-label-secondary);margin:3px 0 0;font-size:12px;line-height:18px}.EtEeYG_groupSummary dl{grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 0;display:grid}.EtEeYG_groupSummary dl>div{gap:1px;display:grid}.EtEeYG_groupSummary dt{color:var(--dsw-alias-label-tertiary);font-size:10px}.EtEeYG_groupSummary dd{color:var(--dsw-alias-label-primary);margin:0;font-size:12px}.EtEeYG_groupInvite{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;gap:5px;padding:12px 16px;display:grid}.EtEeYG_groupInvite label{color:var(--dsw-alias-label-secondary);font-size:11px}.EtEeYG_groupInvite>div{grid-template-columns:minmax(0,1fr) 32px;gap:6px;display:grid}.EtEeYG_groupInvite input{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);min-width:0;height:32px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:7px;padding:0 9px;font-size:12px}.EtEeYG_groupInvite button{background:var(--dsw-alias-button-primary-fill);width:32px;height:32px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.EtEeYG_groupInvite button:disabled{cursor:default;opacity:.7}.EtEeYG_groupInvite button[data-busy] svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupInviteStatus{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-tertiary);margin:0;font-size:10px;line-height:16px}.EtEeYG_groupInviteStatus[data-state=success]{color:var(--dsw-alias-state-success-primary)}.EtEeYG_groupInviteStatus[data-state=error]{color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupMemberSection{flex-direction:column;flex:1;min-height:0;display:flex}.EtEeYG_groupMemberHeading{flex:none;justify-content:space-between;align-items:center;min-height:40px;padding:0 12px 0 16px;display:flex}.EtEeYG_groupMemberHeading strong{font-size:12px;line-height:18px}.EtEeYG_groupMemberHeading button[data-busy] svg{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_groupMemberRefreshStatus{overflow-wrap:anywhere;min-height:22px;color:var(--dsw-alias-label-tertiary);flex:none;margin:0;padding:2px 16px 4px;font-size:10px;line-height:16px}.EtEeYG_groupMemberRefreshStatus[data-state=success]{color:var(--dsw-alias-state-success-primary)}.EtEeYG_groupMemberRefreshStatus[data-state=error]{color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupMemberList{min-height:0;padding:0 8px;overflow:auto}.EtEeYG_groupMemberRow{border-bottom:1px solid var(--dsw-alias-border-l1);grid-template-columns:30px minmax(0,1fr) auto 28px;align-items:center;gap:8px;min-height:48px;padding:4px 6px;display:grid}.EtEeYG_groupMemberAvatar{background:var(--dsw-alias-interactive-bg-active);width:30px;height:30px;color:var(--dsw-alias-brand-primary);border-radius:50%;place-items:center;font-size:11px;display:grid}.EtEeYG_groupMemberIdentity{flex-direction:column;min-width:0;display:flex}.EtEeYG_groupMemberIdentity strong{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:12px;line-height:18px;display:flex;overflow:hidden}.EtEeYG_groupMemberIdentity strong small{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-brand-primary);border-radius:4px;padding:0 4px;font-size:9px}.EtEeYG_groupMemberIdentity>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:15px;overflow:hidden}.EtEeYG_groupMemberRole{color:var(--dsw-alias-label-tertiary);white-space:nowrap;font-size:10px}.EtEeYG_groupMemberRemove:hover{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary)}.EtEeYG_groupDetailsFooter{border-top:1px solid var(--dsw-alias-border-l1);flex:none;justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:0 16px;display:flex}.EtEeYG_groupDetailsFooter small{color:var(--dsw-alias-label-tertiary);font-size:10px}.EtEeYG_dangerText{color:var(--dsw-alias-state-error-primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:12px}.EtEeYG_dangerText:disabled{color:var(--dsw-alias-label-tertiary);cursor:default}.EtEeYG_groupDetailsError{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);flex:none;padding:8px 12px;font-size:11px;line-height:17px}.EtEeYG_summaryTrigger{min-height:30px;color:var(--dsw-alias-brand-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:5px;padding:0 8px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summaryTrigger:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryTrigger:disabled{cursor:default;opacity:.7}.EtEeYG_summaryTrigger[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.EtEeYG_summaryTrigger>svg:first-child{flex:none}.EtEeYG_summaryPanel{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);min-height:0;max-height:min(220px,33%);color:var(--dsw-alias-label-primary);border-radius:10px;flex:0 33%;margin:8px 10px 0;overflow:hidden}.EtEeYG_summaryPanel[data-collapsed]{flex-basis:auto;max-height:42px}.EtEeYG_summaryHeader{border-bottom:1px solid var(--dsw-alias-border-l1);align-items:center;gap:9px;min-height:38px;padding:0 8px 0 12px;display:flex}.EtEeYG_summaryHeader>span{color:var(--dsw-alias-brand-primary);align-items:center;gap:6px;display:flex}.EtEeYG_summaryHeader>span strong{color:var(--dsw-alias-label-primary);font-size:13px;line-height:20px}.EtEeYG_summaryHeader>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;line-height:16px;overflow:hidden}.EtEeYG_summaryHeader>button{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_summaryHeader>button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryCollapsed{width:100%;min-height:40px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:0 10px 0 12px;display:grid}.EtEeYG_summaryCollapsed:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryCollapsed>span{color:var(--dsw-alias-brand-primary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.EtEeYG_summaryCollapsed>small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_summaryCollapsed>em{color:var(--dsw-alias-state-warn-label);white-space:nowrap;font-size:11px;font-style:normal}.EtEeYG_summaryLoading{min-height:88px;color:var(--dsw-alias-brand-primary);justify-content:center;align-items:center;gap:10px;padding:16px;display:flex}.EtEeYG_summaryLoading>svg,.EtEeYG_summaryTrigger:disabled>svg:first-child{animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_summaryLoading>span{flex-direction:column;gap:2px;display:flex}.EtEeYG_summaryLoading strong{color:var(--dsw-alias-label-primary);font-size:13px;line-height:20px}.EtEeYG_summaryLoading small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.EtEeYG_summaryError{min-height:58px;color:var(--dsw-alias-state-error-primary);justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summaryError>span{overflow-wrap:anywhere;min-width:0}.EtEeYG_summaryError button,.EtEeYG_summaryStale button{border:1px solid var(--dsw-alias-border-l2);min-height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:7px;flex:none;align-items:center;gap:5px;padding:0 8px;font-size:11px;display:flex}.EtEeYG_summaryError button:hover,.EtEeYG_summaryStale button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryStale{background:var(--dsw-alias-bg-layer-3);color:var(--dsw-alias-state-warn-label);justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;font-size:11px;line-height:16px;display:flex}.EtEeYG_summaryBody{gap:10px;max-height:118px;padding:10px 12px;display:grid;overflow:auto}.EtEeYG_summarySection h4{color:var(--dsw-alias-label-primary);align-items:center;gap:6px;margin:0 0 4px;font-size:12px;line-height:18px;display:flex}.EtEeYG_summarySection h4>svg{color:var(--dsw-alias-label-secondary);flex:none}.EtEeYG_summarySection ul{color:var(--dsw-alias-label-secondary);gap:2px;margin:0;padding-left:18px;font-size:11px;line-height:17px;display:grid}.EtEeYG_summarySection li{overflow-wrap:anywhere;padding-left:1px}.EtEeYG_summarySection p{color:var(--dsw-alias-label-tertiary);margin:0;font-size:11px;line-height:17px}.EtEeYG_summarySection b{color:var(--dsw-alias-label-primary);font-weight:500}.EtEeYG_summaryActions{border-top:1px solid var(--dsw-alias-border-l1);grid-template-columns:auto 1fr auto auto;align-items:center;gap:4px;min-height:34px;padding:0 8px;display:grid}.EtEeYG_summaryActions button{min-height:26px;color:var(--dsw-alias-brand-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:0 6px;font-size:11px;line-height:16px;display:flex}.EtEeYG_summaryActions button:hover{background:var(--dsw-alias-interactive-bg-hover)}.EtEeYG_summaryPrivacy{border-top:1px solid var(--dsw-alias-border-l1);min-height:28px;color:var(--dsw-alias-label-tertiary);align-items:center;gap:6px;padding:0 10px;font-size:10px;line-height:15px;display:flex}.EtEeYG_summaryPrivacy svg{flex:none}.EtEeYG_summaryCopyError{color:var(--dsw-alias-state-error-primary);padding:4px 10px;font-size:10px;line-height:15px}@keyframes EtEeYG_summary-spin{to{transform:rotate(360deg)}}.EtEeYG_back{display:none}.EtEeYG_historyShell{flex:1;min-height:0;position:relative}.EtEeYG_history{box-sizing:border-box;flex-direction:column;gap:12px;height:100%;min-height:0;padding:16px;display:flex;overflow:auto}.EtEeYG_historyLoading{color:var(--dsw-alias-label-tertiary);align-items:center;gap:8px;margin:auto;font-size:12px;line-height:18px;display:flex}.EtEeYG_historyLoading>svg{color:var(--dsw-alias-brand-primary);animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_latestMessages{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-button-floating-fill);min-width:30px;min-height:30px;color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv2);cursor:pointer;font:inherit;border-radius:16px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:11px;line-height:16px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.EtEeYG_latestMessages:hover{background:var(--dsw-alias-button-floating-hover)}.EtEeYG_message{align-self:flex-start;max-width:min(78%,420px)}.EtEeYG_message[data-outgoing]{align-self:flex-end}.EtEeYG_messageMeta{color:var(--dsw-alias-label-tertiary);justify-content:space-between;gap:10px;margin-bottom:3px;font-size:11px;line-height:16px;display:flex}.EtEeYG_message p,.EtEeYG_attachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:9px 11px;line-height:20px}.EtEeYG_message[data-outgoing] p,.EtEeYG_message[data-outgoing] .EtEeYG_attachment{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_mention{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-brand-primary);border-radius:3px;padding:0 2px;font-weight:600}.EtEeYG_pendingMessage{grid-template-columns:auto minmax(0,1fr);align-self:flex-end;align-items:end;gap:7px;max-width:min(78%,420px);display:grid}.EtEeYG_pendingMessageSpinner{color:var(--dsw-alias-label-tertiary);margin-bottom:12px;animation:1s linear infinite EtEeYG_summary-spin}.EtEeYG_pendingMessageContent{opacity:.82;min-width:0}.EtEeYG_pendingMessageContent>p,.EtEeYG_pendingAttachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:9px 11px;line-height:20px}.EtEeYG_pendingAttachment{align-items:center;gap:9px;display:flex}.EtEeYG_pendingAttachment>svg{color:var(--dsw-alias-label-secondary);flex:none}.EtEeYG_pendingAttachment span{flex-direction:column;min-width:0;display:flex}.EtEeYG_pendingAttachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_pendingAttachment small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_pendingMessageContent>.EtEeYG_pendingCaption{color:var(--dsw-alias-label-secondary);background:0 0;border:0;margin-top:4px;padding:4px 8px;font-size:12px}.EtEeYG_attachment{cursor:pointer;font:inherit;text-align:left;align-items:center;gap:12px;display:flex}.EtEeYG_attachment span{flex-direction:column;min-width:0;display:flex}.EtEeYG_attachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_attachment small{color:var(--dsw-alias-label-tertiary)}.EtEeYG_attachment:disabled{cursor:default}.EtEeYG_imageAttachment{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);width:280px;max-width:100%;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;text-align:left;border-radius:12px;margin:0;padding:0;display:block;overflow:hidden}.EtEeYG_imageAttachment img{background:var(--dsw-alias-bg-layer-1);object-fit:contain;width:100%;max-height:280px;display:block}.EtEeYG_imageAttachment span{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 10px;padding:7px 9px;display:grid}.EtEeYG_imageAttachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.EtEeYG_imageAttachment small{color:var(--dsw-alias-label-tertiary);grid-column:1}.EtEeYG_imageAttachment svg{grid-area:1/2/span 2}.EtEeYG_message .EtEeYG_caption{color:var(--dsw-alias-label-secondary);background:0 0;margin-top:4px;padding:4px 8px;font-size:12px}.EtEeYG_inlineError{color:var(--dsw-alias-state-error-primary);margin-top:4px;display:block}.EtEeYG_empty{color:var(--dsw-alias-label-tertiary);text-align:center;margin:auto;padding:20px}.EtEeYG_composer{border-top:1px solid var(--dsw-alias-border-l1);flex:none;gap:8px;padding:10px 14px 14px;display:grid}.EtEeYG_filePicker{border:1px solid var(--dsw-alias-border-l2);width:32px;height:32px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_filePicker:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.EtEeYG_filePicker:disabled{opacity:.45;cursor:default}.EtEeYG_fileInput{display:none}.EtEeYG_composeInput{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);border-radius:10px;gap:6px;min-width:0;padding:9px 10px 8px;display:grid;position:relative}.EtEeYG_mentionCandidates{z-index:3;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);max-height:180px;box-shadow:var(--dsw-shadow-lv2);border-radius:8px;padding:5px;position:absolute;bottom:calc(100% + 7px);left:0;right:0;overflow:auto}.EtEeYG_mentionCandidates button{width:100%;min-height:42px;color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr);align-items:center;column-gap:8px;padding:4px 7px;display:grid}.EtEeYG_mentionCandidates button:hover,.EtEeYG_mentionCandidates button[aria-selected=true]{background:var(--dsw-alias-interactive-bg-active)}.EtEeYG_mentionCandidates button>span{background:var(--dsw-alias-bg-layer-3);width:28px;height:28px;color:var(--dsw-alias-brand-primary);border-radius:50%;grid-row:1/span 2;place-items:center;font-size:10px;display:grid}.EtEeYG_mentionCandidates strong,.EtEeYG_mentionCandidates small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.EtEeYG_mentionCandidates strong{align-self:end;font-size:12px;line-height:16px}.EtEeYG_mentionCandidates small{color:var(--dsw-alias-label-tertiary);align-self:start;font-size:10px;line-height:14px}.EtEeYG_composeInput:focus-within{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.EtEeYG_composeInput textarea{resize:none;background:0 0;border:0;border-radius:0;outline:0;min-width:0;min-height:42px;padding:0}.EtEeYG_composeInput textarea:focus-visible{outline:0}.EtEeYG_composeActions{justify-content:space-between;align-items:center;min-height:32px;display:flex}.EtEeYG_filePreview{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:10px;align-items:center;gap:8px;width:min(240px,100% - 8px);min-height:36px;padding:5px 28px 5px 8px;display:flex;position:relative}.EtEeYG_filePreview[data-image]{width:72px;height:72px;min-height:0;padding:0}.EtEeYG_filePreview img{object-fit:cover;border-radius:9px;width:72px;height:72px;display:block}.EtEeYG_filePreviewIcon{color:var(--dsw-alias-label-secondary);flex:none;place-items:center;display:grid}.EtEeYG_filePreviewName{min-width:0;color:var(--dsw-alias-label-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.EtEeYG_removeFile{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-button-floating-fill);width:22px;height:22px;color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:-7px;right:-7px}.EtEeYG_removeFile:hover{background:var(--dsw-alias-button-floating-hover)}.EtEeYG_send{background:var(--dsw-alias-button-primary-fill);width:32px;height:32px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.EtEeYG_send:disabled{opacity:.45;cursor:default}.EtEeYG_error{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere;flex:none;padding:8px 14px;font-size:12px;line-height:18px}.EtEeYG_pending{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-inverted);box-shadow:var(--dsw-shadow-lv2);border-radius:9px;padding:7px 10px;font-size:12px;line-height:18px;position:absolute;bottom:14px;right:14px}@media (width<=620px){.EtEeYG_trigger span{display:none}.EtEeYG_trigger{justify-content:center;width:36px;padding:0}.EtEeYG_drawer{width:calc(100vw - 56px);min-width:0}.EtEeYG_chat{grid-template-columns:1fr}.EtEeYG_thread{display:none}.EtEeYG_thread[data-visible]{display:flex}.EtEeYG_roster[data-hidden]{display:none}.EtEeYG_back{display:grid}.EtEeYG_summaryPanel{max-height:min(190px,33%);margin-left:8px;margin-right:8px}.EtEeYG_summaryTrigger>span{display:none}.EtEeYG_summaryTrigger{justify-content:center;width:30px;padding:0}.EtEeYG_summaryTrigger>svg:last-child{display:none}}@media (height<=420px){.EtEeYG_drawer{border-radius:10px}.EtEeYG_drawerHeader{height:44px;padding:0 8px 0 12px}.EtEeYG_drawerHeader h2{font-size:14px;line-height:20px}.EtEeYG_drawerHeader button,.EtEeYG_back{width:28px;height:28px}.EtEeYG_centerState,.EtEeYG_threadEmpty{justify-content:flex-start;gap:8px;min-height:0;padding:12px;overflow:auto}.EtEeYG_registrationIcon{width:32px;height:32px}.EtEeYG_composeBackdrop{place-items:start center;padding:8px;inset:44px 0 0}.EtEeYG_composeCard{border-radius:10px;gap:8px;padding:12px}.EtEeYG_recoveryForm{gap:8px}.EtEeYG_identityCard{border-radius:8px;margin:6px 8px;padding:7px 9px}.EtEeYG_profileBio,.EtEeYG_profileTags,.EtEeYG_identityStatus{display:none}.EtEeYG_modeTabs{margin:0 8px 4px}.EtEeYG_modeTabs button{min-height:26px}.EtEeYG_rosterHeader{min-height:28px;padding:0 4px 2px 12px}.EtEeYG_conversationSelect{gap:7px;padding:5px 7px}.EtEeYG_avatar{width:28px;height:28px}.EtEeYG_threadHeader{gap:5px;height:44px;padding:0 8px}.EtEeYG_groupAccessNotice{grid-template-columns:18px minmax(0,1fr);gap:6px 8px;padding:8px}.EtEeYG_groupAccessActions{grid-column:2;justify-content:flex-start}.EtEeYG_groupDetails{top:44px;overflow-y:auto}.EtEeYG_groupDetailsHeader{z-index:2;background:var(--dsw-alias-bg-layer-1);min-height:44px;padding-left:12px;position:sticky;top:0}.EtEeYG_groupSummary{gap:2px;padding:8px 12px}.EtEeYG_groupSummary dl{gap:6px;margin-top:3px}.EtEeYG_groupInvite{gap:3px;padding:7px 12px}.EtEeYG_groupMemberSection{flex:none}.EtEeYG_groupMemberHeading{min-height:32px;padding-left:12px}.EtEeYG_groupMemberList{overflow:visible}.EtEeYG_groupMemberRow{min-height:40px}.EtEeYG_groupDetailsFooter{background:var(--dsw-alias-bg-layer-1);min-height:40px;padding:0 12px;position:sticky;bottom:0}.EtEeYG_history{gap:6px;padding:8px}.EtEeYG_composer{gap:4px;padding:5px 8px 7px}.EtEeYG_composeInput{gap:3px;padding:5px 7px 4px}.EtEeYG_composeInput textarea{height:28px;min-height:28px}.EtEeYG_composeActions{min-height:28px}.EtEeYG_filePicker,.EtEeYG_send{width:28px;height:28px}.EtEeYG_mentionCandidates{max-height:72px}.EtEeYG_compactModal.EtEeYG_compactModal{border-radius:12px;gap:10px;max-height:calc(100vh - 48px);padding-bottom:12px}}@media (hover:none){.EtEeYG_conversationMenu{opacity:1}}@media (prefers-reduced-motion:reduce){.EtEeYG_drawer{scroll-behavior:auto;transition:none}.EtEeYG_summaryLoading>svg,.EtEeYG_summaryTrigger:disabled>svg:first-child,.EtEeYG_historyLoading>svg,.EtEeYG_recoveryProgressPanel>svg,.EtEeYG_groupMemberHeading button[data-busy] svg,.EtEeYG_pendingMessageSpinner{animation:none}}";
|
|
7480
|
+
const tagId$3 = "@awiki/dsh-plugin/AwikiOverlay.module.css";
|
|
7481
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
|
|
7963
7482
|
const tag = document.createElement("style");
|
|
7964
7483
|
tag.dataset.plugin = "@awiki/dsh-plugin";
|
|
7965
|
-
tag.dataset.pluginCss = tagId$
|
|
7966
|
-
tag.textContent = css$
|
|
7484
|
+
tag.dataset.pluginCss = tagId$3;
|
|
7485
|
+
tag.textContent = css$3;
|
|
7967
7486
|
document.head.appendChild(tag);
|
|
7968
7487
|
}
|
|
7969
7488
|
var _dsh_awiki_css_AwikiOverlay_module_css_default = {
|
|
@@ -8444,13 +7963,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8444
7963
|
}
|
|
8445
7964
|
//#endregion
|
|
8446
7965
|
//#region \0dsh-awiki-css:AwikiIdentityAccess.module.css.mjs
|
|
8447
|
-
const css$
|
|
8448
|
-
const tagId$
|
|
8449
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$
|
|
7966
|
+
const css$2 = ".r_slHG_accessFlow{width:100%;min-width:0;color:var(--dsw-alias-label-secondary);gap:14px;display:grid}.r_slHG_identityIcon,.r_slHG_progressIcon{width:48px;height:48px;color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-interactive-bg-active);border-radius:50%;place-items:center;margin:0 auto;display:grid}.r_slHG_progressIcon svg{animation:1s linear infinite r_slHG_identity-spin}@keyframes r_slHG_identity-spin{to{transform:rotate(360deg)}}.r_slHG_headingGroup{text-align:center;gap:6px;display:grid}.r_slHG_headingGroup h3,.r_slHG_headingGroup p,.r_slHG_existingNotice p,.r_slHG_dangerPanel p{margin:0}.r_slHG_headingGroup h3{color:var(--dsw-alias-label-primary);font-size:18px;line-height:26px}.r_slHG_headingGroup p,.r_slHG_existingNotice p,.r_slHG_dangerPanel p{font-size:13px;line-height:20px}.r_slHG_headingGroup strong{color:var(--dsw-alias-label-primary);overflow-wrap:anywhere}.r_slHG_identitySummary{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:8px;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;padding:12px 14px;font-size:12px;line-height:18px;display:grid}.r_slHG_identitySummary span{color:var(--dsw-alias-label-tertiary)}.r_slHG_identitySummary strong{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-primary)}.r_slHG_field{color:var(--dsw-alias-label-secondary);text-align:left;gap:6px;font-size:13px;line-height:20px;display:grid}.r_slHG_field input{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);width:100%;height:40px;color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-2);font:inherit;border-radius:8px;padding:0 12px}.r_slHG_field input:focus-visible,.r_slHG_primary:focus-visible,.r_slHG_secondary:focus-visible,.r_slHG_linkButton:focus-visible,.r_slHG_dangerLink:focus-visible,.r_slHG_dangerButton:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.r_slHG_primary,.r_slHG_secondary,.r_slHG_dangerButton{cursor:pointer;min-height:40px;font:inherit;border-radius:8px;padding:0 14px}.r_slHG_primary{color:var(--dsw-alias-label-primary-inverted);background:var(--dsw-alias-button-primary-fill);border:0}.r_slHG_primary:hover{background:var(--dsw-alias-button-primary-hover)}.r_slHG_secondary{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-primary);background:0 0}.r_slHG_secondary:hover{background:var(--dsw-alias-interactive-bg-hover)}.r_slHG_primary:disabled,.r_slHG_secondary:disabled,.r_slHG_linkButton:disabled,.r_slHG_dangerLink:disabled,.r_slHG_dangerButton:disabled{cursor:default;opacity:.5}.r_slHG_linkButton,.r_slHG_dangerLink{cursor:pointer;min-height:32px;font:inherit;background:0 0;border:0;padding:0;font-size:12px}.r_slHG_linkButton{color:var(--dsw-alias-brand-primary)}.r_slHG_dangerLink{color:var(--dsw-alias-state-error-primary)}.r_slHG_actionStack{gap:8px;display:grid}.r_slHG_existingNotice,.r_slHG_dangerPanel{border-left:3px solid var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-2);gap:10px;padding:12px 14px;display:grid}.r_slHG_existingNotice strong{color:var(--dsw-alias-label-primary)}.r_slHG_dangerPanel{border-left-color:var(--dsw-alias-state-error-primary)}.r_slHG_dangerPanel strong{color:var(--dsw-alias-label-primary);font-size:13px;line-height:20px}.r_slHG_confirmation{color:var(--dsw-alias-label-secondary);align-items:flex-start;gap:8px;font-size:12px;line-height:18px;display:flex}.r_slHG_confirmation input{width:16px;height:16px;accent-color:var(--dsw-alias-state-error-primary);flex:none;margin:1px 0 0}.r_slHG_dangerButton{border:1px solid var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary);background:0 0}.r_slHG_dangerButton:hover{background:var(--dsw-alias-interactive-bg-hover-danger)}.r_slHG_recoveryHelp{border-top:1px solid var(--dsw-alias-border-l1);gap:10px;padding-top:14px;display:grid}.r_slHG_recoveryHelp p{color:var(--dsw-alias-label-secondary);margin:0;font-size:12px;line-height:18px}.r_slHG_notice,.r_slHG_error{overflow-wrap:anywhere;font-size:12px;line-height:18px}.r_slHG_notice{color:var(--dsw-alias-label-secondary)}.r_slHG_error{color:var(--dsw-alias-state-error-primary)}@media (height<=560px){.r_slHG_accessFlow{gap:8px}.r_slHG_identityIcon,.r_slHG_progressIcon{width:32px;height:32px}}@media (prefers-reduced-motion:reduce){.r_slHG_primary,.r_slHG_secondary,.r_slHG_linkButton,.r_slHG_dangerLink,.r_slHG_dangerButton{transition-duration:.001ms!important}.r_slHG_progressIcon svg{animation-duration:.001ms!important}}";
|
|
7967
|
+
const tagId$2 = "@awiki/dsh-plugin/AwikiIdentityAccess.module.css";
|
|
7968
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
|
|
8450
7969
|
const tag = document.createElement("style");
|
|
8451
7970
|
tag.dataset.plugin = "@awiki/dsh-plugin";
|
|
8452
|
-
tag.dataset.pluginCss = tagId$
|
|
8453
|
-
tag.textContent = css$
|
|
7971
|
+
tag.dataset.pluginCss = tagId$2;
|
|
7972
|
+
tag.textContent = css$2;
|
|
8454
7973
|
document.head.appendChild(tag);
|
|
8455
7974
|
}
|
|
8456
7975
|
var _dsh_awiki_css_AwikiIdentityAccess_module_css_default = {
|
|
@@ -8472,7 +7991,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8472
7991
|
"primary": "r_slHG_primary",
|
|
8473
7992
|
"progressIcon": "r_slHG_progressIcon",
|
|
8474
7993
|
"recoveryHelp": "r_slHG_recoveryHelp",
|
|
8475
|
-
"sas": "r_slHG_sas",
|
|
8476
7994
|
"secondary": "r_slHG_secondary"
|
|
8477
7995
|
};
|
|
8478
7996
|
//#endregion
|
|
@@ -8511,8 +8029,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8511
8029
|
const [signedOutAlternative, setSignedOutAlternative] = (0, react.useState)("none");
|
|
8512
8030
|
const [replaceConfirmed, setReplaceConfirmed] = (0, react.useState)(false);
|
|
8513
8031
|
const [loginFailed, setLoginFailed] = (0, react.useState)(false);
|
|
8514
|
-
const [joinContext, setJoinContext] = (0, react.useState)(null);
|
|
8515
|
-
const [joinProgress, setJoinProgress] = (0, react.useState)(null);
|
|
8516
8032
|
(0, react.useEffect)(() => {
|
|
8517
8033
|
if (retryDeadline === null) return;
|
|
8518
8034
|
const update = () => {
|
|
@@ -8557,7 +8073,36 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8557
8073
|
setRetrySeconds(cooldownSeconds);
|
|
8558
8074
|
setNotice(`注册验证码已发送;${cooldownSeconds} 秒后可重新获取。`);
|
|
8559
8075
|
};
|
|
8560
|
-
const requestIdentityOtp =
|
|
8076
|
+
const requestIdentityOtp = async () => {
|
|
8077
|
+
setError(null);
|
|
8078
|
+
setNotice(null);
|
|
8079
|
+
const requestedHandle = handle.trim();
|
|
8080
|
+
const requestedPhone = phone.trim();
|
|
8081
|
+
const inspection = await props.inspectIdentityAccess({ handle: requestedHandle });
|
|
8082
|
+
if (!inspection.ok) {
|
|
8083
|
+
setError(inspection.error);
|
|
8084
|
+
return;
|
|
8085
|
+
}
|
|
8086
|
+
if (inspection.value.status === "existing") {
|
|
8087
|
+
const factorContext = {
|
|
8088
|
+
fullHandle: inspection.value.fullHandle,
|
|
8089
|
+
phone: requestedPhone
|
|
8090
|
+
};
|
|
8091
|
+
setRecoveryFactorContext(factorContext);
|
|
8092
|
+
const recovery = await props.sendRecoveryOtp(factorContext);
|
|
8093
|
+
if (!recovery.ok) {
|
|
8094
|
+
setRecoveryFactorContext(null);
|
|
8095
|
+
setError(recovery.error);
|
|
8096
|
+
return;
|
|
8097
|
+
}
|
|
8098
|
+
setRecoveryFactorContext({
|
|
8099
|
+
fullHandle: recovery.value.fullHandle,
|
|
8100
|
+
phone: requestedPhone
|
|
8101
|
+
});
|
|
8102
|
+
return;
|
|
8103
|
+
}
|
|
8104
|
+
await requestRegistrationOtp();
|
|
8105
|
+
};
|
|
8561
8106
|
const completeRegistration = async () => {
|
|
8562
8107
|
if (!registrationOtpSent) return;
|
|
8563
8108
|
setError(null);
|
|
@@ -8570,77 +8115,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8570
8115
|
setError(result.error);
|
|
8571
8116
|
return;
|
|
8572
8117
|
}
|
|
8573
|
-
if (result.value.status === "join-required") {
|
|
8574
|
-
setOtp("");
|
|
8575
|
-
setJoinContext({
|
|
8576
|
-
fullHandle: result.value.fullHandle,
|
|
8577
|
-
phone: phone.trim()
|
|
8578
|
-
});
|
|
8579
|
-
return;
|
|
8580
|
-
}
|
|
8581
8118
|
setPhone("");
|
|
8582
8119
|
setHandle("");
|
|
8583
8120
|
resetIdentityEntry();
|
|
8584
8121
|
};
|
|
8585
|
-
const beginJoin = async () => {
|
|
8586
|
-
setError(null);
|
|
8587
|
-
const result = await props.beginDeviceJoin();
|
|
8588
|
-
if (!result.ok) return setError(result.error);
|
|
8589
|
-
setJoinProgress(result.value);
|
|
8590
|
-
};
|
|
8591
|
-
const cancelJoin = async () => {
|
|
8592
|
-
setError(null);
|
|
8593
|
-
const result = await props.cancelDeviceJoin();
|
|
8594
|
-
if (!result.ok) return setError(result.error);
|
|
8595
|
-
setJoinContext(null);
|
|
8596
|
-
setJoinProgress(null);
|
|
8597
|
-
resetIdentityEntry();
|
|
8598
|
-
};
|
|
8599
|
-
const chooseRecovery = async () => {
|
|
8600
|
-
if (joinContext === null || !props.handleRecoveryPhoneEnabled) return;
|
|
8601
|
-
setError(null);
|
|
8602
|
-
const discarded = await props.cancelDeviceJoin();
|
|
8603
|
-
if (!discarded.ok) return setError(discarded.error);
|
|
8604
|
-
const recovery = await props.sendRecoveryOtp({
|
|
8605
|
-
fullHandle: joinContext.fullHandle,
|
|
8606
|
-
phone: joinContext.phone
|
|
8607
|
-
});
|
|
8608
|
-
if (!recovery.ok) return setError(recovery.error);
|
|
8609
|
-
setRecoveryFactorContext({
|
|
8610
|
-
fullHandle: recovery.value.fullHandle,
|
|
8611
|
-
phone: joinContext.phone
|
|
8612
|
-
});
|
|
8613
|
-
setJoinContext(null);
|
|
8614
|
-
};
|
|
8615
|
-
(0, react.useEffect)(() => {
|
|
8616
|
-
if (props.sessionStatus !== "unregistered" || joinContext !== null || joinProgress !== null || typeof props.getDeviceJoinStatus !== "function") return;
|
|
8617
|
-
let active = true;
|
|
8618
|
-
props.getDeviceJoinStatus().then((result) => {
|
|
8619
|
-
if (!active) return;
|
|
8620
|
-
if (!result.ok) setError(result.error);
|
|
8621
|
-
else if (result.value !== null) setJoinProgress(result.value);
|
|
8622
|
-
});
|
|
8623
|
-
return () => {
|
|
8624
|
-
active = false;
|
|
8625
|
-
};
|
|
8626
|
-
}, [props.sessionStatus]);
|
|
8627
|
-
(0, react.useEffect)(() => {
|
|
8628
|
-
if (joinProgress === null || [
|
|
8629
|
-
"authorized",
|
|
8630
|
-
"cancelled",
|
|
8631
|
-
"rejected",
|
|
8632
|
-
"expired"
|
|
8633
|
-
].includes(joinProgress.phase)) return;
|
|
8634
|
-
const timer = setInterval(() => {
|
|
8635
|
-
props.getDeviceJoinStatus().then((result) => {
|
|
8636
|
-
if (!result.ok) setError(result.error);
|
|
8637
|
-
else if (result.value !== null) setJoinProgress(result.value);
|
|
8638
|
-
});
|
|
8639
|
-
}, 2e3);
|
|
8640
|
-
return () => {
|
|
8641
|
-
clearInterval(timer);
|
|
8642
|
-
};
|
|
8643
|
-
}, [joinProgress?.phase]);
|
|
8644
8122
|
const login = async () => {
|
|
8645
8123
|
setError(null);
|
|
8646
8124
|
setLoginFailed(false);
|
|
@@ -8686,94 +8164,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8686
8164
|
requestTitle: "需要重新恢复身份",
|
|
8687
8165
|
requestDescription: "这个 Handle 已在另一台设备完成了更新恢复,当前设备的旧凭证因此失效。验证绑定手机号后即可继续使用本机数据。"
|
|
8688
8166
|
});
|
|
8689
|
-
if (props.sessionStatus === "unregistered" && joinProgress !== null) {
|
|
8690
|
-
const terminal = [
|
|
8691
|
-
"cancelled",
|
|
8692
|
-
"rejected",
|
|
8693
|
-
"expired"
|
|
8694
|
-
].includes(joinProgress.phase);
|
|
8695
|
-
return (0, react_jsx_runtime.jsx)(AwikiIdentityPage, { children: (0, react_jsx_runtime.jsxs)("div", {
|
|
8696
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.accessFlow,
|
|
8697
|
-
children: [
|
|
8698
|
-
(0, react_jsx_runtime.jsx)("div", {
|
|
8699
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.identityIcon,
|
|
8700
|
-
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconUserOutline16, { size: 24 })
|
|
8701
|
-
}),
|
|
8702
|
-
(0, react_jsx_runtime.jsxs)("div", {
|
|
8703
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.headingGroup,
|
|
8704
|
-
children: [(0, react_jsx_runtime.jsx)("h3", { children: joinProgress.phase === "sas-ready" ? "核对安全码" : terminal ? "设备加入已结束" : "正在加入设备" }), (0, react_jsx_runtime.jsx)("p", { children: joinProgress.phase === "sas-ready" ? "请在已有管理设备上核对下面的 6 位安全码;只有两端一致时才批准。" : joinProgress.phase === "rejected" ? "管理设备拒绝了这次加入。" : joinProgress.phase === "expired" ? "这次设备加入已过期,请重新验证手机号。" : joinProgress.phase === "cancelled" ? "这次设备加入已取消。" : "请在已有 AWiki Me 或 CLI 管理设备上处理加入请求。" })]
|
|
8705
|
-
}),
|
|
8706
|
-
joinProgress.phase === "sas-ready" && (0, react_jsx_runtime.jsx)("strong", {
|
|
8707
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.sas,
|
|
8708
|
-
children: joinProgress.sas
|
|
8709
|
-
}),
|
|
8710
|
-
!terminal && (0, react_jsx_runtime.jsxs)("small", {
|
|
8711
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.notice,
|
|
8712
|
-
role: "status",
|
|
8713
|
-
children: ["有效期至 ", joinProgress.expiresAt]
|
|
8714
|
-
}),
|
|
8715
|
-
(0, react_jsx_runtime.jsx)("button", {
|
|
8716
|
-
type: "button",
|
|
8717
|
-
className: terminal ? _dsh_awiki_css_AwikiIdentityAccess_module_css_default.primary : _dsh_awiki_css_AwikiIdentityAccess_module_css_default.secondary,
|
|
8718
|
-
disabled: props.pending,
|
|
8719
|
-
onClick: () => {
|
|
8720
|
-
cancelJoin();
|
|
8721
|
-
},
|
|
8722
|
-
children: terminal ? "返回身份入口" : "取消加入"
|
|
8723
|
-
}),
|
|
8724
|
-
error !== null && (0, react_jsx_runtime.jsx)("small", {
|
|
8725
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.error,
|
|
8726
|
-
role: "alert",
|
|
8727
|
-
children: error
|
|
8728
|
-
})
|
|
8729
|
-
]
|
|
8730
|
-
}) });
|
|
8731
|
-
}
|
|
8732
|
-
if (props.sessionStatus === "unregistered" && joinContext !== null) return (0, react_jsx_runtime.jsx)(AwikiIdentityPage, { children: (0, react_jsx_runtime.jsxs)("div", {
|
|
8733
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.accessFlow,
|
|
8734
|
-
children: [
|
|
8735
|
-
(0, react_jsx_runtime.jsx)("div", {
|
|
8736
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.identityIcon,
|
|
8737
|
-
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconUserOutline16, { size: 24 })
|
|
8738
|
-
}),
|
|
8739
|
-
(0, react_jsx_runtime.jsxs)("div", {
|
|
8740
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.headingGroup,
|
|
8741
|
-
children: [(0, react_jsx_runtime.jsx)("h3", { children: "这个 Handle 已存在" }), (0, react_jsx_runtime.jsx)("p", { children: "推荐把当前 DSH 作为新设备加入,原身份和其他设备会继续有效。" })]
|
|
8742
|
-
}),
|
|
8743
|
-
(0, react_jsx_runtime.jsx)("button", {
|
|
8744
|
-
type: "button",
|
|
8745
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.primary,
|
|
8746
|
-
disabled: props.pending,
|
|
8747
|
-
onClick: () => {
|
|
8748
|
-
beginJoin();
|
|
8749
|
-
},
|
|
8750
|
-
children: "加入新设备(推荐)"
|
|
8751
|
-
}),
|
|
8752
|
-
props.handleRecoveryPhoneEnabled && (0, react_jsx_runtime.jsx)("button", {
|
|
8753
|
-
type: "button",
|
|
8754
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.dangerLink,
|
|
8755
|
-
disabled: props.pending,
|
|
8756
|
-
onClick: () => {
|
|
8757
|
-
chooseRecovery();
|
|
8758
|
-
},
|
|
8759
|
-
children: "恢复 Handle(会替换 DID)"
|
|
8760
|
-
}),
|
|
8761
|
-
(0, react_jsx_runtime.jsx)("button", {
|
|
8762
|
-
type: "button",
|
|
8763
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.secondary,
|
|
8764
|
-
disabled: props.pending,
|
|
8765
|
-
onClick: () => {
|
|
8766
|
-
cancelJoin();
|
|
8767
|
-
},
|
|
8768
|
-
children: "取消"
|
|
8769
|
-
}),
|
|
8770
|
-
error !== null && (0, react_jsx_runtime.jsx)("small", {
|
|
8771
|
-
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.error,
|
|
8772
|
-
role: "alert",
|
|
8773
|
-
children: error
|
|
8774
|
-
})
|
|
8775
|
-
]
|
|
8776
|
-
}) });
|
|
8777
8167
|
if (props.sessionStatus === "signed-out") {
|
|
8778
8168
|
if (signedOutAlternative === "recover") return (0, react_jsx_runtime.jsx)(Recovery, {
|
|
8779
8169
|
...props,
|
|
@@ -8902,7 +8292,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8902
8292
|
}),
|
|
8903
8293
|
(0, react_jsx_runtime.jsxs)("div", {
|
|
8904
8294
|
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.headingGroup,
|
|
8905
|
-
children: [(0, react_jsx_runtime.jsx)("h3", { children: registrationOtpSent ? "
|
|
8295
|
+
children: [(0, react_jsx_runtime.jsx)("h3", { children: registrationOtpSent ? "创建新身份" : "进入 AWiki" }), (0, react_jsx_runtime.jsx)("p", { children: registrationOtpSent ? "这个 Handle 尚未注册。输入刚收到的验证码以创建身份。" : "输入 Handle 和手机号。已有 Handle 会恢复身份,新 Handle 会创建身份。" })]
|
|
8296
|
+
}),
|
|
8297
|
+
props.legacySharedStateDetected === true && props.profileName != null && (0, react_jsx_runtime.jsxs)("div", {
|
|
8298
|
+
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.existingNotice,
|
|
8299
|
+
role: "status",
|
|
8300
|
+
children: [(0, react_jsx_runtime.jsx)("strong", { children: "已为当前 Profile 隔离 AWiki 数据" }), (0, react_jsx_runtime.jsxs)("p", { children: [
|
|
8301
|
+
"检测到旧版共享数据。为避免多个 DSH Profile 同时占用数据库,当前 Profile「",
|
|
8302
|
+
props.profileName,
|
|
8303
|
+
"」使用独立数据目录;旧数据未删除或复制。请用原 Handle 和手机号恢复到此设备。"
|
|
8304
|
+
] })]
|
|
8906
8305
|
}),
|
|
8907
8306
|
(0, react_jsx_runtime.jsxs)("label", {
|
|
8908
8307
|
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.field,
|
|
@@ -8945,7 +8344,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8945
8344
|
type: "submit",
|
|
8946
8345
|
className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.primary,
|
|
8947
8346
|
disabled: props.pending || handle.trim() === "" || phone.trim() === "" || registrationOtpSent && otp.trim() === "",
|
|
8948
|
-
children: registrationOtpSent ? "
|
|
8347
|
+
children: registrationOtpSent ? "创建身份" : "获取验证码"
|
|
8949
8348
|
}),
|
|
8950
8349
|
registrationOtpSent && (0, react_jsx_runtime.jsx)("button", {
|
|
8951
8350
|
type: "button",
|
|
@@ -9229,7 +8628,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9229
8628
|
pending: null,
|
|
9230
8629
|
error: null,
|
|
9231
8630
|
attachmentMaxBytes: 0,
|
|
9232
|
-
|
|
8631
|
+
profileName: null,
|
|
8632
|
+
legacySharedStateDetected: false,
|
|
9233
8633
|
summaries: Object.freeze({}),
|
|
9234
8634
|
recoveryOperationId: null,
|
|
9235
8635
|
recoveryProgress: null
|
|
@@ -9504,18 +8904,23 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9504
8904
|
];
|
|
9505
8905
|
/** Runtime-only decoded-byte budget that prevents repeat Host calls while browsing. */
|
|
9506
8906
|
const BROWSER_IMAGE_ATTACHMENT_CACHE_MAX_BYTES = 33554432;
|
|
9507
|
-
const
|
|
9508
|
-
function
|
|
8907
|
+
const RECOVERY_OPERATION_STORAGE_PREFIX = "awiki.handle-recovery.operation.v2:";
|
|
8908
|
+
function recoveryOperationStorageKey(tenantDomain) {
|
|
8909
|
+
return `${RECOVERY_OPERATION_STORAGE_PREFIX}${encodeURIComponent(tenantDomain)}`;
|
|
8910
|
+
}
|
|
8911
|
+
function storedRecoveryOperation(tenantDomain) {
|
|
9509
8912
|
try {
|
|
9510
|
-
return globalThis.localStorage?.getItem(
|
|
8913
|
+
return globalThis.localStorage?.getItem(recoveryOperationStorageKey(tenantDomain)) ?? null;
|
|
9511
8914
|
} catch {
|
|
9512
8915
|
return null;
|
|
9513
8916
|
}
|
|
9514
8917
|
}
|
|
9515
|
-
function storeRecoveryOperation(operationId) {
|
|
8918
|
+
function storeRecoveryOperation(tenantDomain, operationId) {
|
|
8919
|
+
if (tenantDomain === void 0) return;
|
|
9516
8920
|
try {
|
|
9517
|
-
|
|
9518
|
-
|
|
8921
|
+
const key = recoveryOperationStorageKey(tenantDomain);
|
|
8922
|
+
if (operationId === null) globalThis.localStorage?.removeItem(key);
|
|
8923
|
+
else globalThis.localStorage?.setItem(key, operationId);
|
|
9519
8924
|
} catch {}
|
|
9520
8925
|
}
|
|
9521
8926
|
/** Wait between group-history readiness probes without retaining controller state. */
|
|
@@ -9649,10 +9054,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9649
9054
|
identity: session.value.status === "active" ? session.value.identity : null,
|
|
9650
9055
|
error: null,
|
|
9651
9056
|
attachmentMaxBytes: config.value.attachmentMaxBytes,
|
|
9652
|
-
|
|
9653
|
-
|
|
9057
|
+
profileName: config.value.profileName ?? null,
|
|
9058
|
+
legacySharedStateDetected: config.value.legacySharedStateDetected ?? false,
|
|
9059
|
+
recoveryOperationId: storedRecoveryOperation(config.value.tenantDomain)
|
|
9654
9060
|
});
|
|
9655
|
-
const operationId = storedRecoveryOperation();
|
|
9061
|
+
const operationId = storedRecoveryOperation(config.value.tenantDomain);
|
|
9656
9062
|
if (operationId !== null) {
|
|
9657
9063
|
const recovery = await call(() => this.remote.getRecoveryStatus({ operationId }));
|
|
9658
9064
|
if (this.current(generation) && recovery.ok) {
|
|
@@ -9662,7 +9068,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9662
9068
|
recoveryProgress: recovery.value
|
|
9663
9069
|
});
|
|
9664
9070
|
if (recovery.value.phase === "applied") {
|
|
9665
|
-
storeRecoveryOperation(null);
|
|
9071
|
+
storeRecoveryOperation(config.value.tenantDomain, null);
|
|
9666
9072
|
this.publish({
|
|
9667
9073
|
...this.view,
|
|
9668
9074
|
recoveryOperationId: null,
|
|
@@ -9722,8 +9128,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9722
9128
|
...INITIAL_VIEW,
|
|
9723
9129
|
status: "ready",
|
|
9724
9130
|
sessionStatus: "signed-out",
|
|
9725
|
-
attachmentMaxBytes: this.config?.attachmentMaxBytes ?? 0
|
|
9726
|
-
handleRecoveryPhoneEnabled: this.config?.handleRecoveryPhoneEnabled ?? false
|
|
9131
|
+
attachmentMaxBytes: this.config?.attachmentMaxBytes ?? 0
|
|
9727
9132
|
});
|
|
9728
9133
|
return result;
|
|
9729
9134
|
}
|
|
@@ -9777,49 +9182,15 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9777
9182
|
const result = await this.withPending("注册身份", () => call(() => this.remote.registerIdentity(request), registrationFailureMessage));
|
|
9778
9183
|
if (!result.ok) return result;
|
|
9779
9184
|
if (!this.current(generation)) return result;
|
|
9780
|
-
|
|
9781
|
-
|
|
9782
|
-
this.
|
|
9783
|
-
|
|
9784
|
-
|
|
9785
|
-
|
|
9786
|
-
error: null
|
|
9787
|
-
});
|
|
9788
|
-
await this.refreshConversationsAndRecoverGroups(generation);
|
|
9789
|
-
}
|
|
9790
|
-
return result;
|
|
9791
|
-
}
|
|
9792
|
-
beginDeviceJoin() {
|
|
9793
|
-
return this.withPending("开始加入设备", () => call(() => this.remote.beginDeviceJoin()));
|
|
9794
|
-
}
|
|
9795
|
-
async getDeviceJoinStatus() {
|
|
9796
|
-
const result = await call(() => this.remote.getDeviceJoinStatus());
|
|
9797
|
-
if (result.ok && result.value?.completed) await this.loadSession();
|
|
9798
|
-
return result;
|
|
9799
|
-
}
|
|
9800
|
-
cancelDeviceJoin() {
|
|
9801
|
-
return this.withPending("取消加入设备", async () => {
|
|
9802
|
-
const result = await call(() => this.remote.cancelDeviceJoin());
|
|
9803
|
-
return result.ok ? {
|
|
9804
|
-
ok: true,
|
|
9805
|
-
value: void 0
|
|
9806
|
-
} : result;
|
|
9185
|
+
this.activatePresentationCache(result.value);
|
|
9186
|
+
this.publish({
|
|
9187
|
+
...this.view,
|
|
9188
|
+
sessionStatus: "active",
|
|
9189
|
+
identity: result.value,
|
|
9190
|
+
error: null
|
|
9807
9191
|
});
|
|
9808
|
-
|
|
9809
|
-
|
|
9810
|
-
return call(() => this.remote.refreshDeviceManagement());
|
|
9811
|
-
}
|
|
9812
|
-
startDeviceJoinVerification(request) {
|
|
9813
|
-
return this.withPending("开始设备验证", () => call(() => this.remote.startDeviceJoinVerification(request)));
|
|
9814
|
-
}
|
|
9815
|
-
approveDeviceJoin(request) {
|
|
9816
|
-
return this.withPending("批准设备", () => call(() => this.remote.approveDeviceJoin(request)));
|
|
9817
|
-
}
|
|
9818
|
-
rejectDeviceJoin(request) {
|
|
9819
|
-
return this.withPending("拒绝设备", () => call(() => this.remote.rejectDeviceJoin(request)));
|
|
9820
|
-
}
|
|
9821
|
-
revokeDevice(request) {
|
|
9822
|
-
return this.withPending("撤销设备", () => call(() => this.remote.revokeDevice(request)));
|
|
9192
|
+
await this.refreshConversationsAndRecoverGroups(generation);
|
|
9193
|
+
return result;
|
|
9823
9194
|
}
|
|
9824
9195
|
/**
|
|
9825
9196
|
* Update the deployment identity's public display name.
|
|
@@ -9872,7 +9243,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9872
9243
|
async sendRecoveryOtp(request) {
|
|
9873
9244
|
const result = await this.withPending("发送恢复验证码", () => call(() => this.remote.sendRecoveryOtp(request), registrationOtpFailureMessage), { publishFailure: false });
|
|
9874
9245
|
if (!result.ok) return result;
|
|
9875
|
-
storeRecoveryOperation(result.value.operationId);
|
|
9246
|
+
storeRecoveryOperation(this.config?.tenantDomain, result.value.operationId);
|
|
9876
9247
|
this.publish({
|
|
9877
9248
|
...this.view,
|
|
9878
9249
|
recoveryOperationId: result.value.operationId,
|
|
@@ -9907,7 +9278,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9907
9278
|
recoveryProgress: result.value
|
|
9908
9279
|
});
|
|
9909
9280
|
if (result.value.phase === "applied") {
|
|
9910
|
-
storeRecoveryOperation(null);
|
|
9281
|
+
storeRecoveryOperation(this.config?.tenantDomain, null);
|
|
9911
9282
|
this.publish({
|
|
9912
9283
|
...this.view,
|
|
9913
9284
|
recoveryOperationId: null,
|
|
@@ -9928,7 +9299,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9928
9299
|
recoveryProgress: result.value
|
|
9929
9300
|
});
|
|
9930
9301
|
if (result.value.phase === "applied") {
|
|
9931
|
-
storeRecoveryOperation(null);
|
|
9302
|
+
storeRecoveryOperation(this.config?.tenantDomain, null);
|
|
9932
9303
|
this.publish({
|
|
9933
9304
|
...this.view,
|
|
9934
9305
|
recoveryOperationId: null,
|
|
@@ -9955,7 +9326,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9955
9326
|
recoveryProgress: result.value
|
|
9956
9327
|
});
|
|
9957
9328
|
if (result.value.phase === "applied") {
|
|
9958
|
-
storeRecoveryOperation(null);
|
|
9329
|
+
storeRecoveryOperation(this.config?.tenantDomain, null);
|
|
9959
9330
|
this.publish({
|
|
9960
9331
|
...this.view,
|
|
9961
9332
|
recoveryOperationId: null,
|
|
@@ -9976,7 +9347,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9976
9347
|
if (phase !== void 0 && phase !== "awaiting_factor" && phase !== "ready_to_commit") return this.fail("当前恢复状态不能取消");
|
|
9977
9348
|
const result = await this.withPending("取消身份恢复", () => call(() => this.remote.discardRecovery({ operationId })), { publishFailure: false });
|
|
9978
9349
|
if (!result.ok) return result;
|
|
9979
|
-
storeRecoveryOperation(null);
|
|
9350
|
+
storeRecoveryOperation(this.config?.tenantDomain, null);
|
|
9980
9351
|
this.publish({
|
|
9981
9352
|
...this.view,
|
|
9982
9353
|
recoveryOperationId: null,
|
|
@@ -9987,6 +9358,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9987
9358
|
value: void 0
|
|
9988
9359
|
};
|
|
9989
9360
|
}
|
|
9361
|
+
/** Return cached browser-safe runtime policy, or load it once on demand. */
|
|
9362
|
+
async getConfig() {
|
|
9363
|
+
if (this.config !== null) return {
|
|
9364
|
+
ok: true,
|
|
9365
|
+
value: this.config
|
|
9366
|
+
};
|
|
9367
|
+
const result = await call(() => this.remote.getConfig(), mailFailureMessage);
|
|
9368
|
+
if (result.ok) this.config = result.value;
|
|
9369
|
+
return result;
|
|
9370
|
+
}
|
|
9990
9371
|
/** Read the active deployment identity's public mailbox state. */
|
|
9991
9372
|
getMailAccount() {
|
|
9992
9373
|
return call(() => this.remote.getMailAccount(), mailFailureMessage);
|
|
@@ -10007,6 +9388,20 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
10007
9388
|
sendMail(request) {
|
|
10008
9389
|
return call(() => this.remote.sendMail(request), mailFailureMessage);
|
|
10009
9390
|
}
|
|
9391
|
+
/** Download one explicitly selected mail attachment without retaining its bytes. */
|
|
9392
|
+
async downloadMailAttachment(request) {
|
|
9393
|
+
if (this.disposed) return {
|
|
9394
|
+
ok: false,
|
|
9395
|
+
error: "AWiki 插件已卸载"
|
|
9396
|
+
};
|
|
9397
|
+
const generation = this.generation;
|
|
9398
|
+
const result = await call(() => this.remote.downloadMailAttachment(request), mailFailureMessage);
|
|
9399
|
+
if (!this.current(generation)) return {
|
|
9400
|
+
ok: false,
|
|
9401
|
+
error: "AWiki 已关闭"
|
|
9402
|
+
};
|
|
9403
|
+
return result;
|
|
9404
|
+
}
|
|
10010
9405
|
/**
|
|
10011
9406
|
* Load another page of the conversation roster.
|
|
10012
9407
|
* @returns successful pagination or one display-safe failure.
|
|
@@ -10842,13 +10237,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
10842
10237
|
if (!result.ok) return result;
|
|
10843
10238
|
await this.persistentImageCache.clear().catch(() => void 0);
|
|
10844
10239
|
this.close();
|
|
10240
|
+
const tenantDomain = this.config?.tenantDomain;
|
|
10845
10241
|
this.config = null;
|
|
10846
10242
|
this.conversationsCursor = void 0;
|
|
10847
10243
|
this.historyCursor = void 0;
|
|
10848
10244
|
this.unreadAtOpen.clear();
|
|
10849
10245
|
this.summaryBaselines.clear();
|
|
10850
10246
|
this.clearPresentationCache();
|
|
10851
|
-
storeRecoveryOperation(null);
|
|
10247
|
+
storeRecoveryOperation(tenantDomain, null);
|
|
10852
10248
|
this.publish({
|
|
10853
10249
|
...INITIAL_VIEW,
|
|
10854
10250
|
status: "ready"
|
|
@@ -11578,22 +10974,160 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11578
10974
|
} catch {}
|
|
11579
10975
|
}
|
|
11580
10976
|
//#endregion
|
|
10977
|
+
//#region lib/types/client/mail-attachment.js
|
|
10978
|
+
/** Browser-only mail attachment selection, encoding, integrity, and download helpers. */
|
|
10979
|
+
function invalid(message) {
|
|
10980
|
+
throw new TypeError(message);
|
|
10981
|
+
}
|
|
10982
|
+
function fileName(value) {
|
|
10983
|
+
if (value.length === 0 || value.trim() !== value || value.replace(/[. ]+$/u, "") !== value || value === "." || value === ".." || new TextEncoder().encode(value).byteLength > 255 || /[\\/\p{C}]/u.test(value)) invalid("附件文件名无效。");
|
|
10984
|
+
return value;
|
|
10985
|
+
}
|
|
10986
|
+
function contentType(value) {
|
|
10987
|
+
if (value === "") return "application/octet-stream";
|
|
10988
|
+
if (!/^[A-Za-z0-9!#$&^_.+-]+\/[A-Za-z0-9!#$&^_.+-]+$/u.test(value)) invalid("附件 MIME 类型无效。");
|
|
10989
|
+
return value;
|
|
10990
|
+
}
|
|
10991
|
+
function assertLimits(limits) {
|
|
10992
|
+
if (!Number.isSafeInteger(limits.maxCount) || limits.maxCount < 0 || !Number.isSafeInteger(limits.maxBytes) || limits.maxBytes < 1 || !Number.isSafeInteger(limits.totalMaxBytes) || limits.totalMaxBytes < limits.maxBytes) invalid("邮件附件限制暂不可用。");
|
|
10993
|
+
}
|
|
10994
|
+
function base64(bytes) {
|
|
10995
|
+
let binary = "";
|
|
10996
|
+
const chunkSize = 32768;
|
|
10997
|
+
for (let offset = 0; offset < bytes.length; offset += chunkSize) binary += String.fromCharCode(...bytes.subarray(offset, offset + chunkSize));
|
|
10998
|
+
return btoa(binary);
|
|
10999
|
+
}
|
|
11000
|
+
/** Append browser File references after enforcing the exact Host-owned limits. */
|
|
11001
|
+
function selectMailAttachments(current, selected, limits, createId) {
|
|
11002
|
+
assertLimits(limits);
|
|
11003
|
+
const additions = Array.from(selected, (file) => ({
|
|
11004
|
+
id: createId(),
|
|
11005
|
+
file,
|
|
11006
|
+
fileName: fileName(file.name),
|
|
11007
|
+
contentType: contentType(file.type),
|
|
11008
|
+
sizeBytes: file.size,
|
|
11009
|
+
lastModified: file.lastModified
|
|
11010
|
+
}));
|
|
11011
|
+
const combined = [...current, ...additions];
|
|
11012
|
+
if (combined.length > limits.maxCount) invalid(`邮件最多选择 ${limits.maxCount} 个附件。`);
|
|
11013
|
+
for (const attachment of combined) {
|
|
11014
|
+
if (!Number.isSafeInteger(attachment.sizeBytes) || attachment.sizeBytes < 0) invalid("附件大小无效。");
|
|
11015
|
+
if (attachment.sizeBytes > limits.maxBytes) invalid(`单个附件不能超过 ${limits.maxBytes} bytes。`);
|
|
11016
|
+
}
|
|
11017
|
+
const total = combined.reduce((sum, attachment) => sum + attachment.sizeBytes, 0);
|
|
11018
|
+
if (!Number.isSafeInteger(total) || total > limits.totalMaxBytes) invalid(`附件总大小不能超过 ${limits.totalMaxBytes} bytes。`);
|
|
11019
|
+
return combined;
|
|
11020
|
+
}
|
|
11021
|
+
/** Re-read the same approved File objects and return JSON-safe Remote attachments. */
|
|
11022
|
+
async function encodeMailAttachments(attachments, limits) {
|
|
11023
|
+
selectMailAttachments([], attachments.map((value) => value.file), limits, () => "validation-only");
|
|
11024
|
+
const encoded = [];
|
|
11025
|
+
for (const attachment of attachments) {
|
|
11026
|
+
if (attachment.file.name !== attachment.fileName || contentType(attachment.file.type) !== attachment.contentType || attachment.file.size !== attachment.sizeBytes || attachment.file.lastModified !== attachment.lastModified) invalid(`附件 ${attachment.fileName} 已发生变化,请重新选择。`);
|
|
11027
|
+
let buffer;
|
|
11028
|
+
try {
|
|
11029
|
+
buffer = await attachment.file.arrayBuffer();
|
|
11030
|
+
} catch {
|
|
11031
|
+
invalid(`无法读取附件 ${attachment.fileName},请重新选择。`);
|
|
11032
|
+
}
|
|
11033
|
+
const bytes = new Uint8Array(buffer);
|
|
11034
|
+
if (bytes.byteLength !== attachment.sizeBytes) invalid(`附件 ${attachment.fileName} 的大小已发生变化,请重新选择。`);
|
|
11035
|
+
encoded.push({
|
|
11036
|
+
fileName: attachment.fileName,
|
|
11037
|
+
contentType: attachment.contentType,
|
|
11038
|
+
sizeBytes: bytes.byteLength,
|
|
11039
|
+
bytesBase64: base64(bytes)
|
|
11040
|
+
});
|
|
11041
|
+
}
|
|
11042
|
+
return encoded;
|
|
11043
|
+
}
|
|
11044
|
+
/** Return canonical download metadata only when the service supplied every required field. */
|
|
11045
|
+
function downloadableMailAttachment(value, maxBytes) {
|
|
11046
|
+
if (!Number.isSafeInteger(value.index) || value.index < 0 || value.index > 4294967295) return void 0;
|
|
11047
|
+
if (value.fileName === void 0 || value.contentType === void 0 || value.sizeBytes === void 0) return void 0;
|
|
11048
|
+
if (!/^(?:0|[1-9][0-9]*)$/u.test(value.sizeBytes)) return void 0;
|
|
11049
|
+
const sizeBytes = Number(value.sizeBytes);
|
|
11050
|
+
if (!Number.isSafeInteger(sizeBytes) || sizeBytes < 0 || sizeBytes > maxBytes) return void 0;
|
|
11051
|
+
try {
|
|
11052
|
+
return {
|
|
11053
|
+
index: value.index,
|
|
11054
|
+
fileName: fileName(value.fileName),
|
|
11055
|
+
contentType: contentType(value.contentType),
|
|
11056
|
+
sizeBytes
|
|
11057
|
+
};
|
|
11058
|
+
} catch {
|
|
11059
|
+
return;
|
|
11060
|
+
}
|
|
11061
|
+
}
|
|
11062
|
+
/** Validate exact metadata, canonical Base64, byte length, and SHA-256 before download. */
|
|
11063
|
+
async function prepareMailAttachmentDownload(value, expected, maxBytes) {
|
|
11064
|
+
if (fileName(value.fileName) !== expected.fileName || contentType(value.contentType) !== expected.contentType || value.sizeBytes !== expected.sizeBytes || value.sizeBytes > maxBytes) invalid("下载附件与邮件元数据不一致。");
|
|
11065
|
+
if (!/^[a-f0-9]{64}$/u.test(value.sha256)) invalid("下载附件完整性信息无效。");
|
|
11066
|
+
const expectedEncodedLength = Math.ceil(value.sizeBytes / 3) * 4;
|
|
11067
|
+
if (value.bytesBase64.length !== expectedEncodedLength || value.bytesBase64.length % 4 !== 0 || !/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/u.test(value.bytesBase64)) invalid("下载附件编码无效。");
|
|
11068
|
+
let binary;
|
|
11069
|
+
try {
|
|
11070
|
+
binary = atob(value.bytesBase64);
|
|
11071
|
+
} catch {
|
|
11072
|
+
invalid("下载附件编码无效。");
|
|
11073
|
+
}
|
|
11074
|
+
const bytes = Uint8Array.from(binary, (character) => character.charCodeAt(0));
|
|
11075
|
+
if (bytes.byteLength !== value.sizeBytes || base64(bytes) !== value.bytesBase64) invalid("下载附件大小或编码不一致。");
|
|
11076
|
+
const digest = new Uint8Array(await crypto.subtle.digest("SHA-256", bytes));
|
|
11077
|
+
if (Array.from(digest, (byte) => byte.toString(16).padStart(2, "0")).join("") !== value.sha256) invalid("下载附件完整性校验失败。");
|
|
11078
|
+
return {
|
|
11079
|
+
fileName: expected.fileName,
|
|
11080
|
+
contentType: expected.contentType,
|
|
11081
|
+
bytes
|
|
11082
|
+
};
|
|
11083
|
+
}
|
|
11084
|
+
/** Trigger one download and always revoke the temporary object URL immediately. */
|
|
11085
|
+
function savePreparedMailAttachment(value) {
|
|
11086
|
+
const url = URL.createObjectURL(new Blob([value.bytes], { type: value.contentType }));
|
|
11087
|
+
const anchor = document.createElement("a");
|
|
11088
|
+
try {
|
|
11089
|
+
anchor.href = url;
|
|
11090
|
+
anchor.download = value.fileName;
|
|
11091
|
+
anchor.hidden = true;
|
|
11092
|
+
document.body.append(anchor);
|
|
11093
|
+
anchor.click();
|
|
11094
|
+
} finally {
|
|
11095
|
+
anchor.remove();
|
|
11096
|
+
URL.revokeObjectURL(url);
|
|
11097
|
+
}
|
|
11098
|
+
}
|
|
11099
|
+
/** Execute the exact Browser UI download path: Remote, integrity check, Blob, and save click. */
|
|
11100
|
+
async function downloadAndSaveMailAttachment(download, request, expected, maxBytes, active = () => true) {
|
|
11101
|
+
const result = await download(request);
|
|
11102
|
+
if (!active()) return false;
|
|
11103
|
+
if (!result.ok) invalid(result.error);
|
|
11104
|
+
const prepared = await prepareMailAttachmentDownload(result.value, expected, maxBytes);
|
|
11105
|
+
if (!active()) return false;
|
|
11106
|
+
savePreparedMailAttachment(prepared);
|
|
11107
|
+
return true;
|
|
11108
|
+
}
|
|
11109
|
+
//#endregion
|
|
11581
11110
|
//#region \0dsh-awiki-css:AwikiMail.module.css.mjs
|
|
11582
|
-
const css$2 = ".eMUW5a_mail{background:var(--dsw-alias-bg-layer-1);flex:1;grid-template-columns:240px 320px minmax(420px,1fr);min-height:0;display:grid;position:relative}.eMUW5a_sidebar,.eMUW5a_mailList,.eMUW5a_mailDetail{min-width:0;min-height:0}.eMUW5a_sidebar{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex-direction:column;display:flex}.eMUW5a_accountCard{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);border-radius:10px;gap:3px;margin:0 14px 12px;padding:10px 12px;display:grid}.eMUW5a_accountCard small,.eMUW5a_accountCard span{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.eMUW5a_accountCard strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.eMUW5a_accountCard .eMUW5a_accountStatus{color:var(--dsw-alias-state-success-primary)}.eMUW5a_folderNav{gap:4px;padding:0 10px;display:grid}.eMUW5a_folderNav button{min-height:38px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 10px;display:grid}.eMUW5a_folderNav button:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_folderNav button[data-active]{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.eMUW5a_folderNav small{min-width:20px;color:var(--dsw-alias-brand-primary);text-align:right}.eMUW5a_folderRow{color:var(--dsw-alias-label-secondary);border-radius:9px;grid-template-columns:minmax(0,1fr) 38px;display:grid}.eMUW5a_folderRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_folderRow[data-active]{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.eMUW5a_folderRow>button{color:inherit;background:0 0;border-radius:0}.eMUW5a_folderRow>button:hover{background:0 0}.eMUW5a_folderRow>.eMUW5a_composeIconButton{border-radius:8px;grid-template-columns:1fr;place-items:center;gap:0;width:38px;padding:0}.eMUW5a_folderRow>.eMUW5a_composeIconButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailList{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);flex-direction:column;display:flex;position:relative}.eMUW5a_listHeader,.eMUW5a_detailHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:9px;min-height:56px;padding:0 12px;display:flex}.eMUW5a_listHeader>div,.eMUW5a_detailHeader>div{flex-direction:column;flex:1;min-width:0;display:flex}.eMUW5a_listHeader strong,.eMUW5a_detailHeader strong,.eMUW5a_listHeader small,.eMUW5a_detailHeader small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eMUW5a_listHeader strong,.eMUW5a_detailHeader strong{font-size:13px;line-height:20px}.eMUW5a_listHeader small,.eMUW5a_detailHeader small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_listHeader>button,.eMUW5a_detailBack{width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.eMUW5a_listHeader>button:hover,.eMUW5a_detailBack:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.eMUW5a_listHeader>button:disabled{opacity:.5;cursor:default}.eMUW5a_detailBack{display:none}.eMUW5a_listHeader svg,.eMUW5a_loadingState svg{animation:none}.eMUW5a_listHeader button:disabled svg,.eMUW5a_loadingState svg{animation:1s linear infinite eMUW5a_mail-spin}@keyframes eMUW5a_mail-spin{to{transform:rotate(360deg)}}.eMUW5a_rows{flex:1;min-height:0;padding:6px;overflow:auto}.eMUW5a_mailRow{width:100%;min-height:82px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:7px minmax(0,1fr) auto;gap:7px;padding:10px 9px;display:grid;position:relative}.eMUW5a_mailRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailRow[data-active]{background:var(--dsw-alias-interactive-bg-active)}.eMUW5a_unreadDot{background:0 0;border-radius:50%;align-self:start;width:6px;height:6px;margin-top:7px}.eMUW5a_mailRow[data-unread] .eMUW5a_unreadDot{background:var(--dsw-alias-brand-primary)}.eMUW5a_rowContent{flex-direction:column;gap:2px;min-width:0;display:flex}.eMUW5a_rowTop{align-items:center;gap:8px;display:flex}.eMUW5a_rowTop strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;line-height:18px;overflow:hidden}.eMUW5a_mailRow[data-unread] .eMUW5a_rowTop strong,.eMUW5a_mailRow[data-unread] .eMUW5a_rowSubject{font-weight:600}.eMUW5a_rowTop time{color:var(--dsw-alias-label-tertiary);flex:none;font-size:10px;line-height:15px}.eMUW5a_rowSubject,.eMUW5a_rowPreview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eMUW5a_rowSubject{color:var(--dsw-alias-label-primary);font-size:12px;line-height:18px}.eMUW5a_rowPreview{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_rowAttachment{color:var(--dsw-alias-label-tertiary);align-self:end;align-items:center;gap:2px;display:flex}.eMUW5a_rowAttachment small{font-size:10px}.eMUW5a_inlineError,.eMUW5a_detailError{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:11px;line-height:16px;display:flex}.eMUW5a_inlineError button{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;text-decoration:underline}.eMUW5a_loadingState,.eMUW5a_emptyState,.eMUW5a_detailEmpty{color:var(--dsw-alias-label-tertiary);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.eMUW5a_loadingState{pointer-events:none;position:absolute;inset:56px 0 0}.eMUW5a_emptyState{flex-direction:column;min-height:180px}.eMUW5a_emptyState p,.eMUW5a_detailEmpty p{margin:0}.eMUW5a_loadMore{background:var(--dsw-alias-button-elevated-fill);min-height:34px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;border:0;border-radius:9px;margin:7px}.eMUW5a_loadMore:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailDetail{background:var(--dsw-alias-bg-layer-1);flex-direction:column;display:flex;position:relative}.eMUW5a_detailEmpty{flex-direction:column;flex:1}.eMUW5a_detailEmpty button{background:var(--dsw-alias-button-primary-fill);min-height:34px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:9px;padding:0 14px}.eMUW5a_markReadButton{border:1px solid var(--dsw-alias-border-l2);min-height:30px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:8px;flex:none;padding:0 9px;font-size:11px}.eMUW5a_markReadButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_markReadButton:disabled{opacity:.5;cursor:default}.eMUW5a_messageBody{flex:1;min-height:0;padding:22px 24px;overflow:auto}.eMUW5a_messageMeta{border-bottom:1px solid var(--dsw-alias-border-l1);padding-bottom:18px}.eMUW5a_messageMeta h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:18px;line-height:27px}.eMUW5a_messageMeta>time{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_messageMeta dl{gap:3px;margin:14px 0 0;display:grid}.eMUW5a_messageMeta dl>div{grid-template-columns:48px minmax(0,1fr);gap:8px;font-size:11px;line-height:17px;display:grid}.eMUW5a_messageMeta dt{color:var(--dsw-alias-label-tertiary)}.eMUW5a_messageMeta dd{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;margin:0}.eMUW5a_untrustedNotice{background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-tertiary);border-radius:8px;align-items:center;gap:7px;margin:16px 0;padding:8px 10px;font-size:11px;line-height:16px;display:flex}.eMUW5a_plainBody{min-height:120px;color:var(--dsw-alias-label-primary);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:22px}.eMUW5a_truncatedNotice{color:var(--dsw-alias-state-warn-label);margin:14px 0 0;font-size:11px}.eMUW5a_attachments{border-top:1px solid var(--dsw-alias-border-l1);gap:8px;margin-top:22px;padding-top:16px;display:grid}.eMUW5a_attachments h4{margin:0;font-size:12px;line-height:18px}.eMUW5a_attachments>div{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:9px;align-items:center;gap:9px;padding:9px 10px;display:flex}.eMUW5a_attachments>div>span{flex-direction:column;min-width:0;display:flex}.eMUW5a_attachments strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.eMUW5a_attachments small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.eMUW5a_notice{z-index:6;box-sizing:border-box;background:var(--dsw-alias-button-primary-fill);max-width:min(360px,100% - 32px);color:var(--dsw-alias-label-primary-inverted);box-shadow:var(--dsw-shadow-lv2);overflow-wrap:anywhere;pointer-events:none;text-align:center;border-radius:9px;padding:10px 14px;font-size:12px;line-height:18px;animation:2.4s both eMUW5a_mail-notice;position:absolute;top:16px;left:50%;transform:translate(-50%)}@keyframes eMUW5a_mail-notice{0%{opacity:0;transform:translate(-50%,-6px)}8%,88%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}.eMUW5a_composer{flex-direction:column;flex:1;min-height:0;display:flex}.eMUW5a_composeFields{flex-direction:column;flex:1;gap:11px;min-height:0;padding:18px 20px;display:flex;overflow:auto}.eMUW5a_composeFields label{color:var(--dsw-alias-label-secondary);grid-template-rows:max-content max-content;gap:5px;font-size:11px;line-height:16px;display:grid}.eMUW5a_composeFields input,.eMUW5a_composeFields textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:9px;padding:8px 10px}.eMUW5a_composeFields input{height:38px}.eMUW5a_composeFields .eMUW5a_bodyField{flex:1;grid-template-rows:max-content minmax(160px,1fr);min-height:160px}.eMUW5a_bodyField textarea{resize:none;min-height:160px}.eMUW5a_composeError{color:var(--dsw-alias-state-error-primary);margin:0;font-size:11px;line-height:16px}.eMUW5a_composeFooter{border-top:1px solid var(--dsw-alias-border-l1);flex:none;justify-content:flex-end;gap:8px;padding:10px 14px;display:flex}.eMUW5a_cancelButton,.eMUW5a_sendButton{cursor:pointer;min-height:34px;font:inherit;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 13px;display:flex}.eMUW5a_cancelButton{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-primary);background:0 0}.eMUW5a_sendButton{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-inverted);border:0}.eMUW5a_cancelButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_sendButton:hover{background:var(--dsw-alias-button-primary-hover)}.eMUW5a_confirmSummary{color:var(--dsw-alias-label-secondary);gap:6px;display:grid}.eMUW5a_confirmSummary p,.eMUW5a_discardText{overflow-wrap:anywhere;margin:0}@media (width<=1119px){.eMUW5a_mail{grid-template-columns:220px minmax(0,1fr)}.eMUW5a_mailList,.eMUW5a_mailDetail{grid-area:1/2}.eMUW5a_mailDetail,.eMUW5a_mail[data-detail-active] .eMUW5a_mailList{display:none}.eMUW5a_mail[data-detail-active] .eMUW5a_mailDetail{display:flex}.eMUW5a_detailBack{display:grid}}@media (width<=719px){.eMUW5a_mail{grid-template-columns:1fr}.eMUW5a_sidebar,.eMUW5a_mailList,.eMUW5a_mailDetail{grid-area:1/1}.eMUW5a_mailList,.eMUW5a_mailDetail,.eMUW5a_mail[data-pane=list] .eMUW5a_sidebar,.eMUW5a_mail[data-pane=detail] .eMUW5a_sidebar{display:none}.eMUW5a_mail[data-pane=list] .eMUW5a_mailList,.eMUW5a_mail[data-pane=detail] .eMUW5a_mailDetail{display:flex}.eMUW5a_messageBody{padding:18px}}@media (prefers-reduced-motion:reduce){.eMUW5a_listHeader button:disabled svg,.eMUW5a_loadingState svg,.eMUW5a_notice{animation:none}}";
|
|
11583
|
-
const tagId$
|
|
11584
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$
|
|
11111
|
+
const css$1 = ".eMUW5a_mail{background:var(--dsw-alias-bg-layer-1);flex:1;grid-template-columns:240px 320px minmax(420px,1fr);min-height:0;display:grid;position:relative}.eMUW5a_sidebar,.eMUW5a_mailList,.eMUW5a_mailDetail{min-width:0;min-height:0}.eMUW5a_sidebar{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);flex-direction:column;display:flex}.eMUW5a_accountCard{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);border-radius:10px;gap:3px;margin:0 14px 12px;padding:10px 12px;display:grid}.eMUW5a_accountCard small,.eMUW5a_accountCard span{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.eMUW5a_accountCard strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.eMUW5a_accountCard .eMUW5a_accountStatus{color:var(--dsw-alias-state-success-primary)}.eMUW5a_folderNav{gap:4px;padding:0 10px;display:grid}.eMUW5a_folderNav button{min-height:38px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 10px;display:grid}.eMUW5a_folderNav button:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_folderNav button[data-active]{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.eMUW5a_folderNav small{min-width:20px;color:var(--dsw-alias-brand-primary);text-align:right}.eMUW5a_folderRow{color:var(--dsw-alias-label-secondary);border-radius:9px;grid-template-columns:minmax(0,1fr) 38px;display:grid}.eMUW5a_folderRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_folderRow[data-active]{background:var(--dsw-alias-interactive-bg-active);color:var(--dsw-alias-label-primary)}.eMUW5a_folderRow>button{color:inherit;background:0 0;border-radius:0}.eMUW5a_folderRow>button:hover{background:0 0}.eMUW5a_folderRow>.eMUW5a_composeIconButton{border-radius:8px;grid-template-columns:1fr;place-items:center;gap:0;width:38px;padding:0}.eMUW5a_folderRow>.eMUW5a_composeIconButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailList{border-right:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);flex-direction:column;display:flex;position:relative}.eMUW5a_listHeader,.eMUW5a_detailHeader{border-bottom:1px solid var(--dsw-alias-border-l1);flex:none;align-items:center;gap:9px;min-height:56px;padding:0 12px;display:flex}.eMUW5a_listHeader>div,.eMUW5a_detailHeader>div{flex-direction:column;flex:1;min-width:0;display:flex}.eMUW5a_listHeader strong,.eMUW5a_detailHeader strong,.eMUW5a_listHeader small,.eMUW5a_detailHeader small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eMUW5a_listHeader strong,.eMUW5a_detailHeader strong{font-size:13px;line-height:20px}.eMUW5a_listHeader small,.eMUW5a_detailHeader small{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_listHeader>button,.eMUW5a_detailBack{width:30px;height:30px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.eMUW5a_listHeader>button:hover,.eMUW5a_detailBack:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.eMUW5a_listHeader>button:disabled{opacity:.5;cursor:default}.eMUW5a_detailBack{display:none}.eMUW5a_listHeader svg,.eMUW5a_loadingState svg{animation:none}.eMUW5a_listHeader button:disabled svg,.eMUW5a_loadingState svg{animation:1s linear infinite eMUW5a_mail-spin}.eMUW5a_listHeader>.eMUW5a_listBack{display:none}@keyframes eMUW5a_mail-spin{to{transform:rotate(360deg)}}.eMUW5a_rows{flex:1;min-height:0;padding:6px;overflow:auto}.eMUW5a_mailRow{width:100%;min-height:82px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:7px minmax(0,1fr) auto;gap:7px;padding:10px 9px;display:grid;position:relative}.eMUW5a_mailRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailRow[data-active]{background:var(--dsw-alias-interactive-bg-active)}.eMUW5a_unreadDot{background:0 0;border-radius:50%;align-self:start;width:6px;height:6px;margin-top:7px}.eMUW5a_mailRow[data-unread] .eMUW5a_unreadDot{background:var(--dsw-alias-brand-primary)}.eMUW5a_rowContent{flex-direction:column;gap:2px;min-width:0;display:flex}.eMUW5a_rowTop{align-items:center;gap:8px;display:flex}.eMUW5a_rowTop strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;line-height:18px;overflow:hidden}.eMUW5a_mailRow[data-unread] .eMUW5a_rowTop strong,.eMUW5a_mailRow[data-unread] .eMUW5a_rowSubject{font-weight:600}.eMUW5a_rowTop time{color:var(--dsw-alias-label-tertiary);flex:none;font-size:10px;line-height:15px}.eMUW5a_rowSubject,.eMUW5a_rowPreview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eMUW5a_rowSubject{color:var(--dsw-alias-label-primary);font-size:12px;line-height:18px}.eMUW5a_rowPreview{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_rowAttachment{color:var(--dsw-alias-label-tertiary);align-self:end;align-items:center;gap:2px;display:flex}.eMUW5a_rowAttachment small{font-size:10px}.eMUW5a_inlineError,.eMUW5a_detailError{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:11px;line-height:16px;display:flex}.eMUW5a_inlineError button{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;text-decoration:underline}.eMUW5a_loadingState,.eMUW5a_emptyState,.eMUW5a_detailEmpty{color:var(--dsw-alias-label-tertiary);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.eMUW5a_loadingState{pointer-events:none;position:absolute;inset:56px 0 0}.eMUW5a_emptyState{flex-direction:column;min-height:180px}.eMUW5a_emptyState p,.eMUW5a_detailEmpty p{margin:0}.eMUW5a_loadMore{background:var(--dsw-alias-button-elevated-fill);min-height:34px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;border:0;border-radius:9px;margin:7px}.eMUW5a_loadMore:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_mailDetail{background:var(--dsw-alias-bg-layer-1);flex-direction:column;display:flex;position:relative}.eMUW5a_detailEmpty{flex-direction:column;flex:1}.eMUW5a_detailEmpty button{background:var(--dsw-alias-button-primary-fill);min-height:34px;color:var(--dsw-alias-label-primary-inverted);cursor:pointer;border:0;border-radius:9px;padding:0 14px}.eMUW5a_markReadButton{border:1px solid var(--dsw-alias-border-l2);min-height:30px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:8px;flex:none;padding:0 9px;font-size:11px}.eMUW5a_markReadButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_markReadButton:disabled{opacity:.5;cursor:default}.eMUW5a_messageBody{flex:1;min-height:0;padding:22px 24px;overflow:auto}.eMUW5a_messageMeta{border-bottom:1px solid var(--dsw-alias-border-l1);padding-bottom:18px}.eMUW5a_messageMeta h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:18px;line-height:27px}.eMUW5a_messageMeta>time{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:16px}.eMUW5a_messageMeta dl{gap:3px;margin:14px 0 0;display:grid}.eMUW5a_messageMeta dl>div{grid-template-columns:48px minmax(0,1fr);gap:8px;font-size:11px;line-height:17px;display:grid}.eMUW5a_messageMeta dt{color:var(--dsw-alias-label-tertiary)}.eMUW5a_messageMeta dd{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;margin:0}.eMUW5a_untrustedNotice{background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-tertiary);border-radius:8px;align-items:center;gap:7px;margin:16px 0;padding:8px 10px;font-size:11px;line-height:16px;display:flex}.eMUW5a_plainBody{min-height:120px;color:var(--dsw-alias-label-primary);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:22px}.eMUW5a_truncatedNotice{color:var(--dsw-alias-state-warn-label);margin:14px 0 0;font-size:11px}.eMUW5a_attachments{border-top:1px solid var(--dsw-alias-border-l1);gap:8px;min-width:0;margin-top:22px;padding-top:16px;display:grid}.eMUW5a_attachments h4{margin:0;font-size:12px;line-height:18px}.eMUW5a_attachments>div{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:9px;align-items:center;gap:9px;min-width:0;max-width:100%;padding:9px 10px;display:flex}.eMUW5a_attachments>div>span{flex-direction:column;flex:1;min-width:0;display:flex}.eMUW5a_attachments strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.eMUW5a_attachments small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.eMUW5a_attachments button,.eMUW5a_selectedAttachments button{border:1px solid var(--dsw-alias-border-l2);min-height:30px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border-radius:8px;flex:none;padding:0 10px;font-size:11px}.eMUW5a_attachments button:hover,.eMUW5a_selectedAttachments button:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_attachments button:disabled,.eMUW5a_selectedAttachments button:disabled{opacity:.5;cursor:default}.eMUW5a_attachments .eMUW5a_attachmentDownloadError{color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere}.eMUW5a_notice{z-index:6;box-sizing:border-box;background:var(--dsw-alias-button-primary-fill);max-width:min(360px,100% - 32px);color:var(--dsw-alias-label-primary-inverted);box-shadow:var(--dsw-shadow-lv2);overflow-wrap:anywhere;pointer-events:none;text-align:center;border-radius:9px;padding:10px 14px;font-size:12px;line-height:18px;animation:2.4s both eMUW5a_mail-notice;position:absolute;top:16px;left:50%;transform:translate(-50%)}@keyframes eMUW5a_mail-notice{0%{opacity:0;transform:translate(-50%,-6px)}8%,88%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}.eMUW5a_composer{flex-direction:column;flex:1;min-height:0;display:flex}.eMUW5a_composeFields{flex-direction:column;flex:1;gap:11px;min-height:0;padding:18px 20px;display:flex;overflow:auto}.eMUW5a_composeFields label{color:var(--dsw-alias-label-secondary);grid-template-rows:max-content max-content;gap:5px;font-size:11px;line-height:16px;display:grid}.eMUW5a_composeFields input,.eMUW5a_composeFields textarea{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);width:100%;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:9px;padding:8px 10px}.eMUW5a_composeFields input{height:38px}.eMUW5a_composeFields .eMUW5a_bodyField{flex:1;grid-template-rows:max-content minmax(160px,1fr);min-height:160px}.eMUW5a_bodyField textarea{resize:none;min-height:160px}.eMUW5a_composeAttachments{gap:9px;display:grid}.eMUW5a_attachmentPickerRow{align-items:center;gap:10px;display:flex}.eMUW5a_attachmentPickerRow>small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.eMUW5a_attachmentPicker{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);appearance:none;background:var(--dsw-alias-bg-layer-1);height:30px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;white-space:nowrap;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:11px;font-weight:500;line-height:16px;display:inline-flex}.eMUW5a_attachmentPicker:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_attachmentPicker:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:2px}.eMUW5a_attachmentPicker:disabled{opacity:.5;cursor:default}.eMUW5a_attachmentInput{display:none}.eMUW5a_selectedAttachments{gap:7px;display:grid}.eMUW5a_selectedAttachments>div{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-2);border-radius:9px;align-items:center;gap:9px;padding:8px 9px;display:flex}.eMUW5a_selectedAttachments>div>span{flex-direction:column;flex:1;min-width:0;display:flex}.eMUW5a_selectedAttachments strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.eMUW5a_selectedAttachments small{color:var(--dsw-alias-label-tertiary);font-size:10px;line-height:15px}.eMUW5a_selectedAttachments>p{color:var(--dsw-alias-label-tertiary);margin:0;font-size:10px;line-height:15px}.eMUW5a_composeError{color:var(--dsw-alias-state-error-primary);margin:0;font-size:11px;line-height:16px}.eMUW5a_composeFooter{border-top:1px solid var(--dsw-alias-border-l1);flex:none;justify-content:flex-end;gap:8px;padding:10px 14px;display:flex}.eMUW5a_cancelButton,.eMUW5a_sendButton{cursor:pointer;min-height:34px;font:inherit;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 13px;display:flex}.eMUW5a_cancelButton{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-primary);background:0 0}.eMUW5a_sendButton{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-inverted);border:0}.eMUW5a_cancelButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.eMUW5a_sendButton:hover{background:var(--dsw-alias-button-primary-hover)}.eMUW5a_confirmSummary{color:var(--dsw-alias-label-secondary);gap:6px;display:grid}.eMUW5a_confirmSummary p,.eMUW5a_discardText{overflow-wrap:anywhere;margin:0}@media (width<=1119px){.eMUW5a_mail{grid-template-columns:220px minmax(0,1fr)}.eMUW5a_mailList,.eMUW5a_mailDetail{grid-area:1/2}.eMUW5a_mailDetail,.eMUW5a_mail[data-detail-active] .eMUW5a_mailList{display:none}.eMUW5a_mail[data-detail-active] .eMUW5a_mailDetail{display:flex}.eMUW5a_detailBack{display:grid}}@media (width<=719px){.eMUW5a_mail{grid-template-columns:1fr}.eMUW5a_sidebar,.eMUW5a_mailList,.eMUW5a_mailDetail{grid-area:1/1}.eMUW5a_mailList,.eMUW5a_mailDetail,.eMUW5a_mail[data-pane=list] .eMUW5a_sidebar,.eMUW5a_mail[data-pane=detail] .eMUW5a_sidebar{display:none}.eMUW5a_mail[data-pane=list] .eMUW5a_mailList,.eMUW5a_mail[data-pane=detail] .eMUW5a_mailDetail{display:flex}.eMUW5a_listHeader>.eMUW5a_listBack{display:grid}.eMUW5a_messageBody{padding:18px}}@media (prefers-reduced-motion:reduce){.eMUW5a_listHeader button:disabled svg,.eMUW5a_loadingState svg,.eMUW5a_notice{animation:none}}";
|
|
11112
|
+
const tagId$1 = "@awiki/dsh-plugin/AwikiMail.module.css";
|
|
11113
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
|
|
11585
11114
|
const tag = document.createElement("style");
|
|
11586
11115
|
tag.dataset.plugin = "@awiki/dsh-plugin";
|
|
11587
|
-
tag.dataset.pluginCss = tagId$
|
|
11588
|
-
tag.textContent = css$
|
|
11116
|
+
tag.dataset.pluginCss = tagId$1;
|
|
11117
|
+
tag.textContent = css$1;
|
|
11589
11118
|
document.head.appendChild(tag);
|
|
11590
11119
|
}
|
|
11591
11120
|
var _dsh_awiki_css_AwikiMail_module_css_default = {
|
|
11592
11121
|
"accountCard": "eMUW5a_accountCard",
|
|
11593
11122
|
"accountStatus": "eMUW5a_accountStatus",
|
|
11123
|
+
"attachmentDownloadError": "eMUW5a_attachmentDownloadError",
|
|
11124
|
+
"attachmentInput": "eMUW5a_attachmentInput",
|
|
11125
|
+
"attachmentPicker": "eMUW5a_attachmentPicker",
|
|
11126
|
+
"attachmentPickerRow": "eMUW5a_attachmentPickerRow",
|
|
11594
11127
|
"attachments": "eMUW5a_attachments",
|
|
11595
11128
|
"bodyField": "eMUW5a_bodyField",
|
|
11596
11129
|
"cancelButton": "eMUW5a_cancelButton",
|
|
11130
|
+
"composeAttachments": "eMUW5a_composeAttachments",
|
|
11597
11131
|
"composeError": "eMUW5a_composeError",
|
|
11598
11132
|
"composeFields": "eMUW5a_composeFields",
|
|
11599
11133
|
"composeFooter": "eMUW5a_composeFooter",
|
|
@@ -11609,6 +11143,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11609
11143
|
"folderNav": "eMUW5a_folderNav",
|
|
11610
11144
|
"folderRow": "eMUW5a_folderRow",
|
|
11611
11145
|
"inlineError": "eMUW5a_inlineError",
|
|
11146
|
+
"listBack": "eMUW5a_listBack",
|
|
11612
11147
|
"listHeader": "eMUW5a_listHeader",
|
|
11613
11148
|
"loadingState": "eMUW5a_loadingState",
|
|
11614
11149
|
"loadMore": "eMUW5a_loadMore",
|
|
@@ -11629,6 +11164,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11629
11164
|
"rows": "eMUW5a_rows",
|
|
11630
11165
|
"rowSubject": "eMUW5a_rowSubject",
|
|
11631
11166
|
"rowTop": "eMUW5a_rowTop",
|
|
11167
|
+
"selectedAttachments": "eMUW5a_selectedAttachments",
|
|
11632
11168
|
"sendButton": "eMUW5a_sendButton",
|
|
11633
11169
|
"sidebar": "eMUW5a_sidebar",
|
|
11634
11170
|
"truncatedNotice": "eMUW5a_truncatedNotice",
|
|
@@ -11674,6 +11210,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11674
11210
|
function utf8Bytes(value) {
|
|
11675
11211
|
return new TextEncoder().encode(value).byteLength;
|
|
11676
11212
|
}
|
|
11213
|
+
function displayBytes(value) {
|
|
11214
|
+
if (value < 1024) return `${value} bytes`;
|
|
11215
|
+
if (value < 1048576) return `${(value / 1024).toFixed(value < 10240 ? 1 : 0)} KiB`;
|
|
11216
|
+
return `${(value / 1048576).toFixed(value < 10485760 ? 1 : 0)} MiB`;
|
|
11217
|
+
}
|
|
11677
11218
|
function browserLocalStorage() {
|
|
11678
11219
|
try {
|
|
11679
11220
|
return window.localStorage;
|
|
@@ -11810,6 +11351,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11810
11351
|
const [cc, setCc] = (0, react.useState)("");
|
|
11811
11352
|
const [subject, setSubject] = (0, react.useState)("");
|
|
11812
11353
|
const [bodyText, setBodyText] = (0, react.useState)("");
|
|
11354
|
+
const [attachmentLimits, setAttachmentLimits] = (0, react.useState)(null);
|
|
11355
|
+
const [attachments, setAttachments] = (0, react.useState)([]);
|
|
11356
|
+
const [attachmentError, setAttachmentError] = (0, react.useState)(null);
|
|
11357
|
+
const [downloadStates, setDownloadStates] = (0, react.useState)({});
|
|
11813
11358
|
const [composeError, setComposeError] = (0, react.useState)(null);
|
|
11814
11359
|
const [confirmOpen, setConfirmOpen] = (0, react.useState)(false);
|
|
11815
11360
|
const [discardOpen, setDiscardOpen] = (0, react.useState)(false);
|
|
@@ -11820,6 +11365,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11820
11365
|
const loadGeneration = (0, react.useRef)(0);
|
|
11821
11366
|
const detailGeneration = (0, react.useRef)(0);
|
|
11822
11367
|
const noticeRevision = (0, react.useRef)(0);
|
|
11368
|
+
const attachmentRevision = (0, react.useRef)(0);
|
|
11369
|
+
const fileInput = (0, react.useRef)(null);
|
|
11823
11370
|
const visibleUnreadCount = (0, react.useMemo)(() => items.reduce((total, item) => total + (item.unread ? 1 : 0), 0), [items]);
|
|
11824
11371
|
(0, react.useEffect)(() => {
|
|
11825
11372
|
props.onUnreadCountChange(inboxUnreadCount);
|
|
@@ -11868,6 +11415,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11868
11415
|
setListError(null);
|
|
11869
11416
|
setNotice(null);
|
|
11870
11417
|
const cacheVisible = hydrateListCache(requestedFolder);
|
|
11418
|
+
const configRequest = props.getConfig();
|
|
11871
11419
|
const accountRequest = props.getMailAccount();
|
|
11872
11420
|
const inboxRequest = props.listMailInbox({
|
|
11873
11421
|
folder: requestedFolder,
|
|
@@ -11875,6 +11423,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11875
11423
|
limit: 20,
|
|
11876
11424
|
offset: 0
|
|
11877
11425
|
});
|
|
11426
|
+
const configResult = await configRequest;
|
|
11427
|
+
if (generation !== loadGeneration.current) return;
|
|
11428
|
+
setAttachmentLimits(configResult.ok ? {
|
|
11429
|
+
maxCount: configResult.value.mailAttachmentMaxCount,
|
|
11430
|
+
maxBytes: configResult.value.mailAttachmentMaxBytes,
|
|
11431
|
+
totalMaxBytes: configResult.value.mailAttachmentTotalMaxBytes
|
|
11432
|
+
} : null);
|
|
11878
11433
|
const accountResult = await accountRequest;
|
|
11879
11434
|
if (generation !== loadGeneration.current) return;
|
|
11880
11435
|
if (accountResult.ok) setAccount(accountResult.value);
|
|
@@ -11920,6 +11475,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11920
11475
|
setSelectedId(null);
|
|
11921
11476
|
setMessage(null);
|
|
11922
11477
|
setDetailError(null);
|
|
11478
|
+
setDownloadStates({});
|
|
11923
11479
|
if (!hydrateListCache(nextFolder)) applyListPage(nextFolder, {
|
|
11924
11480
|
items: [],
|
|
11925
11481
|
hasMore: false
|
|
@@ -11932,6 +11488,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11932
11488
|
setCompose(false);
|
|
11933
11489
|
setSelectedId(summary.id);
|
|
11934
11490
|
setMessage(null);
|
|
11491
|
+
setDownloadStates({});
|
|
11935
11492
|
setDetailLoading(true);
|
|
11936
11493
|
setDetailError(null);
|
|
11937
11494
|
setNotice(null);
|
|
@@ -12011,6 +11568,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12011
11568
|
showNotice(result.value.updated > 0 ? "已标为已读。" : "该邮件已经是已读状态。");
|
|
12012
11569
|
};
|
|
12013
11570
|
const requestSend = () => {
|
|
11571
|
+
if (attachmentError !== null) {
|
|
11572
|
+
setComposeError(attachmentError);
|
|
11573
|
+
return;
|
|
11574
|
+
}
|
|
11575
|
+
if (attachments.length > 0 && attachmentLimits === null) {
|
|
11576
|
+
setComposeError("邮件附件限制暂不可用,请稍后刷新邮箱再试。");
|
|
11577
|
+
return;
|
|
11578
|
+
}
|
|
12014
11579
|
const validated = validateDraft$1(to, cc, subject, bodyText);
|
|
12015
11580
|
if (!validated.ok) {
|
|
12016
11581
|
setComposeError(validated.error);
|
|
@@ -12024,6 +11589,32 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12024
11589
|
setCc("");
|
|
12025
11590
|
setSubject("");
|
|
12026
11591
|
setBodyText("");
|
|
11592
|
+
setAttachments([]);
|
|
11593
|
+
setAttachmentError(null);
|
|
11594
|
+
if (fileInput.current !== null) fileInput.current.value = "";
|
|
11595
|
+
setComposeError(null);
|
|
11596
|
+
};
|
|
11597
|
+
const chooseAttachments = (files) => {
|
|
11598
|
+
if (files === null || files.length === 0) return;
|
|
11599
|
+
if (attachmentLimits === null) {
|
|
11600
|
+
setAttachmentError("邮件附件限制暂不可用,请稍后刷新邮箱再试。");
|
|
11601
|
+
return;
|
|
11602
|
+
}
|
|
11603
|
+
try {
|
|
11604
|
+
const next = selectMailAttachments(attachments, files, attachmentLimits, () => {
|
|
11605
|
+
attachmentRevision.current += 1;
|
|
11606
|
+
return `mail-attachment-${attachmentRevision.current}`;
|
|
11607
|
+
});
|
|
11608
|
+
setAttachments(next);
|
|
11609
|
+
setAttachmentError(null);
|
|
11610
|
+
setComposeError(null);
|
|
11611
|
+
} catch (error) {
|
|
11612
|
+
setAttachmentError(error instanceof TypeError ? error.message : "无法选择这些附件。");
|
|
11613
|
+
}
|
|
11614
|
+
};
|
|
11615
|
+
const removeAttachment = (id) => {
|
|
11616
|
+
setAttachments((current) => current.filter((attachment) => attachment.id !== id));
|
|
11617
|
+
setAttachmentError(null);
|
|
12027
11618
|
setComposeError(null);
|
|
12028
11619
|
};
|
|
12029
11620
|
const confirmSend = async () => {
|
|
@@ -12033,12 +11624,27 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12033
11624
|
setComposeError(validated.error);
|
|
12034
11625
|
return;
|
|
12035
11626
|
}
|
|
11627
|
+
if (attachmentError !== null || attachments.length > 0 && attachmentLimits === null) {
|
|
11628
|
+
setConfirmOpen(false);
|
|
11629
|
+
setComposeError(attachmentError ?? "邮件附件限制暂不可用,请稍后刷新邮箱再试。");
|
|
11630
|
+
return;
|
|
11631
|
+
}
|
|
12036
11632
|
setSending(true);
|
|
11633
|
+
let encodedAttachments = [];
|
|
11634
|
+
try {
|
|
11635
|
+
if (attachments.length > 0) encodedAttachments = await encodeMailAttachments(attachments, attachmentLimits);
|
|
11636
|
+
} catch (error) {
|
|
11637
|
+
setSending(false);
|
|
11638
|
+
setConfirmOpen(false);
|
|
11639
|
+
setComposeError(error instanceof TypeError ? error.message : "无法读取附件,请重新选择后再试。");
|
|
11640
|
+
return;
|
|
11641
|
+
}
|
|
12037
11642
|
const request = {
|
|
12038
11643
|
to: validated.value.to,
|
|
12039
11644
|
cc: validated.value.cc,
|
|
12040
11645
|
subject: validated.value.subject,
|
|
12041
|
-
bodyText: validated.value.bodyText
|
|
11646
|
+
bodyText: validated.value.bodyText,
|
|
11647
|
+
...encodedAttachments.length === 0 ? {} : { attachments: encodedAttachments }
|
|
12042
11648
|
};
|
|
12043
11649
|
const result = await props.sendMail(request);
|
|
12044
11650
|
setSending(false);
|
|
@@ -12051,7 +11657,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12051
11657
|
setComposeError("邮件服务没有接受本次发送,请检查内容后重试。");
|
|
12052
11658
|
return;
|
|
12053
11659
|
}
|
|
12054
|
-
const
|
|
11660
|
+
const acceptedWithWarning = result.value.warnings.length > 0;
|
|
12055
11661
|
clearDraft();
|
|
12056
11662
|
setFolder("sent");
|
|
12057
11663
|
const storage = browserLocalStorage();
|
|
@@ -12064,9 +11670,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12064
11670
|
setCompose(false);
|
|
12065
11671
|
setPane("list");
|
|
12066
11672
|
refresh("sent");
|
|
12067
|
-
showNotice(
|
|
11673
|
+
showNotice(acceptedWithWarning ? `邮件已被服务接受,但返回 ${result.value.warnings.length} 条本地记录提示,请勿立即重复发送。` : "邮件已发送。");
|
|
12068
11674
|
};
|
|
12069
|
-
const dirty = to.trim() !== "" || cc.trim() !== "" || subject.trim() !== "" || bodyText.trim() !== "";
|
|
11675
|
+
const dirty = to.trim() !== "" || cc.trim() !== "" || subject.trim() !== "" || bodyText.trim() !== "" || attachments.length > 0;
|
|
12070
11676
|
const cancelCompose = () => {
|
|
12071
11677
|
if (dirty) {
|
|
12072
11678
|
setDiscardOpen(true);
|
|
@@ -12076,6 +11682,39 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12076
11682
|
setPane("list");
|
|
12077
11683
|
};
|
|
12078
11684
|
const selectedSummary = items.find((item) => item.id === selectedId);
|
|
11685
|
+
const attachmentTotalBytes = attachments.reduce((sum, attachment) => sum + attachment.sizeBytes, 0);
|
|
11686
|
+
const downloadAttachment = async (attachment) => {
|
|
11687
|
+
if (message === null || attachmentLimits === null) return;
|
|
11688
|
+
const expected = downloadableMailAttachment(attachment, attachmentLimits.maxBytes);
|
|
11689
|
+
if (expected === void 0 || downloadStates[attachment.index]?.status === "loading") return;
|
|
11690
|
+
const generation = detailGeneration.current;
|
|
11691
|
+
const localMessageId = message.summary.id;
|
|
11692
|
+
setDownloadStates((current) => ({
|
|
11693
|
+
...current,
|
|
11694
|
+
[attachment.index]: { status: "loading" }
|
|
11695
|
+
}));
|
|
11696
|
+
try {
|
|
11697
|
+
if (!await downloadAndSaveMailAttachment(props.downloadMailAttachment, {
|
|
11698
|
+
localMessageId,
|
|
11699
|
+
attachmentIndex: attachment.index
|
|
11700
|
+
}, expected, attachmentLimits.maxBytes, () => generation === detailGeneration.current && message.summary.id === localMessageId)) return;
|
|
11701
|
+
setDownloadStates((current) => {
|
|
11702
|
+
const next = { ...current };
|
|
11703
|
+
delete next[attachment.index];
|
|
11704
|
+
return next;
|
|
11705
|
+
});
|
|
11706
|
+
showNotice(`已开始下载 ${expected.fileName}。`);
|
|
11707
|
+
} catch (error) {
|
|
11708
|
+
if (generation !== detailGeneration.current || message.summary.id !== localMessageId) return;
|
|
11709
|
+
setDownloadStates((current) => ({
|
|
11710
|
+
...current,
|
|
11711
|
+
[attachment.index]: {
|
|
11712
|
+
status: "error",
|
|
11713
|
+
error: error instanceof TypeError ? error.message : "无法保存附件,请重试。"
|
|
11714
|
+
}
|
|
11715
|
+
}));
|
|
11716
|
+
}
|
|
11717
|
+
};
|
|
12079
11718
|
return (0, react_jsx_runtime.jsxs)("div", {
|
|
12080
11719
|
className: _dsh_awiki_css_AwikiMail_module_css_default.mail,
|
|
12081
11720
|
"data-pane": pane,
|
|
@@ -12141,19 +11780,31 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12141
11780
|
children: [
|
|
12142
11781
|
(0, react_jsx_runtime.jsxs)("header", {
|
|
12143
11782
|
className: _dsh_awiki_css_AwikiMail_module_css_default.listHeader,
|
|
12144
|
-
children: [
|
|
12145
|
-
|
|
12146
|
-
|
|
12147
|
-
|
|
12148
|
-
|
|
12149
|
-
|
|
12150
|
-
|
|
12151
|
-
|
|
12152
|
-
|
|
12153
|
-
|
|
12154
|
-
},
|
|
12155
|
-
|
|
12156
|
-
|
|
11783
|
+
children: [
|
|
11784
|
+
(0, react_jsx_runtime.jsx)("button", {
|
|
11785
|
+
type: "button",
|
|
11786
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.listBack,
|
|
11787
|
+
"aria-label": "返回邮箱导航",
|
|
11788
|
+
onClick: () => {
|
|
11789
|
+
setPane("folders");
|
|
11790
|
+
},
|
|
11791
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronLeftOutline14, { size: 14 })
|
|
11792
|
+
}),
|
|
11793
|
+
(0, react_jsx_runtime.jsxs)("div", { children: [(0, react_jsx_runtime.jsx)("strong", { children: MAIL_FOLDER_COPY[folder].title }), (0, react_jsx_runtime.jsxs)("small", { children: [
|
|
11794
|
+
items.length,
|
|
11795
|
+
" 封邮件",
|
|
11796
|
+
folder === "inbox" && visibleUnreadCount > 0 ? ` · ${visibleUnreadCount} 封未读` : ""
|
|
11797
|
+
] })] }),
|
|
11798
|
+
(0, react_jsx_runtime.jsx)("button", {
|
|
11799
|
+
type: "button",
|
|
11800
|
+
"aria-label": `刷新${MAIL_FOLDER_COPY[folder].title}`,
|
|
11801
|
+
disabled: listLoading,
|
|
11802
|
+
onClick: () => {
|
|
11803
|
+
refresh();
|
|
11804
|
+
},
|
|
11805
|
+
children: listLoading ? (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconLoadingOutline16, { size: 15 }) : (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutline14, { size: 15 })
|
|
11806
|
+
})
|
|
11807
|
+
]
|
|
12157
11808
|
}),
|
|
12158
11809
|
listError !== null && (0, react_jsx_runtime.jsxs)("div", {
|
|
12159
11810
|
className: _dsh_awiki_css_AwikiMail_module_css_default.inlineError,
|
|
@@ -12214,7 +11865,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12214
11865
|
"aria-label": `返回${MAIL_FOLDER_COPY[folder].title}`,
|
|
12215
11866
|
onClick: cancelCompose,
|
|
12216
11867
|
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronLeftOutline14, { size: 14 })
|
|
12217
|
-
}), (0, react_jsx_runtime.jsxs)("div", { children: [(0, react_jsx_runtime.jsx)("strong", { children: "写邮件" }), (0, react_jsx_runtime.jsx)("small", { children: "
|
|
11868
|
+
}), (0, react_jsx_runtime.jsxs)("div", { children: [(0, react_jsx_runtime.jsx)("strong", { children: "写邮件" }), (0, react_jsx_runtime.jsx)("small", { children: "发送纯文本邮件,可添加附件" })] })]
|
|
12218
11869
|
}),
|
|
12219
11870
|
(0, react_jsx_runtime.jsxs)("div", {
|
|
12220
11871
|
className: _dsh_awiki_css_AwikiMail_module_css_default.composeFields,
|
|
@@ -12222,6 +11873,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12222
11873
|
(0, react_jsx_runtime.jsxs)("label", { children: ["收件人", (0, react_jsx_runtime.jsx)("textarea", {
|
|
12223
11874
|
value: to,
|
|
12224
11875
|
rows: 1,
|
|
11876
|
+
disabled: sending,
|
|
12225
11877
|
autoFocus: true,
|
|
12226
11878
|
placeholder: "alice@example.com,可用逗号或换行分隔",
|
|
12227
11879
|
onChange: (event) => {
|
|
@@ -12232,6 +11884,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12232
11884
|
(0, react_jsx_runtime.jsxs)("label", { children: ["抄送", (0, react_jsx_runtime.jsx)("textarea", {
|
|
12233
11885
|
value: cc,
|
|
12234
11886
|
rows: 1,
|
|
11887
|
+
disabled: sending,
|
|
12235
11888
|
placeholder: "选填",
|
|
12236
11889
|
onChange: (event) => {
|
|
12237
11890
|
setCc(event.target.value);
|
|
@@ -12240,6 +11893,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12240
11893
|
})] }),
|
|
12241
11894
|
(0, react_jsx_runtime.jsxs)("label", { children: ["主题", (0, react_jsx_runtime.jsx)("input", {
|
|
12242
11895
|
value: subject,
|
|
11896
|
+
disabled: sending,
|
|
12243
11897
|
placeholder: "邮件主题",
|
|
12244
11898
|
onChange: (event) => {
|
|
12245
11899
|
setSubject(event.target.value);
|
|
@@ -12250,6 +11904,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12250
11904
|
className: _dsh_awiki_css_AwikiMail_module_css_default.bodyField,
|
|
12251
11905
|
children: ["正文", (0, react_jsx_runtime.jsx)("textarea", {
|
|
12252
11906
|
value: bodyText,
|
|
11907
|
+
disabled: sending,
|
|
12253
11908
|
placeholder: "输入纯文本邮件正文",
|
|
12254
11909
|
onChange: (event) => {
|
|
12255
11910
|
setBodyText(event.target.value);
|
|
@@ -12257,6 +11912,65 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12257
11912
|
}
|
|
12258
11913
|
})]
|
|
12259
11914
|
}),
|
|
11915
|
+
(0, react_jsx_runtime.jsxs)("section", {
|
|
11916
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.composeAttachments,
|
|
11917
|
+
"aria-label": "邮件附件",
|
|
11918
|
+
children: [(0, react_jsx_runtime.jsxs)("div", {
|
|
11919
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.attachmentPickerRow,
|
|
11920
|
+
children: [
|
|
11921
|
+
(0, react_jsx_runtime.jsxs)("button", {
|
|
11922
|
+
type: "button",
|
|
11923
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.attachmentPicker,
|
|
11924
|
+
disabled: sending || attachmentLimits === null || attachmentLimits.maxCount === 0,
|
|
11925
|
+
onClick: () => {
|
|
11926
|
+
fileInput.current?.click();
|
|
11927
|
+
},
|
|
11928
|
+
children: [(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPaperclipOutline16, { size: 14 }), "添加附件"]
|
|
11929
|
+
}),
|
|
11930
|
+
(0, react_jsx_runtime.jsx)("input", {
|
|
11931
|
+
ref: fileInput,
|
|
11932
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.attachmentInput,
|
|
11933
|
+
type: "file",
|
|
11934
|
+
multiple: true,
|
|
11935
|
+
"aria-label": "选择邮件附件",
|
|
11936
|
+
disabled: sending || attachmentLimits === null || attachmentLimits.maxCount === 0,
|
|
11937
|
+
onChange: (event) => {
|
|
11938
|
+
chooseAttachments(event.currentTarget.files);
|
|
11939
|
+
event.currentTarget.value = "";
|
|
11940
|
+
}
|
|
11941
|
+
}),
|
|
11942
|
+
(0, react_jsx_runtime.jsx)("small", { children: attachmentLimits === null ? "附件限制暂不可用" : `最多 ${attachmentLimits.maxCount} 个 · 单个 ${displayBytes(attachmentLimits.maxBytes)} · 总计 ${displayBytes(attachmentLimits.totalMaxBytes)}` })
|
|
11943
|
+
]
|
|
11944
|
+
}), attachments.length > 0 && (0, react_jsx_runtime.jsxs)("div", {
|
|
11945
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.selectedAttachments,
|
|
11946
|
+
children: [attachments.map((attachment) => (0, react_jsx_runtime.jsxs)("div", { children: [
|
|
11947
|
+
(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPaperclipOutline16, { size: 15 }),
|
|
11948
|
+
(0, react_jsx_runtime.jsxs)("span", { children: [(0, react_jsx_runtime.jsx)("strong", { children: attachment.fileName }), (0, react_jsx_runtime.jsxs)("small", { children: [
|
|
11949
|
+
attachment.contentType,
|
|
11950
|
+
" · ",
|
|
11951
|
+
displayBytes(attachment.sizeBytes)
|
|
11952
|
+
] })] }),
|
|
11953
|
+
(0, react_jsx_runtime.jsx)("button", {
|
|
11954
|
+
type: "button",
|
|
11955
|
+
disabled: sending,
|
|
11956
|
+
"aria-label": `移除附件 ${attachment.fileName}`,
|
|
11957
|
+
onClick: () => {
|
|
11958
|
+
removeAttachment(attachment.id);
|
|
11959
|
+
},
|
|
11960
|
+
children: "移除"
|
|
11961
|
+
})
|
|
11962
|
+
] }, attachment.id)), (0, react_jsx_runtime.jsxs)("p", { children: [
|
|
11963
|
+
attachments.length,
|
|
11964
|
+
" 个附件 · 共 ",
|
|
11965
|
+
displayBytes(attachmentTotalBytes)
|
|
11966
|
+
] })]
|
|
11967
|
+
})]
|
|
11968
|
+
}),
|
|
11969
|
+
attachmentError !== null && (0, react_jsx_runtime.jsx)("p", {
|
|
11970
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.composeError,
|
|
11971
|
+
role: "alert",
|
|
11972
|
+
children: attachmentError
|
|
11973
|
+
}),
|
|
12260
11974
|
composeError !== null && (0, react_jsx_runtime.jsx)("p", {
|
|
12261
11975
|
className: _dsh_awiki_css_AwikiMail_module_css_default.composeError,
|
|
12262
11976
|
role: "alert",
|
|
@@ -12275,7 +11989,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12275
11989
|
}), (0, react_jsx_runtime.jsxs)("button", {
|
|
12276
11990
|
type: "submit",
|
|
12277
11991
|
className: _dsh_awiki_css_AwikiMail_module_css_default.sendButton,
|
|
12278
|
-
disabled: sending,
|
|
11992
|
+
disabled: sending || attachmentError !== null,
|
|
12279
11993
|
children: [(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconSendOutline16, { size: 15 }), "发送"]
|
|
12280
11994
|
})]
|
|
12281
11995
|
})
|
|
@@ -12300,8 +12014,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12300
12014
|
className: _dsh_awiki_css_AwikiMail_module_css_default.detailBack,
|
|
12301
12015
|
"aria-label": `返回${MAIL_FOLDER_COPY[folder].title}`,
|
|
12302
12016
|
onClick: () => {
|
|
12017
|
+
detailGeneration.current += 1;
|
|
12303
12018
|
setSelectedId(null);
|
|
12304
12019
|
setMessage(null);
|
|
12020
|
+
setDownloadStates({});
|
|
12305
12021
|
setPane("list");
|
|
12306
12022
|
},
|
|
12307
12023
|
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronLeftOutline14, { size: 14 })
|
|
@@ -12357,8 +12073,33 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12357
12073
|
}),
|
|
12358
12074
|
message.attachments.length > 0 && (0, react_jsx_runtime.jsxs)("section", {
|
|
12359
12075
|
className: _dsh_awiki_css_AwikiMail_module_css_default.attachments,
|
|
12360
|
-
"aria-label": "
|
|
12361
|
-
children: [(0, react_jsx_runtime.jsx)("h4", { children: "
|
|
12076
|
+
"aria-label": "邮件附件",
|
|
12077
|
+
children: [(0, react_jsx_runtime.jsx)("h4", { children: "附件" }), message.attachments.map((attachment) => {
|
|
12078
|
+
const downloadable = attachmentLimits === null ? void 0 : downloadableMailAttachment(attachment, attachmentLimits.maxBytes);
|
|
12079
|
+
const state = downloadStates[attachment.index];
|
|
12080
|
+
return (0, react_jsx_runtime.jsxs)("div", { children: [
|
|
12081
|
+
(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPaperclipOutline16, { size: 15 }),
|
|
12082
|
+
(0, react_jsx_runtime.jsxs)("span", { children: [
|
|
12083
|
+
(0, react_jsx_runtime.jsx)("strong", { children: attachment.fileName ?? `附件 ${attachment.index + 1}` }),
|
|
12084
|
+
(0, react_jsx_runtime.jsx)("small", { children: [attachment.contentType, attachment.sizeBytes === void 0 ? void 0 : `${attachment.sizeBytes} bytes`].filter(Boolean).join(" · ") || "暂无更多信息" }),
|
|
12085
|
+
downloadable === void 0 && (0, react_jsx_runtime.jsx)("small", { children: "当前记录缺少完整、可验证的下载元数据。" }),
|
|
12086
|
+
state?.status === "error" && (0, react_jsx_runtime.jsx)("small", {
|
|
12087
|
+
className: _dsh_awiki_css_AwikiMail_module_css_default.attachmentDownloadError,
|
|
12088
|
+
role: "alert",
|
|
12089
|
+
children: state.error
|
|
12090
|
+
})
|
|
12091
|
+
] }),
|
|
12092
|
+
downloadable !== void 0 && (0, react_jsx_runtime.jsx)("button", {
|
|
12093
|
+
type: "button",
|
|
12094
|
+
disabled: state?.status === "loading",
|
|
12095
|
+
"aria-label": `${state?.status === "error" ? "重试下载" : "下载附件"} ${downloadable.fileName}`,
|
|
12096
|
+
onClick: () => {
|
|
12097
|
+
downloadAttachment(attachment);
|
|
12098
|
+
},
|
|
12099
|
+
children: state?.status === "loading" ? "下载中…" : state?.status === "error" ? "重试" : "下载"
|
|
12100
|
+
})
|
|
12101
|
+
] }, attachment.index);
|
|
12102
|
+
})]
|
|
12362
12103
|
})
|
|
12363
12104
|
]
|
|
12364
12105
|
})
|
|
@@ -12411,7 +12152,20 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12411
12152
|
splitAddresses(cc).length,
|
|
12412
12153
|
" 人"
|
|
12413
12154
|
] }),
|
|
12414
|
-
(0, react_jsx_runtime.jsxs)("p", { children: ["主题:", subject.trim()] })
|
|
12155
|
+
(0, react_jsx_runtime.jsxs)("p", { children: ["主题:", subject.trim()] }),
|
|
12156
|
+
(0, react_jsx_runtime.jsxs)("p", { children: [
|
|
12157
|
+
"附件:",
|
|
12158
|
+
attachments.length,
|
|
12159
|
+
" 个 · 共 ",
|
|
12160
|
+
displayBytes(attachmentTotalBytes)
|
|
12161
|
+
] }),
|
|
12162
|
+
attachments.map((attachment) => (0, react_jsx_runtime.jsxs)("p", { children: [
|
|
12163
|
+
attachment.fileName,
|
|
12164
|
+
" · ",
|
|
12165
|
+
attachment.contentType,
|
|
12166
|
+
" · ",
|
|
12167
|
+
displayBytes(attachment.sizeBytes)
|
|
12168
|
+
] }, attachment.id))
|
|
12415
12169
|
]
|
|
12416
12170
|
})
|
|
12417
12171
|
}),
|
|
@@ -12422,7 +12176,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12422
12176
|
},
|
|
12423
12177
|
title: "放弃这封邮件?",
|
|
12424
12178
|
closeLabel: "继续编辑",
|
|
12425
|
-
description: "
|
|
12179
|
+
description: "当前不会保存草稿,放弃后文字和附件选择都会被清空。",
|
|
12426
12180
|
footer: (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
12427
12181
|
type: "button",
|
|
12428
12182
|
variant: "outline",
|
|
@@ -12443,7 +12197,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
12443
12197
|
})] }),
|
|
12444
12198
|
children: (0, react_jsx_runtime.jsx)("p", {
|
|
12445
12199
|
className: _dsh_awiki_css_AwikiMail_module_css_default.discardText,
|
|
12446
|
-
children: "
|
|
12200
|
+
children: "收件人、主题、正文和已选择的附件都会丢失。"
|
|
12447
12201
|
})
|
|
12448
12202
|
})
|
|
12449
12203
|
]
|
|
@@ -13090,247 +12844,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
13090
12844
|
});
|
|
13091
12845
|
}
|
|
13092
12846
|
//#endregion
|
|
13093
|
-
//#region \0dsh-awiki-css:AwikiDevices.module.css.mjs
|
|
13094
|
-
const css$1 = ".xQ4iKW_page{align-content:start;gap:16px;height:100%;padding:16px;display:grid;overflow:auto}.xQ4iKW_heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.xQ4iKW_heading h3,.xQ4iKW_heading p,.xQ4iKW_page h4,.xQ4iKW_page p{margin:0}.xQ4iKW_heading p,.xQ4iKW_card small{color:var(--dsw-alias-label-secondary)}.xQ4iKW_card{border:1px solid var(--dsw-alias-border-l1);border-radius:10px;gap:8px;margin-top:8px;padding:12px;display:grid}.xQ4iKW_actions{flex-wrap:wrap;gap:8px;display:flex}.xQ4iKW_sas{letter-spacing:.2em;text-align:center;font-variant-numeric:tabular-nums;font-size:30px}.xQ4iKW_error{color:var(--dsw-alias-state-error-primary)}";
|
|
13095
|
-
const tagId$1 = "@awiki/dsh-plugin/AwikiDevices.module.css";
|
|
13096
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
|
|
13097
|
-
const tag = document.createElement("style");
|
|
13098
|
-
tag.dataset.plugin = "@awiki/dsh-plugin";
|
|
13099
|
-
tag.dataset.pluginCss = tagId$1;
|
|
13100
|
-
tag.textContent = css$1;
|
|
13101
|
-
document.head.appendChild(tag);
|
|
13102
|
-
}
|
|
13103
|
-
var _dsh_awiki_css_AwikiDevices_module_css_default = {
|
|
13104
|
-
"actions": "xQ4iKW_actions",
|
|
13105
|
-
"card": "xQ4iKW_card",
|
|
13106
|
-
"error": "xQ4iKW_error",
|
|
13107
|
-
"heading": "xQ4iKW_heading",
|
|
13108
|
-
"page": "xQ4iKW_page",
|
|
13109
|
-
"sas": "xQ4iKW_sas"
|
|
13110
|
-
};
|
|
13111
|
-
//#endregion
|
|
13112
|
-
//#region lib/types/client/AwikiDevices.js
|
|
13113
|
-
/** Foreground-only ready-admin device management. SAS remains component-local. */
|
|
13114
|
-
function AwikiDevices(props) {
|
|
13115
|
-
const [snapshot, setSnapshot] = (0, react.useState)(null);
|
|
13116
|
-
const [progress, setProgress] = (0, react.useState)(null);
|
|
13117
|
-
const [enteredSas, setEnteredSas] = (0, react.useState)("");
|
|
13118
|
-
const [approval, setApproval] = (0, react.useState)("");
|
|
13119
|
-
const [revokeRef, setRevokeRef] = (0, react.useState)(null);
|
|
13120
|
-
const [revokeConfirmation, setRevokeConfirmation] = (0, react.useState)("");
|
|
13121
|
-
const [error, setError] = (0, react.useState)(null);
|
|
13122
|
-
const refresh = async () => {
|
|
13123
|
-
const result = await props.refreshDeviceManagement();
|
|
13124
|
-
if (!result.ok) return setError(result.error);
|
|
13125
|
-
setSnapshot(result.value);
|
|
13126
|
-
if (progress !== null && ![
|
|
13127
|
-
"authorized",
|
|
13128
|
-
"cancelled",
|
|
13129
|
-
"rejected",
|
|
13130
|
-
"expired"
|
|
13131
|
-
].includes(progress.phase)) {
|
|
13132
|
-
const advanced = await props.startDeviceJoinVerification({ requestRef: progress.requestRef });
|
|
13133
|
-
if (advanced.ok) setProgress(advanced.value);
|
|
13134
|
-
}
|
|
13135
|
-
setError(null);
|
|
13136
|
-
};
|
|
13137
|
-
(0, react.useEffect)(() => {
|
|
13138
|
-
if (!props.active) return;
|
|
13139
|
-
let alive = true;
|
|
13140
|
-
props.refreshDeviceManagement().then((result) => {
|
|
13141
|
-
if (!alive) return;
|
|
13142
|
-
if (result.ok) setSnapshot(result.value);
|
|
13143
|
-
else setError(result.error);
|
|
13144
|
-
});
|
|
13145
|
-
const timer = setInterval(() => {
|
|
13146
|
-
if (alive) refresh();
|
|
13147
|
-
}, 3e3);
|
|
13148
|
-
return () => {
|
|
13149
|
-
alive = false;
|
|
13150
|
-
clearInterval(timer);
|
|
13151
|
-
};
|
|
13152
|
-
}, [
|
|
13153
|
-
props.active,
|
|
13154
|
-
progress?.phase,
|
|
13155
|
-
progress?.requestRef
|
|
13156
|
-
]);
|
|
13157
|
-
const start = async (requestRef) => {
|
|
13158
|
-
const result = await props.startDeviceJoinVerification({ requestRef });
|
|
13159
|
-
if (!result.ok) return setError(result.error);
|
|
13160
|
-
setProgress(result.value);
|
|
13161
|
-
setError(null);
|
|
13162
|
-
};
|
|
13163
|
-
const approve = async () => {
|
|
13164
|
-
if (progress === null) return;
|
|
13165
|
-
const result = await props.approveDeviceJoin({
|
|
13166
|
-
requestRef: progress.requestRef,
|
|
13167
|
-
enteredSas,
|
|
13168
|
-
confirmation: approval
|
|
13169
|
-
});
|
|
13170
|
-
if (!result.ok) return setError(result.error);
|
|
13171
|
-
setProgress(null);
|
|
13172
|
-
setEnteredSas("");
|
|
13173
|
-
setApproval("");
|
|
13174
|
-
await refresh();
|
|
13175
|
-
};
|
|
13176
|
-
const reject = async (requestRef) => {
|
|
13177
|
-
const result = await props.rejectDeviceJoin({
|
|
13178
|
-
requestRef,
|
|
13179
|
-
reason: "user_rejected"
|
|
13180
|
-
});
|
|
13181
|
-
if (!result.ok) return setError(result.error);
|
|
13182
|
-
setProgress(null);
|
|
13183
|
-
await refresh();
|
|
13184
|
-
};
|
|
13185
|
-
const revoke = async () => {
|
|
13186
|
-
if (revokeRef === null) return;
|
|
13187
|
-
const result = await props.revokeDevice({
|
|
13188
|
-
deviceRef: revokeRef,
|
|
13189
|
-
confirmation: revokeConfirmation
|
|
13190
|
-
});
|
|
13191
|
-
if (!result.ok) return setError(result.error);
|
|
13192
|
-
setSnapshot(result.value);
|
|
13193
|
-
setRevokeRef(null);
|
|
13194
|
-
setRevokeConfirmation("");
|
|
13195
|
-
setError(null);
|
|
13196
|
-
};
|
|
13197
|
-
return (0, react_jsx_runtime.jsxs)("section", {
|
|
13198
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.page,
|
|
13199
|
-
"aria-label": "AWiki 设备管理",
|
|
13200
|
-
children: [
|
|
13201
|
-
props.modeTabs,
|
|
13202
|
-
(0, react_jsx_runtime.jsxs)("header", {
|
|
13203
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.heading,
|
|
13204
|
-
children: [(0, react_jsx_runtime.jsxs)("div", { children: [(0, react_jsx_runtime.jsx)("h3", { children: "设备" }), (0, react_jsx_runtime.jsx)("p", { children: "只有当前 ready-admin 可以批准或撤销设备。" })] }), (0, react_jsx_runtime.jsx)("button", {
|
|
13205
|
-
type: "button",
|
|
13206
|
-
disabled: props.pending,
|
|
13207
|
-
onClick: () => {
|
|
13208
|
-
refresh();
|
|
13209
|
-
},
|
|
13210
|
-
children: "刷新"
|
|
13211
|
-
})]
|
|
13212
|
-
}),
|
|
13213
|
-
snapshot === null && (0, react_jsx_runtime.jsx)("p", {
|
|
13214
|
-
role: "status",
|
|
13215
|
-
children: "正在读取设备状态…"
|
|
13216
|
-
}),
|
|
13217
|
-
snapshot !== null && !snapshot.canManage && (0, react_jsx_runtime.jsx)("p", { children: "当前设备不是可用的管理设备,不能批准或撤销其他设备。" }),
|
|
13218
|
-
snapshot?.canManage && (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
|
|
13219
|
-
(0, react_jsx_runtime.jsxs)("section", { children: [
|
|
13220
|
-
(0, react_jsx_runtime.jsx)("h4", { children: "待加入" }),
|
|
13221
|
-
snapshot.requests.length === 0 && (0, react_jsx_runtime.jsx)("p", { children: "没有待处理请求。" }),
|
|
13222
|
-
snapshot.requests.map((request) => (0, react_jsx_runtime.jsxs)("article", {
|
|
13223
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.card,
|
|
13224
|
-
children: [
|
|
13225
|
-
(0, react_jsx_runtime.jsx)("code", { children: request.candidateKeyFingerprint }),
|
|
13226
|
-
(0, react_jsx_runtime.jsxs)("small", { children: [
|
|
13227
|
-
request.state,
|
|
13228
|
-
" · 有效期至 ",
|
|
13229
|
-
request.expiresAt
|
|
13230
|
-
] }),
|
|
13231
|
-
(0, react_jsx_runtime.jsxs)("div", {
|
|
13232
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.actions,
|
|
13233
|
-
children: [(0, react_jsx_runtime.jsx)("button", {
|
|
13234
|
-
type: "button",
|
|
13235
|
-
disabled: props.pending || !request.canStartVerification && !request.claimedByCurrentDevice,
|
|
13236
|
-
onClick: () => {
|
|
13237
|
-
start(request.requestRef);
|
|
13238
|
-
},
|
|
13239
|
-
children: "开始验证"
|
|
13240
|
-
}), (0, react_jsx_runtime.jsx)("button", {
|
|
13241
|
-
type: "button",
|
|
13242
|
-
disabled: props.pending,
|
|
13243
|
-
onClick: () => {
|
|
13244
|
-
reject(request.requestRef);
|
|
13245
|
-
},
|
|
13246
|
-
children: "拒绝"
|
|
13247
|
-
})]
|
|
13248
|
-
})
|
|
13249
|
-
]
|
|
13250
|
-
}, request.requestRef))
|
|
13251
|
-
] }),
|
|
13252
|
-
progress?.phase === "sas-ready" && (0, react_jsx_runtime.jsxs)("section", {
|
|
13253
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.card,
|
|
13254
|
-
children: [
|
|
13255
|
-
(0, react_jsx_runtime.jsx)("h4", { children: "核对安全码" }),
|
|
13256
|
-
(0, react_jsx_runtime.jsx)("strong", {
|
|
13257
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.sas,
|
|
13258
|
-
children: progress.sas
|
|
13259
|
-
}),
|
|
13260
|
-
(0, react_jsx_runtime.jsx)("p", { children: "输入手机显示的 6 位码,并输入 APPROVE。" }),
|
|
13261
|
-
(0, react_jsx_runtime.jsx)("input", {
|
|
13262
|
-
"aria-label": "手机安全码",
|
|
13263
|
-
value: enteredSas,
|
|
13264
|
-
inputMode: "numeric",
|
|
13265
|
-
maxLength: 6,
|
|
13266
|
-
onChange: (event) => {
|
|
13267
|
-
setEnteredSas(event.target.value);
|
|
13268
|
-
}
|
|
13269
|
-
}),
|
|
13270
|
-
(0, react_jsx_runtime.jsx)("input", {
|
|
13271
|
-
"aria-label": "批准确认词",
|
|
13272
|
-
value: approval,
|
|
13273
|
-
autoComplete: "off",
|
|
13274
|
-
onChange: (event) => {
|
|
13275
|
-
setApproval(event.target.value);
|
|
13276
|
-
},
|
|
13277
|
-
placeholder: "APPROVE"
|
|
13278
|
-
}),
|
|
13279
|
-
(0, react_jsx_runtime.jsx)("button", {
|
|
13280
|
-
type: "button",
|
|
13281
|
-
disabled: props.pending || enteredSas.length !== 6 || approval !== "APPROVE",
|
|
13282
|
-
onClick: () => {
|
|
13283
|
-
approve();
|
|
13284
|
-
},
|
|
13285
|
-
children: "批准为 member"
|
|
13286
|
-
})
|
|
13287
|
-
]
|
|
13288
|
-
}),
|
|
13289
|
-
(0, react_jsx_runtime.jsxs)("section", { children: [(0, react_jsx_runtime.jsx)("h4", { children: "已登记设备" }), snapshot.devices.map((device) => (0, react_jsx_runtime.jsxs)("article", {
|
|
13290
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.card,
|
|
13291
|
-
children: [(0, react_jsx_runtime.jsxs)("span", { children: [
|
|
13292
|
-
device.isCurrent ? "当前设备" : "其他设备",
|
|
13293
|
-
" · ",
|
|
13294
|
-
device.role,
|
|
13295
|
-
" · ",
|
|
13296
|
-
device.status
|
|
13297
|
-
] }), !device.isCurrent && device.status === "active" && (revokeRef === device.deviceRef ? (0, react_jsx_runtime.jsxs)("div", {
|
|
13298
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.actions,
|
|
13299
|
-
children: [(0, react_jsx_runtime.jsx)("input", {
|
|
13300
|
-
"aria-label": "撤销确认词",
|
|
13301
|
-
value: revokeConfirmation,
|
|
13302
|
-
onChange: (event) => {
|
|
13303
|
-
setRevokeConfirmation(event.target.value);
|
|
13304
|
-
},
|
|
13305
|
-
placeholder: "REVOKE"
|
|
13306
|
-
}), (0, react_jsx_runtime.jsx)("button", {
|
|
13307
|
-
type: "button",
|
|
13308
|
-
disabled: props.pending || revokeConfirmation !== "REVOKE",
|
|
13309
|
-
onClick: () => {
|
|
13310
|
-
revoke();
|
|
13311
|
-
},
|
|
13312
|
-
children: "确认撤销"
|
|
13313
|
-
})]
|
|
13314
|
-
}) : (0, react_jsx_runtime.jsx)("button", {
|
|
13315
|
-
type: "button",
|
|
13316
|
-
disabled: props.pending,
|
|
13317
|
-
onClick: () => {
|
|
13318
|
-
setRevokeRef(device.deviceRef);
|
|
13319
|
-
setRevokeConfirmation("");
|
|
13320
|
-
},
|
|
13321
|
-
children: "撤销"
|
|
13322
|
-
}))]
|
|
13323
|
-
}, device.deviceRef))] })
|
|
13324
|
-
] }),
|
|
13325
|
-
error !== null && (0, react_jsx_runtime.jsx)("p", {
|
|
13326
|
-
className: _dsh_awiki_css_AwikiDevices_module_css_default.error,
|
|
13327
|
-
role: "alert",
|
|
13328
|
-
children: error
|
|
13329
|
-
})
|
|
13330
|
-
]
|
|
13331
|
-
});
|
|
13332
|
-
}
|
|
13333
|
-
//#endregion
|
|
13334
12847
|
//#region lib/types/client/AwikiProfileCard.js
|
|
13335
12848
|
const MAX_DISPLAY_NAME = 50;
|
|
13336
12849
|
const MAX_BIO = 100;
|
|
@@ -13799,35 +13312,23 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
13799
13312
|
className: _dsh_awiki_css_AwikiOverlay_module_css_default.modeTabs,
|
|
13800
13313
|
role: "tablist",
|
|
13801
13314
|
"aria-label": "AWiki 功能",
|
|
13802
|
-
children: [
|
|
13803
|
-
|
|
13804
|
-
|
|
13805
|
-
|
|
13806
|
-
|
|
13807
|
-
|
|
13808
|
-
|
|
13809
|
-
|
|
13810
|
-
|
|
13811
|
-
|
|
13812
|
-
|
|
13813
|
-
|
|
13814
|
-
|
|
13815
|
-
|
|
13816
|
-
|
|
13817
|
-
|
|
13818
|
-
|
|
13819
|
-
children: ["邮件", props.mailUnreadCount > 0 && (0, react_jsx_runtime.jsx)("small", { children: props.mailUnreadCount > 99 ? "99+" : props.mailUnreadCount })]
|
|
13820
|
-
}),
|
|
13821
|
-
(0, react_jsx_runtime.jsx)("button", {
|
|
13822
|
-
type: "button",
|
|
13823
|
-
role: "tab",
|
|
13824
|
-
"aria-selected": props.mode === "devices",
|
|
13825
|
-
onClick: () => {
|
|
13826
|
-
props.onChange("devices");
|
|
13827
|
-
},
|
|
13828
|
-
children: "设备"
|
|
13829
|
-
})
|
|
13830
|
-
]
|
|
13315
|
+
children: [(0, react_jsx_runtime.jsx)("button", {
|
|
13316
|
+
type: "button",
|
|
13317
|
+
role: "tab",
|
|
13318
|
+
"aria-selected": props.mode === "chat",
|
|
13319
|
+
onClick: () => {
|
|
13320
|
+
props.onChange("chat");
|
|
13321
|
+
},
|
|
13322
|
+
children: "会话"
|
|
13323
|
+
}), (0, react_jsx_runtime.jsxs)("button", {
|
|
13324
|
+
type: "button",
|
|
13325
|
+
role: "tab",
|
|
13326
|
+
"aria-selected": props.mode === "mail",
|
|
13327
|
+
onClick: () => {
|
|
13328
|
+
props.onChange("mail");
|
|
13329
|
+
},
|
|
13330
|
+
children: ["邮件", props.mailUnreadCount > 0 && (0, react_jsx_runtime.jsx)("small", { children: props.mailUnreadCount > 99 ? "99+" : props.mailUnreadCount })]
|
|
13331
|
+
})]
|
|
13831
13332
|
});
|
|
13832
13333
|
}
|
|
13833
13334
|
/** Incoming sender label: WNS display name, then Handle, then DID. */
|
|
@@ -15541,113 +15042,95 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
15541
15042
|
recoveryOperationId: view.recoveryOperationId,
|
|
15542
15043
|
recoveryProgress: view.recoveryProgress,
|
|
15543
15044
|
pending: view.pending !== null,
|
|
15544
|
-
|
|
15045
|
+
profileName: view.profileName,
|
|
15046
|
+
legacySharedStateDetected: view.legacySharedStateDetected
|
|
15545
15047
|
})
|
|
15546
15048
|
}),
|
|
15547
|
-
view.status === "ready" && view.sessionStatus === "active" && view.identity !== null && (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
|
|
15548
|
-
|
|
15549
|
-
|
|
15550
|
-
|
|
15551
|
-
|
|
15552
|
-
|
|
15553
|
-
|
|
15554
|
-
|
|
15555
|
-
view
|
|
15556
|
-
|
|
15557
|
-
|
|
15049
|
+
view.status === "ready" && view.sessionStatus === "active" && view.identity !== null && (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)("div", {
|
|
15050
|
+
className: _dsh_awiki_css_AwikiOverlay_module_css_default.modePanel,
|
|
15051
|
+
"data-active": mode === "chat" || void 0,
|
|
15052
|
+
hidden: mode !== "chat",
|
|
15053
|
+
children: (0, react_jsx_runtime.jsx)(Chat, {
|
|
15054
|
+
...props,
|
|
15055
|
+
selectConversation,
|
|
15056
|
+
view: {
|
|
15057
|
+
...view,
|
|
15058
|
+
identity: view.identity
|
|
15059
|
+
},
|
|
15060
|
+
modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
|
|
15061
|
+
mode,
|
|
15062
|
+
mailUnreadCount,
|
|
15063
|
+
onChange: setMode
|
|
15064
|
+
}),
|
|
15065
|
+
composeMenu: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Menu, {
|
|
15066
|
+
open: menuOpen,
|
|
15067
|
+
onClose: () => {
|
|
15068
|
+
setMenuOpen(false);
|
|
15558
15069
|
},
|
|
15559
|
-
|
|
15560
|
-
|
|
15561
|
-
|
|
15562
|
-
|
|
15563
|
-
|
|
15564
|
-
|
|
15565
|
-
|
|
15566
|
-
onClose: () => {
|
|
15567
|
-
setMenuOpen(false);
|
|
15070
|
+
align: "end",
|
|
15071
|
+
portal: true,
|
|
15072
|
+
compact: true,
|
|
15073
|
+
items: [
|
|
15074
|
+
{
|
|
15075
|
+
id: "direct",
|
|
15076
|
+
label: "发起私聊"
|
|
15568
15077
|
},
|
|
15569
|
-
|
|
15570
|
-
|
|
15571
|
-
|
|
15572
|
-
items: [
|
|
15573
|
-
{
|
|
15574
|
-
id: "direct",
|
|
15575
|
-
label: "发起私聊"
|
|
15576
|
-
},
|
|
15577
|
-
{
|
|
15578
|
-
id: "group",
|
|
15579
|
-
label: "发起群聊"
|
|
15580
|
-
},
|
|
15581
|
-
{
|
|
15582
|
-
id: "join-group",
|
|
15583
|
-
label: "加入群聊"
|
|
15584
|
-
}
|
|
15585
|
-
],
|
|
15586
|
-
onSelect: (id) => {
|
|
15587
|
-
setMenuOpen(false);
|
|
15588
|
-
if (id === "direct") setComposeDirect(true);
|
|
15589
|
-
if (id === "group") setComposeGroup(true);
|
|
15590
|
-
if (id === "join-group") setJoinGroupOpen(true);
|
|
15078
|
+
{
|
|
15079
|
+
id: "group",
|
|
15080
|
+
label: "发起群聊"
|
|
15591
15081
|
},
|
|
15592
|
-
|
|
15593
|
-
|
|
15594
|
-
|
|
15595
|
-
|
|
15596
|
-
|
|
15597
|
-
|
|
15598
|
-
|
|
15599
|
-
|
|
15600
|
-
|
|
15601
|
-
|
|
15602
|
-
|
|
15082
|
+
{
|
|
15083
|
+
id: "join-group",
|
|
15084
|
+
label: "加入群聊"
|
|
15085
|
+
}
|
|
15086
|
+
],
|
|
15087
|
+
onSelect: (id) => {
|
|
15088
|
+
setMenuOpen(false);
|
|
15089
|
+
if (id === "direct") setComposeDirect(true);
|
|
15090
|
+
if (id === "group") setComposeGroup(true);
|
|
15091
|
+
if (id === "join-group") setJoinGroupOpen(true);
|
|
15092
|
+
},
|
|
15093
|
+
anchor: (0, react_jsx_runtime.jsx)("button", {
|
|
15094
|
+
type: "button",
|
|
15095
|
+
className: _dsh_awiki_css_AwikiOverlay_module_css_default.rosterAction,
|
|
15096
|
+
"aria-label": "发起会话",
|
|
15097
|
+
"aria-expanded": menuOpen,
|
|
15098
|
+
"aria-haspopup": "menu",
|
|
15099
|
+
onClick: () => {
|
|
15100
|
+
setMenuOpen((value) => !value);
|
|
15101
|
+
},
|
|
15102
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPlusOutline16, {})
|
|
15603
15103
|
})
|
|
15604
15104
|
})
|
|
15605
|
-
}),
|
|
15606
|
-
(0, react_jsx_runtime.jsx)("div", {
|
|
15607
|
-
className: _dsh_awiki_css_AwikiOverlay_module_css_default.modePanel,
|
|
15608
|
-
"data-active": mode === "mail" || void 0,
|
|
15609
|
-
hidden: mode !== "mail",
|
|
15610
|
-
children: (0, react_jsx_runtime.jsx)(AwikiMail, {
|
|
15611
|
-
active: mode === "mail",
|
|
15612
|
-
cacheOwner: view.identity.did,
|
|
15613
|
-
identityCard: mode === "mail" ? (0, react_jsx_runtime.jsx)(AwikiProfileCard, {
|
|
15614
|
-
identity: view.identity,
|
|
15615
|
-
profile: view.profile,
|
|
15616
|
-
pending: view.pending !== null,
|
|
15617
|
-
updateProfile: props.updateProfile
|
|
15618
|
-
}) : null,
|
|
15619
|
-
modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
|
|
15620
|
-
mode,
|
|
15621
|
-
mailUnreadCount,
|
|
15622
|
-
onChange: setMode
|
|
15623
|
-
}),
|
|
15624
|
-
onUnreadCountChange: setMailUnreadCount,
|
|
15625
|
-
getMailAccount: props.getMailAccount,
|
|
15626
|
-
listMailInbox: props.listMailInbox,
|
|
15627
|
-
readMail: props.readMail,
|
|
15628
|
-
markMailRead: props.markMailRead,
|
|
15629
|
-
sendMail: props.sendMail
|
|
15630
|
-
}, view.identity.did)
|
|
15631
|
-
}),
|
|
15632
|
-
mode === "devices" && (0, react_jsx_runtime.jsx)("div", {
|
|
15633
|
-
className: _dsh_awiki_css_AwikiOverlay_module_css_default.modePanel,
|
|
15634
|
-
"data-active": true,
|
|
15635
|
-
children: (0, react_jsx_runtime.jsx)(AwikiDevices, {
|
|
15636
|
-
active: true,
|
|
15637
|
-
pending: view.pending !== null,
|
|
15638
|
-
modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
|
|
15639
|
-
mode,
|
|
15640
|
-
mailUnreadCount,
|
|
15641
|
-
onChange: setMode
|
|
15642
|
-
}),
|
|
15643
|
-
refreshDeviceManagement: props.refreshDeviceManagement,
|
|
15644
|
-
startDeviceJoinVerification: props.startDeviceJoinVerification,
|
|
15645
|
-
approveDeviceJoin: props.approveDeviceJoin,
|
|
15646
|
-
rejectDeviceJoin: props.rejectDeviceJoin,
|
|
15647
|
-
revokeDevice: props.revokeDevice
|
|
15648
|
-
})
|
|
15649
15105
|
})
|
|
15650
|
-
|
|
15106
|
+
}), (0, react_jsx_runtime.jsx)("div", {
|
|
15107
|
+
className: _dsh_awiki_css_AwikiOverlay_module_css_default.modePanel,
|
|
15108
|
+
"data-active": mode === "mail" || void 0,
|
|
15109
|
+
hidden: mode !== "mail",
|
|
15110
|
+
children: (0, react_jsx_runtime.jsx)(AwikiMail, {
|
|
15111
|
+
active: mode === "mail",
|
|
15112
|
+
cacheOwner: view.identity.did,
|
|
15113
|
+
identityCard: mode === "mail" ? (0, react_jsx_runtime.jsx)(AwikiProfileCard, {
|
|
15114
|
+
identity: view.identity,
|
|
15115
|
+
profile: view.profile,
|
|
15116
|
+
pending: view.pending !== null,
|
|
15117
|
+
updateProfile: props.updateProfile
|
|
15118
|
+
}) : null,
|
|
15119
|
+
modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
|
|
15120
|
+
mode,
|
|
15121
|
+
mailUnreadCount,
|
|
15122
|
+
onChange: setMode
|
|
15123
|
+
}),
|
|
15124
|
+
onUnreadCountChange: setMailUnreadCount,
|
|
15125
|
+
getConfig: props.getConfig,
|
|
15126
|
+
getMailAccount: props.getMailAccount,
|
|
15127
|
+
listMailInbox: props.listMailInbox,
|
|
15128
|
+
readMail: props.readMail,
|
|
15129
|
+
markMailRead: props.markMailRead,
|
|
15130
|
+
sendMail: props.sendMail,
|
|
15131
|
+
downloadMailAttachment: props.downloadMailAttachment
|
|
15132
|
+
}, view.identity.did)
|
|
15133
|
+
})] }),
|
|
15651
15134
|
composeDirect && (0, react_jsx_runtime.jsx)("div", {
|
|
15652
15135
|
className: _dsh_awiki_css_AwikiOverlay_module_css_default.composeBackdrop,
|
|
15653
15136
|
children: (0, react_jsx_runtime.jsxs)("form", {
|
|
@@ -16235,16 +15718,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16235
15718
|
/** Bilingual copy for the AWiki identity and installation settings page. */
|
|
16236
15719
|
const zh = {
|
|
16237
15720
|
nav: "AWiki",
|
|
16238
|
-
intro: "管理 AWiki
|
|
16239
|
-
domainLabel: "
|
|
16240
|
-
domainDescription: "
|
|
15721
|
+
intro: "管理 AWiki 租户、身份与本地数据设置。",
|
|
15722
|
+
domainLabel: "租户域名",
|
|
15723
|
+
domainDescription: "输入纯域名;重启后 User、Message、Mail 与附件服务都会切换到该域名。",
|
|
16241
15724
|
defaultValue: "默认值:{domain}",
|
|
16242
15725
|
save: "保存",
|
|
16243
15726
|
saving: "保存中…",
|
|
16244
15727
|
reset: "恢复默认值",
|
|
16245
15728
|
saved: "已保存。",
|
|
16246
15729
|
restartNotice: "重启 DeepSeek Harness 后生效。",
|
|
16247
|
-
identityNotice: "
|
|
15730
|
+
identityNotice: "不同域名使用相互隔离的本地身份、消息与身份恢复进度。切回原域名时会恢复该域名原有的本地状态。",
|
|
16248
15731
|
invalidDomain: "请输入有效的域名,例如 awiki.ai。",
|
|
16249
15732
|
saveFailed: "未能保存设置,请刷新后重试。",
|
|
16250
15733
|
loading: "正在读取 AWiki 设置…",
|
|
@@ -16267,16 +15750,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16267
15750
|
};
|
|
16268
15751
|
const en = {
|
|
16269
15752
|
nav: "AWiki",
|
|
16270
|
-
intro: "Manage AWiki
|
|
16271
|
-
domainLabel: "
|
|
16272
|
-
domainDescription: "Enter a bare domain
|
|
15753
|
+
intro: "Manage the AWiki tenant, identity, and local data settings.",
|
|
15754
|
+
domainLabel: "Tenant domain",
|
|
15755
|
+
domainDescription: "Enter a bare domain. After restart, User, Message, Mail, and attachment services all switch to it.",
|
|
16273
15756
|
defaultValue: "Default: {domain}",
|
|
16274
15757
|
save: "Save",
|
|
16275
15758
|
saving: "Saving…",
|
|
16276
15759
|
reset: "Restore default",
|
|
16277
15760
|
saved: "Saved.",
|
|
16278
15761
|
restartNotice: "Restart DeepSeek Harness for the change to take effect.",
|
|
16279
|
-
identityNotice: "
|
|
15762
|
+
identityNotice: "Each domain uses isolated local identity, message, and identity-recovery state. Switching back restores that domain’s previous local state.",
|
|
16280
15763
|
invalidDomain: "Enter a valid domain, such as awiki.ai.",
|
|
16281
15764
|
saveFailed: "The setting could not be saved. Refresh and try again.",
|
|
16282
15765
|
loading: "Loading AWiki settings…",
|
|
@@ -16525,14 +16008,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16525
16008
|
inspectIdentityAccess: (request) => awiki.inspectIdentityAccess(request),
|
|
16526
16009
|
sendRegistrationOtp: (request) => awiki.sendRegistrationOtp(request),
|
|
16527
16010
|
registerIdentity: (request) => awiki.registerIdentity(request),
|
|
16528
|
-
beginDeviceJoin: () => awiki.beginDeviceJoin(),
|
|
16529
|
-
getDeviceJoinStatus: () => awiki.getDeviceJoinStatus(),
|
|
16530
|
-
cancelDeviceJoin: () => awiki.cancelDeviceJoin(),
|
|
16531
|
-
refreshDeviceManagement: () => awiki.refreshDeviceManagement(),
|
|
16532
|
-
startDeviceJoinVerification: (request) => awiki.startDeviceJoinVerification(request),
|
|
16533
|
-
approveDeviceJoin: (request) => awiki.approveDeviceJoin(request),
|
|
16534
|
-
rejectDeviceJoin: (request) => awiki.rejectDeviceJoin(request),
|
|
16535
|
-
revokeDevice: (request) => awiki.revokeDevice(request),
|
|
16536
16011
|
updateDisplayName: (displayName) => awiki.updateDisplayName(displayName),
|
|
16537
16012
|
updateProfile: (request) => awiki.updateProfile(request),
|
|
16538
16013
|
sendRecoveryOtp: (request) => awiki.sendRecoveryOtp(request),
|
|
@@ -16573,11 +16048,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16573
16048
|
value: void 0
|
|
16574
16049
|
} : result;
|
|
16575
16050
|
},
|
|
16051
|
+
getConfig: () => awiki.getConfig(),
|
|
16576
16052
|
getMailAccount: () => awiki.getMailAccount(),
|
|
16577
16053
|
listMailInbox: (request) => awiki.listMailInbox(request),
|
|
16578
16054
|
readMail: (request) => awiki.readMail(request),
|
|
16579
16055
|
markMailRead: (request) => awiki.markMailRead(request),
|
|
16580
|
-
sendMail: (request) => awiki.sendMail(request)
|
|
16056
|
+
sendMail: (request) => awiki.sendMail(request),
|
|
16057
|
+
downloadMailAttachment: (request) => awiki.downloadMailAttachment(request)
|
|
16581
16058
|
})
|
|
16582
16059
|
}, AwikiOverlay);
|
|
16583
16060
|
});
|