@workos/oagen 0.1.0 → 0.2.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.
Files changed (47) hide show
  1. package/dist/cli/index.d.mts +2 -0
  2. package/dist/cli/index.mjs +6018 -0
  3. package/dist/cli/index.mjs.map +1 -0
  4. package/dist/compat/{index.d.ts → index.d.mts} +43 -114
  5. package/dist/compat/index.d.mts.map +1 -0
  6. package/dist/compat/index.mjs +4562 -0
  7. package/dist/compat/index.mjs.map +1 -0
  8. package/dist/diff-DyQF4sel.mjs +2250 -0
  9. package/dist/diff-DyQF4sel.mjs.map +1 -0
  10. package/dist/differ-BwelBJN0.mjs +1100 -0
  11. package/dist/differ-BwelBJN0.mjs.map +1 -0
  12. package/dist/index.d.mts +295 -0
  13. package/dist/index.d.mts.map +1 -0
  14. package/dist/index.mjs +1553 -0
  15. package/dist/index.mjs.map +1 -0
  16. package/dist/scripts/smoke/baseline.d.mts +1 -0
  17. package/dist/scripts/smoke/baseline.mjs +1916 -0
  18. package/dist/scripts/smoke/baseline.mjs.map +1 -0
  19. package/dist/scripts/smoke/sdk-test.d.mts +1 -0
  20. package/dist/scripts/smoke/sdk-test.mjs +111 -0
  21. package/dist/scripts/smoke/sdk-test.mjs.map +1 -0
  22. package/dist/smoke.d.mts +331 -0
  23. package/dist/smoke.d.mts.map +1 -0
  24. package/dist/smoke.mjs +2084 -0
  25. package/dist/smoke.mjs.map +1 -0
  26. package/dist/tree-sitter-BPNfbEzY.mjs +359 -0
  27. package/dist/tree-sitter-BPNfbEzY.mjs.map +1 -0
  28. package/dist/types-O25qZxMl.d.mts +397 -0
  29. package/dist/types-O25qZxMl.d.mts.map +1 -0
  30. package/dist/verify/index.d.mts +82 -0
  31. package/dist/verify/index.d.mts.map +1 -0
  32. package/dist/verify/index.mjs +327 -0
  33. package/dist/verify/index.mjs.map +1 -0
  34. package/package.json +19 -16
  35. package/dist/chunk-CIX5NOBF.js +0 -263
  36. package/dist/chunk-IJ5E5AE7.js +0 -1040
  37. package/dist/chunk-VUSRNIG2.js +0 -1661
  38. package/dist/cli/index.js +0 -5314
  39. package/dist/compat/index.js +0 -4491
  40. package/dist/index.d.ts +0 -277
  41. package/dist/index.js +0 -1565
  42. package/dist/scripts/smoke/baseline.js +0 -1813
  43. package/dist/scripts/smoke/sdk-test.js +0 -93
  44. package/dist/smoke.js +0 -2025
  45. package/dist/types-B5t9O9Wm.d.ts +0 -367
  46. package/dist/verify/index.d.ts +0 -76
  47. package/dist/verify/index.js +0 -336
@@ -0,0 +1,397 @@
1
+ //#region src/compat/types.d.ts
2
+ interface ApiSurface {
3
+ language: string;
4
+ extractedFrom: string;
5
+ extractedAt: string;
6
+ classes: Record<string, ApiClass>;
7
+ interfaces: Record<string, ApiInterface>;
8
+ typeAliases: Record<string, ApiTypeAlias>;
9
+ enums: Record<string, ApiEnum>;
10
+ exports: Record<string, string[]>;
11
+ }
12
+ interface ApiClass {
13
+ name: string;
14
+ sourceFile?: string;
15
+ methods: Record<string, ApiMethod[]>;
16
+ properties: Record<string, ApiProperty>;
17
+ constructorParams: ApiParam[];
18
+ }
19
+ interface ApiMethod {
20
+ name: string;
21
+ params: ApiParam[];
22
+ returnType: string;
23
+ async: boolean;
24
+ }
25
+ interface ApiParam {
26
+ name: string;
27
+ type: string;
28
+ optional: boolean;
29
+ }
30
+ interface ApiProperty {
31
+ name: string;
32
+ type: string;
33
+ readonly: boolean;
34
+ }
35
+ interface ApiInterface {
36
+ name: string;
37
+ sourceFile?: string;
38
+ fields: Record<string, ApiField>;
39
+ extends: string[];
40
+ }
41
+ interface ApiField {
42
+ name: string;
43
+ type: string;
44
+ optional: boolean;
45
+ }
46
+ interface ApiTypeAlias {
47
+ name: string;
48
+ sourceFile?: string;
49
+ value: string;
50
+ }
51
+ interface ApiEnum {
52
+ name: string;
53
+ sourceFile?: string;
54
+ members: Record<string, string | number>;
55
+ }
56
+ interface LanguageHints {
57
+ /** Strip nullable wrapper, return inner type. null if not nullable.
58
+ * Node: "string | null" → "string"
59
+ * Go: "*Organization" → "Organization"
60
+ * Python: "Optional[str]" → "str" */
61
+ stripNullable(type: string): string | null;
62
+ /** True if a and b differ only by nullability. */
63
+ isNullableOnlyDifference(a: string, b: string): boolean;
64
+ /** True if a and b are union types with same members in different order. */
65
+ isUnionReorder(a: string, b: string): boolean;
66
+ /** True if type is a generic type parameter the extractor can't resolve. */
67
+ isGenericTypeParam(type: string): boolean;
68
+ /** True if type is an extraction artifact (extractor couldn't resolve).
69
+ * Node: "any"; Python: "Any"; Go: "interface{}" */
70
+ isExtractionArtifact(type: string): boolean;
71
+ /** Whether a missing type alias should be tolerated when the candidate
72
+ * has the same name as an interface or class (TS allows this). */
73
+ tolerateCategoryMismatch: boolean;
74
+ /** Extract innermost meaningful type name from a return type string.
75
+ * Node: "Promise<AutoPaginatable<Organization>>" → "Organization" */
76
+ extractReturnTypeName(returnType: string): string | null;
77
+ /** Extract meaningful type name from a param type string. null for primitives. */
78
+ extractParamTypeName(paramType: string): string | null;
79
+ /** True if sdkResourceProperty maps to className.
80
+ * Node: camelCase ("organizations" → "Organizations")
81
+ * Ruby: snake_case ("organizations" → "Organizations") */
82
+ propertyMatchesClass(propertyName: string, className: string): boolean;
83
+ /** Additional names derived from a model name by this language's emitter.
84
+ * Node: ["FooResponse", "SerializedFoo"]
85
+ * Go: ["FooResponse"] */
86
+ derivedModelNames(modelName: string): string[];
87
+ /** True if two type strings are semantically equivalent even when
88
+ * structurally different — e.g., a named enum vs an inline union
89
+ * of its string literal values. The candidate surface is provided
90
+ * so the hint can look up enum definitions.
91
+ * Returns true to suppress the mismatch, false to report it. */
92
+ isTypeEquivalent?(baselineType: string, candidateType: string, candidateSurface: ApiSurface): boolean;
93
+ /** True if two method signatures should be considered equivalent despite
94
+ * structural differences. Called as a fallback when strict positional
95
+ * matching fails — e.g., when the baseline unpacks body fields into
96
+ * individual params while the candidate uses a dict/array payload.
97
+ * Returns true to suppress the mismatch. */
98
+ isSignatureEquivalent?(baseline: ApiMethod, candidate: ApiMethod, candidateSurface: ApiSurface): boolean;
99
+ /** Base class names that indicate a data model (→ ApiInterface).
100
+ * Python: ["BaseModel"]; PHP: ["BaseResource"].
101
+ * Extractors should provide these for their SDK. */
102
+ modelBaseClasses?: string[];
103
+ /** Base class names that indicate an exception class.
104
+ * Python: ["Exception", "BaseException"]; PHP: ["Exception"]. */
105
+ exceptionBaseClasses?: string[];
106
+ /** Type names for list/paginated resource wrappers (for return type unwrapping).
107
+ * The first type argument is extracted as the inner item type.
108
+ * e.g., ["ListResource"] causes `ListResource[Org, ...]` → `Org`. */
109
+ listResourcePatterns?: string[];
110
+ }
111
+ interface Extractor {
112
+ language: string;
113
+ extract(sdkPath: string): Promise<ApiSurface>;
114
+ hints: LanguageHints;
115
+ }
116
+ interface MethodOverlay {
117
+ className: string;
118
+ methodName: string;
119
+ params: ApiParam[];
120
+ returnType: string;
121
+ }
122
+ interface OverlayLookup {
123
+ /** HTTP method + path → existing method info */
124
+ methodByOperation: Map<string, MethodOverlay>;
125
+ /** Reverse map: "ClassName.methodName" → HTTP key for patchOverlay */
126
+ httpKeyByMethod: Map<string, string>;
127
+ /** IR interface name → existing interface name */
128
+ interfaceByName: Map<string, string>;
129
+ /** IR type alias name → existing type alias name */
130
+ typeAliasByName: Map<string, string>;
131
+ /** Barrel file path → symbols that must be exported */
132
+ requiredExports: Map<string, Set<string>>;
133
+ /** IR model name → SDK interface name (auto-inferred from field structure) */
134
+ modelNameByIR: Map<string, string>;
135
+ /** IR symbol name → relative file path in the live SDK */
136
+ fileBySymbol: Map<string, string>;
137
+ }
138
+ type ViolationCategory = 'public-api' | 'signature' | 'export-structure' | 'behavioral' | 'staleness';
139
+ type ViolationSeverity = 'breaking' | 'warning';
140
+ interface Violation {
141
+ category: ViolationCategory;
142
+ severity: ViolationSeverity;
143
+ symbolPath: string;
144
+ baseline: string;
145
+ candidate: string;
146
+ message: string;
147
+ }
148
+ interface Addition {
149
+ symbolPath: string;
150
+ symbolType: 'class' | 'method' | 'interface' | 'type-alias' | 'enum' | 'property';
151
+ }
152
+ interface DiffResult {
153
+ preservationScore: number;
154
+ totalBaselineSymbols: number;
155
+ preservedSymbols: number;
156
+ violations: Violation[];
157
+ additions: Addition[];
158
+ }
159
+ //#endregion
160
+ //#region src/ir/types.d.ts
161
+ /** Authentication scheme extracted from OpenAPI securitySchemes */
162
+ type AuthScheme = {
163
+ kind: 'bearer';
164
+ } | {
165
+ kind: 'apiKey';
166
+ in: 'header' | 'query' | 'cookie';
167
+ name: string;
168
+ } | {
169
+ kind: 'oauth2';
170
+ flows: Record<string, unknown>;
171
+ };
172
+ /** Root IR node representing the full API surface */
173
+ /** A server entry from the OpenAPI servers array */
174
+ interface ServerEntry {
175
+ url: string;
176
+ description?: string;
177
+ }
178
+ /** Root IR node representing the full API surface */
179
+ interface ApiSpec {
180
+ name: string;
181
+ version: string;
182
+ description?: string;
183
+ baseUrl: string;
184
+ servers?: ServerEntry[];
185
+ services: Service[];
186
+ models: Model[];
187
+ enums: Enum[];
188
+ auth?: AuthScheme[];
189
+ }
190
+ /** A service groups related operations (maps to an SDK resource class) */
191
+ interface Service {
192
+ name: string;
193
+ description?: string;
194
+ operations: Operation[];
195
+ }
196
+ /** A single API operation (maps to an SDK method) */
197
+ interface Operation {
198
+ name: string;
199
+ description?: string;
200
+ httpMethod: HttpMethod;
201
+ path: string;
202
+ pathParams: Parameter[];
203
+ queryParams: Parameter[];
204
+ headerParams: Parameter[];
205
+ cookieParams?: Parameter[];
206
+ requestBody?: TypeRef;
207
+ requestBodyEncoding?: 'json' | 'form-data' | 'form-urlencoded' | 'binary' | 'text';
208
+ response: TypeRef;
209
+ successResponses?: SuccessResponse[];
210
+ errors: ErrorResponse[];
211
+ pagination?: PaginationMeta;
212
+ injectIdempotencyKey: boolean;
213
+ deprecated?: boolean;
214
+ async?: boolean;
215
+ }
216
+ /** Structured pagination metadata for auto-paging iterator generation */
217
+ interface PaginationMeta {
218
+ strategy: 'cursor' | 'offset' | 'link-header';
219
+ param: string;
220
+ limitParam?: string;
221
+ dataPath?: string;
222
+ itemType: TypeRef;
223
+ }
224
+ type HttpMethod = 'get' | 'post' | 'put' | 'patch' | 'delete' | 'head' | 'options' | 'trace';
225
+ interface Parameter {
226
+ name: string;
227
+ type: TypeRef;
228
+ required: boolean;
229
+ description?: string;
230
+ deprecated?: boolean;
231
+ default?: unknown;
232
+ example?: unknown;
233
+ }
234
+ /** Type reference — the core type system of the IR */
235
+ type TypeRef = PrimitiveType | ArrayType | ModelRef | EnumRef | UnionType | NullableType | LiteralType | MapType;
236
+ interface PrimitiveType {
237
+ kind: 'primitive';
238
+ type: 'string' | 'integer' | 'number' | 'boolean' | 'unknown';
239
+ format?: string;
240
+ }
241
+ interface ArrayType {
242
+ kind: 'array';
243
+ items: TypeRef;
244
+ }
245
+ interface ModelRef {
246
+ kind: 'model';
247
+ name: string;
248
+ }
249
+ interface EnumRef {
250
+ kind: 'enum';
251
+ name: string;
252
+ values?: (string | number)[];
253
+ }
254
+ interface LiteralType {
255
+ kind: 'literal';
256
+ value: string | number | boolean | null;
257
+ }
258
+ interface UnionType {
259
+ kind: 'union';
260
+ variants: TypeRef[];
261
+ discriminator?: {
262
+ property: string;
263
+ mapping: Record<string, string>;
264
+ };
265
+ /** Which OAS composition keyword produced this union. Emitters can use this to
266
+ * distinguish inheritance (allOf) from exclusive union (oneOf) from open union (anyOf). */
267
+ compositionKind?: 'allOf' | 'oneOf' | 'anyOf';
268
+ }
269
+ interface NullableType {
270
+ kind: 'nullable';
271
+ inner: TypeRef;
272
+ }
273
+ interface MapType {
274
+ kind: 'map';
275
+ valueType: TypeRef;
276
+ keyType?: TypeRef;
277
+ }
278
+ /**
279
+ * A generic type parameter on a model.
280
+ * Example: `DirectoryUser<TCustomAttributes = Record<string, unknown>>`
281
+ * → `{ name: 'TCustomAttributes', default: { kind: 'map', valueType: { kind: 'primitive', type: 'unknown' } } }`
282
+ */
283
+ interface TypeParam {
284
+ name: string;
285
+ /** Default type when the param is not specified. */
286
+ default?: TypeRef;
287
+ }
288
+ /** Model definition (maps to an SDK model/data class) */
289
+ interface Model {
290
+ name: string;
291
+ description?: string;
292
+ fields: Field[];
293
+ /** Generic type parameters. Empty/undefined for non-generic models. */
294
+ typeParams?: TypeParam[];
295
+ }
296
+ interface Field {
297
+ name: string;
298
+ type: TypeRef;
299
+ required: boolean;
300
+ description?: string;
301
+ readOnly?: boolean;
302
+ writeOnly?: boolean;
303
+ deprecated?: boolean;
304
+ default?: unknown;
305
+ example?: unknown;
306
+ }
307
+ /** Enum definition */
308
+ interface Enum {
309
+ name: string;
310
+ values: EnumValue[];
311
+ }
312
+ interface EnumValue {
313
+ name: string;
314
+ value: string | number;
315
+ description?: string;
316
+ deprecated?: boolean;
317
+ }
318
+ /**
319
+ * Exhaustive check helper for TypeRef switches.
320
+ * If a new kind is added to TypeRef, any switch that doesn't handle it
321
+ * will fail to compile because `never` won't accept the unhandled variant.
322
+ *
323
+ * Usage:
324
+ * switch (ref.kind) {
325
+ * case 'primitive': ...
326
+ * case 'array': ...
327
+ * // If you forget 'literal', TypeScript errors here:
328
+ * default: assertNever(ref);
329
+ * }
330
+ */
331
+ declare function assertNever(x: never): never;
332
+ /**
333
+ * Generic depth-first walker for TypeRef trees.
334
+ * Handles recursion into array/nullable/union/map children and provides
335
+ * an exhaustive `assertNever` check so callers don't need to repeat the
336
+ * switch boilerplate. Supply callbacks only for the leaf kinds you care about.
337
+ */
338
+ declare function walkTypeRef(ref: TypeRef, visitor: {
339
+ model?: (ref: ModelRef) => void;
340
+ enum?: (ref: EnumRef) => void;
341
+ primitive?: (ref: PrimitiveType) => void;
342
+ literal?: (ref: LiteralType) => void;
343
+ }): void;
344
+ /**
345
+ * Generic depth-first mapper for TypeRef trees.
346
+ * Like walkTypeRef but returns a transformed value instead of void.
347
+ * Handles recursion into array/nullable/union/map children, passing
348
+ * already-mapped child values to the parent callback.
349
+ */
350
+ declare function mapTypeRef<T>(ref: TypeRef, mapper: {
351
+ primitive: (ref: PrimitiveType) => T;
352
+ array: (ref: ArrayType, mappedItems: T) => T;
353
+ model: (ref: ModelRef) => T;
354
+ enum: (ref: EnumRef) => T;
355
+ union: (ref: UnionType, mappedVariants: T[]) => T;
356
+ nullable: (ref: NullableType, mappedInner: T) => T;
357
+ literal: (ref: LiteralType) => T;
358
+ map: (ref: MapType, mappedValue: T, mappedKey?: T) => T;
359
+ }): T;
360
+ /**
361
+ * Collect all model names referenced (directly or transitively) by a TypeRef.
362
+ */
363
+ declare function collectModelRefs(ref: TypeRef): string[];
364
+ /**
365
+ * Collect all enum names referenced by a TypeRef.
366
+ */
367
+ declare function collectEnumRefs(ref: TypeRef): string[];
368
+ /**
369
+ * Collect all TypeRef-referenced model and enum names from a model's fields.
370
+ * Returns { models, enums } sets for generating import statements.
371
+ */
372
+ declare function collectFieldDependencies(model: Model): {
373
+ models: Set<string>;
374
+ enums: Set<string>;
375
+ };
376
+ /**
377
+ * Assign each model to the service that first references it.
378
+ * Models referenced by multiple services are assigned to the first.
379
+ * Models not referenced by any service are unassigned (absent from the map).
380
+ */
381
+ declare function assignModelsToServices(models: Model[], services: Service[]): Map<string, string>;
382
+ /**
383
+ * Collect all model names referenced as request bodies across all services.
384
+ */
385
+ declare function collectRequestBodyModels(services: Service[]): Set<string>;
386
+ interface ErrorResponse {
387
+ statusCode: number;
388
+ type?: TypeRef;
389
+ }
390
+ /** A successful response entry from a 2xx status code */
391
+ interface SuccessResponse {
392
+ statusCode: number;
393
+ type: TypeRef;
394
+ }
395
+ //#endregion
396
+ export { collectRequestBodyModels as A, ApiProperty as B, TypeRef as C, collectEnumRefs as D, assignModelsToServices as E, ApiEnum as F, LanguageHints as G, ApiTypeAlias as H, ApiField as I, Violation as J, MethodOverlay as K, ApiInterface as L, walkTypeRef as M, Addition as N, collectFieldDependencies as O, ApiClass as P, ApiMethod as R, TypeParam as S, assertNever as T, DiffResult as U, ApiSurface as V, Extractor as W, ViolationSeverity as X, ViolationCategory as Y, Parameter as _, EnumRef as a, Service as b, Field as c, MapType as d, Model as f, PaginationMeta as g, Operation as h, Enum as i, mapTypeRef as j, collectModelRefs as k, HttpMethod as l, NullableType as m, ArrayType as n, EnumValue as o, ModelRef as p, OverlayLookup as q, AuthScheme as r, ErrorResponse as s, ApiSpec as t, LiteralType as u, PrimitiveType as v, UnionType as w, SuccessResponse as x, ServerEntry as y, ApiParam as z };
397
+ //# sourceMappingURL=types-O25qZxMl.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-O25qZxMl.d.mts","names":[],"sources":["../src/compat/types.ts","../src/ir/types.ts"],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import { J as Violation, U as DiffResult, V as ApiSurface, t as ApiSpec } from "../types-O25qZxMl.mjs";
2
+
3
+ //#region src/verify/types.d.ts
4
+ interface VerifyDiagnostics {
5
+ compatCheck?: {
6
+ totalBaselineSymbols: number;
7
+ preservedSymbols: number;
8
+ preservationScore: number;
9
+ violationsByCategory: Record<string, number>;
10
+ violationsBySeverity: Record<string, number>;
11
+ additions: number;
12
+ scopedToSpec: boolean;
13
+ scopedSymbolCount?: number;
14
+ };
15
+ stalenessCheck?: {
16
+ staleSymbolCount: number;
17
+ staleSymbols: string[];
18
+ };
19
+ smokeCheck?: {
20
+ passed: boolean;
21
+ findingsCount?: number;
22
+ compileErrors?: boolean;
23
+ };
24
+ retryLoop?: {
25
+ attempts: number;
26
+ converged: boolean;
27
+ finalScore: number;
28
+ patchedPerIteration: number[];
29
+ };
30
+ }
31
+ interface CompatCheckResult {
32
+ passed: boolean;
33
+ diff: DiffResult;
34
+ scopedToSpec: boolean;
35
+ scopedSymbolCount?: number;
36
+ }
37
+ interface OverlayRetryResult {
38
+ status: 'passed' | 'max-retries' | 'no-patchable' | 'stalled';
39
+ attempts: number;
40
+ patchedPerIteration: number[];
41
+ compatResult: CompatCheckResult;
42
+ }
43
+ interface SmokeCheckResult {
44
+ passed: boolean;
45
+ findingsCount?: number;
46
+ compileErrors?: boolean;
47
+ baselinePath: string;
48
+ generatedBaseline: boolean;
49
+ }
50
+ interface StalenessCheckResult {
51
+ violations: Violation[];
52
+ }
53
+ //#endregion
54
+ //#region src/verify/run-compat-check.d.ts
55
+ declare function runCompatCheck(baseline: ApiSurface, outputDir: string, lang: string, spec?: ApiSpec): Promise<CompatCheckResult>;
56
+ //#endregion
57
+ //#region src/verify/run-overlay-retry-loop.d.ts
58
+ declare function runOverlayRetryLoop(opts: {
59
+ baseline: ApiSurface;
60
+ parsedSpec: ApiSpec;
61
+ outputDir: string;
62
+ lang: string;
63
+ maxRetries: number;
64
+ namespace?: string;
65
+ onRetry?: (attemptNumber: number, maxRetries: number, patchableCount: number) => void;
66
+ }): Promise<OverlayRetryResult>;
67
+ //#endregion
68
+ //#region src/verify/run-staleness-check.d.ts
69
+ declare function runStalenessCheck(baseline: ApiSurface, oldSpec: ApiSpec, newSpec: ApiSpec, lang: string): StalenessCheckResult;
70
+ //#endregion
71
+ //#region src/verify/run-smoke-check.d.ts
72
+ declare function runSmokeCheck(opts: {
73
+ spec?: string;
74
+ lang: string;
75
+ output: string;
76
+ rawResults?: string;
77
+ smokeConfig?: string;
78
+ smokeRunner?: string;
79
+ }): SmokeCheckResult;
80
+ //#endregion
81
+ export { type VerifyDiagnostics, runCompatCheck, runOverlayRetryLoop, runSmokeCheck, runStalenessCheck };
82
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/verify/types.ts","../../src/verify/run-compat-check.ts","../../src/verify/run-overlay-retry-loop.ts","../../src/verify/run-staleness-check.ts","../../src/verify/run-smoke-check.ts"],"mappings":";;;UAEiB,iBAAA;EACf,WAAA;IACE,oBAAA;IACA,gBAAA;IACA,iBAAA;IACA,oBAAA,EAAsB,MAAA;IACtB,oBAAA,EAAsB,MAAA;IACtB,SAAA;IACA,YAAA;IACA,iBAAA;EAAA;EAEF,cAAA;IACE,gBAAA;IACA,YAAA;EAAA;EAEF,UAAA;IACE,MAAA;IACA,aAAA;IACA,aAAA;EAAA;EAEF,SAAA;IACE,QAAA;IACA,SAAA;IACA,UAAA;IACA,mBAAA;EAAA;AAAA;AAAA,UAIa,iBAAA;EACf,MAAA;EACA,IAAA,EAAM,UAAA;EACN,YAAA;EACA,iBAAA;AAAA;AAAA,UAGe,kBAAA;EACf,MAAA;EACA,QAAA;EACA,mBAAA;EACA,YAAA,EAAc,iBAAA;AAAA;AAAA,UAGC,gBAAA;EACf,MAAA;EACA,aAAA;EACA,aAAA;EACA,YAAA;EACA,iBAAA;AAAA;AAAA,UAGe,oBAAA;EACf,UAAA,EAAY,SAAA;AAAA;;;iBCxCQ,cAAA,CACpB,QAAA,EAAU,UAAA,EACV,SAAA,UACA,IAAA,UACA,IAAA,GAAO,OAAA,GACN,OAAA,CAAQ,iBAAA;;;iBC8EW,mBAAA,CAAoB,IAAA;EACxC,QAAA,EAAU,UAAA;EACV,UAAA,EAAY,OAAA;EACZ,SAAA;EACA,IAAA;EACA,UAAA;EACA,SAAA;EACA,OAAA,IAAW,aAAA,UAAuB,UAAA,UAAoB,cAAA;AAAA,IACpD,OAAA,CAAQ,kBAAA;;;iBClGI,iBAAA,CACd,QAAA,EAAU,UAAA,EACV,OAAA,EAAS,OAAA,EACT,OAAA,EAAS,OAAA,EACT,IAAA,WACC,oBAAA;;;iBCca,aAAA,CAAc,IAAA;EAC5B,IAAA;EACA,IAAA;EACA,MAAA;EACA,UAAA;EACA,WAAA;EACA,WAAA;AAAA,IACE,gBAAA"}