@palmares/schemas 0.2.13 → 0.2.15
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/CHANGELOG.md +17 -0
- package/dist/src/adapter/index.d.ts +6 -0
- package/dist/src/adapter/index.d.ts.map +1 -1
- package/dist/src/index.cjs +18 -13
- package/dist/src/index.d.ts +24 -15
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +15 -10
- package/dist/src/model.cjs +13 -8
- package/dist/src/model.d.ts +7 -7
- package/dist/src/model.d.ts.map +1 -1
- package/dist/src/model.js +13 -8
- package/dist/src/schema/array.cjs +13 -8
- package/dist/src/schema/array.d.ts +25 -29
- package/dist/src/schema/array.d.ts.map +1 -1
- package/dist/src/schema/array.js +13 -8
- package/dist/src/schema/boolean.cjs +13 -8
- package/dist/src/schema/boolean.d.ts +23 -21
- package/dist/src/schema/boolean.d.ts.map +1 -1
- package/dist/src/schema/boolean.js +13 -8
- package/dist/src/schema/datetime.cjs +13 -8
- package/dist/src/schema/datetime.d.ts +23 -21
- package/dist/src/schema/datetime.d.ts.map +1 -1
- package/dist/src/schema/datetime.js +13 -8
- package/dist/src/schema/index.cjs +13 -8
- package/dist/src/schema/index.js +13 -8
- package/dist/src/schema/number.cjs +13 -8
- package/dist/src/schema/number.d.ts +24 -21
- package/dist/src/schema/number.d.ts.map +1 -1
- package/dist/src/schema/number.js +13 -8
- package/dist/src/schema/object.cjs +13 -8
- package/dist/src/schema/object.d.ts +23 -20
- package/dist/src/schema/object.d.ts.map +1 -1
- package/dist/src/schema/object.js +13 -8
- package/dist/src/schema/schema.cjs +13 -8
- package/dist/src/schema/schema.d.ts +34 -31
- package/dist/src/schema/schema.d.ts.map +1 -1
- package/dist/src/schema/schema.js +13 -8
- package/dist/src/schema/string.cjs +13 -8
- package/dist/src/schema/string.d.ts +26 -24
- package/dist/src/schema/string.d.ts.map +1 -1
- package/dist/src/schema/string.js +13 -8
- package/dist/src/schema/types.d.ts +40 -17
- package/dist/src/schema/types.d.ts.map +1 -1
- package/dist/src/schema/union.cjs +13 -8
- package/dist/src/schema/union.d.ts +25 -23
- package/dist/src/schema/union.d.ts.map +1 -1
- package/dist/src/schema/union.js +13 -8
- package/dist/src/types.d.ts +3 -8
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +4 -3
- package/dist/tsconfig.types.tsbuildinfo +0 -1
@@ -457,6 +457,7 @@ var Schema = class _Schema {
|
|
457
457
|
static {
|
458
458
|
__name(this, "Schema");
|
459
459
|
}
|
460
|
+
"~standard";
|
460
461
|
$$type = "$PSchema";
|
461
462
|
fieldType = "schema";
|
462
463
|
// Those functions will assume control of the validation process on adapters, instead of the schema.
|
@@ -639,7 +640,10 @@ var Schema = class _Schema {
|
|
639
640
|
const shouldCallToInternalDuringParse = hasToInternalCallback && (options.toInternalToBubbleUp?.length === 0 || Array.isArray(options.toInternalToBubbleUp) === false);
|
640
641
|
const hasNoErrors = parseResult.errors === void 0 || (parseResult.errors || []).length === 0;
|
641
642
|
await Promise.all(this.__refinements.map(async (refinement) => {
|
642
|
-
const errorOrNothing = await Promise.resolve(refinement(
|
643
|
+
const errorOrNothing = await Promise.resolve(refinement({
|
644
|
+
value: parseResult.parsed,
|
645
|
+
context: options.context
|
646
|
+
}));
|
643
647
|
if (typeof errorOrNothing === "undefined") return;
|
644
648
|
parseResult.errors.push({
|
645
649
|
isValid: false,
|
@@ -672,8 +676,6 @@ var Schema = class _Schema {
|
|
672
676
|
* ```
|
673
677
|
*
|
674
678
|
* @param refinementCallback - The callback that will be called to validate the value.
|
675
|
-
* @param options - Options for the refinement.
|
676
|
-
* @param options.isAsync - Whether the callback is async or not. Defaults to true.
|
677
679
|
*/
|
678
680
|
refine(refinementCallback) {
|
679
681
|
this.__refinements.push(refinementCallback);
|
@@ -928,17 +930,19 @@ var Schema = class _Schema {
|
|
928
930
|
* @returns An object with the property isValid, if the value is valid, the function `save` will be present.
|
929
931
|
* If the value is invalid, the property errors will be present.
|
930
932
|
*/
|
931
|
-
async validate(value, context) {
|
933
|
+
async validate(value, context = {}) {
|
932
934
|
const { errors, parsed } = await this.__parse(value, [], {
|
933
935
|
context
|
934
936
|
});
|
935
937
|
if ((errors || []).length > 0) return {
|
936
938
|
isValid: false,
|
937
|
-
errors
|
939
|
+
errors,
|
940
|
+
save: void 0
|
938
941
|
};
|
939
942
|
return {
|
940
943
|
isValid: true,
|
941
|
-
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save")
|
944
|
+
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save"),
|
945
|
+
errors: void 0
|
942
946
|
};
|
943
947
|
}
|
944
948
|
/**
|
@@ -951,8 +955,9 @@ var Schema = class _Schema {
|
|
951
955
|
*/
|
952
956
|
async _save(value, context) {
|
953
957
|
if (this.__saveCallback) {
|
954
|
-
|
955
|
-
|
958
|
+
let result = this.__saveCallback(value);
|
959
|
+
if (typeof result === "function") result = result(context);
|
960
|
+
return this.data(result instanceof Promise ? await result : result);
|
956
961
|
}
|
957
962
|
return this.data(value);
|
958
963
|
}
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { Schema } from './schema';
|
2
2
|
import type { DefinitionsOfSchemaType } from './types';
|
3
|
+
import type { SchemaAdapter } from '../adapter';
|
3
4
|
export declare class StringSchema<TType extends {
|
4
5
|
input: any;
|
5
6
|
validate: any;
|
@@ -12,7 +13,7 @@ export declare class StringSchema<TType extends {
|
|
12
13
|
internal: string;
|
13
14
|
representation: string;
|
14
15
|
validate: string;
|
15
|
-
}, TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType
|
16
|
+
}, TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType<SchemaAdapter & Palmares.PSchemaAdapter>> extends Schema<TType, TDefinitions> {
|
16
17
|
protected fieldType: string;
|
17
18
|
protected __is?: {
|
18
19
|
value: TType['input'] | TType['input'][];
|
@@ -75,18 +76,18 @@ export declare class StringSchema<TType extends {
|
|
75
76
|
* @param options - Options for the refinement.
|
76
77
|
* @param options.isAsync - Whether the callback is async or not. Defaults to true.
|
77
78
|
*/
|
78
|
-
refine
|
79
|
+
refine<TRefinementCallback extends (args: {
|
80
|
+
value: TType['input'];
|
81
|
+
context: TDefinitions['context'];
|
82
|
+
}) => Promise<void | undefined | {
|
79
83
|
code: string;
|
80
84
|
message: string;
|
81
|
-
}
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
internal: TType["internal"];
|
88
|
-
output: TType["output"];
|
89
|
-
representation: TType["representation"];
|
85
|
+
}>>(refinementCallback: TRefinementCallback): StringSchema<{
|
86
|
+
input: TType['input'];
|
87
|
+
validate: TType['validate'];
|
88
|
+
internal: TType['internal'];
|
89
|
+
output: TType['output'];
|
90
|
+
representation: TType['representation'];
|
90
91
|
}, TDefinitions>;
|
91
92
|
/**
|
92
93
|
* Allows the value to be either undefined or null.
|
@@ -286,14 +287,15 @@ export declare class StringSchema<TType extends {
|
|
286
287
|
*
|
287
288
|
* @returns The schema.
|
288
289
|
*/
|
289
|
-
onSave
|
290
|
-
input: TType[
|
291
|
-
validate: TType[
|
292
|
-
internal: TType[
|
293
|
-
output: TType[
|
294
|
-
representation: TType[
|
295
|
-
}, TDefinitions & {
|
290
|
+
onSave<TSave extends ((value: TType['internal']) => (context: any) => Promise<TType['output']>) | ((value: TType['internal']) => Promise<TType['output']>)>(callback: TSave): StringSchema<{
|
291
|
+
input: TType['input'];
|
292
|
+
validate: TType['validate'];
|
293
|
+
internal: TType['internal'];
|
294
|
+
output: TType['output'];
|
295
|
+
representation: TType['representation'];
|
296
|
+
}, Omit<TDefinitions, 'hasSave' | 'context'> & {
|
296
297
|
hasSave: true;
|
298
|
+
context: ReturnType<TSave> extends (context: any) => any ? Parameters<ReturnType<TSave>>[0] : any;
|
297
299
|
}>;
|
298
300
|
/**
|
299
301
|
* This function is used to add a default value to the schema. If the value is either undefined or null, the default
|
@@ -454,12 +456,12 @@ export declare class StringSchema<TType extends {
|
|
454
456
|
*
|
455
457
|
* @returns The schema with a new return type.
|
456
458
|
*/
|
457
|
-
toValidate<TValidate>(toValidateCallback: (value: TType['input']) => Promise<TValidate> | TValidate): StringSchema<{
|
458
|
-
input: TType[
|
459
|
+
toValidate<TValidate>(toValidateCallback: (value: TType['input'], context: TDefinitions['context']) => Promise<TValidate> | TValidate): StringSchema<{
|
460
|
+
input: TType['input'];
|
459
461
|
validate: TValidate;
|
460
|
-
internal: TType[
|
461
|
-
output: TType[
|
462
|
-
representation: TType[
|
462
|
+
internal: TType['internal'];
|
463
|
+
output: TType['output'];
|
464
|
+
representation: TType['representation'];
|
463
465
|
}, TDefinitions>;
|
464
466
|
/**
|
465
467
|
* Defines a list of strings that are allowed, it's useful when you want to restrict the values that are allowed.
|
@@ -682,7 +684,7 @@ export declare class StringSchema<TType extends {
|
|
682
684
|
* @returns - The schema instance.
|
683
685
|
*/
|
684
686
|
email(options?: StringSchema['__email']): this;
|
685
|
-
static new<TDefinitions extends DefinitionsOfSchemaType
|
687
|
+
static new<TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType<SchemaAdapter & Palmares.PSchemaAdapter>>(): StringSchema<{
|
686
688
|
input: string;
|
687
689
|
output: string;
|
688
690
|
internal: string;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/schema/string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAelC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;
|
1
|
+
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/schema/string.ts"],"names":[],"mappings":"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"}
|
@@ -432,6 +432,7 @@ var Schema = class _Schema {
|
|
432
432
|
static {
|
433
433
|
__name(this, "Schema");
|
434
434
|
}
|
435
|
+
"~standard";
|
435
436
|
$$type = "$PSchema";
|
436
437
|
fieldType = "schema";
|
437
438
|
// Those functions will assume control of the validation process on adapters, instead of the schema.
|
@@ -614,7 +615,10 @@ var Schema = class _Schema {
|
|
614
615
|
const shouldCallToInternalDuringParse = hasToInternalCallback && (options.toInternalToBubbleUp?.length === 0 || Array.isArray(options.toInternalToBubbleUp) === false);
|
615
616
|
const hasNoErrors = parseResult.errors === void 0 || (parseResult.errors || []).length === 0;
|
616
617
|
await Promise.all(this.__refinements.map(async (refinement) => {
|
617
|
-
const errorOrNothing = await Promise.resolve(refinement(
|
618
|
+
const errorOrNothing = await Promise.resolve(refinement({
|
619
|
+
value: parseResult.parsed,
|
620
|
+
context: options.context
|
621
|
+
}));
|
618
622
|
if (typeof errorOrNothing === "undefined") return;
|
619
623
|
parseResult.errors.push({
|
620
624
|
isValid: false,
|
@@ -647,8 +651,6 @@ var Schema = class _Schema {
|
|
647
651
|
* ```
|
648
652
|
*
|
649
653
|
* @param refinementCallback - The callback that will be called to validate the value.
|
650
|
-
* @param options - Options for the refinement.
|
651
|
-
* @param options.isAsync - Whether the callback is async or not. Defaults to true.
|
652
654
|
*/
|
653
655
|
refine(refinementCallback) {
|
654
656
|
this.__refinements.push(refinementCallback);
|
@@ -903,17 +905,19 @@ var Schema = class _Schema {
|
|
903
905
|
* @returns An object with the property isValid, if the value is valid, the function `save` will be present.
|
904
906
|
* If the value is invalid, the property errors will be present.
|
905
907
|
*/
|
906
|
-
async validate(value, context) {
|
908
|
+
async validate(value, context = {}) {
|
907
909
|
const { errors, parsed } = await this.__parse(value, [], {
|
908
910
|
context
|
909
911
|
});
|
910
912
|
if ((errors || []).length > 0) return {
|
911
913
|
isValid: false,
|
912
|
-
errors
|
914
|
+
errors,
|
915
|
+
save: void 0
|
913
916
|
};
|
914
917
|
return {
|
915
918
|
isValid: true,
|
916
|
-
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save")
|
919
|
+
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save"),
|
920
|
+
errors: void 0
|
917
921
|
};
|
918
922
|
}
|
919
923
|
/**
|
@@ -926,8 +930,9 @@ var Schema = class _Schema {
|
|
926
930
|
*/
|
927
931
|
async _save(value, context) {
|
928
932
|
if (this.__saveCallback) {
|
929
|
-
|
930
|
-
|
933
|
+
let result = this.__saveCallback(value);
|
934
|
+
if (typeof result === "function") result = result(context);
|
935
|
+
return this.data(result instanceof Promise ? await result : result);
|
931
936
|
}
|
932
937
|
return this.data(value);
|
933
938
|
}
|
@@ -1,7 +1,11 @@
|
|
1
|
+
import type { ArraySchema } from './array';
|
1
2
|
import type { BooleanSchema } from './boolean';
|
3
|
+
import type { DatetimeSchema } from './datetime';
|
4
|
+
import type { NumberSchema } from './number';
|
2
5
|
import type { ObjectSchema } from './object';
|
3
6
|
import type { Schema } from './schema';
|
4
7
|
import type { StringSchema } from './string';
|
8
|
+
import type { UnionSchema } from './union';
|
5
9
|
import type { SchemaAdapter } from '../adapter';
|
6
10
|
import type { FieldAdapter } from '../adapter/fields';
|
7
11
|
import type { ErrorCodes } from '../adapter/types';
|
@@ -10,10 +14,12 @@ import type { Validator } from '../validators/utils';
|
|
10
14
|
export type OnlyFieldAdaptersFromSchemaAdapter = keyof {
|
11
15
|
[key in keyof SchemaAdapter as SchemaAdapter[key] extends FieldAdapter ? key : never]: SchemaAdapter[key];
|
12
16
|
};
|
13
|
-
export type
|
17
|
+
export type AllSchemaTypes = ArraySchema<any, any, any> | BooleanSchema<any, any> | ObjectSchema<any, any, any> | Schema<any, any> | StringSchema<any, any> | DatetimeSchema<any, any> | UnionSchema<any, any, any> | NumberSchema<any, any>;
|
18
|
+
export type DefinitionsOfSchemaType<TSchemaAdapter extends SchemaAdapter = SchemaAdapter> = {
|
14
19
|
schemaType: 'array' | 'object' | 'string' | 'number' | 'boolean' | 'union' | 'datetime' | 'field' | 'datetime';
|
15
|
-
schemaAdapter:
|
16
|
-
|
20
|
+
schemaAdapter: TSchemaAdapter;
|
21
|
+
context: any;
|
22
|
+
hasSave: boolean;
|
17
23
|
};
|
18
24
|
export type ValidationFallbackCallbackType = Validator['fallbacks'][number];
|
19
25
|
export type ValidationFallbackCallbackReturnType = {
|
@@ -32,8 +38,26 @@ export type ValidationFallbackReturnType = {
|
|
32
38
|
name: string;
|
33
39
|
callback: ValidationFallbackCallbackType;
|
34
40
|
};
|
35
|
-
type TypesOfSchema = Schema extends Schema<infer TType, any> ? TType : never;
|
36
|
-
type ExtractTypeFromSchemaByTypeOfSchema<TSchema extends
|
41
|
+
export type TypesOfSchema<TSchema = Schema> = TSchema extends Schema<infer TType, any> | ArraySchema<infer TType, any, any> | UnionSchema<infer TType, any, any> | NumberSchema<infer TType, any> | StringSchema<infer TType, any> | ObjectSchema<infer TType, any, any> | BooleanSchema<infer TType, any> | DatetimeSchema<infer TType, any> ? TType : never;
|
42
|
+
export type ExtractTypeFromSchemaByTypeOfSchema<TSchema extends AllSchemaTypes, TTypeToExtract extends keyof TypesOfSchema = 'input'> = TSchema extends Schema<{
|
43
|
+
input: infer TInputType;
|
44
|
+
validate: infer TValidateType;
|
45
|
+
internal: infer TInternalType;
|
46
|
+
output: infer TOutputType;
|
47
|
+
representation: infer TRepresentationType;
|
48
|
+
}, any> | ArraySchema<{
|
49
|
+
input: infer TInputType;
|
50
|
+
validate: infer TValidateType;
|
51
|
+
internal: infer TInternalType;
|
52
|
+
output: infer TOutputType;
|
53
|
+
representation: infer TRepresentationType;
|
54
|
+
}, any, any> | UnionSchema<{
|
55
|
+
input: infer TInputType;
|
56
|
+
validate: infer TValidateType;
|
57
|
+
internal: infer TInternalType;
|
58
|
+
output: infer TOutputType;
|
59
|
+
representation: infer TRepresentationType;
|
60
|
+
}, any, any> | NumberSchema<{
|
37
61
|
input: infer TInputType;
|
38
62
|
validate: infer TValidateType;
|
39
63
|
internal: infer TInternalType;
|
@@ -57,23 +81,22 @@ type ExtractTypeFromSchemaByTypeOfSchema<TSchema extends Schema, TTypeToExtract
|
|
57
81
|
internal: infer TInternalType;
|
58
82
|
output: infer TOutputType;
|
59
83
|
representation: infer TRepresentationType;
|
84
|
+
}, any> | DatetimeSchema<{
|
85
|
+
input: infer TInputType;
|
86
|
+
validate: infer TValidateType;
|
87
|
+
internal: infer TInternalType;
|
88
|
+
output: infer TOutputType;
|
89
|
+
representation: infer TRepresentationType;
|
60
90
|
}, any> ? TTypeToExtract extends 'input' ? TInputType : TTypeToExtract extends 'validate' ? TValidateType : TTypeToExtract extends 'internal' ? TInternalType : TTypeToExtract extends 'output' ? TOutputType : TRepresentationType : never;
|
61
|
-
export type ExtractTypeFromObjectOfSchemas<TData extends Record<string, Schema
|
91
|
+
export type ExtractTypeFromObjectOfSchemas<TData extends Record<string, Schema<any, any>>, TTypeToExtract extends keyof TypesOfSchema = 'input'> = {
|
62
92
|
[key in keyof TData as undefined extends ExtractTypeFromSchemaByTypeOfSchema<TData[key], TTypeToExtract> ? never : key]: ExtractTypeFromSchemaByTypeOfSchema<TData[key], TTypeToExtract>;
|
63
93
|
} & {
|
64
94
|
[key in keyof TData as undefined extends ExtractTypeFromSchemaByTypeOfSchema<TData[key], TTypeToExtract> ? key : never]?: ExtractTypeFromSchemaByTypeOfSchema<TData[key], TTypeToExtract>;
|
65
95
|
};
|
66
|
-
export type ExtractTypeFromUnionOfSchemas<TSchemas extends readonly
|
67
|
-
|
68
|
-
internal: infer TInternal;
|
69
|
-
output: infer TOutput;
|
70
|
-
representation: infer TRepresentation;
|
71
|
-
validate: infer TValidate;
|
72
|
-
}> ? (TType extends 'output' ? TOutput : TType extends 'representation' ? TRepresentation : TType extends 'internal' ? TInternal : TType extends 'validate' ? TValidate : TInput) | ExtractTypeFromUnionOfSchemas<TRestOfSchemas extends readonly Schema[] ? TRestOfSchemas : [], TType> : unknown : never;
|
73
|
-
export type ExtractTypeFromArrayOfSchemas<TSchemas extends readonly [Schema, ...Schema[]] | [[Schema]], TTypeToExtract extends keyof TypesOfSchema = 'input', TResult extends any[] = []> = TSchemas extends readonly [infer TSchema, ...infer TRestSchemas] ? TSchema extends Schema ? TRestSchemas extends readonly [Schema, ...Schema[]] ? ExtractTypeFromArrayOfSchemas<TRestSchemas, TTypeToExtract, [
|
96
|
+
export type ExtractTypeFromUnionOfSchemas<TSchemas extends readonly AllSchemaTypes[] = [], TType extends 'input' | 'output' | 'representation' | 'internal' | 'validate' = 'input'> = TSchemas extends readonly [infer TFirstSchema, ...infer TRestOfSchemas] ? TFirstSchema extends AllSchemaTypes ? ExtractTypeFromSchemaByTypeOfSchema<TFirstSchema, TType> | ExtractTypeFromUnionOfSchemas<TRestOfSchemas extends readonly Schema[] ? TRestOfSchemas : [], TType> : unknown : never;
|
97
|
+
export type ExtractTypeFromArrayOfSchemas<TSchemas extends readonly [AllSchemaTypes, ...AllSchemaTypes[]] | [[AllSchemaTypes]], TTypeToExtract extends keyof TypesOfSchema = 'input', TResult extends any[] = []> = TSchemas extends readonly [infer TSchema, ...infer TRestSchemas] ? TSchema extends AllSchemaTypes ? TRestSchemas extends readonly [AllSchemaTypes, ...AllSchemaTypes[]] ? ExtractTypeFromArrayOfSchemas<TRestSchemas, TTypeToExtract, [
|
74
98
|
...TResult,
|
75
99
|
ExtractTypeFromSchemaByTypeOfSchema<TSchema, TTypeToExtract>
|
76
|
-
]> : [...TResult, ExtractTypeFromSchemaByTypeOfSchema<TSchema, TTypeToExtract>] : TSchemas extends [[infer TSchema]] ? TSchema extends
|
77
|
-
export type ExtractUnionTypesFromSchemas<TSchemas extends readonly
|
78
|
-
export {};
|
100
|
+
]> : [...TResult, ExtractTypeFromSchemaByTypeOfSchema<TSchema, TTypeToExtract>] : TSchemas extends [[infer TSchema]] ? TSchema extends AllSchemaTypes ? ExtractTypeFromSchemaByTypeOfSchema<TSchema, TTypeToExtract>[] : never : never : never;
|
101
|
+
export type ExtractUnionTypesFromSchemas<TSchemas extends readonly AllSchemaTypes[]> = TypesOfSchema<TSchemas[number]>;
|
79
102
|
//# sourceMappingURL=types.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/schema/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,MAAM,kCAAkC,GAAG,MAAM;KACpD,GAAG,IAAI,MAAM,aAAa,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,YAAY,GAAG,GAAG,GAAG,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC;CAC1G,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/schema/types.ts"],"names":[],"mappings":"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"}
|
@@ -450,6 +450,7 @@ var Schema = class _Schema {
|
|
450
450
|
static {
|
451
451
|
__name(this, "Schema");
|
452
452
|
}
|
453
|
+
"~standard";
|
453
454
|
$$type = "$PSchema";
|
454
455
|
fieldType = "schema";
|
455
456
|
// Those functions will assume control of the validation process on adapters, instead of the schema.
|
@@ -632,7 +633,10 @@ var Schema = class _Schema {
|
|
632
633
|
const shouldCallToInternalDuringParse = hasToInternalCallback && (options.toInternalToBubbleUp?.length === 0 || Array.isArray(options.toInternalToBubbleUp) === false);
|
633
634
|
const hasNoErrors = parseResult.errors === void 0 || (parseResult.errors || []).length === 0;
|
634
635
|
await Promise.all(this.__refinements.map(async (refinement) => {
|
635
|
-
const errorOrNothing = await Promise.resolve(refinement(
|
636
|
+
const errorOrNothing = await Promise.resolve(refinement({
|
637
|
+
value: parseResult.parsed,
|
638
|
+
context: options.context
|
639
|
+
}));
|
636
640
|
if (typeof errorOrNothing === "undefined") return;
|
637
641
|
parseResult.errors.push({
|
638
642
|
isValid: false,
|
@@ -665,8 +669,6 @@ var Schema = class _Schema {
|
|
665
669
|
* ```
|
666
670
|
*
|
667
671
|
* @param refinementCallback - The callback that will be called to validate the value.
|
668
|
-
* @param options - Options for the refinement.
|
669
|
-
* @param options.isAsync - Whether the callback is async or not. Defaults to true.
|
670
672
|
*/
|
671
673
|
refine(refinementCallback) {
|
672
674
|
this.__refinements.push(refinementCallback);
|
@@ -921,17 +923,19 @@ var Schema = class _Schema {
|
|
921
923
|
* @returns An object with the property isValid, if the value is valid, the function `save` will be present.
|
922
924
|
* If the value is invalid, the property errors will be present.
|
923
925
|
*/
|
924
|
-
async validate(value, context) {
|
926
|
+
async validate(value, context = {}) {
|
925
927
|
const { errors, parsed } = await this.__parse(value, [], {
|
926
928
|
context
|
927
929
|
});
|
928
930
|
if ((errors || []).length > 0) return {
|
929
931
|
isValid: false,
|
930
|
-
errors
|
932
|
+
errors,
|
933
|
+
save: void 0
|
931
934
|
};
|
932
935
|
return {
|
933
936
|
isValid: true,
|
934
|
-
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save")
|
937
|
+
save: /* @__PURE__ */ __name(async () => this._save.bind(this)(parsed, context), "save"),
|
938
|
+
errors: void 0
|
935
939
|
};
|
936
940
|
}
|
937
941
|
/**
|
@@ -944,8 +948,9 @@ var Schema = class _Schema {
|
|
944
948
|
*/
|
945
949
|
async _save(value, context) {
|
946
950
|
if (this.__saveCallback) {
|
947
|
-
|
948
|
-
|
951
|
+
let result = this.__saveCallback(value);
|
952
|
+
if (typeof result === "function") result = result(context);
|
953
|
+
return this.data(result instanceof Promise ? await result : result);
|
949
954
|
}
|
950
955
|
return this.data(value);
|
951
956
|
}
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { Schema } from './schema';
|
2
|
-
import type { DefinitionsOfSchemaType, ExtractTypeFromUnionOfSchemas } from './types';
|
2
|
+
import type { AllSchemaTypes, DefinitionsOfSchemaType, ExtractTypeFromUnionOfSchemas } from './types';
|
3
|
+
import type { SchemaAdapter } from '../adapter';
|
3
4
|
import type { FieldAdapter } from '../adapter/fields';
|
4
5
|
import type { Narrow } from '@palmares/core';
|
5
6
|
export declare class UnionSchema<TType extends {
|
@@ -14,7 +15,7 @@ export declare class UnionSchema<TType extends {
|
|
14
15
|
validate: unknown;
|
15
16
|
internal: unknown;
|
16
17
|
representation: unknown;
|
17
|
-
}, TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType
|
18
|
+
}, TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType<SchemaAdapter & Palmares.PSchemaAdapter>, TSchemas extends readonly [Schema<any, any>, Schema<any, any>, ...Schema<any, any>[]] = [
|
18
19
|
Schema<any, any>,
|
19
20
|
Schema<any, any>,
|
20
21
|
...Schema<any, any>[]
|
@@ -24,7 +25,7 @@ export declare class UnionSchema<TType extends {
|
|
24
25
|
message: string;
|
25
26
|
check: (value: TType['input']) => boolean;
|
26
27
|
};
|
27
|
-
protected __schemas: Set<Schema<any, DefinitionsOfSchemaType
|
28
|
+
protected __schemas: Set<Schema<any, DefinitionsOfSchemaType<SchemaAdapter & Palmares.PSchemaAdapter>>>;
|
28
29
|
constructor(schemas: TSchemas);
|
29
30
|
protected __transformToAdapter(options: Parameters<Schema['__transformToAdapter']>[0]): Promise<ReturnType<FieldAdapter['translate']>>;
|
30
31
|
/**
|
@@ -49,18 +50,18 @@ export declare class UnionSchema<TType extends {
|
|
49
50
|
* @param options - Options for the refinement.
|
50
51
|
* @param options.isAsync - Whether the callback is async or not. Defaults to true.
|
51
52
|
*/
|
52
|
-
refine
|
53
|
+
refine<TRefinementCallback extends (args: {
|
54
|
+
value: TType['input'];
|
55
|
+
context: TDefinitions['context'];
|
56
|
+
}) => Promise<void | undefined | {
|
53
57
|
code: string;
|
54
58
|
message: string;
|
55
|
-
}
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
internal: TType["internal"];
|
62
|
-
output: TType["output"];
|
63
|
-
representation: TType["representation"];
|
59
|
+
}>>(refinementCallback: TRefinementCallback): UnionSchema<{
|
60
|
+
input: TType['input'];
|
61
|
+
validate: TType['validate'];
|
62
|
+
internal: TType['internal'];
|
63
|
+
output: TType['output'];
|
64
|
+
representation: TType['representation'];
|
64
65
|
}, TDefinitions, TSchemas>;
|
65
66
|
/**
|
66
67
|
* Allows the value to be either undefined or null.
|
@@ -264,14 +265,15 @@ export declare class UnionSchema<TType extends {
|
|
264
265
|
*
|
265
266
|
* @returns The schema.
|
266
267
|
*/
|
267
|
-
onSave
|
268
|
-
input: TType[
|
269
|
-
validate: TType[
|
270
|
-
internal: TType[
|
271
|
-
output: TType[
|
272
|
-
representation: TType[
|
273
|
-
}, TDefinitions & {
|
268
|
+
onSave<TSave extends ((value: TType['internal']) => (context: any) => Promise<TType['output']>) | ((value: TType['internal']) => Promise<TType['output']>)>(callback: TSave): UnionSchema<{
|
269
|
+
input: TType['input'];
|
270
|
+
validate: TType['validate'];
|
271
|
+
internal: TType['internal'];
|
272
|
+
output: TType['output'];
|
273
|
+
representation: TType['representation'];
|
274
|
+
}, Omit<TDefinitions, 'hasSave' | 'context'> & {
|
274
275
|
hasSave: true;
|
276
|
+
context: ReturnType<TSave> extends (context: any) => any ? Parameters<ReturnType<TSave>>[0] : any;
|
275
277
|
}, TSchemas>;
|
276
278
|
/**
|
277
279
|
* This function is used to add a default value to the schema. If the value is either undefined or null, the default
|
@@ -463,20 +465,20 @@ export declare class UnionSchema<TType extends {
|
|
463
465
|
*
|
464
466
|
* @returns The schema with a new return type.
|
465
467
|
*/
|
466
|
-
toValidate<TValidate>(toValidateCallback: (value: TType['input']) => Promise<TValidate> | TValidate): UnionSchema<{
|
468
|
+
toValidate<TValidate>(toValidateCallback: (value: TType['input'], context: TDefinitions['context']) => Promise<TValidate> | TValidate): UnionSchema<{
|
467
469
|
input: TType["input"];
|
468
470
|
validate: TValidate;
|
469
471
|
internal: TType["internal"];
|
470
472
|
output: TType["output"];
|
471
473
|
representation: TType["representation"];
|
472
474
|
}, TDefinitions, TSchemas>;
|
473
|
-
static new<TSchemas extends readonly [
|
475
|
+
static new<TSchemas extends readonly [AllSchemaTypes, AllSchemaTypes, ...AllSchemaTypes[]], TDefinitions extends DefinitionsOfSchemaType = DefinitionsOfSchemaType<SchemaAdapter & Palmares.PSchemaAdapter>>(schemas: Narrow<TSchemas>): UnionSchema<{
|
474
476
|
input: ExtractTypeFromUnionOfSchemas<TSchemas, 'input'>;
|
475
477
|
internal: ExtractTypeFromUnionOfSchemas<TSchemas, 'internal'>;
|
476
478
|
output: ExtractTypeFromUnionOfSchemas<TSchemas, 'output'>;
|
477
479
|
representation: ExtractTypeFromUnionOfSchemas<TSchemas, 'representation'>;
|
478
480
|
validate: ExtractTypeFromUnionOfSchemas<TSchemas, 'validate'>;
|
479
|
-
}>;
|
481
|
+
}, TDefinitions>;
|
480
482
|
}
|
481
483
|
export declare const union: typeof UnionSchema.new;
|
482
484
|
//# sourceMappingURL=union.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../src/schema/union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AASlC,OAAO,KAAK,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;
|
1
|
+
{"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../src/schema/union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AASlC,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AACtG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,WAAW,CACtB,KAAK,SAAS;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG;IACF,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;CACzB,EACD,YAAY,SAAS,uBAAuB,GAAG,uBAAuB,CAAC,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,EAC/G,QAAQ,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG;IACtF,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;IAChB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;IAChB,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;CACtB,CACD,SAAQ,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC;IACnC,SAAS,CAAC,SAAS,SAAW;IAE9B,SAAS,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC;KAC3C,CAGC;IAEF,SAAS,CAAC,SAAS,qFAA0B;gBAEjC,OAAO,EAAE,QAAQ;cAKb,oBAAoB,CAClC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,GACrD,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;IA4GjD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CACJ,mBAAmB,SAAS,CAAC,IAAI,EAAE;QACjC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;KAClC,KAAK,OAAO,CAAC,IAAI,GAAG,SAAS,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EAEnE,kBAAkB,EAAE,mBAAmB,GACtC,WAAW,CACZ;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,EACZ,QAAQ,CACT;IAID;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GACL,WAAW,CACtD;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QACzC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QAC/C,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QAC/C,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QAC3C,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;KAC5D,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAItB,WAAW,CAC1B;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,CACb;IAGH;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GACL,WAAW,CACtD;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QAC7B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;QACnC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;QACnC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QAC/B,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;KAChD,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAItB,WAAW,CAC1B;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,CACb;IAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,IAAI,CACF,WAAW,SAAS,OAAO,EAC3B,iBAAiB,SAAS,OAAO,GAAG,OAAO,SAAS,WAAW,GAAG,IAAI,GAAG,KAAK,EAC9E,IAAI,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,WAAW,CAAC;QAAC,gBAAgB,CAAC,EAAE,iBAAiB,CAAA;KAAE,GACnC,WAAW,CAC/C;QACE,KAAK,EAAE,WAAW,SAAS,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9E,QAAQ,EAAE,WAAW,SAAS,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QACvF,QAAQ,EAAE,WAAW,SAAS,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QACnE,MAAM,EAAE,iBAAiB,SAAS,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QACvF,cAAc,EAAE,iBAAiB,SAAS,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACtF,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,MAAM,CACJ,KAAK,SACD,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAC1E,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAE5D,QAAQ,EAAE,KAAK,GACd,WAAW,CACZ;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;QAC1C,OAAO,EAAE,IAAI,CAAC;QACd,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;KACnG,EACD,QAAQ,CACT;IAID;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,aAAa,SAAS,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAC5E,sBAAsB,EAAE,aAAa,GAEsB,WAAW,CACpE;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QACzC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;QAC3C,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAUpE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CACL,QAAQ,EAAE,CACR,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAC1F,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,EAChG,gBAAgB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM;IAKvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,gBAAgB,CAAC,eAAe,EAC9B,wBAAwB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,GAEhB,WAAW,CAC/E;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,eAAe,CAAC;KACjC,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,UAAU,CAAC,SAAS,EAAE,kBAAkB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,GAC9B,WAAW,CACnE;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,QAAQ,EAAE,SAAS,CAAC;QACpB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,EACZ,QAAQ,CACT;IAGH;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,UAAU,CAAC,SAAS,EAClB,kBAAkB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,GAErD,WAAW,CACnE;QACE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,QAAQ,EAAE,SAAS,CAAC;QACpB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACzC,EACD,YAAY,EACZ,QAAQ,CACT;IAGH,MAAM,CAAC,GAAG,CACR,QAAQ,SAAS,SAAS,CAAC,cAAc,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAAC,EAC/E,YAAY,SAAS,uBAAuB,GAAG,uBAAuB,CAAC,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,EAE/G,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,GACxB,WAAW,CACZ;QACE,KAAK,EAAE,6BAA6B,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxD,QAAQ,EAAE,6BAA6B,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9D,MAAM,EAAE,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1D,cAAc,EAAE,6BAA6B,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC1E,QAAQ,EAAE,6BAA6B,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;KAC/D,EACD,YAAY,CACb;CASF;AACD,eAAO,MAAM,KAAK,wBAAkB,CAAC"}
|