@atcute/lexicons 1.2.10 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interfaces/blob.d.ts +23 -0
- package/dist/interfaces/blob.d.ts.map +1 -1
- package/dist/interfaces/blob.js +54 -0
- package/dist/interfaces/blob.js.map +1 -1
- package/dist/interfaces/index.d.ts +1 -1
- package/dist/interfaces/index.d.ts.map +1 -1
- package/dist/interfaces/index.js +1 -1
- package/dist/interfaces/index.js.map +1 -1
- package/dist/validations/index.d.ts +32 -3
- package/dist/validations/index.d.ts.map +1 -1
- package/dist/validations/index.js +87 -8
- package/dist/validations/index.js.map +1 -1
- package/lib/interfaces/blob.ts +78 -0
- package/lib/interfaces/index.ts +9 -1
- package/lib/validations/index.ts +120 -6
- package/package.json +1 -1
|
@@ -18,4 +18,27 @@ export interface LegacyBlob<TMime extends string = string> {
|
|
|
18
18
|
mimeType: TMime;
|
|
19
19
|
}
|
|
20
20
|
export declare const isLegacyBlob: (input: unknown) => input is LegacyBlob;
|
|
21
|
+
/**
|
|
22
|
+
* extracted blob reference from a record
|
|
23
|
+
*/
|
|
24
|
+
export interface BlobRef {
|
|
25
|
+
/** CID string */
|
|
26
|
+
cid: string;
|
|
27
|
+
mimeType: string;
|
|
28
|
+
/** self-reported size. -1 for legacy blobs */
|
|
29
|
+
size: number;
|
|
30
|
+
}
|
|
31
|
+
export interface CollectBlobsOptions {
|
|
32
|
+
/** include legacy blob references in results (default: false) */
|
|
33
|
+
allowLegacy?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* extracts all blob references from a record object, including in undeclared
|
|
37
|
+
* properties. by default only finds modern blobs; set `allowLegacy` to also
|
|
38
|
+
* include legacy blob formats.
|
|
39
|
+
* @param record record object to walk
|
|
40
|
+
* @param options collection options
|
|
41
|
+
* @returns array of blob references found
|
|
42
|
+
*/
|
|
43
|
+
export declare const collectBlobs: (record: unknown, options?: CollectBlobsOptions) => BlobRef[];
|
|
21
44
|
//# sourceMappingURL=blob.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,IAAI,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,KAAK,IAAI,IAYhD,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IACxD,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,EAAE,KAAK,CAAC;CAChB;AAED,eAAO,MAAM,YAAY,UAAW,OAAO,KAAG,KAAK,IAAI,UAUtD,CAAC"}
|
|
1
|
+
{"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,IAAI,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,KAAK,IAAI,IAYhD,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IACxD,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,EAAE,KAAK,CAAC;CAChB;AAED,eAAO,MAAM,YAAY,UAAW,OAAO,KAAG,KAAK,IAAI,UAUtD,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB,iBAAiB;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,mBAAmB;IACnC,iEAAiE;IACjE,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,WAAY,OAAO,YAAY,mBAAmB,KAAG,OAAO,EAoDpF,CAAC"}
|
package/dist/interfaces/blob.js
CHANGED
|
@@ -17,4 +17,58 @@ export const isLegacyBlob = (input) => {
|
|
|
17
17
|
typeof v.mimeType === 'string' &&
|
|
18
18
|
Object.keys(v).length === 2);
|
|
19
19
|
};
|
|
20
|
+
/**
|
|
21
|
+
* extracts all blob references from a record object, including in undeclared
|
|
22
|
+
* properties. by default only finds modern blobs; set `allowLegacy` to also
|
|
23
|
+
* include legacy blob formats.
|
|
24
|
+
* @param record record object to walk
|
|
25
|
+
* @param options collection options
|
|
26
|
+
* @returns array of blob references found
|
|
27
|
+
*/
|
|
28
|
+
export const collectBlobs = (record, options) => {
|
|
29
|
+
const allowLegacy = options?.allowLegacy === true;
|
|
30
|
+
const blobs = [];
|
|
31
|
+
const stack = [record];
|
|
32
|
+
const visited = new Set();
|
|
33
|
+
while (stack.length > 0) {
|
|
34
|
+
const value = stack.pop();
|
|
35
|
+
if (typeof value !== 'object' || value === null) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
if (visited.has(value)) {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
visited.add(value);
|
|
42
|
+
if (Array.isArray(value)) {
|
|
43
|
+
for (let i = value.length - 1; i >= 0; i--) {
|
|
44
|
+
stack.push(value[i]);
|
|
45
|
+
}
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if (isBlob(value)) {
|
|
49
|
+
blobs.push({
|
|
50
|
+
cid: value.ref.$link,
|
|
51
|
+
mimeType: value.mimeType,
|
|
52
|
+
size: value.size,
|
|
53
|
+
});
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
if (allowLegacy && isLegacyBlob(value)) {
|
|
57
|
+
blobs.push({
|
|
58
|
+
cid: value.cid,
|
|
59
|
+
mimeType: value.mimeType,
|
|
60
|
+
size: -1,
|
|
61
|
+
});
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
const keys = Object.keys(value);
|
|
65
|
+
for (let i = keys.length - 1; i >= 0; i--) {
|
|
66
|
+
const v = value[keys[i]];
|
|
67
|
+
if (v != null) {
|
|
68
|
+
stack.push(v);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return blobs;
|
|
73
|
+
};
|
|
20
74
|
//# sourceMappingURL=blob.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blob.js","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAC;AAYxD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE;IACvD,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACV,CAAC,CAAC,KAAK,KAAK,MAAM;QAClB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAC9B,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5B,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAC3B,CAAC;AACH,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAuB,EAAE;IACnE,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACV,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ;QACzB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAC3B,CAAC;AACH,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"blob.js","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { isBlob, isLegacyBlob, type Blob, type LegacyBlob } from './blob.ts';
|
|
1
|
+
export { collectBlobs, isBlob, isLegacyBlob, type Blob, type BlobRef, type CollectBlobsOptions, type LegacyBlob, } from './blob.ts';
|
|
2
2
|
export { isBytes, type Bytes } from './bytes.ts';
|
|
3
3
|
export { isCidLink, type CidLink } from './cid-link.ts';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,KAAK,IAAI,EACT,KAAK,OAAO,EACZ,KAAK,mBAAmB,EACxB,KAAK,UAAU,GACf,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/interfaces/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EACZ,MAAM,EACN,YAAY,GAKZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,OAAO,EAAc,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAC"}
|
|
@@ -68,6 +68,12 @@ export type IssueLeaf = {
|
|
|
68
68
|
code: 'invalid_bytes_size';
|
|
69
69
|
minSize: number;
|
|
70
70
|
maxSize: number;
|
|
71
|
+
} | {
|
|
72
|
+
code: 'invalid_blob_size';
|
|
73
|
+
maxSize: number;
|
|
74
|
+
} | {
|
|
75
|
+
code: 'invalid_blob_mime_type';
|
|
76
|
+
accept: readonly string[];
|
|
71
77
|
});
|
|
72
78
|
export type IssueTree = IssueLeaf | {
|
|
73
79
|
ok: false;
|
|
@@ -124,6 +130,14 @@ export type Issue = {
|
|
|
124
130
|
path: Key[];
|
|
125
131
|
minSize: number;
|
|
126
132
|
maxSize: number;
|
|
133
|
+
} | {
|
|
134
|
+
code: 'invalid_blob_size';
|
|
135
|
+
path: Key[];
|
|
136
|
+
maxSize: number;
|
|
137
|
+
} | {
|
|
138
|
+
code: 'invalid_blob_mime_type';
|
|
139
|
+
path: Key[];
|
|
140
|
+
accept: readonly string[];
|
|
127
141
|
};
|
|
128
142
|
export type Ok<T> = {
|
|
129
143
|
ok: true;
|
|
@@ -141,6 +155,7 @@ declare const kType: unique symbol;
|
|
|
141
155
|
type kType = typeof kType;
|
|
142
156
|
export declare const FLAG_EMPTY = 0;
|
|
143
157
|
export declare const FLAG_ABORT_EARLY: number;
|
|
158
|
+
export declare const FLAG_STRICT: number;
|
|
144
159
|
type MatcherResult = undefined | Ok<unknown> | IssueTree;
|
|
145
160
|
type Matcher = (input: unknown, flags: number) => MatcherResult;
|
|
146
161
|
type LexStandardSchemaResult<T extends BaseSchema> = StandardSchemaV1.Result<InferOutput<T>>;
|
|
@@ -167,9 +182,13 @@ export declare class ValidationError extends Error {
|
|
|
167
182
|
get message(): string;
|
|
168
183
|
get issues(): readonly Issue[];
|
|
169
184
|
}
|
|
170
|
-
export
|
|
171
|
-
|
|
172
|
-
|
|
185
|
+
export interface ValidationOptions {
|
|
186
|
+
/** enable strict blob validation (size, MIME type constraints, reject legacy blobs) */
|
|
187
|
+
strict?: boolean;
|
|
188
|
+
}
|
|
189
|
+
export declare const is: <const TSchema extends BaseSchema>(schema: TSchema, input: unknown, options?: ValidationOptions) => input is InferInput<TSchema>;
|
|
190
|
+
export declare const safeParse: <const TSchema extends BaseSchema>(schema: TSchema, input: unknown, options?: ValidationOptions) => ValidationResult<InferOutput<TSchema>>;
|
|
191
|
+
export declare const parse: <const TSchema extends BaseSchema>(schema: TSchema, input: unknown, options?: ValidationOptions) => InferOutput<TSchema>;
|
|
173
192
|
export interface BaseConstraint<TType = unknown> {
|
|
174
193
|
readonly kind: 'constraint';
|
|
175
194
|
readonly type: string;
|
|
@@ -253,6 +272,16 @@ export interface BlobSchema extends BaseSchema<interfaces.Blob | interfaces.Lega
|
|
|
253
272
|
readonly type: 'blob';
|
|
254
273
|
}
|
|
255
274
|
export declare const blob: () => BlobSchema;
|
|
275
|
+
export interface BlobSizeConstraint<TMaxSize extends number = number> extends BaseConstraint<interfaces.Blob> {
|
|
276
|
+
readonly type: 'blob_size';
|
|
277
|
+
readonly maxSize: TMaxSize;
|
|
278
|
+
}
|
|
279
|
+
export declare const blobSize: <const TMaxSize extends number>(maxSize: TMaxSize) => BlobSizeConstraint<TMaxSize>;
|
|
280
|
+
export interface BlobAcceptConstraint extends BaseConstraint<interfaces.Blob> {
|
|
281
|
+
readonly type: 'blob_accept';
|
|
282
|
+
readonly accept: readonly string[];
|
|
283
|
+
}
|
|
284
|
+
export declare const blobAccept: (accept: readonly string[]) => BlobAcceptConstraint;
|
|
256
285
|
export interface BytesSchema extends BaseSchema<interfaces.Bytes, interfaces.Bytes> {
|
|
257
286
|
readonly type: 'bytes';
|
|
258
287
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/validations/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAG9D,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK/C;;;;;GAKG;AACH,eAAO,IAAI,mBAAmB,SAAQ,CAAC;AAEvC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;AACrB,KAAK,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,CAAC;AAErD,KAAK,SAAS,GACX,SAAS,GACT,MAAM,GACN,WAAW,GACX,QAAQ,GACR,SAAS,GACT,SAAS,GACT,MAAM,GACN,OAAO,GACP,UAAU,GACV,QAAQ,GACR,OAAO,CAAC;AAEX,KAAK,eAAe,GAAG;IACtB,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;AAEjD,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACzC,KAAK,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3B,KAAK,cAAc,GAAG,MAAM,MAAM,CAAC;AAGnC,MAAM,MAAM,SAAS,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,cAAc,CAAA;CAAE,GAAG,CAC1D;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GACzD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,GACzD;IAAE,IAAI,EAAE,0BAA0B,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAChF;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACtE;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAClE,CAAC;AAEF,MAAM,MAAM,SAAS,GAClB,SAAS,GACT;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GACzD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,KAAK,GACd;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GACtE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACxE;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,GACtE;IAAE,IAAI,EAAE,0BAA0B,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7F;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACpF;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAcjF,MAAM,MAAM,EAAE,CAAC,CAAC,IAAI;IACnB,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,CAAC,CAAC;CACT,CAAC;AACF,MAAM,MAAM,GAAG,GAAG;IACjB,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,KAAK,IAAI,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAG9C,eAAO,MAAM,EAAE,GAAI,CAAC,SAAS,CAAC,KAAG,EAAE,CAAC,CAAC,CAEpC,CAAC;AAKF,OAAO,CAAC,MAAM,KAAK,EAAE,OAAO,MAAM,CAAC;AACnC,KAAK,KAAK,GAAG,OAAO,KAAK,CAAC;AAG1B,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAEvC,KAAK,aAAa,GAAG,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;AACzD,KAAK,OAAO,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,aAAa,CAAC;AAEhE,KAAK,uBAAuB,CAAC,CAAC,SAAS,UAAU,IAAI,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7F,UAAU,iBAAiB,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;IACxF,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM;IAC7D,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE9C,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;CAChD;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,UAAU,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,UAAU,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AA0H7E,qBAAa,eAAgB,SAAQ,KAAK;;IACzC,SAAkB,IAAI,qBAAqB;IAI3C,YAAY,SAAS,EAAE,SAAS,EAI/B;IAED,IAAa,OAAO,IAAI,MAAM,CAE7B;IAED,IAAI,MAAM,IAAI,SAAS,KAAK,EAAE,CAE7B;CACD;AAyBD,eAAO,MAAM,EAAE,GAAI,KAAK,CAAC,OAAO,SAAS,UAAU,UAC1C,OAAO,SACR,OAAO,KACZ,KAAK,IAAI,UAAU,CAAC,OAAO,CAG7B,CAAC;AAGF,eAAO,MAAM,SAAS,GAAI,KAAK,CAAC,OAAO,SAAS,UAAU,UACjD,OAAO,SACR,OAAO,KACZ,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAYvC,CAAC;AAEF,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,OAAO,SAAS,UAAU,UAC7C,OAAO,SACR,OAAO,KACZ,WAAW,CAAC,OAAO,CAYrB,CAAC;AAmDF,MAAM,WAAW,cAAc,CAAC,KAAK,GAAG,OAAO;IAC9C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,aAAa,CAAC;CAChE;AAED,KAAK,eAAe,CAAC,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAE/E,MAAM,MAAM,oBAAoB,CAC/B,KAAK,SAAS,UAAU,EACxB,YAAY,SAAS,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IACrD,KAAK,GAAG;IACX,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;CACnC,CAAC;AAGF,eAAO,MAAM,SAAS,GACrB,KAAK,SAAS,UAAU,EACxB,KAAK,CAAC,YAAY,SAAS,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAExD,KAAK,eACE,YAAY,KACvB,oBAAoB,CAAC,KAAK,EAAE,YAAY,CA2C1C,CAAC;AAIF,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;CACrB;AAGD,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,OAAO,SAAS,CAAC,KAAG,aAAa,CAAC,CAAC,CAyBpE,CAAC;AAEF,MAAM,WAAW,iBAAiB,CAAC,MAAM,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,CAAE,SAAQ,UAAU,CAC5F,MAAM,CAAC,MAAM,CAAC,CACd;IACA,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;AAGD,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,MAAM,SAAS,SAAS,OAAO,EAAE,UAC1D,MAAM,KACZ,iBAAiB,CAAC,MAAM,CAyB1B,CAAC;AAIF,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,OAAO,CAAC;IACzD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CACzB;AA2BD,eAAO,MAAM,OAAO,QAAO,aAE1B,CAAC;AAIF,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,MAAM,CAAC;IACxD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CACzB;AA+BD,eAAO,MAAM,OAAO,QAAO,aAE1B,CAAC;AAIF,MAAM,WAAW,sBAAsB,CACtC,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,IAAI,SAAS,MAAM,GAAG,MAAM,CAC3B,SAAQ,cAAc,CAAC,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;CACnB;AAGD,eAAO,MAAM,YAAY,EAAE;IAC1B,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,IAAI,SAAS,MAAM,EACpD,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,GACP,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;CA2CtC,CAAC;AAIF,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAC7E,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB,CACrC,OAAO,SAAS,MAAM,eAAe,GAAG,MAAM,eAAe,CAC5D,SAAQ,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CACzB;AA4BD,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,MAAM,GAAG,MAAM,OAAK,YAAY,CAAC,CAAC,CAElE,CAAC;AAwCF,eAAO,MAAM,qBAAqB,8CAA4E,CAAC;AAC/G,eAAO,MAAM,iBAAiB,uCAAiE,CAAC;AAChG,eAAO,MAAM,SAAS,oCAAsD,CAAC;AAC7E,eAAO,MAAM,cAAc,yCAAgE,CAAC;AAC5F,eAAO,MAAM,SAAS,oCAAsD,CAAC;AAC7E,eAAO,MAAM,YAAY,uCAA4D,CAAC;AACtF,eAAO,MAAM,kBAAkB,yCAAoE,CAAC;AACpG,eAAO,MAAM,UAAU,qCAAwD,CAAC;AAChF,eAAO,MAAM,eAAe,2CAAmE,CAAC;AAChG,eAAO,MAAM,SAAS,oCAAsD,CAAC;AAC7E,eAAO,MAAM,gBAAgB,oCAA6D,CAAC;AAI3F,MAAM,WAAW,sBAAsB,CACtC,UAAU,SAAS,MAAM,GAAG,MAAM,EAClC,UAAU,SAAS,MAAM,GAAG,MAAM,CACjC,SAAQ,cAAc,CAAC,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;CAC/B;AAGD,eAAO,MAAM,YAAY,EAAE;IAC1B,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACvF,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,KAAK,CAAC,UAAU,SAAS,MAAM,EAChE,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,GACb,sBAAsB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;CAyBlD,CAAC;AAEF,MAAM,WAAW,yBAAyB,CACzC,aAAa,SAAS,MAAM,GAAG,MAAM,EACrC,aAAa,SAAS,MAAM,GAAG,MAAM,CACpC,SAAQ,cAAc,CAAC,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;CACrC;AAGD,eAAO,MAAM,eAAe,EAAE;IAC7B,CAAC,KAAK,CAAC,aAAa,SAAS,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACnG,CAAC,KAAK,CAAC,aAAa,SAAS,MAAM,EAAE,KAAK,CAAC,aAAa,SAAS,MAAM,EACtE,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,aAAa,GAChB,yBAAyB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;CAyB3D,CAAC;AAIF,MAAM,WAAW,UAAW,SAAQ,UAAU,CAAC,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC;IACvG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AA0CD,eAAO,MAAM,IAAI,QAAO,UAEvB,CAAC;AAIF,MAAM,WAAW,WAAY,SAAQ,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;IAClF,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACvB;AA2BD,eAAO,MAAM,KAAK,QAAO,WAExB,CAAC;AAGF,MAAM,WAAW,mBAAmB,CACnC,UAAU,SAAS,MAAM,GAAG,MAAM,EAClC,UAAU,SAAS,MAAM,GAAG,MAAM,CACjC,SAAQ,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC7B;AAGD,eAAO,MAAM,SAAS,EAAE;IACvB,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACpF,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,KAAK,CAAC,UAAU,SAAS,MAAM,EAChE,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,GACb,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;CA+C/C,CAAC;AAIF,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;IACxF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC1B;AA2BD,eAAO,MAAM,OAAO,QAAO,aAE1B,CAAC;AAIF,MAAM,WAAW,cAAc,CAAC,KAAK,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,UAAU,CACxF,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,EACxB,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,CACzB;IACA,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;CACxB;AAGD,eAAO,MAAM,QAAQ,GAAI,KAAK,SAAS,UAAU,WAAW,KAAK,KAAG,cAAc,CAAC,KAAK,CAgBvF,CAAC;AAIF,MAAM,MAAM,YAAY,CAAC,KAAK,SAAS,UAAU,IAC9C,WAAW,CAAC,KAAK,CAAC,GAClB,CAAC,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC,GAC1B,SAAS,CAAC;AAEb,MAAM,MAAM,mBAAmB,CAC9B,KAAK,SAAS,UAAU,EACxB,QAAQ,SAAS,YAAY,CAAC,KAAK,CAAC,IACjC,SAAS,SAAS,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;AAErF,MAAM,WAAW,cAAc,CAC9B,KAAK,SAAS,UAAU,GAAG,UAAU,EACrC,QAAQ,SAAS,YAAY,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CACzD,SAAQ,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,SAAS,EAAE,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC3B;AAKD,eAAO,MAAM,QAAQ,EAAE;IACtB,CAAC,KAAK,SAAS,UAAU,EAAE,OAAO,EAAE,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7E,CAAC,KAAK,SAAS,UAAU,EAAE,QAAQ,SAAS,YAAY,CAAC,KAAK,CAAC,EAC9D,OAAO,EAAE,KAAK,EACd,YAAY,EAAE,QAAQ,GACpB,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;CAwBnC,CAAC;AAQF,MAAM,WAAW,WAAW,CAAC,KAAK,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC;IAC3G,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAErB,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,GAAG,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAA;KAAE,CAAC;CAC1E;AAYD,eAAO,MAAM,KAAK,GAAI,KAAK,SAAS,UAAU,QAAQ,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAG,WAAW,CAAC,KAAK,CA4D9F,CAAC;AAIF,MAAM,WAAW,qBAAqB,CACrC,UAAU,SAAS,MAAM,GAAG,MAAM,EAClC,UAAU,SAAS,MAAM,GAAG,MAAM,CACjC,SAAQ,cAAc,CAAC,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;CAC/B;AAGD,eAAO,MAAM,WAAW,EAAE;IACzB,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACtF,CAAC,KAAK,CAAC,UAAU,SAAS,MAAM,EAAE,KAAK,CAAC,UAAU,SAAS,MAAM,EAChE,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,GACb,qBAAqB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;CA+BjD,CAAC;AASF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACnD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAErD,MAAM,MAAM,uBAAuB,CAAC,MAAM,SAAS,WAAW,IAAI;KAChE,GAAG,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK;CACjF,CAAC,MAAM,MAAM,CAAC,CAAC;AAEhB,MAAM,MAAM,wBAAwB,CAAC,MAAM,SAAS,WAAW,IAAI;KACjE,GAAG,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,GAC1E,SAAS,SAAS,OAAO,GACxB,GAAG,GACH,KAAK,GACN,KAAK;CACR,CAAC,MAAM,MAAM,CAAC,CAAC;AAEhB,KAAK,gBAAgB,CAAC,MAAM,SAAS,WAAW,IAAI,OAAO,CAC1D;IACC,CAAC,UAAU,GAAG,IAAI,MAAM,MAAM,IAAI,GAAG,SAAS,uBAAuB,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,UAAU,CACvG,MAAM,CAAC,GAAG,CAAC,CACX;CACD,GAAG;IACH,CAAC,UAAU,GAAG,IAAI,MAAM,MAAM,IAAI,GAAG,SAAS,uBAAuB,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,UAAU,CACxG,MAAM,CAAC,GAAG,CAAC,CACX;CACD,CACD,CAAC;AAEF,KAAK,iBAAiB,CAAC,MAAM,SAAS,WAAW,IAAI,OAAO,CAC3D;IACC,CAAC,UAAU,GAAG,IAAI,MAAM,MAAM,IAAI,GAAG,SAAS,wBAAwB,CAAC,MAAM,CAAC,GAC3E,KAAK,GACL,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;CACjC,GAAG;IACH,CAAC,UAAU,GAAG,IAAI,MAAM,MAAM,IAAI,GAAG,SAAS,wBAAwB,CAAC,MAAM,CAAC,GAC3E,GAAG,GACH,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;CACpC,CACD,CAAC;AAEF,MAAM,WAAW,YAAY,CAAC,MAAM,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,UAAU,CACnG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACvB;IACA,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAKjC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAAC,GAAG,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAA;KAAE,CAAC;CACpF;AAmCD,eAAO,MAAM,MAAM,GAAI,MAAM,SAAS,gBAAgB,SAAS,MAAM,KAAG,YAAY,CAAC,MAAM,CA+K1F,CAAC;AAOF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;AAC3F,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;AAEjE,MAAM,WAAW,YAAY,CAAC,OAAO,SAAS,YAAY,EAAE,IAAI,SAAS,eAAe,CAAE,SAAQ,UAAU,CAC3G,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACvB;IACA,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAAC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;CAC1E;AAGD,eAAO,MAAM,MAAM,GAAI,IAAI,SAAS,eAAe,EAAE,OAAO,SAAS,YAAY,OAC3E,IAAI,UACD,OAAO,KACb,YAAY,CAAC,OAAO,EAAE,IAAI,CA8B5B,CAAC;AAIF,KAAK,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,CAAC;AAC1F,KAAK,YAAY,GAAG,SAAS,aAAa,EAAE,CAAC;AAE7C,KAAK,iBAAiB,CAAC,QAAQ,SAAS,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEpG,KAAK,kBAAkB,CAAC,QAAQ,SAAS,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEtG,MAAM,WAAW,aAAa,CAC7B,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,OAAO,SAAS,OAAO,GAAG,OAAO,CAChC,SAAQ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAAC,GAAG,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAA;KAAE,CAAC;CAC1F;AAOD,eAAO,MAAM,OAAO,EAAE;IACrB,CAAC,KAAK,CAAC,QAAQ,SAAS,YAAY,EAAE,OAAO,EAAE,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAClF,CAAC,KAAK,CAAC,QAAQ,SAAS,YAAY,EAAE,OAAO,SAAS,OAAO,EAC5D,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO,GACb,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;CA2EpC,CAAC;AAIF,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CACzB;AA2BD,eAAO,MAAM,OAAO,QAAO,aAE1B,CAAC;AAIF,MAAM,WAAW,gBAAgB,CAChC,OAAO,SAAS,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,aAAa;IAE3E,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,IAAI,CAAC;AAExE,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,aAAa,IACrD,CAAC,SAAS,gBAAgB,CAAC,MAAM,MAAM,CAAC,GACrC,UAAU,CAAC,MAAM,CAAC,GAClB,CAAC,SAAS,iBAAiB,GAC1B,IAAI,GACJ,CAAC,SAAS,IAAI,GACb,IAAI,GACJ,KAAK,CAAC;AAEZ,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,aAAa,IACtD,CAAC,SAAS,gBAAgB,CAAC,MAAM,MAAM,CAAC,GACrC,WAAW,CAAC,MAAM,CAAC,GACnB,CAAC,SAAS,iBAAiB,GAC1B,IAAI,GACJ,CAAC,SAAS,IAAI,GACb,IAAI,GACJ,KAAK,CAAC;AAIZ,MAAM,WAAW,qBAAqB,CACrC,OAAO,SAAS,YAAY,GAAG,IAAI,GAAG,YAAY,GAAG,IAAI,EACzD,MAAM,SAAS,aAAa,GAAG,aAAa,EAC5C,OAAO,SAAS,aAAa,GAAG,aAAa,EAC7C,KAAK,SAAS,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CACtC,SAAQ,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CACzB;AAGD,eAAO,MAAM,SAAS,GACrB,KAAK,SAAS,MAAM,CAAC,IAAI,EACzB,OAAO,SAAS,YAAY,GAAG,IAAI,EACnC,MAAM,SAAS,aAAa,EAC5B,OAAO,SAAS,aAAa,QAEvB,KAAK,WACF;IACR,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CAChB,KACC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAyCvD,CAAC;AAIF,MAAM,WAAW,iBAAiB,CACjC,OAAO,SAAS,YAAY,GAAG,IAAI,GAAG,YAAY,GAAG,IAAI,EACzD,OAAO,SAAS,aAAa,GAAG,aAAa,EAC7C,KAAK,SAAS,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CACtC,SAAQ,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CACzB;AAGD,eAAO,MAAM,KAAK,GACjB,KAAK,SAAS,MAAM,CAAC,IAAI,EACzB,OAAO,SAAS,YAAY,GAAG,IAAI,EACnC,OAAO,SAAS,aAAa,QAEvB,KAAK,WACF;IACR,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CAChB,KACC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAyB3C,CAAC;AAIF,MAAM,WAAW,wBAAwB,CACxC,OAAO,SAAS,YAAY,GAAG,IAAI,GAAG,YAAY,GAAG,IAAI,EACzD,QAAQ,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAChE,YAAY,CAAC,GAAG,CAAC,GACjB,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,GACvB,IAAI,EACP,KAAK,SAAS,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CACtC,SAAQ,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,GACxB,KAAK,SAAS,MAAM,CAAC,IAAI,EACzB,OAAO,SAAS,YAAY,GAAG,IAAI,EACnC,QAAQ,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,QAE7D,KAAK,WACF;IACR,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC3B,KACC,wBAAwB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAYnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/validations/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ export const ok = (value) => {
|
|
|
28
28
|
export const FLAG_EMPTY = 0;
|
|
29
29
|
// Don't continue validation if an error is encountered
|
|
30
30
|
export const FLAG_ABORT_EARLY = 1 << 0;
|
|
31
|
+
// Enable strict blob validation (size, MIME type constraints, reject legacy blobs)
|
|
32
|
+
export const FLAG_STRICT = 1 << 1;
|
|
31
33
|
// #region Schema runner
|
|
32
34
|
const cloneIssueWithPath = (issue, path) => {
|
|
33
35
|
const { ok: _ok, msg: _fmt, ...clone } = issue;
|
|
@@ -163,13 +165,21 @@ class ErrImpl {
|
|
|
163
165
|
}
|
|
164
166
|
}
|
|
165
167
|
// #__NO_SIDE_EFFECTS__
|
|
166
|
-
export const is = (schema, input) => {
|
|
167
|
-
|
|
168
|
+
export const is = (schema, input, options) => {
|
|
169
|
+
let flags = FLAG_ABORT_EARLY;
|
|
170
|
+
if (options?.strict) {
|
|
171
|
+
flags |= FLAG_STRICT;
|
|
172
|
+
}
|
|
173
|
+
const r = schema['~run'](input, flags);
|
|
168
174
|
return r === undefined || r.ok;
|
|
169
175
|
};
|
|
170
176
|
// #__NO_SIDE_EFFECTS__
|
|
171
|
-
export const safeParse = (schema, input) => {
|
|
172
|
-
|
|
177
|
+
export const safeParse = (schema, input, options) => {
|
|
178
|
+
let flags = FLAG_EMPTY;
|
|
179
|
+
if (options?.strict) {
|
|
180
|
+
flags |= FLAG_STRICT;
|
|
181
|
+
}
|
|
182
|
+
const r = schema['~run'](input, flags);
|
|
173
183
|
if (r === undefined) {
|
|
174
184
|
return ok(input);
|
|
175
185
|
}
|
|
@@ -178,8 +188,12 @@ export const safeParse = (schema, input) => {
|
|
|
178
188
|
}
|
|
179
189
|
return new ErrImpl(r);
|
|
180
190
|
};
|
|
181
|
-
export const parse = (schema, input) => {
|
|
182
|
-
|
|
191
|
+
export const parse = (schema, input, options) => {
|
|
192
|
+
let flags = FLAG_EMPTY;
|
|
193
|
+
if (options?.strict) {
|
|
194
|
+
flags |= FLAG_STRICT;
|
|
195
|
+
}
|
|
196
|
+
const r = schema['~run'](input, flags);
|
|
183
197
|
if (r === undefined) {
|
|
184
198
|
return input;
|
|
185
199
|
}
|
|
@@ -540,14 +554,14 @@ const ISSUE_EXPECTED_BLOB = {
|
|
|
540
554
|
const BLOB_SCHEMA = {
|
|
541
555
|
kind: 'schema',
|
|
542
556
|
type: 'blob',
|
|
543
|
-
'~run'(input,
|
|
557
|
+
'~run'(input, flags) {
|
|
544
558
|
if (typeof input !== 'object' || input === null) {
|
|
545
559
|
return ISSUE_EXPECTED_BLOB;
|
|
546
560
|
}
|
|
547
561
|
if (interfaces.isBlob(input)) {
|
|
548
562
|
return undefined;
|
|
549
563
|
}
|
|
550
|
-
if (interfaces.isLegacyBlob(input)) {
|
|
564
|
+
if (!(flags & FLAG_STRICT) && interfaces.isLegacyBlob(input)) {
|
|
551
565
|
const blob = {
|
|
552
566
|
$type: 'blob',
|
|
553
567
|
mimeType: input.mimeType,
|
|
@@ -566,6 +580,71 @@ const BLOB_SCHEMA = {
|
|
|
566
580
|
export const blob = () => {
|
|
567
581
|
return BLOB_SCHEMA;
|
|
568
582
|
};
|
|
583
|
+
// #__NO_SIDE_EFFECTS__
|
|
584
|
+
export const blobSize = (maxSize) => {
|
|
585
|
+
const issue = {
|
|
586
|
+
ok: false,
|
|
587
|
+
code: 'invalid_blob_size',
|
|
588
|
+
maxSize: maxSize,
|
|
589
|
+
msg() {
|
|
590
|
+
return `blob size must not exceed ${maxSize} bytes`;
|
|
591
|
+
},
|
|
592
|
+
};
|
|
593
|
+
return {
|
|
594
|
+
kind: 'constraint',
|
|
595
|
+
type: 'blob_size',
|
|
596
|
+
maxSize: maxSize,
|
|
597
|
+
'~run'(input, flags) {
|
|
598
|
+
if (!(flags & FLAG_STRICT)) {
|
|
599
|
+
return undefined;
|
|
600
|
+
}
|
|
601
|
+
if (input.size > maxSize) {
|
|
602
|
+
return issue;
|
|
603
|
+
}
|
|
604
|
+
return undefined;
|
|
605
|
+
},
|
|
606
|
+
};
|
|
607
|
+
};
|
|
608
|
+
// #__NO_SIDE_EFFECTS__
|
|
609
|
+
export const blobAccept = (accept) => {
|
|
610
|
+
const normalized = accept.map((p) => p.toLowerCase());
|
|
611
|
+
const issue = {
|
|
612
|
+
ok: false,
|
|
613
|
+
code: 'invalid_blob_mime_type',
|
|
614
|
+
accept: accept,
|
|
615
|
+
msg() {
|
|
616
|
+
return `blob MIME type must match: ${accept.join(', ')}`;
|
|
617
|
+
},
|
|
618
|
+
};
|
|
619
|
+
return {
|
|
620
|
+
kind: 'constraint',
|
|
621
|
+
type: 'blob_accept',
|
|
622
|
+
accept: accept,
|
|
623
|
+
'~run'(input, flags) {
|
|
624
|
+
if (!(flags & FLAG_STRICT)) {
|
|
625
|
+
return undefined;
|
|
626
|
+
}
|
|
627
|
+
const mimeType = input.mimeType.toLowerCase();
|
|
628
|
+
for (let idx = 0, len = normalized.length; idx < len; idx++) {
|
|
629
|
+
const pattern = normalized[idx];
|
|
630
|
+
if (pattern === '*/*') {
|
|
631
|
+
return undefined;
|
|
632
|
+
}
|
|
633
|
+
if (pattern.endsWith('/*')) {
|
|
634
|
+
if (mimeType.startsWith(pattern.slice(0, -1))) {
|
|
635
|
+
return undefined;
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
else {
|
|
639
|
+
if (mimeType === pattern) {
|
|
640
|
+
return undefined;
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
return issue;
|
|
645
|
+
},
|
|
646
|
+
};
|
|
647
|
+
};
|
|
569
648
|
const ISSUE_EXPECTED_BYTES = {
|
|
570
649
|
ok: false,
|
|
571
650
|
code: 'invalid_type',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/validations/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/validations/index.ts"],"names":[],"mappings":"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"}
|
package/lib/interfaces/blob.ts
CHANGED
|
@@ -45,3 +45,81 @@ export const isLegacyBlob = (input: unknown): input is LegacyBlob => {
|
|
|
45
45
|
Object.keys(v).length === 2
|
|
46
46
|
);
|
|
47
47
|
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* extracted blob reference from a record
|
|
51
|
+
*/
|
|
52
|
+
export interface BlobRef {
|
|
53
|
+
/** CID string */
|
|
54
|
+
cid: string;
|
|
55
|
+
mimeType: string;
|
|
56
|
+
/** self-reported size. -1 for legacy blobs */
|
|
57
|
+
size: number;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export interface CollectBlobsOptions {
|
|
61
|
+
/** include legacy blob references in results (default: false) */
|
|
62
|
+
allowLegacy?: boolean;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* extracts all blob references from a record object, including in undeclared
|
|
67
|
+
* properties. by default only finds modern blobs; set `allowLegacy` to also
|
|
68
|
+
* include legacy blob formats.
|
|
69
|
+
* @param record record object to walk
|
|
70
|
+
* @param options collection options
|
|
71
|
+
* @returns array of blob references found
|
|
72
|
+
*/
|
|
73
|
+
export const collectBlobs = (record: unknown, options?: CollectBlobsOptions): BlobRef[] => {
|
|
74
|
+
const allowLegacy = options?.allowLegacy === true;
|
|
75
|
+
const blobs: BlobRef[] = [];
|
|
76
|
+
const stack: unknown[] = [record];
|
|
77
|
+
const visited = new Set<object>();
|
|
78
|
+
|
|
79
|
+
while (stack.length > 0) {
|
|
80
|
+
const value = stack.pop();
|
|
81
|
+
|
|
82
|
+
if (typeof value !== 'object' || value === null) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
if (visited.has(value)) {
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
visited.add(value);
|
|
89
|
+
|
|
90
|
+
if (Array.isArray(value)) {
|
|
91
|
+
for (let i = value.length - 1; i >= 0; i--) {
|
|
92
|
+
stack.push(value[i]);
|
|
93
|
+
}
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
if (isBlob(value)) {
|
|
98
|
+
blobs.push({
|
|
99
|
+
cid: value.ref.$link,
|
|
100
|
+
mimeType: value.mimeType,
|
|
101
|
+
size: value.size,
|
|
102
|
+
});
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
if (allowLegacy && isLegacyBlob(value)) {
|
|
107
|
+
blobs.push({
|
|
108
|
+
cid: value.cid,
|
|
109
|
+
mimeType: value.mimeType,
|
|
110
|
+
size: -1,
|
|
111
|
+
});
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const keys = Object.keys(value);
|
|
116
|
+
for (let i = keys.length - 1; i >= 0; i--) {
|
|
117
|
+
const v = (value as Record<string, unknown>)[keys[i]];
|
|
118
|
+
if (v != null) {
|
|
119
|
+
stack.push(v);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return blobs;
|
|
125
|
+
};
|
package/lib/interfaces/index.ts
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export {
|
|
2
|
+
collectBlobs,
|
|
3
|
+
isBlob,
|
|
4
|
+
isLegacyBlob,
|
|
5
|
+
type Blob,
|
|
6
|
+
type BlobRef,
|
|
7
|
+
type CollectBlobsOptions,
|
|
8
|
+
type LegacyBlob,
|
|
9
|
+
} from './blob.ts';
|
|
2
10
|
export { isBytes, type Bytes } from './bytes.ts';
|
|
3
11
|
export { isCidLink, type CidLink } from './cid-link.ts';
|
package/lib/validations/index.ts
CHANGED
|
@@ -68,6 +68,8 @@ export type IssueLeaf = { ok: false; msg: IssueFormatter } & (
|
|
|
68
68
|
| { code: 'invalid_string_length'; minLength: number; maxLength: number }
|
|
69
69
|
| { code: 'invalid_array_length'; minLength: number; maxLength: number }
|
|
70
70
|
| { code: 'invalid_bytes_size'; minSize: number; maxSize: number }
|
|
71
|
+
| { code: 'invalid_blob_size'; maxSize: number }
|
|
72
|
+
| { code: 'invalid_blob_mime_type'; accept: readonly string[] }
|
|
71
73
|
);
|
|
72
74
|
|
|
73
75
|
export type IssueTree =
|
|
@@ -85,7 +87,9 @@ export type Issue =
|
|
|
85
87
|
| { code: 'invalid_string_graphemes'; path: Key[]; minGraphemes: number; maxGraphemes: number }
|
|
86
88
|
| { code: 'invalid_string_length'; path: Key[]; minLength: number; maxLength: number }
|
|
87
89
|
| { code: 'invalid_array_length'; path: Key[]; minLength: number; maxLength: number }
|
|
88
|
-
| { code: 'invalid_bytes_size'; path: Key[]; minSize: number; maxSize: number }
|
|
90
|
+
| { code: 'invalid_bytes_size'; path: Key[]; minSize: number; maxSize: number }
|
|
91
|
+
| { code: 'invalid_blob_size'; path: Key[]; maxSize: number }
|
|
92
|
+
| { code: 'invalid_blob_mime_type'; path: Key[]; accept: readonly string[] };
|
|
89
93
|
|
|
90
94
|
// #__NO_SIDE_EFFECTS__
|
|
91
95
|
const joinIssues = (left: IssueTree | undefined, right: IssueTree): IssueTree => {
|
|
@@ -127,6 +131,8 @@ type kType = typeof kType;
|
|
|
127
131
|
export const FLAG_EMPTY = 0;
|
|
128
132
|
// Don't continue validation if an error is encountered
|
|
129
133
|
export const FLAG_ABORT_EARLY = 1 << 0;
|
|
134
|
+
// Enable strict blob validation (size, MIME type constraints, reject legacy blobs)
|
|
135
|
+
export const FLAG_STRICT = 1 << 1;
|
|
130
136
|
|
|
131
137
|
type MatcherResult = undefined | Ok<unknown> | IssueTree;
|
|
132
138
|
type Matcher = (input: unknown, flags: number) => MatcherResult;
|
|
@@ -313,12 +319,22 @@ class ErrImpl implements Err {
|
|
|
313
319
|
}
|
|
314
320
|
}
|
|
315
321
|
|
|
322
|
+
export interface ValidationOptions {
|
|
323
|
+
/** enable strict blob validation (size, MIME type constraints, reject legacy blobs) */
|
|
324
|
+
strict?: boolean;
|
|
325
|
+
}
|
|
326
|
+
|
|
316
327
|
// #__NO_SIDE_EFFECTS__
|
|
317
328
|
export const is = <const TSchema extends BaseSchema>(
|
|
318
329
|
schema: TSchema,
|
|
319
330
|
input: unknown,
|
|
331
|
+
options?: ValidationOptions,
|
|
320
332
|
): input is InferInput<TSchema> => {
|
|
321
|
-
|
|
333
|
+
let flags = FLAG_ABORT_EARLY;
|
|
334
|
+
if (options?.strict) {
|
|
335
|
+
flags |= FLAG_STRICT;
|
|
336
|
+
}
|
|
337
|
+
const r = schema['~run'](input, flags);
|
|
322
338
|
return r === undefined || r.ok;
|
|
323
339
|
};
|
|
324
340
|
|
|
@@ -326,8 +342,13 @@ export const is = <const TSchema extends BaseSchema>(
|
|
|
326
342
|
export const safeParse = <const TSchema extends BaseSchema>(
|
|
327
343
|
schema: TSchema,
|
|
328
344
|
input: unknown,
|
|
345
|
+
options?: ValidationOptions,
|
|
329
346
|
): ValidationResult<InferOutput<TSchema>> => {
|
|
330
|
-
|
|
347
|
+
let flags = FLAG_EMPTY;
|
|
348
|
+
if (options?.strict) {
|
|
349
|
+
flags |= FLAG_STRICT;
|
|
350
|
+
}
|
|
351
|
+
const r = schema['~run'](input, flags);
|
|
331
352
|
|
|
332
353
|
if (r === undefined) {
|
|
333
354
|
return ok(input as InferOutput<TSchema>);
|
|
@@ -343,8 +364,13 @@ export const safeParse = <const TSchema extends BaseSchema>(
|
|
|
343
364
|
export const parse = <const TSchema extends BaseSchema>(
|
|
344
365
|
schema: TSchema,
|
|
345
366
|
input: unknown,
|
|
367
|
+
options?: ValidationOptions,
|
|
346
368
|
): InferOutput<TSchema> => {
|
|
347
|
-
|
|
369
|
+
let flags = FLAG_EMPTY;
|
|
370
|
+
if (options?.strict) {
|
|
371
|
+
flags |= FLAG_STRICT;
|
|
372
|
+
}
|
|
373
|
+
const r = schema['~run'](input, flags);
|
|
348
374
|
|
|
349
375
|
if (r === undefined) {
|
|
350
376
|
return input as InferOutput<TSchema>;
|
|
@@ -886,7 +912,7 @@ const ISSUE_EXPECTED_BLOB: IssueLeaf = {
|
|
|
886
912
|
const BLOB_SCHEMA: BlobSchema = {
|
|
887
913
|
kind: 'schema',
|
|
888
914
|
type: 'blob',
|
|
889
|
-
'~run'(input,
|
|
915
|
+
'~run'(input, flags) {
|
|
890
916
|
if (typeof input !== 'object' || input === null) {
|
|
891
917
|
return ISSUE_EXPECTED_BLOB;
|
|
892
918
|
}
|
|
@@ -895,7 +921,7 @@ const BLOB_SCHEMA: BlobSchema = {
|
|
|
895
921
|
return undefined;
|
|
896
922
|
}
|
|
897
923
|
|
|
898
|
-
if (interfaces.isLegacyBlob(input)) {
|
|
924
|
+
if (!(flags & FLAG_STRICT) && interfaces.isLegacyBlob(input)) {
|
|
899
925
|
const blob: interfaces.Blob = {
|
|
900
926
|
$type: 'blob',
|
|
901
927
|
mimeType: input.mimeType,
|
|
@@ -918,6 +944,94 @@ export const blob = (): BlobSchema => {
|
|
|
918
944
|
return BLOB_SCHEMA;
|
|
919
945
|
};
|
|
920
946
|
|
|
947
|
+
// #region Blob constraints
|
|
948
|
+
|
|
949
|
+
export interface BlobSizeConstraint<
|
|
950
|
+
TMaxSize extends number = number,
|
|
951
|
+
> extends BaseConstraint<interfaces.Blob> {
|
|
952
|
+
readonly type: 'blob_size';
|
|
953
|
+
readonly maxSize: TMaxSize;
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
// #__NO_SIDE_EFFECTS__
|
|
957
|
+
export const blobSize = <const TMaxSize extends number>(maxSize: TMaxSize): BlobSizeConstraint<TMaxSize> => {
|
|
958
|
+
const issue: IssueLeaf = {
|
|
959
|
+
ok: false,
|
|
960
|
+
code: 'invalid_blob_size',
|
|
961
|
+
maxSize: maxSize,
|
|
962
|
+
msg() {
|
|
963
|
+
return `blob size must not exceed ${maxSize} bytes`;
|
|
964
|
+
},
|
|
965
|
+
};
|
|
966
|
+
|
|
967
|
+
return {
|
|
968
|
+
kind: 'constraint',
|
|
969
|
+
type: 'blob_size',
|
|
970
|
+
maxSize: maxSize,
|
|
971
|
+
'~run'(input, flags) {
|
|
972
|
+
if (!(flags & FLAG_STRICT)) {
|
|
973
|
+
return undefined;
|
|
974
|
+
}
|
|
975
|
+
if ((input as interfaces.Blob).size > maxSize) {
|
|
976
|
+
return issue;
|
|
977
|
+
}
|
|
978
|
+
return undefined;
|
|
979
|
+
},
|
|
980
|
+
};
|
|
981
|
+
};
|
|
982
|
+
|
|
983
|
+
export interface BlobAcceptConstraint extends BaseConstraint<interfaces.Blob> {
|
|
984
|
+
readonly type: 'blob_accept';
|
|
985
|
+
readonly accept: readonly string[];
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
// #__NO_SIDE_EFFECTS__
|
|
989
|
+
export const blobAccept = (accept: readonly string[]): BlobAcceptConstraint => {
|
|
990
|
+
const normalized = accept.map((p) => p.toLowerCase());
|
|
991
|
+
|
|
992
|
+
const issue: IssueLeaf = {
|
|
993
|
+
ok: false,
|
|
994
|
+
code: 'invalid_blob_mime_type',
|
|
995
|
+
accept: accept,
|
|
996
|
+
msg() {
|
|
997
|
+
return `blob MIME type must match: ${accept.join(', ')}`;
|
|
998
|
+
},
|
|
999
|
+
};
|
|
1000
|
+
|
|
1001
|
+
return {
|
|
1002
|
+
kind: 'constraint',
|
|
1003
|
+
type: 'blob_accept',
|
|
1004
|
+
accept: accept,
|
|
1005
|
+
'~run'(input, flags) {
|
|
1006
|
+
if (!(flags & FLAG_STRICT)) {
|
|
1007
|
+
return undefined;
|
|
1008
|
+
}
|
|
1009
|
+
const mimeType = (input as interfaces.Blob).mimeType.toLowerCase();
|
|
1010
|
+
|
|
1011
|
+
for (let idx = 0, len = normalized.length; idx < len; idx++) {
|
|
1012
|
+
const pattern = normalized[idx];
|
|
1013
|
+
|
|
1014
|
+
if (pattern === '*/*') {
|
|
1015
|
+
return undefined;
|
|
1016
|
+
}
|
|
1017
|
+
if (pattern.endsWith('/*')) {
|
|
1018
|
+
if (mimeType.startsWith(pattern.slice(0, -1))) {
|
|
1019
|
+
return undefined;
|
|
1020
|
+
}
|
|
1021
|
+
} else {
|
|
1022
|
+
if (mimeType === pattern) {
|
|
1023
|
+
return undefined;
|
|
1024
|
+
}
|
|
1025
|
+
}
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
return issue;
|
|
1029
|
+
},
|
|
1030
|
+
};
|
|
1031
|
+
};
|
|
1032
|
+
|
|
1033
|
+
// #endregion
|
|
1034
|
+
|
|
921
1035
|
// #region IPLD bytes schema
|
|
922
1036
|
|
|
923
1037
|
export interface BytesSchema extends BaseSchema<interfaces.Bytes, interfaces.Bytes> {
|