jtlt 0.12.0 → 0.14.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.
- package/CHANGES.md +15 -0
- package/README.md +100 -82
- package/demo/calltemplate-params-demo.js +29 -34
- package/demo/codemirror.esm.js +140 -70
- package/demo/codemirror.js +9 -5
- package/demo/index.js +2 -1
- package/demo/vendor/fontoxpath/dist/fontoxpath.esm.js +508 -499
- package/demo/vendor/jamilih/dist/jml.mjs +516 -225
- package/demo/vendor/jhtml/src/SAJJ/SAJJ.ObjectArrayDelegator.js +17 -17
- package/demo/vendor/jhtml/src/SAJJ/SAJJ.js +60 -61
- package/demo/vendor/jhtml/src/jhtml-browser.js +1 -0
- package/demo/vendor/jhtml/src/jhtml-node.js +1 -0
- package/demo/vendor/jhtml/src/jhtml.js +18 -15
- package/demo/vendor/jsonpath-plus/dist/index-browser-esm.js +11 -5
- package/dist/AbstractJoiningTransformer.d.ts +17 -25
- package/dist/AbstractJoiningTransformer.d.ts.map +1 -1
- package/dist/DOMJoiningTransformer.d.ts +502 -19
- package/dist/DOMJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONJoiningTransformer.d.ts +41 -25
- package/dist/JSONJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformer.d.ts +30 -29
- package/dist/JSONPathTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformerContext.d.ts +152 -99
- package/dist/JSONPathTransformerContext.d.ts.map +1 -1
- package/dist/StringJoiningTransformer.d.ts +42 -28
- package/dist/StringJoiningTransformer.d.ts.map +1 -1
- package/dist/XPathTransformer.d.ts +20 -13
- package/dist/XPathTransformer.d.ts.map +1 -1
- package/dist/XPathTransformerContext.d.ts +92 -53
- package/dist/XPathTransformerContext.d.ts.map +1 -1
- package/dist/XSLTStyleJSONPathResolver.d.ts +1 -1
- package/dist/XSLTStyleJSONPathResolver.d.ts.map +1 -1
- package/dist/index-browser.d.ts +2 -2
- package/dist/index-browser.d.ts.map +1 -1
- package/dist/index-node.d.ts +2 -2
- package/dist/index-node.d.ts.map +1 -1
- package/dist/index.d.ts +224 -171
- package/dist/index.d.ts.map +1 -1
- package/dist/indexedDB.d.ts +107 -0
- package/dist/indexedDB.d.ts.map +1 -0
- package/dist/maybeAsync.d.ts +15 -0
- package/dist/maybeAsync.d.ts.map +1 -0
- package/docs/API.expanded.md +74 -22
- package/docs/API.md +34 -4
- package/docs/TO-DO.md +5 -3
- package/eslint.config.js +28 -4
- package/package.json +25 -22
- package/pnpm-workspace.yaml +41 -4
- package/rollup.config.js +42 -0
- package/src/AbstractJoiningTransformer.js +11 -4
- package/src/DOMJoiningTransformer.js +56 -27
- package/src/JSONJoiningTransformer.js +64 -44
- package/src/JSONPathTransformer.js +124 -85
- package/src/JSONPathTransformerContext.js +252 -70
- package/src/StringJoiningTransformer.js +48 -23
- package/src/XPathTransformer.js +50 -14
- package/src/XPathTransformerContext.js +309 -139
- package/src/index-browser.js +1 -0
- package/src/index-node.js +2 -0
- package/src/index.js +206 -72
- package/src/indexedDB.js +530 -0
- package/src/maybeAsync.js +44 -0
- package/test.html +17 -0
- package/test.js +45 -0
- package/tsconfig-prod.json +1 -0
- package/tsconfig.json +3 -2
- package/dist/types.d.ts +0 -204
- package/dist/types.d.ts.map +0 -1
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
export type ObjectCallback = (this
|
|
3
|
-
|
|
4
|
-
export type
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
|
|
1
|
+
import AbstractJoiningTransformer from './AbstractJoiningTransformer.js';
|
|
2
|
+
export type ObjectCallback = (@this {JSONJoiningTransformer}
|
|
3
|
+
* : JSONJoiningTransformer, obj: Record<string, unknown>) => void;
|
|
4
|
+
export type ArrayCallback = (@this {JSONJoiningTransformer}
|
|
5
|
+
* : JSONJoiningTransformer, arr: any[]) => void;
|
|
6
|
+
export type SimpleCallback<T = "json"> = (@this {T extends "json" ? JSONJoiningTransformer :
|
|
7
|
+
* T extends "string" ? import('./StringJoiningTransformer.js').default
|
|
8
|
+
* : import('./DOMJoiningTransformer.js').default}
|
|
9
|
+
* : T extends "json" ? JSONJoiningTransformer : T extends "string" ? import('./StringJoiningTransformer.js').default : import('./DOMJoiningTransformer.js').default) => void;
|
|
9
10
|
export type ElementAttributes = Record<string, unknown> & {
|
|
10
11
|
dataset?: Record<string, string>;
|
|
11
12
|
$a?: [string, string][];
|
|
@@ -56,14 +57,9 @@ export type ElementInfo = {
|
|
|
56
57
|
* boolean/null add primitives accordingly. It does not perform HTML escaping
|
|
57
58
|
* or string serialization; it builds real JS values.
|
|
58
59
|
* @extends {AbstractJoiningTransformer<"json">}
|
|
60
|
+
* @template {import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig} [TConfig=import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig]
|
|
59
61
|
*/
|
|
60
|
-
declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json"> {
|
|
61
|
-
/**
|
|
62
|
-
* @param {any[]|Record<string, unknown>} [o] - Initial object or array
|
|
63
|
-
* @param {import('./AbstractJoiningTransformer.js').
|
|
64
|
-
* JSONJoiningTransformerConfig} [cfg] - Configuration object
|
|
65
|
-
*/
|
|
66
|
-
constructor(o?: any[] | Record<string, unknown>, cfg?: import("./AbstractJoiningTransformer.js").JSONJoiningTransformerConfig);
|
|
62
|
+
declare class JSONJoiningTransformer<TConfig extends import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig = import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig> extends AbstractJoiningTransformer<"json"> {
|
|
67
63
|
/** @type {any[]|Record<string, unknown>} */
|
|
68
64
|
_obj: any[] | Record<string, unknown>;
|
|
69
65
|
/** @type {any} */
|
|
@@ -84,6 +80,21 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
84
80
|
document: any;
|
|
85
81
|
format?: string;
|
|
86
82
|
}>;
|
|
83
|
+
root: any;
|
|
84
|
+
/** @type {any} */
|
|
85
|
+
_outputConfig: any;
|
|
86
|
+
/**
|
|
87
|
+
* @template {import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig} T
|
|
88
|
+
* @param {any[]|Record<string, unknown>} [o] - Initial JSON object or array
|
|
89
|
+
* @param {T} [cfg] - Configuration options
|
|
90
|
+
* @returns {JSONJoiningTransformer<T>}
|
|
91
|
+
*/
|
|
92
|
+
static create<T extends import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig>(o?: any[] | Record<string, unknown>, cfg?: T): JSONJoiningTransformer<T>;
|
|
93
|
+
/**
|
|
94
|
+
* @param {any[]|Record<string, unknown>} [o] - Initial JSON object or array
|
|
95
|
+
* @param {import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig} [cfg] - Configuration options
|
|
96
|
+
*/
|
|
97
|
+
constructor(o?: any[] | Record<string, unknown>, cfg?: import('./AbstractJoiningTransformer.js').JSONJoiningTransformerConfig);
|
|
87
98
|
/**
|
|
88
99
|
* Directly appends an item to the internal array without checks.
|
|
89
100
|
* @param {any} item - Item to append
|
|
@@ -106,9 +117,9 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
106
117
|
* Gets the current object or array. If unwrapSingleResult config option is
|
|
107
118
|
* enabled and the root array contains exactly one element, returns that
|
|
108
119
|
* element directly (unwrapped).
|
|
109
|
-
* @returns {any[]|Record<string, unknown>|any}
|
|
120
|
+
* @returns {TConfig['exposeDocuments'] extends true ? any[] : any[]|Record<string, unknown>|any}
|
|
110
121
|
*/
|
|
111
|
-
get(): any[] | Record<string, unknown> | any;
|
|
122
|
+
get(): TConfig['exposeDocuments'] extends true ? any[] : any[] | Record<string, unknown> | any;
|
|
112
123
|
/**
|
|
113
124
|
* Sets a property value on the current object.
|
|
114
125
|
* @param {string} prop - Property name
|
|
@@ -124,7 +135,7 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
124
135
|
*/
|
|
125
136
|
mapEntry(prop: string, val: any): void;
|
|
126
137
|
/**
|
|
127
|
-
* @param {Record<string, unknown>|ObjectCallback} [objOrCb]
|
|
138
|
+
* @param {null|Record<string, unknown>|ObjectCallback} [objOrCb]
|
|
128
139
|
* Seed object or callback.
|
|
129
140
|
* @param {ObjectCallback|any[]} [cbOrUsePropertySets] Callback or sets.
|
|
130
141
|
* @param {any[]|Record<string, unknown>} [usePropertySetsOrPropSets]
|
|
@@ -132,7 +143,7 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
132
143
|
* @param {Record<string, unknown>} [propSets] Key-value pairs to add.
|
|
133
144
|
* @returns {JSONJoiningTransformer}
|
|
134
145
|
*/
|
|
135
|
-
object(objOrCb?: Record<string, unknown> | ObjectCallback, cbOrUsePropertySets?: ObjectCallback | any[], usePropertySetsOrPropSets?: any[] | Record<string, unknown>, propSets?: Record<string, unknown>): JSONJoiningTransformer;
|
|
146
|
+
object(objOrCb?: null | Record<string, unknown> | ObjectCallback, cbOrUsePropertySets?: ObjectCallback | any[], usePropertySetsOrPropSets?: any[] | Record<string, unknown>, propSets?: Record<string, unknown>): JSONJoiningTransformer;
|
|
136
147
|
/**
|
|
137
148
|
* Alias for object(). Build an object/map.
|
|
138
149
|
* @param {Record<string, unknown>|ObjectCallback} [objOrCb]
|
|
@@ -146,11 +157,11 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
146
157
|
map(objOrCb?: Record<string, unknown> | ObjectCallback, cbOrUsePropertySets?: ObjectCallback | any[], usePropertySetsOrPropSets?: any[] | Record<string, unknown>, propSets?: Record<string, unknown>): JSONJoiningTransformer;
|
|
147
158
|
/**
|
|
148
159
|
* Creates a new array and executes a callback in its context.
|
|
149
|
-
* @param {any[]|ArrayCallback} [arrOrCb] Seed array or callback.
|
|
160
|
+
* @param {any[]|ArrayCallback|null} [arrOrCb] Seed array or callback.
|
|
150
161
|
* @param {ArrayCallback} [cb] Callback when first arg was array.
|
|
151
162
|
* @returns {JSONJoiningTransformer}
|
|
152
163
|
*/
|
|
153
|
-
array(arrOrCb?: any[] | ArrayCallback, cb?: ArrayCallback): JSONJoiningTransformer;
|
|
164
|
+
array(arrOrCb?: any[] | ArrayCallback | null, cb?: ArrayCallback): JSONJoiningTransformer;
|
|
154
165
|
/**
|
|
155
166
|
* Appends a string value.
|
|
156
167
|
* @param {string} str String value.
|
|
@@ -206,13 +217,18 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
206
217
|
* @returns {JSONJoiningTransformer}
|
|
207
218
|
*/
|
|
208
219
|
element(elem: string | Element, atts?: ElementAttributes | any[] | SimpleCallback, childNodes?: any[] | SimpleCallback, cb?: SimpleCallback, useAttributeSets?: string[]): JSONJoiningTransformer;
|
|
209
|
-
root: any;
|
|
210
220
|
/**
|
|
211
221
|
* @param {string} prefix
|
|
212
222
|
* @param {string} namespaceURI
|
|
213
223
|
* @returns {JSONJoiningTransformer}
|
|
214
224
|
*/
|
|
215
225
|
namespace(prefix: string, namespaceURI: string): JSONJoiningTransformer;
|
|
226
|
+
/**
|
|
227
|
+
* @param {string} prefix
|
|
228
|
+
* @returns {void}
|
|
229
|
+
* @override
|
|
230
|
+
*/
|
|
231
|
+
_flushPendingNamespace(prefix: string): void;
|
|
216
232
|
/**
|
|
217
233
|
* Adds/updates an attribute for the most recently open element built via
|
|
218
234
|
* a callback-driven element(). When not in an element callback context,
|
|
@@ -266,7 +282,7 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
266
282
|
* Output configuration for the document (encoding, doctype, etc.)
|
|
267
283
|
* @returns {JSONJoiningTransformer}
|
|
268
284
|
*/
|
|
269
|
-
document(cb: (this: JSONJoiningTransformer) => void, cfg?: import(
|
|
285
|
+
document(cb: (this: JSONJoiningTransformer) => void, cfg?: import('./StringJoiningTransformer.js').OutputConfig): JSONJoiningTransformer;
|
|
270
286
|
/**
|
|
271
287
|
* Creates a new result document with metadata (href, format).
|
|
272
288
|
* Similar to XSLT's xsl:result-document, this allows templates to generate
|
|
@@ -280,7 +296,7 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
280
296
|
* Output configuration for the document (encoding, doctype, format, etc.)
|
|
281
297
|
* @returns {JSONJoiningTransformer}
|
|
282
298
|
*/
|
|
283
|
-
resultDocument(href: string, cb: (this: JSONJoiningTransformer) => void, cfg?: import(
|
|
299
|
+
resultDocument(href: string, cb: (this: JSONJoiningTransformer) => void, cfg?: import('./StringJoiningTransformer.js').OutputConfig): JSONJoiningTransformer;
|
|
284
300
|
/**
|
|
285
301
|
* Helper method to use property sets.
|
|
286
302
|
* @param {Record<string, unknown>} obj - Object to which to apply
|
|
@@ -290,5 +306,5 @@ declare class JSONJoiningTransformer extends AbstractJoiningTransformer<"json">
|
|
|
290
306
|
*/
|
|
291
307
|
_usePropertySets(obj: Record<string, unknown>, psName: string): Record<string, unknown>;
|
|
292
308
|
}
|
|
293
|
-
|
|
309
|
+
export default JSONJoiningTransformer;
|
|
294
310
|
//# sourceMappingURL=JSONJoiningTransformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/JSONJoiningTransformer.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"JSONJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/JSONJoiningTransformer.js"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import JSONPathTransformerContext from './JSONPathTransformerContext.js';
|
|
2
2
|
/**
|
|
3
3
|
* Applies named JSONPath-driven templates to JSON data.
|
|
4
4
|
*
|
|
@@ -6,53 +6,52 @@ export default JSONPathTransformer;
|
|
|
6
6
|
* optional `mode`), sorts by priority, and invokes the winning template.
|
|
7
7
|
* If no template matches, built-in default rules emulate XSLT-like behavior
|
|
8
8
|
* for objects, arrays, scalars, etc.
|
|
9
|
-
* @template T
|
|
9
|
+
* @template {"json"|"string"|"dom"} [T="json"]
|
|
10
10
|
*/
|
|
11
|
-
declare class JSONPathTransformer<T> {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
static makeJSONPathAbsolute(select: string): string;
|
|
11
|
+
declare class JSONPathTransformer<T extends "json" | "string" | "dom" = "json"> {
|
|
12
|
+
_config: import("./JSONPathTransformerContext.js").JSONPathTransformerContextConfig<T>;
|
|
13
|
+
/** @type {import('./index.js').JSONPathTemplateObject<T>[]} */
|
|
14
|
+
rootTemplates: import('./index.js').JSONPathTemplateObject<T>[];
|
|
15
|
+
templates: import("./index.js").JSONPathTemplateObject<T>[];
|
|
17
16
|
static DefaultTemplateRules: {
|
|
18
17
|
transformRoot: {
|
|
19
18
|
/**
|
|
20
|
-
* @template U
|
|
19
|
+
* @template {"json"|"string"|"dom"} U
|
|
21
20
|
* @this {JSONPathTransformerContext<U>}
|
|
22
|
-
* @param {
|
|
21
|
+
* @param {unknown} value - Value
|
|
23
22
|
* @param {{mode?: string}} cfg - Configuration
|
|
24
23
|
* @returns {void}
|
|
25
24
|
*/
|
|
26
|
-
template<U>(this: JSONPathTransformerContext<U>, value:
|
|
25
|
+
template<U extends "json" | "string" | "dom">(this: JSONPathTransformerContext<U>, value: unknown, cfg: {
|
|
27
26
|
mode?: string;
|
|
28
27
|
}): void;
|
|
29
28
|
};
|
|
30
29
|
transformPropertyNames: {
|
|
31
30
|
/**
|
|
32
|
-
* @param {
|
|
33
|
-
* @returns {
|
|
31
|
+
* @param {unknown} value - Current context value
|
|
32
|
+
* @returns {unknown}
|
|
34
33
|
*/
|
|
35
|
-
template(value:
|
|
34
|
+
template(value: unknown): unknown;
|
|
36
35
|
};
|
|
37
36
|
transformObjects: {
|
|
38
37
|
/**
|
|
39
38
|
* @this {JSONPathTransformerContext}
|
|
40
|
-
* @param {
|
|
39
|
+
* @param {unknown} value - Value
|
|
41
40
|
* @param {{mode?: string}} cfg - Configuration
|
|
42
41
|
* @returns {void}
|
|
43
42
|
*/
|
|
44
|
-
template(this: JSONPathTransformerContext
|
|
43
|
+
template(this: JSONPathTransformerContext, value: unknown, cfg: {
|
|
45
44
|
mode?: string;
|
|
46
45
|
}): void;
|
|
47
46
|
};
|
|
48
47
|
transformArrays: {
|
|
49
48
|
/**
|
|
50
49
|
* @this {JSONPathTransformerContext}
|
|
51
|
-
* @param {
|
|
50
|
+
* @param {unknown} value - Value
|
|
52
51
|
* @param {{mode?: string}} cfg - Configuration
|
|
53
52
|
* @returns {void}
|
|
54
53
|
*/
|
|
55
|
-
template(this: JSONPathTransformerContext
|
|
54
|
+
template(this: JSONPathTransformerContext, value: unknown, cfg: {
|
|
56
55
|
mode?: string;
|
|
57
56
|
}): void;
|
|
58
57
|
};
|
|
@@ -61,25 +60,27 @@ declare class JSONPathTransformer<T> {
|
|
|
61
60
|
* @this {JSONPathTransformerContext}
|
|
62
61
|
* @returns {JSONPathTransformerContext}
|
|
63
62
|
*/
|
|
64
|
-
template(this: JSONPathTransformerContext
|
|
63
|
+
template(this: JSONPathTransformerContext): JSONPathTransformerContext;
|
|
65
64
|
};
|
|
66
65
|
transformFunctions: {
|
|
67
66
|
/**
|
|
68
|
-
* @param {(
|
|
69
|
-
*
|
|
67
|
+
* @param {(...args: unknown[]) => unknown} value - Function at current
|
|
68
|
+
* context
|
|
69
|
+
* @returns {unknown}
|
|
70
70
|
*/
|
|
71
|
-
template(value: (...args:
|
|
71
|
+
template(value: (...args: unknown[]) => unknown): unknown;
|
|
72
72
|
};
|
|
73
73
|
};
|
|
74
|
+
/**
|
|
75
|
+
* @param {string} select - JSONPath selector
|
|
76
|
+
* @returns {string} Absolute JSONPath
|
|
77
|
+
*/
|
|
78
|
+
static makeJSONPathAbsolute(select: string): string;
|
|
74
79
|
/**
|
|
75
80
|
* @param {import('./JSONPathTransformerContext.js').
|
|
76
81
|
* JSONPathTransformerContextConfig<T>} config - Configuration object
|
|
77
82
|
*/
|
|
78
|
-
constructor(config: import(
|
|
79
|
-
_config: import("./JSONPathTransformerContext.js").JSONPathTransformerContextConfig<T>;
|
|
80
|
-
/** @type {import('./index.js').JSONPathTemplateObject<T>[]} */
|
|
81
|
-
rootTemplates: import("./index.js").JSONPathTemplateObject<T>[];
|
|
82
|
-
templates: import("./index.js").JSONPathTemplateObject<T>[];
|
|
83
|
+
constructor(config: import('./JSONPathTransformerContext.js').JSONPathTransformerContextConfig<T>);
|
|
83
84
|
/**
|
|
84
85
|
* @returns {void}
|
|
85
86
|
*/
|
|
@@ -88,7 +89,7 @@ declare class JSONPathTransformer<T> {
|
|
|
88
89
|
* @param {string} [mode] - Transformation mode
|
|
89
90
|
* @returns {import('./index.js').ResultType<T>} The transformation result
|
|
90
91
|
*/
|
|
91
|
-
transform(mode?: string): import(
|
|
92
|
+
transform(mode?: string): import('./index.js').ResultType<T>;
|
|
92
93
|
}
|
|
93
|
-
|
|
94
|
+
export default JSONPathTransformer;
|
|
94
95
|
//# sourceMappingURL=JSONPathTransformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONPathTransformer.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformer.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"JSONPathTransformer.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformer.js"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AAEzE;;;;;;;;GAQG;AACH,cAAM,mBAAmB,CAFa,CAAC,SAAzB,MAAM,GAAC,QAAQ,GAAC,KAAK,GAAK,MAAO;IA4FtC,OAAO;IACZ,+DAA+D;IAC1D,aAAa,EADP,OAAO,YAAY,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE;IAKtD,SAAS;IA9FhB,MAAM,CAAC,oBAAoB;QACzB,aAAa;YACX;;;;;;eAMG;YACH,QAAQ,CAN6B,CAAC,SAAxB,MAAM,GAAC,QAAQ,GAAC,KAAQ,QAC5B,0BAA0B,CAAC,CAAC,CAAC,SAC5B,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,sBAAsB;YACpB;;;eAGG;YACH,QAAQ,QAHG,OAAO,GACL,OAAO;;QAUtB,gBAAgB;YACd;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,eAAe;YACb;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,gBAAgB;YACd;;;eAGG;YACH,QAAQ,OAHE,0BAA0B,GACvB,0BAA0B;;QAMzC,kBAAkB;YAChB;;;;eAIG;YACH,QAAQ,QAJG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAE7B,OAAO;;MAOtB;IAEF;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAE,MAAM,EAHxB,MAGwB,GAFtB,MAAM,CAQlB;IAED;;;OAGG;IACH,YAAa,MAAM,EAHR,OAAO,iCAAiC,EAC9C,gCAAgC,CAAC,CAAC,CAEpB,EAoClB;IAED;;OAEG;IACH,0BAA0B,IAFb,IAAI,CAShB;IAED;;;OAGG;IACH,SAAS,CAAE,IAAI,AAHZ,CACA,EADQ,MAGI,GAFF,OAAO,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,CAsE9C;CACF;eAEc,mBAAmB"}
|