@jsonapi-serde/server 1.4.0 → 1.5.1
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/request/body.d.ts +11 -4
- package/dist/request/body.js +4 -0
- package/dist/request/body.js.map +1 -1
- package/package.json +1 -1
package/dist/request/body.d.ts
CHANGED
|
@@ -53,14 +53,18 @@ export type RelationshipsSchema = $ZodType<Record<string, z.output<RelationshipS
|
|
|
53
53
|
/**
|
|
54
54
|
* Zod schema for a generic JSON:API attributes object
|
|
55
55
|
*/
|
|
56
|
-
export type AttributesSchema = $ZodType<Record<string, unknown
|
|
56
|
+
export type AttributesSchema = $ZodType<Record<string, unknown> | undefined>;
|
|
57
|
+
/**
|
|
58
|
+
* Zod schema for a generic JSON:API meta object
|
|
59
|
+
*/
|
|
60
|
+
export type MetaSchema = $ZodType<Record<string, unknown> | undefined>;
|
|
57
61
|
/**
|
|
58
62
|
* Configuration object for parsing a resource request
|
|
59
63
|
*
|
|
60
64
|
* Includes optional `idSchema`, `attributesSchema`, and `relationshipsSchema`, and an optional map of
|
|
61
65
|
* `includedTypeSchemas` keyed by type name.
|
|
62
66
|
*/
|
|
63
|
-
export type ParseResourceRequestOptions<TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined> = {
|
|
67
|
+
export type ParseResourceRequestOptions<TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TMetaSchema extends MetaSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined> = {
|
|
64
68
|
/** Optional Zod schema to validate the `id` field in the primary resource */
|
|
65
69
|
idSchema?: TIdSchema;
|
|
66
70
|
/** The expected resource `type` value for the primary data object */
|
|
@@ -69,6 +73,8 @@ export type ParseResourceRequestOptions<TIdSchema extends $ZodType<string> | und
|
|
|
69
73
|
attributesSchema?: TAttributesSchema;
|
|
70
74
|
/** Optional Zod schema for validating the `relationships` object in the request */
|
|
71
75
|
relationshipsSchema?: TRelationshipsSchema;
|
|
76
|
+
/** Optional Zod schema for validating the `meta` object in the request */
|
|
77
|
+
metaSchema?: TMetaSchema;
|
|
72
78
|
/**
|
|
73
79
|
* Optional map of included resource `type` names to their validation schemas
|
|
74
80
|
*
|
|
@@ -116,11 +122,12 @@ export type IncludedTypesContainer<T extends IncludedTypeSchemas> = {
|
|
|
116
122
|
/**
|
|
117
123
|
* Parsed result from a resource request
|
|
118
124
|
*/
|
|
119
|
-
export type ParseResourceRequestResult<TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined> = {
|
|
125
|
+
export type ParseResourceRequestResult<TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TMetaSchema extends MetaSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined> = {
|
|
120
126
|
id: TIdSchema extends $ZodType<string> ? z.output<TIdSchema> : undefined;
|
|
121
127
|
type: TType;
|
|
122
128
|
attributes: TAttributesSchema extends AttributesSchema ? z.output<TAttributesSchema> : undefined;
|
|
123
129
|
relationships: TRelationshipsSchema extends RelationshipsSchema ? z.output<TRelationshipsSchema> : undefined;
|
|
130
|
+
meta: TMetaSchema extends MetaSchema ? z.output<TMetaSchema> : undefined;
|
|
124
131
|
includedTypes: TIncludedTypeSchemas extends IncludedTypeSchemas ? IncludedTypesContainer<TIncludedTypeSchemas> : undefined;
|
|
125
132
|
};
|
|
126
133
|
/**
|
|
@@ -147,7 +154,7 @@ export type IncludedTypeSchemas = {
|
|
|
147
154
|
*
|
|
148
155
|
* @throws {JsonApiError} for invalid content type or malformed document
|
|
149
156
|
*/
|
|
150
|
-
export declare const parseResourceRequest: <TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined>(context: BodyContext, options: ParseResourceRequestOptions<TIdSchema, TType, TAttributesSchema, TRelationshipsSchema, TIncludedTypeSchemas>) => ParseResourceRequestResult<NoInfer<TIdSchema>, NoInfer<TType>, NoInfer<TAttributesSchema>, NoInfer<TRelationshipsSchema>, NoInfer<TIncludedTypeSchemas>>;
|
|
157
|
+
export declare const parseResourceRequest: <TIdSchema extends $ZodType<string> | undefined, TType extends string, TAttributesSchema extends AttributesSchema | undefined, TRelationshipsSchema extends RelationshipsSchema | undefined, TMetaSchema extends MetaSchema | undefined, TIncludedTypeSchemas extends IncludedTypeSchemas | undefined>(context: BodyContext, options: ParseResourceRequestOptions<TIdSchema, TType, TAttributesSchema, TRelationshipsSchema, TMetaSchema, TIncludedTypeSchemas>) => ParseResourceRequestResult<NoInfer<TIdSchema>, NoInfer<TType>, NoInfer<TAttributesSchema>, NoInfer<TRelationshipsSchema>, NoInfer<TMetaSchema>, NoInfer<TIncludedTypeSchemas>>;
|
|
151
158
|
/**
|
|
152
159
|
* Parses a JSON:API relationship request and returns an ID
|
|
153
160
|
*
|
package/dist/request/body.js
CHANGED
|
@@ -114,6 +114,7 @@ export const parseResourceRequest = (context, options) => {
|
|
|
114
114
|
type: fixedTypeSchema(options.type),
|
|
115
115
|
attributes: options.attributesSchema ?? z.undefined(),
|
|
116
116
|
relationships: options.relationshipsSchema ?? z.undefined(),
|
|
117
|
+
meta: options.metaSchema ?? z.undefined(),
|
|
117
118
|
}),
|
|
118
119
|
included: includedSchema,
|
|
119
120
|
})
|
|
@@ -134,6 +135,9 @@ export const parseResourceRequest = (context, options) => {
|
|
|
134
135
|
if ("relationships" in data) {
|
|
135
136
|
result.relationships = data.relationships;
|
|
136
137
|
}
|
|
138
|
+
if ("meta" in data) {
|
|
139
|
+
result.meta = data.meta;
|
|
140
|
+
}
|
|
137
141
|
if (options.includedTypeSchemas) {
|
|
138
142
|
const includedTypes = Object.fromEntries(Object.keys(options.includedTypeSchemas).map((type) => [type, new Map()]));
|
|
139
143
|
if (included) {
|
package/dist/request/body.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../src/request/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAA0B,MAAM,kBAAkB,CAAC;AAanG;;GAEG;AACH,MAAM,eAAe,GAAG,CAAuB,IAAW,EAAE,EAAE,CAC1D,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,IAAI,wBAAwB,CAChC,eAAe,EACf,SAAS,OAAO,CAAC,KAAK,qBAAqB,IAAI,GAAG,EAClD,GAAG,CACN;YACD,KAAK,EAAE,OAAO,CAAC,KAAK;SACvB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAA+B,CAAC;AAUrC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACpC,IAAW,EACX,WAA6B,CAAC,CAAC,MAAM,EAAE,EACR,EAAE,CACjC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;IAC3B,EAAE,EAAE,QAAQ;CACf,CAAC,CAAC;AAUP;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC1C,IAAW,EAC0B,EAAE,CACvC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;IAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAoBP;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,MAAmB,EACY,EAAE,CACjC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,MAAM;CACf,CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../src/request/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAA0B,MAAM,kBAAkB,CAAC;AAanG;;GAEG;AACH,MAAM,eAAe,GAAG,CAAuB,IAAW,EAAE,EAAE,CAC1D,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,IAAI,wBAAwB,CAChC,eAAe,EACf,SAAS,OAAO,CAAC,KAAK,qBAAqB,IAAI,GAAG,EAClD,GAAG,CACN;YACD,KAAK,EAAE,OAAO,CAAC,KAAK;SACvB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAA+B,CAAC;AAUrC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACpC,IAAW,EACX,WAA6B,CAAC,CAAC,MAAM,EAAE,EACR,EAAE,CACjC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;IAC3B,EAAE,EAAE,QAAQ;CACf,CAAC,CAAC;AAUP;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC1C,IAAW,EAC0B,EAAE,CACvC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;IAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAoBP;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,MAAmB,EACY,EAAE,CACjC,CAAC,CAAC,YAAY,CAAC;IACX,IAAI,EAAE,MAAM;CACf,CAA+C,CAAC;AA6ErD;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACX,IAAI,CAAS;IACtB,SAAS,CAAkD;IAEnE,YAAmB,IAAY,EAAE,SAA0D;QACvF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,GAAW;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEzC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,YAAY,CAAC;gBACnB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,2BAA2B;gBAClC,MAAM,EAAE,kCAAkC,IAAI,CAAC,IAAI,cAAc,GAAG,8BAA8B;aACrG,CAAC,CAAC;QACP,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AAqED,MAAM,mBAAmB,GAAG,CACxB,aAAmC,EACrB,EAAE;IAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,uBAAuB,GAA6B,EAAE,CAAC;IAE7D,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,uBAAuB,CAAC,IAAI,CACxB,CAAC,CAAC,MAAM,CAAC;YACL,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;YACf,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YACrB,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YAC/E,aAAa,EAAE,OAAO,CAAC,mBAAmB;gBACtC,CAAC,CAAC,OAAO,CAAC,mBAAmB;gBAC7B,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;SACtB,CAAC,CACL,CAAC;IACN,CAAC;IAED,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC1D,CAAC;IAED,OAAO,CAAC;SACH,KAAK,CACF,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;QACzB,uBAAuB,CAAC,CAAC,CAAC;QAC1B,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;KACtC,CAAC,CACL;SACA,QAAQ,EAAE,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAQhC,OAAoB,EACpB,OAOC,EAQH,EAAE;IACA,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAChC,MAAM,cAAc,GAAG,mBAAmB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAExE,MAAM,WAAW,GAAG,CAAC;SAChB,YAAY,CAAC;QACV,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC;YACjB,EAAE,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC;YACnC,UAAU,EAAE,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,SAAS,EAAE;YACrD,aAAa,EAAE,OAAO,CAAC,mBAAmB,IAAI,CAAC,CAAC,SAAS,EAAE;YAC3D,IAAI,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,EAAE;SAC5C,CAAC;QACF,QAAQ,EAAE,cAAc;KAC3B,CAAC;SACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAErB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC;IAE5C,MAAM,MAAM,GAA4B;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;KACrB,CAAC;IAEF,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACf,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,CAAC;IAED,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;QAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CACpC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAC5E,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACX,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACzC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACpC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CACrC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACxD,IAAI;YACJ,IAAI,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;SACrD,CAAC,CACL,CAAC;IACN,CAAC;IAED,OAAO,MAON,CAAC;AACN,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACpC,OAAoB,EACpB,IAAY,EACZ,QAAoB,EAC6D,EAAE;IACnF,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,CAAC;SAChB,MAAM,CAAC;QACJ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YACrB,EAAE,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,EAAE,CAA4B;SAC1D,CAAC;KACL,CAAC;SACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAErB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAEjB,CAAC;AACjB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACrC,OAAoB,EACpB,IAAY,EACZ,WAA6B,CAAC,CAAC,MAAM,EAAE,EAC/B,EAAE;IACV,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,CAAC;SAChB,MAAM,CAAC;QACJ,IAAI,EAAE,CAAC,CAAC,KAAK,CACT,CAAC,CAAC,MAAM,CAAC;YACL,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YACrB,EAAE,EAAE,QAAQ;SACf,CAAC,CACL;KACJ,CAAC;SACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAErB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,SAAS,GAAG,CAAC,OAAoB,EAAW,EAAE;IAChD,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzC,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,YAAY,CAAC;YACnB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,mBAAmB;YACzB,KAAK,EAAE,mBAAmB;YAC1B,+BAA+B;YAC/B,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;SAC7D,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,WAA+B,EAAQ,EAAE;IAClE,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,MAAM,IAAI,YAAY,CAAC;YACnB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,wBAAwB;YAC9B,KAAK,EAAE,wBAAwB;YAC/B,MAAM,EAAE,uDAAuD;YAC/D,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;SACrC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,KAAwB,CAAC;IAE7B,IAAI,CAAC;QACD,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,2BAA2B;QAC3B,IAAI,CAAC,CAAC,KAAK,YAAY,oBAAoB,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,CAAC;QAChB,CAAC;QACD,0BAA0B;QAE1B,MAAM,IAAI,YAAY,CAAC;YACnB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,KAAK,CAAC,OAAO;YACrB,MAAM,EAAE;gBACJ,MAAM,EAAE,cAAc;aACzB;SACJ,CAAC,CAAC;IACP,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;QACnE,MAAM,IAAI,YAAY,CAAC;YACnB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,wBAAwB;YAC9B,KAAK,EAAE,wBAAwB;YAC/B,MAAM,EAAE,2BAA2B,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,mCAAmC;YACjG,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;SACrC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC;IAEnE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;IACX,CAAC;IAED,MAAM,IAAI,YAAY,CAAC;QACnB,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,wBAAwB;QAC/B,MAAM,EAAE,kCAAkC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACxE,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;KACrC,CAAC,CAAC;AACP,CAAC,CAAC"}
|