@skmtc/core 0.0.783 → 0.0.786

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/esm/dsl/File.d.ts +208 -0
  2. package/esm/dsl/File.d.ts.map +1 -1
  3. package/esm/dsl/File.js +197 -0
  4. package/esm/dsl/Identifier.d.ts +152 -0
  5. package/esm/dsl/Identifier.d.ts.map +1 -1
  6. package/esm/dsl/Identifier.js +152 -0
  7. package/esm/dsl/Import.d.ts +221 -0
  8. package/esm/dsl/Import.d.ts.map +1 -1
  9. package/esm/dsl/Import.js +202 -0
  10. package/esm/dsl/model/ModelBase.d.ts +257 -0
  11. package/esm/dsl/model/ModelBase.d.ts.map +1 -1
  12. package/esm/dsl/model/ModelBase.js +248 -0
  13. package/esm/dsl/operation/OperationBase.d.ts +356 -1
  14. package/esm/dsl/operation/OperationBase.d.ts.map +1 -1
  15. package/esm/dsl/operation/OperationBase.js +347 -1
  16. package/esm/oas/document/Document.d.ts +155 -1
  17. package/esm/oas/document/Document.d.ts.map +1 -1
  18. package/esm/oas/document/Document.js +141 -2
  19. package/esm/oas/object/Object.d.ts +255 -10
  20. package/esm/oas/object/Object.d.ts.map +1 -1
  21. package/esm/oas/object/Object.js +229 -10
  22. package/esm/types/GeneratorKeys.d.ts +336 -0
  23. package/esm/types/GeneratorKeys.d.ts.map +1 -1
  24. package/esm/types/GeneratorKeys.js +243 -0
  25. package/esm/types/GeneratorType.d.ts +119 -0
  26. package/esm/types/GeneratorType.d.ts.map +1 -1
  27. package/esm/types/Method.d.ts +109 -0
  28. package/esm/types/Method.d.ts.map +1 -1
  29. package/esm/types/Method.js +84 -0
  30. package/package.json +5 -1
  31. package/script/dsl/File.d.ts +208 -0
  32. package/script/dsl/File.d.ts.map +1 -1
  33. package/script/dsl/File.js +197 -0
  34. package/script/dsl/Identifier.d.ts +152 -0
  35. package/script/dsl/Identifier.d.ts.map +1 -1
  36. package/script/dsl/Identifier.js +152 -0
  37. package/script/dsl/Import.d.ts +221 -0
  38. package/script/dsl/Import.d.ts.map +1 -1
  39. package/script/dsl/Import.js +202 -0
  40. package/script/dsl/model/ModelBase.d.ts +257 -0
  41. package/script/dsl/model/ModelBase.d.ts.map +1 -1
  42. package/script/dsl/model/ModelBase.js +248 -0
  43. package/script/dsl/operation/OperationBase.d.ts +356 -1
  44. package/script/dsl/operation/OperationBase.d.ts.map +1 -1
  45. package/script/dsl/operation/OperationBase.js +347 -1
  46. package/script/oas/document/Document.d.ts +155 -1
  47. package/script/oas/document/Document.d.ts.map +1 -1
  48. package/script/oas/document/Document.js +141 -2
  49. package/script/oas/object/Object.d.ts +255 -10
  50. package/script/oas/object/Object.d.ts.map +1 -1
  51. package/script/oas/object/Object.js +229 -10
  52. package/script/types/GeneratorKeys.d.ts +336 -0
  53. package/script/types/GeneratorKeys.d.ts.map +1 -1
  54. package/script/types/GeneratorKeys.js +243 -0
  55. package/script/types/GeneratorType.d.ts +119 -0
  56. package/script/types/GeneratorType.d.ts.map +1 -1
  57. package/script/types/Method.d.ts +109 -0
  58. package/script/types/Method.d.ts.map +1 -1
  59. package/script/types/Method.js +84 -0
@@ -12,22 +12,377 @@ import type { RefName } from '../../types/RefName.js';
12
12
  import { OasSchema } from '../../oas/schema/Schema.js';
13
13
  import { OasRef } from '../../oas/ref/Ref.js';
14
14
  import { OasVoid } from '../../oas/void/Void.js';
15
+ /**
16
+ * Constructor arguments for {@link OperationBase}.
17
+ *
18
+ * @template EnrichmentType - Optional type for custom enrichment data
19
+ */
15
20
  export type OperationBaseArgs<EnrichmentType = undefined> = {
21
+ /** The generation context providing access to the processing pipeline */
16
22
  context: GenerateContext;
23
+ /** Content settings including export path and enrichment configuration */
17
24
  settings: ContentSettings<EnrichmentType>;
25
+ /** Unique identifier for this generator type */
18
26
  generatorKey: GeneratorKey;
27
+ /** The OpenAPI operation being processed */
19
28
  operation: OasOperation;
20
29
  };
30
+ /**
31
+ * Base class for operation generators in the SKMTC DSL system.
32
+ *
33
+ * `OperationBase` extends {@link ContentBase} to provide specialized functionality for
34
+ * generating code from OpenAPI operations. It offers type-safe methods for inserting
35
+ * related operations and models, managing complex operation dependencies, and handling
36
+ * enrichments specific to API operations.
37
+ *
38
+ * This class serves as the foundation for creating custom operation generators that
39
+ * transform OpenAPI operations into various code artifacts like API clients, server
40
+ * handlers, validation middleware, or documentation.
41
+ *
42
+ * ## Key Features
43
+ *
44
+ * - **Operation Insertion**: Insert related operations with automatic dependency tracking
45
+ * - **Model Integration**: Seamlessly insert related models from operation schemas
46
+ * - **Schema Normalization**: Handle complex request/response schema references
47
+ * - **Export Management**: Control which operations are exported from generated files
48
+ * - **Enrichment Support**: Extend functionality with operation-specific enrichment data
49
+ * - **Type Safety**: Full TypeScript support with generic enrichment types
50
+ *
51
+ * @template EnrichmentType - Optional type for custom enrichment data
52
+ *
53
+ * @example Basic API client generator
54
+ * ```typescript
55
+ * import { OperationBase, Definition } from '@skmtc/core';
56
+ *
57
+ * class ApiClientMethod extends OperationBase {
58
+ * toDefinition(): Definition {
59
+ * const { method, path, operationId } = this.operation;
60
+ *
61
+ * return new Definition({
62
+ * name: operationId || `${method}${this.pascalCasePath()}`,
63
+ * content: `async ${operationId}(${this.generateParameters()}) {
64
+ * return this.request('${method}', '${path}', ${this.generateRequestBody()});
65
+ * }`
66
+ * });
67
+ * }
68
+ * }
69
+ * ```
70
+ *
71
+ * @example With request/response models
72
+ * ```typescript
73
+ * class TypedApiMethod extends OperationBase {
74
+ * toDefinition(): Definition {
75
+ * const operation = this.operation;
76
+ *
77
+ * // Generate request model if needed
78
+ * let requestType = 'void';
79
+ * if (operation.requestBody?.content?.['application/json']?.schema) {
80
+ * const requestModel = this.insertNormalizedModel(
81
+ * new RequestModel({ ... }),
82
+ * {
83
+ * schema: operation.requestBody.content['application/json'].schema,
84
+ * fallbackName: `${operation.operationId}Request`
85
+ * }
86
+ * );
87
+ * requestType = requestModel.value;
88
+ * }
89
+ *
90
+ * // Generate response model
91
+ * const responseSchema = operation.responses?.['200']?.content?.['application/json']?.schema;
92
+ * const responseModel = this.insertNormalizedModel(
93
+ * new ResponseModel({ ... }),
94
+ * { schema: responseSchema, fallbackName: `${operation.operationId}Response` }
95
+ * );
96
+ *
97
+ * return new Definition({
98
+ * name: operation.operationId,
99
+ * content: `async ${operation.operationId}(data: ${requestType}): Promise<${responseModel.value}> {
100
+ * return this.request('${operation.method}', '${operation.path}', data);
101
+ * }`
102
+ * });
103
+ * }
104
+ * }
105
+ * ```
106
+ *
107
+ * @example With enrichments
108
+ * ```typescript
109
+ * type AuthEnrichment = {
110
+ * requiresAuth: boolean;
111
+ * permissions: string[];
112
+ * };
113
+ *
114
+ * class SecuredApiMethod extends OperationBase<AuthEnrichment> {
115
+ * toDefinition(): Definition {
116
+ * const enrichment = this.settings.enrichment;
117
+ * const requiresAuth = enrichment?.requiresAuth ?? false;
118
+ *
119
+ * const authCheck = requiresAuth
120
+ * ? 'this.checkAuth();'
121
+ * : '';
122
+ *
123
+ * return new Definition({
124
+ * name: this.operation.operationId,
125
+ * content: `async ${this.operation.operationId}() {
126
+ * ${authCheck}
127
+ * return this.request('${this.operation.method}', '${this.operation.path}');
128
+ * }`
129
+ * });
130
+ * }
131
+ * }
132
+ * ```
133
+ */
21
134
  export declare class OperationBase<EnrichmentType = undefined> extends ContentBase {
135
+ /** Content settings including export path and enrichment configuration */
22
136
  settings: ContentSettings<EnrichmentType>;
137
+ /** The OpenAPI operation being processed */
23
138
  operation: OasOperation;
139
+ /** Generator key identifying this generator type */
24
140
  generatorKey: GeneratorKey;
141
+ /**
142
+ * Creates a new OperationBase instance.
143
+ *
144
+ * @param args - Operation generator configuration
145
+ * @param args.context - The generation context providing pipeline access
146
+ * @param args.settings - Content settings with export path and enrichments
147
+ * @param args.generatorKey - Unique identifier for this generator type
148
+ * @param args.operation - The OpenAPI operation being processed
149
+ *
150
+ * @example
151
+ * ```typescript
152
+ * const operation = new OperationBase({
153
+ * context: generateContext,
154
+ * settings: {
155
+ * exportPath: './src/api.ts',
156
+ * enrichment: customEnrichments
157
+ * },
158
+ * generatorKey: 'api-client',
159
+ * operation: oasOperation
160
+ * });
161
+ * ```
162
+ */
25
163
  constructor({ context, generatorKey, settings, operation }: OperationBaseArgs<EnrichmentType>);
164
+ /**
165
+ * Inserts a related operation with forced generation.
166
+ *
167
+ * This method adds a related operation to the current generation context, ensuring
168
+ * it will be generated regardless of whether it already exists. This is useful for
169
+ * operations that depend on other operations or need to generate helper operations.
170
+ *
171
+ * @template V - Type of generated value returned by the insertable
172
+ * @template EnrichmentType - Type of enrichment data for the insertable
173
+ * @param insertable - The operation generator to insert
174
+ * @param operation - The OpenAPI operation to process
175
+ * @param options - Insertion options
176
+ * @param options.noExport - Whether to skip exporting the inserted operation
177
+ * @returns Inserted operation reference with generated value
178
+ *
179
+ * @example Inserting helper operations
180
+ * ```typescript
181
+ * class CrudApiClient extends OperationBase {
182
+ * toDefinition(): Definition {
183
+ * // Insert a related validation operation
184
+ * const validator = this.insertOperation(
185
+ * new ValidationOperation({ ... }),
186
+ * this.operation,
187
+ * { noExport: true }
188
+ * );
189
+ *
190
+ * return new Definition({
191
+ * name: this.operation.operationId,
192
+ * content: `async ${this.operation.operationId}(data: any) {
193
+ * ${validator.value}(data);
194
+ * return this.request('${this.operation.method}', '${this.operation.path}', data);
195
+ * }`
196
+ * });
197
+ * }
198
+ * }
199
+ * ```
200
+ */
26
201
  insertOperation<V extends GeneratedValue, EnrichmentType = undefined>(insertable: OperationInsertable<V, EnrichmentType>, operation: OasOperation, options?: Pick<InsertOperationOptions<'force'>, 'noExport'>): Inserted<V, 'force', EnrichmentType>;
202
+ /**
203
+ * Inserts a related model with forced generation.
204
+ *
205
+ * This method adds a model to the current generation context, typically used
206
+ * for request/response models or other types related to the operation. The model
207
+ * will be generated and can be referenced in the operation code.
208
+ *
209
+ * @template V - Type of generated value returned by the insertable
210
+ * @template EnrichmentType - Type of enrichment data for the insertable
211
+ * @param insertable - The model generator to insert
212
+ * @param refName - Reference name for the inserted model
213
+ * @param options - Insertion options
214
+ * @param options.noExport - Whether to skip exporting the inserted model
215
+ * @returns Inserted model reference with generated value
216
+ *
217
+ * @example Inserting request/response models
218
+ * ```typescript
219
+ * class ApiOperation extends OperationBase {
220
+ * toDefinition(): Definition {
221
+ * // Insert request model
222
+ * const requestModel = this.insertModel(
223
+ * new RequestModel({ ... }),
224
+ * 'CreateUserRequest'
225
+ * );
226
+ *
227
+ * // Insert response model
228
+ * const responseModel = this.insertModel(
229
+ * new ResponseModel({ ... }),
230
+ * 'CreateUserResponse'
231
+ * );
232
+ *
233
+ * return new Definition({
234
+ * name: this.operation.operationId,
235
+ * content: `async ${this.operation.operationId}(data: ${requestModel.value}): Promise<${responseModel.value}> {
236
+ * return this.request('${this.operation.method}', '${this.operation.path}', data);
237
+ * }`
238
+ * });
239
+ * }
240
+ * }
241
+ * ```
242
+ */
27
243
  insertModel<V extends GeneratedValue, EnrichmentType = undefined>(insertable: ModelInsertable<V, EnrichmentType>, refName: RefName, options?: Pick<InsertModelOptions<'force'>, 'noExport'>): Inserted<V, 'force', EnrichmentType>;
244
+ /**
245
+ * Inserts a related model with automatic schema normalization and reference resolution.
246
+ *
247
+ * This method intelligently handles schema references from operation request/response
248
+ * bodies, automatically resolving schema references to appropriate model names.
249
+ * This is particularly useful for operations with complex request/response schemas.
250
+ *
251
+ * @template V - Type of generated value returned by the insertable
252
+ * @template Schema - Type of OpenAPI schema (schema object, reference, or void)
253
+ * @template EnrichmentType - Type of enrichment data for the insertable
254
+ * @param insertable - The model generator to insert
255
+ * @param args - Schema normalization arguments
256
+ * @param args.schema - The OpenAPI schema to normalize (from request/response)
257
+ * @param args.fallbackName - Name to use if schema is not a reference
258
+ * @param options - Insertion options
259
+ * @param options.noExport - Whether to skip exporting the inserted model
260
+ * @returns Inserted model reference with normalized name and generated value
261
+ *
262
+ * @example Handling operation request/response schemas
263
+ * ```typescript
264
+ * class RestApiOperation extends OperationBase {
265
+ * toDefinition(): Definition {
266
+ * const operation = this.operation;
267
+ *
268
+ * // Handle request body schema
269
+ * let requestType = 'void';
270
+ * const requestSchema = operation.requestBody?.content?.['application/json']?.schema;
271
+ * if (requestSchema) {
272
+ * const requestModel = this.insertNormalizedModel(
273
+ * new TypeScriptInterface({ ... }),
274
+ * {
275
+ * schema: requestSchema,
276
+ * fallbackName: `${operation.operationId}Request`
277
+ * }
278
+ * );
279
+ * requestType = requestModel.value;
280
+ * }
281
+ *
282
+ * // Handle response schema
283
+ * const responseSchema = operation.responses?.['200']?.content?.['application/json']?.schema;
284
+ * const responseModel = this.insertNormalizedModel(
285
+ * new TypeScriptInterface({ ... }),
286
+ * {
287
+ * schema: responseSchema,
288
+ * fallbackName: `${operation.operationId}Response`
289
+ * }
290
+ * );
291
+ *
292
+ * return new Definition({
293
+ * name: operation.operationId,
294
+ * content: `async ${operation.operationId}(data: ${requestType}): Promise<${responseModel.value}>`
295
+ * });
296
+ * }
297
+ * }
298
+ * ```
299
+ */
28
300
  insertNormalizedModel<V extends GeneratedValue, Schema extends OasSchema | OasRef<'schema'> | OasVoid, EnrichmentType = undefined>(insertable: ModelInsertable<V, EnrichmentType>, { schema, fallbackName }: Omit<InsertNormalisedModelArgs<Schema>, 'destinationPath'>, options?: Pick<InsertModelOptions<'force'>, 'noExport'>): InsertNormalisedModelReturn<V, Schema>;
29
- /** @experimental */
301
+ /**
302
+ * Defines and registers a new definition in the generation context.
303
+ *
304
+ * This is an experimental method that allows creating and registering
305
+ * definitions directly without going through the standard insertion flow.
306
+ * Use with caution as the API may change in future versions.
307
+ *
308
+ * @experimental This method's API may change in future versions
309
+ * @template V - Type of generated value
310
+ * @param args - Definition arguments
311
+ * @param args.identifier - Unique identifier for the definition
312
+ * @param args.value - The generated value to associate with the definition
313
+ * @param args.noExport - Whether to skip exporting the definition
314
+ * @returns The created and registered definition
315
+ *
316
+ * @example Creating inline definitions
317
+ * ```typescript
318
+ * class InlineHelperOperation extends OperationBase {
319
+ * toDefinition(): Definition {
320
+ * // Create an inline helper function
321
+ * const helper = this.defineAndRegister({
322
+ * identifier: 'validateRequest',
323
+ * value: 'function validateRequest(data: any) { ... }',
324
+ * noExport: true
325
+ * });
326
+ *
327
+ * return new Definition({
328
+ * name: this.operation.operationId,
329
+ * content: `async ${this.operation.operationId}(data: any) {
330
+ * ${helper.value}(data);
331
+ * return this.request('${this.operation.method}', '${this.operation.path}', data);
332
+ * }`
333
+ * });
334
+ * }
335
+ * }
336
+ * ```
337
+ */
30
338
  defineAndRegister<V extends GeneratedValue>({ identifier, value, noExport }: Omit<DefineAndRegisterArgs<V>, 'destinationPath'>): Definition<V>;
339
+ /**
340
+ * Registers a file-level artifact with the generation context.
341
+ *
342
+ * This method allows the operation generator to register additional content
343
+ * (like imports, exports, or file-level definitions) that should be included
344
+ * in the generated file. The registration is automatically scoped to this
345
+ * operation's export path.
346
+ *
347
+ * @param args - Registration arguments
348
+ * @param args.content - The content to register (import, export, etc.)
349
+ * @param args.phase - When to register the content ('pre' or 'post')
350
+ *
351
+ * @example Registering API client imports
352
+ * ```typescript
353
+ * class HttpOperation extends OperationBase {
354
+ * toDefinition(): Definition {
355
+ * // Register imports needed for HTTP operations
356
+ * this.register({
357
+ * content: "import { ApiClient } from './client';",
358
+ * phase: 'pre'
359
+ * });
360
+ *
361
+ * this.register({
362
+ * content: "import { RequestOptions } from './types';",
363
+ * phase: 'pre'
364
+ * });
365
+ *
366
+ * return new Definition({ ... });
367
+ * }
368
+ * }
369
+ * ```
370
+ *
371
+ * @example Registering utility exports
372
+ * ```typescript
373
+ * class ApiOperationGroup extends OperationBase {
374
+ * toDefinition(): Definition {
375
+ * // Register a utility export after all operations
376
+ * this.register({
377
+ * content: "export const API_VERSION = '1.0';",
378
+ * phase: 'post'
379
+ * });
380
+ *
381
+ * return new Definition({ ... });
382
+ * }
383
+ * }
384
+ * ```
385
+ */
31
386
  register(args: BaseRegisterArgs): void;
32
387
  }
33
388
  //# sourceMappingURL=OperationBase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OperationBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/OperationBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/OperationBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAEf,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,2BAA2B,EAC5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAEhD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,CAAC,cAAc,GAAG,SAAS,IAAI;IAC1D,yEAAyE;IACzE,OAAO,EAAE,eAAe,CAAA;IACxB,0EAA0E;IAC1E,QAAQ,EAAE,eAAe,CAAC,cAAc,CAAC,CAAA;IACzC,gDAAgD;IAChD,YAAY,EAAE,YAAY,CAAA;IAC1B,4CAA4C;IAC5C,SAAS,EAAE,YAAY,CAAA;CACxB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuGG;AACH,qBAAa,aAAa,CAAC,cAAc,GAAG,SAAS,CAAE,SAAQ,WAAW;IACxE,0EAA0E;IAC1E,QAAQ,EAAE,eAAe,CAAC,cAAc,CAAC,CAAA;IAEzC,4CAA4C;IAC5C,SAAS,EAAE,YAAY,CAAA;IAEvB,oDAAoD;IAC3C,YAAY,EAAE,YAAY,CAAA;IAEnC;;;;;;;;;;;;;;;;;;;;;OAqBG;gBACS,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,CAAC,cAAc,CAAC;IAQ7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,eAAe,CAAC,CAAC,SAAS,cAAc,EAAE,cAAc,GAAG,SAAS,EAClE,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,cAAc,CAAC,EAClD,SAAS,EAAE,YAAY,EACvB,OAAO,GAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,UAAU,CAAM,GAC9D,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC;IAQvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,WAAW,CAAC,CAAC,SAAS,cAAc,EAAE,cAAc,GAAG,SAAS,EAC9D,UAAU,EAAE,eAAe,CAAC,CAAC,EAAE,cAAc,CAAC,EAC9C,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,UAAU,CAAM,GAC1D,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC;IAQvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACH,qBAAqB,CACnB,CAAC,SAAS,cAAc,EACxB,MAAM,SAAS,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,EACrD,cAAc,GAAG,SAAS,EAE1B,UAAU,EAAE,eAAe,CAAC,CAAC,EAAE,cAAc,CAAC,EAC9C,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,EACpF,OAAO,GAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,UAAU,CAAM,GAC1D,2BAA2B,CAAC,CAAC,EAAE,MAAM,CAAC;IAYzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,iBAAiB,CAAC,CAAC,SAAS,cAAc,EAAE,EAC1C,UAAU,EACV,KAAK,EACL,QAAQ,EACT,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IASpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACM,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;CAMhD"}