From db6b7a4c0504e23b901392dcbcb1ca30fc94f66a Mon Sep 17 00:00:00 2001 From: albertgwo Date: Wed, 18 Mar 2026 10:06:14 -0400 Subject: [PATCH 1/2] refactor: rename engine package to engine-core Rename packages/engine/ to packages/engine-core/ and update the package name to @ruminaider/flowprint-engine-core. Update all references in engine-gorules (dependency, imports, tsconfig) and root tsconfig.json to point to the new location. --- packages/{engine => engine-core}/package.json | 2 +- .../src/__tests__/codegen/activities-generator.test.ts | 0 .../src/__tests__/codegen/codegen-edge-cases.test.ts | 0 .../src/__tests__/codegen/integration.test.ts | 0 .../src/__tests__/codegen/worker-generator.test.ts | 0 .../src/__tests__/codegen/workflow-generator.test.ts | 0 .../src/__tests__/engine/adapter.test.ts | 0 .../src/__tests__/engine/compensation.test.ts | 0 .../{engine => engine-core}/src/__tests__/engine/engine.test.ts | 0 .../src/__tests__/engine/parallel.test.ts | 0 .../src/__tests__/expressions/cache.test.ts | 0 .../src/__tests__/expressions/evaluator-security.test.ts | 0 .../src/__tests__/expressions/interpreter.test.ts | 0 .../src/__tests__/expressions/parse-cache.test.ts | 0 .../src/__tests__/expressions/parser-security.test.ts | 0 .../src/__tests__/expressions/parser.test.ts | 0 .../src/__tests__/expressions/validator-edge-cases.test.ts | 0 .../src/__tests__/expressions/validator.test.ts | 0 .../src/__tests__/integration/cross-package.test.ts | 0 .../src/__tests__/rules/evaluator-browser.test.ts | 0 .../src/__tests__/rules/evaluator.test.ts | 0 .../src/__tests__/rules/test-runner.test.ts | 0 .../src/__tests__/rules/walker-rules.test.ts | 0 .../src/__tests__/runner/e2e-consultation.test.ts | 0 .../src/__tests__/runner/evaluator.test.ts | 0 .../src/__tests__/runner/fixtures-edge-cases.test.ts | 0 .../{engine => engine-core}/src/__tests__/runner/loader.test.ts | 0 .../src/__tests__/runner/walker-edge-cases.test.ts | 0 .../src/__tests__/runner/walker-error-recovery.test.ts | 0 .../{engine => engine-core}/src/__tests__/runner/walker.test.ts | 0 .../src/__tests__/security/path-containment.test.ts | 0 .../src/__tests__/security/reserved-node-ids.test.ts | 0 .../src/__tests__/security/yaml-limits.test.ts | 0 .../{engine => engine-core}/src/__tests__/walker/walk.test.ts | 0 packages/{engine => engine-core}/src/adapters/index.ts | 0 packages/{engine => engine-core}/src/adapters/plain.ts | 0 packages/{engine => engine-core}/src/adapters/types.ts | 0 .../{engine => engine-core}/src/codegen/activities-generator.ts | 0 packages/{engine => engine-core}/src/codegen/index.ts | 0 .../src/codegen/test-fixtures-generator.ts | 0 packages/{engine => engine-core}/src/codegen/types-generator.ts | 0 packages/{engine => engine-core}/src/codegen/types.ts | 0 packages/{engine => engine-core}/src/codegen/utils.ts | 0 .../{engine => engine-core}/src/codegen/worker-generator.ts | 0 .../{engine => engine-core}/src/codegen/workflow-generator.ts | 0 packages/{engine => engine-core}/src/engine/compiled-flow.ts | 0 packages/{engine => engine-core}/src/engine/engine.ts | 0 packages/{engine => engine-core}/src/engine/errors.ts | 0 packages/{engine => engine-core}/src/engine/index.ts | 0 packages/{engine => engine-core}/src/engine/types.ts | 0 packages/{engine => engine-core}/src/expressions/allowlist.ts | 0 packages/{engine => engine-core}/src/expressions/cache.ts | 0 packages/{engine => engine-core}/src/expressions/index.ts | 0 packages/{engine => engine-core}/src/expressions/interpreter.ts | 0 packages/{engine => engine-core}/src/expressions/parser.ts | 0 packages/{engine => engine-core}/src/expressions/types.ts | 0 packages/{engine => engine-core}/src/expressions/validator.ts | 0 packages/{engine => engine-core}/src/index.ts | 0 packages/{engine => engine-core}/src/rules/core.ts | 0 packages/{engine => engine-core}/src/rules/evaluator-browser.ts | 0 packages/{engine => engine-core}/src/rules/evaluator.ts | 0 packages/{engine => engine-core}/src/rules/index.ts | 0 packages/{engine => engine-core}/src/rules/test-runner.ts | 0 packages/{engine => engine-core}/src/rules/types.ts | 0 packages/{engine => engine-core}/src/runner/evaluator.ts | 0 packages/{engine => engine-core}/src/runner/fixtures.ts | 0 packages/{engine => engine-core}/src/runner/index.ts | 0 packages/{engine => engine-core}/src/runner/loader.ts | 0 packages/{engine => engine-core}/src/runner/trace.ts | 0 packages/{engine => engine-core}/src/runner/types.ts | 0 packages/{engine => engine-core}/src/runner/walker.ts | 0 packages/{engine => engine-core}/src/security/index.ts | 0 .../{engine => engine-core}/src/security/path-containment.ts | 0 packages/{engine => engine-core}/src/walker/index.ts | 0 packages/{engine => engine-core}/src/walker/types.ts | 0 packages/{engine => engine-core}/src/walker/walk.ts | 0 packages/{engine => engine-core}/tsconfig.json | 0 packages/{engine => engine-core}/tsup.config.ts | 0 packages/{engine => engine-core}/vitest.config.ts | 0 packages/engine-gorules/package.json | 2 +- packages/engine-gorules/src/__tests__/rules-evaluator.test.ts | 2 +- packages/engine-gorules/src/__tests__/rules-translator.test.ts | 2 +- packages/engine-gorules/src/rules-evaluator.ts | 2 +- packages/engine-gorules/src/rules-translator.ts | 2 +- packages/engine-gorules/tsconfig.json | 2 +- tsconfig.json | 2 +- 86 files changed, 8 insertions(+), 8 deletions(-) rename packages/{engine => engine-core}/package.json (96%) rename packages/{engine => engine-core}/src/__tests__/codegen/activities-generator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/codegen/codegen-edge-cases.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/codegen/integration.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/codegen/worker-generator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/codegen/workflow-generator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/engine/adapter.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/engine/compensation.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/engine/engine.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/engine/parallel.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/cache.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/evaluator-security.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/interpreter.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/parse-cache.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/parser-security.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/parser.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/validator-edge-cases.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/expressions/validator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/integration/cross-package.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/rules/evaluator-browser.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/rules/evaluator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/rules/test-runner.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/rules/walker-rules.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/e2e-consultation.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/evaluator.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/fixtures-edge-cases.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/loader.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/walker-edge-cases.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/walker-error-recovery.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/runner/walker.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/security/path-containment.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/security/reserved-node-ids.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/security/yaml-limits.test.ts (100%) rename packages/{engine => engine-core}/src/__tests__/walker/walk.test.ts (100%) rename packages/{engine => engine-core}/src/adapters/index.ts (100%) rename packages/{engine => engine-core}/src/adapters/plain.ts (100%) rename packages/{engine => engine-core}/src/adapters/types.ts (100%) rename packages/{engine => engine-core}/src/codegen/activities-generator.ts (100%) rename packages/{engine => engine-core}/src/codegen/index.ts (100%) rename packages/{engine => engine-core}/src/codegen/test-fixtures-generator.ts (100%) rename packages/{engine => engine-core}/src/codegen/types-generator.ts (100%) rename packages/{engine => engine-core}/src/codegen/types.ts (100%) rename packages/{engine => engine-core}/src/codegen/utils.ts (100%) rename packages/{engine => engine-core}/src/codegen/worker-generator.ts (100%) rename packages/{engine => engine-core}/src/codegen/workflow-generator.ts (100%) rename packages/{engine => engine-core}/src/engine/compiled-flow.ts (100%) rename packages/{engine => engine-core}/src/engine/engine.ts (100%) rename packages/{engine => engine-core}/src/engine/errors.ts (100%) rename packages/{engine => engine-core}/src/engine/index.ts (100%) rename packages/{engine => engine-core}/src/engine/types.ts (100%) rename packages/{engine => engine-core}/src/expressions/allowlist.ts (100%) rename packages/{engine => engine-core}/src/expressions/cache.ts (100%) rename packages/{engine => engine-core}/src/expressions/index.ts (100%) rename packages/{engine => engine-core}/src/expressions/interpreter.ts (100%) rename packages/{engine => engine-core}/src/expressions/parser.ts (100%) rename packages/{engine => engine-core}/src/expressions/types.ts (100%) rename packages/{engine => engine-core}/src/expressions/validator.ts (100%) rename packages/{engine => engine-core}/src/index.ts (100%) rename packages/{engine => engine-core}/src/rules/core.ts (100%) rename packages/{engine => engine-core}/src/rules/evaluator-browser.ts (100%) rename packages/{engine => engine-core}/src/rules/evaluator.ts (100%) rename packages/{engine => engine-core}/src/rules/index.ts (100%) rename packages/{engine => engine-core}/src/rules/test-runner.ts (100%) rename packages/{engine => engine-core}/src/rules/types.ts (100%) rename packages/{engine => engine-core}/src/runner/evaluator.ts (100%) rename packages/{engine => engine-core}/src/runner/fixtures.ts (100%) rename packages/{engine => engine-core}/src/runner/index.ts (100%) rename packages/{engine => engine-core}/src/runner/loader.ts (100%) rename packages/{engine => engine-core}/src/runner/trace.ts (100%) rename packages/{engine => engine-core}/src/runner/types.ts (100%) rename packages/{engine => engine-core}/src/runner/walker.ts (100%) rename packages/{engine => engine-core}/src/security/index.ts (100%) rename packages/{engine => engine-core}/src/security/path-containment.ts (100%) rename packages/{engine => engine-core}/src/walker/index.ts (100%) rename packages/{engine => engine-core}/src/walker/types.ts (100%) rename packages/{engine => engine-core}/src/walker/walk.ts (100%) rename packages/{engine => engine-core}/tsconfig.json (100%) rename packages/{engine => engine-core}/tsup.config.ts (100%) rename packages/{engine => engine-core}/vitest.config.ts (100%) diff --git a/packages/engine/package.json b/packages/engine-core/package.json similarity index 96% rename from packages/engine/package.json rename to packages/engine-core/package.json index b6cdb05..ccd7f61 100644 --- a/packages/engine/package.json +++ b/packages/engine-core/package.json @@ -1,5 +1,5 @@ { - "name": "@ruminaider/flowprint-engine", + "name": "@ruminaider/flowprint-engine-core", "version": "0.0.0", "description": "Expression parser, dev runner, and code generator for Flowprint execution engine", "type": "module", diff --git a/packages/engine/src/__tests__/codegen/activities-generator.test.ts b/packages/engine-core/src/__tests__/codegen/activities-generator.test.ts similarity index 100% rename from packages/engine/src/__tests__/codegen/activities-generator.test.ts rename to packages/engine-core/src/__tests__/codegen/activities-generator.test.ts diff --git a/packages/engine/src/__tests__/codegen/codegen-edge-cases.test.ts b/packages/engine-core/src/__tests__/codegen/codegen-edge-cases.test.ts similarity index 100% rename from packages/engine/src/__tests__/codegen/codegen-edge-cases.test.ts rename to packages/engine-core/src/__tests__/codegen/codegen-edge-cases.test.ts diff --git a/packages/engine/src/__tests__/codegen/integration.test.ts b/packages/engine-core/src/__tests__/codegen/integration.test.ts similarity index 100% rename from packages/engine/src/__tests__/codegen/integration.test.ts rename to packages/engine-core/src/__tests__/codegen/integration.test.ts diff --git a/packages/engine/src/__tests__/codegen/worker-generator.test.ts b/packages/engine-core/src/__tests__/codegen/worker-generator.test.ts similarity index 100% rename from packages/engine/src/__tests__/codegen/worker-generator.test.ts rename to packages/engine-core/src/__tests__/codegen/worker-generator.test.ts diff --git a/packages/engine/src/__tests__/codegen/workflow-generator.test.ts b/packages/engine-core/src/__tests__/codegen/workflow-generator.test.ts similarity index 100% rename from packages/engine/src/__tests__/codegen/workflow-generator.test.ts rename to packages/engine-core/src/__tests__/codegen/workflow-generator.test.ts diff --git a/packages/engine/src/__tests__/engine/adapter.test.ts b/packages/engine-core/src/__tests__/engine/adapter.test.ts similarity index 100% rename from packages/engine/src/__tests__/engine/adapter.test.ts rename to packages/engine-core/src/__tests__/engine/adapter.test.ts diff --git a/packages/engine/src/__tests__/engine/compensation.test.ts b/packages/engine-core/src/__tests__/engine/compensation.test.ts similarity index 100% rename from packages/engine/src/__tests__/engine/compensation.test.ts rename to packages/engine-core/src/__tests__/engine/compensation.test.ts diff --git a/packages/engine/src/__tests__/engine/engine.test.ts b/packages/engine-core/src/__tests__/engine/engine.test.ts similarity index 100% rename from packages/engine/src/__tests__/engine/engine.test.ts rename to packages/engine-core/src/__tests__/engine/engine.test.ts diff --git a/packages/engine/src/__tests__/engine/parallel.test.ts b/packages/engine-core/src/__tests__/engine/parallel.test.ts similarity index 100% rename from packages/engine/src/__tests__/engine/parallel.test.ts rename to packages/engine-core/src/__tests__/engine/parallel.test.ts diff --git a/packages/engine/src/__tests__/expressions/cache.test.ts b/packages/engine-core/src/__tests__/expressions/cache.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/cache.test.ts rename to packages/engine-core/src/__tests__/expressions/cache.test.ts diff --git a/packages/engine/src/__tests__/expressions/evaluator-security.test.ts b/packages/engine-core/src/__tests__/expressions/evaluator-security.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/evaluator-security.test.ts rename to packages/engine-core/src/__tests__/expressions/evaluator-security.test.ts diff --git a/packages/engine/src/__tests__/expressions/interpreter.test.ts b/packages/engine-core/src/__tests__/expressions/interpreter.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/interpreter.test.ts rename to packages/engine-core/src/__tests__/expressions/interpreter.test.ts diff --git a/packages/engine/src/__tests__/expressions/parse-cache.test.ts b/packages/engine-core/src/__tests__/expressions/parse-cache.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/parse-cache.test.ts rename to packages/engine-core/src/__tests__/expressions/parse-cache.test.ts diff --git a/packages/engine/src/__tests__/expressions/parser-security.test.ts b/packages/engine-core/src/__tests__/expressions/parser-security.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/parser-security.test.ts rename to packages/engine-core/src/__tests__/expressions/parser-security.test.ts diff --git a/packages/engine/src/__tests__/expressions/parser.test.ts b/packages/engine-core/src/__tests__/expressions/parser.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/parser.test.ts rename to packages/engine-core/src/__tests__/expressions/parser.test.ts diff --git a/packages/engine/src/__tests__/expressions/validator-edge-cases.test.ts b/packages/engine-core/src/__tests__/expressions/validator-edge-cases.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/validator-edge-cases.test.ts rename to packages/engine-core/src/__tests__/expressions/validator-edge-cases.test.ts diff --git a/packages/engine/src/__tests__/expressions/validator.test.ts b/packages/engine-core/src/__tests__/expressions/validator.test.ts similarity index 100% rename from packages/engine/src/__tests__/expressions/validator.test.ts rename to packages/engine-core/src/__tests__/expressions/validator.test.ts diff --git a/packages/engine/src/__tests__/integration/cross-package.test.ts b/packages/engine-core/src/__tests__/integration/cross-package.test.ts similarity index 100% rename from packages/engine/src/__tests__/integration/cross-package.test.ts rename to packages/engine-core/src/__tests__/integration/cross-package.test.ts diff --git a/packages/engine/src/__tests__/rules/evaluator-browser.test.ts b/packages/engine-core/src/__tests__/rules/evaluator-browser.test.ts similarity index 100% rename from packages/engine/src/__tests__/rules/evaluator-browser.test.ts rename to packages/engine-core/src/__tests__/rules/evaluator-browser.test.ts diff --git a/packages/engine/src/__tests__/rules/evaluator.test.ts b/packages/engine-core/src/__tests__/rules/evaluator.test.ts similarity index 100% rename from packages/engine/src/__tests__/rules/evaluator.test.ts rename to packages/engine-core/src/__tests__/rules/evaluator.test.ts diff --git a/packages/engine/src/__tests__/rules/test-runner.test.ts b/packages/engine-core/src/__tests__/rules/test-runner.test.ts similarity index 100% rename from packages/engine/src/__tests__/rules/test-runner.test.ts rename to packages/engine-core/src/__tests__/rules/test-runner.test.ts diff --git a/packages/engine/src/__tests__/rules/walker-rules.test.ts b/packages/engine-core/src/__tests__/rules/walker-rules.test.ts similarity index 100% rename from packages/engine/src/__tests__/rules/walker-rules.test.ts rename to packages/engine-core/src/__tests__/rules/walker-rules.test.ts diff --git a/packages/engine/src/__tests__/runner/e2e-consultation.test.ts b/packages/engine-core/src/__tests__/runner/e2e-consultation.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/e2e-consultation.test.ts rename to packages/engine-core/src/__tests__/runner/e2e-consultation.test.ts diff --git a/packages/engine/src/__tests__/runner/evaluator.test.ts b/packages/engine-core/src/__tests__/runner/evaluator.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/evaluator.test.ts rename to packages/engine-core/src/__tests__/runner/evaluator.test.ts diff --git a/packages/engine/src/__tests__/runner/fixtures-edge-cases.test.ts b/packages/engine-core/src/__tests__/runner/fixtures-edge-cases.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/fixtures-edge-cases.test.ts rename to packages/engine-core/src/__tests__/runner/fixtures-edge-cases.test.ts diff --git a/packages/engine/src/__tests__/runner/loader.test.ts b/packages/engine-core/src/__tests__/runner/loader.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/loader.test.ts rename to packages/engine-core/src/__tests__/runner/loader.test.ts diff --git a/packages/engine/src/__tests__/runner/walker-edge-cases.test.ts b/packages/engine-core/src/__tests__/runner/walker-edge-cases.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/walker-edge-cases.test.ts rename to packages/engine-core/src/__tests__/runner/walker-edge-cases.test.ts diff --git a/packages/engine/src/__tests__/runner/walker-error-recovery.test.ts b/packages/engine-core/src/__tests__/runner/walker-error-recovery.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/walker-error-recovery.test.ts rename to packages/engine-core/src/__tests__/runner/walker-error-recovery.test.ts diff --git a/packages/engine/src/__tests__/runner/walker.test.ts b/packages/engine-core/src/__tests__/runner/walker.test.ts similarity index 100% rename from packages/engine/src/__tests__/runner/walker.test.ts rename to packages/engine-core/src/__tests__/runner/walker.test.ts diff --git a/packages/engine/src/__tests__/security/path-containment.test.ts b/packages/engine-core/src/__tests__/security/path-containment.test.ts similarity index 100% rename from packages/engine/src/__tests__/security/path-containment.test.ts rename to packages/engine-core/src/__tests__/security/path-containment.test.ts diff --git a/packages/engine/src/__tests__/security/reserved-node-ids.test.ts b/packages/engine-core/src/__tests__/security/reserved-node-ids.test.ts similarity index 100% rename from packages/engine/src/__tests__/security/reserved-node-ids.test.ts rename to packages/engine-core/src/__tests__/security/reserved-node-ids.test.ts diff --git a/packages/engine/src/__tests__/security/yaml-limits.test.ts b/packages/engine-core/src/__tests__/security/yaml-limits.test.ts similarity index 100% rename from packages/engine/src/__tests__/security/yaml-limits.test.ts rename to packages/engine-core/src/__tests__/security/yaml-limits.test.ts diff --git a/packages/engine/src/__tests__/walker/walk.test.ts b/packages/engine-core/src/__tests__/walker/walk.test.ts similarity index 100% rename from packages/engine/src/__tests__/walker/walk.test.ts rename to packages/engine-core/src/__tests__/walker/walk.test.ts diff --git a/packages/engine/src/adapters/index.ts b/packages/engine-core/src/adapters/index.ts similarity index 100% rename from packages/engine/src/adapters/index.ts rename to packages/engine-core/src/adapters/index.ts diff --git a/packages/engine/src/adapters/plain.ts b/packages/engine-core/src/adapters/plain.ts similarity index 100% rename from packages/engine/src/adapters/plain.ts rename to packages/engine-core/src/adapters/plain.ts diff --git a/packages/engine/src/adapters/types.ts b/packages/engine-core/src/adapters/types.ts similarity index 100% rename from packages/engine/src/adapters/types.ts rename to packages/engine-core/src/adapters/types.ts diff --git a/packages/engine/src/codegen/activities-generator.ts b/packages/engine-core/src/codegen/activities-generator.ts similarity index 100% rename from packages/engine/src/codegen/activities-generator.ts rename to packages/engine-core/src/codegen/activities-generator.ts diff --git a/packages/engine/src/codegen/index.ts b/packages/engine-core/src/codegen/index.ts similarity index 100% rename from packages/engine/src/codegen/index.ts rename to packages/engine-core/src/codegen/index.ts diff --git a/packages/engine/src/codegen/test-fixtures-generator.ts b/packages/engine-core/src/codegen/test-fixtures-generator.ts similarity index 100% rename from packages/engine/src/codegen/test-fixtures-generator.ts rename to packages/engine-core/src/codegen/test-fixtures-generator.ts diff --git a/packages/engine/src/codegen/types-generator.ts b/packages/engine-core/src/codegen/types-generator.ts similarity index 100% rename from packages/engine/src/codegen/types-generator.ts rename to packages/engine-core/src/codegen/types-generator.ts diff --git a/packages/engine/src/codegen/types.ts b/packages/engine-core/src/codegen/types.ts similarity index 100% rename from packages/engine/src/codegen/types.ts rename to packages/engine-core/src/codegen/types.ts diff --git a/packages/engine/src/codegen/utils.ts b/packages/engine-core/src/codegen/utils.ts similarity index 100% rename from packages/engine/src/codegen/utils.ts rename to packages/engine-core/src/codegen/utils.ts diff --git a/packages/engine/src/codegen/worker-generator.ts b/packages/engine-core/src/codegen/worker-generator.ts similarity index 100% rename from packages/engine/src/codegen/worker-generator.ts rename to packages/engine-core/src/codegen/worker-generator.ts diff --git a/packages/engine/src/codegen/workflow-generator.ts b/packages/engine-core/src/codegen/workflow-generator.ts similarity index 100% rename from packages/engine/src/codegen/workflow-generator.ts rename to packages/engine-core/src/codegen/workflow-generator.ts diff --git a/packages/engine/src/engine/compiled-flow.ts b/packages/engine-core/src/engine/compiled-flow.ts similarity index 100% rename from packages/engine/src/engine/compiled-flow.ts rename to packages/engine-core/src/engine/compiled-flow.ts diff --git a/packages/engine/src/engine/engine.ts b/packages/engine-core/src/engine/engine.ts similarity index 100% rename from packages/engine/src/engine/engine.ts rename to packages/engine-core/src/engine/engine.ts diff --git a/packages/engine/src/engine/errors.ts b/packages/engine-core/src/engine/errors.ts similarity index 100% rename from packages/engine/src/engine/errors.ts rename to packages/engine-core/src/engine/errors.ts diff --git a/packages/engine/src/engine/index.ts b/packages/engine-core/src/engine/index.ts similarity index 100% rename from packages/engine/src/engine/index.ts rename to packages/engine-core/src/engine/index.ts diff --git a/packages/engine/src/engine/types.ts b/packages/engine-core/src/engine/types.ts similarity index 100% rename from packages/engine/src/engine/types.ts rename to packages/engine-core/src/engine/types.ts diff --git a/packages/engine/src/expressions/allowlist.ts b/packages/engine-core/src/expressions/allowlist.ts similarity index 100% rename from packages/engine/src/expressions/allowlist.ts rename to packages/engine-core/src/expressions/allowlist.ts diff --git a/packages/engine/src/expressions/cache.ts b/packages/engine-core/src/expressions/cache.ts similarity index 100% rename from packages/engine/src/expressions/cache.ts rename to packages/engine-core/src/expressions/cache.ts diff --git a/packages/engine/src/expressions/index.ts b/packages/engine-core/src/expressions/index.ts similarity index 100% rename from packages/engine/src/expressions/index.ts rename to packages/engine-core/src/expressions/index.ts diff --git a/packages/engine/src/expressions/interpreter.ts b/packages/engine-core/src/expressions/interpreter.ts similarity index 100% rename from packages/engine/src/expressions/interpreter.ts rename to packages/engine-core/src/expressions/interpreter.ts diff --git a/packages/engine/src/expressions/parser.ts b/packages/engine-core/src/expressions/parser.ts similarity index 100% rename from packages/engine/src/expressions/parser.ts rename to packages/engine-core/src/expressions/parser.ts diff --git a/packages/engine/src/expressions/types.ts b/packages/engine-core/src/expressions/types.ts similarity index 100% rename from packages/engine/src/expressions/types.ts rename to packages/engine-core/src/expressions/types.ts diff --git a/packages/engine/src/expressions/validator.ts b/packages/engine-core/src/expressions/validator.ts similarity index 100% rename from packages/engine/src/expressions/validator.ts rename to packages/engine-core/src/expressions/validator.ts diff --git a/packages/engine/src/index.ts b/packages/engine-core/src/index.ts similarity index 100% rename from packages/engine/src/index.ts rename to packages/engine-core/src/index.ts diff --git a/packages/engine/src/rules/core.ts b/packages/engine-core/src/rules/core.ts similarity index 100% rename from packages/engine/src/rules/core.ts rename to packages/engine-core/src/rules/core.ts diff --git a/packages/engine/src/rules/evaluator-browser.ts b/packages/engine-core/src/rules/evaluator-browser.ts similarity index 100% rename from packages/engine/src/rules/evaluator-browser.ts rename to packages/engine-core/src/rules/evaluator-browser.ts diff --git a/packages/engine/src/rules/evaluator.ts b/packages/engine-core/src/rules/evaluator.ts similarity index 100% rename from packages/engine/src/rules/evaluator.ts rename to packages/engine-core/src/rules/evaluator.ts diff --git a/packages/engine/src/rules/index.ts b/packages/engine-core/src/rules/index.ts similarity index 100% rename from packages/engine/src/rules/index.ts rename to packages/engine-core/src/rules/index.ts diff --git a/packages/engine/src/rules/test-runner.ts b/packages/engine-core/src/rules/test-runner.ts similarity index 100% rename from packages/engine/src/rules/test-runner.ts rename to packages/engine-core/src/rules/test-runner.ts diff --git a/packages/engine/src/rules/types.ts b/packages/engine-core/src/rules/types.ts similarity index 100% rename from packages/engine/src/rules/types.ts rename to packages/engine-core/src/rules/types.ts diff --git a/packages/engine/src/runner/evaluator.ts b/packages/engine-core/src/runner/evaluator.ts similarity index 100% rename from packages/engine/src/runner/evaluator.ts rename to packages/engine-core/src/runner/evaluator.ts diff --git a/packages/engine/src/runner/fixtures.ts b/packages/engine-core/src/runner/fixtures.ts similarity index 100% rename from packages/engine/src/runner/fixtures.ts rename to packages/engine-core/src/runner/fixtures.ts diff --git a/packages/engine/src/runner/index.ts b/packages/engine-core/src/runner/index.ts similarity index 100% rename from packages/engine/src/runner/index.ts rename to packages/engine-core/src/runner/index.ts diff --git a/packages/engine/src/runner/loader.ts b/packages/engine-core/src/runner/loader.ts similarity index 100% rename from packages/engine/src/runner/loader.ts rename to packages/engine-core/src/runner/loader.ts diff --git a/packages/engine/src/runner/trace.ts b/packages/engine-core/src/runner/trace.ts similarity index 100% rename from packages/engine/src/runner/trace.ts rename to packages/engine-core/src/runner/trace.ts diff --git a/packages/engine/src/runner/types.ts b/packages/engine-core/src/runner/types.ts similarity index 100% rename from packages/engine/src/runner/types.ts rename to packages/engine-core/src/runner/types.ts diff --git a/packages/engine/src/runner/walker.ts b/packages/engine-core/src/runner/walker.ts similarity index 100% rename from packages/engine/src/runner/walker.ts rename to packages/engine-core/src/runner/walker.ts diff --git a/packages/engine/src/security/index.ts b/packages/engine-core/src/security/index.ts similarity index 100% rename from packages/engine/src/security/index.ts rename to packages/engine-core/src/security/index.ts diff --git a/packages/engine/src/security/path-containment.ts b/packages/engine-core/src/security/path-containment.ts similarity index 100% rename from packages/engine/src/security/path-containment.ts rename to packages/engine-core/src/security/path-containment.ts diff --git a/packages/engine/src/walker/index.ts b/packages/engine-core/src/walker/index.ts similarity index 100% rename from packages/engine/src/walker/index.ts rename to packages/engine-core/src/walker/index.ts diff --git a/packages/engine/src/walker/types.ts b/packages/engine-core/src/walker/types.ts similarity index 100% rename from packages/engine/src/walker/types.ts rename to packages/engine-core/src/walker/types.ts diff --git a/packages/engine/src/walker/walk.ts b/packages/engine-core/src/walker/walk.ts similarity index 100% rename from packages/engine/src/walker/walk.ts rename to packages/engine-core/src/walker/walk.ts diff --git a/packages/engine/tsconfig.json b/packages/engine-core/tsconfig.json similarity index 100% rename from packages/engine/tsconfig.json rename to packages/engine-core/tsconfig.json diff --git a/packages/engine/tsup.config.ts b/packages/engine-core/tsup.config.ts similarity index 100% rename from packages/engine/tsup.config.ts rename to packages/engine-core/tsup.config.ts diff --git a/packages/engine/vitest.config.ts b/packages/engine-core/vitest.config.ts similarity index 100% rename from packages/engine/vitest.config.ts rename to packages/engine-core/vitest.config.ts diff --git a/packages/engine-gorules/package.json b/packages/engine-gorules/package.json index e3dcff6..cb1feb1 100644 --- a/packages/engine-gorules/package.json +++ b/packages/engine-gorules/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@gorules/zen-engine": "^0.54.0", - "@ruminaider/flowprint-engine": "workspace:*" + "@ruminaider/flowprint-engine-core": "workspace:*" }, "devDependencies": { "tsup": "^8.0.0", diff --git a/packages/engine-gorules/src/__tests__/rules-evaluator.test.ts b/packages/engine-gorules/src/__tests__/rules-evaluator.test.ts index 036f6cc..f458a89 100644 --- a/packages/engine-gorules/src/__tests__/rules-evaluator.test.ts +++ b/packages/engine-gorules/src/__tests__/rules-evaluator.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect, afterAll } from 'vitest' import { evaluateRulesViaZen, disposeZenEngine } from '../rules-evaluator.js' -import type { RulesDocument } from '@ruminaider/flowprint-engine' +import type { RulesDocument } from '@ruminaider/flowprint-engine-core' afterAll(() => { disposeZenEngine() diff --git a/packages/engine-gorules/src/__tests__/rules-translator.test.ts b/packages/engine-gorules/src/__tests__/rules-translator.test.ts index 783dff7..46498ce 100644 --- a/packages/engine-gorules/src/__tests__/rules-translator.test.ts +++ b/packages/engine-gorules/src/__tests__/rules-translator.test.ts @@ -1,6 +1,6 @@ import { describe, it, expect } from 'vitest' import { translateToJDM, conditionToUnary } from '../rules-translator.js' -import type { RulesDocument } from '@ruminaider/flowprint-engine' +import type { RulesDocument } from '@ruminaider/flowprint-engine-core' function makeDoc(overrides: Partial = {}): RulesDocument { return { diff --git a/packages/engine-gorules/src/rules-evaluator.ts b/packages/engine-gorules/src/rules-evaluator.ts index 69392eb..658513d 100644 --- a/packages/engine-gorules/src/rules-evaluator.ts +++ b/packages/engine-gorules/src/rules-evaluator.ts @@ -1,5 +1,5 @@ import { ZenEngine } from '@gorules/zen-engine' -import type { RulesDocument } from '@ruminaider/flowprint-engine' +import type { RulesDocument } from '@ruminaider/flowprint-engine-core' import { translateToJDM } from './rules-translator.js' /** Result of evaluating a rules document via GoRules ZEN */ diff --git a/packages/engine-gorules/src/rules-translator.ts b/packages/engine-gorules/src/rules-translator.ts index c1cdd7c..d818a65 100644 --- a/packages/engine-gorules/src/rules-translator.ts +++ b/packages/engine-gorules/src/rules-translator.ts @@ -11,7 +11,7 @@ import type { Rule, Condition, OperatorCondition, -} from '@ruminaider/flowprint-engine' +} from '@ruminaider/flowprint-engine-core' /** JDM decision table input column */ interface JDMInput { diff --git a/packages/engine-gorules/tsconfig.json b/packages/engine-gorules/tsconfig.json index 3c0a611..63582a6 100644 --- a/packages/engine-gorules/tsconfig.json +++ b/packages/engine-gorules/tsconfig.json @@ -6,5 +6,5 @@ "rootDir": "src" }, "include": ["src"], - "references": [{ "path": "../engine" }] + "references": [{ "path": "../engine-core" }] } diff --git a/tsconfig.json b/tsconfig.json index 8924bb9..4b58531 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,7 @@ "files": [], "references": [ { "path": "packages/schema" }, - { "path": "packages/engine" }, + { "path": "packages/engine-core" }, { "path": "packages/editor" }, { "path": "packages/cli" } ] From 2b753256c17330ceb85135ea9f1ca2b087c59569 Mon Sep 17 00:00:00 2001 From: albertgwo Date: Wed, 18 Mar 2026 10:08:56 -0400 Subject: [PATCH 2/2] feat: create engine umbrella package with re-exports Create packages/engine/ as a thin umbrella that re-exports from @ruminaider/flowprint-engine-core and @ruminaider/flowprint-engine-gorules. Existing consumers (CLI, app) keep importing from @ruminaider/flowprint-engine and get both core and gorules functionality. The ./browser subpath re-exports only the browser-safe core. GoRules evaluateExpression/evaluateExpressions are re-exported as zenEvaluateExpression/zenEvaluateExpressions to avoid collision with the core runner's evaluateExpression. --- packages/engine/package.json | 47 +++ packages/engine/src/browser.ts | 1 + packages/engine/src/index.ts | 12 + packages/engine/tsconfig.json | 13 + packages/engine/tsup.config.ts | 9 + pnpm-lock.yaml | 593 +++++++++++++++++++++++++++++++++ tsconfig.json | 2 + 7 files changed, 677 insertions(+) create mode 100644 packages/engine/package.json create mode 100644 packages/engine/src/browser.ts create mode 100644 packages/engine/src/index.ts create mode 100644 packages/engine/tsconfig.json create mode 100644 packages/engine/tsup.config.ts diff --git a/packages/engine/package.json b/packages/engine/package.json new file mode 100644 index 0000000..995cd4b --- /dev/null +++ b/packages/engine/package.json @@ -0,0 +1,47 @@ +{ + "name": "@ruminaider/flowprint-engine", + "version": "0.0.1", + "description": "Umbrella package re-exporting engine-core and engine-gorules", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + }, + "./browser": { + "import": { + "types": "./dist/browser.d.ts", + "default": "./dist/browser.js" + }, + "require": { + "types": "./dist/browser.d.cts", + "default": "./dist/browser.cjs" + } + } + }, + "main": "./dist/index.cjs", + "module": "./dist/index.js", + "types": "./dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "tsup", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "@ruminaider/flowprint-engine-core": "workspace:*", + "@ruminaider/flowprint-engine-gorules": "workspace:*" + }, + "devDependencies": { + "tsup": "^8.3.6", + "typescript": "^5.7.3" + }, + "license": "MIT" +} diff --git a/packages/engine/src/browser.ts b/packages/engine/src/browser.ts new file mode 100644 index 0000000..49896a4 --- /dev/null +++ b/packages/engine/src/browser.ts @@ -0,0 +1 @@ +export * from '@ruminaider/flowprint-engine-core/browser' diff --git a/packages/engine/src/index.ts b/packages/engine/src/index.ts new file mode 100644 index 0000000..1b6fe8a --- /dev/null +++ b/packages/engine/src/index.ts @@ -0,0 +1,12 @@ +export * from '@ruminaider/flowprint-engine-core' + +// Re-export engine-gorules, renaming colliding symbols +export { + evaluateExpression as zenEvaluateExpression, + evaluateExpressions as zenEvaluateExpressions, + evaluateRulesViaZen, + disposeZenEngine, + translateToJDM, + conditionToUnary, +} from '@ruminaider/flowprint-engine-gorules' +export type { ZenRulesResult, JDMDocument } from '@ruminaider/flowprint-engine-gorules' diff --git a/packages/engine/tsconfig.json b/packages/engine/tsconfig.json new file mode 100644 index 0000000..7f99396 --- /dev/null +++ b/packages/engine/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "composite": true, + "outDir": "dist", + "rootDir": "src" + }, + "include": ["src"], + "references": [ + { "path": "../engine-core" }, + { "path": "../engine-gorules" } + ] +} diff --git a/packages/engine/tsup.config.ts b/packages/engine/tsup.config.ts new file mode 100644 index 0000000..db6ee8c --- /dev/null +++ b/packages/engine/tsup.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts', 'src/browser.ts'], + format: ['esm', 'cjs'], + dts: true, + sourcemap: true, + clean: true, +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9a3229b..5d37358 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -217,6 +217,22 @@ importers: version: 4.0.18(@types/node@25.2.2)(jiti@2.6.1)(jsdom@28.0.0)(lightningcss@1.31.1)(yaml@2.8.2) packages/engine: + dependencies: + '@ruminaider/flowprint-engine-core': + specifier: workspace:* + version: link:../engine-core + '@ruminaider/flowprint-engine-gorules': + specifier: workspace:* + version: link:../engine-gorules + devDependencies: + tsup: + specifier: ^8.3.6 + version: 8.5.1(@microsoft/api-extractor@7.56.3(@types/node@25.2.2))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.7.3 + version: 5.9.3 + + packages/engine-core: dependencies: '@ruminaider/flowprint-schema': specifier: workspace:* @@ -241,6 +257,25 @@ importers: specifier: ^4.0.18 version: 4.0.18(@types/node@25.2.2)(jiti@2.6.1)(jsdom@28.0.0)(lightningcss@1.31.1)(yaml@2.8.2) + packages/engine-gorules: + dependencies: + '@gorules/zen-engine': + specifier: ^0.54.0 + version: 0.54.0 + '@ruminaider/flowprint-engine-core': + specifier: workspace:* + version: link:../engine-core + devDependencies: + tsup: + specifier: ^8.0.0 + version: 8.5.1(@microsoft/api-extractor@7.56.3(@types/node@25.2.2))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.5.0 + version: 5.9.3 + vitest: + specifier: ^2.0.0 + version: 2.1.9(@types/node@25.2.2)(jsdom@28.0.0)(lightningcss@1.31.1) + packages/schema: dependencies: ajv: @@ -461,6 +496,21 @@ packages: resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} engines: {node: '>=20.19.0'} + '@emnapi/core@1.9.0': + resolution: {integrity: sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==} + + '@emnapi/runtime@1.9.0': + resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==} + + '@emnapi/wasi-threads@1.2.0': + resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==} + + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.25.12': resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} engines: {node: '>=18'} @@ -473,6 +523,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.25.12': resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} engines: {node: '>=18'} @@ -485,6 +541,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.25.12': resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} engines: {node: '>=18'} @@ -497,6 +559,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.25.12': resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} engines: {node: '>=18'} @@ -509,6 +577,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.25.12': resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} engines: {node: '>=18'} @@ -521,6 +595,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.25.12': resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} engines: {node: '>=18'} @@ -533,6 +613,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.25.12': resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} engines: {node: '>=18'} @@ -545,6 +631,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.25.12': resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} engines: {node: '>=18'} @@ -557,6 +649,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.25.12': resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} engines: {node: '>=18'} @@ -569,6 +667,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.25.12': resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} engines: {node: '>=18'} @@ -581,6 +685,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.25.12': resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} engines: {node: '>=18'} @@ -593,6 +703,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.25.12': resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} engines: {node: '>=18'} @@ -605,6 +721,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.25.12': resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} engines: {node: '>=18'} @@ -617,6 +739,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.25.12': resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} engines: {node: '>=18'} @@ -629,6 +757,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.25.12': resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} engines: {node: '>=18'} @@ -641,6 +775,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.25.12': resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} engines: {node: '>=18'} @@ -653,6 +793,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.25.12': resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} engines: {node: '>=18'} @@ -677,6 +823,12 @@ packages: cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.25.12': resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} engines: {node: '>=18'} @@ -701,6 +853,12 @@ packages: cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.25.12': resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} engines: {node: '>=18'} @@ -725,6 +883,12 @@ packages: cpu: [arm64] os: [openharmony] + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.25.12': resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} engines: {node: '>=18'} @@ -737,6 +901,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.25.12': resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} engines: {node: '>=18'} @@ -749,6 +919,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.25.12': resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} engines: {node: '>=18'} @@ -761,6 +937,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.25.12': resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} engines: {node: '>=18'} @@ -820,6 +1002,57 @@ packages: '@noble/hashes': optional: true + '@gorules/zen-engine-darwin-arm64@0.54.0': + resolution: {integrity: sha512-FBNmqK+plKAnJvbCi26BGHdhdhRFL2IJs+jVmlzAE95Mkt0DKB6jdVRSRZS3y1hhEnIdcXEBhx6S2f/eWDLcZA==} + engines: {node: '>= 14'} + cpu: [arm64] + os: [darwin] + + '@gorules/zen-engine-darwin-x64@0.54.0': + resolution: {integrity: sha512-SL+dPc6K149fQZ/43Cuf11wUrUqmA2/Dhu2HJDnHNf9yTTs8/o2WnK5+amZ+eWTZZdbDJmYpfIDdM7YRnL5KEw==} + engines: {node: '>= 14'} + cpu: [x64] + os: [darwin] + + '@gorules/zen-engine-linux-arm64-gnu@0.54.0': + resolution: {integrity: sha512-3bCz4p1BgTQcSWc+4AWWYcX3IPqHuct+QjxLFfQQNeuYjmkCPP44tgRltaVZsLtWIebBeOUAxuF9AHnTwrpDDA==} + engines: {node: '>= 14'} + cpu: [arm64] + os: [linux] + + '@gorules/zen-engine-linux-arm64-musl@0.54.0': + resolution: {integrity: sha512-lWNthckrELOOPCyArgWKDPmE0k4tlAL8KkAW/xjjKU6mMnrQWMi6ZgQbUMF4Egp86BY8zRwZfqFGkQL7JvInbg==} + engines: {node: '>= 14'} + cpu: [arm64] + os: [linux] + + '@gorules/zen-engine-linux-x64-gnu@0.54.0': + resolution: {integrity: sha512-1EW5Ri7+XuUWsp+wNfgao/RN9CO1HL1ddf9vES4VjqBe6AYL9RaqcFDa+hDUCcp5CDvC34sCf/Xnvr8BCm5DBg==} + engines: {node: '>= 14'} + cpu: [x64] + os: [linux] + + '@gorules/zen-engine-linux-x64-musl@0.54.0': + resolution: {integrity: sha512-YSo2fwUw16QFBYTRsM4euhDEMDvN6UmSp6mWIxE1p/VeCGjxDTS9PJpPK114HYYmI/nSLiKP3qCe/tkA0PRSOA==} + engines: {node: '>= 14'} + cpu: [x64] + os: [linux] + + '@gorules/zen-engine-wasm32-wasi@0.54.0': + resolution: {integrity: sha512-CGpmNAm22+iEHGGNIH/sf9dDrNzxDYeA9jAkt/vynCYRJarF55YgfbvutOZ0t8pl+8D+falA6mB9eJ6ME7wWaA==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@gorules/zen-engine-win32-x64-msvc@0.54.0': + resolution: {integrity: sha512-bj5PytBCNFBueP+8jma0iL0MnF75c0lk147FL9CrGvZdsxuHw5v4ogvv8vQNQMKhidDyfokcfq67+dFcUP9gUQ==} + engines: {node: '>= 14'} + cpu: [x64] + os: [win32] + + '@gorules/zen-engine@0.54.0': + resolution: {integrity: sha512-rt8LeikbQVxDthok9KsLGQxoLVG26Hmb4QCS+CCVSaoFDVDMmo3VfhryyCVkqvY0FjIeIZTluZcPlAI8gNAkqw==} + engines: {node: '>= 14'} + '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} @@ -1054,6 +1287,9 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + '@napi-rs/wasm-runtime@1.1.1': + resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -1452,6 +1688,9 @@ packages: peerDependencies: '@testing-library/dom': '>=7.21.4' + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + '@types/argparse@1.0.38': resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} @@ -1609,9 +1848,23 @@ packages: '@vitest/expect@2.0.5': resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} + '@vitest/expect@2.1.9': + resolution: {integrity: sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==} + '@vitest/expect@4.0.18': resolution: {integrity: sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ==} + '@vitest/mocker@2.1.9': + resolution: {integrity: sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==} + peerDependencies: + msw: ^2.4.9 + vite: ^5.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + '@vitest/mocker@4.0.18': resolution: {integrity: sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ==} peerDependencies: @@ -1632,15 +1885,24 @@ packages: '@vitest/pretty-format@4.0.18': resolution: {integrity: sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw==} + '@vitest/runner@2.1.9': + resolution: {integrity: sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==} + '@vitest/runner@4.0.18': resolution: {integrity: sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw==} + '@vitest/snapshot@2.1.9': + resolution: {integrity: sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==} + '@vitest/snapshot@4.0.18': resolution: {integrity: sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA==} '@vitest/spy@2.0.5': resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} + '@vitest/spy@2.1.9': + resolution: {integrity: sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==} + '@vitest/spy@4.0.18': resolution: {integrity: sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw==} @@ -2186,6 +2448,11 @@ packages: peerDependencies: esbuild: '>=0.12 <1' + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.25.12: resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} engines: {node: '>=18'} @@ -3124,6 +3391,9 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} @@ -3556,6 +3826,10 @@ packages: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} + tinypool@1.1.1: + resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} + engines: {node: ^18.0.0 || >=20.0.0} + tinyrainbow@1.2.0: resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} engines: {node: '>=14.0.0'} @@ -3780,6 +4054,11 @@ packages: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true + vite-node@2.1.9: + resolution: {integrity: sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + vite-plugin-dts@4.5.4: resolution: {integrity: sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==} peerDependencies: @@ -3789,6 +4068,37 @@ packages: vite: optional: true + vite@5.4.21: + resolution: {integrity: sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + vite@6.4.1: resolution: {integrity: sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} @@ -3829,6 +4139,31 @@ packages: yaml: optional: true + vitest@2.1.9: + resolution: {integrity: sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 2.1.9 + '@vitest/ui': 2.1.9 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + vitest@4.0.18: resolution: {integrity: sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} @@ -4303,102 +4638,169 @@ snapshots: '@csstools/css-tokenizer@4.0.0': {} + '@emnapi/core@1.9.0': + dependencies: + '@emnapi/wasi-threads': 1.2.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.9.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.2.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@esbuild/aix-ppc64@0.21.5': + optional: true + '@esbuild/aix-ppc64@0.25.12': optional: true '@esbuild/aix-ppc64@0.27.3': optional: true + '@esbuild/android-arm64@0.21.5': + optional: true + '@esbuild/android-arm64@0.25.12': optional: true '@esbuild/android-arm64@0.27.3': optional: true + '@esbuild/android-arm@0.21.5': + optional: true + '@esbuild/android-arm@0.25.12': optional: true '@esbuild/android-arm@0.27.3': optional: true + '@esbuild/android-x64@0.21.5': + optional: true + '@esbuild/android-x64@0.25.12': optional: true '@esbuild/android-x64@0.27.3': optional: true + '@esbuild/darwin-arm64@0.21.5': + optional: true + '@esbuild/darwin-arm64@0.25.12': optional: true '@esbuild/darwin-arm64@0.27.3': optional: true + '@esbuild/darwin-x64@0.21.5': + optional: true + '@esbuild/darwin-x64@0.25.12': optional: true '@esbuild/darwin-x64@0.27.3': optional: true + '@esbuild/freebsd-arm64@0.21.5': + optional: true + '@esbuild/freebsd-arm64@0.25.12': optional: true '@esbuild/freebsd-arm64@0.27.3': optional: true + '@esbuild/freebsd-x64@0.21.5': + optional: true + '@esbuild/freebsd-x64@0.25.12': optional: true '@esbuild/freebsd-x64@0.27.3': optional: true + '@esbuild/linux-arm64@0.21.5': + optional: true + '@esbuild/linux-arm64@0.25.12': optional: true '@esbuild/linux-arm64@0.27.3': optional: true + '@esbuild/linux-arm@0.21.5': + optional: true + '@esbuild/linux-arm@0.25.12': optional: true '@esbuild/linux-arm@0.27.3': optional: true + '@esbuild/linux-ia32@0.21.5': + optional: true + '@esbuild/linux-ia32@0.25.12': optional: true '@esbuild/linux-ia32@0.27.3': optional: true + '@esbuild/linux-loong64@0.21.5': + optional: true + '@esbuild/linux-loong64@0.25.12': optional: true '@esbuild/linux-loong64@0.27.3': optional: true + '@esbuild/linux-mips64el@0.21.5': + optional: true + '@esbuild/linux-mips64el@0.25.12': optional: true '@esbuild/linux-mips64el@0.27.3': optional: true + '@esbuild/linux-ppc64@0.21.5': + optional: true + '@esbuild/linux-ppc64@0.25.12': optional: true '@esbuild/linux-ppc64@0.27.3': optional: true + '@esbuild/linux-riscv64@0.21.5': + optional: true + '@esbuild/linux-riscv64@0.25.12': optional: true '@esbuild/linux-riscv64@0.27.3': optional: true + '@esbuild/linux-s390x@0.21.5': + optional: true + '@esbuild/linux-s390x@0.25.12': optional: true '@esbuild/linux-s390x@0.27.3': optional: true + '@esbuild/linux-x64@0.21.5': + optional: true + '@esbuild/linux-x64@0.25.12': optional: true @@ -4411,6 +4813,9 @@ snapshots: '@esbuild/netbsd-arm64@0.27.3': optional: true + '@esbuild/netbsd-x64@0.21.5': + optional: true + '@esbuild/netbsd-x64@0.25.12': optional: true @@ -4423,6 +4828,9 @@ snapshots: '@esbuild/openbsd-arm64@0.27.3': optional: true + '@esbuild/openbsd-x64@0.21.5': + optional: true + '@esbuild/openbsd-x64@0.25.12': optional: true @@ -4435,24 +4843,36 @@ snapshots: '@esbuild/openharmony-arm64@0.27.3': optional: true + '@esbuild/sunos-x64@0.21.5': + optional: true + '@esbuild/sunos-x64@0.25.12': optional: true '@esbuild/sunos-x64@0.27.3': optional: true + '@esbuild/win32-arm64@0.21.5': + optional: true + '@esbuild/win32-arm64@0.25.12': optional: true '@esbuild/win32-arm64@0.27.3': optional: true + '@esbuild/win32-ia32@0.21.5': + optional: true + '@esbuild/win32-ia32@0.25.12': optional: true '@esbuild/win32-ia32@0.27.3': optional: true + '@esbuild/win32-x64@0.21.5': + optional: true + '@esbuild/win32-x64@0.25.12': optional: true @@ -4507,6 +4927,43 @@ snapshots: '@exodus/bytes@1.12.0': {} + '@gorules/zen-engine-darwin-arm64@0.54.0': + optional: true + + '@gorules/zen-engine-darwin-x64@0.54.0': + optional: true + + '@gorules/zen-engine-linux-arm64-gnu@0.54.0': + optional: true + + '@gorules/zen-engine-linux-arm64-musl@0.54.0': + optional: true + + '@gorules/zen-engine-linux-x64-gnu@0.54.0': + optional: true + + '@gorules/zen-engine-linux-x64-musl@0.54.0': + optional: true + + '@gorules/zen-engine-wasm32-wasi@0.54.0': + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 + optional: true + + '@gorules/zen-engine-win32-x64-msvc@0.54.0': + optional: true + + '@gorules/zen-engine@0.54.0': + optionalDependencies: + '@gorules/zen-engine-darwin-arm64': 0.54.0 + '@gorules/zen-engine-darwin-x64': 0.54.0 + '@gorules/zen-engine-linux-arm64-gnu': 0.54.0 + '@gorules/zen-engine-linux-arm64-musl': 0.54.0 + '@gorules/zen-engine-linux-x64-gnu': 0.54.0 + '@gorules/zen-engine-linux-x64-musl': 0.54.0 + '@gorules/zen-engine-wasm32-wasi': 0.54.0 + '@gorules/zen-engine-win32-x64-msvc': 0.54.0 + '@humanfs/core@0.19.1': {} '@humanfs/node@0.16.7': @@ -4758,6 +5215,13 @@ snapshots: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) + '@napi-rs/wasm-runtime@1.1.1': + dependencies: + '@emnapi/core': 1.9.0 + '@emnapi/runtime': 1.9.0 + '@tybys/wasm-util': 0.10.1 + optional: true + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -5166,6 +5630,11 @@ snapshots: dependencies: '@testing-library/dom': 10.4.0 + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + '@types/argparse@1.0.38': {} '@types/aria-query@5.0.4': {} @@ -5374,6 +5843,13 @@ snapshots: chai: 5.3.3 tinyrainbow: 1.2.0 + '@vitest/expect@2.1.9': + dependencies: + '@vitest/spy': 2.1.9 + '@vitest/utils': 2.1.9 + chai: 5.3.3 + tinyrainbow: 1.2.0 + '@vitest/expect@4.0.18': dependencies: '@standard-schema/spec': 1.1.0 @@ -5383,6 +5859,14 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 + '@vitest/mocker@2.1.9(vite@5.4.21(@types/node@25.2.2)(lightningcss@1.31.1))': + dependencies: + '@vitest/spy': 2.1.9 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 5.4.21(@types/node@25.2.2)(lightningcss@1.31.1) + '@vitest/mocker@4.0.18(vite@6.4.1(@types/node@25.2.2)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2))': dependencies: '@vitest/spy': 4.0.18 @@ -5403,11 +5887,22 @@ snapshots: dependencies: tinyrainbow: 3.0.3 + '@vitest/runner@2.1.9': + dependencies: + '@vitest/utils': 2.1.9 + pathe: 1.1.2 + '@vitest/runner@4.0.18': dependencies: '@vitest/utils': 4.0.18 pathe: 2.0.3 + '@vitest/snapshot@2.1.9': + dependencies: + '@vitest/pretty-format': 2.1.9 + magic-string: 0.30.21 + pathe: 1.1.2 + '@vitest/snapshot@4.0.18': dependencies: '@vitest/pretty-format': 4.0.18 @@ -5418,6 +5913,10 @@ snapshots: dependencies: tinyspy: 3.0.2 + '@vitest/spy@2.1.9': + dependencies: + tinyspy: 3.0.2 + '@vitest/spy@4.0.18': {} '@vitest/utils@2.0.5': @@ -6057,6 +6556,32 @@ snapshots: transitivePeerDependencies: - supports-color + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + esbuild@0.25.12: optionalDependencies: '@esbuild/aix-ppc64': 0.25.12 @@ -7070,6 +7595,8 @@ snapshots: path-type@4.0.0: {} + pathe@1.1.2: {} + pathe@2.0.3: {} pathval@2.0.1: {} @@ -7547,6 +8074,8 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 + tinypool@1.1.1: {} + tinyrainbow@1.2.0: {} tinyrainbow@3.0.3: {} @@ -7764,6 +8293,24 @@ snapshots: uuid@9.0.1: {} + vite-node@2.1.9(@types/node@25.2.2)(lightningcss@1.31.1): + dependencies: + cac: 6.7.14 + debug: 4.4.3 + es-module-lexer: 1.7.0 + pathe: 1.1.2 + vite: 5.4.21(@types/node@25.2.2)(lightningcss@1.31.1) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + vite-plugin-dts@4.5.4(@types/node@25.2.2)(rollup@4.57.1)(typescript@5.9.3)(vite@6.4.1(@types/node@25.2.2)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)): dependencies: '@microsoft/api-extractor': 7.56.3(@types/node@25.2.2) @@ -7783,6 +8330,16 @@ snapshots: - rollup - supports-color + vite@5.4.21(@types/node@25.2.2)(lightningcss@1.31.1): + dependencies: + esbuild: 0.21.5 + postcss: 8.5.6 + rollup: 4.57.1 + optionalDependencies: + '@types/node': 25.2.2 + fsevents: 2.3.3 + lightningcss: 1.31.1 + vite@6.4.1(@types/node@25.2.2)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2): dependencies: esbuild: 0.25.12 @@ -7798,6 +8355,42 @@ snapshots: lightningcss: 1.31.1 yaml: 2.8.2 + vitest@2.1.9(@types/node@25.2.2)(jsdom@28.0.0)(lightningcss@1.31.1): + dependencies: + '@vitest/expect': 2.1.9 + '@vitest/mocker': 2.1.9(vite@5.4.21(@types/node@25.2.2)(lightningcss@1.31.1)) + '@vitest/pretty-format': 2.1.9 + '@vitest/runner': 2.1.9 + '@vitest/snapshot': 2.1.9 + '@vitest/spy': 2.1.9 + '@vitest/utils': 2.1.9 + chai: 5.3.3 + debug: 4.4.3 + expect-type: 1.3.0 + magic-string: 0.30.21 + pathe: 1.1.2 + std-env: 3.10.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinypool: 1.1.1 + tinyrainbow: 1.2.0 + vite: 5.4.21(@types/node@25.2.2)(lightningcss@1.31.1) + vite-node: 2.1.9(@types/node@25.2.2)(lightningcss@1.31.1) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 25.2.2 + jsdom: 28.0.0 + transitivePeerDependencies: + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + vitest@4.0.18(@types/node@25.2.2)(jiti@2.6.1)(jsdom@28.0.0)(lightningcss@1.31.1)(yaml@2.8.2): dependencies: '@vitest/expect': 4.0.18 diff --git a/tsconfig.json b/tsconfig.json index 4b58531..8d20a24 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,6 +3,8 @@ "references": [ { "path": "packages/schema" }, { "path": "packages/engine-core" }, + { "path": "packages/engine-gorules" }, + { "path": "packages/engine" }, { "path": "packages/editor" }, { "path": "packages/cli" } ]