tywrap 0.1.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/LICENSE +21 -0
- package/README.md +319 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +263 -0
- package/dist/cli.js.map +1 -0
- package/dist/config/index.d.ts +41 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +234 -0
- package/dist/config/index.js.map +1 -0
- package/dist/core/analyzer.d.ts +63 -0
- package/dist/core/analyzer.d.ts.map +1 -0
- package/dist/core/analyzer.js +676 -0
- package/dist/core/analyzer.js.map +1 -0
- package/dist/core/discovery.d.ts +85 -0
- package/dist/core/discovery.d.ts.map +1 -0
- package/dist/core/discovery.js +344 -0
- package/dist/core/discovery.js.map +1 -0
- package/dist/core/generator.d.ts +37 -0
- package/dist/core/generator.d.ts.map +1 -0
- package/dist/core/generator.js +368 -0
- package/dist/core/generator.js.map +1 -0
- package/dist/core/mapper.d.ts +40 -0
- package/dist/core/mapper.d.ts.map +1 -0
- package/dist/core/mapper.js +401 -0
- package/dist/core/mapper.js.map +1 -0
- package/dist/core/validation.d.ts +79 -0
- package/dist/core/validation.d.ts.map +1 -0
- package/dist/core/validation.js +486 -0
- package/dist/core/validation.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -0
- package/dist/runtime/base.d.ts +12 -0
- package/dist/runtime/base.d.ts.map +1 -0
- package/dist/runtime/base.js +6 -0
- package/dist/runtime/base.js.map +1 -0
- package/dist/runtime/errors.d.ts +17 -0
- package/dist/runtime/errors.d.ts.map +1 -0
- package/dist/runtime/errors.js +21 -0
- package/dist/runtime/errors.js.map +1 -0
- package/dist/runtime/http.d.ts +22 -0
- package/dist/runtime/http.d.ts.map +1 -0
- package/dist/runtime/http.js +79 -0
- package/dist/runtime/http.js.map +1 -0
- package/dist/runtime/index.d.ts +8 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +17 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/node.d.ts +48 -0
- package/dist/runtime/node.d.ts.map +1 -0
- package/dist/runtime/node.js +328 -0
- package/dist/runtime/node.js.map +1 -0
- package/dist/runtime/optimized-node.d.ts +131 -0
- package/dist/runtime/optimized-node.d.ts.map +1 -0
- package/dist/runtime/optimized-node.js +622 -0
- package/dist/runtime/optimized-node.js.map +1 -0
- package/dist/runtime/protocol.d.ts +3 -0
- package/dist/runtime/protocol.d.ts.map +1 -0
- package/dist/runtime/protocol.js +3 -0
- package/dist/runtime/protocol.js.map +1 -0
- package/dist/runtime/pyodide.d.ts +27 -0
- package/dist/runtime/pyodide.d.ts.map +1 -0
- package/dist/runtime/pyodide.js +191 -0
- package/dist/runtime/pyodide.js.map +1 -0
- package/dist/tools/python_suite.js +173 -0
- package/dist/tools/python_suite.js.map +1 -0
- package/dist/types/index.d.ts +299 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/dist/tywrap.d.ts +29 -0
- package/dist/tywrap.d.ts.map +1 -0
- package/dist/tywrap.js +589 -0
- package/dist/tywrap.js.map +1 -0
- package/dist/utils/bundle-optimizer.d.ts +182 -0
- package/dist/utils/bundle-optimizer.d.ts.map +1 -0
- package/dist/utils/bundle-optimizer.js +680 -0
- package/dist/utils/bundle-optimizer.js.map +1 -0
- package/dist/utils/cache.d.ts +149 -0
- package/dist/utils/cache.d.ts.map +1 -0
- package/dist/utils/cache.js +492 -0
- package/dist/utils/cache.js.map +1 -0
- package/dist/utils/codec.d.ts +94 -0
- package/dist/utils/codec.d.ts.map +1 -0
- package/dist/utils/codec.js +150 -0
- package/dist/utils/codec.js.map +1 -0
- package/dist/utils/logger.d.ts +42 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +140 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/memory-profiler.d.ts +123 -0
- package/dist/utils/memory-profiler.d.ts.map +1 -0
- package/dist/utils/memory-profiler.js +426 -0
- package/dist/utils/memory-profiler.js.map +1 -0
- package/dist/utils/parallel-processor.d.ts +146 -0
- package/dist/utils/parallel-processor.d.ts.map +1 -0
- package/dist/utils/parallel-processor.js +636 -0
- package/dist/utils/parallel-processor.js.map +1 -0
- package/dist/utils/python.d.ts +8 -0
- package/dist/utils/python.d.ts.map +1 -0
- package/dist/utils/python.js +56 -0
- package/dist/utils/python.js.map +1 -0
- package/dist/utils/runtime.d.ts +153 -0
- package/dist/utils/runtime.d.ts.map +1 -0
- package/dist/utils/runtime.js +519 -0
- package/dist/utils/runtime.js.map +1 -0
- package/package.json +136 -0
- package/runtime/python_bridge.py +476 -0
- package/src/cli.ts +331 -0
- package/src/config/index.ts +289 -0
- package/src/core/analyzer.ts +788 -0
- package/src/core/discovery.ts +415 -0
- package/src/core/generator.ts +447 -0
- package/src/core/mapper.ts +504 -0
- package/src/core/validation.ts +693 -0
- package/src/index.ts +83 -0
- package/src/runtime/base.ts +32 -0
- package/src/runtime/errors.ts +19 -0
- package/src/runtime/http.ts +132 -0
- package/src/runtime/index.ts +24 -0
- package/src/runtime/node.ts +431 -0
- package/src/runtime/optimized-node.ts +838 -0
- package/src/runtime/protocol.ts +2 -0
- package/src/runtime/pyodide.ts +228 -0
- package/src/types/global.d.ts +60 -0
- package/src/types/index.ts +410 -0
- package/src/tywrap.ts +669 -0
- package/src/utils/bundle-optimizer.ts +876 -0
- package/src/utils/cache.ts +634 -0
- package/src/utils/codec.ts +275 -0
- package/src/utils/logger.ts +201 -0
- package/src/utils/memory-profiler.ts +582 -0
- package/src/utils/parallel-processor.ts +879 -0
- package/src/utils/python.ts +79 -0
- package/src/utils/runtime.ts +616 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/utils/python.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA6BD,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAsB,uBAAuB,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CA+BjG"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { detectRuntime, pathUtils, isAbsolutePath, getPythonExecutableName, getVenvBinDir, getVenvPythonExe, } from './runtime.js';
|
|
2
|
+
let nodePathModule;
|
|
3
|
+
async function loadNodePathModule() {
|
|
4
|
+
if (nodePathModule !== undefined) {
|
|
5
|
+
return nodePathModule;
|
|
6
|
+
}
|
|
7
|
+
const runtime = detectRuntime();
|
|
8
|
+
if (runtime.name === 'node' || runtime.name === 'bun') {
|
|
9
|
+
try {
|
|
10
|
+
nodePathModule = await import('node:path');
|
|
11
|
+
return nodePathModule;
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
try {
|
|
15
|
+
nodePathModule = await import('path');
|
|
16
|
+
return nodePathModule;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
nodePathModule = null;
|
|
20
|
+
return nodePathModule;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
nodePathModule = null;
|
|
25
|
+
return nodePathModule;
|
|
26
|
+
}
|
|
27
|
+
export function getDefaultPythonPath() {
|
|
28
|
+
return getPythonExecutableName();
|
|
29
|
+
}
|
|
30
|
+
export async function resolvePythonExecutable(options = {}) {
|
|
31
|
+
const pythonPath = options.pythonPath?.trim();
|
|
32
|
+
const virtualEnv = options.virtualEnv?.trim();
|
|
33
|
+
if (virtualEnv) {
|
|
34
|
+
const usesDefaultPython = !pythonPath || pythonPath === 'python3' || pythonPath === 'python';
|
|
35
|
+
if (usesDefaultPython) {
|
|
36
|
+
const cwd = options.cwd ??
|
|
37
|
+
(typeof process !== 'undefined' && typeof process.cwd === 'function' ? process.cwd() : '.');
|
|
38
|
+
const binDir = getVenvBinDir();
|
|
39
|
+
const exe = getVenvPythonExe();
|
|
40
|
+
const pathMod = await loadNodePathModule();
|
|
41
|
+
if (pathMod) {
|
|
42
|
+
const venvRoot = pathMod.resolve(cwd, virtualEnv);
|
|
43
|
+
return pathMod.join(venvRoot, binDir, exe);
|
|
44
|
+
}
|
|
45
|
+
const venvRoot = isAbsolutePath(virtualEnv)
|
|
46
|
+
? pathUtils.join(virtualEnv)
|
|
47
|
+
: pathUtils.join(cwd, virtualEnv);
|
|
48
|
+
return pathUtils.join(venvRoot, binDir, exe);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (pythonPath) {
|
|
52
|
+
return pythonPath;
|
|
53
|
+
}
|
|
54
|
+
return getDefaultPythonPath();
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=python.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/utils/python.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,SAAS,EAET,cAAc,EACd,uBAAuB,EACvB,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAUtB,IAAI,cAA6C,CAAC;AAElD,KAAK,UAAU,kBAAkB;IAC/B,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,cAAc,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAC3C,OAAO,cAAc,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC;gBACH,cAAc,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,OAAO,cAAc,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBACP,cAAc,GAAG,IAAI,CAAC;gBACtB,OAAO,cAAc,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IACD,cAAc,GAAG,IAAI,CAAC;IACtB,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,uBAAuB,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAgC,EAAE;IAC9E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;IAE9C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,iBAAiB,GAAG,CAAC,UAAU,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,CAAC;QAC7F,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,GAAG,GACP,OAAO,CAAC,GAAG;gBACX,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC9F,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;YAE3C,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;gBAClD,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC;gBACzC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;gBAC5B,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACpC,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,oBAAoB,EAAE,CAAC;AAChC,CAAC"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime detection utilities for Node.js, Deno, Bun, and Browser environments
|
|
3
|
+
*/
|
|
4
|
+
export type Runtime = 'node' | 'deno' | 'bun' | 'browser' | 'unknown';
|
|
5
|
+
interface RuntimeInfo {
|
|
6
|
+
name: Runtime;
|
|
7
|
+
version?: string;
|
|
8
|
+
capabilities: RuntimeCapabilities;
|
|
9
|
+
}
|
|
10
|
+
interface RuntimeCapabilities {
|
|
11
|
+
filesystem: boolean;
|
|
12
|
+
subprocess: boolean;
|
|
13
|
+
webassembly: boolean;
|
|
14
|
+
webworkers: boolean;
|
|
15
|
+
sharedArrayBuffer: boolean;
|
|
16
|
+
fetch: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Clear runtime cache (for testing purposes only)
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
export declare function clearRuntimeCache(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Detect the current JavaScript runtime environment
|
|
25
|
+
* Results are cached and frozen to prevent external mutation
|
|
26
|
+
*/
|
|
27
|
+
export declare function detectRuntime(): RuntimeInfo;
|
|
28
|
+
/**
|
|
29
|
+
* Check if running in Node.js
|
|
30
|
+
*/
|
|
31
|
+
export declare function isNodejs(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Check if running in Deno
|
|
34
|
+
*/
|
|
35
|
+
export declare function isDeno(): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Check if running in Bun
|
|
38
|
+
*/
|
|
39
|
+
export declare function isBun(): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Check if running in browser
|
|
42
|
+
*/
|
|
43
|
+
export declare function isBrowser(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Get runtime capabilities
|
|
46
|
+
*/
|
|
47
|
+
export declare function getRuntimeCapabilities(): RuntimeCapabilities;
|
|
48
|
+
/**
|
|
49
|
+
* Check if a specific capability is supported
|
|
50
|
+
*/
|
|
51
|
+
export declare function hasCapability(capability: keyof RuntimeCapabilities): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Get the best runtime strategy for Python execution
|
|
54
|
+
*/
|
|
55
|
+
export declare function getBestPythonRuntime(): 'node' | 'pyodide' | 'http';
|
|
56
|
+
/**
|
|
57
|
+
* Runtime-specific path utilities
|
|
58
|
+
*/
|
|
59
|
+
export declare const pathUtils: {
|
|
60
|
+
/**
|
|
61
|
+
* Join paths in a cross-runtime way
|
|
62
|
+
*/
|
|
63
|
+
join(...segments: string[]): string;
|
|
64
|
+
/**
|
|
65
|
+
* Join paths asynchronously with enhanced Node.js support
|
|
66
|
+
*/
|
|
67
|
+
joinAsync(...segments: string[]): Promise<string>;
|
|
68
|
+
/**
|
|
69
|
+
* Resolve absolute path in a cross-runtime way (synchronous)
|
|
70
|
+
*/
|
|
71
|
+
resolve(path: string): string;
|
|
72
|
+
/**
|
|
73
|
+
* Resolve absolute path in a cross-runtime way (asynchronous)
|
|
74
|
+
*/
|
|
75
|
+
resolveAsync(path: string): Promise<string>;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Cross-runtime file system operations
|
|
79
|
+
*/
|
|
80
|
+
export declare const fsUtils: {
|
|
81
|
+
/**
|
|
82
|
+
* Check if file system operations are available
|
|
83
|
+
*/
|
|
84
|
+
isAvailable(): boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Read file in a cross-runtime way
|
|
87
|
+
*/
|
|
88
|
+
readFile(path: string): Promise<string>;
|
|
89
|
+
/**
|
|
90
|
+
* Write file in a cross-runtime way
|
|
91
|
+
*/
|
|
92
|
+
writeFile(path: string, content: string): Promise<void>;
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* Cross-runtime subprocess execution
|
|
96
|
+
*/
|
|
97
|
+
export declare const processUtils: {
|
|
98
|
+
/**
|
|
99
|
+
* Check if subprocess operations are available
|
|
100
|
+
*/
|
|
101
|
+
isAvailable(): boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Execute command in a cross-runtime way
|
|
104
|
+
*/
|
|
105
|
+
exec(command: string, args?: string[]): Promise<{
|
|
106
|
+
stdout: string;
|
|
107
|
+
stderr: string;
|
|
108
|
+
code: number;
|
|
109
|
+
}>;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Platform detection utilities
|
|
113
|
+
*/
|
|
114
|
+
/**
|
|
115
|
+
* Check if running on Windows
|
|
116
|
+
*/
|
|
117
|
+
export declare function isWindows(): boolean;
|
|
118
|
+
/**
|
|
119
|
+
* Check if running on macOS
|
|
120
|
+
*/
|
|
121
|
+
export declare function isMacOS(): boolean;
|
|
122
|
+
/**
|
|
123
|
+
* Check if running on Linux
|
|
124
|
+
*/
|
|
125
|
+
export declare function isLinux(): boolean;
|
|
126
|
+
/**
|
|
127
|
+
* Check if a path is absolute
|
|
128
|
+
*/
|
|
129
|
+
export declare function isAbsolutePath(path: string): boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Get the path separator for the current platform
|
|
132
|
+
*/
|
|
133
|
+
export declare function getPathSeparator(): string;
|
|
134
|
+
/**
|
|
135
|
+
* Get the default Python executable name for the current platform
|
|
136
|
+
*/
|
|
137
|
+
export declare function getPythonExecutableName(): string;
|
|
138
|
+
/**
|
|
139
|
+
* Get the virtual environment bin directory name
|
|
140
|
+
*/
|
|
141
|
+
export declare function getVenvBinDir(): string;
|
|
142
|
+
/**
|
|
143
|
+
* Get the Python executable filename in a virtual environment
|
|
144
|
+
*/
|
|
145
|
+
export declare function getVenvPythonExe(): string;
|
|
146
|
+
/**
|
|
147
|
+
* Cross-runtime hashing and stable stringify utilities
|
|
148
|
+
*/
|
|
149
|
+
export declare const hashUtils: {
|
|
150
|
+
sha256Hex(text: string): Promise<string>;
|
|
151
|
+
};
|
|
152
|
+
export {};
|
|
153
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/utils/runtime.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtE,UAAU,WAAW;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,mBAAmB,CAAC;CACnC;AAED,UAAU,mBAAmB;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;CAChB;AAKD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,WAAW,CAsG3C;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,OAAO,CAEhC;AAED;;GAEG;AACH,wBAAgB,KAAK,IAAI,OAAO,CAE/B;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,mBAAmB,CAE5D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,mBAAmB,GAAG,OAAO,CAG5E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,GAAG,MAAM,CAalE;AAwDD;;GAEG;AACH,eAAO,MAAM,SAAS;IACpB;;OAEG;sBACe,MAAM,EAAE,GAAG,MAAM;IAUnC;;OAEG;2BAC0B,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBvD;;OAEG;kBACW,MAAM,GAAG,MAAM;IAoB7B;;OAEG;uBACsB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAiBlD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO;IAClB;;OAEG;mBACY,OAAO;IAItB;;OAEG;mBACkB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyB7C;;OAEG;oBACmB,MAAM,WAAW,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA+B9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB;;OAEG;mBACY,OAAO;IAItB;;OAEG;kBAEQ,MAAM,SACT,MAAM,EAAE,GACb,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAuE7D,CAAC;AAEF;;GAEG;AAEH;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAMnC;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAMjC;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAMjC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;oBACE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA0B/C,CAAC"}
|