pynect 0.2.0 → 0.2.1
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/README.md +62 -35
- package/binding.gyp +15 -8
- package/dist/cli/codegen.js +2 -2
- package/dist/cli/codegen.js.map +1 -1
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +9 -10
- package/dist/cli/sync.js.map +1 -1
- package/dist/config/project.d.ts +61 -5
- package/dist/config/project.d.ts.map +1 -1
- package/dist/config/project.js +189 -21
- package/dist/config/project.js.map +1 -1
- package/dist/core/{IsolatedWorker.d.ts → isolated-worker.d.ts} +1 -1
- package/dist/core/isolated-worker.d.ts.map +1 -0
- package/dist/core/{IsolatedWorker.js → isolated-worker.js} +3 -3
- package/dist/core/isolated-worker.js.map +1 -0
- package/dist/core/{PyCallable.d.ts → py-callable.d.ts} +2 -2
- package/dist/core/py-callable.d.ts.map +1 -0
- package/dist/core/{PyCallable.js → py-callable.js} +6 -6
- package/dist/core/py-callable.js.map +1 -0
- package/dist/core/{PyContext.d.ts → py-context.d.ts} +2 -2
- package/dist/core/py-context.d.ts.map +1 -0
- package/dist/core/{PyContext.js → py-context.js} +16 -16
- package/dist/core/py-context.js.map +1 -0
- package/dist/core/{PyIterator.d.ts → py-iterator.d.ts} +2 -2
- package/dist/core/py-iterator.d.ts.map +1 -0
- package/dist/core/{PyIterator.js → py-iterator.js} +9 -9
- package/dist/core/py-iterator.js.map +1 -0
- package/dist/core/{PyModule.d.ts → py-module.d.ts} +2 -2
- package/dist/core/py-module.d.ts.map +1 -0
- package/dist/core/{PyModule.js → py-module.js} +10 -10
- package/dist/core/py-module.js.map +1 -0
- package/dist/core/{PyProxy.d.ts → py-proxy.d.ts} +1 -1
- package/dist/core/py-proxy.d.ts.map +1 -0
- package/dist/core/{PyProxy.js → py-proxy.js} +8 -8
- package/dist/core/py-proxy.js.map +1 -0
- package/dist/core/{PyRuntime.d.ts → py-runtime.d.ts} +6 -5
- package/dist/core/py-runtime.d.ts.map +1 -0
- package/dist/core/{PyRuntime.js → py-runtime.js} +48 -66
- package/dist/core/py-runtime.js.map +1 -0
- package/dist/env/{PackageInstaller.d.ts → package-installer.d.ts} +3 -3
- package/dist/env/package-installer.d.ts.map +1 -0
- package/dist/env/{PackageInstaller.js → package-installer.js} +10 -23
- package/dist/env/package-installer.js.map +1 -0
- package/dist/env/{ProjectEnvironment.d.ts → project-environment.d.ts} +4 -3
- package/dist/env/project-environment.d.ts.map +1 -0
- package/dist/env/{ProjectEnvironment.js → project-environment.js} +49 -40
- package/dist/env/project-environment.js.map +1 -0
- package/dist/env/{PyfigAdapter.d.ts → pyfig-adapter.d.ts} +8 -2
- package/dist/env/pyfig-adapter.d.ts.map +1 -0
- package/dist/env/{PyfigAdapter.js → pyfig-adapter.js} +1 -1
- package/dist/env/pyfig-adapter.js.map +1 -0
- package/dist/env/{PythonDetector.d.ts → python-detector.d.ts} +2 -2
- package/dist/env/python-detector.d.ts.map +1 -0
- package/dist/env/{PythonDetector.js → python-detector.js} +7 -7
- package/dist/env/python-detector.js.map +1 -0
- package/dist/env/{PythonProvisioner.d.ts → python-provisioner.d.ts} +2 -2
- package/dist/env/python-provisioner.d.ts.map +1 -0
- package/dist/env/{PythonProvisioner.js → python-provisioner.js} +3 -3
- package/dist/env/python-provisioner.js.map +1 -0
- package/dist/env/{VenvManager.d.ts → venv-manager.d.ts} +4 -3
- package/dist/env/venv-manager.d.ts.map +1 -0
- package/dist/env/{VenvManager.js → venv-manager.js} +26 -19
- package/dist/env/venv-manager.js.map +1 -0
- package/dist/index.d.ts +28 -28
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +84 -83
- package/dist/index.js.map +1 -1
- package/dist/native/{NativeAddonLoader.d.ts → native-addon-loader.d.ts} +5 -3
- package/dist/native/native-addon-loader.d.ts.map +1 -0
- package/dist/native/native-addon-loader.js +171 -0
- package/dist/native/native-addon-loader.js.map +1 -0
- package/dist/plugins/builtin/{NumpyPlugin.d.ts → numpy-plugin.d.ts} +2 -2
- package/dist/plugins/builtin/numpy-plugin.d.ts.map +1 -0
- package/dist/plugins/builtin/{NumpyPlugin.js → numpy-plugin.js} +5 -5
- package/dist/plugins/builtin/numpy-plugin.js.map +1 -0
- package/dist/plugins/builtin/{PandasPlugin.d.ts → pandas-plugin.d.ts} +2 -2
- package/dist/plugins/builtin/pandas-plugin.d.ts.map +1 -0
- package/dist/plugins/builtin/{PandasPlugin.js → pandas-plugin.js} +5 -5
- package/dist/plugins/builtin/pandas-plugin.js.map +1 -0
- package/dist/plugins/builtin/{TorchPlugin.d.ts → torch-plugin.d.ts} +2 -2
- package/dist/plugins/builtin/torch-plugin.d.ts.map +1 -0
- package/dist/plugins/builtin/{TorchPlugin.js → torch-plugin.js} +5 -5
- package/dist/plugins/builtin/torch-plugin.js.map +1 -0
- package/dist/plugins/index.d.ts +6 -6
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +8 -8
- package/dist/plugins/index.js.map +1 -1
- package/dist/plugins/{PluginManager.d.ts → plugin-manager.d.ts} +2 -2
- package/dist/plugins/plugin-manager.d.ts.map +1 -0
- package/dist/plugins/{PluginManager.js → plugin-manager.js} +6 -6
- package/dist/plugins/plugin-manager.js.map +1 -0
- package/dist/plugins/{Plugin.interface.d.ts → plugin.interface.d.ts} +1 -1
- package/dist/plugins/{Plugin.interface.d.ts.map → plugin.interface.d.ts.map} +1 -1
- package/dist/plugins/{Plugin.interface.js → plugin.interface.js} +1 -1
- package/dist/plugins/plugin.interface.js.map +1 -0
- package/dist/serialization/{DataFrameBridge.d.ts → data-frame-bridge.d.ts} +1 -1
- package/dist/serialization/data-frame-bridge.d.ts.map +1 -0
- package/dist/serialization/{DataFrameBridge.js → data-frame-bridge.js} +3 -3
- package/dist/serialization/data-frame-bridge.js.map +1 -0
- package/dist/serialization/{MsgPackSerializer.d.ts → msg-pack-serializer.d.ts} +1 -1
- package/dist/serialization/msg-pack-serializer.d.ts.map +1 -0
- package/dist/serialization/{MsgPackSerializer.js → msg-pack-serializer.js} +3 -3
- package/dist/serialization/msg-pack-serializer.js.map +1 -0
- package/dist/serialization/{NumpyBridge.d.ts → numpy-bridge.d.ts} +1 -1
- package/dist/serialization/numpy-bridge.d.ts.map +1 -0
- package/dist/serialization/{NumpyBridge.js → numpy-bridge.js} +3 -3
- package/dist/serialization/numpy-bridge.js.map +1 -0
- package/dist/serialization/{Serializer.d.ts → serializer.d.ts} +1 -1
- package/dist/serialization/{Serializer.d.ts.map → serializer.d.ts.map} +1 -1
- package/dist/serialization/{Serializer.js → serializer.js} +9 -9
- package/dist/serialization/{Serializer.js.map → serializer.js.map} +1 -1
- package/dist/types/config.d.ts +14 -11
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js +1 -0
- package/dist/types/config.js.map +1 -1
- package/dist/utils/{ErrorTranslator.d.ts → error-translator.d.ts} +1 -1
- package/dist/utils/error-translator.d.ts.map +1 -0
- package/dist/utils/{ErrorTranslator.js → error-translator.js} +1 -1
- package/dist/utils/error-translator.js.map +1 -0
- package/dist/utils/{Locking.d.ts → locking.d.ts} +1 -1
- package/dist/utils/{Locking.d.ts.map → locking.d.ts.map} +1 -1
- package/dist/utils/{Locking.js → locking.js} +1 -1
- package/dist/utils/{Locking.js.map → locking.js.map} +1 -1
- package/dist/utils/{Logger.d.ts → logger.d.ts} +1 -1
- package/dist/utils/{Logger.d.ts.map → logger.d.ts.map} +1 -1
- package/dist/utils/{Logger.js → logger.js} +1 -1
- package/dist/utils/{Logger.js.map → logger.js.map} +1 -1
- package/dist/utils/{MemoryMonitor.d.ts → memory-monitor.d.ts} +1 -1
- package/dist/utils/memory-monitor.d.ts.map +1 -0
- package/dist/utils/{MemoryMonitor.js → memory-monitor.js} +5 -5
- package/dist/utils/memory-monitor.js.map +1 -0
- package/package.json +3 -2
- package/prebuilds/darwin-arm64/pynect-prebuild.json +8 -0
- package/prebuilds/darwin-arm64/pynect_addon.node +0 -0
- package/prebuilds/darwin-x64/pynect-prebuild.json +8 -0
- package/prebuilds/darwin-x64/pynect_addon.node +0 -0
- package/prebuilds/linux-arm64/pynect-prebuild.json +9 -0
- package/prebuilds/linux-arm64/pynect_addon.node +0 -0
- package/prebuilds/linux-x64/pynect-prebuild.json +9 -0
- package/prebuilds/linux-x64/pynect_addon.node +0 -0
- package/prebuilds/win32-arm64/pynect-prebuild.json +8 -0
- package/prebuilds/win32-arm64/pynect_addon.node +0 -0
- package/prebuilds/win32-x64/pynect-prebuild.json +8 -0
- package/prebuilds/win32-x64/pynect_addon.node +0 -0
- package/python/error_handler.py +2 -2
- package/python/pynect_runtime.py +3 -3
- package/python/serializer.py +3 -3
- package/scripts/postinstall.js +1 -1
- package/scripts/pyfig.js +16 -1
- package/src/native/native-addon-loader.ts +218 -0
- package/src/native/python_bridge.cpp +3 -3
- package/dist/core/IsolatedWorker.d.ts.map +0 -1
- package/dist/core/IsolatedWorker.js.map +0 -1
- package/dist/core/PyCallable.d.ts.map +0 -1
- package/dist/core/PyCallable.js.map +0 -1
- package/dist/core/PyContext.d.ts.map +0 -1
- package/dist/core/PyContext.js.map +0 -1
- package/dist/core/PyIterator.d.ts.map +0 -1
- package/dist/core/PyIterator.js.map +0 -1
- package/dist/core/PyModule.d.ts.map +0 -1
- package/dist/core/PyModule.js.map +0 -1
- package/dist/core/PyProxy.d.ts.map +0 -1
- package/dist/core/PyProxy.js.map +0 -1
- package/dist/core/PyRuntime.d.ts.map +0 -1
- package/dist/core/PyRuntime.js.map +0 -1
- package/dist/env/PackageInstaller.d.ts.map +0 -1
- package/dist/env/PackageInstaller.js.map +0 -1
- package/dist/env/ProjectEnvironment.d.ts.map +0 -1
- package/dist/env/ProjectEnvironment.js.map +0 -1
- package/dist/env/PyfigAdapter.d.ts.map +0 -1
- package/dist/env/PyfigAdapter.js.map +0 -1
- package/dist/env/PythonDetector.d.ts.map +0 -1
- package/dist/env/PythonDetector.js.map +0 -1
- package/dist/env/PythonProvisioner.d.ts.map +0 -1
- package/dist/env/PythonProvisioner.js.map +0 -1
- package/dist/env/VenvManager.d.ts.map +0 -1
- package/dist/env/VenvManager.js.map +0 -1
- package/dist/native/NativeAddonLoader.d.ts.map +0 -1
- package/dist/native/NativeAddonLoader.js +0 -75
- package/dist/native/NativeAddonLoader.js.map +0 -1
- package/dist/plugins/Plugin.interface.js.map +0 -1
- package/dist/plugins/PluginManager.d.ts.map +0 -1
- package/dist/plugins/PluginManager.js.map +0 -1
- package/dist/plugins/builtin/NumpyPlugin.d.ts.map +0 -1
- package/dist/plugins/builtin/NumpyPlugin.js.map +0 -1
- package/dist/plugins/builtin/PandasPlugin.d.ts.map +0 -1
- package/dist/plugins/builtin/PandasPlugin.js.map +0 -1
- package/dist/plugins/builtin/TorchPlugin.d.ts.map +0 -1
- package/dist/plugins/builtin/TorchPlugin.js.map +0 -1
- package/dist/serialization/DataFrameBridge.d.ts.map +0 -1
- package/dist/serialization/DataFrameBridge.js.map +0 -1
- package/dist/serialization/MsgPackSerializer.d.ts.map +0 -1
- package/dist/serialization/MsgPackSerializer.js.map +0 -1
- package/dist/serialization/NumpyBridge.d.ts.map +0 -1
- package/dist/serialization/NumpyBridge.js.map +0 -1
- package/dist/utils/ErrorTranslator.d.ts.map +0 -1
- package/dist/utils/ErrorTranslator.js.map +0 -1
- package/dist/utils/MemoryMonitor.d.ts.map +0 -1
- package/dist/utils/MemoryMonitor.js.map +0 -1
- package/src/native/NativeAddonLoader.ts +0 -98
|
@@ -216,8 +216,8 @@ export declare class PackageInstaller extends EventEmitter {
|
|
|
216
216
|
private _parsePipShow;
|
|
217
217
|
}
|
|
218
218
|
/**
|
|
219
|
-
* Create an installer seeded from a system Python,
|
|
220
|
-
*
|
|
219
|
+
* Create an installer seeded from a system Python, while targeting the
|
|
220
|
+
* application environment selected by Pyfig.
|
|
221
221
|
*/
|
|
222
222
|
export declare function createSystemInstaller(options?: Partial<Omit<PackageInstallerOptions, 'pythonExecutable'>>): PackageInstaller;
|
|
223
223
|
/**
|
|
@@ -229,4 +229,4 @@ export declare function createVenvInstaller(venvDir: string, options?: Partial<O
|
|
|
229
229
|
* Exposed for testing and introspection.
|
|
230
230
|
*/
|
|
231
231
|
export { resolveImportName, extractPackageName, INSTALL_TO_IMPORT };
|
|
232
|
-
//# sourceMappingURL=
|
|
232
|
+
//# sourceMappingURL=package-installer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-installer.d.ts","sourceRoot":"","sources":["../../src/env/package-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,10 +70,10 @@ exports.extractPackageName = extractPackageName;
|
|
|
70
70
|
const events_1 = require("events");
|
|
71
71
|
const fs = __importStar(require("fs"));
|
|
72
72
|
const path = __importStar(require("path"));
|
|
73
|
-
const
|
|
73
|
+
const logger_1 = require("../utils/logger");
|
|
74
74
|
const executables_1 = require("./executables");
|
|
75
|
-
const
|
|
76
|
-
const logger = new
|
|
75
|
+
const pyfig_adapter_1 = require("./pyfig-adapter");
|
|
76
|
+
const logger = new logger_1.Logger('PackageInstaller');
|
|
77
77
|
// Import-name alias table
|
|
78
78
|
// Maps pip install name -> Python import name.
|
|
79
79
|
// Only entries that differ from the install name need to be listed here.
|
|
@@ -249,7 +249,7 @@ class PackageInstaller extends events_1.EventEmitter {
|
|
|
249
249
|
quiet: options.quiet !== false,
|
|
250
250
|
upgrade: options.upgrade ?? false,
|
|
251
251
|
};
|
|
252
|
-
this._pyfig = (0,
|
|
252
|
+
this._pyfig = (0, pyfig_adapter_1.createPynectPyfig)({
|
|
253
253
|
projectRoot: this._opts.cwd,
|
|
254
254
|
pythonPath: options.pythonExecutable,
|
|
255
255
|
env: this._opts.env,
|
|
@@ -339,7 +339,7 @@ class PackageInstaller extends events_1.EventEmitter {
|
|
|
339
339
|
return;
|
|
340
340
|
}
|
|
341
341
|
packages.forEach(executables_1.assertPythonPackageSpec);
|
|
342
|
-
const args = ['uninstall',
|
|
342
|
+
const args = ['uninstall', ...packages];
|
|
343
343
|
logger.info(`Uninstalling: ${packages.join(', ')}`);
|
|
344
344
|
const result = this._pyfig.pipSync(args, {
|
|
345
345
|
encoding: 'utf8',
|
|
@@ -424,16 +424,7 @@ class PackageInstaller extends events_1.EventEmitter {
|
|
|
424
424
|
* Ensure pip itself is up-to-date.
|
|
425
425
|
*/
|
|
426
426
|
async upgradePip() {
|
|
427
|
-
logger.
|
|
428
|
-
const args = ['install', '--upgrade', 'pip'];
|
|
429
|
-
const r = this._pyfig.pipSync(args, {
|
|
430
|
-
encoding: 'utf8',
|
|
431
|
-
cwd: this._opts.cwd,
|
|
432
|
-
env: { ...process.env, ...this._opts.env },
|
|
433
|
-
});
|
|
434
|
-
if (r.status !== 0) {
|
|
435
|
-
logger.warn(`pip self-upgrade failed (non-fatal):\n${r.stderr}`);
|
|
436
|
-
}
|
|
427
|
+
logger.debug('Pyfig uses uv directly; there is no environment-local pip to upgrade.');
|
|
437
428
|
}
|
|
438
429
|
// Private helpers
|
|
439
430
|
/**
|
|
@@ -467,7 +458,6 @@ class PackageInstaller extends events_1.EventEmitter {
|
|
|
467
458
|
args.push('--pre');
|
|
468
459
|
}
|
|
469
460
|
args.push('--no-warn-script-location');
|
|
470
|
-
args.push('--disable-pip-version-check');
|
|
471
461
|
if (this._opts.indexUrl) {
|
|
472
462
|
args.push('--index-url', this._opts.indexUrl);
|
|
473
463
|
}
|
|
@@ -599,8 +589,8 @@ class PackageInstaller extends events_1.EventEmitter {
|
|
|
599
589
|
exports.PackageInstaller = PackageInstaller;
|
|
600
590
|
// Factory helpers
|
|
601
591
|
/**
|
|
602
|
-
* Create an installer seeded from a system Python,
|
|
603
|
-
*
|
|
592
|
+
* Create an installer seeded from a system Python, while targeting the
|
|
593
|
+
* application environment selected by Pyfig.
|
|
604
594
|
*/
|
|
605
595
|
function createSystemInstaller(options) {
|
|
606
596
|
const python = process.env['PYNECT_PYTHON'] ?? '';
|
|
@@ -610,9 +600,6 @@ function createSystemInstaller(options) {
|
|
|
610
600
|
* Create a PackageInstaller tied to a specific virtualenv directory.
|
|
611
601
|
*/
|
|
612
602
|
function createVenvInstaller(venvDir, options) {
|
|
613
|
-
if (path.basename(path.resolve(venvDir)).toLowerCase() !== '.venv') {
|
|
614
|
-
throw new Error('Pynect only supports a repository-root .venv directory.');
|
|
615
|
-
}
|
|
616
603
|
const bin = process.platform === 'win32'
|
|
617
604
|
? path.join(venvDir, 'Scripts', 'python.exe')
|
|
618
605
|
: path.join(venvDir, 'bin', 'python');
|
|
@@ -621,8 +608,8 @@ function createVenvInstaller(venvDir, options) {
|
|
|
621
608
|
}
|
|
622
609
|
return new PackageInstaller({
|
|
623
610
|
pythonExecutable: bin,
|
|
624
|
-
cwd:
|
|
611
|
+
cwd: options?.cwd ?? process.cwd(),
|
|
625
612
|
...options,
|
|
626
613
|
});
|
|
627
614
|
}
|
|
628
|
-
//# sourceMappingURL=
|
|
615
|
+
//# sourceMappingURL=package-installer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-installer.js","sourceRoot":"","sources":["../../src/env/package-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type CanonicalPynectPackageManifest, type PynectModuleManifest, type ProjectConfigOverrides, type ResolvedProjectConfig } from '../config/project';
|
|
2
2
|
export interface PynectContribution {
|
|
3
3
|
packageName: string;
|
|
4
4
|
packageVersion: string;
|
|
5
5
|
packageRoot: string;
|
|
6
|
-
manifest:
|
|
6
|
+
manifest: CanonicalPynectPackageManifest;
|
|
7
7
|
root: boolean;
|
|
8
8
|
}
|
|
9
9
|
export interface ExposedModule extends PynectModuleManifest {
|
|
@@ -34,6 +34,7 @@ export interface PynectEnvironmentState {
|
|
|
34
34
|
lockHash: string;
|
|
35
35
|
pythonVersion: string;
|
|
36
36
|
pythonExecutable: string;
|
|
37
|
+
virtualEnvironment: string;
|
|
37
38
|
pythonAbi: string;
|
|
38
39
|
platform: NodeJS.Platform;
|
|
39
40
|
architecture: string;
|
|
@@ -60,4 +61,4 @@ export declare function requiresProjectSync(plan: PynectProjectPlan): boolean;
|
|
|
60
61
|
export declare function moduleDispatcherIncludes(plan: PynectProjectPlan): string[];
|
|
61
62
|
export declare function resolveExposedModule(id: string, projectRoot?: string): ExposedModule | undefined;
|
|
62
63
|
export declare function renderUvProject(plan: PynectProjectPlan): string;
|
|
63
|
-
//# sourceMappingURL=
|
|
64
|
+
//# sourceMappingURL=project-environment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-environment.d.ts","sourceRoot":"","sources":["../../src/env/project-environment.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,8BAA8B,CAAC;IACzC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,aAAc,SAAQ,oBAAoB;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC,YAAY,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,CAAC,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,sBAAsB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,GAAE,sBAA2B,GACrC,iBAAiB,CAoEnB;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CA+CrF;AAED,wBAAsB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAiB9F;AAuED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,iBAAiB,GAAG,sBAAsB,CA2B1F;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAEpE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAS1E;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,WAAW,CAAC,EAAE,MAAM,GACnB,aAAa,GAAG,SAAS,CAG3B;AAOD,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAwB/D"}
|
|
@@ -16,39 +16,38 @@ const fs_1 = __importDefault(require("fs"));
|
|
|
16
16
|
const path_1 = __importDefault(require("path"));
|
|
17
17
|
const semver_1 = __importDefault(require("semver"));
|
|
18
18
|
const project_1 = require("../config/project");
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const GENERATED_DIRECTORY = '.pynect';
|
|
19
|
+
const pyfig_adapter_1 = require("./pyfig-adapter");
|
|
20
|
+
const locking_1 = require("../utils/locking");
|
|
22
21
|
const PYPROJECT_FILE = 'pyproject.toml';
|
|
23
22
|
const UV_LOCK_FILE = 'uv.lock';
|
|
24
23
|
const MODULES_FILE = 'modules.json';
|
|
25
24
|
const STATE_FILE = '.pynect-state.json';
|
|
26
|
-
const TRANSITIVE_KEYS = new Set(['schemaVersion', 'requiresPython', 'requirements', 'modules']);
|
|
27
25
|
function createProjectPlan(overrides = {}) {
|
|
28
26
|
let config = (0, project_1.resolveProjectConfig)(overrides);
|
|
29
27
|
const contributions = discoverPynectContributions(config.projectRoot);
|
|
30
|
-
const
|
|
28
|
+
const manifestFor = (contribution) => contribution.root ? config.packageManifest : contribution.manifest;
|
|
29
|
+
const requirements = contributions.flatMap(contribution => (manifestFor(contribution).project.dependencies ?? []).map(requirement => ({
|
|
31
30
|
requirement,
|
|
32
31
|
packageName: contribution.packageName,
|
|
33
32
|
})));
|
|
34
33
|
const modules = {};
|
|
35
34
|
for (const contribution of contributions) {
|
|
36
|
-
for (const [alias, module] of Object.entries(contribution.
|
|
35
|
+
for (const [alias, module] of Object.entries(manifestFor(contribution).tool.pynect.modules ?? {})) {
|
|
37
36
|
const id = `${contribution.packageName}:${alias}`;
|
|
38
37
|
if (modules[id])
|
|
39
38
|
throw new Error(`Duplicate Pynect module id: ${id}`);
|
|
40
39
|
modules[id] = { ...module, id, packageName: contribution.packageName };
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
|
-
const requirementOverrides =
|
|
44
|
-
.
|
|
45
|
-
|
|
42
|
+
const requirementOverrides = [
|
|
43
|
+
...(config.packageManifest.tool.uv['override-dependencies'] ?? []),
|
|
44
|
+
].sort();
|
|
46
45
|
const pythonConstraints = [
|
|
47
46
|
{ range: config.requiresPython, packageName: '<application>' },
|
|
48
47
|
...contributions
|
|
49
|
-
.filter(contribution => !contribution.root && contribution.manifest.
|
|
48
|
+
.filter(contribution => !contribution.root && contribution.manifest.project['requires-python'])
|
|
50
49
|
.map(contribution => ({
|
|
51
|
-
range: contribution.manifest.
|
|
50
|
+
range: contribution.manifest.project['requires-python'],
|
|
52
51
|
packageName: contribution.packageName,
|
|
53
52
|
})),
|
|
54
53
|
];
|
|
@@ -58,13 +57,17 @@ function createProjectPlan(overrides = {}) {
|
|
|
58
57
|
}
|
|
59
58
|
const manifestHash = sha256(stableJson({
|
|
60
59
|
schemaVersion: 1,
|
|
60
|
+
project: {
|
|
61
|
+
name: config.packageManifest.project.name,
|
|
62
|
+
version: config.packageManifest.project.version,
|
|
63
|
+
},
|
|
61
64
|
pythonRange,
|
|
62
65
|
pythonRequirement,
|
|
63
66
|
requirements: [...requirements].sort(compareRequirements),
|
|
64
67
|
overrides: requirementOverrides,
|
|
65
68
|
modules,
|
|
66
69
|
}));
|
|
67
|
-
const generatedDirectory =
|
|
70
|
+
const generatedDirectory = config.generatedDirectory;
|
|
68
71
|
return {
|
|
69
72
|
config,
|
|
70
73
|
contributions,
|
|
@@ -78,7 +81,7 @@ function createProjectPlan(overrides = {}) {
|
|
|
78
81
|
pyprojectFile: path_1.default.join(generatedDirectory, PYPROJECT_FILE),
|
|
79
82
|
generatedLockfile: path_1.default.join(generatedDirectory, UV_LOCK_FILE),
|
|
80
83
|
modulesFile: path_1.default.join(generatedDirectory, MODULES_FILE),
|
|
81
|
-
stateFile: path_1.default.join(
|
|
84
|
+
stateFile: path_1.default.join(generatedDirectory, STATE_FILE),
|
|
82
85
|
};
|
|
83
86
|
}
|
|
84
87
|
function discoverPynectContributions(projectRoot) {
|
|
@@ -94,9 +97,9 @@ function discoverPynectContributions(projectRoot) {
|
|
|
94
97
|
if (visited.has(realDirectory))
|
|
95
98
|
continue;
|
|
96
99
|
visited.add(realDirectory);
|
|
97
|
-
if (current.packageJson.pynect !== undefined) {
|
|
100
|
+
if (current.root || current.packageJson.pynect !== undefined) {
|
|
98
101
|
const packagePath = path_1.default.join(current.directory, 'package.json');
|
|
99
|
-
const manifest = (0, project_1.validatePackageManifest)(current.packageJson.pynect, packagePath);
|
|
102
|
+
const manifest = (0, project_1.validatePackageManifest)(current.packageJson.pynect ?? {}, packagePath);
|
|
100
103
|
if (!current.root)
|
|
101
104
|
assertTransitiveManifest(manifest, current.packageJson.name, packagePath);
|
|
102
105
|
contributions.push({
|
|
@@ -113,7 +116,7 @@ function discoverPynectContributions(projectRoot) {
|
|
|
113
116
|
...(current.root ? current.packageJson.devDependencies : {}),
|
|
114
117
|
}).sort();
|
|
115
118
|
for (const dependencyName of dependencyNames) {
|
|
116
|
-
const directory =
|
|
119
|
+
const directory = (0, project_1.resolveInstalledPackageDirectory)(current.directory, dependencyName);
|
|
117
120
|
if (!directory)
|
|
118
121
|
continue;
|
|
119
122
|
queue.push({
|
|
@@ -129,7 +132,7 @@ function discoverPynectContributions(projectRoot) {
|
|
|
129
132
|
async function syncProject(options = {}) {
|
|
130
133
|
const plan = createProjectPlan(options);
|
|
131
134
|
fs_1.default.mkdirSync(plan.generatedDirectory, { recursive: true });
|
|
132
|
-
const locked = await (0,
|
|
135
|
+
const locked = await (0, locking_1.withPynectLock)({ projectRoot: plan.config.projectRoot }, async () => syncProjectUnlocked(plan, options), undefined, {
|
|
133
136
|
key: `pynect-sync:${normalizedPath(plan.config.projectRoot)}`,
|
|
134
137
|
name: 'Pynect project sync',
|
|
135
138
|
namespace: 'pynect',
|
|
@@ -143,7 +146,7 @@ async function syncProjectUnlocked(plan, options) {
|
|
|
143
146
|
writeGeneratedProject(plan);
|
|
144
147
|
if (options.frozen)
|
|
145
148
|
stageFrozenLock(plan);
|
|
146
|
-
const client = (0,
|
|
149
|
+
const client = (0, pyfig_adapter_1.createPynectPyfig)({
|
|
147
150
|
projectRoot: plan.config.projectRoot,
|
|
148
151
|
pythonPath: plan.config.python,
|
|
149
152
|
pythonRange: plan.pythonRange,
|
|
@@ -155,7 +158,16 @@ async function syncProjectUnlocked(plan, options) {
|
|
|
155
158
|
env: plan.config.env,
|
|
156
159
|
});
|
|
157
160
|
const environment = await client.prepare();
|
|
158
|
-
|
|
161
|
+
if (!environment.python.virtualEnvironment) {
|
|
162
|
+
throw new Error('Pyfig did not select a virtual environment for Pynect synchronization.');
|
|
163
|
+
}
|
|
164
|
+
const syncArgs = [
|
|
165
|
+
'sync',
|
|
166
|
+
'--project',
|
|
167
|
+
plan.generatedDirectory,
|
|
168
|
+
'--no-dev',
|
|
169
|
+
'--active',
|
|
170
|
+
];
|
|
159
171
|
if (options.frozen)
|
|
160
172
|
syncArgs.push('--locked');
|
|
161
173
|
if (options.offline)
|
|
@@ -164,7 +176,7 @@ async function syncProjectUnlocked(plan, options) {
|
|
|
164
176
|
cwd: plan.config.projectRoot,
|
|
165
177
|
env: {
|
|
166
178
|
...plan.config.env,
|
|
167
|
-
|
|
179
|
+
VIRTUAL_ENV: environment.python.virtualEnvironment,
|
|
168
180
|
},
|
|
169
181
|
}));
|
|
170
182
|
if (synced.code !== 0) {
|
|
@@ -180,6 +192,7 @@ async function syncProjectUnlocked(plan, options) {
|
|
|
180
192
|
lockHash,
|
|
181
193
|
pythonVersion: python.version,
|
|
182
194
|
pythonExecutable: python.executable,
|
|
195
|
+
virtualEnvironment: environment.python.virtualEnvironment,
|
|
183
196
|
pythonAbi: `${python.implementation}-${python.version}-${python.architecture}-${python.pointerBits}`,
|
|
184
197
|
platform: process.platform,
|
|
185
198
|
architecture: process.arch,
|
|
@@ -216,9 +229,8 @@ function validateProjectEnvironment(plan) {
|
|
|
216
229
|
if (state.platform !== process.platform || state.architecture !== process.arch) {
|
|
217
230
|
throw staleEnvironmentError(plan, 'environment was synchronized for another platform');
|
|
218
231
|
}
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
throw staleEnvironmentError(plan, 'recorded Python executable is missing or outside the root .venv');
|
|
232
|
+
if (!state.virtualEnvironment || !fs_1.default.existsSync(state.pythonExecutable)) {
|
|
233
|
+
throw staleEnvironmentError(plan, 'recorded Python environment is missing');
|
|
222
234
|
}
|
|
223
235
|
return state;
|
|
224
236
|
}
|
|
@@ -243,11 +255,12 @@ function writeGeneratedProject(plan) {
|
|
|
243
255
|
}
|
|
244
256
|
function renderUvProject(plan) {
|
|
245
257
|
const requirements = [...new Set(plan.requirements.map(item => item.requirement))].sort();
|
|
258
|
+
const project = plan.config.packageManifest.project;
|
|
246
259
|
const lines = [
|
|
247
|
-
'# Generated by Pynect.
|
|
260
|
+
'# Generated by Pynect. Configure package.json#pynect or the Pynect API, not this file.',
|
|
248
261
|
'[project]',
|
|
249
|
-
|
|
250
|
-
|
|
262
|
+
`name = ${JSON.stringify(project.name ?? 'pynect-environment')}`,
|
|
263
|
+
`version = ${JSON.stringify(project.version ?? '0.0.0')}`,
|
|
251
264
|
`requires-python = ${JSON.stringify(plan.pythonRequirement)}`,
|
|
252
265
|
'dependencies = [',
|
|
253
266
|
...requirements.map(requirement => ` ${JSON.stringify(requirement)},`),
|
|
@@ -279,7 +292,15 @@ function staleEnvironmentError(plan, detail) {
|
|
|
279
292
|
`from ${plan.config.projectRoot}.`);
|
|
280
293
|
}
|
|
281
294
|
function assertTransitiveManifest(manifest, packageName, source) {
|
|
282
|
-
const policyKeys =
|
|
295
|
+
const policyKeys = [
|
|
296
|
+
...Object.keys(manifest.tool.pynect)
|
|
297
|
+
.filter(key => key !== 'modules' &&
|
|
298
|
+
manifest.tool.pynect[key] !== undefined)
|
|
299
|
+
.map(key => `tool.pynect.${key}`),
|
|
300
|
+
...Object.keys(manifest.tool.uv)
|
|
301
|
+
.filter(key => key !== 'package' && manifest.tool.uv[key] !== undefined)
|
|
302
|
+
.map(key => `tool.uv.${key}`),
|
|
303
|
+
];
|
|
283
304
|
if (policyKeys.length > 0) {
|
|
284
305
|
throw new TypeError(`${source}: transitive package ${packageName} cannot set application policy: ` +
|
|
285
306
|
policyKeys.join(', '));
|
|
@@ -324,18 +345,6 @@ function readPackage(packagePath) {
|
|
|
324
345
|
version: typeof value['version'] === 'string' ? value['version'] : '0.0.0',
|
|
325
346
|
};
|
|
326
347
|
}
|
|
327
|
-
function resolveInstalledPackage(fromDirectory, packageName) {
|
|
328
|
-
let current = path_1.default.resolve(fromDirectory);
|
|
329
|
-
while (true) {
|
|
330
|
-
const candidate = path_1.default.join(current, 'node_modules', ...packageName.split('/'));
|
|
331
|
-
if (fs_1.default.existsSync(path_1.default.join(candidate, 'package.json')))
|
|
332
|
-
return candidate;
|
|
333
|
-
const parent = path_1.default.dirname(current);
|
|
334
|
-
if (parent === current)
|
|
335
|
-
return undefined;
|
|
336
|
-
current = parent;
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
348
|
async function runChild(child) {
|
|
340
349
|
return new Promise((resolve, reject) => {
|
|
341
350
|
let output = '';
|
|
@@ -376,4 +385,4 @@ function normalizedPath(value) {
|
|
|
376
385
|
function isRecord(value) {
|
|
377
386
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
378
387
|
}
|
|
379
|
-
//# sourceMappingURL=
|
|
388
|
+
//# sourceMappingURL=project-environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-environment.js","sourceRoot":"","sources":["../../src/env/project-environment.ts"],"names":[],"mappings":";;;;;AA2EA,8CAsEC;AAED,kEA+CC;AAED,kCAiBC;AAuED,gEA2BC;AAED,kDAEC;AAED,4DASC;AAED,oDAMC;AAOD,0CAwBC;AA7WD,mCAAoC;AAEpC,4CAAoB;AACpB,gDAAwB;AACxB,oDAA4B;AAC5B,+CAQ2B;AAC3B,mDAAoD;AACpD,8CAAkD;AAElD,MAAM,cAAc,GAAG,gBAAgB,CAAC;AACxC,MAAM,YAAY,GAAG,SAAS,CAAC;AAC/B,MAAM,YAAY,GAAG,cAAc,CAAC;AACpC,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAuDxC,SAAgB,iBAAiB,CAC/B,YAAoC,EAAE;IAEtC,IAAI,MAAM,GAAG,IAAA,8BAAoB,EAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,2BAA2B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,CAAC,YAAgC,EAAE,EAAE,CACvD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC;IACrE,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CACxD,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzE,WAAW;QACX,WAAW,EAAE,YAAY,CAAC,WAAW;KACtC,CAAC,CAAC,CACJ,CAAC;IACF,MAAM,OAAO,GAAkC,EAAE,CAAC;IAClD,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAC1C,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CACpD,EAAE,CAAC;YACF,MAAM,EAAE,GAAG,GAAG,YAAY,CAAC,WAAW,IAAI,KAAK,EAAE,CAAC;YAClD,IAAI,OAAO,CAAC,EAAE,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC;QACzE,CAAC;IACH,CAAC;IACD,MAAM,oBAAoB,GAAG;QAC3B,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;KACnE,CAAC,IAAI,EAAE,CAAC;IAET,MAAM,iBAAiB,GAAG;QACxB,EAAE,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE;QAC9D,GAAG,aAAa;aACb,MAAM,CAAC,YAAY,CAAC,EAAE,CACrB,CAAC,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;aACxE,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACpB,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAE;YACxD,WAAW,EAAE,YAAY,CAAC,WAAW;SACtC,CAAC,CAAC;KACN,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,yBAAyB,CAAC,iBAAiB,CAAC,CAAC;IACxF,IAAI,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC;QAChG,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,aAAa,EAAE,qBAAqB,CAAC,WAAW,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,aAAa,EAAE,CAAC;QAChB,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI;YACzC,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO;SAChD;QACD,WAAW;QACX,iBAAiB;QACjB,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;QACzD,SAAS,EAAE,oBAAoB;QAC/B,OAAO;KACR,CAAC,CAAC,CAAC;IACJ,MAAM,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;IAErD,OAAO;QACL,MAAM;QACN,aAAa;QACb,YAAY;QACZ,SAAS,EAAE,oBAAoB;QAC/B,OAAO;QACP,WAAW;QACX,iBAAiB;QACjB,YAAY;QACZ,kBAAkB;QAClB,aAAa,EAAE,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC;QAC5D,iBAAiB,EAAE,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC;QAC9D,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC;QACxD,SAAS,EAAE,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAgB,2BAA2B,CAAC,WAAmB;IAC7D,MAAM,WAAW,GAAG,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IACxE,MAAM,KAAK,GAA0E;QACnF,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE;KACjE,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,aAAa,GAAyB,EAAE,CAAC;IAE/C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC/B,MAAM,aAAa,GAAG,YAAE,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YAAE,SAAS;QACzC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE3B,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,IAAA,iCAAuB,EAAC,OAAO,CAAC,WAAW,CAAC,MAAM,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;YACxF,IAAI,CAAC,OAAO,CAAC,IAAI;gBAAE,wBAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAC7F,aAAa,CAAC,IAAI,CAAC;gBACjB,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI;gBACrC,cAAc,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;gBAC3C,WAAW,EAAE,OAAO,CAAC,SAAS;gBAC9B,QAAQ;gBACR,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC;YAClC,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY;YACnC,GAAG,OAAO,CAAC,WAAW,CAAC,oBAAoB;YAC3C,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7D,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,MAAM,SAAS,GAAG,IAAA,0CAAgC,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YACtF,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,KAAK,CAAC,IAAI,CAAC;gBACT,SAAS;gBACT,WAAW,EAAE,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAC9D,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACxC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;QACjD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAClD,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,UAA8B,EAAE;IAChE,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAc,EACjC,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EACxC,KAAK,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,EAC9C,SAAS,EACT;QACE,GAAG,EAAE,eAAe,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QAC7D,IAAI,EAAE,qBAAqB;QAC3B,SAAS,EAAE,QAAQ;KACpB,CACF,CAAC;IACF,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,UAAU,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mDAAmD,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,IAAuB,EACvB,OAA2B;IAE3B,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM;QAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAE1C,MAAM,MAAM,GAAG,IAAA,iCAAiB,EAAC;QAC/B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;QACpC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;QAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;QACxC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;QAChC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;QAC5C,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;QACpC,4BAA4B,EAAE,IAAI,CAAC,MAAM,CAAC,wBAAwB;QAClE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAA6B;KAC/C,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;IAE3C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,QAAQ,GAAG;QACf,MAAM;QACN,WAAW;QACX,IAAI,CAAC,kBAAkB;QACvB,UAAU;QACV,UAAU;KACX,CAAC;IACF,IAAI,OAAO,CAAC,MAAM;QAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,OAAO;QAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE;QACtD,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;QAC5B,GAAG,EAAE;YACH,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG;YAClB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,kBAAkB;SACnD;KACF,CAAC,CAAC,CAAC;IACJ,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,WAAW,CAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAChD,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAClC,MAAM,KAAK,GAA2B;QACpC,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,QAAQ;QACR,aAAa,EAAE,MAAM,CAAC,OAAO;QAC7B,gBAAgB,EAAE,MAAM,CAAC,UAAU;QACnC,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,kBAAkB;QACzD,SAAS,EAAE,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE;QACpG,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,YAAY,EAAE,OAAO,CAAC,IAAI;QAC1B,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,YAAY,CAAC,WAAW;YAC9B,OAAO,EAAE,YAAY,CAAC,cAAc;SACrC,CAAC,CAAC;QACH,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACnC,CAAC;IACF,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACnE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;AACzD,CAAC;AAED,SAAgB,0BAA0B,CAAC,IAAuB;IAChE,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,MAAM,qBAAqB,CAAC,IAAI,EAAE,0BAA0B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,MAAM,qBAAqB,CAAC,IAAI,EAAE,mCAAmC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,KAA6B,CAAC;IAClC,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAA2B,CAAC;IACxF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,qBAAqB,CAAC,IAAI,EAAE,iCAAkC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1E,MAAM,qBAAqB,CAAC,IAAI,EAAE,+CAA+C,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,qBAAqB,CAAC,IAAI,EAAE,sCAAsC,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/E,MAAM,qBAAqB,CAAC,IAAI,EAAE,mDAAmD,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxE,MAAM,qBAAqB,CAAC,IAAI,EAAE,wCAAwC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAuB;IACzD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACrG,CAAC;AAED,SAAgB,wBAAwB,CAAC,IAAuB;IAC9D,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACjE,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAC5B,OAAO,KAAK,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC;gBAClE,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,EAAE,CAClC,CAAC;QACJ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACd,CAAC;AAED,SAAgB,oBAAoB,CAClC,EAAU,EACV,WAAoB;IAEpB,MAAM,IAAI,GAAG,iBAAiB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAuB;IACpD,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC9E,CAAC;AAED,SAAgB,eAAe,CAAC,IAAuB;IACrD,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC;IACpD,MAAM,KAAK,GAAG;QACZ,wFAAwF;QACxF,WAAW;QACX,UAAU,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,oBAAoB,CAAC,EAAE;QAChE,aAAa,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE;QACzD,qBAAqB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;QAC7D,kBAAkB;QAClB,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC;QACvE,GAAG;QACH,EAAE;QACF,WAAW;QACX,iBAAiB;KAClB,CAAC;IACF,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CACR,2BAA2B,EAC3B,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,EACzE,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACjC,CAAC;AAED,SAAS,eAAe,CAAC,IAAuB;IAC9C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,gDAAgD,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;IAC3F,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,eAAe,CAAC,IAAuB,EAAE,MAAc;IAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY;SAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,aAAa,IAAI,CAAC,WAAW,EAAE,CAAC;SACjE,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,KAAK,CACd,yCAAyC,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1E,qBAAqB,MAAM,CAAC,IAAI,EAAE,EAAE,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAuB,EAAE,MAAc;IACpE,OAAO,IAAI,KAAK,CACd,2CAA2C,MAAM,sBAAsB;QACvE,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CACnC,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAwC,EACxC,WAAmB,EACnB,MAAc;IAEd,MAAM,UAAU,GAAG;QACjB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;aACjC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,SAAS;YAC9B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAwC,CAAC,KAAK,SAAS,CAAC;aAC9E,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,GAAG,EAAE,CAAC;QACnC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;aAC7B,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAoC,CAAC,KAAK,SAAS,CAAC;aACxG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC;KAChC,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,SAAS,CACjB,GAAG,MAAM,wBAAwB,WAAW,kCAAkC;YAC9E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CACtB,CAAC;IACJ,CAAC;AACH,CAAC;AAOD,SAAS,yBAAyB,CAAC,WAA+B;IAIhE,MAAM,iBAAiB,GAAG,WAAW;SAClC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;SAC1E,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,gBAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,CAAC,WAAW,IAAI,CAAC,gBAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CACb,oDAAoD;YACpD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,oBAAoB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAe,EAAE,KAAa;IAC5D,MAAM,UAAU,GAAG,gBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IACnD,OAAO,UAAU,KAAK,SAAS,IAAI,gBAAM,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa;IAC1C,MAAM,OAAO,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,SAAS,CAAC,4CAA4C,KAAK,EAAE,CAAC,CAAC;IACvF,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;AAC7C,CAAC;AAWD,SAAS,WAAW,CAAC,WAAmB;IACtC,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAY,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kBAAkB,WAAW,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,WAAW,0BAA0B,CAAC,CAAC;IACpF,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAI,CAAC,QAAQ,CAAC,cAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClG,OAAO,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO;KAC5D,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,KAAmB;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB,EAAE,QAAgB;IACxD,YAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IACpE,YAAE,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9C,YAAE,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,MAAM,CAAC,KAAsB;IACpC,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACxE,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAC7C,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAkD,EAClD,KAAmD;IAEnD,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,KAAa;IAC7C,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC1E,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PyfigClient, PythonEmbeddingInfo, PythonEnvironment, PythonInfo } from 'pyfig';
|
|
2
|
+
import type { ChildProcess, SpawnOptions, SpawnSyncOptions, SpawnSyncReturns } from 'child_process';
|
|
2
3
|
/** Python selected by Pynect after its embedding requirements have been checked. */
|
|
3
4
|
export type SelectedPython = PythonInfo & {
|
|
4
5
|
embedding: PythonEmbeddingInfo;
|
|
@@ -17,7 +18,12 @@ export interface PynectPythonOptions {
|
|
|
17
18
|
uvVersion?: string;
|
|
18
19
|
env?: Record<string, string>;
|
|
19
20
|
}
|
|
20
|
-
export type PynectPyfigClient = PyfigClient
|
|
21
|
+
export type PynectPyfigClient = PyfigClient & {
|
|
22
|
+
python(args?: readonly string[], options?: SpawnOptions): Promise<ChildProcess>;
|
|
23
|
+
pythonSync(args?: readonly string[], options?: SpawnSyncOptions): SpawnSyncReturns<string | Buffer>;
|
|
24
|
+
pip(args?: readonly string[], options?: SpawnOptions): Promise<ChildProcess>;
|
|
25
|
+
pipSync(args?: readonly string[], options?: SpawnSyncOptions): SpawnSyncReturns<string | Buffer>;
|
|
26
|
+
};
|
|
21
27
|
export declare const createPynectPyfig: (options?: PynectPythonOptions) => PynectPyfigClient;
|
|
22
28
|
export declare const ensurePynectEnvironment: (options?: PynectPythonOptions) => Promise<{
|
|
23
29
|
client: PynectPyfigClient;
|
|
@@ -29,4 +35,4 @@ export declare const ensurePynectPython: (options?: PynectPythonOptions) => Prom
|
|
|
29
35
|
}>;
|
|
30
36
|
export declare const pynectProjectRoot: (explicit?: string) => string;
|
|
31
37
|
export {};
|
|
32
|
-
//# sourceMappingURL=
|
|
38
|
+
//# sourceMappingURL=pyfig-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pyfig-adapter.d.ts","sourceRoot":"","sources":["../../src/env/pyfig-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACX,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,oFAAoF;AACpF,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IAAE,SAAS,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE7E,KAAK,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG;IACjE,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAChF,UAAU,CACR,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACrC,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7E,OAAO,CACL,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CACtC,CAAC;AAkBF,eAAO,MAAM,iBAAiB,aAfA,mBAAmB,KAAG,iBAeM,CAAC;AAC3D,eAAO,MAAM,uBAAuB,aAfA,mBAAmB,KAAG,OAAO,CAAC;IAC9D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,WAAW,EAAE,uBAAuB,CAAC;CACtC,CAYmE,CAAC;AACvE,eAAO,MAAM,kBAAkB,aAZA,mBAAmB,KAAG,OAAO,CAAC;IACzD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,cAAc,CAAC;CACxB,CASyD,CAAC;AAC7D,eAAO,MAAM,iBAAiB,cATL,MAAM,KAAG,MASkB,CAAC"}
|
|
@@ -7,4 +7,4 @@ exports.createPynectPyfig = adapter.createPynectPyfig;
|
|
|
7
7
|
exports.ensurePynectEnvironment = adapter.ensurePynectEnvironment;
|
|
8
8
|
exports.ensurePynectPython = adapter.ensurePynectPython;
|
|
9
9
|
exports.pynectProjectRoot = adapter.projectRoot;
|
|
10
|
-
//# sourceMappingURL=
|
|
10
|
+
//# sourceMappingURL=pyfig-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pyfig-adapter.js","sourceRoot":"","sources":["../../src/env/pyfig-adapter.ts"],"names":[],"mappings":";;;AA0DA,6FAA6F;AAC7F,MAAM,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAkB,CAAC;AAEnD,QAAA,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAC9C,QAAA,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC;AAC1D,QAAA,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AAChD,QAAA,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC"}
|
|
@@ -24,7 +24,7 @@ export interface DetectorOptions {
|
|
|
24
24
|
explicitOnly?: boolean;
|
|
25
25
|
/** Modules that must be importable from the repository venv. */
|
|
26
26
|
requiredModules?: string[];
|
|
27
|
-
/**
|
|
27
|
+
/** Application root that owns the Pyfig environment. Defaults to Pyfig discovery. */
|
|
28
28
|
projectRoot?: string;
|
|
29
29
|
}
|
|
30
30
|
export declare class PythonDetector {
|
|
@@ -45,4 +45,4 @@ export declare class PythonNotFoundError extends Error {
|
|
|
45
45
|
export declare class PythonVersionError extends Error {
|
|
46
46
|
constructor(found: string, required: string);
|
|
47
47
|
}
|
|
48
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=python-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-detector.d.ts","sourceRoot":"","sources":["../../src/env/python-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,yDAAyD;IACzD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gEAAgE;IAChE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,qFAAqF;IACrF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAkBD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEtB;gBAEU,OAAO,GAAE,eAAoB;IAWnC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC;IAwBnC,6EAA6E;IAC7E,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IA6BhD,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;IAKvC,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAqB7D,4EAA4E;IACtE,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAItC,OAAO,CAAC,gBAAgB;CAWzB;AAwDD,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAI5C"}
|
|
@@ -9,10 +9,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.PythonVersionError = exports.PythonNotFoundError = exports.PythonDetector = void 0;
|
|
11
11
|
const path_1 = __importDefault(require("path"));
|
|
12
|
-
const
|
|
13
|
-
const
|
|
12
|
+
const logger_1 = require("../utils/logger");
|
|
13
|
+
const pyfig_adapter_1 = require("./pyfig-adapter");
|
|
14
14
|
const executables_1 = require("./executables");
|
|
15
|
-
const logger = new
|
|
15
|
+
const logger = new logger_1.Logger('PythonDetector');
|
|
16
16
|
const PROBE_SCRIPT = `
|
|
17
17
|
import json, platform, sys
|
|
18
18
|
print(json.dumps({
|
|
@@ -42,7 +42,7 @@ class PythonDetector {
|
|
|
42
42
|
}
|
|
43
43
|
async detect() {
|
|
44
44
|
try {
|
|
45
|
-
const { python } = await (0,
|
|
45
|
+
const { python } = await (0, pyfig_adapter_1.ensurePynectPython)(this.selectionOptions());
|
|
46
46
|
const info = toPythonInfo(python);
|
|
47
47
|
if (!this.isCompatible(info)) {
|
|
48
48
|
throw new PythonVersionError(info.version, this.options.minVersion.join('.'));
|
|
@@ -65,7 +65,7 @@ class PythonDetector {
|
|
|
65
65
|
probe(executablePath) {
|
|
66
66
|
if (!executablePath)
|
|
67
67
|
return null;
|
|
68
|
-
const client = (0,
|
|
68
|
+
const client = (0, pyfig_adapter_1.createPynectPyfig)(this.selectionOptions(executablePath));
|
|
69
69
|
const result = client.pythonSync(['-c', PROBE_SCRIPT], {
|
|
70
70
|
encoding: 'utf8',
|
|
71
71
|
timeout: this.options.timeout,
|
|
@@ -103,7 +103,7 @@ class PythonDetector {
|
|
|
103
103
|
const script = modules
|
|
104
104
|
.map(module => `try:\n import ${module}\nexcept ImportError:\n print("MISSING:${module}")`)
|
|
105
105
|
.join('\n');
|
|
106
|
-
const client = (0,
|
|
106
|
+
const client = (0, pyfig_adapter_1.createPynectPyfig)(this.selectionOptions(executable));
|
|
107
107
|
const result = client.pythonSync(['-c', script], { encoding: 'utf8', timeout: this.options.timeout, maxBuffer: 1024 * 256 });
|
|
108
108
|
if (result.status !== 0 || result.error)
|
|
109
109
|
return [...modules];
|
|
@@ -179,4 +179,4 @@ class PythonVersionError extends Error {
|
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
181
|
exports.PythonVersionError = PythonVersionError;
|
|
182
|
-
//# sourceMappingURL=
|
|
182
|
+
//# sourceMappingURL=python-detector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-detector.js","sourceRoot":"","sources":["../../src/env/python-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PythonInfo } from './
|
|
1
|
+
import type { PythonInfo } from './python-detector';
|
|
2
2
|
export interface PythonProvisionerOptions {
|
|
3
3
|
minVersion?: [number, number];
|
|
4
4
|
managedPython?: string;
|
|
@@ -13,4 +13,4 @@ export declare class PythonProvisioner {
|
|
|
13
13
|
constructor(options?: PythonProvisionerOptions);
|
|
14
14
|
ensurePython(): Promise<PythonInfo>;
|
|
15
15
|
}
|
|
16
|
-
//# sourceMappingURL=
|
|
16
|
+
//# sourceMappingURL=python-provisioner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-provisioner.d.ts","sourceRoot":"","sources":["../../src/env/python-provisioner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOpD,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qFAAqF;AACrF,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,GAAE,wBAA6B;IAE7D,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;CAgB1C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PythonProvisioner = void 0;
|
|
4
|
-
const
|
|
4
|
+
const pyfig_adapter_1 = require("./pyfig-adapter");
|
|
5
5
|
/** Compatibility wrapper around Pynect's centralized Pyfig environment selection. */
|
|
6
6
|
class PythonProvisioner {
|
|
7
7
|
options;
|
|
@@ -18,7 +18,7 @@ class PythonProvisioner {
|
|
|
18
18
|
projectRoot: this.options.projectRoot,
|
|
19
19
|
uvVersion: this.options.uvVersion,
|
|
20
20
|
};
|
|
21
|
-
const { python } = await (0,
|
|
21
|
+
const { python } = await (0, pyfig_adapter_1.ensurePynectPython)(selection);
|
|
22
22
|
if (python.major < major || (python.major === major && python.minor < minor)) {
|
|
23
23
|
throw new Error(`Python ${python.version} does not satisfy >=${major}.${minor}.`);
|
|
24
24
|
}
|
|
@@ -39,4 +39,4 @@ function toLegacyPythonInfo(python) {
|
|
|
39
39
|
arch: process.arch,
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=python-provisioner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-provisioner.js","sourceRoot":"","sources":["../../src/env/python-provisioner.ts"],"names":[],"mappings":";;;AACA,mDAIyB;AAWzB,qFAAqF;AACrF,MAAa,iBAAiB;IACC;IAA7B,YAA6B,UAAoC,EAAE;QAAtC,YAAO,GAAP,OAAO,CAA+B;IAAG,CAAC;IAEvE,KAAK,CAAC,YAAY;QAChB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAwB;YACrC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YAC3C,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;YACzC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,WAAW,EAAE,KAAK,KAAK,IAAI,KAAK,WAAW;YAC3C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;SAClC,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,kCAAkB,EAAC,SAAS,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,OAAO,uBAAuB,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;CACF;AAnBD,8CAmBC;AAED,SAAS,kBAAkB,CAAC,MAAsB;IAChD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,YAAY,EAAE,MAAM,CAAC,kBAAkB,KAAK,IAAI;QAChD,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;AACJ,CAAC"}
|