@awiki/dsh-plugin 0.3.7 → 0.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -71
- package/README.zh.md +89 -61
- package/THIRD_PARTY_NOTICES.md +1 -1
- package/cordis.patch.yml +6 -5
- package/lib/builtin-tenants.json +22 -0
- package/lib/builtin-tenants.sha256 +1 -0
- package/lib/client.js +7973 -2264
- package/lib/client.js.map +1 -1
- package/lib/index.js +3481 -1145
- package/lib/model-proxy-contract.js +11 -3
- package/lib/provider.js +73 -17
- package/lib/{sdk-adapter--trNlr-T.mjs → sdk-adapter-CYcJH7sM.mjs} +374 -101
- package/lib/typert.host.js +1595 -168
- package/lib/typert.remote-client.d.ts +43 -7
- package/lib/typert.remote-client.d.ts.map +1 -1
- package/lib/typert.remote-client.js +1595 -168
- package/lib/types/builtin-tenant-config.d.ts +19 -0
- package/lib/types/builtin-tenant-config.d.ts.map +1 -0
- package/lib/types/builtin-tenant-config.js +57 -0
- package/lib/types/builtin-tenant-config.js.map +1 -0
- package/lib/types/client/AwikiDeviceJoinReminder.d.ts +15 -0
- package/lib/types/client/AwikiDeviceJoinReminder.d.ts.map +1 -0
- package/lib/types/client/AwikiDeviceJoinReminder.js +74 -0
- package/lib/types/client/AwikiDeviceJoinReminder.js.map +1 -0
- package/lib/types/client/AwikiDevices.d.ts +33 -0
- package/lib/types/client/AwikiDevices.d.ts.map +1 -0
- package/lib/types/client/AwikiDevices.js +141 -0
- package/lib/types/client/AwikiDevices.js.map +1 -0
- package/lib/types/client/AwikiGroupDetails.d.ts.map +1 -1
- package/lib/types/client/AwikiGroupDetails.js +16 -13
- package/lib/types/client/AwikiGroupDetails.js.map +1 -1
- package/lib/types/client/AwikiIdentityAccess.d.ts +15 -8
- package/lib/types/client/AwikiIdentityAccess.d.ts.map +1 -1
- package/lib/types/client/AwikiIdentityAccess.js +203 -39
- package/lib/types/client/AwikiIdentityAccess.js.map +1 -1
- package/lib/types/client/AwikiIntegrationSettings.d.ts +21 -0
- package/lib/types/client/AwikiIntegrationSettings.d.ts.map +1 -0
- package/lib/types/client/AwikiIntegrationSettings.js +105 -0
- package/lib/types/client/AwikiIntegrationSettings.js.map +1 -0
- package/lib/types/client/AwikiMail.d.ts +1 -1
- package/lib/types/client/AwikiMail.d.ts.map +1 -1
- package/lib/types/client/AwikiMail.js +17 -137
- package/lib/types/client/AwikiMail.js.map +1 -1
- package/lib/types/client/AwikiOverlay.d.ts +0 -1
- package/lib/types/client/AwikiOverlay.d.ts.map +1 -1
- package/lib/types/client/AwikiOverlay.js +26 -28
- package/lib/types/client/AwikiOverlay.js.map +1 -1
- package/lib/types/client/AwikiProfileCard.d.ts.map +1 -1
- package/lib/types/client/AwikiProfileCard.js +17 -18
- package/lib/types/client/AwikiProfileCard.js.map +1 -1
- package/lib/types/client/AwikiRecoveryForm.d.ts +5 -1
- package/lib/types/client/AwikiRecoveryForm.d.ts.map +1 -1
- package/lib/types/client/AwikiRecoveryForm.js +73 -30
- package/lib/types/client/AwikiRecoveryForm.js.map +1 -1
- package/lib/types/client/AwikiSettingsSection.d.ts +28 -13
- package/lib/types/client/AwikiSettingsSection.d.ts.map +1 -1
- package/lib/types/client/AwikiSettingsSection.js +93 -61
- package/lib/types/client/AwikiSettingsSection.js.map +1 -1
- package/lib/types/client/AwikiUpdates.d.ts +10 -0
- package/lib/types/client/AwikiUpdates.d.ts.map +1 -0
- package/lib/types/client/AwikiUpdates.js +57 -0
- package/lib/types/client/AwikiUpdates.js.map +1 -0
- package/lib/types/client/awiki-client-bridge.d.ts +1 -1
- package/lib/types/client/awiki-client-bridge.d.ts.map +1 -1
- package/lib/types/client/awiki-client-bridge.js +4 -1
- package/lib/types/client/awiki-client-bridge.js.map +1 -1
- package/lib/types/client/controller.d.ts +84 -44
- package/lib/types/client/controller.d.ts.map +1 -1
- package/lib/types/client/controller.js +515 -309
- package/lib/types/client/controller.js.map +1 -1
- package/lib/types/client/drafts.d.ts +31 -0
- package/lib/types/client/drafts.d.ts.map +1 -0
- package/lib/types/client/drafts.js +94 -0
- package/lib/types/client/drafts.js.map +1 -0
- package/lib/types/client/image-cache.d.ts +2 -2
- package/lib/types/client/image-cache.d.ts.map +1 -1
- package/lib/types/client/image-cache.js +15 -2
- package/lib/types/client/image-cache.js.map +1 -1
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/index.js +63 -19
- package/lib/types/client/index.js.map +1 -1
- package/lib/types/client/integration-operation.d.ts +9 -0
- package/lib/types/client/integration-operation.d.ts.map +1 -0
- package/lib/types/client/integration-operation.js +54 -0
- package/lib/types/client/integration-operation.js.map +1 -0
- package/lib/types/client/mail-list-cache.d.ts +2 -0
- package/lib/types/client/mail-list-cache.d.ts.map +1 -1
- package/lib/types/client/mail-list-cache.js +18 -0
- package/lib/types/client/mail-list-cache.js.map +1 -1
- package/lib/types/client/otp-cooldown.d.ts +6 -0
- package/lib/types/client/otp-cooldown.d.ts.map +1 -0
- package/lib/types/client/otp-cooldown.js +18 -0
- package/lib/types/client/otp-cooldown.js.map +1 -0
- package/lib/types/client/settings-controller.d.ts +34 -0
- package/lib/types/client/settings-controller.d.ts.map +1 -1
- package/lib/types/client/settings-controller.js +182 -2
- package/lib/types/client/settings-controller.js.map +1 -1
- package/lib/types/client/settings-locales.d.ts +1 -1
- package/lib/types/client/settings-locales.d.ts.map +1 -1
- package/lib/types/client/settings-locales.js +192 -14
- package/lib/types/client/settings-locales.js.map +1 -1
- package/lib/types/client/slots.d.ts +20 -10
- package/lib/types/client/slots.d.ts.map +1 -1
- package/lib/types/client/slots.js +0 -1
- package/lib/types/client/slots.js.map +1 -1
- package/lib/types/conversation-preferences.d.ts.map +1 -1
- package/lib/types/conversation-preferences.js +0 -17
- package/lib/types/conversation-preferences.js.map +1 -1
- package/lib/types/desktop-distribution.d.ts +25 -0
- package/lib/types/desktop-distribution.d.ts.map +1 -0
- package/lib/types/desktop-distribution.js +57 -0
- package/lib/types/desktop-distribution.js.map +1 -0
- package/lib/types/domain.d.ts +1 -1
- package/lib/types/domain.d.ts.map +1 -1
- package/lib/types/domain.js +2 -1
- package/lib/types/domain.js.map +1 -1
- package/lib/types/index.d.ts +164 -41
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +1562 -529
- package/lib/types/index.js.map +1 -1
- package/lib/types/integration-client.d.ts +17 -0
- package/lib/types/integration-client.d.ts.map +1 -0
- package/lib/types/integration-client.js +233 -0
- package/lib/types/integration-client.js.map +1 -0
- package/lib/types/legacy-sent-mail-cache.d.ts +4 -0
- package/lib/types/legacy-sent-mail-cache.d.ts.map +1 -0
- package/lib/types/legacy-sent-mail-cache.js +29 -0
- package/lib/types/legacy-sent-mail-cache.js.map +1 -0
- package/lib/types/listener-state.d.ts +5 -3
- package/lib/types/listener-state.d.ts.map +1 -1
- package/lib/types/listener-state.js +28 -13
- package/lib/types/listener-state.js.map +1 -1
- package/lib/types/listener.d.ts +9 -32
- package/lib/types/listener.d.ts.map +1 -1
- package/lib/types/listener.js +11 -127
- package/lib/types/listener.js.map +1 -1
- package/lib/types/mail-list-client.d.ts +12 -0
- package/lib/types/mail-list-client.d.ts.map +1 -0
- package/lib/types/mail-list-client.js +254 -0
- package/lib/types/mail-list-client.js.map +1 -0
- package/lib/types/mail-recovery-observability.d.ts +8 -0
- package/lib/types/mail-recovery-observability.d.ts.map +1 -0
- package/lib/types/mail-recovery-observability.js +119 -0
- package/lib/types/mail-recovery-observability.js.map +1 -0
- package/lib/types/mail.d.ts +2 -28
- package/lib/types/mail.d.ts.map +1 -1
- package/lib/types/mail.js +2 -79
- package/lib/types/mail.js.map +1 -1
- package/lib/types/model-proxy-contract.d.ts.map +1 -1
- package/lib/types/model-proxy-contract.js +7 -0
- package/lib/types/model-proxy-contract.js.map +1 -1
- package/lib/types/package-version.generated.d.ts +4 -0
- package/lib/types/package-version.generated.d.ts.map +1 -0
- package/lib/types/package-version.generated.js +4 -0
- package/lib/types/package-version.generated.js.map +1 -0
- package/lib/types/profile-state.d.ts +2 -13
- package/lib/types/profile-state.d.ts.map +1 -1
- package/lib/types/profile-state.js +3 -20
- package/lib/types/profile-state.js.map +1 -1
- package/lib/types/provider-api.d.ts +134 -43
- package/lib/types/provider-api.d.ts.map +1 -1
- package/lib/types/provider.d.ts +8 -2
- package/lib/types/provider.d.ts.map +1 -1
- package/lib/types/provider.js +76 -16
- package/lib/types/provider.js.map +1 -1
- package/lib/types/realtime-supervisor.d.ts +60 -0
- package/lib/types/realtime-supervisor.d.ts.map +1 -0
- package/lib/types/realtime-supervisor.js +255 -0
- package/lib/types/realtime-supervisor.js.map +1 -0
- package/lib/types/sdk-adapter.d.ts +62 -11
- package/lib/types/sdk-adapter.d.ts.map +1 -1
- package/lib/types/sdk-adapter.js +285 -123
- package/lib/types/sdk-adapter.js.map +1 -1
- package/lib/types/settings-rpc-contract.d.ts +58 -0
- package/lib/types/settings-rpc-contract.d.ts.map +1 -1
- package/lib/types/settings-rpc-contract.js +103 -0
- package/lib/types/settings-rpc-contract.js.map +1 -1
- package/lib/types/settings-rpc.d.ts +14 -1
- package/lib/types/settings-rpc.d.ts.map +1 -1
- package/lib/types/settings-rpc.js +130 -1
- package/lib/types/settings-rpc.js.map +1 -1
- package/lib/types/tenant-registry.d.ts +74 -0
- package/lib/types/tenant-registry.d.ts.map +1 -0
- package/lib/types/tenant-registry.js +440 -0
- package/lib/types/tenant-registry.js.map +1 -0
- package/lib/types/tools.d.ts +1 -1
- package/lib/types/tools.d.ts.map +1 -1
- package/lib/types/tools.js +4 -20
- package/lib/types/tools.js.map +1 -1
- package/lib/types/types.d.ts +249 -66
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js.map +1 -1
- package/lib/types/update-policy.d.ts +51 -0
- package/lib/types/update-policy.d.ts.map +1 -0
- package/lib/types/update-policy.js +379 -0
- package/lib/types/update-policy.js.map +1 -0
- package/lib/types/version.d.ts +4 -0
- package/lib/types/version.d.ts.map +1 -0
- package/lib/types/version.js +44 -0
- package/lib/types/version.js.map +1 -0
- package/package.json +26 -8
- package/lib/types/base64.d.ts +0 -4
- package/lib/types/base64.d.ts.map +0 -1
- package/lib/types/base64.js +0 -28
- package/lib/types/base64.js.map +0 -1
- package/lib/types/client/mail-attachment.d.ts +0 -40
- package/lib/types/client/mail-attachment.d.ts.map +0 -1
- package/lib/types/client/mail-attachment.js +0 -187
- package/lib/types/client/mail-attachment.js.map +0 -1
- package/lib/types/sent-mail-store.d.ts +0 -27
- package/lib/types/sent-mail-store.d.ts.map +0 -1
- package/lib/types/sent-mail-store.js +0 -348
- package/lib/types/sent-mail-store.js.map +0 -1
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
const MAIL_INGRESS_CLASSIFICATIONS = new Set([
|
|
2
|
+
'reached',
|
|
3
|
+
'not_reached',
|
|
4
|
+
'unknown',
|
|
5
|
+
]);
|
|
6
|
+
const AUTH_STATUS_CLASSES = new Set([
|
|
7
|
+
'accepted',
|
|
8
|
+
'rejected',
|
|
9
|
+
'dependency_unavailable',
|
|
10
|
+
'unknown',
|
|
11
|
+
]);
|
|
12
|
+
const MAIL_CLOSED_CLASSIFICATIONS = new Set([
|
|
13
|
+
'success',
|
|
14
|
+
'authentication_rejected',
|
|
15
|
+
'dependency_unavailable',
|
|
16
|
+
'no_active_handle',
|
|
17
|
+
'multiple_active_handles',
|
|
18
|
+
'no_mailbox',
|
|
19
|
+
'owner_conflict',
|
|
20
|
+
'unknown',
|
|
21
|
+
]);
|
|
22
|
+
const STABLE_MACHINE_CODE = /^[a-z0-9](?:[a-z0-9._-]{0,126}[a-z0-9])?$/u;
|
|
23
|
+
const CLOSED_FAILURE_TUPLES = new Set([
|
|
24
|
+
'reached:rejected:authentication_rejected',
|
|
25
|
+
'reached:dependency_unavailable:dependency_unavailable',
|
|
26
|
+
'not_reached:dependency_unavailable:dependency_unavailable',
|
|
27
|
+
'reached:accepted:no_active_handle',
|
|
28
|
+
'reached:accepted:multiple_active_handles',
|
|
29
|
+
'reached:accepted:no_mailbox',
|
|
30
|
+
'reached:accepted:owner_conflict',
|
|
31
|
+
]);
|
|
32
|
+
function property(value, key) {
|
|
33
|
+
try {
|
|
34
|
+
return typeof value === 'object' && value !== null
|
|
35
|
+
? value[key]
|
|
36
|
+
: undefined;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function optionalProperty(value, key) {
|
|
43
|
+
try {
|
|
44
|
+
if (typeof value !== 'object' || value === null || !(key in value))
|
|
45
|
+
return { status: 'absent' };
|
|
46
|
+
return { status: 'present', value: value[key] };
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return { status: 'unreadable' };
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/** Copy only a complete upstream closed classification; arbitrary errors fail closed. */
|
|
53
|
+
export function mailRecoveryFailureFields(error) {
|
|
54
|
+
const ingress = property(error, 'mail_ingress_classification');
|
|
55
|
+
const authStatus = property(error, 'auth_status_class');
|
|
56
|
+
const closed = property(error, 'mail_closed_classification');
|
|
57
|
+
const retryable = property(error, 'retryable');
|
|
58
|
+
if (typeof ingress !== 'string' || !MAIL_INGRESS_CLASSIFICATIONS.has(ingress)
|
|
59
|
+
|| typeof authStatus !== 'string' || !AUTH_STATUS_CLASSES.has(authStatus)
|
|
60
|
+
|| typeof closed !== 'string' || !MAIL_CLOSED_CLASSIFICATIONS.has(closed)
|
|
61
|
+
|| ingress === 'unknown'
|
|
62
|
+
|| authStatus === 'unknown'
|
|
63
|
+
|| closed === 'unknown'
|
|
64
|
+
|| closed === 'success'
|
|
65
|
+
|| typeof retryable !== 'boolean')
|
|
66
|
+
return undefined;
|
|
67
|
+
const tuple = `${ingress}:${authStatus}:${closed}`;
|
|
68
|
+
if (!CLOSED_FAILURE_TUPLES.has(tuple))
|
|
69
|
+
return undefined;
|
|
70
|
+
const stableCode = optionalProperty(error, 'auth_stable_machine_code');
|
|
71
|
+
if (stableCode.status === 'unreadable'
|
|
72
|
+
|| (stableCode.status === 'present'
|
|
73
|
+
&& (typeof stableCode.value !== 'string' || !STABLE_MACHINE_CODE.test(stableCode.value)))
|
|
74
|
+
|| (stableCode.status === 'present' && authStatus === 'accepted'))
|
|
75
|
+
return undefined;
|
|
76
|
+
return {
|
|
77
|
+
mail_ingress_classification: ingress,
|
|
78
|
+
auth_status_class: authStatus,
|
|
79
|
+
...(stableCode.status === 'present'
|
|
80
|
+
? { auth_stable_machine_code: stableCode.value }
|
|
81
|
+
: {}),
|
|
82
|
+
retryable,
|
|
83
|
+
mail_closed_classification: closed,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
export function successfulMailRecoveryObservability() {
|
|
87
|
+
return {
|
|
88
|
+
current_principal_matches_recovery: true,
|
|
89
|
+
request_generation_classification: 'current',
|
|
90
|
+
mail_ingress_classification: 'reached',
|
|
91
|
+
auth_status_class: 'accepted',
|
|
92
|
+
retryable: false,
|
|
93
|
+
mail_closed_classification: 'success',
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export function failedMailRecoveryObservability(error) {
|
|
97
|
+
const fields = mailRecoveryFailureFields(error);
|
|
98
|
+
return {
|
|
99
|
+
current_principal_matches_recovery: true,
|
|
100
|
+
request_generation_classification: 'current',
|
|
101
|
+
...(fields ?? {
|
|
102
|
+
mail_ingress_classification: 'unknown',
|
|
103
|
+
auth_status_class: 'unknown',
|
|
104
|
+
retryable: false,
|
|
105
|
+
mail_closed_classification: 'unknown',
|
|
106
|
+
}),
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
export function fencedMailRecoveryObservability(currentPrincipalMatchesRecovery, requestGenerationClassification) {
|
|
110
|
+
return {
|
|
111
|
+
current_principal_matches_recovery: currentPrincipalMatchesRecovery,
|
|
112
|
+
request_generation_classification: requestGenerationClassification,
|
|
113
|
+
mail_ingress_classification: currentPrincipalMatchesRecovery ? 'unknown' : 'not_reached',
|
|
114
|
+
auth_status_class: 'unknown',
|
|
115
|
+
retryable: false,
|
|
116
|
+
mail_closed_classification: 'unknown',
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=mail-recovery-observability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-recovery-observability.js","sourceRoot":"","sources":["../../src/mail-recovery-observability.ts"],"names":[],"mappings":"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"}
|
package/lib/types/mail.d.ts
CHANGED
|
@@ -1,34 +1,8 @@
|
|
|
1
1
|
/** Host-owned validation for on-demand mail requests. */
|
|
2
|
-
import type {
|
|
3
|
-
export declare const MAIL_ATTACHMENT_SERVICE_MAX_COUNT = 10;
|
|
4
|
-
export declare const MAIL_ATTACHMENT_SERVICE_MAX_BYTES: number;
|
|
5
|
-
export declare const MAIL_ATTACHMENT_SERVICE_TOTAL_MAX_BYTES: number;
|
|
6
|
-
export interface AwikiMailAttachmentLimits {
|
|
7
|
-
readonly maxCount: number;
|
|
8
|
-
readonly maxBytes: number;
|
|
9
|
-
readonly totalMaxBytes: number;
|
|
10
|
-
}
|
|
11
|
-
export interface AwikiValidatedMailSendAttachment {
|
|
12
|
-
readonly fileName: string;
|
|
13
|
-
readonly contentType: string;
|
|
14
|
-
readonly sizeBytes: number;
|
|
15
|
-
readonly sha256: string;
|
|
16
|
-
readonly bytes: Uint8Array;
|
|
17
|
-
}
|
|
18
|
-
export interface AwikiValidatedMailSendRequest {
|
|
19
|
-
readonly to: readonly string[];
|
|
20
|
-
readonly cc: readonly string[];
|
|
21
|
-
readonly subject: string;
|
|
22
|
-
readonly bodyText: string;
|
|
23
|
-
readonly attachments: readonly AwikiValidatedMailSendAttachment[];
|
|
24
|
-
}
|
|
25
|
-
export declare const DEFAULT_MAIL_ATTACHMENT_LIMITS: AwikiMailAttachmentLimits;
|
|
26
|
-
export declare function mailAttachmentFileName(value: unknown): string;
|
|
27
|
-
export declare function mailAttachmentContentType(value: unknown): string;
|
|
2
|
+
import type { AwikiMailInboxRequest, AwikiMailMarkReadRequest, AwikiMailReadRequest, AwikiMailSendRequest } from './types.ts';
|
|
28
3
|
/** Resolve mailbox defaults before the provider is invoked. */
|
|
29
4
|
export declare function mailInboxRequest(request?: AwikiMailInboxRequest): AwikiMailInboxRequest;
|
|
30
5
|
export declare function mailReadRequest(request: AwikiMailReadRequest): AwikiMailReadRequest;
|
|
31
6
|
export declare function mailMarkReadRequest(request: AwikiMailMarkReadRequest): AwikiMailMarkReadRequest;
|
|
32
|
-
export declare function mailSendRequest(request: AwikiMailSendRequest
|
|
33
|
-
export declare function mailAttachmentDownloadRequest(request: AwikiMailAttachmentDownloadRequest): AwikiMailAttachmentDownloadRequest;
|
|
7
|
+
export declare function mailSendRequest(request: AwikiMailSendRequest): AwikiMailSendRequest;
|
|
34
8
|
//# sourceMappingURL=mail.d.ts.map
|
package/lib/types/mail.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/mail.ts"],"names":[],"mappings":"AAAA,yDAAyD;
|
|
1
|
+
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/mail.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EAExB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,YAAY,CAAA;AA6BnB,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,qBAA0B,GAAG,qBAAqB,CAS3F;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,oBAAoB,GAAG,oBAAoB,CAEnF;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,wBAAwB,GAAG,wBAAwB,CAO/F;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,oBAAoB,GAAG,oBAAoB,CAenF"}
|
package/lib/types/mail.js
CHANGED
|
@@ -1,17 +1,7 @@
|
|
|
1
1
|
/** Host-owned validation for on-demand mail requests. */
|
|
2
|
-
import { createHash } from 'node:crypto';
|
|
3
|
-
import { standardBase64Syntax } from "./base64.js";
|
|
4
2
|
const U32_MAX = 0xffff_ffff;
|
|
5
3
|
const MAX_MESSAGE_IDS = 100;
|
|
6
4
|
const MAX_RECIPIENTS = 20;
|
|
7
|
-
export const MAIL_ATTACHMENT_SERVICE_MAX_COUNT = 10;
|
|
8
|
-
export const MAIL_ATTACHMENT_SERVICE_MAX_BYTES = 10 * 1024 * 1024;
|
|
9
|
-
export const MAIL_ATTACHMENT_SERVICE_TOTAL_MAX_BYTES = 18 * 1024 * 1024;
|
|
10
|
-
export const DEFAULT_MAIL_ATTACHMENT_LIMITS = Object.freeze({
|
|
11
|
-
maxCount: MAIL_ATTACHMENT_SERVICE_MAX_COUNT,
|
|
12
|
-
maxBytes: MAIL_ATTACHMENT_SERVICE_MAX_BYTES,
|
|
13
|
-
totalMaxBytes: MAIL_ATTACHMENT_SERVICE_TOTAL_MAX_BYTES,
|
|
14
|
-
});
|
|
15
5
|
function reject() {
|
|
16
6
|
throw new TypeError('invalid AWiki mail request');
|
|
17
7
|
}
|
|
@@ -35,41 +25,6 @@ function address(value) {
|
|
|
35
25
|
reject();
|
|
36
26
|
return value;
|
|
37
27
|
}
|
|
38
|
-
export function mailAttachmentFileName(value) {
|
|
39
|
-
if (typeof value !== 'string'
|
|
40
|
-
|| value.length === 0
|
|
41
|
-
|| value.trim() !== value
|
|
42
|
-
|| value.replace(/[. ]+$/u, '') !== value
|
|
43
|
-
|| value === '.'
|
|
44
|
-
|| value === '..'
|
|
45
|
-
|| Buffer.byteLength(value, 'utf8') > 255
|
|
46
|
-
|| /[\\/\p{C}]/u.test(value))
|
|
47
|
-
reject();
|
|
48
|
-
return value;
|
|
49
|
-
}
|
|
50
|
-
export function mailAttachmentContentType(value) {
|
|
51
|
-
if (value === '')
|
|
52
|
-
return 'application/octet-stream';
|
|
53
|
-
if (typeof value !== 'string'
|
|
54
|
-
|| !/^[A-Za-z0-9!#$&^_.+-]+\/[A-Za-z0-9!#$&^_.+-]+$/u.test(value))
|
|
55
|
-
reject();
|
|
56
|
-
return value;
|
|
57
|
-
}
|
|
58
|
-
function attachmentBytes(value, sizeBytes, maxBytes) {
|
|
59
|
-
if (typeof value !== 'string')
|
|
60
|
-
reject();
|
|
61
|
-
const expectedEncodedLength = Math.ceil(sizeBytes / 3) * 4;
|
|
62
|
-
if (value.length !== expectedEncodedLength
|
|
63
|
-
|| value.length % 4 !== 0
|
|
64
|
-
|| !standardBase64Syntax(value))
|
|
65
|
-
reject();
|
|
66
|
-
const bytes = Buffer.from(value, 'base64');
|
|
67
|
-
if (bytes.byteLength !== sizeBytes || bytes.byteLength > maxBytes)
|
|
68
|
-
reject();
|
|
69
|
-
if (Buffer.from(bytes).toString('base64') !== value)
|
|
70
|
-
reject();
|
|
71
|
-
return bytes;
|
|
72
|
-
}
|
|
73
28
|
/** Resolve mailbox defaults before the provider is invoked. */
|
|
74
29
|
export function mailInboxRequest(request = {}) {
|
|
75
30
|
const folder = token(request.folder ?? 'inbox', 64);
|
|
@@ -96,7 +51,7 @@ export function mailMarkReadRequest(request) {
|
|
|
96
51
|
messageIds: request.messageIds.map(value => token(value, 2_048)),
|
|
97
52
|
};
|
|
98
53
|
}
|
|
99
|
-
export function mailSendRequest(request
|
|
54
|
+
export function mailSendRequest(request) {
|
|
100
55
|
if (!Array.isArray(request.to) || request.to.length === 0 || !Array.isArray(request.cc ?? []))
|
|
101
56
|
reject();
|
|
102
57
|
const to = request.to.map(address);
|
|
@@ -115,38 +70,6 @@ export function mailSendRequest(request, limits = DEFAULT_MAIL_ATTACHMENT_LIMITS
|
|
|
115
70
|
|| request.bodyText.trim().length === 0
|
|
116
71
|
|| Buffer.byteLength(request.bodyText, 'utf8') > 65_536)
|
|
117
72
|
reject();
|
|
118
|
-
|
|
119
|
-
reject();
|
|
120
|
-
let totalBytes = 0;
|
|
121
|
-
const attachments = (request.attachments ?? []).map((attachment) => {
|
|
122
|
-
if (typeof attachment !== 'object' || attachment === null || Array.isArray(attachment))
|
|
123
|
-
reject();
|
|
124
|
-
if (!Number.isSafeInteger(attachment.sizeBytes)
|
|
125
|
-
|| attachment.sizeBytes < 0
|
|
126
|
-
|| attachment.sizeBytes > limits.maxBytes)
|
|
127
|
-
reject();
|
|
128
|
-
const bytes = attachmentBytes(attachment.bytesBase64, attachment.sizeBytes, limits.maxBytes);
|
|
129
|
-
totalBytes += bytes.byteLength;
|
|
130
|
-
if (!Number.isSafeInteger(totalBytes) || totalBytes > limits.totalMaxBytes)
|
|
131
|
-
reject();
|
|
132
|
-
return {
|
|
133
|
-
fileName: mailAttachmentFileName(attachment.fileName),
|
|
134
|
-
contentType: mailAttachmentContentType(attachment.contentType),
|
|
135
|
-
sizeBytes: bytes.byteLength,
|
|
136
|
-
sha256: createHash('sha256').update(bytes).digest('hex'),
|
|
137
|
-
bytes,
|
|
138
|
-
};
|
|
139
|
-
});
|
|
140
|
-
return { to, cc, subject: request.subject, bodyText: request.bodyText, attachments };
|
|
141
|
-
}
|
|
142
|
-
export function mailAttachmentDownloadRequest(request) {
|
|
143
|
-
if (!Number.isSafeInteger(request.attachmentIndex)
|
|
144
|
-
|| request.attachmentIndex < 0
|
|
145
|
-
|| request.attachmentIndex > U32_MAX)
|
|
146
|
-
reject();
|
|
147
|
-
return {
|
|
148
|
-
localMessageId: token(request.localMessageId, 2_048),
|
|
149
|
-
attachmentIndex: request.attachmentIndex,
|
|
150
|
-
};
|
|
73
|
+
return { to, cc, subject: request.subject, bodyText: request.bodyText };
|
|
151
74
|
}
|
|
152
75
|
//# sourceMappingURL=mail.js.map
|
package/lib/types/mail.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/mail.ts"],"names":[],"mappings":"AAAA,yDAAyD;
|
|
1
|
+
{"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/mail.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-proxy-contract.d.ts","sourceRoot":"","sources":["../../src/model-proxy-contract.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAEnF,eAAO,MAAM,6BAA6B,uBAAuB,CAAA;AAEjE,eAAO,MAAM,+BAA+B;;;;;;;;CAQlC,CAAA;AAEV,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAA;IACxB,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAA;IACxC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,QAAQ,CAAC,YAAY,EAAE,QAAQ,GAAG,oBAAoB,CAAA;IACtD,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAA;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,YAAY,EAAE,QAAQ,GAAG,oBAAoB,CAAA;IACtD,QAAQ,CAAC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAA;IACxC,QAAQ,CAAC,sBAAsB,EAAE,4BAA4B,GAAG,IAAI,CAAA;IACpE,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,CAAA;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAA;CACnE;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,CAAA;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAA;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,4BAA4B,CAAA;CACvD;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;CACtB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,yBAAyB,GAAG,SAAS,CAIhG;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAqBxF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,EAAE,GAAG,SAAS,CAIxF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,4BAA4B,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"model-proxy-contract.d.ts","sourceRoot":"","sources":["../../src/model-proxy-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,7 @@ export function decodeModelProxyUsage(value) {
|
|
|
48
48
|
}
|
|
49
49
|
export function decodeRechargeOrder(value) {
|
|
50
50
|
if (!isRecord(value)
|
|
51
|
+
|| containsPrivateIdentityOwner(value)
|
|
51
52
|
|| typeof value.out_trade_no !== 'string'
|
|
52
53
|
|| !Number.isSafeInteger(value.amount_cents)
|
|
53
54
|
|| !['pending', 'paid', 'closed'].includes(String(value.status))
|
|
@@ -81,6 +82,7 @@ export function decodeCloseRechargeResult(value) {
|
|
|
81
82
|
}
|
|
82
83
|
function decodeAccount(value) {
|
|
83
84
|
if (!(isRecord(value)
|
|
85
|
+
&& !containsPrivateIdentityOwner(value)
|
|
84
86
|
&& typeof value.did === 'string'
|
|
85
87
|
&& Number.isSafeInteger(value.balance_cents)
|
|
86
88
|
&& typeof value.balance === 'string'
|
|
@@ -103,6 +105,7 @@ function decodeAccount(value) {
|
|
|
103
105
|
}
|
|
104
106
|
function decodeUsage(value) {
|
|
105
107
|
if (!(isRecord(value)
|
|
108
|
+
&& !containsPrivateIdentityOwner(value)
|
|
106
109
|
&& Number.isSafeInteger(value.id)
|
|
107
110
|
&& typeof value.endpoint === 'string'
|
|
108
111
|
&& typeof value.model === 'string'
|
|
@@ -129,6 +132,10 @@ function decodeUsage(value) {
|
|
|
129
132
|
created_at: value.created_at,
|
|
130
133
|
};
|
|
131
134
|
}
|
|
135
|
+
function containsPrivateIdentityOwner(value) {
|
|
136
|
+
return ['canonical_did', 'stable_subject_hash', 'path', 'proof'].some(key => key in value)
|
|
137
|
+
|| ('did' in value && !('balance_cents' in value));
|
|
138
|
+
}
|
|
132
139
|
function isRecord(value) {
|
|
133
140
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
134
141
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-proxy-contract.js","sourceRoot":"","sources":["../../src/model-proxy-contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-proxy-contract.js","sourceRoot":"","sources":["../../src/model-proxy-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-version.generated.d.ts","sourceRoot":"","sources":["../../src/package-version.generated.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,EAAG,QAAiB,CAAA;AAC1D,eAAO,MAAM,qCAAqC,EAAG,OAAgB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-version.generated.js","sourceRoot":"","sources":["../../src/package-version.generated.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,QAAiB,CAAA;AAC1D,MAAM,CAAC,MAAM,qCAAqC,GAAG,OAAgB,CAAA"}
|
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import type { Context } from '@deepseek-ai/cordis';
|
|
2
|
-
/**
|
|
3
|
-
* Resolve the active DSH profile without guessing it from argv or process type.
|
|
4
|
-
* Desktop's generation-scoped service is authoritative. Ordinary DSH has no
|
|
5
|
-
* corresponding service, so its Loader root is accepted only when it is the
|
|
6
|
-
* exact `$DSH_HOME/profiles/<name>` directory.
|
|
7
|
-
*/
|
|
2
|
+
/** Resolve only profile identities supplied by an authoritative DSH service or Loader directory. */
|
|
8
3
|
export declare function resolveAwikiProfileName(ctx: Context, dshHome: string): string | undefined;
|
|
9
|
-
/**
|
|
4
|
+
/** Preserve the historical fallback while isolating desktop/CLI profiles at the Host boundary. */
|
|
10
5
|
export declare function resolveAwikiStateRoot(ctx: Context, dshHome: string): string;
|
|
11
|
-
/**
|
|
12
|
-
* Keep the deployment-default tenant on its historical path while isolating
|
|
13
|
-
* every selected tenant beside it. Switching back therefore restores the
|
|
14
|
-
* original identity instead of rewriting or clearing cryptographic state.
|
|
15
|
-
*/
|
|
16
|
-
export declare function resolveAwikiTenantStateRoot(baseStateRoot: string, domain: string, baseDomain: string): string;
|
|
17
6
|
//# sourceMappingURL=profile-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-state.d.ts","sourceRoot":"","sources":["../../src/profile-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"profile-state.d.ts","sourceRoot":"","sources":["../../src/profile-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAiBlD,oGAAoG;AACpG,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBzF;AAED,kGAAkG;AAClG,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAK3E"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { fileURLToPath } from 'node:url';
|
|
2
2
|
import { basename, dirname, join, resolve } from 'node:path';
|
|
3
|
-
/** Match the profile-name boundary enforced by the DSH launcher. */
|
|
4
3
|
function assertProfileName(value, source) {
|
|
5
4
|
if (typeof value !== 'string' || value.length === 0
|
|
6
5
|
|| value.includes('/') || value.includes('\\')
|
|
@@ -9,12 +8,7 @@ function assertProfileName(value, source) {
|
|
|
9
8
|
}
|
|
10
9
|
return value;
|
|
11
10
|
}
|
|
12
|
-
/**
|
|
13
|
-
* Resolve the active DSH profile without guessing it from argv or process type.
|
|
14
|
-
* Desktop's generation-scoped service is authoritative. Ordinary DSH has no
|
|
15
|
-
* corresponding service, so its Loader root is accepted only when it is the
|
|
16
|
-
* exact `$DSH_HOME/profiles/<name>` directory.
|
|
17
|
-
*/
|
|
11
|
+
/** Resolve only profile identities supplied by an authoritative DSH service or Loader directory. */
|
|
18
12
|
export function resolveAwikiProfileName(ctx, dshHome) {
|
|
19
13
|
const desktopProfiles = ctx.get('desktopProfiles');
|
|
20
14
|
if (desktopProfiles !== undefined) {
|
|
@@ -35,24 +29,13 @@ export function resolveAwikiProfileName(ctx, dshHome) {
|
|
|
35
29
|
const profilesDir = resolve(dshHome, 'profiles');
|
|
36
30
|
if (dirname(profileDir) !== profilesDir)
|
|
37
31
|
return undefined;
|
|
38
|
-
|
|
39
|
-
return assertProfileName(name, 'Loader profile directory');
|
|
32
|
+
return assertProfileName(basename(profileDir), 'Loader profile directory');
|
|
40
33
|
}
|
|
41
|
-
/**
|
|
34
|
+
/** Preserve the historical fallback while isolating desktop/CLI profiles at the Host boundary. */
|
|
42
35
|
export function resolveAwikiStateRoot(ctx, dshHome) {
|
|
43
36
|
const profileName = resolveAwikiProfileName(ctx, dshHome);
|
|
44
37
|
return profileName === undefined
|
|
45
38
|
? join(dshHome, 'awiki', 'im-core')
|
|
46
39
|
: join(dshHome, 'awiki', profileName, 'im-core');
|
|
47
40
|
}
|
|
48
|
-
/**
|
|
49
|
-
* Keep the deployment-default tenant on its historical path while isolating
|
|
50
|
-
* every selected tenant beside it. Switching back therefore restores the
|
|
51
|
-
* original identity instead of rewriting or clearing cryptographic state.
|
|
52
|
-
*/
|
|
53
|
-
export function resolveAwikiTenantStateRoot(baseStateRoot, domain, baseDomain) {
|
|
54
|
-
if (domain === baseDomain)
|
|
55
|
-
return baseStateRoot;
|
|
56
|
-
return join(dirname(baseStateRoot), 'tenants', domain, basename(baseStateRoot));
|
|
57
|
-
}
|
|
58
41
|
//# sourceMappingURL=profile-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-state.js","sourceRoot":"","sources":["../../src/profile-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"profile-state.js","sourceRoot":"","sources":["../../src/profile-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAM5D,SAAS,iBAAiB,CAAC,KAAc,EAAE,MAAc;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;WAC9C,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;WAC3C,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QACjE,MAAM,IAAI,SAAS,CAAC,UAAU,MAAM,mCAAmC,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,uBAAuB,CAAC,GAAY,EAAE,OAAe;IACnE,MAAM,eAAe,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAoC,CAAA;IACrF,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,iBAAiB,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,yBAAyB,CAAC,CAAA;IACpF,CAAC;IACD,IAAI,UAAkB,CAAA;IACtB,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAC/C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACpC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,SAAS,CAAA;QAClD,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAChD,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,WAAW;QAAE,OAAO,SAAS,CAAA;IACzD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,0BAA0B,CAAC,CAAA;AAC5E,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,qBAAqB,CAAC,GAAY,EAAE,OAAe;IACjE,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACzD,OAAO,WAAW,KAAK,SAAS;QAC9B,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;AACpD,CAAC"}
|