@warmio/contracts 1.2.0 → 3.0.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 (55) hide show
  1. package/README.md +3 -3
  2. package/dist/api/endpoints.d.ts +34 -48
  3. package/dist/api/endpoints.d.ts.map +1 -1
  4. package/dist/api/endpoints.js +36 -56
  5. package/dist/api/endpoints.js.map +1 -1
  6. package/dist/generated/base-openapi.d.ts +1 -1
  7. package/dist/generated/base-openapi.d.ts.map +1 -1
  8. package/dist/generated/base-openapi.js +1 -1
  9. package/dist/generated/base-openapi.js.map +1 -1
  10. package/dist/generated/mcp-package-release-metadata.d.ts +7 -0
  11. package/dist/generated/mcp-package-release-metadata.d.ts.map +1 -0
  12. package/dist/generated/mcp-package-release-metadata.js +7 -0
  13. package/dist/generated/mcp-package-release-metadata.js.map +1 -0
  14. package/dist/generated/private-mcp-tool-descriptors.d.ts +5 -47
  15. package/dist/generated/private-mcp-tool-descriptors.d.ts.map +1 -1
  16. package/dist/generated/private-mcp-tool-descriptors.js +7 -55
  17. package/dist/generated/private-mcp-tool-descriptors.js.map +1 -1
  18. package/dist/generated/warm-app-api-manifest.d.ts +1230 -0
  19. package/dist/generated/warm-app-api-manifest.d.ts.map +1 -0
  20. package/dist/generated/warm-app-api-manifest.js +1841 -0
  21. package/dist/generated/warm-app-api-manifest.js.map +1 -0
  22. package/dist/index.d.ts +0 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +0 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/manifest.d.ts +434 -1189
  27. package/dist/manifest.d.ts.map +1 -1
  28. package/dist/manifest.js +21 -34
  29. package/dist/manifest.js.map +1 -1
  30. package/dist/mcp/distribution.d.ts +221 -71
  31. package/dist/mcp/distribution.d.ts.map +1 -1
  32. package/dist/mcp/distribution.js +41 -47
  33. package/dist/mcp/distribution.js.map +1 -1
  34. package/dist/mcp/tools.d.ts +10 -23
  35. package/dist/mcp/tools.d.ts.map +1 -1
  36. package/dist/mcp/tools.js +8 -45
  37. package/dist/mcp/tools.js.map +1 -1
  38. package/dist/openapi/base.yaml +34 -60
  39. package/dist/openapi/build-openapi.d.ts +1 -0
  40. package/dist/openapi/build-openapi.d.ts.map +1 -1
  41. package/dist/openapi/build-openapi.js +75 -16
  42. package/dist/openapi/build-openapi.js.map +1 -1
  43. package/dist/schemas/index.d.ts +1 -0
  44. package/dist/schemas/index.d.ts.map +1 -1
  45. package/dist/schemas/index.js +1 -0
  46. package/dist/schemas/index.js.map +1 -1
  47. package/dist/schemas/public-api.d.ts +1350 -0
  48. package/dist/schemas/public-api.d.ts.map +1 -0
  49. package/dist/schemas/public-api.js +175 -0
  50. package/dist/schemas/public-api.js.map +1 -0
  51. package/package.json +1 -8
  52. package/dist/public-discovery.d.ts +0 -116
  53. package/dist/public-discovery.d.ts.map +0 -1
  54. package/dist/public-discovery.js +0 -91
  55. package/dist/public-discovery.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../src/schemas/public-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ import { z } from 'zod';
2
+ const dateTimeSchema = z.string().datetime({ offset: true });
3
+ const nullableString = z.string().nullable();
4
+ const nullableNumber = z.number().finite().nullable();
5
+ /** The only error body exposed by public Warm API boundaries. */
6
+ export const publicApiErrorSchema = z.object({ error: z.string() }).strict();
7
+ export const verifyApiResponseSchema = z.object({ valid: z.literal(true) }).strict();
8
+ export const exportPaginationSchema = z
9
+ .object({
10
+ limit: z.number().int().positive(),
11
+ next_cursor: z.string(),
12
+ })
13
+ .strict();
14
+ export const exportTransactionSchema = z
15
+ .object({
16
+ account_id: nullableString,
17
+ amount: nullableNumber,
18
+ category: nullableString,
19
+ date: nullableString,
20
+ id: z.string(),
21
+ merchant: nullableString,
22
+ name: nullableString,
23
+ pending: z.boolean().nullable(),
24
+ subcategory: nullableString,
25
+ })
26
+ .strict();
27
+ export const exportAccountSchema = z
28
+ .object({
29
+ balance: nullableNumber,
30
+ id: z.string(),
31
+ mask: nullableString,
32
+ name: nullableString,
33
+ subtype: nullableString,
34
+ type: nullableString,
35
+ })
36
+ .strict();
37
+ export const exportSnapshotSchema = z
38
+ .object({
39
+ asset_value: nullableNumber,
40
+ investment_value: nullableNumber,
41
+ liability_value: nullableNumber,
42
+ net_worth: nullableNumber,
43
+ period_end: z.string(),
44
+ snapshot_date: z.string(),
45
+ total_cash: nullableNumber,
46
+ total_debt: nullableNumber,
47
+ })
48
+ .strict();
49
+ export const exportRecurringSchema = z
50
+ .object({
51
+ account_id: nullableString,
52
+ amount: nullableNumber,
53
+ frequency: nullableString,
54
+ id: z.string(),
55
+ merchant: nullableString,
56
+ next_date: nullableString,
57
+ status: nullableString,
58
+ })
59
+ .strict();
60
+ export const exportBudgetSchema = z
61
+ .object({
62
+ amount: z.number().finite(),
63
+ budget_type: z.string(),
64
+ effective_amount: z.number().finite(),
65
+ name: z.string(),
66
+ percent_used: z.number().finite(),
67
+ period: z.string(),
68
+ remaining: z.number().finite(),
69
+ rollover_enabled: z.boolean(),
70
+ spent: z.number().finite(),
71
+ status: z.string(),
72
+ })
73
+ .strict();
74
+ export const exportGoalSchema = z
75
+ .object({
76
+ category: z.string(),
77
+ current: z.number().finite(),
78
+ linked_account: nullableString,
79
+ monthly_contribution_needed: nullableNumber,
80
+ name: z.string(),
81
+ progress_percent: z.number().finite(),
82
+ status: z.string(),
83
+ target: z.number().finite(),
84
+ target_date: nullableString,
85
+ })
86
+ .strict();
87
+ export const exportHealthSchema = z
88
+ .object({
89
+ data_completeness: nullableNumber,
90
+ generated_at: dateTimeSchema,
91
+ label: nullableString,
92
+ message: nullableString,
93
+ pillars: z
94
+ .object({
95
+ borrow: nullableNumber,
96
+ build: nullableNumber,
97
+ save: nullableNumber,
98
+ spend: nullableNumber,
99
+ })
100
+ .strict()
101
+ .nullable(),
102
+ score: nullableNumber,
103
+ })
104
+ .strict();
105
+ export const exportLiabilitySchema = z
106
+ .object({
107
+ account_id: nullableString,
108
+ apr_percentage: nullableNumber,
109
+ balance: nullableNumber,
110
+ expected_payoff_date: nullableString,
111
+ interest_rate_percentage: nullableNumber,
112
+ interest_rate_type: nullableString,
113
+ is_overdue: z.boolean().nullable(),
114
+ minimum_payment: nullableNumber,
115
+ next_payment_due_date: nullableString,
116
+ origination_principal_amount: nullableNumber,
117
+ type: nullableString,
118
+ })
119
+ .strict();
120
+ export const exportHoldingSchema = z
121
+ .object({
122
+ account_id: nullableString,
123
+ cost_basis: nullableNumber,
124
+ quantity: nullableNumber,
125
+ security_name: nullableString,
126
+ symbol: nullableString,
127
+ type: nullableString,
128
+ value: nullableNumber,
129
+ })
130
+ .strict();
131
+ export const exportDatasetResponseSchemas = {
132
+ accounts: z
133
+ .object({ accounts: z.array(exportAccountSchema), generated_at: dateTimeSchema })
134
+ .strict(),
135
+ budgets: z
136
+ .object({ budgets: z.array(exportBudgetSchema), generated_at: dateTimeSchema })
137
+ .strict(),
138
+ goals: z.object({ goals: z.array(exportGoalSchema), generated_at: dateTimeSchema }).strict(),
139
+ health: exportHealthSchema,
140
+ holdings: z
141
+ .object({ holdings: z.array(exportHoldingSchema), generated_at: dateTimeSchema })
142
+ .strict(),
143
+ liabilities: z
144
+ .object({ liabilities: z.array(exportLiabilitySchema), generated_at: dateTimeSchema })
145
+ .strict(),
146
+ recurring: z
147
+ .object({
148
+ generated_at: dateTimeSchema,
149
+ recurring_transactions: z.array(exportRecurringSchema),
150
+ })
151
+ .strict(),
152
+ snapshots: z
153
+ .object({ snapshots: z.array(exportSnapshotSchema), generated_at: dateTimeSchema })
154
+ .strict(),
155
+ transactions: z
156
+ .object({
157
+ generated_at: dateTimeSchema,
158
+ next_knowledge: dateTimeSchema,
159
+ pagination: exportPaginationSchema.optional(),
160
+ transactions: z.array(exportTransactionSchema),
161
+ })
162
+ .strict(),
163
+ };
164
+ export const exportDatasetResponseSchema = z.union([
165
+ exportDatasetResponseSchemas.accounts,
166
+ exportDatasetResponseSchemas.transactions,
167
+ exportDatasetResponseSchemas.snapshots,
168
+ exportDatasetResponseSchemas.recurring,
169
+ exportDatasetResponseSchemas.budgets,
170
+ exportDatasetResponseSchemas.goals,
171
+ exportDatasetResponseSchemas.health,
172
+ exportDatasetResponseSchemas.liabilities,
173
+ exportDatasetResponseSchemas.holdings,
174
+ ]);
175
+ //# sourceMappingURL=public-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../../src/schemas/public-api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warmio/contracts",
3
- "version": "1.2.0",
3
+ "version": "3.0.0",
4
4
  "description": "Side-effect-free public API and MCP contracts for Warm.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -41,9 +41,6 @@
41
41
  "product": [
42
42
  "dist/product.d.ts"
43
43
  ],
44
- "public-discovery": [
45
- "dist/public-discovery.d.ts"
46
- ],
47
44
  "openapi": [
48
45
  "dist/openapi/index.d.ts"
49
46
  ]
@@ -82,10 +79,6 @@
82
79
  "types": "./dist/product.d.ts",
83
80
  "default": "./dist/product.js"
84
81
  },
85
- "./public-discovery": {
86
- "types": "./dist/public-discovery.d.ts",
87
- "default": "./dist/public-discovery.js"
88
- },
89
82
  "./openapi": {
90
83
  "types": "./dist/openapi/index.d.ts",
91
84
  "default": "./dist/openapi/index.js"
@@ -1,116 +0,0 @@
1
- /** Serializable descriptor. The edge worker owns all request execution and dynamic responses. */
2
- export declare const publicDiscoveryMcpDescriptor: {
3
- readonly protocolVersion: '2025-06-18';
4
- readonly serverInfo: {
5
- readonly name: 'warm-public-tools';
6
- readonly title: 'Warm Public Discovery Tools';
7
- readonly version: '1.0.0';
8
- };
9
- readonly paths: {
10
- readonly developers: "/developers";
11
- readonly endpoint: "/mcp";
12
- readonly openapi: "/openapi.yaml";
13
- readonly verify: "/api/verify";
14
- };
15
- readonly tools: readonly [{
16
- readonly annotations: {
17
- readonly readOnlyHint: true;
18
- };
19
- readonly description: 'Return Warm API discovery URLs and the current API catalog document.';
20
- readonly inputSchema: {
21
- type: string;
22
- properties: {};
23
- additionalProperties: boolean;
24
- };
25
- readonly name: 'warm-get-api-catalog';
26
- readonly outputSchema: {
27
- readonly type: 'object';
28
- readonly properties: {
29
- readonly apiCatalogUrl: {
30
- readonly type: 'string';
31
- };
32
- readonly payload: {
33
- readonly type: 'object';
34
- };
35
- };
36
- readonly required: readonly ['apiCatalogUrl', 'payload'];
37
- readonly additionalProperties: false;
38
- };
39
- readonly title: 'Warm API Catalog';
40
- }, {
41
- readonly annotations: {
42
- readonly readOnlyHint: true;
43
- };
44
- readonly description: 'Return the Warm OpenAPI document URL and companion documentation URLs.';
45
- readonly inputSchema: {
46
- type: string;
47
- properties: {};
48
- additionalProperties: boolean;
49
- };
50
- readonly name: 'warm-get-openapi';
51
- readonly outputSchema: {
52
- readonly type: 'object';
53
- readonly properties: {
54
- readonly apiCatalogUrl: {
55
- readonly type: 'string';
56
- };
57
- readonly documentationUrl: {
58
- readonly type: 'string';
59
- };
60
- readonly openapiUrl: {
61
- readonly type: 'string';
62
- };
63
- };
64
- readonly required: readonly ['apiCatalogUrl', 'documentationUrl', 'openapiUrl'];
65
- readonly additionalProperties: false;
66
- };
67
- readonly title: 'Warm OpenAPI';
68
- }, {
69
- readonly annotations: {
70
- readonly readOnlyHint: true;
71
- };
72
- readonly description: 'Fetch the current Warm public API verification payload from /api/verify.';
73
- readonly inputSchema: {
74
- type: string;
75
- properties: {};
76
- additionalProperties: boolean;
77
- };
78
- readonly name: 'warm-get-service-status';
79
- readonly outputSchema: {
80
- readonly type: 'object';
81
- readonly properties: {
82
- readonly ok: {
83
- readonly type: 'boolean';
84
- };
85
- readonly payload: {};
86
- readonly error: {
87
- readonly type: 'object';
88
- readonly properties: {
89
- readonly code: {
90
- readonly type: 'string';
91
- readonly enum: readonly ['VERIFY_TIMEOUT', 'VERIFY_NON_JSON', 'VERIFY_UNAVAILABLE'];
92
- };
93
- readonly message: {
94
- readonly type: 'string';
95
- };
96
- };
97
- readonly required: readonly ['code', 'message'];
98
- readonly additionalProperties: false;
99
- };
100
- readonly status: {
101
- readonly type: 'number';
102
- readonly minimum: 0;
103
- };
104
- readonly statusUrl: {
105
- readonly type: 'string';
106
- };
107
- };
108
- readonly required: readonly ['ok', 'status', 'statusUrl'];
109
- readonly additionalProperties: false;
110
- };
111
- readonly title: 'Warm API Verification';
112
- }];
113
- };
114
- export type PublicDiscoveryTool = (typeof publicDiscoveryMcpDescriptor.tools)[number];
115
- export type PublicDiscoveryToolName = PublicDiscoveryTool['name'];
116
- //# sourceMappingURL=public-discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-discovery.d.ts","sourceRoot":"","sources":["../src/public-discovery.ts"],"names":[],"mappings":"AAmBA,iGAAiG;AACjG,eAAO,MAAM,4BAA4B;aACvC,eAAe,EAAE,YAAY;aAC7B,UAAU;iBACR,IAAI,EAAE,mBAAmB;iBACzB,KAAK,EAAE,6BAA6B;iBACpC,OAAO,EAAE,OAAO;;aAElB,KAAK;iBACH,UAAU;iBACV,QAAQ;iBACR,OAAO;iBACP,MAAM;;aAER,KAAK;iBAED,WAAW;qBAAI,YAAY;;iBAC3B,WAAW,EAAE,sEAAsE;iBACnF,WAAW;;;;;iBACX,IAAI,EAAE,sBAAsB;iBAC5B,YAAY;qBACV,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,aAAa;6BAAI,IAAI,EAAE,QAAQ;;yBAC/B,OAAO;6BAAI,IAAI,EAAE,QAAQ;;;qBAE3B,QAAQ,YAAG,eAAe,EAAE,SAAS;qBACrC,oBAAoB;;iBAEtB,KAAK,EAAE,kBAAkB;;iBAGzB,WAAW;qBAAI,YAAY;;iBAC3B,WAAW,EAAE,wEAAwE;iBACrF,WAAW;;;;;iBACX,IAAI,EAAE,kBAAkB;iBACxB,YAAY;qBACV,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,aAAa;6BAAI,IAAI,EAAE,QAAQ;;yBAC/B,gBAAgB;6BAAI,IAAI,EAAE,QAAQ;;yBAClC,UAAU;6BAAI,IAAI,EAAE,QAAQ;;;qBAE9B,QAAQ,YAAG,eAAe,EAAE,kBAAkB,EAAE,YAAY;qBAC5D,oBAAoB;;iBAEtB,KAAK,EAAE,cAAc;;iBAGrB,WAAW;qBAAI,YAAY;;iBAC3B,WAAW,EAAE,0EAA0E;iBACvF,WAAW;;;;;iBACX,IAAI,EAAE,yBAAyB;iBAC/B,YAAY;qBACV,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,EAAE;6BAAI,IAAI,EAAE,SAAS;;yBACrB,OAAO;yBACP,KAAK;6BACH,IAAI,EAAE,QAAQ;6BACd,UAAU;iCACR,IAAI;qCACF,IAAI,EAAE,QAAQ;qCACd,IAAI,YAAG,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB;;iCAElE,OAAO;qCAAI,IAAI,EAAE,QAAQ;;;6BAE3B,QAAQ,YAAG,MAAM,EAAE,SAAS;6BAC5B,oBAAoB;;yBAEtB,MAAM;6BAAI,IAAI,EAAE,QAAQ;6BAAE,OAAO,EAAE,CAAC;;yBACpC,SAAS;6BAAI,IAAI,EAAE,QAAQ;;;qBAE7B,QAAQ,YAAG,IAAI,EAAE,QAAQ,EAAE,WAAW;qBACtC,oBAAoB;;iBAEtB,KAAK,EAAE,uBAAuB;;CAG1B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,4BAA4B,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;AACtF,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC"}
@@ -1,91 +0,0 @@
1
- /**
2
- * Separate package descriptor: public discovery metadata is importable by docs
3
- * while the edge worker remains the sole request executor.
4
- */
5
- import { DEVELOPERS_PATH, OPENAPI_PATH, PUBLIC_DISCOVERY_MCP_PATH, VERIFY_PATH, } from './api/endpoints.js';
6
- const emptyInputSchema = {
7
- type: 'object',
8
- properties: {},
9
- additionalProperties: false,
10
- };
11
- /** Serializable descriptor. The edge worker owns all request execution and dynamic responses. */
12
- export const publicDiscoveryMcpDescriptor = {
13
- protocolVersion: '2025-06-18',
14
- serverInfo: {
15
- name: 'warm-public-tools',
16
- title: 'Warm Public Discovery Tools',
17
- version: '1.0.0',
18
- },
19
- paths: {
20
- developers: DEVELOPERS_PATH,
21
- endpoint: PUBLIC_DISCOVERY_MCP_PATH,
22
- openapi: OPENAPI_PATH,
23
- verify: VERIFY_PATH,
24
- },
25
- tools: [
26
- {
27
- annotations: { readOnlyHint: true },
28
- description: 'Return Warm API discovery URLs and the current API catalog document.',
29
- inputSchema: emptyInputSchema,
30
- name: 'warm-get-api-catalog',
31
- outputSchema: {
32
- type: 'object',
33
- properties: {
34
- apiCatalogUrl: { type: 'string' },
35
- payload: { type: 'object' },
36
- },
37
- required: ['apiCatalogUrl', 'payload'],
38
- additionalProperties: false,
39
- },
40
- title: 'Warm API Catalog',
41
- },
42
- {
43
- annotations: { readOnlyHint: true },
44
- description: 'Return the Warm OpenAPI document URL and companion documentation URLs.',
45
- inputSchema: emptyInputSchema,
46
- name: 'warm-get-openapi',
47
- outputSchema: {
48
- type: 'object',
49
- properties: {
50
- apiCatalogUrl: { type: 'string' },
51
- documentationUrl: { type: 'string' },
52
- openapiUrl: { type: 'string' },
53
- },
54
- required: ['apiCatalogUrl', 'documentationUrl', 'openapiUrl'],
55
- additionalProperties: false,
56
- },
57
- title: 'Warm OpenAPI',
58
- },
59
- {
60
- annotations: { readOnlyHint: true },
61
- description: 'Fetch the current Warm public API verification payload from /api/verify.',
62
- inputSchema: emptyInputSchema,
63
- name: 'warm-get-service-status',
64
- outputSchema: {
65
- type: 'object',
66
- properties: {
67
- ok: { type: 'boolean' },
68
- payload: {},
69
- error: {
70
- type: 'object',
71
- properties: {
72
- code: {
73
- type: 'string',
74
- enum: ['VERIFY_TIMEOUT', 'VERIFY_NON_JSON', 'VERIFY_UNAVAILABLE'],
75
- },
76
- message: { type: 'string' },
77
- },
78
- required: ['code', 'message'],
79
- additionalProperties: false,
80
- },
81
- status: { type: 'number', minimum: 0 },
82
- statusUrl: { type: 'string' },
83
- },
84
- required: ['ok', 'status', 'statusUrl'],
85
- additionalProperties: false,
86
- },
87
- title: 'Warm API Verification',
88
- },
89
- ],
90
- };
91
- //# sourceMappingURL=public-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-discovery.js","sourceRoot":"","sources":["../src/public-discovery.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,yBAAyB,EACzB,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAI5B,MAAM,gBAAgB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;IACd,oBAAoB,EAAE,KAAK;CACP,CAAC;AAEvB,iGAAiG;AACjG,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,eAAe,EAAE,YAAY;IAC7B,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,6BAA6B;QACpC,OAAO,EAAE,OAAO;KACjB;IACD,KAAK,EAAE;QACL,UAAU,EAAE,eAAe;QAC3B,QAAQ,EAAE,yBAAyB;QACnC,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,WAAW;KACpB;IACD,KAAK,EAAE;QACL;YACE,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;YACnC,WAAW,EAAE,sEAAsE;YACnF,WAAW,EAAE,gBAAgB;YAC7B,IAAI,EAAE,sBAAsB;YAC5B,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC5B;gBACD,QAAQ,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC;gBACtC,oBAAoB,EAAE,KAAK;aAC5B;YACD,KAAK,EAAE,kBAAkB;SAC1B;QACD;YACE,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;YACnC,WAAW,EAAE,wEAAwE;YACrF,WAAW,EAAE,gBAAgB;YAC7B,IAAI,EAAE,kBAAkB;YACxB,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC/B;gBACD,QAAQ,EAAE,CAAC,eAAe,EAAE,kBAAkB,EAAE,YAAY,CAAC;gBAC7D,oBAAoB,EAAE,KAAK;aAC5B;YACD,KAAK,EAAE,cAAc;SACtB;QACD;YACE,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;YACnC,WAAW,EAAE,0EAA0E;YACvF,WAAW,EAAE,gBAAgB;YAC7B,IAAI,EAAE,yBAAyB;YAC/B,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBACvB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,CAAC;6BAClE;4BACD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC5B;wBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;wBAC7B,oBAAoB,EAAE,KAAK;qBAC5B;oBACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE;oBACtC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC9B;gBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC;gBACvC,oBAAoB,EAAE,KAAK;aAC5B;YACD,KAAK,EAAE,uBAAuB;SAC/B;KACF;CACO,CAAC"}