@awiki/dsh-plugin 0.3.18 → 0.3.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.zh.md +11 -0
  2. package/lib/client.js +644 -100
  3. package/lib/client.js.map +1 -1
  4. package/lib/index.js +389 -24
  5. package/lib/{package-version.generated-D0MSDRZn.mjs → package-version.generated-nZcAVnm8.mjs} +22 -2
  6. package/lib/provider.js +1 -1
  7. package/lib/typert.host.js +204 -138
  8. package/lib/typert.remote-client.d.ts +2 -0
  9. package/lib/typert.remote-client.d.ts.map +1 -1
  10. package/lib/typert.remote-client.js +204 -138
  11. package/lib/types/backend-capabilities.d.ts +12 -0
  12. package/lib/types/backend-capabilities.d.ts.map +1 -0
  13. package/lib/types/backend-capabilities.js +48 -0
  14. package/lib/types/backend-capabilities.js.map +1 -0
  15. package/lib/types/client/AwikiIdentityAccess.d.ts.map +1 -1
  16. package/lib/types/client/AwikiIdentityAccess.js +11 -2
  17. package/lib/types/client/AwikiIdentityAccess.js.map +1 -1
  18. package/lib/types/client/AwikiOverlay.d.ts.map +1 -1
  19. package/lib/types/client/AwikiOverlay.js +10 -7
  20. package/lib/types/client/AwikiOverlay.js.map +1 -1
  21. package/lib/types/client/AwikiSettingsSection.d.ts +1 -0
  22. package/lib/types/client/AwikiSettingsSection.d.ts.map +1 -1
  23. package/lib/types/client/AwikiSettingsSection.js +5 -4
  24. package/lib/types/client/AwikiSettingsSection.js.map +1 -1
  25. package/lib/types/client/controller.d.ts +7 -0
  26. package/lib/types/client/controller.d.ts.map +1 -1
  27. package/lib/types/client/controller.js +39 -3
  28. package/lib/types/client/controller.js.map +1 -1
  29. package/lib/types/client/index.d.ts.map +1 -1
  30. package/lib/types/client/index.js +1 -0
  31. package/lib/types/client/index.js.map +1 -1
  32. package/lib/types/client/settings-locales.d.ts +1 -1
  33. package/lib/types/client/settings-locales.d.ts.map +1 -1
  34. package/lib/types/client/settings-locales.js +26 -2
  35. package/lib/types/client/settings-locales.js.map +1 -1
  36. package/lib/types/index.d.ts +18 -1
  37. package/lib/types/index.d.ts.map +1 -1
  38. package/lib/types/index.js +248 -25
  39. package/lib/types/index.js.map +1 -1
  40. package/lib/types/package-version.generated.d.ts +2 -2
  41. package/lib/types/package-version.generated.js +2 -2
  42. package/lib/types/provider-api.d.ts +19 -0
  43. package/lib/types/provider-api.d.ts.map +1 -1
  44. package/lib/types/sdk-adapter.d.ts +4 -0
  45. package/lib/types/sdk-adapter.d.ts.map +1 -1
  46. package/lib/types/sdk-adapter.js +20 -0
  47. package/lib/types/sdk-adapter.js.map +1 -1
  48. package/lib/types/tenant-capability-cache.d.ts +15 -0
  49. package/lib/types/tenant-capability-cache.d.ts.map +1 -0
  50. package/lib/types/tenant-capability-cache.js +45 -0
  51. package/lib/types/tenant-capability-cache.js.map +1 -0
  52. package/lib/types/types.d.ts +8 -1
  53. package/lib/types/types.d.ts.map +1 -1
  54. package/lib/types/types.js.map +1 -1
  55. package/lib/types/update-policy.d.ts +2 -2
  56. package/lib/types/update-policy.d.ts.map +1 -1
  57. package/lib/types/update-policy.js +10 -1
  58. package/lib/types/update-policy.js.map +1 -1
  59. package/package.json +2 -2
package/lib/client.js CHANGED
@@ -1915,6 +1915,115 @@ window.__ModuleLoader__.load({
1915
1915
  result.value = merged.data;
1916
1916
  return result;
1917
1917
  }
1918
+ const $ZodRecord = /*@__PURE__*/ $constructor("$ZodRecord", (inst, def) => {
1919
+ $ZodType.init(inst, def);
1920
+ inst._zod.parse = (payload, ctx) => {
1921
+ const input = payload.value;
1922
+ if (!isPlainObject$1(input)) {
1923
+ payload.issues.push({
1924
+ expected: "record",
1925
+ code: "invalid_type",
1926
+ input,
1927
+ inst
1928
+ });
1929
+ return payload;
1930
+ }
1931
+ const proms = [];
1932
+ const values = def.keyType._zod.values;
1933
+ if (values) {
1934
+ payload.value = {};
1935
+ const recordKeys = /* @__PURE__ */ new Set();
1936
+ for (const key of values) if (typeof key === "string" || typeof key === "number" || typeof key === "symbol") {
1937
+ recordKeys.add(typeof key === "number" ? key.toString() : key);
1938
+ const keyResult = def.keyType._zod.run({
1939
+ value: key,
1940
+ issues: []
1941
+ }, ctx);
1942
+ if (keyResult instanceof Promise) throw new Error("Async schemas not supported in object keys currently");
1943
+ if (keyResult.issues.length) {
1944
+ payload.issues.push({
1945
+ code: "invalid_key",
1946
+ origin: "record",
1947
+ issues: keyResult.issues.map((iss) => finalizeIssue(iss, ctx, config())),
1948
+ input: key,
1949
+ path: [key],
1950
+ inst
1951
+ });
1952
+ continue;
1953
+ }
1954
+ const outKey = keyResult.value;
1955
+ const result = def.valueType._zod.run({
1956
+ value: input[key],
1957
+ issues: []
1958
+ }, ctx);
1959
+ if (result instanceof Promise) proms.push(result.then((result) => {
1960
+ if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
1961
+ payload.value[outKey] = result.value;
1962
+ }));
1963
+ else {
1964
+ if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
1965
+ payload.value[outKey] = result.value;
1966
+ }
1967
+ }
1968
+ let unrecognized;
1969
+ for (const key in input) if (!recordKeys.has(key)) {
1970
+ unrecognized = unrecognized ?? [];
1971
+ unrecognized.push(key);
1972
+ }
1973
+ if (unrecognized && unrecognized.length > 0) payload.issues.push({
1974
+ code: "unrecognized_keys",
1975
+ input,
1976
+ inst,
1977
+ keys: unrecognized
1978
+ });
1979
+ } else {
1980
+ payload.value = {};
1981
+ for (const key of Reflect.ownKeys(input)) {
1982
+ if (key === "__proto__") continue;
1983
+ if (!Object.prototype.propertyIsEnumerable.call(input, key)) continue;
1984
+ let keyResult = def.keyType._zod.run({
1985
+ value: key,
1986
+ issues: []
1987
+ }, ctx);
1988
+ if (keyResult instanceof Promise) throw new Error("Async schemas not supported in object keys currently");
1989
+ if (typeof key === "string" && number$1.test(key) && keyResult.issues.length) {
1990
+ const retryResult = def.keyType._zod.run({
1991
+ value: Number(key),
1992
+ issues: []
1993
+ }, ctx);
1994
+ if (retryResult instanceof Promise) throw new Error("Async schemas not supported in object keys currently");
1995
+ if (retryResult.issues.length === 0) keyResult = retryResult;
1996
+ }
1997
+ if (keyResult.issues.length) {
1998
+ if (def.mode === "loose") payload.value[key] = input[key];
1999
+ else payload.issues.push({
2000
+ code: "invalid_key",
2001
+ origin: "record",
2002
+ issues: keyResult.issues.map((iss) => finalizeIssue(iss, ctx, config())),
2003
+ input: key,
2004
+ path: [key],
2005
+ inst
2006
+ });
2007
+ continue;
2008
+ }
2009
+ const result = def.valueType._zod.run({
2010
+ value: input[key],
2011
+ issues: []
2012
+ }, ctx);
2013
+ if (result instanceof Promise) proms.push(result.then((result) => {
2014
+ if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
2015
+ payload.value[keyResult.value] = result.value;
2016
+ }));
2017
+ else {
2018
+ if (result.issues.length) payload.issues.push(...prefixIssues(key, result.issues));
2019
+ payload.value[keyResult.value] = result.value;
2020
+ }
2021
+ }
2022
+ }
2023
+ if (proms.length) return Promise.all(proms).then(() => payload);
2024
+ return payload;
2025
+ };
2026
+ });
1918
2027
  const $ZodEnum = /*@__PURE__*/ $constructor("$ZodEnum", (inst, def) => {
1919
2028
  $ZodType.init(inst, def);
1920
2029
  const values = getEnumValues(def.entries);
@@ -3205,6 +3314,39 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
3205
3314
  const isSimpleIntersection = (val) => "allOf" in val && Object.keys(val).length === 1;
3206
3315
  json.allOf = [...isSimpleIntersection(a) ? a.allOf : [a], ...isSimpleIntersection(b) ? b.allOf : [b]];
3207
3316
  };
3317
+ const recordProcessor = (schema, ctx, _json, params) => {
3318
+ const json = _json;
3319
+ const def = schema._zod.def;
3320
+ json.type = "object";
3321
+ const keyType = def.keyType;
3322
+ const patterns = keyType._zod.bag?.patterns;
3323
+ if (def.mode === "loose" && patterns && patterns.size > 0) {
3324
+ const valueSchema = process(def.valueType, ctx, {
3325
+ ...params,
3326
+ path: [
3327
+ ...params.path,
3328
+ "patternProperties",
3329
+ "*"
3330
+ ]
3331
+ });
3332
+ json.patternProperties = {};
3333
+ for (const pattern of patterns) json.patternProperties[pattern.source] = valueSchema;
3334
+ } else {
3335
+ if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") json.propertyNames = process(def.keyType, ctx, {
3336
+ ...params,
3337
+ path: [...params.path, "propertyNames"]
3338
+ });
3339
+ json.additionalProperties = process(def.valueType, ctx, {
3340
+ ...params,
3341
+ path: [...params.path, "additionalProperties"]
3342
+ });
3343
+ }
3344
+ const keyValues = keyType._zod.values;
3345
+ if (keyValues) {
3346
+ const validKeyValues = [...keyValues].filter((v) => typeof v === "string" || typeof v === "number");
3347
+ if (validKeyValues.length > 0) json.required = validKeyValues;
3348
+ }
3349
+ };
3208
3350
  const nullableProcessor = (schema, ctx, json, params) => {
3209
3351
  const def = schema._zod.def;
3210
3352
  const inner = process(def.innerType, ctx, params);
@@ -3896,6 +4038,27 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
3896
4038
  right
3897
4039
  });
3898
4040
  }
4041
+ const ZodRecord = /*@__PURE__*/ $constructor("ZodRecord", (inst, def) => {
4042
+ $ZodRecord.init(inst, def);
4043
+ ZodType.init(inst, def);
4044
+ inst._zod.processJSONSchema = (ctx, json, params) => recordProcessor(inst, ctx, json, params);
4045
+ inst.keyType = def.keyType;
4046
+ inst.valueType = def.valueType;
4047
+ });
4048
+ function record$1(keyType, valueType, params) {
4049
+ if (!valueType || !valueType._zod) return new ZodRecord({
4050
+ type: "record",
4051
+ keyType: string(),
4052
+ valueType: keyType,
4053
+ ...normalizeParams(valueType)
4054
+ });
4055
+ return new ZodRecord({
4056
+ type: "record",
4057
+ keyType,
4058
+ valueType,
4059
+ ...normalizeParams(params)
4060
+ });
4061
+ }
3899
4062
  const ZodEnum = /*@__PURE__*/ $constructor("ZodEnum", (inst, def) => {
3900
4063
  $ZodEnum.init(inst, def);
3901
4064
  ZodType.init(inst, def);
@@ -4123,6 +4286,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4123
4286
  "ok": literal(false).readonly(),
4124
4287
  "error": object({
4125
4288
  "code": union([
4289
+ literal("backend-not-supported"),
4290
+ literal("backend-unconfirmed"),
4126
4291
  literal("client-version-unsupported"),
4127
4292
  literal("not-registered"),
4128
4293
  literal("signed-out"),
@@ -4249,6 +4414,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4249
4414
  "ok": literal(false).readonly(),
4250
4415
  "error": object({
4251
4416
  "code": union([
4417
+ literal("backend-not-supported"),
4418
+ literal("backend-unconfirmed"),
4252
4419
  literal("client-version-unsupported"),
4253
4420
  literal("not-registered"),
4254
4421
  literal("signed-out"),
@@ -4332,6 +4499,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4332
4499
  "ok": literal(false).readonly(),
4333
4500
  "error": object({
4334
4501
  "code": union([
4502
+ literal("backend-not-supported"),
4503
+ literal("backend-unconfirmed"),
4335
4504
  literal("client-version-unsupported"),
4336
4505
  literal("not-registered"),
4337
4506
  literal("signed-out"),
@@ -4411,6 +4580,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4411
4580
  "ok": literal(false).readonly(),
4412
4581
  "error": object({
4413
4582
  "code": union([
4583
+ literal("backend-not-supported"),
4584
+ literal("backend-unconfirmed"),
4414
4585
  literal("client-version-unsupported"),
4415
4586
  literal("not-registered"),
4416
4587
  literal("signed-out"),
@@ -4490,6 +4661,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4490
4661
  "ok": literal(false).readonly(),
4491
4662
  "error": object({
4492
4663
  "code": union([
4664
+ literal("backend-not-supported"),
4665
+ literal("backend-unconfirmed"),
4493
4666
  literal("client-version-unsupported"),
4494
4667
  literal("not-registered"),
4495
4668
  literal("signed-out"),
@@ -4560,6 +4733,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4560
4733
  "ok": literal(false).readonly(),
4561
4734
  "error": object({
4562
4735
  "code": union([
4736
+ literal("backend-not-supported"),
4737
+ literal("backend-unconfirmed"),
4563
4738
  literal("client-version-unsupported"),
4564
4739
  literal("not-registered"),
4565
4740
  literal("signed-out"),
@@ -4639,6 +4814,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4639
4814
  "ok": literal(false).readonly(),
4640
4815
  "error": object({
4641
4816
  "code": union([
4817
+ literal("backend-not-supported"),
4818
+ literal("backend-unconfirmed"),
4642
4819
  literal("client-version-unsupported"),
4643
4820
  literal("not-registered"),
4644
4821
  literal("signed-out"),
@@ -4719,8 +4896,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4719
4896
  literal("rate-limited"),
4720
4897
  literal("network"),
4721
4898
  literal("remote"),
4722
- literal("unauthorized"),
4723
- literal("unavailable")
4899
+ literal("unavailable"),
4900
+ literal("unauthorized")
4724
4901
  ]).readonly(),
4725
4902
  "message": string().readonly()
4726
4903
  }).readonly()
@@ -4768,6 +4945,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4768
4945
  "ok": literal(false).readonly(),
4769
4946
  "error": object({
4770
4947
  "code": union([
4948
+ literal("backend-not-supported"),
4949
+ literal("backend-unconfirmed"),
4771
4950
  literal("client-version-unsupported"),
4772
4951
  literal("not-registered"),
4773
4952
  literal("signed-out"),
@@ -4843,6 +5022,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4843
5022
  "ok": literal(false).readonly(),
4844
5023
  "error": object({
4845
5024
  "code": union([
5025
+ literal("backend-not-supported"),
5026
+ literal("backend-unconfirmed"),
4846
5027
  literal("client-version-unsupported"),
4847
5028
  literal("not-registered"),
4848
5029
  literal("signed-out"),
@@ -4939,6 +5120,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
4939
5120
  "member": string().readonly(),
4940
5121
  "error": object({
4941
5122
  "code": union([
5123
+ literal("backend-not-supported"),
5124
+ literal("backend-unconfirmed"),
4942
5125
  literal("client-version-unsupported"),
4943
5126
  literal("not-registered"),
4944
5127
  literal("signed-out"),
@@ -5023,8 +5206,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5023
5206
  literal("rate-limited"),
5024
5207
  literal("network"),
5025
5208
  literal("remote"),
5026
- literal("unauthorized"),
5027
- literal("unavailable")
5209
+ literal("unavailable"),
5210
+ literal("unauthorized")
5028
5211
  ]).readonly(),
5029
5212
  "message": string().readonly()
5030
5213
  }).readonly()
@@ -5072,6 +5255,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5072
5255
  "ok": literal(false).readonly(),
5073
5256
  "error": object({
5074
5257
  "code": union([
5258
+ literal("backend-not-supported"),
5259
+ literal("backend-unconfirmed"),
5075
5260
  literal("client-version-unsupported"),
5076
5261
  literal("not-registered"),
5077
5262
  literal("signed-out"),
@@ -5142,6 +5327,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5142
5327
  "ok": literal(false).readonly(),
5143
5328
  "error": object({
5144
5329
  "code": union([
5330
+ literal("backend-not-supported"),
5331
+ literal("backend-unconfirmed"),
5145
5332
  literal("client-version-unsupported"),
5146
5333
  literal("not-registered"),
5147
5334
  literal("signed-out"),
@@ -5221,6 +5408,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5221
5408
  "ok": literal(false).readonly(),
5222
5409
  "error": object({
5223
5410
  "code": union([
5411
+ literal("backend-not-supported"),
5412
+ literal("backend-unconfirmed"),
5224
5413
  literal("client-version-unsupported"),
5225
5414
  literal("not-registered"),
5226
5415
  literal("signed-out"),
@@ -5294,6 +5483,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5294
5483
  "ok": literal(false).readonly(),
5295
5484
  "error": object({
5296
5485
  "code": union([
5486
+ literal("backend-not-supported"),
5487
+ literal("backend-unconfirmed"),
5297
5488
  literal("client-version-unsupported"),
5298
5489
  literal("not-registered"),
5299
5490
  literal("signed-out"),
@@ -5415,6 +5606,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5415
5606
  "ok": literal(false).readonly(),
5416
5607
  "error": object({
5417
5608
  "code": union([
5609
+ literal("backend-not-supported"),
5610
+ literal("backend-unconfirmed"),
5418
5611
  literal("client-version-unsupported"),
5419
5612
  literal("not-registered"),
5420
5613
  literal("signed-out"),
@@ -5476,6 +5669,19 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5476
5669
  }), object({
5477
5670
  "ok": literal(true).readonly(),
5478
5671
  "value": object({
5672
+ "serverFeatureDiagnostics": record$1(string(), object({
5673
+ "fetchedAt": number().readonly().optional(),
5674
+ "refreshError": union([
5675
+ literal("unavailable"),
5676
+ literal("authentication_required"),
5677
+ literal("upgrade_required")
5678
+ ]).readonly().optional()
5679
+ })).readonly().readonly().optional(),
5680
+ "serverFeatures": record$1(string(), union([
5681
+ literal("unknown"),
5682
+ literal("supported"),
5683
+ literal("unsupported")
5684
+ ])).readonly().readonly().optional(),
5479
5685
  "pollIntervalMs": number().readonly(),
5480
5686
  "attachmentMaxBytes": number().readonly(),
5481
5687
  "handleRecoveryPhoneEnabled": boolean().readonly(),
@@ -5498,6 +5704,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5498
5704
  "ok": literal(false).readonly(),
5499
5705
  "error": object({
5500
5706
  "code": union([
5707
+ literal("backend-not-supported"),
5708
+ literal("backend-unconfirmed"),
5501
5709
  literal("client-version-unsupported"),
5502
5710
  literal("not-registered"),
5503
5711
  literal("signed-out"),
@@ -5600,6 +5808,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5600
5808
  "ok": literal(false).readonly(),
5601
5809
  "error": object({
5602
5810
  "code": union([
5811
+ literal("backend-not-supported"),
5812
+ literal("backend-unconfirmed"),
5603
5813
  literal("client-version-unsupported"),
5604
5814
  literal("not-registered"),
5605
5815
  literal("signed-out"),
@@ -5685,6 +5895,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5685
5895
  "ok": literal(false).readonly(),
5686
5896
  "error": object({
5687
5897
  "code": union([
5898
+ literal("backend-not-supported"),
5899
+ literal("backend-unconfirmed"),
5688
5900
  literal("client-version-unsupported"),
5689
5901
  literal("not-registered"),
5690
5902
  literal("signed-out"),
@@ -5760,6 +5972,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5760
5972
  "ok": literal(false).readonly(),
5761
5973
  "error": object({
5762
5974
  "code": union([
5975
+ literal("backend-not-supported"),
5976
+ literal("backend-unconfirmed"),
5763
5977
  literal("client-version-unsupported"),
5764
5978
  literal("not-registered"),
5765
5979
  literal("signed-out"),
@@ -5853,6 +6067,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5853
6067
  "ok": literal(false).readonly(),
5854
6068
  "error": object({
5855
6069
  "code": union([
6070
+ literal("backend-not-supported"),
6071
+ literal("backend-unconfirmed"),
5856
6072
  literal("client-version-unsupported"),
5857
6073
  literal("not-registered"),
5858
6074
  literal("signed-out"),
@@ -5957,6 +6173,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
5957
6173
  "ok": literal(false).readonly(),
5958
6174
  "error": object({
5959
6175
  "code": union([
6176
+ literal("backend-not-supported"),
6177
+ literal("backend-unconfirmed"),
5960
6178
  literal("client-version-unsupported"),
5961
6179
  literal("not-registered"),
5962
6180
  literal("signed-out"),
@@ -6028,6 +6246,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6028
6246
  "ok": literal(false).readonly(),
6029
6247
  "error": object({
6030
6248
  "code": union([
6249
+ literal("backend-not-supported"),
6250
+ literal("backend-unconfirmed"),
6031
6251
  literal("client-version-unsupported"),
6032
6252
  literal("not-registered"),
6033
6253
  literal("signed-out"),
@@ -6089,6 +6309,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6089
6309
  }), object({
6090
6310
  "ok": literal(true).readonly(),
6091
6311
  "value": object({
6312
+ "registrationHandleOnly": boolean().readonly().optional(),
6092
6313
  "creationMethods": array(union([literal("wba"), literal("web")])).readonly().optional(),
6093
6314
  "pendingRegistrations": array(object({
6094
6315
  "did": string().readonly(),
@@ -6133,6 +6354,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6133
6354
  "ok": literal(false).readonly(),
6134
6355
  "error": object({
6135
6356
  "code": union([
6357
+ literal("backend-not-supported"),
6358
+ literal("backend-unconfirmed"),
6136
6359
  literal("client-version-unsupported"),
6137
6360
  literal("not-registered"),
6138
6361
  literal("signed-out"),
@@ -6218,8 +6441,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6218
6441
  literal("rate-limited"),
6219
6442
  literal("network"),
6220
6443
  literal("remote"),
6221
- literal("unauthorized"),
6222
- literal("unavailable")
6444
+ literal("unavailable"),
6445
+ literal("unauthorized")
6223
6446
  ]).readonly(),
6224
6447
  "message": string().readonly()
6225
6448
  }).readonly()
@@ -6271,6 +6494,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6271
6494
  "ok": literal(false).readonly(),
6272
6495
  "error": object({
6273
6496
  "code": union([
6497
+ literal("backend-not-supported"),
6498
+ literal("backend-unconfirmed"),
6274
6499
  literal("client-version-unsupported"),
6275
6500
  literal("not-registered"),
6276
6501
  literal("signed-out"),
@@ -6375,6 +6600,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6375
6600
  "ok": literal(false).readonly(),
6376
6601
  "error": object({
6377
6602
  "code": union([
6603
+ literal("backend-not-supported"),
6604
+ literal("backend-unconfirmed"),
6378
6605
  literal("client-version-unsupported"),
6379
6606
  literal("not-registered"),
6380
6607
  literal("signed-out"),
@@ -6445,6 +6672,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6445
6672
  "ok": literal(false).readonly(),
6446
6673
  "error": object({
6447
6674
  "code": union([
6675
+ literal("backend-not-supported"),
6676
+ literal("backend-unconfirmed"),
6448
6677
  literal("client-version-unsupported"),
6449
6678
  literal("not-registered"),
6450
6679
  literal("signed-out"),
@@ -6524,6 +6753,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6524
6753
  "ok": literal(false).readonly(),
6525
6754
  "error": object({
6526
6755
  "code": union([
6756
+ literal("backend-not-supported"),
6757
+ literal("backend-unconfirmed"),
6527
6758
  literal("client-version-unsupported"),
6528
6759
  literal("not-registered"),
6529
6760
  literal("signed-out"),
@@ -6645,6 +6876,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6645
6876
  "ok": literal(false).readonly(),
6646
6877
  "error": object({
6647
6878
  "code": union([
6879
+ literal("backend-not-supported"),
6880
+ literal("backend-unconfirmed"),
6648
6881
  literal("client-version-unsupported"),
6649
6882
  literal("not-registered"),
6650
6883
  literal("signed-out"),
@@ -6728,6 +6961,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6728
6961
  "ok": literal(false).readonly(),
6729
6962
  "error": object({
6730
6963
  "code": union([
6964
+ literal("backend-not-supported"),
6965
+ literal("backend-unconfirmed"),
6731
6966
  literal("client-version-unsupported"),
6732
6967
  literal("not-registered"),
6733
6968
  literal("signed-out"),
@@ -6809,6 +7044,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6809
7044
  "ok": literal(false).readonly(),
6810
7045
  "error": object({
6811
7046
  "code": union([
7047
+ literal("backend-not-supported"),
7048
+ literal("backend-unconfirmed"),
6812
7049
  literal("client-version-unsupported"),
6813
7050
  literal("not-registered"),
6814
7051
  literal("signed-out"),
@@ -6898,6 +7135,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6898
7135
  "ok": literal(false).readonly(),
6899
7136
  "error": object({
6900
7137
  "code": union([
7138
+ literal("backend-not-supported"),
7139
+ literal("backend-unconfirmed"),
6901
7140
  literal("client-version-unsupported"),
6902
7141
  literal("not-registered"),
6903
7142
  literal("signed-out"),
@@ -6968,6 +7207,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
6968
7207
  "ok": literal(false).readonly(),
6969
7208
  "error": object({
6970
7209
  "code": union([
7210
+ literal("backend-not-supported"),
7211
+ literal("backend-unconfirmed"),
6971
7212
  literal("client-version-unsupported"),
6972
7213
  literal("not-registered"),
6973
7214
  literal("signed-out"),
@@ -7073,6 +7314,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7073
7314
  "ok": literal(false).readonly(),
7074
7315
  "error": object({
7075
7316
  "code": union([
7317
+ literal("backend-not-supported"),
7318
+ literal("backend-unconfirmed"),
7076
7319
  literal("client-version-unsupported"),
7077
7320
  literal("not-registered"),
7078
7321
  literal("signed-out"),
@@ -7164,6 +7407,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7164
7407
  "ok": literal(false).readonly(),
7165
7408
  "error": object({
7166
7409
  "code": union([
7410
+ literal("backend-not-supported"),
7411
+ literal("backend-unconfirmed"),
7167
7412
  literal("client-version-unsupported"),
7168
7413
  literal("not-registered"),
7169
7414
  literal("signed-out"),
@@ -7249,6 +7494,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7249
7494
  "ok": literal(false).readonly(),
7250
7495
  "error": object({
7251
7496
  "code": union([
7497
+ literal("backend-not-supported"),
7498
+ literal("backend-unconfirmed"),
7252
7499
  literal("client-version-unsupported"),
7253
7500
  literal("not-registered"),
7254
7501
  literal("signed-out"),
@@ -7328,6 +7575,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7328
7575
  "ok": literal(false).readonly(),
7329
7576
  "error": object({
7330
7577
  "code": union([
7578
+ literal("backend-not-supported"),
7579
+ literal("backend-unconfirmed"),
7331
7580
  literal("client-version-unsupported"),
7332
7581
  literal("not-registered"),
7333
7582
  literal("signed-out"),
@@ -7407,6 +7656,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7407
7656
  "ok": literal(false).readonly(),
7408
7657
  "error": object({
7409
7658
  "code": union([
7659
+ literal("backend-not-supported"),
7660
+ literal("backend-unconfirmed"),
7410
7661
  literal("client-version-unsupported"),
7411
7662
  literal("not-registered"),
7412
7663
  literal("signed-out"),
@@ -7474,6 +7725,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7474
7725
  "ok": literal(false).readonly(),
7475
7726
  "error": object({
7476
7727
  "code": union([
7728
+ literal("backend-not-supported"),
7729
+ literal("backend-unconfirmed"),
7477
7730
  literal("client-version-unsupported"),
7478
7731
  literal("not-registered"),
7479
7732
  literal("signed-out"),
@@ -7545,6 +7798,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7545
7798
  "ok": literal(false).readonly(),
7546
7799
  "error": object({
7547
7800
  "code": union([
7801
+ literal("backend-not-supported"),
7802
+ literal("backend-unconfirmed"),
7548
7803
  literal("client-version-unsupported"),
7549
7804
  literal("not-registered"),
7550
7805
  literal("signed-out"),
@@ -7667,6 +7922,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7667
7922
  "ok": literal(false).readonly(),
7668
7923
  "error": object({
7669
7924
  "code": union([
7925
+ literal("backend-not-supported"),
7926
+ literal("backend-unconfirmed"),
7670
7927
  literal("client-version-unsupported"),
7671
7928
  literal("not-registered"),
7672
7929
  literal("signed-out"),
@@ -7738,6 +7995,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7738
7995
  "ok": literal(false).readonly(),
7739
7996
  "error": object({
7740
7997
  "code": union([
7998
+ literal("backend-not-supported"),
7999
+ literal("backend-unconfirmed"),
7741
8000
  literal("client-version-unsupported"),
7742
8001
  literal("not-registered"),
7743
8002
  literal("signed-out"),
@@ -7826,10 +8085,110 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7826
8085
  })).readonly()
7827
8086
  }).readonly()
7828
8087
  })]);
8088
+ const _awiki_dsh_plugin_awiki_refreshBackendCapabilities_result$schema = union([object({
8089
+ "ok": literal(false).readonly(),
8090
+ "error": object({
8091
+ "code": union([
8092
+ literal("backend-not-supported"),
8093
+ literal("backend-unconfirmed"),
8094
+ literal("client-version-unsupported"),
8095
+ literal("not-registered"),
8096
+ literal("signed-out"),
8097
+ literal("already-registered"),
8098
+ literal("invalid-request"),
8099
+ literal("invalid-otp"),
8100
+ literal("challenge-expired"),
8101
+ literal("handle-unavailable"),
8102
+ literal("short-handle-invite-required"),
8103
+ literal("not-found"),
8104
+ literal("forbidden"),
8105
+ literal("device-rejoin-required"),
8106
+ literal("identity-recovery-required"),
8107
+ literal("conflict"),
8108
+ literal("state-in-use"),
8109
+ literal("rate-limited"),
8110
+ literal("group-membership-required"),
8111
+ literal("group-member-encryption-not-ready"),
8112
+ literal("group-identity-stale"),
8113
+ literal("attachment-too-large"),
8114
+ literal("summary-unavailable"),
8115
+ literal("summary-timeout"),
8116
+ literal("summary-cancelled"),
8117
+ literal("summary-invalid-output"),
8118
+ literal("summary-failed"),
8119
+ literal("delivery-unknown"),
8120
+ literal("network"),
8121
+ literal("remote")
8122
+ ]).readonly(),
8123
+ "message": string().readonly(),
8124
+ "mailRecoveryObservability": object({
8125
+ "current_principal_matches_recovery": boolean().readonly(),
8126
+ "request_generation_classification": union([literal("current"), literal("replaced")]).readonly(),
8127
+ "mail_ingress_classification": union([
8128
+ literal("reached"),
8129
+ literal("not_reached"),
8130
+ literal("unknown")
8131
+ ]).readonly(),
8132
+ "auth_status_class": union([
8133
+ literal("unknown"),
8134
+ literal("accepted"),
8135
+ literal("rejected"),
8136
+ literal("dependency_unavailable")
8137
+ ]).readonly(),
8138
+ "auth_stable_machine_code": string().readonly().optional(),
8139
+ "retryable": boolean().readonly(),
8140
+ "mail_closed_classification": union([
8141
+ literal("unknown"),
8142
+ literal("dependency_unavailable"),
8143
+ literal("success"),
8144
+ literal("authentication_rejected"),
8145
+ literal("no_active_handle"),
8146
+ literal("multiple_active_handles"),
8147
+ literal("no_mailbox"),
8148
+ literal("owner_conflict")
8149
+ ]).readonly()
8150
+ }).readonly().optional()
8151
+ }).readonly()
8152
+ }), object({
8153
+ "ok": literal(true).readonly(),
8154
+ "value": object({
8155
+ "serverFeatureDiagnostics": record$1(string(), object({
8156
+ "fetchedAt": number().readonly().optional(),
8157
+ "refreshError": union([
8158
+ literal("unavailable"),
8159
+ literal("authentication_required"),
8160
+ literal("upgrade_required")
8161
+ ]).readonly().optional()
8162
+ })).readonly().readonly().optional(),
8163
+ "serverFeatures": record$1(string(), union([
8164
+ literal("unknown"),
8165
+ literal("supported"),
8166
+ literal("unsupported")
8167
+ ])).readonly().readonly().optional(),
8168
+ "pollIntervalMs": number().readonly(),
8169
+ "attachmentMaxBytes": number().readonly(),
8170
+ "handleRecoveryPhoneEnabled": boolean().readonly(),
8171
+ "integrationGuideUrl": string().readonly().optional(),
8172
+ "tenantId": string().readonly(),
8173
+ "tenantStorageScopeId": string().readonly().optional(),
8174
+ "tenantGeneration": number().readonly(),
8175
+ "tenantOnline": boolean().readonly(),
8176
+ "services": object({
8177
+ "modelProxy": object({ "enabled": boolean().readonly() }).readonly(),
8178
+ "guestGateway": object({ "enabled": boolean().readonly() }).readonly()
8179
+ }).readonly(),
8180
+ "mailAttachmentDownloadMaxBytes": number().readonly(),
8181
+ "mailAttachmentMaxCount": number().readonly(),
8182
+ "mailAttachmentMaxBytes": number().readonly(),
8183
+ "mailAttachmentTotalMaxBytes": number().readonly()
8184
+ }).readonly()
8185
+ })]);
7829
8186
  const _awiki_dsh_plugin_awiki_refreshDeviceManagement_result$schema = union([object({
7830
8187
  "ok": literal(false).readonly(),
7831
8188
  "error": object({
7832
8189
  "code": union([
8190
+ literal("backend-not-supported"),
8191
+ literal("backend-unconfirmed"),
7833
8192
  literal("client-version-unsupported"),
7834
8193
  literal("not-registered"),
7835
8194
  literal("signed-out"),
@@ -7957,6 +8316,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
7957
8316
  "ok": literal(false).readonly(),
7958
8317
  "error": object({
7959
8318
  "code": union([
8319
+ literal("backend-not-supported"),
8320
+ literal("backend-unconfirmed"),
7960
8321
  literal("client-version-unsupported"),
7961
8322
  literal("not-registered"),
7962
8323
  literal("signed-out"),
@@ -8047,6 +8408,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8047
8408
  "ok": literal(false).readonly(),
8048
8409
  "error": object({
8049
8410
  "code": union([
8411
+ literal("backend-not-supported"),
8412
+ literal("backend-unconfirmed"),
8050
8413
  literal("client-version-unsupported"),
8051
8414
  literal("not-registered"),
8052
8415
  literal("signed-out"),
@@ -8130,6 +8493,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8130
8493
  "ok": literal(false).readonly(),
8131
8494
  "error": object({
8132
8495
  "code": union([
8496
+ literal("backend-not-supported"),
8497
+ literal("backend-unconfirmed"),
8133
8498
  literal("client-version-unsupported"),
8134
8499
  literal("not-registered"),
8135
8500
  literal("signed-out"),
@@ -8228,8 +8593,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8228
8593
  literal("rate-limited"),
8229
8594
  literal("network"),
8230
8595
  literal("remote"),
8231
- literal("unauthorized"),
8232
- literal("unavailable")
8596
+ literal("unavailable"),
8597
+ literal("unauthorized")
8233
8598
  ]).readonly(),
8234
8599
  "message": string().readonly()
8235
8600
  }).readonly()
@@ -8277,6 +8642,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8277
8642
  "ok": literal(false).readonly(),
8278
8643
  "error": object({
8279
8644
  "code": union([
8645
+ literal("backend-not-supported"),
8646
+ literal("backend-unconfirmed"),
8280
8647
  literal("client-version-unsupported"),
8281
8648
  literal("not-registered"),
8282
8649
  literal("signed-out"),
@@ -8366,6 +8733,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8366
8733
  "ok": literal(false).readonly(),
8367
8734
  "error": object({
8368
8735
  "code": union([
8736
+ literal("backend-not-supported"),
8737
+ literal("backend-unconfirmed"),
8369
8738
  literal("client-version-unsupported"),
8370
8739
  literal("not-registered"),
8371
8740
  literal("signed-out"),
@@ -8438,6 +8807,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8438
8807
  "ok": literal(false).readonly(),
8439
8808
  "error": object({
8440
8809
  "code": union([
8810
+ literal("backend-not-supported"),
8811
+ literal("backend-unconfirmed"),
8441
8812
  literal("client-version-unsupported"),
8442
8813
  literal("not-registered"),
8443
8814
  literal("signed-out"),
@@ -8517,6 +8888,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8517
8888
  "ok": literal(false).readonly(),
8518
8889
  "error": object({
8519
8890
  "code": union([
8891
+ literal("backend-not-supported"),
8892
+ literal("backend-unconfirmed"),
8520
8893
  literal("client-version-unsupported"),
8521
8894
  literal("not-registered"),
8522
8895
  literal("signed-out"),
@@ -8638,6 +9011,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8638
9011
  "ok": literal(false).readonly(),
8639
9012
  "error": object({
8640
9013
  "code": union([
9014
+ literal("backend-not-supported"),
9015
+ literal("backend-unconfirmed"),
8641
9016
  literal("client-version-unsupported"),
8642
9017
  literal("not-registered"),
8643
9018
  literal("signed-out"),
@@ -8705,6 +9080,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8705
9080
  "ok": literal(false).readonly(),
8706
9081
  "error": object({
8707
9082
  "code": union([
9083
+ literal("backend-not-supported"),
9084
+ literal("backend-unconfirmed"),
8708
9085
  literal("client-version-unsupported"),
8709
9086
  literal("not-registered"),
8710
9087
  literal("signed-out"),
@@ -8775,6 +9152,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8775
9152
  "ok": literal(false).readonly(),
8776
9153
  "error": object({
8777
9154
  "code": union([
9155
+ literal("backend-not-supported"),
9156
+ literal("backend-unconfirmed"),
8778
9157
  literal("client-version-unsupported"),
8779
9158
  literal("not-registered"),
8780
9159
  literal("signed-out"),
@@ -8906,8 +9285,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8906
9285
  literal("rate-limited"),
8907
9286
  literal("network"),
8908
9287
  literal("remote"),
8909
- literal("unauthorized"),
8910
- literal("unavailable")
9288
+ literal("unavailable"),
9289
+ literal("unauthorized")
8911
9290
  ]).readonly(),
8912
9291
  "message": string().readonly()
8913
9292
  }).readonly()
@@ -8978,6 +9357,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
8978
9357
  "ok": literal(false).readonly(),
8979
9358
  "error": object({
8980
9359
  "code": union([
9360
+ literal("backend-not-supported"),
9361
+ literal("backend-unconfirmed"),
8981
9362
  literal("client-version-unsupported"),
8982
9363
  literal("not-registered"),
8983
9364
  literal("signed-out"),
@@ -9090,6 +9471,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9090
9471
  "ok": literal(false).readonly(),
9091
9472
  "error": object({
9092
9473
  "code": union([
9474
+ literal("backend-not-supported"),
9475
+ literal("backend-unconfirmed"),
9093
9476
  literal("client-version-unsupported"),
9094
9477
  literal("not-registered"),
9095
9478
  literal("signed-out"),
@@ -9164,6 +9547,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9164
9547
  "ok": literal(false).readonly(),
9165
9548
  "error": object({
9166
9549
  "code": union([
9550
+ literal("backend-not-supported"),
9551
+ literal("backend-unconfirmed"),
9167
9552
  literal("client-version-unsupported"),
9168
9553
  literal("not-registered"),
9169
9554
  literal("signed-out"),
@@ -9241,6 +9626,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9241
9626
  "ok": literal(false).readonly(),
9242
9627
  "error": object({
9243
9628
  "code": union([
9629
+ literal("backend-not-supported"),
9630
+ literal("backend-unconfirmed"),
9244
9631
  literal("client-version-unsupported"),
9245
9632
  literal("not-registered"),
9246
9633
  literal("signed-out"),
@@ -9338,6 +9725,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9338
9725
  "ok": literal(false).readonly(),
9339
9726
  "error": object({
9340
9727
  "code": union([
9728
+ literal("backend-not-supported"),
9729
+ literal("backend-unconfirmed"),
9341
9730
  literal("client-version-unsupported"),
9342
9731
  literal("not-registered"),
9343
9732
  literal("signed-out"),
@@ -9443,6 +9832,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9443
9832
  "ok": literal(false).readonly(),
9444
9833
  "error": object({
9445
9834
  "code": union([
9835
+ literal("backend-not-supported"),
9836
+ literal("backend-unconfirmed"),
9446
9837
  literal("client-version-unsupported"),
9447
9838
  literal("not-registered"),
9448
9839
  literal("signed-out"),
@@ -9522,6 +9913,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9522
9913
  "ok": literal(false).readonly(),
9523
9914
  "error": object({
9524
9915
  "code": union([
9916
+ literal("backend-not-supported"),
9917
+ literal("backend-unconfirmed"),
9525
9918
  literal("client-version-unsupported"),
9526
9919
  literal("not-registered"),
9527
9920
  literal("signed-out"),
@@ -9605,6 +9998,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9605
9998
  "ok": literal(false).readonly(),
9606
9999
  "error": object({
9607
10000
  "code": union([
10001
+ literal("backend-not-supported"),
10002
+ literal("backend-unconfirmed"),
9608
10003
  literal("client-version-unsupported"),
9609
10004
  literal("not-registered"),
9610
10005
  literal("signed-out"),
@@ -9732,6 +10127,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9732
10127
  "ok": literal(false).readonly(),
9733
10128
  "error": object({
9734
10129
  "code": union([
10130
+ literal("backend-not-supported"),
10131
+ literal("backend-unconfirmed"),
9735
10132
  literal("client-version-unsupported"),
9736
10133
  literal("not-registered"),
9737
10134
  literal("signed-out"),
@@ -9835,6 +10232,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9835
10232
  "ok": literal(false).readonly(),
9836
10233
  "error": object({
9837
10234
  "code": union([
10235
+ literal("backend-not-supported"),
10236
+ literal("backend-unconfirmed"),
9838
10237
  literal("client-version-unsupported"),
9839
10238
  literal("not-registered"),
9840
10239
  literal("signed-out"),
@@ -9917,6 +10316,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
9917
10316
  "ok": literal(false).readonly(),
9918
10317
  "error": object({
9919
10318
  "code": union([
10319
+ literal("backend-not-supported"),
10320
+ literal("backend-unconfirmed"),
9920
10321
  literal("client-version-unsupported"),
9921
10322
  literal("not-registered"),
9922
10323
  literal("signed-out"),
@@ -10015,8 +10416,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10015
10416
  literal("rate-limited"),
10016
10417
  literal("network"),
10017
10418
  literal("remote"),
10018
- literal("unauthorized"),
10019
- literal("unavailable")
10419
+ literal("unavailable"),
10420
+ literal("unauthorized")
10020
10421
  ]).readonly(),
10021
10422
  "message": string().readonly()
10022
10423
  }).readonly()
@@ -10068,6 +10469,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10068
10469
  "ok": literal(false).readonly(),
10069
10470
  "error": object({
10070
10471
  "code": union([
10472
+ literal("backend-not-supported"),
10473
+ literal("backend-unconfirmed"),
10071
10474
  literal("client-version-unsupported"),
10072
10475
  literal("not-registered"),
10073
10476
  literal("signed-out"),
@@ -10168,7 +10571,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10168
10571
  },
10169
10572
  sourceLocation: {
10170
10573
  "file": "packages/dsh-awiki/src/index.ts",
10171
- "line": 230,
10574
+ "line": 233,
10172
10575
  "column": 9
10173
10576
  }
10174
10577
  },
@@ -10195,7 +10598,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10195
10598
  },
10196
10599
  sourceLocation: {
10197
10600
  "file": "packages/dsh-awiki/src/index.ts",
10198
- "line": 269,
10601
+ "line": 272,
10199
10602
  "column": 3
10200
10603
  }
10201
10604
  },
@@ -10222,7 +10625,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10222
10625
  },
10223
10626
  sourceLocation: {
10224
10627
  "file": "packages/dsh-awiki/src/index.ts",
10225
- "line": 181,
10628
+ "line": 184,
10226
10629
  "column": 9
10227
10630
  }
10228
10631
  },
@@ -10240,7 +10643,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10240
10643
  },
10241
10644
  sourceLocation: {
10242
10645
  "file": "packages/dsh-awiki/src/index.ts",
10243
- "line": 152,
10646
+ "line": 155,
10244
10647
  "column": 9
10245
10648
  }
10246
10649
  },
@@ -10258,7 +10661,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10258
10661
  },
10259
10662
  sourceLocation: {
10260
10663
  "file": "packages/dsh-awiki/src/index.ts",
10261
- "line": 161,
10664
+ "line": 164,
10262
10665
  "column": 9
10263
10666
  }
10264
10667
  },
@@ -10285,7 +10688,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10285
10688
  },
10286
10689
  sourceLocation: {
10287
10690
  "file": "packages/dsh-awiki/src/index.ts",
10288
- "line": 215,
10691
+ "line": 218,
10289
10692
  "column": 3
10290
10693
  }
10291
10694
  },
@@ -10312,7 +10715,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10312
10715
  },
10313
10716
  sourceLocation: {
10314
10717
  "file": "packages/dsh-awiki/src/index.ts",
10315
- "line": 329,
10718
+ "line": 332,
10316
10719
  "column": 3
10317
10720
  }
10318
10721
  },
@@ -10339,7 +10742,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10339
10742
  },
10340
10743
  sourceLocation: {
10341
10744
  "file": "packages/dsh-awiki/src/index.ts",
10342
- "line": 120,
10745
+ "line": 123,
10343
10746
  "column": 3
10344
10747
  }
10345
10748
  },
@@ -10366,7 +10769,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10366
10769
  },
10367
10770
  sourceLocation: {
10368
10771
  "file": "packages/dsh-awiki/src/index.ts",
10369
- "line": 204,
10772
+ "line": 207,
10370
10773
  "column": 9
10371
10774
  }
10372
10775
  },
@@ -10393,7 +10796,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10393
10796
  },
10394
10797
  sourceLocation: {
10395
10798
  "file": "packages/dsh-awiki/src/index.ts",
10396
- "line": 248,
10799
+ "line": 251,
10397
10800
  "column": 9
10398
10801
  }
10399
10802
  },
@@ -10420,7 +10823,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10420
10823
  },
10421
10824
  sourceLocation: {
10422
10825
  "file": "packages/dsh-awiki/src/index.ts",
10423
- "line": 111,
10826
+ "line": 114,
10424
10827
  "column": 3
10425
10828
  }
10426
10829
  },
@@ -10447,7 +10850,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10447
10850
  },
10448
10851
  sourceLocation: {
10449
10852
  "file": "packages/dsh-awiki/src/index.ts",
10450
- "line": 242,
10853
+ "line": 245,
10451
10854
  "column": 9
10452
10855
  }
10453
10856
  },
@@ -10474,7 +10877,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10474
10877
  },
10475
10878
  sourceLocation: {
10476
10879
  "file": "packages/dsh-awiki/src/index.ts",
10477
- "line": 306,
10880
+ "line": 309,
10478
10881
  "column": 9
10479
10882
  }
10480
10883
  },
@@ -10501,7 +10904,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10501
10904
  },
10502
10905
  sourceLocation: {
10503
10906
  "file": "packages/dsh-awiki/src/index.ts",
10504
- "line": 324,
10907
+ "line": 327,
10505
10908
  "column": 9
10506
10909
  }
10507
10910
  },
@@ -10528,7 +10931,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10528
10931
  },
10529
10932
  sourceLocation: {
10530
10933
  "file": "packages/dsh-awiki/src/index.ts",
10531
- "line": 239,
10934
+ "line": 242,
10532
10935
  "column": 9
10533
10936
  }
10534
10937
  },
@@ -10564,7 +10967,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10564
10967
  },
10565
10968
  sourceLocation: {
10566
10969
  "file": "packages/dsh-awiki/src/index.ts",
10567
- "line": 275,
10970
+ "line": 278,
10568
10971
  "column": 3
10569
10972
  }
10570
10973
  },
@@ -10582,7 +10985,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10582
10985
  },
10583
10986
  sourceLocation: {
10584
10987
  "file": "packages/dsh-awiki/src/index.ts",
10585
- "line": 158,
10988
+ "line": 161,
10586
10989
  "column": 9
10587
10990
  }
10588
10991
  },
@@ -10619,7 +11022,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10619
11022
  },
10620
11023
  sourceLocation: {
10621
11024
  "file": "packages/dsh-awiki/src/index.ts",
10622
- "line": 263,
11025
+ "line": 266,
10623
11026
  "column": 3
10624
11027
  }
10625
11028
  },
@@ -10646,7 +11049,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10646
11049
  },
10647
11050
  sourceLocation: {
10648
11051
  "file": "packages/dsh-awiki/src/index.ts",
10649
- "line": 251,
11052
+ "line": 254,
10650
11053
  "column": 3
10651
11054
  }
10652
11055
  },
@@ -10673,7 +11076,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10673
11076
  },
10674
11077
  sourceLocation: {
10675
11078
  "file": "packages/dsh-awiki/src/index.ts",
10676
- "line": 286,
11079
+ "line": 289,
10677
11080
  "column": 3
10678
11081
  }
10679
11082
  },
@@ -10691,7 +11094,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10691
11094
  },
10692
11095
  sourceLocation: {
10693
11096
  "file": "packages/dsh-awiki/src/index.ts",
10694
- "line": 126,
11097
+ "line": 129,
10695
11098
  "column": 9
10696
11099
  }
10697
11100
  },
@@ -10709,7 +11112,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10709
11112
  },
10710
11113
  sourceLocation: {
10711
11114
  "file": "packages/dsh-awiki/src/index.ts",
10712
- "line": 155,
11115
+ "line": 158,
10713
11116
  "column": 3
10714
11117
  }
10715
11118
  },
@@ -10727,7 +11130,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10727
11130
  },
10728
11131
  sourceLocation: {
10729
11132
  "file": "packages/dsh-awiki/src/index.ts",
10730
- "line": 167,
11133
+ "line": 170,
10731
11134
  "column": 3
10732
11135
  }
10733
11136
  },
@@ -10745,7 +11148,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10745
11148
  },
10746
11149
  sourceLocation: {
10747
11150
  "file": "packages/dsh-awiki/src/index.ts",
10748
- "line": 108,
11151
+ "line": 111,
10749
11152
  "column": 3
10750
11153
  }
10751
11154
  },
@@ -10772,7 +11175,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10772
11175
  },
10773
11176
  sourceLocation: {
10774
11177
  "file": "packages/dsh-awiki/src/index.ts",
10775
- "line": 289,
11178
+ "line": 292,
10776
11179
  "column": 3
10777
11180
  }
10778
11181
  },
@@ -10790,7 +11193,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10790
11193
  },
10791
11194
  sourceLocation: {
10792
11195
  "file": "packages/dsh-awiki/src/index.ts",
10793
- "line": 309,
11196
+ "line": 312,
10794
11197
  "column": 3
10795
11198
  }
10796
11199
  },
@@ -10808,7 +11211,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10808
11211
  },
10809
11212
  sourceLocation: {
10810
11213
  "file": "packages/dsh-awiki/src/index.ts",
10811
- "line": 218,
11214
+ "line": 221,
10812
11215
  "column": 3
10813
11216
  }
10814
11217
  },
@@ -10835,7 +11238,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10835
11238
  },
10836
11239
  sourceLocation: {
10837
11240
  "file": "packages/dsh-awiki/src/index.ts",
10838
- "line": 233,
11241
+ "line": 236,
10839
11242
  "column": 9
10840
11243
  }
10841
11244
  },
@@ -10853,7 +11256,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10853
11256
  },
10854
11257
  sourceLocation: {
10855
11258
  "file": "packages/dsh-awiki/src/index.ts",
10856
- "line": 129,
11259
+ "line": 132,
10857
11260
  "column": 9
10858
11261
  }
10859
11262
  },
@@ -10880,7 +11283,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10880
11283
  },
10881
11284
  sourceLocation: {
10882
11285
  "file": "packages/dsh-awiki/src/index.ts",
10883
- "line": 138,
11286
+ "line": 141,
10884
11287
  "column": 9
10885
11288
  }
10886
11289
  },
@@ -10907,7 +11310,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10907
11310
  },
10908
11311
  sourceLocation: {
10909
11312
  "file": "packages/dsh-awiki/src/index.ts",
10910
- "line": 257,
11313
+ "line": 260,
10911
11314
  "column": 3
10912
11315
  }
10913
11316
  },
@@ -10934,7 +11337,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10934
11337
  },
10935
11338
  sourceLocation: {
10936
11339
  "file": "packages/dsh-awiki/src/index.ts",
10937
- "line": 260,
11340
+ "line": 263,
10938
11341
  "column": 9
10939
11342
  }
10940
11343
  },
@@ -10962,7 +11365,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10962
11365
  },
10963
11366
  sourceLocation: {
10964
11367
  "file": "packages/dsh-awiki/src/index.ts",
10965
- "line": 283,
11368
+ "line": 286,
10966
11369
  "column": 3
10967
11370
  }
10968
11371
  },
@@ -10989,7 +11392,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
10989
11392
  },
10990
11393
  sourceLocation: {
10991
11394
  "file": "packages/dsh-awiki/src/index.ts",
10992
- "line": 266,
11395
+ "line": 269,
10993
11396
  "column": 3
10994
11397
  }
10995
11398
  },
@@ -11017,7 +11420,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11017
11420
  },
11018
11421
  sourceLocation: {
11019
11422
  "file": "packages/dsh-awiki/src/index.ts",
11020
- "line": 312,
11423
+ "line": 315,
11021
11424
  "column": 9
11022
11425
  }
11023
11426
  },
@@ -11035,7 +11438,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11035
11438
  },
11036
11439
  sourceLocation: {
11037
11440
  "file": "packages/dsh-awiki/src/index.ts",
11038
- "line": 135,
11441
+ "line": 138,
11039
11442
  "column": 3
11040
11443
  }
11041
11444
  },
@@ -11062,7 +11465,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11062
11465
  },
11063
11466
  sourceLocation: {
11064
11467
  "file": "packages/dsh-awiki/src/index.ts",
11065
- "line": 132,
11468
+ "line": 135,
11066
11469
  "column": 3
11067
11470
  }
11068
11471
  },
@@ -11089,7 +11492,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11089
11492
  },
11090
11493
  sourceLocation: {
11091
11494
  "file": "packages/dsh-awiki/src/index.ts",
11092
- "line": 297,
11495
+ "line": 300,
11093
11496
  "column": 3
11094
11497
  }
11095
11498
  },
@@ -11116,7 +11519,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11116
11519
  },
11117
11520
  sourceLocation: {
11118
11521
  "file": "packages/dsh-awiki/src/index.ts",
11119
- "line": 318,
11522
+ "line": 321,
11120
11523
  "column": 3
11121
11524
  }
11122
11525
  },
@@ -11143,7 +11546,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11143
11546
  },
11144
11547
  sourceLocation: {
11145
11548
  "file": "packages/dsh-awiki/src/index.ts",
11146
- "line": 227,
11549
+ "line": 230,
11147
11550
  "column": 3
11148
11551
  }
11149
11552
  },
@@ -11170,7 +11573,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11170
11573
  },
11171
11574
  sourceLocation: {
11172
11575
  "file": "packages/dsh-awiki/src/index.ts",
11173
- "line": 199,
11576
+ "line": 202,
11174
11577
  "column": 9
11175
11578
  }
11176
11579
  },
@@ -11197,7 +11600,25 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11197
11600
  },
11198
11601
  sourceLocation: {
11199
11602
  "file": "packages/dsh-awiki/src/index.ts",
11200
- "line": 315,
11603
+ "line": 318,
11604
+ "column": 9
11605
+ }
11606
+ },
11607
+ {
11608
+ id: "@awiki/dsh-plugin#awiki/refreshBackendCapabilities",
11609
+ service: "awiki",
11610
+ namespace: "awiki",
11611
+ method: "refreshBackendCapabilities",
11612
+ invocation: { kind: "direct" },
11613
+ parameters: [],
11614
+ result: {
11615
+ mode: "strict",
11616
+ typeSymbol: "@awiki/dsh-plugin/types#AwikiResult",
11617
+ schema: _awiki_dsh_plugin_awiki_refreshBackendCapabilities_result$schema
11618
+ },
11619
+ sourceLocation: {
11620
+ "file": "packages/dsh-awiki/src/index.ts",
11621
+ "line": 108,
11201
11622
  "column": 9
11202
11623
  }
11203
11624
  },
@@ -11215,7 +11636,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11215
11636
  },
11216
11637
  sourceLocation: {
11217
11638
  "file": "packages/dsh-awiki/src/index.ts",
11218
- "line": 164,
11639
+ "line": 167,
11219
11640
  "column": 3
11220
11641
  }
11221
11642
  },
@@ -11242,7 +11663,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11242
11663
  },
11243
11664
  sourceLocation: {
11244
11665
  "file": "packages/dsh-awiki/src/index.ts",
11245
- "line": 146,
11666
+ "line": 149,
11246
11667
  "column": 9
11247
11668
  }
11248
11669
  },
@@ -11269,7 +11690,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11269
11690
  },
11270
11691
  sourceLocation: {
11271
11692
  "file": "packages/dsh-awiki/src/index.ts",
11272
- "line": 189,
11693
+ "line": 192,
11273
11694
  "column": 9
11274
11695
  }
11275
11696
  },
@@ -11296,7 +11717,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11296
11717
  },
11297
11718
  sourceLocation: {
11298
11719
  "file": "packages/dsh-awiki/src/index.ts",
11299
- "line": 272,
11720
+ "line": 275,
11300
11721
  "column": 3
11301
11722
  }
11302
11723
  },
@@ -11323,7 +11744,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11323
11744
  },
11324
11745
  sourceLocation: {
11325
11746
  "file": "packages/dsh-awiki/src/index.ts",
11326
- "line": 123,
11747
+ "line": 126,
11327
11748
  "column": 3
11328
11749
  }
11329
11750
  },
@@ -11350,7 +11771,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11350
11771
  },
11351
11772
  sourceLocation: {
11352
11773
  "file": "packages/dsh-awiki/src/index.ts",
11353
- "line": 254,
11774
+ "line": 257,
11354
11775
  "column": 3
11355
11776
  }
11356
11777
  },
@@ -11377,7 +11798,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11377
11798
  },
11378
11799
  sourceLocation: {
11379
11800
  "file": "packages/dsh-awiki/src/index.ts",
11380
- "line": 245,
11801
+ "line": 248,
11381
11802
  "column": 3
11382
11803
  }
11383
11804
  },
@@ -11404,7 +11825,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11404
11825
  },
11405
11826
  sourceLocation: {
11406
11827
  "file": "packages/dsh-awiki/src/index.ts",
11407
- "line": 173,
11828
+ "line": 176,
11408
11829
  "column": 3
11409
11830
  }
11410
11831
  },
@@ -11431,7 +11852,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11431
11852
  },
11432
11853
  sourceLocation: {
11433
11854
  "file": "packages/dsh-awiki/src/index.ts",
11434
- "line": 236,
11855
+ "line": 239,
11435
11856
  "column": 9
11436
11857
  }
11437
11858
  },
@@ -11449,7 +11870,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11449
11870
  },
11450
11871
  sourceLocation: {
11451
11872
  "file": "packages/dsh-awiki/src/index.ts",
11452
- "line": 149,
11873
+ "line": 152,
11453
11874
  "column": 3
11454
11875
  }
11455
11876
  },
@@ -11476,7 +11897,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11476
11897
  },
11477
11898
  sourceLocation: {
11478
11899
  "file": "packages/dsh-awiki/src/index.ts",
11479
- "line": 186,
11900
+ "line": 189,
11480
11901
  "column": 9
11481
11902
  }
11482
11903
  },
@@ -11503,7 +11924,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11503
11924
  },
11504
11925
  sourceLocation: {
11505
11926
  "file": "packages/dsh-awiki/src/index.ts",
11506
- "line": 194,
11927
+ "line": 197,
11507
11928
  "column": 9
11508
11929
  }
11509
11930
  },
@@ -11530,7 +11951,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11530
11951
  },
11531
11952
  sourceLocation: {
11532
11953
  "file": "packages/dsh-awiki/src/index.ts",
11533
- "line": 117,
11954
+ "line": 120,
11534
11955
  "column": 3
11535
11956
  }
11536
11957
  },
@@ -11557,7 +11978,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11557
11978
  },
11558
11979
  sourceLocation: {
11559
11980
  "file": "packages/dsh-awiki/src/index.ts",
11560
- "line": 303,
11981
+ "line": 306,
11561
11982
  "column": 9
11562
11983
  }
11563
11984
  },
@@ -11584,7 +12005,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11584
12005
  },
11585
12006
  sourceLocation: {
11586
12007
  "file": "packages/dsh-awiki/src/index.ts",
11587
- "line": 321,
12008
+ "line": 324,
11588
12009
  "column": 9
11589
12010
  }
11590
12011
  },
@@ -11611,7 +12032,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11611
12032
  },
11612
12033
  sourceLocation: {
11613
12034
  "file": "packages/dsh-awiki/src/index.ts",
11614
- "line": 224,
12035
+ "line": 227,
11615
12036
  "column": 3
11616
12037
  }
11617
12038
  },
@@ -11638,7 +12059,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11638
12059
  },
11639
12060
  sourceLocation: {
11640
12061
  "file": "packages/dsh-awiki/src/index.ts",
11641
- "line": 143,
12062
+ "line": 146,
11642
12063
  "column": 9
11643
12064
  }
11644
12065
  },
@@ -11665,7 +12086,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11665
12086
  },
11666
12087
  sourceLocation: {
11667
12088
  "file": "packages/dsh-awiki/src/index.ts",
11668
- "line": 300,
12089
+ "line": 303,
11669
12090
  "column": 3
11670
12091
  }
11671
12092
  },
@@ -11692,7 +12113,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11692
12113
  },
11693
12114
  sourceLocation: {
11694
12115
  "file": "packages/dsh-awiki/src/index.ts",
11695
- "line": 212,
12116
+ "line": 215,
11696
12117
  "column": 3
11697
12118
  }
11698
12119
  },
@@ -11719,7 +12140,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11719
12140
  },
11720
12141
  sourceLocation: {
11721
12142
  "file": "packages/dsh-awiki/src/index.ts",
11722
- "line": 176,
12143
+ "line": 179,
11723
12144
  "column": 9
11724
12145
  }
11725
12146
  },
@@ -11746,7 +12167,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11746
12167
  },
11747
12168
  sourceLocation: {
11748
12169
  "file": "packages/dsh-awiki/src/index.ts",
11749
- "line": 292,
12170
+ "line": 295,
11750
12171
  "column": 9
11751
12172
  }
11752
12173
  },
@@ -11773,7 +12194,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11773
12194
  },
11774
12195
  sourceLocation: {
11775
12196
  "file": "packages/dsh-awiki/src/index.ts",
11776
- "line": 278,
12197
+ "line": 281,
11777
12198
  "column": 3
11778
12199
  }
11779
12200
  },
@@ -11800,7 +12221,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11800
12221
  },
11801
12222
  sourceLocation: {
11802
12223
  "file": "packages/dsh-awiki/src/index.ts",
11803
- "line": 209,
12224
+ "line": 212,
11804
12225
  "column": 9
11805
12226
  }
11806
12227
  },
@@ -11827,7 +12248,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11827
12248
  },
11828
12249
  sourceLocation: {
11829
12250
  "file": "packages/dsh-awiki/src/index.ts",
11830
- "line": 170,
12251
+ "line": 173,
11831
12252
  "column": 3
11832
12253
  }
11833
12254
  },
@@ -11854,7 +12275,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11854
12275
  },
11855
12276
  sourceLocation: {
11856
12277
  "file": "packages/dsh-awiki/src/index.ts",
11857
- "line": 114,
12278
+ "line": 117,
11858
12279
  "column": 3
11859
12280
  }
11860
12281
  },
@@ -11881,7 +12302,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11881
12302
  },
11882
12303
  sourceLocation: {
11883
12304
  "file": "packages/dsh-awiki/src/index.ts",
11884
- "line": 221,
12305
+ "line": 224,
11885
12306
  "column": 3
11886
12307
  }
11887
12308
  }
@@ -12798,6 +13219,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
12798
13219
  const [didMethod, setDidMethod] = useDraftState("identity:didMethod", "wba", false);
12799
13220
  const [pendingRegistration, setPendingRegistration] = useDraftState("identity:pendingRegistration", null, false);
12800
13221
  const creationMethods = props.access?.creationMethods ?? ["wba"];
13222
+ const handleOnly = props.access?.registrationHandleOnly === true;
12801
13223
  const canRegister = creationMethods.includes(didMethod) || pendingRegistration?.method === didMethod && pendingRegistration.fullHandle === handle.trim();
12802
13224
  const [recoveryFactorContext, setRecoveryFactorContext] = useDraftState("identity:recoveryFactorContext", null, false);
12803
13225
  const [notice, setNotice] = useDraftState("identity:notice", null, false);
@@ -12901,6 +13323,17 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
12901
13323
  setInviteCode("");
12902
13324
  setShortHandleInviteNotice(false);
12903
13325
  }
13326
+ if (handleOnly) {
13327
+ const registered = await props.registerIdentity({
13328
+ handle: handle.trim(),
13329
+ phone: "",
13330
+ otp: "",
13331
+ ...didMethod === "web" ? { didMethod } : {},
13332
+ ...admissionInvite === "" ? {} : { inviteCode: admissionInvite }
13333
+ });
13334
+ if (!registered.ok) setError(registered.error);
13335
+ return;
13336
+ }
12904
13337
  const result = await props.sendRegistrationOtp({
12905
13338
  handle: handle.trim(),
12906
13339
  phone: phone.trim(),
@@ -13561,7 +13994,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
13561
13994
  }),
13562
13995
  (0, react_jsx_runtime.jsxs)("div", {
13563
13996
  className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.headingGroup,
13564
- children: [(0, react_jsx_runtime.jsx)("h3", { children: registrationOtpSent ? "验证身份" : deviceRejoinHandle === null ? "进入 AWiki" : "重新加入设备" }), (0, react_jsx_runtime.jsx)("p", { children: registrationOtpSent ? "输入注册验证码。新 Handle 会创建身份,已有 Handle 会进入设备加入选择。" : deviceRejoinHandle === null ? "输入 Handle 和手机号继续。已有恢复进度会直接继续,无需重复获取验证码。" : "验证绑定手机号后,这台设备会以一把新密钥重新申请加入;本机消息数据不会清除。" })]
13997
+ children: [(0, react_jsx_runtime.jsx)("h3", { children: registrationOtpSent ? "验证身份" : deviceRejoinHandle === null ? "进入 AWiki" : "重新加入设备" }), (0, react_jsx_runtime.jsx)("p", { children: registrationOtpSent ? "输入注册验证码。新 Handle 会创建身份,已有 Handle 会进入设备加入选择。" : deviceRejoinHandle === null ? handleOnly ? "此服务器使用用户名注册,无需手机号或验证码。" : "输入 Handle 和手机号继续。已有恢复进度会直接继续,无需重复获取验证码。" : "验证绑定手机号后,这台设备会以一把新密钥重新申请加入;本机消息数据不会清除。" })]
13565
13998
  }),
13566
13999
  !registrationOtpSent && (props.access?.pendingRegistrations?.length ?? 0) > 0 && (0, react_jsx_runtime.jsxs)("div", {
13567
14000
  className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.actionStack,
@@ -13621,7 +14054,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
13621
14054
  autoFocus: props.autoFocusHandle
13622
14055
  })]
13623
14056
  }),
13624
- (0, react_jsx_runtime.jsxs)("label", {
14057
+ !handleOnly && (0, react_jsx_runtime.jsxs)("label", {
13625
14058
  className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.field,
13626
14059
  children: ["手机号", (0, react_jsx_runtime.jsx)("input", {
13627
14060
  value: phone,
@@ -13662,8 +14095,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
13662
14095
  (0, react_jsx_runtime.jsx)("button", {
13663
14096
  type: "submit",
13664
14097
  className: _dsh_awiki_css_AwikiIdentityAccess_module_css_default.primary,
13665
- disabled: entryPending || props.pending || props.accessLoading || shortHandleInviteNotice && inviteCode.trim() === "" || handle.trim() === "" || phone.trim() === "" || registrationOtpSent && otp.trim() === "",
13666
- children: registrationOtpSent ? "继续" : "获取验证码"
14098
+ disabled: entryPending || props.pending || props.accessLoading || shortHandleInviteNotice && inviteCode.trim() === "" || handle.trim() === "" || !handleOnly && phone.trim() === "" || registrationOtpSent && otp.trim() === "",
14099
+ children: handleOnly || registrationOtpSent ? "继续" : "获取验证码"
13667
14100
  }),
13668
14101
  registrationOtpSent && (0, react_jsx_runtime.jsx)("button", {
13669
14102
  type: "button",
@@ -15117,6 +15550,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15117
15550
  conversationsCursor;
15118
15551
  historyCursor;
15119
15552
  groupMembersCursor;
15553
+ lastCapabilityRefresh = 0;
15120
15554
  timer;
15121
15555
  opening;
15122
15556
  drawerOpen = false;
@@ -15198,6 +15632,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15198
15632
  };
15199
15633
  if (!config.ok) return failed(config.error);
15200
15634
  this.config = config.value;
15635
+ this.lastCapabilityRefresh = Date.now();
15201
15636
  const session = await call(() => this.remote.getSession());
15202
15637
  if (!this.current(generation)) return {
15203
15638
  ok: true,
@@ -15217,6 +15652,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15217
15652
  identity: session.value.status === "active" ? session.value.identity : null,
15218
15653
  error: null,
15219
15654
  attachmentMaxBytes: config.value.attachmentMaxBytes,
15655
+ serverFeatures: config.value.serverFeatures,
15656
+ serverFeatureDiagnostics: config.value.serverFeatureDiagnostics,
15220
15657
  handleRecoveryPhoneEnabled: config.value.handleRecoveryPhoneEnabled,
15221
15658
  recoveryOperationId: selectedRecovery,
15222
15659
  recoveryOtpRetryAt: storedRecoveryOtpRetryAt(selectedRecovery, config.value.tenantStorageScopeId ?? config.value.tenantId)
@@ -15300,6 +15737,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15300
15737
  status: "ready",
15301
15738
  sessionStatus: "signed-out",
15302
15739
  attachmentMaxBytes: this.config?.attachmentMaxBytes ?? 0,
15740
+ serverFeatures: this.config?.serverFeatures,
15741
+ serverFeatureDiagnostics: this.config?.serverFeatureDiagnostics,
15303
15742
  handleRecoveryPhoneEnabled: this.config?.handleRecoveryPhoneEnabled ?? false
15304
15743
  });
15305
15744
  await this.loadSession();
@@ -15421,7 +15860,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15421
15860
  const selected = this.view.recoveryOperationId;
15422
15861
  this.publish({
15423
15862
  ...this.view,
15424
- identityAccess: result.value,
15863
+ identityAccess: this.projectRegistrationAccess(result.value),
15425
15864
  recoveryOperationId: selected,
15426
15865
  recoveryProgress: selected === this.view.recoveryOperationId ? this.view.recoveryProgress : null,
15427
15866
  recoveryOtpRetryAt: storedRecoveryOtpRetryAt(selected, this.config?.tenantStorageScopeId ?? this.config?.tenantId)
@@ -15457,7 +15896,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15457
15896
  ...this.view,
15458
15897
  recoveryProgress: status.value,
15459
15898
  recoveryOtpRetryAt: complete ? null : storedRecoveryOtpRetryAt(selected, this.config?.tenantStorageScopeId ?? this.config?.tenantId),
15460
- identityAccess: result.value
15899
+ identityAccess: this.projectRegistrationAccess(result.value)
15461
15900
  });
15462
15901
  }
15463
15902
  }
@@ -15591,6 +16030,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15591
16030
  identity: result.value.identity,
15592
16031
  error: null
15593
16032
  });
16033
+ await this.refreshServerFeatures(generation);
16034
+ if (!this.current(generation)) return result;
15594
16035
  await this.loadConversationPreferences(generation);
15595
16036
  if (!this.current(generation)) return result;
15596
16037
  await this.refreshConversations(generation);
@@ -17005,6 +17446,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
17005
17446
  status: "ready",
17006
17447
  accessLoading: false,
17007
17448
  attachmentMaxBytes: this.config?.attachmentMaxBytes ?? INITIAL_VIEW.attachmentMaxBytes,
17449
+ serverFeatures: this.config?.serverFeatures,
17450
+ serverFeatureDiagnostics: this.config?.serverFeatureDiagnostics,
17008
17451
  handleRecoveryPhoneEnabled: this.config?.handleRecoveryPhoneEnabled ?? false,
17009
17452
  identityAccess: {
17010
17453
  choice: null,
@@ -17292,8 +17735,36 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
17292
17735
  value: void 0
17293
17736
  };
17294
17737
  }
17738
+ async refreshBackendCapabilities() {
17739
+ await this.refreshServerFeatures(this.generation, true);
17740
+ }
17741
+ projectRegistrationAccess(access) {
17742
+ const support = this.config?.serverFeatures?.["registration.handle_only"];
17743
+ return access !== null && (support === "supported" || support === "unsupported") ? {
17744
+ ...access,
17745
+ registrationHandleOnly: support === "supported"
17746
+ } : access;
17747
+ }
17748
+ async refreshServerFeatures(generation, force = false) {
17749
+ this.lastCapabilityRefresh = Date.now();
17750
+ const config = await call(() => force ? this.remote.refreshBackendCapabilities() : this.remote.getConfig());
17751
+ if (!this.current(generation)) return;
17752
+ if (config.ok && config.value.tenantId === this.config?.tenantId && config.value.tenantGeneration === this.config?.tenantGeneration) {
17753
+ this.config = config.value;
17754
+ this.publish({
17755
+ ...this.view,
17756
+ attachmentMaxBytes: config.value.attachmentMaxBytes,
17757
+ identityAccess: this.projectRegistrationAccess(this.view.identityAccess),
17758
+ serverFeatures: config.value.serverFeatures,
17759
+ serverFeatureDiagnostics: config.value.serverFeatureDiagnostics,
17760
+ handleRecoveryPhoneEnabled: config.value.handleRecoveryPhoneEnabled
17761
+ });
17762
+ }
17763
+ }
17295
17764
  async poll(generation) {
17296
- if (this.polling || !this.current(generation) || this.view.identity === null) return;
17765
+ if (!this.current(generation)) return;
17766
+ if (Date.now() - this.lastCapabilityRefresh >= 5e3) this.refreshServerFeatures(generation);
17767
+ if (this.polling || this.view.identity === null) return;
17297
17768
  this.polling = true;
17298
17769
  if (globalThis.document?.visibilityState !== "hidden" && Date.now() - this.lastAvatarProfileCheck >= 6e4) this.refreshAvatarProfile();
17299
17770
  try {
@@ -22159,7 +22630,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
22159
22630
  props.onChange("chat");
22160
22631
  },
22161
22632
  children: "会话"
22162
- }), (0, react_jsx_runtime.jsxs)("button", {
22633
+ }), props.mailEnabled && (0, react_jsx_runtime.jsxs)("button", {
22163
22634
  type: "button",
22164
22635
  role: "tab",
22165
22636
  "aria-selected": props.mode === "mail",
@@ -22631,7 +23102,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
22631
23102
  groupDid: selected.groupDid,
22632
23103
  status: "loading"
22633
23104
  } : null;
22634
- const groupWritable = (selectedGroupAccess === null || selectedGroupAccess.status === "available") && (!view.selectedGroup?.encrypted || view.selectedGroup.canSendSecure === true);
23105
+ const encryptionUnavailable = selected?.kind === "direct" && view.encryptedConversationIds?.includes(selected.id) && view.serverFeatures?.direct_e2ee !== "supported" || view.selectedGroup?.encrypted && view.serverFeatures?.group_e2ee !== "supported";
23106
+ const groupWritable = !encryptionUnavailable && (selectedGroupAccess === null || selectedGroupAccess.status === "available") && (!view.selectedGroup?.encrypted || view.selectedGroup.canSendSecure === true);
22635
23107
  const candidates = mentionQuery === null || selected?.kind !== "group" ? [] : mentionCandidates(view.groupMembers, view.identity.did, mentionQuery.query);
22636
23108
  const summary = selected === void 0 ? void 0 : view.summaries[selected.id];
22637
23109
  const summaryPanelId = (0, react.useId)();
@@ -23268,6 +23740,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
23268
23740
  ]
23269
23741
  }, candidate.member.did))
23270
23742
  }),
23743
+ encryptionUnavailable && (0, react_jsx_runtime.jsx)("p", {
23744
+ role: "status",
23745
+ children: "此服务器暂无法继续加密聊天。消息和草稿已保留。"
23746
+ }),
23271
23747
  view.selectedGroup?.encrypted && !view.selectedGroup.canSendSecure && (0, react_jsx_runtime.jsxs)("div", {
23272
23748
  className: _dsh_awiki_css_AwikiOverlay_module_css_default.groupSecurityStatus,
23273
23749
  role: "status",
@@ -23356,7 +23832,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
23356
23832
  className: _dsh_awiki_css_AwikiOverlay_module_css_default.filePicker,
23357
23833
  "aria-label": "消息安全类型",
23358
23834
  "aria-pressed": view.encryptedConversationIds?.includes(selected.id) ?? false,
23359
- disabled: view.messageSecurityReady !== true || view.pending === "保存消息模式" || props.setMessageSecurity === void 0,
23835
+ disabled: view.serverFeatures?.direct_e2ee !== "supported" || view.messageSecurityReady !== true || view.pending === "保存消息模式" || props.setMessageSecurity === void 0,
23360
23836
  onClick: () => {
23361
23837
  props.setMessageSecurity?.(selected.id, !view.encryptedConversationIds?.includes(selected.id));
23362
23838
  },
@@ -23552,6 +24028,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
23552
24028
  const [logoutPending, setLogoutPending] = (0, react.useState)(false);
23553
24029
  const [logoutError, setLogoutError] = (0, react.useState)(null);
23554
24030
  const [mode, setMode] = (0, react.useState)("chat");
24031
+ (0, react.useEffect)(() => {
24032
+ if (view.serverFeatures?.["services.mail"] !== "supported") setMode("chat");
24033
+ }, [view.serverFeatures]);
23555
24034
  const [mailUnreadCount, setMailUnreadCount] = (0, react.useState)(0);
23556
24035
  const [launcherPosition, setLauncherPosition] = (0, react.useState)(readLauncherPosition);
23557
24036
  const [drawerFrame, setDrawerFrame] = (0, react.useState)(readDrawerFrame);
@@ -24080,6 +24559,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24080
24559
  identity: view.identity
24081
24560
  },
24082
24561
  modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
24562
+ mailEnabled: view.serverFeatures?.["services.mail"] === "supported",
24083
24563
  mode,
24084
24564
  mailUnreadCount,
24085
24565
  onChange: setMode
@@ -24125,7 +24605,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24125
24605
  })
24126
24606
  })
24127
24607
  })
24128
- }), (0, react_jsx_runtime.jsx)("div", {
24608
+ }), view.serverFeatures?.["services.mail"] === "supported" && (0, react_jsx_runtime.jsx)("div", {
24129
24609
  className: _dsh_awiki_css_AwikiOverlay_module_css_default.modePanel,
24130
24610
  "data-active": mode === "mail" || void 0,
24131
24611
  hidden: mode !== "mail",
@@ -24142,6 +24622,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24142
24622
  refreshAvatarProfile: props.refreshAvatarProfile
24143
24623
  }) : null,
24144
24624
  modeTabs: (0, react_jsx_runtime.jsx)(ModeTabs, {
24625
+ mailEnabled: view.serverFeatures?.["services.mail"] === "supported",
24145
24626
  mode,
24146
24627
  mailUnreadCount,
24147
24628
  onChange: setMode
@@ -24244,7 +24725,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24244
24725
  }), (0, react_jsx_runtime.jsx)("button", {
24245
24726
  type: "button",
24246
24727
  "aria-pressed": encryptedGroup,
24247
- disabled: groupFrozen,
24728
+ disabled: groupFrozen || view.serverFeatures?.group_e2ee !== "supported",
24248
24729
  onClick: () => setEncryptedGroup(true),
24249
24730
  children: "加密群"
24250
24731
  })]
@@ -24459,7 +24940,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24459
24940
  }
24460
24941
  //#endregion
24461
24942
  //#region \0dsh-awiki-css:AwikiSettingsSection.module.css.mjs
24462
- const css = ".keMsGa_section{width:min(100%,760px);color:var(--dsw-alias-label-primary);flex-direction:column;gap:20px;display:flex}.keMsGa_heading,.keMsGa_panel,.keMsGa_card,.keMsGa_dangerCopy,.keMsGa_clearWarning{flex-direction:column;display:flex}.keMsGa_heading{gap:6px}.keMsGa_panel{gap:16px;min-width:0}.keMsGa_tabs{background:var(--dsw-alias-bg-layer-2);border-radius:8px;gap:4px;padding:4px;display:flex;overflow-x:auto}.keMsGa_tab{min-height:36px;color:var(--dsw-alias-label-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1 0 auto;padding:7px 12px}.keMsGa_tab:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.keMsGa_tabActive{background:var(--dsw-alias-bg-layer-3);color:var(--dsw-alias-label-primary);font-weight:600}.keMsGa_tenantList{flex-direction:column;gap:10px;display:flex}.keMsGa_tenantRow{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.keMsGa_tenantCurrent{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary) 55%, var(--dsw-alias-border-l2))}.keMsGa_tenantCopy{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.keMsGa_tenantMeta{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.keMsGa_tenantBadges{color:var(--dsw-alias-label-secondary);gap:6px;font-size:12px;display:flex}.keMsGa_tenantBadges>span{background:var(--dsw-alias-bg-layer-2);border-radius:999px;padding:2px 6px}.keMsGa_inlineInput{box-sizing:border-box;width:min(100%,280px);color:var(--dsw-alias-label-primary);font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:4px 7px;font-weight:600}.keMsGa_inlineInput:focus{border-color:var(--dsw-alias-brand-primary);outline:none}.keMsGa_cardTitle{color:var(--dsw-alias-label-primary);margin:0;font-size:14px;line-height:22px}.keMsGa_updateCommand{user-select:text;background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-primary);white-space:nowrap;border-radius:6px;padding:10px 12px;font-size:12px;display:block;overflow-x:auto}.keMsGa_title{margin:0;font-size:18px;font-weight:600;line-height:26px}.keMsGa_tabs{background:var(--dsw-alias-bg-layer-2);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.keMsGa_tabs button{min-height:36px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;padding:7px 12px;font-size:13px;line-height:20px}.keMsGa_tabs button:hover{color:var(--dsw-alias-label-primary)}.keMsGa_tabs button[aria-selected=true]{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1)}.keMsGa_intro,.keMsGa_description,.keMsGa_defaultValue,.keMsGa_notice,.keMsGa_status{margin:0;font-size:13px;line-height:20px}.keMsGa_intro,.keMsGa_description,.keMsGa_defaultValue{color:var(--dsw-alias-label-tertiary)}.keMsGa_card{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;gap:14px;padding:18px}.keMsGa_label{font-size:14px;font-weight:600;line-height:22px}.keMsGa_input{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;height:42px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:9px 12px;font-size:14px;line-height:22px}.keMsGa_input:focus{border-color:var(--dsw-alias-brand-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--dsw-alias-brand-primary) 18%, transparent);outline:none}.keMsGa_input:disabled{cursor:not-allowed;opacity:.55}.keMsGa_actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.keMsGa_status{min-height:20px;color:var(--dsw-alias-state-success-primary,var(--dsw-alias-label-secondary))}.keMsGa_error{color:var(--dsw-alias-state-error-primary)}.keMsGa_notice{background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-radius:8px;padding:12px 14px}.keMsGa_dangerZone{border:1px solid color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, var(--dsw-alias-border-l2));background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 5%, var(--dsw-alias-bg-layer-3));border-radius:8px;flex-direction:column;align-items:flex-start;gap:14px;padding:18px;display:flex}.keMsGa_dangerCopy{gap:6px}.keMsGa_dangerTitle,.keMsGa_dangerDescription,.keMsGa_clearWarning p,.keMsGa_confirmLabel{margin:0}.keMsGa_integrationCard{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;flex-direction:column;gap:12px;padding:18px;display:flex}.keMsGa_integrationHeader,.keMsGa_groupHeader,.keMsGa_integrationUrl{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.keMsGa_integrationHeader .keMsGa_dangerTitle{color:var(--dsw-alias-label-primary)}.keMsGa_closedNotice{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-radius:8px;flex-direction:column;gap:3px;padding:11px 12px;font-size:13px;line-height:20px;display:flex}.keMsGa_closedNotice strong{color:var(--dsw-alias-label-primary)}.keMsGa_textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;min-height:72px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:9px 12px}.keMsGa_checkLabel{align-items:center;gap:8px;font-size:14px;display:flex}.keMsGa_groupRow{border:1px solid var(--dsw-alias-border-l2);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.keMsGa_groupSummary{align-items:flex-start;gap:12px;min-width:0;display:flex}.keMsGa_groupSummary>button{flex:none}.keMsGa_groupIdentity{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.keMsGa_groupName,.keMsGa_groupDid{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.keMsGa_groupDid{color:var(--dsw-alias-label-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.keMsGa_integrationUrl{background:var(--dsw-alias-bg-layer-2);border-radius:8px;align-items:center;gap:8px;padding:10px 8px 10px 10px}.keMsGa_integrationUrl code{overflow-wrap:anywhere;min-width:0}.keMsGa_integrationUrl>button{white-space:nowrap;flex:none;min-width:96px}.keMsGa_dangerTitle{color:var(--dsw-alias-state-error-primary);font-size:14px;font-weight:600;line-height:22px}.keMsGa_dangerDescription,.keMsGa_clearWarning,.keMsGa_confirmLabel{color:var(--dsw-alias-label-secondary);font-size:13px;line-height:20px}.keMsGa_dangerButton,.keMsGa_clearConfirmButton{border-color:color-mix(in srgb, var(--dsw-alias-state-error-primary) 55%, var(--dsw-alias-border-l2));color:var(--dsw-alias-state-error-primary)}.keMsGa_dangerButton:hover:not(:disabled),.keMsGa_clearConfirmButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}.keMsGa_clearDialog{width:min(480px,100%)}.keMsGa_clearWarning{background:var(--dsw-alias-interactive-bg-hover-danger);border-radius:8px;gap:10px;padding:12px 14px}.keMsGa_clearWarning p:first-child{color:var(--dsw-alias-state-error-primary);font-weight:600}.keMsGa_confirmLabel{color:var(--dsw-alias-label-primary);margin-top:18px}@media (width<=640px){.keMsGa_card{padding:16px}.keMsGa_actions>button{flex:1}.keMsGa_dangerButton{width:100%}.keMsGa_integrationHeader,.keMsGa_integrationUrl{flex-direction:column}.keMsGa_tenantRow{flex-direction:column;align-items:stretch}.keMsGa_tabs{justify-content:flex-start}}";
24943
+ const css = ".keMsGa_section{width:min(100%,760px);color:var(--dsw-alias-label-primary);flex-direction:column;gap:20px;display:flex}.keMsGa_heading,.keMsGa_panel,.keMsGa_card,.keMsGa_dangerCopy,.keMsGa_clearWarning{flex-direction:column;display:flex}.keMsGa_heading{gap:6px}.keMsGa_panel{gap:16px;min-width:0}.keMsGa_tabs{background:var(--dsw-alias-bg-layer-2);border-radius:8px;gap:4px;padding:4px;display:flex;overflow-x:auto}.keMsGa_tab{min-height:36px;color:var(--dsw-alias-label-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1 0 auto;padding:7px 12px}.keMsGa_tab:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.keMsGa_tabActive{background:var(--dsw-alias-bg-layer-3);color:var(--dsw-alias-label-primary);font-weight:600}.keMsGa_tenantList{flex-direction:column;gap:10px;display:flex}.keMsGa_tenantRow{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.keMsGa_tenantCurrent{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary) 55%, var(--dsw-alias-border-l2))}.keMsGa_tenantCopy{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.keMsGa_tenantMeta{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.keMsGa_tenantBadges{color:var(--dsw-alias-label-secondary);gap:6px;font-size:12px;display:flex}.keMsGa_tenantBadges>span{background:var(--dsw-alias-bg-layer-2);border-radius:999px;padding:2px 6px}.keMsGa_inlineInput{box-sizing:border-box;width:min(100%,280px);color:var(--dsw-alias-label-primary);font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:4px 7px;font-weight:600}.keMsGa_inlineInput:focus{border-color:var(--dsw-alias-brand-primary);outline:none}.keMsGa_cardTitle{color:var(--dsw-alias-label-primary);margin:0;font-size:14px;line-height:22px}.keMsGa_updateCommand{user-select:text;background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-primary);white-space:nowrap;border-radius:6px;padding:10px 12px;font-size:12px;display:block;overflow-x:auto}.keMsGa_title{margin:0;font-size:18px;font-weight:600;line-height:26px}.keMsGa_tabs{background:var(--dsw-alias-bg-layer-2);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.keMsGa_tabs button{min-height:36px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;padding:7px 12px;font-size:13px;line-height:20px}.keMsGa_tabs button:hover{color:var(--dsw-alias-label-primary)}.keMsGa_tabs button[aria-selected=true]{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);box-shadow:var(--dsw-shadow-lv1)}.keMsGa_intro,.keMsGa_description,.keMsGa_defaultValue,.keMsGa_notice,.keMsGa_status{margin:0;font-size:13px;line-height:20px}.keMsGa_intro,.keMsGa_description,.keMsGa_defaultValue{color:var(--dsw-alias-label-tertiary)}.keMsGa_card{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;gap:14px;padding:18px}.keMsGa_label{font-size:14px;font-weight:600;line-height:22px}.keMsGa_input{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;height:42px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:9px 12px;font-size:14px;line-height:22px}.keMsGa_input:focus{border-color:var(--dsw-alias-brand-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--dsw-alias-brand-primary) 18%, transparent);outline:none}.keMsGa_input:disabled{cursor:not-allowed;opacity:.55}.keMsGa_actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.keMsGa_status{min-height:20px;color:var(--dsw-alias-state-success-primary,var(--dsw-alias-label-secondary))}.keMsGa_error{color:var(--dsw-alias-state-error-primary)}.keMsGa_notice{background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-radius:8px;padding:12px 14px}.keMsGa_dangerZone{border:1px solid color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, var(--dsw-alias-border-l2));background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 5%, var(--dsw-alias-bg-layer-3));border-radius:8px;flex-direction:column;align-items:flex-start;gap:14px;padding:18px;display:flex}.keMsGa_dangerCopy{gap:6px}.keMsGa_dangerTitle,.keMsGa_dangerDescription,.keMsGa_clearWarning p,.keMsGa_confirmLabel{margin:0}.keMsGa_integrationCard{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-3);border-radius:8px;flex-direction:column;gap:12px;padding:18px;display:flex}.keMsGa_integrationHeader,.keMsGa_groupHeader,.keMsGa_integrationUrl{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.keMsGa_integrationHeader .keMsGa_dangerTitle{color:var(--dsw-alias-label-primary)}.keMsGa_closedNotice{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);border-radius:8px;flex-direction:column;gap:3px;padding:11px 12px;font-size:13px;line-height:20px;display:flex}.keMsGa_closedNotice strong{color:var(--dsw-alias-label-primary)}.keMsGa_textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;min-height:72px;color:var(--dsw-alias-label-primary);font:inherit;border-radius:8px;padding:9px 12px}.keMsGa_checkLabel{align-items:center;gap:8px;font-size:14px;display:flex}.keMsGa_groupRow{border:1px solid var(--dsw-alias-border-l2);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.keMsGa_groupSummary{align-items:flex-start;gap:12px;min-width:0;display:flex}.keMsGa_groupSummary>button{flex:none}.keMsGa_groupIdentity{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.keMsGa_groupName,.keMsGa_groupDid{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.keMsGa_groupDid{color:var(--dsw-alias-label-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.keMsGa_integrationUrl{background:var(--dsw-alias-bg-layer-2);border-radius:8px;align-items:center;gap:8px;padding:10px 8px 10px 10px}.keMsGa_integrationUrl code{overflow-wrap:anywhere;min-width:0}.keMsGa_integrationUrl>button{white-space:nowrap;flex:none;min-width:96px}.keMsGa_dangerTitle{color:var(--dsw-alias-state-error-primary);font-size:14px;font-weight:600;line-height:22px}.keMsGa_dangerDescription,.keMsGa_clearWarning,.keMsGa_confirmLabel{color:var(--dsw-alias-label-secondary);font-size:13px;line-height:20px}.keMsGa_dangerButton,.keMsGa_clearConfirmButton{border-color:color-mix(in srgb, var(--dsw-alias-state-error-primary) 55%, var(--dsw-alias-border-l2));color:var(--dsw-alias-state-error-primary)}.keMsGa_dangerButton:hover:not(:disabled),.keMsGa_clearConfirmButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}.keMsGa_clearDialog{width:min(480px,100%)}.keMsGa_clearWarning{background:var(--dsw-alias-interactive-bg-hover-danger);border-radius:8px;gap:10px;padding:12px 14px}.keMsGa_clearWarning p:first-child{color:var(--dsw-alias-state-error-primary);font-weight:600}.keMsGa_confirmLabel{color:var(--dsw-alias-label-primary);margin-top:18px}@media (width<=640px){.keMsGa_card{padding:16px}.keMsGa_actions>button{flex:1}.keMsGa_dangerButton{width:100%}.keMsGa_integrationHeader,.keMsGa_integrationUrl{flex-direction:column}.keMsGa_tenantRow{flex-direction:column;align-items:stretch}.keMsGa_tabs{justify-content:flex-start}[role=presentation]:has(>[role=dialog] .keMsGa_section){z-index:2000}[role=dialog][aria-modal=true]:has(.keMsGa_section){border-radius:20px;flex-direction:column;width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100dvh - 16px)}[role=dialog]:has(.keMsGa_section)>nav{gap:6px;width:100%;padding:12px 12px 0}[role=dialog]:has(.keMsGa_section)>nav>div:last-child{flex-direction:row;overflow-x:auto}[role=dialog]:has(.keMsGa_section)>nav button{flex:none}[role=dialog]:has(.keMsGa_section)>div{min-height:0}.keMsGa_section{width:100%;min-width:0}.keMsGa_tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}";
24463
24944
  const tagId = "@awiki/dsh-plugin/AwikiSettingsSection.module.css";
24464
24945
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
24465
24946
  const tag = document.createElement("style");
@@ -24620,7 +25101,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
24620
25101
  }),
24621
25102
  (0, react_jsx_runtime.jsx)("p", {
24622
25103
  className: _dsh_awiki_css_AwikiSettingsSection_module_css_default.description,
24623
- children: t("updateCurrent", { version: update?.currentPluginVersion ?? "0.3.18" })
25104
+ children: t("updateCurrent", { version: update?.currentPluginVersion ?? "0.3.19" })
24624
25105
  }),
24625
25106
  update !== void 0 && (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: update.currentModelProxyVersion !== void 0 && (0, react_jsx_runtime.jsx)("p", {
24626
25107
  className: _dsh_awiki_css_AwikiSettingsSection_module_css_default.description,
@@ -25052,6 +25533,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
25052
25533
  id: "updates",
25053
25534
  label: props.t("updatesTab")
25054
25535
  },
25536
+ {
25537
+ id: "features",
25538
+ label: props.t("featuresTab")
25539
+ },
25055
25540
  {
25056
25541
  id: "devices",
25057
25542
  label: props.t("devicesTab")
@@ -25060,16 +25545,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
25060
25545
  id: "local",
25061
25546
  label: props.t("localDataTab")
25062
25547
  },
25063
- {
25548
+ ...awiki.serverFeatures?.["services.guest_gateway"] === "supported" ? [{
25064
25549
  id: "integration",
25065
25550
  label: props.t("integrationTab")
25066
- }
25551
+ }] : []
25067
25552
  ];
25068
25553
  (0, react.useEffect)(() => {
25069
25554
  if (restricted && tab !== "tenants" && tab !== "updates") setTab("updates");
25070
25555
  }, [restricted, tab]);
25071
25556
  (0, react.useEffect)(() => {
25072
- if (!restricted && (tab === "devices" || tab === "integration") && awiki.status === "cold") props.loadAwiki();
25557
+ if (!restricted && (tab === "devices" || tab === "integration" || tab === "features") && awiki.status === "cold") props.loadAwiki();
25073
25558
  }, [
25074
25559
  awiki.status,
25075
25560
  props.loadAwiki,
@@ -25139,7 +25624,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
25139
25624
  className: `${_dsh_awiki_css_AwikiSettingsSection_module_css_default.status} ${_dsh_awiki_css_AwikiSettingsSection_module_css_default.error}`,
25140
25625
  role: "alert",
25141
25626
  children: awiki.error
25142
- }) : awiki.sessionStatus === "active" ? (0, react_jsx_runtime.jsx)(AwikiDevices, {
25627
+ }) : awiki.sessionStatus === "active" && awiki.serverFeatures?.["identity.multi_device"] === "supported" ? (0, react_jsx_runtime.jsx)(AwikiDevices, {
25143
25628
  active: true,
25144
25629
  pending: awiki.pending !== null,
25145
25630
  refreshDeviceManagement: props.refreshDeviceManagement,
@@ -25157,6 +25642,40 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
25157
25642
  className: _dsh_awiki_css_AwikiSettingsSection_module_css_default.notice,
25158
25643
  children: props.t("devicesUnavailable")
25159
25644
  })),
25645
+ !restricted && tab === "features" && (0, react_jsx_runtime.jsxs)("div", { children: [
25646
+ (0, react_jsx_runtime.jsx)("h3", { children: props.t("featuresTab") }),
25647
+ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
25648
+ onClick: () => {
25649
+ props.refreshBackendCapabilities?.();
25650
+ },
25651
+ children: props.t("featureRetry")
25652
+ }),
25653
+ Object.values(awiki.serverFeatureDiagnostics ?? {}).some((source) => source.refreshError === "upgrade_required") && (0, react_jsx_runtime.jsx)("p", { children: props.t("featureUpgradeRequired") }),
25654
+ Object.entries(awiki.serverFeatureDiagnostics ?? {}).map(([source, state]) => state.fetchedAt === void 0 ? null : (0, react_jsx_runtime.jsxs)("p", { children: [
25655
+ props.t("featureUpdatedAt"),
25656
+ ": ",
25657
+ (/* @__PURE__ */ new Date(state.fetchedAt * 1e3)).toLocaleString()
25658
+ ] }, source)),
25659
+ [
25660
+ "direct",
25661
+ "groups",
25662
+ "direct_e2ee",
25663
+ "identity.multi_device",
25664
+ "services.mail",
25665
+ "agents.managed_agents"
25666
+ ].map((key) => (0, react_jsx_runtime.jsxs)("p", { children: [
25667
+ props.t({
25668
+ direct: "featureChat",
25669
+ groups: "featureGroups",
25670
+ direct_e2ee: "featureEncryption",
25671
+ "identity.multi_device": "devicesTab",
25672
+ "services.mail": "featureMail",
25673
+ "agents.managed_agents": "featureAgents"
25674
+ }[key]),
25675
+ ": ",
25676
+ props.t(awiki.serverFeatures?.[key] === "supported" ? "featureSupported" : awiki.serverFeatures?.[key] === "unsupported" ? "featureUnsupported" : "featureUnknown")
25677
+ ] }, key))
25678
+ ] }),
25160
25679
  !restricted && tab === "local" && (0, react_jsx_runtime.jsx)(LocalDataPanel, {
25161
25680
  ...props,
25162
25681
  disabled: tenantSnapshot.status !== "ready" || tenantSnapshot.value.switching
@@ -26331,6 +26850,18 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
26331
26850
  //#region lib/types/client/settings-locales.js
26332
26851
  /** Bilingual copy for the AWiki identity and installation settings page. */
26333
26852
  const zh = {
26853
+ featuresTab: "服务器功能",
26854
+ featureChat: "消息",
26855
+ featureGroups: "群聊",
26856
+ featureEncryption: "加密聊天",
26857
+ featureMail: "邮件",
26858
+ featureAgents: "智能体",
26859
+ featureSupported: "可用",
26860
+ featureUnsupported: "此服务器暂不支持",
26861
+ featureUnknown: "尚未确认,请稍后重试。",
26862
+ featureRetry: "刷新服务器功能",
26863
+ featureUpgradeRequired: "服务器需要升级后才能确认功能。本机身份与历史仍可使用。",
26864
+ featureUpdatedAt: "上次确认",
26334
26865
  nav: "AWiki",
26335
26866
  intro: "管理 AWiki 身份、域名与本地数据设置。",
26336
26867
  tabsLabel: "AWiki 设置",
@@ -26377,7 +26908,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
26377
26908
  tenantDomain: "租户域名",
26378
26909
  tenantDomainHelp: "只填写纯域名。创建后端点与数据 Scope 将固定,不会随名称改变。",
26379
26910
  tenantCreate: "创建租户",
26380
- tenantCreated: "租户已创建。",
26911
+ tenantCreated: "服务器已添加,功能将在连接后确认。登录后可在“服务器功能”查看聊天与加密能力。",
26381
26912
  tenantOfficial: "官方",
26382
26913
  tenantCustom: "自定义",
26383
26914
  tenantCurrent: "当前",
@@ -26455,6 +26986,18 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
26455
26986
  integrationReopen: "创建新的公开入口"
26456
26987
  };
26457
26988
  const en = {
26989
+ featuresTab: "Server features",
26990
+ featureChat: "Messaging",
26991
+ featureGroups: "Group chats",
26992
+ featureEncryption: "Encrypted chats",
26993
+ featureMail: "Email",
26994
+ featureAgents: "Agents",
26995
+ featureSupported: "Available",
26996
+ featureUnsupported: "Not supported by this server",
26997
+ featureUnknown: "Not confirmed yet. Please retry.",
26998
+ featureRetry: "Refresh server features",
26999
+ featureUpgradeRequired: "The server needs an upgrade to confirm its features. Local identities and history remain available.",
27000
+ featureUpdatedAt: "Last confirmed",
26458
27001
  nav: "AWiki",
26459
27002
  intro: "Manage AWiki identity, domain, and local data settings.",
26460
27003
  tabsLabel: "AWiki settings",
@@ -26501,7 +27044,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
26501
27044
  tenantDomain: "Tenant domain",
26502
27045
  tenantDomainHelp: "Enter a bare domain. Its endpoint and storage scope become immutable after creation; renaming does not change either.",
26503
27046
  tenantCreate: "Create tenant",
26504
- tenantCreated: "Tenant created.",
27047
+ tenantCreated: "Server added. Features will be confirmed on connection. After signing in, see Server features for messaging and encryption.",
26505
27048
  tenantOfficial: "Official",
26506
27049
  tenantCustom: "Custom",
26507
27050
  tenantCurrent: "Current",
@@ -27268,6 +27811,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
27268
27811
  await settings.set(AWIKI_DOMAIN_FIELD, domain);
27269
27812
  },
27270
27813
  resetDomain: () => settings.unset(AWIKI_DOMAIN_FIELD),
27814
+ refreshBackendCapabilities: () => awiki.refreshBackendCapabilities(),
27271
27815
  createTenant: (displayName, domain) => settings.createTenant(displayName, domain),
27272
27816
  renameTenant: (tenantId, displayName) => settings.renameTenant(tenantId, displayName),
27273
27817
  switchTenant: (tenantId) => awiki.switchTenant(() => settings.switchTenant(tenantId)),