From 0246d1834735d9752667213667af9222dd2fb1ee Mon Sep 17 00:00:00 2001 From: Morgan Dean Date: Mon, 23 Jun 2025 10:22:36 -0700 Subject: [PATCH] Reorganize lib folder w/typescript and python roots, initialize core library. --- .vscode/computer-ts.code-workspace | 7 +- .vscode/core-ts.code-workspace | 13 + libs/lume/scripts/build/build-debug.sh | 4 - .../scripts/build/build-release-notarized.sh | 211 - libs/lume/scripts/build/build-release.sh | 21 - libs/{ => python}/agent/README.md | 0 libs/{ => python}/agent/agent/__init__.py | 0 .../{ => python}/agent/agent/core/__init__.py | 0 libs/{ => python}/agent/agent/core/agent.py | 0 libs/{ => python}/agent/agent/core/base.py | 0 .../agent/agent/core/callbacks.py | 0 .../agent/agent/core/experiment.py | 0 libs/{ => python}/agent/agent/core/factory.py | 0 .../{ => python}/agent/agent/core/messages.py | 0 .../agent/agent/core/provider_config.py | 0 .../agent/agent/core/telemetry.py | 0 libs/{ => python}/agent/agent/core/tools.py | 0 .../agent/agent/core/tools/__init__.py | 0 .../agent/agent/core/tools/base.py | 0 .../agent/agent/core/tools/bash.py | 0 .../agent/agent/core/tools/collection.py | 0 .../agent/agent/core/tools/computer.py | 0 .../agent/agent/core/tools/edit.py | 0 .../agent/agent/core/tools/manager.py | 0 libs/{ => python}/agent/agent/core/types.py | 0 .../agent/agent/core/visualization.py | 0 .../agent/agent/providers/__init__.py | 0 .../agent/providers/anthropic/__init__.py | 0 .../agent/providers/anthropic/api/client.py | 0 .../agent/providers/anthropic/api/logging.py | 0 .../agent/providers/anthropic/api_handler.py | 0 .../providers/anthropic/callbacks/__init__.py | 0 .../providers/anthropic/callbacks/manager.py | 0 .../agent/agent/providers/anthropic/loop.py | 0 .../agent/providers/anthropic/prompts.py | 0 .../providers/anthropic/response_handler.py | 0 .../providers/anthropic/tools/__init__.py | 0 .../agent/providers/anthropic/tools/base.py | 0 .../agent/providers/anthropic/tools/bash.py | 0 .../providers/anthropic/tools/collection.py | 0 .../providers/anthropic/tools/computer.py | 0 .../agent/providers/anthropic/tools/edit.py | 0 .../providers/anthropic/tools/manager.py | 0 .../agent/providers/anthropic/tools/run.py | 0 .../agent/agent/providers/anthropic/types.py | 0 .../agent/agent/providers/anthropic/utils.py | 0 .../agent/agent/providers/omni/__init__.py | 0 .../agent/agent/providers/omni/api_handler.py | 0 .../agent/providers/omni/clients/anthropic.py | 0 .../agent/providers/omni/clients/base.py | 0 .../agent/providers/omni/clients/oaicompat.py | 0 .../agent/providers/omni/clients/ollama.py | 0 .../agent/providers/omni/clients/openai.py | 0 .../agent/providers/omni/clients/utils.py | 0 .../agent/agent/providers/omni/image_utils.py | 0 .../agent/agent/providers/omni/loop.py | 0 .../agent/agent/providers/omni/parser.py | 0 .../agent/agent/providers/omni/prompts.py | 0 .../agent/providers/omni/tools/__init__.py | 0 .../agent/agent/providers/omni/tools/base.py | 0 .../agent/agent/providers/omni/tools/bash.py | 0 .../agent/providers/omni/tools/computer.py | 0 .../agent/providers/omni/tools/manager.py | 0 .../agent/agent/providers/omni/utils.py | 0 .../agent/agent/providers/openai/__init__.py | 0 .../agent/providers/openai/api_handler.py | 0 .../agent/agent/providers/openai/loop.py | 0 .../providers/openai/response_handler.py | 0 .../agent/providers/openai/tools/__init__.py | 0 .../agent/providers/openai/tools/base.py | 0 .../agent/providers/openai/tools/computer.py | 0 .../agent/providers/openai/tools/manager.py | 0 .../agent/agent/providers/openai/types.py | 0 .../agent/agent/providers/openai/utils.py | 0 .../agent/agent/providers/uitars/__init__.py | 0 .../agent/providers/uitars/clients/base.py | 0 .../agent/providers/uitars/clients/mlxvlm.py | 0 .../providers/uitars/clients/oaicompat.py | 0 .../agent/agent/providers/uitars/loop.py | 0 .../agent/agent/providers/uitars/prompts.py | 0 .../agent/providers/uitars/tools/__init__.py | 0 .../agent/providers/uitars/tools/computer.py | 0 .../agent/providers/uitars/tools/manager.py | 0 .../agent/agent/providers/uitars/utils.py | 0 libs/{ => python}/agent/agent/telemetry.py | 0 libs/{ => python}/agent/agent/ui/__init__.py | 0 libs/{ => python}/agent/agent/ui/__main__.py | 0 .../agent/agent/ui/gradio/__init__.py | 0 .../{ => python}/agent/agent/ui/gradio/app.py | 0 libs/{ => python}/agent/poetry.toml | 0 libs/{ => python}/agent/pyproject.toml | 0 libs/{ => python}/computer-server/README.md | 0 .../computer_server/__init__.py | 0 .../computer_server/__main__.py | 0 .../computer-server/computer_server/cli.py | 0 .../computer_server/diorama/__init__.py | 0 .../computer_server/diorama/base.py | 0 .../computer_server/diorama/diorama.py | 0 .../diorama/diorama_computer.py | 0 .../computer_server/diorama/draw.py | 0 .../computer_server/diorama/macos.py | 0 .../computer_server/diorama/safezone.py | 0 .../computer_server/handlers/base.py | 0 .../computer_server/handlers/factory.py | 0 .../computer_server/handlers/generic.py | 0 .../computer_server/handlers/linux.py | 0 .../computer_server/handlers/macos.py | 0 .../computer_server/handlers/windows.py | 0 .../computer-server/computer_server/main.py | 0 .../computer-server/computer_server/server.py | 0 .../computer-server/examples/__init__.py | 0 .../computer-server/examples/usage_example.py | 0 .../computer-server/pyproject.toml | 0 .../computer-server/run_server.py | 0 .../computer-server/test_connection.py | 0 .../python => python/computer}/README.md | 0 .../computer}/computer/__init__.py | 0 .../computer}/computer/computer.py | 0 .../computer}/computer/diorama_computer.py | 0 .../computer}/computer/helpers.py | 0 .../computer}/computer/interface/__init__.py | 0 .../computer}/computer/interface/base.py | 0 .../computer}/computer/interface/factory.py | 0 .../computer}/computer/interface/linux.py | 0 .../computer}/computer/interface/macos.py | 0 .../computer}/computer/interface/models.py | 0 .../computer}/computer/interface/windows.py | 0 .../computer}/computer/logger.py | 0 .../computer}/computer/models.py | 0 .../computer}/computer/providers/__init__.py | 0 .../computer}/computer/providers/base.py | 0 .../computer/providers/cloud/__init__.py | 0 .../computer/providers/cloud/provider.py | 0 .../computer}/computer/providers/factory.py | 0 .../computer/providers/lume/__init__.py | 0 .../computer/providers/lume/provider.py | 0 .../computer}/computer/providers/lume_api.py | 0 .../computer/providers/lumier/__init__.py | 0 .../computer/providers/lumier/provider.py | 0 .../computer/providers/winsandbox/__init__.py | 0 .../computer/providers/winsandbox/provider.py | 0 .../providers/winsandbox/setup_script.ps1 | 0 .../computer}/computer/telemetry.py | 0 .../computer}/computer/ui/__init__.py | 0 .../computer}/computer/ui/__main__.py | 0 .../computer}/computer/ui/gradio/__init__.py | 0 .../computer}/computer/ui/gradio/app.py | 0 .../computer}/computer/utils.py | 0 .../python => python/computer}/poetry.toml | 0 .../python => python/computer}/pyproject.toml | 0 libs/{ => python}/core/README.md | 0 libs/{ => python}/core/core/__init__.py | 0 .../core/core/telemetry/__init__.py | 0 .../core/core/telemetry/client.py | 0 .../core/core/telemetry/models.py | 0 .../core/core/telemetry/posthog_client.py | 0 .../core/core/telemetry/sender.py | 0 .../core/core/telemetry/telemetry.py | 0 libs/{ => python}/core/poetry.toml | 0 libs/{ => python}/core/pyproject.toml | 0 libs/{ => python}/lume/.cursorignore | 0 libs/{ => python}/lume/CONTRIBUTING.md | 0 libs/{ => python}/lume/Package.resolved | 0 libs/{ => python}/lume/Package.swift | 0 libs/{ => python}/lume/README.md | 0 libs/{ => python}/lume/docs/API-Reference.md | 0 libs/{ => python}/lume/docs/Development.md | 0 libs/{ => python}/lume/docs/FAQ.md | 0 libs/{ => python}/lume/img/cli.png | Bin libs/{ => python}/lume/img/logo_black.png | Bin libs/{ => python}/lume/img/logo_white.png | Bin .../lume/resources/lume.entitlements | 0 libs/{ => python}/lume/scripts/install.sh | 0 .../lume/src/Commands/Clone.swift | 0 .../lume/src/Commands/Config.swift | 0 .../lume/src/Commands/Create.swift | 0 .../lume/src/Commands/Delete.swift | 0 libs/{ => python}/lume/src/Commands/Get.swift | 0 .../{ => python}/lume/src/Commands/IPSW.swift | 0 .../lume/src/Commands/Images.swift | 0 .../{ => python}/lume/src/Commands/List.swift | 0 .../{ => python}/lume/src/Commands/Logs.swift | 0 .../src/Commands/Options/FormatOption.swift | 0 .../lume/src/Commands/Prune.swift | 0 .../{ => python}/lume/src/Commands/Pull.swift | 0 .../{ => python}/lume/src/Commands/Push.swift | 0 libs/{ => python}/lume/src/Commands/Run.swift | 0 .../lume/src/Commands/Serve.swift | 0 libs/{ => python}/lume/src/Commands/Set.swift | 0 .../{ => python}/lume/src/Commands/Stop.swift | 0 .../ImageContainerRegistry.swift | 0 .../src/ContainerRegistry/ImageList.swift | 0 .../src/ContainerRegistry/ImagesPrinter.swift | 0 .../{ => python}/lume/src/Errors/Errors.swift | 0 .../lume/src/FileSystem/Home.swift | 0 .../lume/src/FileSystem/Settings.swift | 0 .../lume/src/FileSystem/VMConfig.swift | 0 .../lume/src/FileSystem/VMDirectory.swift | 0 .../lume/src/FileSystem/VMLocation.swift | 0 .../lume/src/LumeController.swift | 0 libs/{ => python}/lume/src/Main.swift | 0 libs/{ => python}/lume/src/Server/HTTP.swift | 0 .../lume/src/Server/Handlers.swift | 0 .../lume/src/Server/Requests.swift | 0 .../lume/src/Server/Responses.swift | 0 .../{ => python}/lume/src/Server/Server.swift | 0 .../lume/src/Utils/CommandRegistry.swift | 0 .../lume/src/Utils/CommandUtils.swift | 0 libs/{ => python}/lume/src/Utils/Logger.swift | 0 .../lume/src/Utils/NetworkUtils.swift | 0 libs/{ => python}/lume/src/Utils/Path.swift | 0 .../lume/src/Utils/ProcessRunner.swift | 0 .../lume/src/Utils/ProgressLogger.swift | 0 libs/{ => python}/lume/src/Utils/String.swift | 0 libs/{ => python}/lume/src/Utils/Utils.swift | 0 libs/{ => python}/lume/src/VM/DarwinVM.swift | 0 libs/{ => python}/lume/src/VM/LinuxVM.swift | 0 libs/{ => python}/lume/src/VM/VM.swift | 0 libs/{ => python}/lume/src/VM/VMDetails.swift | 0 .../lume/src/VM/VMDetailsPrinter.swift | 0 .../lume/src/VM/VMDisplayResolution.swift | 0 libs/{ => python}/lume/src/VM/VMFactory.swift | 0 .../lume/src/VNC/PassphraseGenerator.swift | 0 .../lume/src/VNC/VNCService.swift | 0 .../src/Virtualization/DHCPLeaseParser.swift | 0 .../Virtualization/DarwinImageLoader.swift | 0 .../Virtualization/ImageLoaderFactory.swift | 0 .../VMVirtualizationService.swift | 0 .../lume/tests/Mocks/MockVM.swift | 0 .../Mocks/MockVMVirtualizationService.swift | 0 .../lume/tests/Mocks/MockVNCService.swift | 0 .../lume/tests/VM/VMDetailsPrinterTests.swift | 0 libs/{ => python}/lume/tests/VMTests.swift | 0 .../tests/VMVirtualizationServiceTests.swift | 0 .../lume/tests/VNCServiceTests.swift | 0 libs/{ => python}/lumier/.dockerignore | 0 libs/{ => python}/lumier/Dockerfile | 0 libs/{ => python}/lumier/README.md | 0 libs/{ => python}/lumier/src/bin/entry.sh | 0 .../lumier/src/config/constants.sh | 0 .../{ => python}/lumier/src/hooks/on-logon.sh | 0 libs/{ => python}/lumier/src/lib/utils.sh | 0 libs/{ => python}/lumier/src/lib/vm.sh | 0 libs/{ => python}/mcp-server/README.md | 0 .../mcp-server/mcp_server/__init__.py | 0 .../mcp-server/mcp_server/__main__.py | 0 .../mcp-server/mcp_server/server.py | 0 libs/{ => python}/mcp-server/pyproject.toml | 0 .../mcp-server/scripts/install_mcp_server.sh | 0 .../mcp-server/scripts/start_mcp_server.sh | 0 libs/{ => python}/pylume/README.md | 0 libs/{ => python}/pylume/__init__.py | 0 libs/{ => python}/pylume/pylume/__init__.py | 0 libs/{ => python}/pylume/pylume/client.py | 0 libs/{ => python}/pylume/pylume/exceptions.py | 0 libs/{ => python}/pylume/pylume/lume | Bin libs/{ => python}/pylume/pylume/models.py | 0 libs/{ => python}/pylume/pylume/pylume.py | 0 libs/{ => python}/pylume/pylume/server.py | 0 libs/{ => python}/pylume/pyproject.toml | 0 libs/{ => python}/som/README.md | 0 libs/{ => python}/som/poetry.toml | 0 libs/{ => python}/som/pyproject.toml | 0 libs/{ => python}/som/som/__init__.py | 0 libs/{ => python}/som/som/detect.py | 0 libs/{ => python}/som/som/detection.py | 0 libs/{ => python}/som/som/models.py | 0 libs/{ => python}/som/som/ocr.py | 0 libs/{ => python}/som/som/util/utils.py | 0 libs/{ => python}/som/som/visualization.py | 0 .../{ => python}/som/tests/test_omniparser.py | 0 .../computer}/.editorconfig | 0 .../computer}/.gitattributes | 0 .../computer}/.github/_workflows/release.yml | 0 .../.github/_workflows/unit-test.yml | 0 .../computer}/.gitignore | 0 .../typescript => typescript/computer}/.nvmrc | 0 .../computer}/LICENSE | 0 .../computer}/README.md | 0 .../computer}/biome.json | 0 .../computer}/package.json | 0 .../computer}/pnpm-lock.yaml | 0 .../computer}/pnpm-workspace.yaml | 0 .../computer}/src/computer/index.ts | 0 .../computer}/src/computer/providers/base.ts | 0 .../computer}/src/computer/providers/cloud.ts | 0 .../computer}/src/computer/providers/index.ts | 0 .../computer}/src/computer/types.ts | 0 .../computer}/src/index.ts | 0 .../computer}/src/interface/base.ts | 0 .../computer}/src/interface/factory.ts | 0 .../computer}/src/interface/index.ts | 0 .../computer}/src/interface/linux.ts | 0 .../computer}/src/interface/macos.ts | 0 .../computer}/src/interface/windows.ts | 0 .../computer}/src/types.ts | 0 .../computer}/tests/computer/cloud.test.ts | 0 .../computer}/tests/interface/factory.test.ts | 0 .../computer}/tests/interface/index.test.ts | 0 .../computer}/tests/interface/linux.test.ts | 0 .../computer}/tests/interface/macos.test.ts | 0 .../computer}/tests/interface/windows.test.ts | 0 .../computer}/tests/setup.ts | 0 .../computer}/tsconfig.json | 0 .../computer}/tsdown.config.ts | 0 .../computer}/vitest.config.ts | 0 libs/typescript/core/.editorconfig | 6 + libs/typescript/core/.gitattributes | 1 + .../core/.github/_workflows/release.yml | 26 + .../core/.github/_workflows/unit-test.yml | 38 + libs/typescript/core/.gitignore | 6 + libs/typescript/core/.vscode/settings.json | 3 + libs/typescript/core/LICENSE | 21 + libs/typescript/core/README.md | 27 + libs/typescript/core/biome.json | 86 + libs/typescript/core/package.json | 54 + libs/typescript/core/pnpm-lock.yaml | 5724 +++++++++++++++++ libs/typescript/core/src/index.ts | 3 + libs/typescript/core/tests/index.test.ts | 6 + libs/typescript/core/tsconfig.json | 20 + libs/typescript/core/tsdown.config.ts | 9 + libs/typescript/core/vitest.config.ts | 3 + 322 files changed, 6052 insertions(+), 237 deletions(-) create mode 100644 .vscode/core-ts.code-workspace delete mode 100755 libs/lume/scripts/build/build-debug.sh delete mode 100755 libs/lume/scripts/build/build-release-notarized.sh delete mode 100755 libs/lume/scripts/build/build-release.sh rename libs/{ => python}/agent/README.md (100%) rename libs/{ => python}/agent/agent/__init__.py (100%) rename libs/{ => python}/agent/agent/core/__init__.py (100%) rename libs/{ => python}/agent/agent/core/agent.py (100%) rename libs/{ => python}/agent/agent/core/base.py (100%) rename libs/{ => python}/agent/agent/core/callbacks.py (100%) rename libs/{ => python}/agent/agent/core/experiment.py (100%) rename libs/{ => python}/agent/agent/core/factory.py (100%) rename libs/{ => python}/agent/agent/core/messages.py (100%) rename libs/{ => python}/agent/agent/core/provider_config.py (100%) rename libs/{ => python}/agent/agent/core/telemetry.py (100%) rename libs/{ => python}/agent/agent/core/tools.py (100%) rename libs/{ => python}/agent/agent/core/tools/__init__.py (100%) rename libs/{ => python}/agent/agent/core/tools/base.py (100%) rename libs/{ => python}/agent/agent/core/tools/bash.py (100%) rename libs/{ => python}/agent/agent/core/tools/collection.py (100%) rename libs/{ => python}/agent/agent/core/tools/computer.py (100%) rename libs/{ => python}/agent/agent/core/tools/edit.py (100%) rename libs/{ => python}/agent/agent/core/tools/manager.py (100%) rename libs/{ => python}/agent/agent/core/types.py (100%) rename libs/{ => python}/agent/agent/core/visualization.py (100%) rename libs/{ => python}/agent/agent/providers/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/api/client.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/api/logging.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/api_handler.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/callbacks/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/callbacks/manager.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/loop.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/prompts.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/response_handler.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/base.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/bash.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/collection.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/computer.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/edit.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/manager.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/tools/run.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/types.py (100%) rename libs/{ => python}/agent/agent/providers/anthropic/utils.py (100%) rename libs/{ => python}/agent/agent/providers/omni/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/omni/api_handler.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/anthropic.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/base.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/oaicompat.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/ollama.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/openai.py (100%) rename libs/{ => python}/agent/agent/providers/omni/clients/utils.py (100%) rename libs/{ => python}/agent/agent/providers/omni/image_utils.py (100%) rename libs/{ => python}/agent/agent/providers/omni/loop.py (100%) rename libs/{ => python}/agent/agent/providers/omni/parser.py (100%) rename libs/{ => python}/agent/agent/providers/omni/prompts.py (100%) rename libs/{ => python}/agent/agent/providers/omni/tools/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/omni/tools/base.py (100%) rename libs/{ => python}/agent/agent/providers/omni/tools/bash.py (100%) rename libs/{ => python}/agent/agent/providers/omni/tools/computer.py (100%) rename libs/{ => python}/agent/agent/providers/omni/tools/manager.py (100%) rename libs/{ => python}/agent/agent/providers/omni/utils.py (100%) rename libs/{ => python}/agent/agent/providers/openai/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/openai/api_handler.py (100%) rename libs/{ => python}/agent/agent/providers/openai/loop.py (100%) rename libs/{ => python}/agent/agent/providers/openai/response_handler.py (100%) rename libs/{ => python}/agent/agent/providers/openai/tools/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/openai/tools/base.py (100%) rename libs/{ => python}/agent/agent/providers/openai/tools/computer.py (100%) rename libs/{ => python}/agent/agent/providers/openai/tools/manager.py (100%) rename libs/{ => python}/agent/agent/providers/openai/types.py (100%) rename libs/{ => python}/agent/agent/providers/openai/utils.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/clients/base.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/clients/mlxvlm.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/clients/oaicompat.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/loop.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/prompts.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/tools/__init__.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/tools/computer.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/tools/manager.py (100%) rename libs/{ => python}/agent/agent/providers/uitars/utils.py (100%) rename libs/{ => python}/agent/agent/telemetry.py (100%) rename libs/{ => python}/agent/agent/ui/__init__.py (100%) rename libs/{ => python}/agent/agent/ui/__main__.py (100%) rename libs/{ => python}/agent/agent/ui/gradio/__init__.py (100%) rename libs/{ => python}/agent/agent/ui/gradio/app.py (100%) rename libs/{ => python}/agent/poetry.toml (100%) rename libs/{ => python}/agent/pyproject.toml (100%) rename libs/{ => python}/computer-server/README.md (100%) rename libs/{ => python}/computer-server/computer_server/__init__.py (100%) rename libs/{ => python}/computer-server/computer_server/__main__.py (100%) rename libs/{ => python}/computer-server/computer_server/cli.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/__init__.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/base.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/diorama.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/diorama_computer.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/draw.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/macos.py (100%) rename libs/{ => python}/computer-server/computer_server/diorama/safezone.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/base.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/factory.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/generic.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/linux.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/macos.py (100%) rename libs/{ => python}/computer-server/computer_server/handlers/windows.py (100%) rename libs/{ => python}/computer-server/computer_server/main.py (100%) rename libs/{ => python}/computer-server/computer_server/server.py (100%) rename libs/{ => python}/computer-server/examples/__init__.py (100%) rename libs/{ => python}/computer-server/examples/usage_example.py (100%) rename libs/{ => python}/computer-server/pyproject.toml (100%) rename libs/{ => python}/computer-server/run_server.py (100%) rename libs/{ => python}/computer-server/test_connection.py (100%) rename libs/{computer/python => python/computer}/README.md (100%) rename libs/{computer/python => python/computer}/computer/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/computer.py (100%) rename libs/{computer/python => python/computer}/computer/diorama_computer.py (100%) rename libs/{computer/python => python/computer}/computer/helpers.py (100%) rename libs/{computer/python => python/computer}/computer/interface/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/interface/base.py (100%) rename libs/{computer/python => python/computer}/computer/interface/factory.py (100%) rename libs/{computer/python => python/computer}/computer/interface/linux.py (100%) rename libs/{computer/python => python/computer}/computer/interface/macos.py (100%) rename libs/{computer/python => python/computer}/computer/interface/models.py (100%) rename libs/{computer/python => python/computer}/computer/interface/windows.py (100%) rename libs/{computer/python => python/computer}/computer/logger.py (100%) rename libs/{computer/python => python/computer}/computer/models.py (100%) rename libs/{computer/python => python/computer}/computer/providers/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/providers/base.py (100%) rename libs/{computer/python => python/computer}/computer/providers/cloud/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/providers/cloud/provider.py (100%) rename libs/{computer/python => python/computer}/computer/providers/factory.py (100%) rename libs/{computer/python => python/computer}/computer/providers/lume/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/providers/lume/provider.py (100%) rename libs/{computer/python => python/computer}/computer/providers/lume_api.py (100%) rename libs/{computer/python => python/computer}/computer/providers/lumier/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/providers/lumier/provider.py (100%) rename libs/{computer/python => python/computer}/computer/providers/winsandbox/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/providers/winsandbox/provider.py (100%) rename libs/{computer/python => python/computer}/computer/providers/winsandbox/setup_script.ps1 (100%) rename libs/{computer/python => python/computer}/computer/telemetry.py (100%) rename libs/{computer/python => python/computer}/computer/ui/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/ui/__main__.py (100%) rename libs/{computer/python => python/computer}/computer/ui/gradio/__init__.py (100%) rename libs/{computer/python => python/computer}/computer/ui/gradio/app.py (100%) rename libs/{computer/python => python/computer}/computer/utils.py (100%) rename libs/{computer/python => python/computer}/poetry.toml (100%) rename libs/{computer/python => python/computer}/pyproject.toml (100%) rename libs/{ => python}/core/README.md (100%) rename libs/{ => python}/core/core/__init__.py (100%) rename libs/{ => python}/core/core/telemetry/__init__.py (100%) rename libs/{ => python}/core/core/telemetry/client.py (100%) rename libs/{ => python}/core/core/telemetry/models.py (100%) rename libs/{ => python}/core/core/telemetry/posthog_client.py (100%) rename libs/{ => python}/core/core/telemetry/sender.py (100%) rename libs/{ => python}/core/core/telemetry/telemetry.py (100%) rename libs/{ => python}/core/poetry.toml (100%) rename libs/{ => python}/core/pyproject.toml (100%) rename libs/{ => python}/lume/.cursorignore (100%) rename libs/{ => python}/lume/CONTRIBUTING.md (100%) rename libs/{ => python}/lume/Package.resolved (100%) rename libs/{ => python}/lume/Package.swift (100%) rename libs/{ => python}/lume/README.md (100%) rename libs/{ => python}/lume/docs/API-Reference.md (100%) rename libs/{ => python}/lume/docs/Development.md (100%) rename libs/{ => python}/lume/docs/FAQ.md (100%) rename libs/{ => python}/lume/img/cli.png (100%) rename libs/{ => python}/lume/img/logo_black.png (100%) rename libs/{ => python}/lume/img/logo_white.png (100%) rename libs/{ => python}/lume/resources/lume.entitlements (100%) rename libs/{ => python}/lume/scripts/install.sh (100%) rename libs/{ => python}/lume/src/Commands/Clone.swift (100%) rename libs/{ => python}/lume/src/Commands/Config.swift (100%) rename libs/{ => python}/lume/src/Commands/Create.swift (100%) rename libs/{ => python}/lume/src/Commands/Delete.swift (100%) rename libs/{ => python}/lume/src/Commands/Get.swift (100%) rename libs/{ => python}/lume/src/Commands/IPSW.swift (100%) rename libs/{ => python}/lume/src/Commands/Images.swift (100%) rename libs/{ => python}/lume/src/Commands/List.swift (100%) rename libs/{ => python}/lume/src/Commands/Logs.swift (100%) rename libs/{ => python}/lume/src/Commands/Options/FormatOption.swift (100%) rename libs/{ => python}/lume/src/Commands/Prune.swift (100%) rename libs/{ => python}/lume/src/Commands/Pull.swift (100%) rename libs/{ => python}/lume/src/Commands/Push.swift (100%) rename libs/{ => python}/lume/src/Commands/Run.swift (100%) rename libs/{ => python}/lume/src/Commands/Serve.swift (100%) rename libs/{ => python}/lume/src/Commands/Set.swift (100%) rename libs/{ => python}/lume/src/Commands/Stop.swift (100%) rename libs/{ => python}/lume/src/ContainerRegistry/ImageContainerRegistry.swift (100%) rename libs/{ => python}/lume/src/ContainerRegistry/ImageList.swift (100%) rename libs/{ => python}/lume/src/ContainerRegistry/ImagesPrinter.swift (100%) rename libs/{ => python}/lume/src/Errors/Errors.swift (100%) rename libs/{ => python}/lume/src/FileSystem/Home.swift (100%) rename libs/{ => python}/lume/src/FileSystem/Settings.swift (100%) rename libs/{ => python}/lume/src/FileSystem/VMConfig.swift (100%) rename libs/{ => python}/lume/src/FileSystem/VMDirectory.swift (100%) rename libs/{ => python}/lume/src/FileSystem/VMLocation.swift (100%) rename libs/{ => python}/lume/src/LumeController.swift (100%) rename libs/{ => python}/lume/src/Main.swift (100%) rename libs/{ => python}/lume/src/Server/HTTP.swift (100%) rename libs/{ => python}/lume/src/Server/Handlers.swift (100%) rename libs/{ => python}/lume/src/Server/Requests.swift (100%) rename libs/{ => python}/lume/src/Server/Responses.swift (100%) rename libs/{ => python}/lume/src/Server/Server.swift (100%) rename libs/{ => python}/lume/src/Utils/CommandRegistry.swift (100%) rename libs/{ => python}/lume/src/Utils/CommandUtils.swift (100%) rename libs/{ => python}/lume/src/Utils/Logger.swift (100%) rename libs/{ => python}/lume/src/Utils/NetworkUtils.swift (100%) rename libs/{ => python}/lume/src/Utils/Path.swift (100%) rename libs/{ => python}/lume/src/Utils/ProcessRunner.swift (100%) rename libs/{ => python}/lume/src/Utils/ProgressLogger.swift (100%) rename libs/{ => python}/lume/src/Utils/String.swift (100%) rename libs/{ => python}/lume/src/Utils/Utils.swift (100%) rename libs/{ => python}/lume/src/VM/DarwinVM.swift (100%) rename libs/{ => python}/lume/src/VM/LinuxVM.swift (100%) rename libs/{ => python}/lume/src/VM/VM.swift (100%) rename libs/{ => python}/lume/src/VM/VMDetails.swift (100%) rename libs/{ => python}/lume/src/VM/VMDetailsPrinter.swift (100%) rename libs/{ => python}/lume/src/VM/VMDisplayResolution.swift (100%) rename libs/{ => python}/lume/src/VM/VMFactory.swift (100%) rename libs/{ => python}/lume/src/VNC/PassphraseGenerator.swift (100%) rename libs/{ => python}/lume/src/VNC/VNCService.swift (100%) rename libs/{ => python}/lume/src/Virtualization/DHCPLeaseParser.swift (100%) rename libs/{ => python}/lume/src/Virtualization/DarwinImageLoader.swift (100%) rename libs/{ => python}/lume/src/Virtualization/ImageLoaderFactory.swift (100%) rename libs/{ => python}/lume/src/Virtualization/VMVirtualizationService.swift (100%) rename libs/{ => python}/lume/tests/Mocks/MockVM.swift (100%) rename libs/{ => python}/lume/tests/Mocks/MockVMVirtualizationService.swift (100%) rename libs/{ => python}/lume/tests/Mocks/MockVNCService.swift (100%) rename libs/{ => python}/lume/tests/VM/VMDetailsPrinterTests.swift (100%) rename libs/{ => python}/lume/tests/VMTests.swift (100%) rename libs/{ => python}/lume/tests/VMVirtualizationServiceTests.swift (100%) rename libs/{ => python}/lume/tests/VNCServiceTests.swift (100%) rename libs/{ => python}/lumier/.dockerignore (100%) rename libs/{ => python}/lumier/Dockerfile (100%) rename libs/{ => python}/lumier/README.md (100%) rename libs/{ => python}/lumier/src/bin/entry.sh (100%) rename libs/{ => python}/lumier/src/config/constants.sh (100%) rename libs/{ => python}/lumier/src/hooks/on-logon.sh (100%) rename libs/{ => python}/lumier/src/lib/utils.sh (100%) rename libs/{ => python}/lumier/src/lib/vm.sh (100%) rename libs/{ => python}/mcp-server/README.md (100%) rename libs/{ => python}/mcp-server/mcp_server/__init__.py (100%) rename libs/{ => python}/mcp-server/mcp_server/__main__.py (100%) rename libs/{ => python}/mcp-server/mcp_server/server.py (100%) rename libs/{ => python}/mcp-server/pyproject.toml (100%) rename libs/{ => python}/mcp-server/scripts/install_mcp_server.sh (100%) rename libs/{ => python}/mcp-server/scripts/start_mcp_server.sh (100%) rename libs/{ => python}/pylume/README.md (100%) rename libs/{ => python}/pylume/__init__.py (100%) rename libs/{ => python}/pylume/pylume/__init__.py (100%) rename libs/{ => python}/pylume/pylume/client.py (100%) rename libs/{ => python}/pylume/pylume/exceptions.py (100%) rename libs/{ => python}/pylume/pylume/lume (100%) rename libs/{ => python}/pylume/pylume/models.py (100%) rename libs/{ => python}/pylume/pylume/pylume.py (100%) rename libs/{ => python}/pylume/pylume/server.py (100%) rename libs/{ => python}/pylume/pyproject.toml (100%) rename libs/{ => python}/som/README.md (100%) rename libs/{ => python}/som/poetry.toml (100%) rename libs/{ => python}/som/pyproject.toml (100%) rename libs/{ => python}/som/som/__init__.py (100%) rename libs/{ => python}/som/som/detect.py (100%) rename libs/{ => python}/som/som/detection.py (100%) rename libs/{ => python}/som/som/models.py (100%) rename libs/{ => python}/som/som/ocr.py (100%) rename libs/{ => python}/som/som/util/utils.py (100%) rename libs/{ => python}/som/som/visualization.py (100%) rename libs/{ => python}/som/tests/test_omniparser.py (100%) rename libs/{computer/typescript => typescript/computer}/.editorconfig (100%) rename libs/{computer/typescript => typescript/computer}/.gitattributes (100%) rename libs/{computer/typescript => typescript/computer}/.github/_workflows/release.yml (100%) rename libs/{computer/typescript => typescript/computer}/.github/_workflows/unit-test.yml (100%) rename libs/{computer/typescript => typescript/computer}/.gitignore (100%) rename libs/{computer/typescript => typescript/computer}/.nvmrc (100%) rename libs/{computer/typescript => typescript/computer}/LICENSE (100%) rename libs/{computer/typescript => typescript/computer}/README.md (100%) rename libs/{computer/typescript => typescript/computer}/biome.json (100%) rename libs/{computer/typescript => typescript/computer}/package.json (100%) rename libs/{computer/typescript => typescript/computer}/pnpm-lock.yaml (100%) rename libs/{computer/typescript => typescript/computer}/pnpm-workspace.yaml (100%) rename libs/{computer/typescript => typescript/computer}/src/computer/index.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/computer/providers/base.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/computer/providers/cloud.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/computer/providers/index.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/computer/types.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/index.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/base.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/factory.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/index.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/linux.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/macos.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/interface/windows.ts (100%) rename libs/{computer/typescript => typescript/computer}/src/types.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/computer/cloud.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/interface/factory.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/interface/index.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/interface/linux.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/interface/macos.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/interface/windows.test.ts (100%) rename libs/{computer/typescript => typescript/computer}/tests/setup.ts (100%) rename libs/{computer/typescript => typescript/computer}/tsconfig.json (100%) rename libs/{computer/typescript => typescript/computer}/tsdown.config.ts (100%) rename libs/{computer/typescript => typescript/computer}/vitest.config.ts (100%) create mode 100644 libs/typescript/core/.editorconfig create mode 100644 libs/typescript/core/.gitattributes create mode 100644 libs/typescript/core/.github/_workflows/release.yml create mode 100644 libs/typescript/core/.github/_workflows/unit-test.yml create mode 100644 libs/typescript/core/.gitignore create mode 100644 libs/typescript/core/.vscode/settings.json create mode 100644 libs/typescript/core/LICENSE create mode 100644 libs/typescript/core/README.md create mode 100644 libs/typescript/core/biome.json create mode 100644 libs/typescript/core/package.json create mode 100644 libs/typescript/core/pnpm-lock.yaml create mode 100644 libs/typescript/core/src/index.ts create mode 100644 libs/typescript/core/tests/index.test.ts create mode 100644 libs/typescript/core/tsconfig.json create mode 100644 libs/typescript/core/tsdown.config.ts create mode 100644 libs/typescript/core/vitest.config.ts diff --git a/.vscode/computer-ts.code-workspace b/.vscode/computer-ts.code-workspace index fa3d872a..1c74b456 100644 --- a/.vscode/computer-ts.code-workspace +++ b/.vscode/computer-ts.code-workspace @@ -2,7 +2,12 @@ "folders": [ { "name": "computer-ts", - "path": "../libs/computer/typescript" + "path": "../libs/typescript/computer" } ], + "extensions": { + "recommendations": [ + "biomejs.biome", + ] + } } \ No newline at end of file diff --git a/.vscode/core-ts.code-workspace b/.vscode/core-ts.code-workspace new file mode 100644 index 00000000..3da96d33 --- /dev/null +++ b/.vscode/core-ts.code-workspace @@ -0,0 +1,13 @@ +{ + "folders": [ + { + "name": "core-ts", + "path": "../libs/typescript/core" + } + ], + "extensions": { + "recommendations": [ + "biomejs.biome", + ] + } +} \ No newline at end of file diff --git a/libs/lume/scripts/build/build-debug.sh b/libs/lume/scripts/build/build-debug.sh deleted file mode 100755 index 452e20c3..00000000 --- a/libs/lume/scripts/build/build-debug.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -swift build --product lume -codesign --force --entitlement resources/lume.entitlements --sign - .build/debug/lume diff --git a/libs/lume/scripts/build/build-release-notarized.sh b/libs/lume/scripts/build/build-release-notarized.sh deleted file mode 100755 index 603446b7..00000000 --- a/libs/lume/scripts/build/build-release-notarized.sh +++ /dev/null @@ -1,211 +0,0 @@ -#!/bin/bash - -# Set default log level if not provided -LOG_LEVEL=${LOG_LEVEL:-"normal"} - -# Function to log based on level -log() { - local level=$1 - local message=$2 - - case "$LOG_LEVEL" in - "minimal") - # Only show essential or error messages - if [ "$level" = "essential" ] || [ "$level" = "error" ]; then - echo "$message" - fi - ;; - "none") - # Show nothing except errors - if [ "$level" = "error" ]; then - echo "$message" >&2 - fi - ;; - *) - # Normal logging - show everything - echo "$message" - ;; - esac -} - -# Check required environment variables -required_vars=( - "CERT_APPLICATION_NAME" - "CERT_INSTALLER_NAME" - "APPLE_ID" - "TEAM_ID" - "APP_SPECIFIC_PASSWORD" -) - -for var in "${required_vars[@]}"; do - if [ -z "${!var}" ]; then - log "error" "Error: $var is not set" - exit 1 - fi -done - -# Get VERSION from environment or use default -VERSION=${VERSION:-"0.1.0"} - -# Move to the project root directory -pushd ../../ > /dev/null - -# Ensure .release directory exists and is clean -mkdir -p .release -log "normal" "Ensuring .release directory exists and is accessible" - -# Build the release version -log "essential" "Building release version..." -swift build -c release --product lume > /dev/null - -# Sign the binary with hardened runtime entitlements -log "essential" "Signing binary with entitlements..." -codesign --force --options runtime \ - --entitlement ./resources/lume.entitlements \ - --sign "$CERT_APPLICATION_NAME" \ - .build/release/lume 2> /dev/null - -# Create a temporary directory for packaging -TEMP_ROOT=$(mktemp -d) -mkdir -p "$TEMP_ROOT/usr/local/bin" -cp -f .build/release/lume "$TEMP_ROOT/usr/local/bin/" - -# Build the installer package -log "essential" "Building installer package..." -if ! pkgbuild --root "$TEMP_ROOT" \ - --identifier "com.trycua.lume" \ - --version "1.0" \ - --install-location "/" \ - --sign "$CERT_INSTALLER_NAME" \ - ./.release/lume.pkg; then - log "error" "Failed to build installer package" - exit 1 -fi - -# Verify the package was created -if [ ! -f "./.release/lume.pkg" ]; then - log "error" "Package file ./.release/lume.pkg was not created" - exit 1 -fi - -log "essential" "Package created successfully" - -# Submit for notarization using stored credentials -log "essential" "Submitting for notarization..." -if [ "$LOG_LEVEL" = "minimal" ] || [ "$LOG_LEVEL" = "none" ]; then - # Minimal output - capture ID but hide details - NOTARY_OUTPUT=$(xcrun notarytool submit ./.release/lume.pkg \ - --apple-id "${APPLE_ID}" \ - --team-id "${TEAM_ID}" \ - --password "${APP_SPECIFIC_PASSWORD}" \ - --wait 2>&1) - - # Check if notarization was successful - if echo "$NOTARY_OUTPUT" | grep -q "status: Accepted"; then - log "essential" "Notarization successful!" - else - log "error" "Notarization failed. Please check logs." - log "error" "Notarization output:" - echo "$NOTARY_OUTPUT" - exit 1 - fi -else - # Normal verbose output - if ! xcrun notarytool submit ./.release/lume.pkg \ - --apple-id "${APPLE_ID}" \ - --team-id "${TEAM_ID}" \ - --password "${APP_SPECIFIC_PASSWORD}" \ - --wait; then - log "error" "Notarization failed" - exit 1 - fi -fi - -# Staple the notarization ticket -log "essential" "Stapling notarization ticket..." -if ! xcrun stapler staple ./.release/lume.pkg > /dev/null 2>&1; then - log "error" "Failed to staple notarization ticket" - exit 1 -fi - -# Create temporary directory for package extraction -EXTRACT_ROOT=$(mktemp -d) -PKG_PATH="$(pwd)/.release/lume.pkg" - -# Extract the pkg using xar -cd "$EXTRACT_ROOT" -xar -xf "$PKG_PATH" > /dev/null 2>&1 - -# Verify Payload exists before proceeding -if [ ! -f "Payload" ]; then - log "error" "Error: Payload file not found after xar extraction" - exit 1 -fi - -# Create a directory for the extracted contents -mkdir -p extracted -cd extracted - -# Extract the Payload -cat ../Payload | gunzip -dc | cpio -i > /dev/null 2>&1 - -# Verify the binary exists -if [ ! -f "usr/local/bin/lume" ]; then - log "error" "Error: lume binary not found in expected location" - exit 1 -fi - -# Get the release directory absolute path -RELEASE_DIR="$(realpath "$(dirname "$PKG_PATH")")" -log "normal" "Using release directory: $RELEASE_DIR" - -# Copy extracted lume to the release directory -cp -f usr/local/bin/lume "$RELEASE_DIR/lume" - -# Install to user-local bin directory (standard location) -USER_BIN="$HOME/.local/bin" -mkdir -p "$USER_BIN" -cp -f "$RELEASE_DIR/lume" "$USER_BIN/lume" - -# Advise user to add to PATH if not present -if ! echo "$PATH" | grep -q "$USER_BIN"; then - log "normal" "[lume build] Note: $USER_BIN is not in your PATH. Add 'export PATH=\"$USER_BIN:\$PATH\"' to your shell profile." -fi - -# Get architecture and create OS identifier -ARCH=$(uname -m) -OS_IDENTIFIER="darwin-${ARCH}" - -# Create versioned archives of the package with OS identifier in the name -log "essential" "Creating archives in $RELEASE_DIR..." -cd "$RELEASE_DIR" - -# Clean up any existing artifacts first to avoid conflicts -rm -f lume-*.tar.gz lume-*.pkg.tar.gz - -# Create version-specific archives -log "essential" "Creating version-specific archives (${VERSION})..." -# Package the binary -tar -czf "lume-${VERSION}-${OS_IDENTIFIER}.tar.gz" lume > /dev/null 2>&1 -# Package the installer -tar -czf "lume-${VERSION}-${OS_IDENTIFIER}.pkg.tar.gz" lume.pkg > /dev/null 2>&1 - -# Create sha256 checksum file -log "essential" "Generating checksums..." -shasum -a 256 lume-*.tar.gz > checksums.txt -log "essential" "Package created successfully with checksums generated." - -# Show what's in the release directory -log "essential" "Files in release directory:" -ls -la "$RELEASE_DIR" - -# Ensure correct permissions -chmod 644 "$RELEASE_DIR"/*.tar.gz "$RELEASE_DIR"/*.pkg.tar.gz "$RELEASE_DIR"/checksums.txt - -popd > /dev/null - -# Clean up -rm -rf "$TEMP_ROOT" -rm -rf "$EXTRACT_ROOT" - -log "essential" "Build and packaging completed successfully." \ No newline at end of file diff --git a/libs/lume/scripts/build/build-release.sh b/libs/lume/scripts/build/build-release.sh deleted file mode 100755 index 20b63124..00000000 --- a/libs/lume/scripts/build/build-release.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -pushd ../../ - -swift build -c release --product lume -codesign --force --entitlement ./resources/lume.entitlements --sign - .build/release/lume - -mkdir -p ./.release -cp -f .build/release/lume ./.release/lume - -# Install to user-local bin directory (standard location) -USER_BIN="$HOME/.local/bin" -mkdir -p "$USER_BIN" -cp -f ./.release/lume "$USER_BIN/lume" - -# Advise user to add to PATH if not present -if ! echo "$PATH" | grep -q "$USER_BIN"; then - echo "[lume build] Note: $USER_BIN is not in your PATH. Add 'export PATH=\"$USER_BIN:\$PATH\"' to your shell profile." -fi - -popd \ No newline at end of file diff --git a/libs/agent/README.md b/libs/python/agent/README.md similarity index 100% rename from libs/agent/README.md rename to libs/python/agent/README.md diff --git a/libs/agent/agent/__init__.py b/libs/python/agent/agent/__init__.py similarity index 100% rename from libs/agent/agent/__init__.py rename to libs/python/agent/agent/__init__.py diff --git a/libs/agent/agent/core/__init__.py b/libs/python/agent/agent/core/__init__.py similarity index 100% rename from libs/agent/agent/core/__init__.py rename to libs/python/agent/agent/core/__init__.py diff --git a/libs/agent/agent/core/agent.py b/libs/python/agent/agent/core/agent.py similarity index 100% rename from libs/agent/agent/core/agent.py rename to libs/python/agent/agent/core/agent.py diff --git a/libs/agent/agent/core/base.py b/libs/python/agent/agent/core/base.py similarity index 100% rename from libs/agent/agent/core/base.py rename to libs/python/agent/agent/core/base.py diff --git a/libs/agent/agent/core/callbacks.py b/libs/python/agent/agent/core/callbacks.py similarity index 100% rename from libs/agent/agent/core/callbacks.py rename to libs/python/agent/agent/core/callbacks.py diff --git a/libs/agent/agent/core/experiment.py b/libs/python/agent/agent/core/experiment.py similarity index 100% rename from libs/agent/agent/core/experiment.py rename to libs/python/agent/agent/core/experiment.py diff --git a/libs/agent/agent/core/factory.py b/libs/python/agent/agent/core/factory.py similarity index 100% rename from libs/agent/agent/core/factory.py rename to libs/python/agent/agent/core/factory.py diff --git a/libs/agent/agent/core/messages.py b/libs/python/agent/agent/core/messages.py similarity index 100% rename from libs/agent/agent/core/messages.py rename to libs/python/agent/agent/core/messages.py diff --git a/libs/agent/agent/core/provider_config.py b/libs/python/agent/agent/core/provider_config.py similarity index 100% rename from libs/agent/agent/core/provider_config.py rename to libs/python/agent/agent/core/provider_config.py diff --git a/libs/agent/agent/core/telemetry.py b/libs/python/agent/agent/core/telemetry.py similarity index 100% rename from libs/agent/agent/core/telemetry.py rename to libs/python/agent/agent/core/telemetry.py diff --git a/libs/agent/agent/core/tools.py b/libs/python/agent/agent/core/tools.py similarity index 100% rename from libs/agent/agent/core/tools.py rename to libs/python/agent/agent/core/tools.py diff --git a/libs/agent/agent/core/tools/__init__.py b/libs/python/agent/agent/core/tools/__init__.py similarity index 100% rename from libs/agent/agent/core/tools/__init__.py rename to libs/python/agent/agent/core/tools/__init__.py diff --git a/libs/agent/agent/core/tools/base.py b/libs/python/agent/agent/core/tools/base.py similarity index 100% rename from libs/agent/agent/core/tools/base.py rename to libs/python/agent/agent/core/tools/base.py diff --git a/libs/agent/agent/core/tools/bash.py b/libs/python/agent/agent/core/tools/bash.py similarity index 100% rename from libs/agent/agent/core/tools/bash.py rename to libs/python/agent/agent/core/tools/bash.py diff --git a/libs/agent/agent/core/tools/collection.py b/libs/python/agent/agent/core/tools/collection.py similarity index 100% rename from libs/agent/agent/core/tools/collection.py rename to libs/python/agent/agent/core/tools/collection.py diff --git a/libs/agent/agent/core/tools/computer.py b/libs/python/agent/agent/core/tools/computer.py similarity index 100% rename from libs/agent/agent/core/tools/computer.py rename to libs/python/agent/agent/core/tools/computer.py diff --git a/libs/agent/agent/core/tools/edit.py b/libs/python/agent/agent/core/tools/edit.py similarity index 100% rename from libs/agent/agent/core/tools/edit.py rename to libs/python/agent/agent/core/tools/edit.py diff --git a/libs/agent/agent/core/tools/manager.py b/libs/python/agent/agent/core/tools/manager.py similarity index 100% rename from libs/agent/agent/core/tools/manager.py rename to libs/python/agent/agent/core/tools/manager.py diff --git a/libs/agent/agent/core/types.py b/libs/python/agent/agent/core/types.py similarity index 100% rename from libs/agent/agent/core/types.py rename to libs/python/agent/agent/core/types.py diff --git a/libs/agent/agent/core/visualization.py b/libs/python/agent/agent/core/visualization.py similarity index 100% rename from libs/agent/agent/core/visualization.py rename to libs/python/agent/agent/core/visualization.py diff --git a/libs/agent/agent/providers/__init__.py b/libs/python/agent/agent/providers/__init__.py similarity index 100% rename from libs/agent/agent/providers/__init__.py rename to libs/python/agent/agent/providers/__init__.py diff --git a/libs/agent/agent/providers/anthropic/__init__.py b/libs/python/agent/agent/providers/anthropic/__init__.py similarity index 100% rename from libs/agent/agent/providers/anthropic/__init__.py rename to libs/python/agent/agent/providers/anthropic/__init__.py diff --git a/libs/agent/agent/providers/anthropic/api/client.py b/libs/python/agent/agent/providers/anthropic/api/client.py similarity index 100% rename from libs/agent/agent/providers/anthropic/api/client.py rename to libs/python/agent/agent/providers/anthropic/api/client.py diff --git a/libs/agent/agent/providers/anthropic/api/logging.py b/libs/python/agent/agent/providers/anthropic/api/logging.py similarity index 100% rename from libs/agent/agent/providers/anthropic/api/logging.py rename to libs/python/agent/agent/providers/anthropic/api/logging.py diff --git a/libs/agent/agent/providers/anthropic/api_handler.py b/libs/python/agent/agent/providers/anthropic/api_handler.py similarity index 100% rename from libs/agent/agent/providers/anthropic/api_handler.py rename to libs/python/agent/agent/providers/anthropic/api_handler.py diff --git a/libs/agent/agent/providers/anthropic/callbacks/__init__.py b/libs/python/agent/agent/providers/anthropic/callbacks/__init__.py similarity index 100% rename from libs/agent/agent/providers/anthropic/callbacks/__init__.py rename to libs/python/agent/agent/providers/anthropic/callbacks/__init__.py diff --git a/libs/agent/agent/providers/anthropic/callbacks/manager.py b/libs/python/agent/agent/providers/anthropic/callbacks/manager.py similarity index 100% rename from libs/agent/agent/providers/anthropic/callbacks/manager.py rename to libs/python/agent/agent/providers/anthropic/callbacks/manager.py diff --git a/libs/agent/agent/providers/anthropic/loop.py b/libs/python/agent/agent/providers/anthropic/loop.py similarity index 100% rename from libs/agent/agent/providers/anthropic/loop.py rename to libs/python/agent/agent/providers/anthropic/loop.py diff --git a/libs/agent/agent/providers/anthropic/prompts.py b/libs/python/agent/agent/providers/anthropic/prompts.py similarity index 100% rename from libs/agent/agent/providers/anthropic/prompts.py rename to libs/python/agent/agent/providers/anthropic/prompts.py diff --git a/libs/agent/agent/providers/anthropic/response_handler.py b/libs/python/agent/agent/providers/anthropic/response_handler.py similarity index 100% rename from libs/agent/agent/providers/anthropic/response_handler.py rename to libs/python/agent/agent/providers/anthropic/response_handler.py diff --git a/libs/agent/agent/providers/anthropic/tools/__init__.py b/libs/python/agent/agent/providers/anthropic/tools/__init__.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/__init__.py rename to libs/python/agent/agent/providers/anthropic/tools/__init__.py diff --git a/libs/agent/agent/providers/anthropic/tools/base.py b/libs/python/agent/agent/providers/anthropic/tools/base.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/base.py rename to libs/python/agent/agent/providers/anthropic/tools/base.py diff --git a/libs/agent/agent/providers/anthropic/tools/bash.py b/libs/python/agent/agent/providers/anthropic/tools/bash.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/bash.py rename to libs/python/agent/agent/providers/anthropic/tools/bash.py diff --git a/libs/agent/agent/providers/anthropic/tools/collection.py b/libs/python/agent/agent/providers/anthropic/tools/collection.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/collection.py rename to libs/python/agent/agent/providers/anthropic/tools/collection.py diff --git a/libs/agent/agent/providers/anthropic/tools/computer.py b/libs/python/agent/agent/providers/anthropic/tools/computer.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/computer.py rename to libs/python/agent/agent/providers/anthropic/tools/computer.py diff --git a/libs/agent/agent/providers/anthropic/tools/edit.py b/libs/python/agent/agent/providers/anthropic/tools/edit.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/edit.py rename to libs/python/agent/agent/providers/anthropic/tools/edit.py diff --git a/libs/agent/agent/providers/anthropic/tools/manager.py b/libs/python/agent/agent/providers/anthropic/tools/manager.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/manager.py rename to libs/python/agent/agent/providers/anthropic/tools/manager.py diff --git a/libs/agent/agent/providers/anthropic/tools/run.py b/libs/python/agent/agent/providers/anthropic/tools/run.py similarity index 100% rename from libs/agent/agent/providers/anthropic/tools/run.py rename to libs/python/agent/agent/providers/anthropic/tools/run.py diff --git a/libs/agent/agent/providers/anthropic/types.py b/libs/python/agent/agent/providers/anthropic/types.py similarity index 100% rename from libs/agent/agent/providers/anthropic/types.py rename to libs/python/agent/agent/providers/anthropic/types.py diff --git a/libs/agent/agent/providers/anthropic/utils.py b/libs/python/agent/agent/providers/anthropic/utils.py similarity index 100% rename from libs/agent/agent/providers/anthropic/utils.py rename to libs/python/agent/agent/providers/anthropic/utils.py diff --git a/libs/agent/agent/providers/omni/__init__.py b/libs/python/agent/agent/providers/omni/__init__.py similarity index 100% rename from libs/agent/agent/providers/omni/__init__.py rename to libs/python/agent/agent/providers/omni/__init__.py diff --git a/libs/agent/agent/providers/omni/api_handler.py b/libs/python/agent/agent/providers/omni/api_handler.py similarity index 100% rename from libs/agent/agent/providers/omni/api_handler.py rename to libs/python/agent/agent/providers/omni/api_handler.py diff --git a/libs/agent/agent/providers/omni/clients/anthropic.py b/libs/python/agent/agent/providers/omni/clients/anthropic.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/anthropic.py rename to libs/python/agent/agent/providers/omni/clients/anthropic.py diff --git a/libs/agent/agent/providers/omni/clients/base.py b/libs/python/agent/agent/providers/omni/clients/base.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/base.py rename to libs/python/agent/agent/providers/omni/clients/base.py diff --git a/libs/agent/agent/providers/omni/clients/oaicompat.py b/libs/python/agent/agent/providers/omni/clients/oaicompat.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/oaicompat.py rename to libs/python/agent/agent/providers/omni/clients/oaicompat.py diff --git a/libs/agent/agent/providers/omni/clients/ollama.py b/libs/python/agent/agent/providers/omni/clients/ollama.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/ollama.py rename to libs/python/agent/agent/providers/omni/clients/ollama.py diff --git a/libs/agent/agent/providers/omni/clients/openai.py b/libs/python/agent/agent/providers/omni/clients/openai.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/openai.py rename to libs/python/agent/agent/providers/omni/clients/openai.py diff --git a/libs/agent/agent/providers/omni/clients/utils.py b/libs/python/agent/agent/providers/omni/clients/utils.py similarity index 100% rename from libs/agent/agent/providers/omni/clients/utils.py rename to libs/python/agent/agent/providers/omni/clients/utils.py diff --git a/libs/agent/agent/providers/omni/image_utils.py b/libs/python/agent/agent/providers/omni/image_utils.py similarity index 100% rename from libs/agent/agent/providers/omni/image_utils.py rename to libs/python/agent/agent/providers/omni/image_utils.py diff --git a/libs/agent/agent/providers/omni/loop.py b/libs/python/agent/agent/providers/omni/loop.py similarity index 100% rename from libs/agent/agent/providers/omni/loop.py rename to libs/python/agent/agent/providers/omni/loop.py diff --git a/libs/agent/agent/providers/omni/parser.py b/libs/python/agent/agent/providers/omni/parser.py similarity index 100% rename from libs/agent/agent/providers/omni/parser.py rename to libs/python/agent/agent/providers/omni/parser.py diff --git a/libs/agent/agent/providers/omni/prompts.py b/libs/python/agent/agent/providers/omni/prompts.py similarity index 100% rename from libs/agent/agent/providers/omni/prompts.py rename to libs/python/agent/agent/providers/omni/prompts.py diff --git a/libs/agent/agent/providers/omni/tools/__init__.py b/libs/python/agent/agent/providers/omni/tools/__init__.py similarity index 100% rename from libs/agent/agent/providers/omni/tools/__init__.py rename to libs/python/agent/agent/providers/omni/tools/__init__.py diff --git a/libs/agent/agent/providers/omni/tools/base.py b/libs/python/agent/agent/providers/omni/tools/base.py similarity index 100% rename from libs/agent/agent/providers/omni/tools/base.py rename to libs/python/agent/agent/providers/omni/tools/base.py diff --git a/libs/agent/agent/providers/omni/tools/bash.py b/libs/python/agent/agent/providers/omni/tools/bash.py similarity index 100% rename from libs/agent/agent/providers/omni/tools/bash.py rename to libs/python/agent/agent/providers/omni/tools/bash.py diff --git a/libs/agent/agent/providers/omni/tools/computer.py b/libs/python/agent/agent/providers/omni/tools/computer.py similarity index 100% rename from libs/agent/agent/providers/omni/tools/computer.py rename to libs/python/agent/agent/providers/omni/tools/computer.py diff --git a/libs/agent/agent/providers/omni/tools/manager.py b/libs/python/agent/agent/providers/omni/tools/manager.py similarity index 100% rename from libs/agent/agent/providers/omni/tools/manager.py rename to libs/python/agent/agent/providers/omni/tools/manager.py diff --git a/libs/agent/agent/providers/omni/utils.py b/libs/python/agent/agent/providers/omni/utils.py similarity index 100% rename from libs/agent/agent/providers/omni/utils.py rename to libs/python/agent/agent/providers/omni/utils.py diff --git a/libs/agent/agent/providers/openai/__init__.py b/libs/python/agent/agent/providers/openai/__init__.py similarity index 100% rename from libs/agent/agent/providers/openai/__init__.py rename to libs/python/agent/agent/providers/openai/__init__.py diff --git a/libs/agent/agent/providers/openai/api_handler.py b/libs/python/agent/agent/providers/openai/api_handler.py similarity index 100% rename from libs/agent/agent/providers/openai/api_handler.py rename to libs/python/agent/agent/providers/openai/api_handler.py diff --git a/libs/agent/agent/providers/openai/loop.py b/libs/python/agent/agent/providers/openai/loop.py similarity index 100% rename from libs/agent/agent/providers/openai/loop.py rename to libs/python/agent/agent/providers/openai/loop.py diff --git a/libs/agent/agent/providers/openai/response_handler.py b/libs/python/agent/agent/providers/openai/response_handler.py similarity index 100% rename from libs/agent/agent/providers/openai/response_handler.py rename to libs/python/agent/agent/providers/openai/response_handler.py diff --git a/libs/agent/agent/providers/openai/tools/__init__.py b/libs/python/agent/agent/providers/openai/tools/__init__.py similarity index 100% rename from libs/agent/agent/providers/openai/tools/__init__.py rename to libs/python/agent/agent/providers/openai/tools/__init__.py diff --git a/libs/agent/agent/providers/openai/tools/base.py b/libs/python/agent/agent/providers/openai/tools/base.py similarity index 100% rename from libs/agent/agent/providers/openai/tools/base.py rename to libs/python/agent/agent/providers/openai/tools/base.py diff --git a/libs/agent/agent/providers/openai/tools/computer.py b/libs/python/agent/agent/providers/openai/tools/computer.py similarity index 100% rename from libs/agent/agent/providers/openai/tools/computer.py rename to libs/python/agent/agent/providers/openai/tools/computer.py diff --git a/libs/agent/agent/providers/openai/tools/manager.py b/libs/python/agent/agent/providers/openai/tools/manager.py similarity index 100% rename from libs/agent/agent/providers/openai/tools/manager.py rename to libs/python/agent/agent/providers/openai/tools/manager.py diff --git a/libs/agent/agent/providers/openai/types.py b/libs/python/agent/agent/providers/openai/types.py similarity index 100% rename from libs/agent/agent/providers/openai/types.py rename to libs/python/agent/agent/providers/openai/types.py diff --git a/libs/agent/agent/providers/openai/utils.py b/libs/python/agent/agent/providers/openai/utils.py similarity index 100% rename from libs/agent/agent/providers/openai/utils.py rename to libs/python/agent/agent/providers/openai/utils.py diff --git a/libs/agent/agent/providers/uitars/__init__.py b/libs/python/agent/agent/providers/uitars/__init__.py similarity index 100% rename from libs/agent/agent/providers/uitars/__init__.py rename to libs/python/agent/agent/providers/uitars/__init__.py diff --git a/libs/agent/agent/providers/uitars/clients/base.py b/libs/python/agent/agent/providers/uitars/clients/base.py similarity index 100% rename from libs/agent/agent/providers/uitars/clients/base.py rename to libs/python/agent/agent/providers/uitars/clients/base.py diff --git a/libs/agent/agent/providers/uitars/clients/mlxvlm.py b/libs/python/agent/agent/providers/uitars/clients/mlxvlm.py similarity index 100% rename from libs/agent/agent/providers/uitars/clients/mlxvlm.py rename to libs/python/agent/agent/providers/uitars/clients/mlxvlm.py diff --git a/libs/agent/agent/providers/uitars/clients/oaicompat.py b/libs/python/agent/agent/providers/uitars/clients/oaicompat.py similarity index 100% rename from libs/agent/agent/providers/uitars/clients/oaicompat.py rename to libs/python/agent/agent/providers/uitars/clients/oaicompat.py diff --git a/libs/agent/agent/providers/uitars/loop.py b/libs/python/agent/agent/providers/uitars/loop.py similarity index 100% rename from libs/agent/agent/providers/uitars/loop.py rename to libs/python/agent/agent/providers/uitars/loop.py diff --git a/libs/agent/agent/providers/uitars/prompts.py b/libs/python/agent/agent/providers/uitars/prompts.py similarity index 100% rename from libs/agent/agent/providers/uitars/prompts.py rename to libs/python/agent/agent/providers/uitars/prompts.py diff --git a/libs/agent/agent/providers/uitars/tools/__init__.py b/libs/python/agent/agent/providers/uitars/tools/__init__.py similarity index 100% rename from libs/agent/agent/providers/uitars/tools/__init__.py rename to libs/python/agent/agent/providers/uitars/tools/__init__.py diff --git a/libs/agent/agent/providers/uitars/tools/computer.py b/libs/python/agent/agent/providers/uitars/tools/computer.py similarity index 100% rename from libs/agent/agent/providers/uitars/tools/computer.py rename to libs/python/agent/agent/providers/uitars/tools/computer.py diff --git a/libs/agent/agent/providers/uitars/tools/manager.py b/libs/python/agent/agent/providers/uitars/tools/manager.py similarity index 100% rename from libs/agent/agent/providers/uitars/tools/manager.py rename to libs/python/agent/agent/providers/uitars/tools/manager.py diff --git a/libs/agent/agent/providers/uitars/utils.py b/libs/python/agent/agent/providers/uitars/utils.py similarity index 100% rename from libs/agent/agent/providers/uitars/utils.py rename to libs/python/agent/agent/providers/uitars/utils.py diff --git a/libs/agent/agent/telemetry.py b/libs/python/agent/agent/telemetry.py similarity index 100% rename from libs/agent/agent/telemetry.py rename to libs/python/agent/agent/telemetry.py diff --git a/libs/agent/agent/ui/__init__.py b/libs/python/agent/agent/ui/__init__.py similarity index 100% rename from libs/agent/agent/ui/__init__.py rename to libs/python/agent/agent/ui/__init__.py diff --git a/libs/agent/agent/ui/__main__.py b/libs/python/agent/agent/ui/__main__.py similarity index 100% rename from libs/agent/agent/ui/__main__.py rename to libs/python/agent/agent/ui/__main__.py diff --git a/libs/agent/agent/ui/gradio/__init__.py b/libs/python/agent/agent/ui/gradio/__init__.py similarity index 100% rename from libs/agent/agent/ui/gradio/__init__.py rename to libs/python/agent/agent/ui/gradio/__init__.py diff --git a/libs/agent/agent/ui/gradio/app.py b/libs/python/agent/agent/ui/gradio/app.py similarity index 100% rename from libs/agent/agent/ui/gradio/app.py rename to libs/python/agent/agent/ui/gradio/app.py diff --git a/libs/agent/poetry.toml b/libs/python/agent/poetry.toml similarity index 100% rename from libs/agent/poetry.toml rename to libs/python/agent/poetry.toml diff --git a/libs/agent/pyproject.toml b/libs/python/agent/pyproject.toml similarity index 100% rename from libs/agent/pyproject.toml rename to libs/python/agent/pyproject.toml diff --git a/libs/computer-server/README.md b/libs/python/computer-server/README.md similarity index 100% rename from libs/computer-server/README.md rename to libs/python/computer-server/README.md diff --git a/libs/computer-server/computer_server/__init__.py b/libs/python/computer-server/computer_server/__init__.py similarity index 100% rename from libs/computer-server/computer_server/__init__.py rename to libs/python/computer-server/computer_server/__init__.py diff --git a/libs/computer-server/computer_server/__main__.py b/libs/python/computer-server/computer_server/__main__.py similarity index 100% rename from libs/computer-server/computer_server/__main__.py rename to libs/python/computer-server/computer_server/__main__.py diff --git a/libs/computer-server/computer_server/cli.py b/libs/python/computer-server/computer_server/cli.py similarity index 100% rename from libs/computer-server/computer_server/cli.py rename to libs/python/computer-server/computer_server/cli.py diff --git a/libs/computer-server/computer_server/diorama/__init__.py b/libs/python/computer-server/computer_server/diorama/__init__.py similarity index 100% rename from libs/computer-server/computer_server/diorama/__init__.py rename to libs/python/computer-server/computer_server/diorama/__init__.py diff --git a/libs/computer-server/computer_server/diorama/base.py b/libs/python/computer-server/computer_server/diorama/base.py similarity index 100% rename from libs/computer-server/computer_server/diorama/base.py rename to libs/python/computer-server/computer_server/diorama/base.py diff --git a/libs/computer-server/computer_server/diorama/diorama.py b/libs/python/computer-server/computer_server/diorama/diorama.py similarity index 100% rename from libs/computer-server/computer_server/diorama/diorama.py rename to libs/python/computer-server/computer_server/diorama/diorama.py diff --git a/libs/computer-server/computer_server/diorama/diorama_computer.py b/libs/python/computer-server/computer_server/diorama/diorama_computer.py similarity index 100% rename from libs/computer-server/computer_server/diorama/diorama_computer.py rename to libs/python/computer-server/computer_server/diorama/diorama_computer.py diff --git a/libs/computer-server/computer_server/diorama/draw.py b/libs/python/computer-server/computer_server/diorama/draw.py similarity index 100% rename from libs/computer-server/computer_server/diorama/draw.py rename to libs/python/computer-server/computer_server/diorama/draw.py diff --git a/libs/computer-server/computer_server/diorama/macos.py b/libs/python/computer-server/computer_server/diorama/macos.py similarity index 100% rename from libs/computer-server/computer_server/diorama/macos.py rename to libs/python/computer-server/computer_server/diorama/macos.py diff --git a/libs/computer-server/computer_server/diorama/safezone.py b/libs/python/computer-server/computer_server/diorama/safezone.py similarity index 100% rename from libs/computer-server/computer_server/diorama/safezone.py rename to libs/python/computer-server/computer_server/diorama/safezone.py diff --git a/libs/computer-server/computer_server/handlers/base.py b/libs/python/computer-server/computer_server/handlers/base.py similarity index 100% rename from libs/computer-server/computer_server/handlers/base.py rename to libs/python/computer-server/computer_server/handlers/base.py diff --git a/libs/computer-server/computer_server/handlers/factory.py b/libs/python/computer-server/computer_server/handlers/factory.py similarity index 100% rename from libs/computer-server/computer_server/handlers/factory.py rename to libs/python/computer-server/computer_server/handlers/factory.py diff --git a/libs/computer-server/computer_server/handlers/generic.py b/libs/python/computer-server/computer_server/handlers/generic.py similarity index 100% rename from libs/computer-server/computer_server/handlers/generic.py rename to libs/python/computer-server/computer_server/handlers/generic.py diff --git a/libs/computer-server/computer_server/handlers/linux.py b/libs/python/computer-server/computer_server/handlers/linux.py similarity index 100% rename from libs/computer-server/computer_server/handlers/linux.py rename to libs/python/computer-server/computer_server/handlers/linux.py diff --git a/libs/computer-server/computer_server/handlers/macos.py b/libs/python/computer-server/computer_server/handlers/macos.py similarity index 100% rename from libs/computer-server/computer_server/handlers/macos.py rename to libs/python/computer-server/computer_server/handlers/macos.py diff --git a/libs/computer-server/computer_server/handlers/windows.py b/libs/python/computer-server/computer_server/handlers/windows.py similarity index 100% rename from libs/computer-server/computer_server/handlers/windows.py rename to libs/python/computer-server/computer_server/handlers/windows.py diff --git a/libs/computer-server/computer_server/main.py b/libs/python/computer-server/computer_server/main.py similarity index 100% rename from libs/computer-server/computer_server/main.py rename to libs/python/computer-server/computer_server/main.py diff --git a/libs/computer-server/computer_server/server.py b/libs/python/computer-server/computer_server/server.py similarity index 100% rename from libs/computer-server/computer_server/server.py rename to libs/python/computer-server/computer_server/server.py diff --git a/libs/computer-server/examples/__init__.py b/libs/python/computer-server/examples/__init__.py similarity index 100% rename from libs/computer-server/examples/__init__.py rename to libs/python/computer-server/examples/__init__.py diff --git a/libs/computer-server/examples/usage_example.py b/libs/python/computer-server/examples/usage_example.py similarity index 100% rename from libs/computer-server/examples/usage_example.py rename to libs/python/computer-server/examples/usage_example.py diff --git a/libs/computer-server/pyproject.toml b/libs/python/computer-server/pyproject.toml similarity index 100% rename from libs/computer-server/pyproject.toml rename to libs/python/computer-server/pyproject.toml diff --git a/libs/computer-server/run_server.py b/libs/python/computer-server/run_server.py similarity index 100% rename from libs/computer-server/run_server.py rename to libs/python/computer-server/run_server.py diff --git a/libs/computer-server/test_connection.py b/libs/python/computer-server/test_connection.py similarity index 100% rename from libs/computer-server/test_connection.py rename to libs/python/computer-server/test_connection.py diff --git a/libs/computer/python/README.md b/libs/python/computer/README.md similarity index 100% rename from libs/computer/python/README.md rename to libs/python/computer/README.md diff --git a/libs/computer/python/computer/__init__.py b/libs/python/computer/computer/__init__.py similarity index 100% rename from libs/computer/python/computer/__init__.py rename to libs/python/computer/computer/__init__.py diff --git a/libs/computer/python/computer/computer.py b/libs/python/computer/computer/computer.py similarity index 100% rename from libs/computer/python/computer/computer.py rename to libs/python/computer/computer/computer.py diff --git a/libs/computer/python/computer/diorama_computer.py b/libs/python/computer/computer/diorama_computer.py similarity index 100% rename from libs/computer/python/computer/diorama_computer.py rename to libs/python/computer/computer/diorama_computer.py diff --git a/libs/computer/python/computer/helpers.py b/libs/python/computer/computer/helpers.py similarity index 100% rename from libs/computer/python/computer/helpers.py rename to libs/python/computer/computer/helpers.py diff --git a/libs/computer/python/computer/interface/__init__.py b/libs/python/computer/computer/interface/__init__.py similarity index 100% rename from libs/computer/python/computer/interface/__init__.py rename to libs/python/computer/computer/interface/__init__.py diff --git a/libs/computer/python/computer/interface/base.py b/libs/python/computer/computer/interface/base.py similarity index 100% rename from libs/computer/python/computer/interface/base.py rename to libs/python/computer/computer/interface/base.py diff --git a/libs/computer/python/computer/interface/factory.py b/libs/python/computer/computer/interface/factory.py similarity index 100% rename from libs/computer/python/computer/interface/factory.py rename to libs/python/computer/computer/interface/factory.py diff --git a/libs/computer/python/computer/interface/linux.py b/libs/python/computer/computer/interface/linux.py similarity index 100% rename from libs/computer/python/computer/interface/linux.py rename to libs/python/computer/computer/interface/linux.py diff --git a/libs/computer/python/computer/interface/macos.py b/libs/python/computer/computer/interface/macos.py similarity index 100% rename from libs/computer/python/computer/interface/macos.py rename to libs/python/computer/computer/interface/macos.py diff --git a/libs/computer/python/computer/interface/models.py b/libs/python/computer/computer/interface/models.py similarity index 100% rename from libs/computer/python/computer/interface/models.py rename to libs/python/computer/computer/interface/models.py diff --git a/libs/computer/python/computer/interface/windows.py b/libs/python/computer/computer/interface/windows.py similarity index 100% rename from libs/computer/python/computer/interface/windows.py rename to libs/python/computer/computer/interface/windows.py diff --git a/libs/computer/python/computer/logger.py b/libs/python/computer/computer/logger.py similarity index 100% rename from libs/computer/python/computer/logger.py rename to libs/python/computer/computer/logger.py diff --git a/libs/computer/python/computer/models.py b/libs/python/computer/computer/models.py similarity index 100% rename from libs/computer/python/computer/models.py rename to libs/python/computer/computer/models.py diff --git a/libs/computer/python/computer/providers/__init__.py b/libs/python/computer/computer/providers/__init__.py similarity index 100% rename from libs/computer/python/computer/providers/__init__.py rename to libs/python/computer/computer/providers/__init__.py diff --git a/libs/computer/python/computer/providers/base.py b/libs/python/computer/computer/providers/base.py similarity index 100% rename from libs/computer/python/computer/providers/base.py rename to libs/python/computer/computer/providers/base.py diff --git a/libs/computer/python/computer/providers/cloud/__init__.py b/libs/python/computer/computer/providers/cloud/__init__.py similarity index 100% rename from libs/computer/python/computer/providers/cloud/__init__.py rename to libs/python/computer/computer/providers/cloud/__init__.py diff --git a/libs/computer/python/computer/providers/cloud/provider.py b/libs/python/computer/computer/providers/cloud/provider.py similarity index 100% rename from libs/computer/python/computer/providers/cloud/provider.py rename to libs/python/computer/computer/providers/cloud/provider.py diff --git a/libs/computer/python/computer/providers/factory.py b/libs/python/computer/computer/providers/factory.py similarity index 100% rename from libs/computer/python/computer/providers/factory.py rename to libs/python/computer/computer/providers/factory.py diff --git a/libs/computer/python/computer/providers/lume/__init__.py b/libs/python/computer/computer/providers/lume/__init__.py similarity index 100% rename from libs/computer/python/computer/providers/lume/__init__.py rename to libs/python/computer/computer/providers/lume/__init__.py diff --git a/libs/computer/python/computer/providers/lume/provider.py b/libs/python/computer/computer/providers/lume/provider.py similarity index 100% rename from libs/computer/python/computer/providers/lume/provider.py rename to libs/python/computer/computer/providers/lume/provider.py diff --git a/libs/computer/python/computer/providers/lume_api.py b/libs/python/computer/computer/providers/lume_api.py similarity index 100% rename from libs/computer/python/computer/providers/lume_api.py rename to libs/python/computer/computer/providers/lume_api.py diff --git a/libs/computer/python/computer/providers/lumier/__init__.py b/libs/python/computer/computer/providers/lumier/__init__.py similarity index 100% rename from libs/computer/python/computer/providers/lumier/__init__.py rename to libs/python/computer/computer/providers/lumier/__init__.py diff --git a/libs/computer/python/computer/providers/lumier/provider.py b/libs/python/computer/computer/providers/lumier/provider.py similarity index 100% rename from libs/computer/python/computer/providers/lumier/provider.py rename to libs/python/computer/computer/providers/lumier/provider.py diff --git a/libs/computer/python/computer/providers/winsandbox/__init__.py b/libs/python/computer/computer/providers/winsandbox/__init__.py similarity index 100% rename from libs/computer/python/computer/providers/winsandbox/__init__.py rename to libs/python/computer/computer/providers/winsandbox/__init__.py diff --git a/libs/computer/python/computer/providers/winsandbox/provider.py b/libs/python/computer/computer/providers/winsandbox/provider.py similarity index 100% rename from libs/computer/python/computer/providers/winsandbox/provider.py rename to libs/python/computer/computer/providers/winsandbox/provider.py diff --git a/libs/computer/python/computer/providers/winsandbox/setup_script.ps1 b/libs/python/computer/computer/providers/winsandbox/setup_script.ps1 similarity index 100% rename from libs/computer/python/computer/providers/winsandbox/setup_script.ps1 rename to libs/python/computer/computer/providers/winsandbox/setup_script.ps1 diff --git a/libs/computer/python/computer/telemetry.py b/libs/python/computer/computer/telemetry.py similarity index 100% rename from libs/computer/python/computer/telemetry.py rename to libs/python/computer/computer/telemetry.py diff --git a/libs/computer/python/computer/ui/__init__.py b/libs/python/computer/computer/ui/__init__.py similarity index 100% rename from libs/computer/python/computer/ui/__init__.py rename to libs/python/computer/computer/ui/__init__.py diff --git a/libs/computer/python/computer/ui/__main__.py b/libs/python/computer/computer/ui/__main__.py similarity index 100% rename from libs/computer/python/computer/ui/__main__.py rename to libs/python/computer/computer/ui/__main__.py diff --git a/libs/computer/python/computer/ui/gradio/__init__.py b/libs/python/computer/computer/ui/gradio/__init__.py similarity index 100% rename from libs/computer/python/computer/ui/gradio/__init__.py rename to libs/python/computer/computer/ui/gradio/__init__.py diff --git a/libs/computer/python/computer/ui/gradio/app.py b/libs/python/computer/computer/ui/gradio/app.py similarity index 100% rename from libs/computer/python/computer/ui/gradio/app.py rename to libs/python/computer/computer/ui/gradio/app.py diff --git a/libs/computer/python/computer/utils.py b/libs/python/computer/computer/utils.py similarity index 100% rename from libs/computer/python/computer/utils.py rename to libs/python/computer/computer/utils.py diff --git a/libs/computer/python/poetry.toml b/libs/python/computer/poetry.toml similarity index 100% rename from libs/computer/python/poetry.toml rename to libs/python/computer/poetry.toml diff --git a/libs/computer/python/pyproject.toml b/libs/python/computer/pyproject.toml similarity index 100% rename from libs/computer/python/pyproject.toml rename to libs/python/computer/pyproject.toml diff --git a/libs/core/README.md b/libs/python/core/README.md similarity index 100% rename from libs/core/README.md rename to libs/python/core/README.md diff --git a/libs/core/core/__init__.py b/libs/python/core/core/__init__.py similarity index 100% rename from libs/core/core/__init__.py rename to libs/python/core/core/__init__.py diff --git a/libs/core/core/telemetry/__init__.py b/libs/python/core/core/telemetry/__init__.py similarity index 100% rename from libs/core/core/telemetry/__init__.py rename to libs/python/core/core/telemetry/__init__.py diff --git a/libs/core/core/telemetry/client.py b/libs/python/core/core/telemetry/client.py similarity index 100% rename from libs/core/core/telemetry/client.py rename to libs/python/core/core/telemetry/client.py diff --git a/libs/core/core/telemetry/models.py b/libs/python/core/core/telemetry/models.py similarity index 100% rename from libs/core/core/telemetry/models.py rename to libs/python/core/core/telemetry/models.py diff --git a/libs/core/core/telemetry/posthog_client.py b/libs/python/core/core/telemetry/posthog_client.py similarity index 100% rename from libs/core/core/telemetry/posthog_client.py rename to libs/python/core/core/telemetry/posthog_client.py diff --git a/libs/core/core/telemetry/sender.py b/libs/python/core/core/telemetry/sender.py similarity index 100% rename from libs/core/core/telemetry/sender.py rename to libs/python/core/core/telemetry/sender.py diff --git a/libs/core/core/telemetry/telemetry.py b/libs/python/core/core/telemetry/telemetry.py similarity index 100% rename from libs/core/core/telemetry/telemetry.py rename to libs/python/core/core/telemetry/telemetry.py diff --git a/libs/core/poetry.toml b/libs/python/core/poetry.toml similarity index 100% rename from libs/core/poetry.toml rename to libs/python/core/poetry.toml diff --git a/libs/core/pyproject.toml b/libs/python/core/pyproject.toml similarity index 100% rename from libs/core/pyproject.toml rename to libs/python/core/pyproject.toml diff --git a/libs/lume/.cursorignore b/libs/python/lume/.cursorignore similarity index 100% rename from libs/lume/.cursorignore rename to libs/python/lume/.cursorignore diff --git a/libs/lume/CONTRIBUTING.md b/libs/python/lume/CONTRIBUTING.md similarity index 100% rename from libs/lume/CONTRIBUTING.md rename to libs/python/lume/CONTRIBUTING.md diff --git a/libs/lume/Package.resolved b/libs/python/lume/Package.resolved similarity index 100% rename from libs/lume/Package.resolved rename to libs/python/lume/Package.resolved diff --git a/libs/lume/Package.swift b/libs/python/lume/Package.swift similarity index 100% rename from libs/lume/Package.swift rename to libs/python/lume/Package.swift diff --git a/libs/lume/README.md b/libs/python/lume/README.md similarity index 100% rename from libs/lume/README.md rename to libs/python/lume/README.md diff --git a/libs/lume/docs/API-Reference.md b/libs/python/lume/docs/API-Reference.md similarity index 100% rename from libs/lume/docs/API-Reference.md rename to libs/python/lume/docs/API-Reference.md diff --git a/libs/lume/docs/Development.md b/libs/python/lume/docs/Development.md similarity index 100% rename from libs/lume/docs/Development.md rename to libs/python/lume/docs/Development.md diff --git a/libs/lume/docs/FAQ.md b/libs/python/lume/docs/FAQ.md similarity index 100% rename from libs/lume/docs/FAQ.md rename to libs/python/lume/docs/FAQ.md diff --git a/libs/lume/img/cli.png b/libs/python/lume/img/cli.png similarity index 100% rename from libs/lume/img/cli.png rename to libs/python/lume/img/cli.png diff --git a/libs/lume/img/logo_black.png b/libs/python/lume/img/logo_black.png similarity index 100% rename from libs/lume/img/logo_black.png rename to libs/python/lume/img/logo_black.png diff --git a/libs/lume/img/logo_white.png b/libs/python/lume/img/logo_white.png similarity index 100% rename from libs/lume/img/logo_white.png rename to libs/python/lume/img/logo_white.png diff --git a/libs/lume/resources/lume.entitlements b/libs/python/lume/resources/lume.entitlements similarity index 100% rename from libs/lume/resources/lume.entitlements rename to libs/python/lume/resources/lume.entitlements diff --git a/libs/lume/scripts/install.sh b/libs/python/lume/scripts/install.sh similarity index 100% rename from libs/lume/scripts/install.sh rename to libs/python/lume/scripts/install.sh diff --git a/libs/lume/src/Commands/Clone.swift b/libs/python/lume/src/Commands/Clone.swift similarity index 100% rename from libs/lume/src/Commands/Clone.swift rename to libs/python/lume/src/Commands/Clone.swift diff --git a/libs/lume/src/Commands/Config.swift b/libs/python/lume/src/Commands/Config.swift similarity index 100% rename from libs/lume/src/Commands/Config.swift rename to libs/python/lume/src/Commands/Config.swift diff --git a/libs/lume/src/Commands/Create.swift b/libs/python/lume/src/Commands/Create.swift similarity index 100% rename from libs/lume/src/Commands/Create.swift rename to libs/python/lume/src/Commands/Create.swift diff --git a/libs/lume/src/Commands/Delete.swift b/libs/python/lume/src/Commands/Delete.swift similarity index 100% rename from libs/lume/src/Commands/Delete.swift rename to libs/python/lume/src/Commands/Delete.swift diff --git a/libs/lume/src/Commands/Get.swift b/libs/python/lume/src/Commands/Get.swift similarity index 100% rename from libs/lume/src/Commands/Get.swift rename to libs/python/lume/src/Commands/Get.swift diff --git a/libs/lume/src/Commands/IPSW.swift b/libs/python/lume/src/Commands/IPSW.swift similarity index 100% rename from libs/lume/src/Commands/IPSW.swift rename to libs/python/lume/src/Commands/IPSW.swift diff --git a/libs/lume/src/Commands/Images.swift b/libs/python/lume/src/Commands/Images.swift similarity index 100% rename from libs/lume/src/Commands/Images.swift rename to libs/python/lume/src/Commands/Images.swift diff --git a/libs/lume/src/Commands/List.swift b/libs/python/lume/src/Commands/List.swift similarity index 100% rename from libs/lume/src/Commands/List.swift rename to libs/python/lume/src/Commands/List.swift diff --git a/libs/lume/src/Commands/Logs.swift b/libs/python/lume/src/Commands/Logs.swift similarity index 100% rename from libs/lume/src/Commands/Logs.swift rename to libs/python/lume/src/Commands/Logs.swift diff --git a/libs/lume/src/Commands/Options/FormatOption.swift b/libs/python/lume/src/Commands/Options/FormatOption.swift similarity index 100% rename from libs/lume/src/Commands/Options/FormatOption.swift rename to libs/python/lume/src/Commands/Options/FormatOption.swift diff --git a/libs/lume/src/Commands/Prune.swift b/libs/python/lume/src/Commands/Prune.swift similarity index 100% rename from libs/lume/src/Commands/Prune.swift rename to libs/python/lume/src/Commands/Prune.swift diff --git a/libs/lume/src/Commands/Pull.swift b/libs/python/lume/src/Commands/Pull.swift similarity index 100% rename from libs/lume/src/Commands/Pull.swift rename to libs/python/lume/src/Commands/Pull.swift diff --git a/libs/lume/src/Commands/Push.swift b/libs/python/lume/src/Commands/Push.swift similarity index 100% rename from libs/lume/src/Commands/Push.swift rename to libs/python/lume/src/Commands/Push.swift diff --git a/libs/lume/src/Commands/Run.swift b/libs/python/lume/src/Commands/Run.swift similarity index 100% rename from libs/lume/src/Commands/Run.swift rename to libs/python/lume/src/Commands/Run.swift diff --git a/libs/lume/src/Commands/Serve.swift b/libs/python/lume/src/Commands/Serve.swift similarity index 100% rename from libs/lume/src/Commands/Serve.swift rename to libs/python/lume/src/Commands/Serve.swift diff --git a/libs/lume/src/Commands/Set.swift b/libs/python/lume/src/Commands/Set.swift similarity index 100% rename from libs/lume/src/Commands/Set.swift rename to libs/python/lume/src/Commands/Set.swift diff --git a/libs/lume/src/Commands/Stop.swift b/libs/python/lume/src/Commands/Stop.swift similarity index 100% rename from libs/lume/src/Commands/Stop.swift rename to libs/python/lume/src/Commands/Stop.swift diff --git a/libs/lume/src/ContainerRegistry/ImageContainerRegistry.swift b/libs/python/lume/src/ContainerRegistry/ImageContainerRegistry.swift similarity index 100% rename from libs/lume/src/ContainerRegistry/ImageContainerRegistry.swift rename to libs/python/lume/src/ContainerRegistry/ImageContainerRegistry.swift diff --git a/libs/lume/src/ContainerRegistry/ImageList.swift b/libs/python/lume/src/ContainerRegistry/ImageList.swift similarity index 100% rename from libs/lume/src/ContainerRegistry/ImageList.swift rename to libs/python/lume/src/ContainerRegistry/ImageList.swift diff --git a/libs/lume/src/ContainerRegistry/ImagesPrinter.swift b/libs/python/lume/src/ContainerRegistry/ImagesPrinter.swift similarity index 100% rename from libs/lume/src/ContainerRegistry/ImagesPrinter.swift rename to libs/python/lume/src/ContainerRegistry/ImagesPrinter.swift diff --git a/libs/lume/src/Errors/Errors.swift b/libs/python/lume/src/Errors/Errors.swift similarity index 100% rename from libs/lume/src/Errors/Errors.swift rename to libs/python/lume/src/Errors/Errors.swift diff --git a/libs/lume/src/FileSystem/Home.swift b/libs/python/lume/src/FileSystem/Home.swift similarity index 100% rename from libs/lume/src/FileSystem/Home.swift rename to libs/python/lume/src/FileSystem/Home.swift diff --git a/libs/lume/src/FileSystem/Settings.swift b/libs/python/lume/src/FileSystem/Settings.swift similarity index 100% rename from libs/lume/src/FileSystem/Settings.swift rename to libs/python/lume/src/FileSystem/Settings.swift diff --git a/libs/lume/src/FileSystem/VMConfig.swift b/libs/python/lume/src/FileSystem/VMConfig.swift similarity index 100% rename from libs/lume/src/FileSystem/VMConfig.swift rename to libs/python/lume/src/FileSystem/VMConfig.swift diff --git a/libs/lume/src/FileSystem/VMDirectory.swift b/libs/python/lume/src/FileSystem/VMDirectory.swift similarity index 100% rename from libs/lume/src/FileSystem/VMDirectory.swift rename to libs/python/lume/src/FileSystem/VMDirectory.swift diff --git a/libs/lume/src/FileSystem/VMLocation.swift b/libs/python/lume/src/FileSystem/VMLocation.swift similarity index 100% rename from libs/lume/src/FileSystem/VMLocation.swift rename to libs/python/lume/src/FileSystem/VMLocation.swift diff --git a/libs/lume/src/LumeController.swift b/libs/python/lume/src/LumeController.swift similarity index 100% rename from libs/lume/src/LumeController.swift rename to libs/python/lume/src/LumeController.swift diff --git a/libs/lume/src/Main.swift b/libs/python/lume/src/Main.swift similarity index 100% rename from libs/lume/src/Main.swift rename to libs/python/lume/src/Main.swift diff --git a/libs/lume/src/Server/HTTP.swift b/libs/python/lume/src/Server/HTTP.swift similarity index 100% rename from libs/lume/src/Server/HTTP.swift rename to libs/python/lume/src/Server/HTTP.swift diff --git a/libs/lume/src/Server/Handlers.swift b/libs/python/lume/src/Server/Handlers.swift similarity index 100% rename from libs/lume/src/Server/Handlers.swift rename to libs/python/lume/src/Server/Handlers.swift diff --git a/libs/lume/src/Server/Requests.swift b/libs/python/lume/src/Server/Requests.swift similarity index 100% rename from libs/lume/src/Server/Requests.swift rename to libs/python/lume/src/Server/Requests.swift diff --git a/libs/lume/src/Server/Responses.swift b/libs/python/lume/src/Server/Responses.swift similarity index 100% rename from libs/lume/src/Server/Responses.swift rename to libs/python/lume/src/Server/Responses.swift diff --git a/libs/lume/src/Server/Server.swift b/libs/python/lume/src/Server/Server.swift similarity index 100% rename from libs/lume/src/Server/Server.swift rename to libs/python/lume/src/Server/Server.swift diff --git a/libs/lume/src/Utils/CommandRegistry.swift b/libs/python/lume/src/Utils/CommandRegistry.swift similarity index 100% rename from libs/lume/src/Utils/CommandRegistry.swift rename to libs/python/lume/src/Utils/CommandRegistry.swift diff --git a/libs/lume/src/Utils/CommandUtils.swift b/libs/python/lume/src/Utils/CommandUtils.swift similarity index 100% rename from libs/lume/src/Utils/CommandUtils.swift rename to libs/python/lume/src/Utils/CommandUtils.swift diff --git a/libs/lume/src/Utils/Logger.swift b/libs/python/lume/src/Utils/Logger.swift similarity index 100% rename from libs/lume/src/Utils/Logger.swift rename to libs/python/lume/src/Utils/Logger.swift diff --git a/libs/lume/src/Utils/NetworkUtils.swift b/libs/python/lume/src/Utils/NetworkUtils.swift similarity index 100% rename from libs/lume/src/Utils/NetworkUtils.swift rename to libs/python/lume/src/Utils/NetworkUtils.swift diff --git a/libs/lume/src/Utils/Path.swift b/libs/python/lume/src/Utils/Path.swift similarity index 100% rename from libs/lume/src/Utils/Path.swift rename to libs/python/lume/src/Utils/Path.swift diff --git a/libs/lume/src/Utils/ProcessRunner.swift b/libs/python/lume/src/Utils/ProcessRunner.swift similarity index 100% rename from libs/lume/src/Utils/ProcessRunner.swift rename to libs/python/lume/src/Utils/ProcessRunner.swift diff --git a/libs/lume/src/Utils/ProgressLogger.swift b/libs/python/lume/src/Utils/ProgressLogger.swift similarity index 100% rename from libs/lume/src/Utils/ProgressLogger.swift rename to libs/python/lume/src/Utils/ProgressLogger.swift diff --git a/libs/lume/src/Utils/String.swift b/libs/python/lume/src/Utils/String.swift similarity index 100% rename from libs/lume/src/Utils/String.swift rename to libs/python/lume/src/Utils/String.swift diff --git a/libs/lume/src/Utils/Utils.swift b/libs/python/lume/src/Utils/Utils.swift similarity index 100% rename from libs/lume/src/Utils/Utils.swift rename to libs/python/lume/src/Utils/Utils.swift diff --git a/libs/lume/src/VM/DarwinVM.swift b/libs/python/lume/src/VM/DarwinVM.swift similarity index 100% rename from libs/lume/src/VM/DarwinVM.swift rename to libs/python/lume/src/VM/DarwinVM.swift diff --git a/libs/lume/src/VM/LinuxVM.swift b/libs/python/lume/src/VM/LinuxVM.swift similarity index 100% rename from libs/lume/src/VM/LinuxVM.swift rename to libs/python/lume/src/VM/LinuxVM.swift diff --git a/libs/lume/src/VM/VM.swift b/libs/python/lume/src/VM/VM.swift similarity index 100% rename from libs/lume/src/VM/VM.swift rename to libs/python/lume/src/VM/VM.swift diff --git a/libs/lume/src/VM/VMDetails.swift b/libs/python/lume/src/VM/VMDetails.swift similarity index 100% rename from libs/lume/src/VM/VMDetails.swift rename to libs/python/lume/src/VM/VMDetails.swift diff --git a/libs/lume/src/VM/VMDetailsPrinter.swift b/libs/python/lume/src/VM/VMDetailsPrinter.swift similarity index 100% rename from libs/lume/src/VM/VMDetailsPrinter.swift rename to libs/python/lume/src/VM/VMDetailsPrinter.swift diff --git a/libs/lume/src/VM/VMDisplayResolution.swift b/libs/python/lume/src/VM/VMDisplayResolution.swift similarity index 100% rename from libs/lume/src/VM/VMDisplayResolution.swift rename to libs/python/lume/src/VM/VMDisplayResolution.swift diff --git a/libs/lume/src/VM/VMFactory.swift b/libs/python/lume/src/VM/VMFactory.swift similarity index 100% rename from libs/lume/src/VM/VMFactory.swift rename to libs/python/lume/src/VM/VMFactory.swift diff --git a/libs/lume/src/VNC/PassphraseGenerator.swift b/libs/python/lume/src/VNC/PassphraseGenerator.swift similarity index 100% rename from libs/lume/src/VNC/PassphraseGenerator.swift rename to libs/python/lume/src/VNC/PassphraseGenerator.swift diff --git a/libs/lume/src/VNC/VNCService.swift b/libs/python/lume/src/VNC/VNCService.swift similarity index 100% rename from libs/lume/src/VNC/VNCService.swift rename to libs/python/lume/src/VNC/VNCService.swift diff --git a/libs/lume/src/Virtualization/DHCPLeaseParser.swift b/libs/python/lume/src/Virtualization/DHCPLeaseParser.swift similarity index 100% rename from libs/lume/src/Virtualization/DHCPLeaseParser.swift rename to libs/python/lume/src/Virtualization/DHCPLeaseParser.swift diff --git a/libs/lume/src/Virtualization/DarwinImageLoader.swift b/libs/python/lume/src/Virtualization/DarwinImageLoader.swift similarity index 100% rename from libs/lume/src/Virtualization/DarwinImageLoader.swift rename to libs/python/lume/src/Virtualization/DarwinImageLoader.swift diff --git a/libs/lume/src/Virtualization/ImageLoaderFactory.swift b/libs/python/lume/src/Virtualization/ImageLoaderFactory.swift similarity index 100% rename from libs/lume/src/Virtualization/ImageLoaderFactory.swift rename to libs/python/lume/src/Virtualization/ImageLoaderFactory.swift diff --git a/libs/lume/src/Virtualization/VMVirtualizationService.swift b/libs/python/lume/src/Virtualization/VMVirtualizationService.swift similarity index 100% rename from libs/lume/src/Virtualization/VMVirtualizationService.swift rename to libs/python/lume/src/Virtualization/VMVirtualizationService.swift diff --git a/libs/lume/tests/Mocks/MockVM.swift b/libs/python/lume/tests/Mocks/MockVM.swift similarity index 100% rename from libs/lume/tests/Mocks/MockVM.swift rename to libs/python/lume/tests/Mocks/MockVM.swift diff --git a/libs/lume/tests/Mocks/MockVMVirtualizationService.swift b/libs/python/lume/tests/Mocks/MockVMVirtualizationService.swift similarity index 100% rename from libs/lume/tests/Mocks/MockVMVirtualizationService.swift rename to libs/python/lume/tests/Mocks/MockVMVirtualizationService.swift diff --git a/libs/lume/tests/Mocks/MockVNCService.swift b/libs/python/lume/tests/Mocks/MockVNCService.swift similarity index 100% rename from libs/lume/tests/Mocks/MockVNCService.swift rename to libs/python/lume/tests/Mocks/MockVNCService.swift diff --git a/libs/lume/tests/VM/VMDetailsPrinterTests.swift b/libs/python/lume/tests/VM/VMDetailsPrinterTests.swift similarity index 100% rename from libs/lume/tests/VM/VMDetailsPrinterTests.swift rename to libs/python/lume/tests/VM/VMDetailsPrinterTests.swift diff --git a/libs/lume/tests/VMTests.swift b/libs/python/lume/tests/VMTests.swift similarity index 100% rename from libs/lume/tests/VMTests.swift rename to libs/python/lume/tests/VMTests.swift diff --git a/libs/lume/tests/VMVirtualizationServiceTests.swift b/libs/python/lume/tests/VMVirtualizationServiceTests.swift similarity index 100% rename from libs/lume/tests/VMVirtualizationServiceTests.swift rename to libs/python/lume/tests/VMVirtualizationServiceTests.swift diff --git a/libs/lume/tests/VNCServiceTests.swift b/libs/python/lume/tests/VNCServiceTests.swift similarity index 100% rename from libs/lume/tests/VNCServiceTests.swift rename to libs/python/lume/tests/VNCServiceTests.swift diff --git a/libs/lumier/.dockerignore b/libs/python/lumier/.dockerignore similarity index 100% rename from libs/lumier/.dockerignore rename to libs/python/lumier/.dockerignore diff --git a/libs/lumier/Dockerfile b/libs/python/lumier/Dockerfile similarity index 100% rename from libs/lumier/Dockerfile rename to libs/python/lumier/Dockerfile diff --git a/libs/lumier/README.md b/libs/python/lumier/README.md similarity index 100% rename from libs/lumier/README.md rename to libs/python/lumier/README.md diff --git a/libs/lumier/src/bin/entry.sh b/libs/python/lumier/src/bin/entry.sh similarity index 100% rename from libs/lumier/src/bin/entry.sh rename to libs/python/lumier/src/bin/entry.sh diff --git a/libs/lumier/src/config/constants.sh b/libs/python/lumier/src/config/constants.sh similarity index 100% rename from libs/lumier/src/config/constants.sh rename to libs/python/lumier/src/config/constants.sh diff --git a/libs/lumier/src/hooks/on-logon.sh b/libs/python/lumier/src/hooks/on-logon.sh similarity index 100% rename from libs/lumier/src/hooks/on-logon.sh rename to libs/python/lumier/src/hooks/on-logon.sh diff --git a/libs/lumier/src/lib/utils.sh b/libs/python/lumier/src/lib/utils.sh similarity index 100% rename from libs/lumier/src/lib/utils.sh rename to libs/python/lumier/src/lib/utils.sh diff --git a/libs/lumier/src/lib/vm.sh b/libs/python/lumier/src/lib/vm.sh similarity index 100% rename from libs/lumier/src/lib/vm.sh rename to libs/python/lumier/src/lib/vm.sh diff --git a/libs/mcp-server/README.md b/libs/python/mcp-server/README.md similarity index 100% rename from libs/mcp-server/README.md rename to libs/python/mcp-server/README.md diff --git a/libs/mcp-server/mcp_server/__init__.py b/libs/python/mcp-server/mcp_server/__init__.py similarity index 100% rename from libs/mcp-server/mcp_server/__init__.py rename to libs/python/mcp-server/mcp_server/__init__.py diff --git a/libs/mcp-server/mcp_server/__main__.py b/libs/python/mcp-server/mcp_server/__main__.py similarity index 100% rename from libs/mcp-server/mcp_server/__main__.py rename to libs/python/mcp-server/mcp_server/__main__.py diff --git a/libs/mcp-server/mcp_server/server.py b/libs/python/mcp-server/mcp_server/server.py similarity index 100% rename from libs/mcp-server/mcp_server/server.py rename to libs/python/mcp-server/mcp_server/server.py diff --git a/libs/mcp-server/pyproject.toml b/libs/python/mcp-server/pyproject.toml similarity index 100% rename from libs/mcp-server/pyproject.toml rename to libs/python/mcp-server/pyproject.toml diff --git a/libs/mcp-server/scripts/install_mcp_server.sh b/libs/python/mcp-server/scripts/install_mcp_server.sh similarity index 100% rename from libs/mcp-server/scripts/install_mcp_server.sh rename to libs/python/mcp-server/scripts/install_mcp_server.sh diff --git a/libs/mcp-server/scripts/start_mcp_server.sh b/libs/python/mcp-server/scripts/start_mcp_server.sh similarity index 100% rename from libs/mcp-server/scripts/start_mcp_server.sh rename to libs/python/mcp-server/scripts/start_mcp_server.sh diff --git a/libs/pylume/README.md b/libs/python/pylume/README.md similarity index 100% rename from libs/pylume/README.md rename to libs/python/pylume/README.md diff --git a/libs/pylume/__init__.py b/libs/python/pylume/__init__.py similarity index 100% rename from libs/pylume/__init__.py rename to libs/python/pylume/__init__.py diff --git a/libs/pylume/pylume/__init__.py b/libs/python/pylume/pylume/__init__.py similarity index 100% rename from libs/pylume/pylume/__init__.py rename to libs/python/pylume/pylume/__init__.py diff --git a/libs/pylume/pylume/client.py b/libs/python/pylume/pylume/client.py similarity index 100% rename from libs/pylume/pylume/client.py rename to libs/python/pylume/pylume/client.py diff --git a/libs/pylume/pylume/exceptions.py b/libs/python/pylume/pylume/exceptions.py similarity index 100% rename from libs/pylume/pylume/exceptions.py rename to libs/python/pylume/pylume/exceptions.py diff --git a/libs/pylume/pylume/lume b/libs/python/pylume/pylume/lume similarity index 100% rename from libs/pylume/pylume/lume rename to libs/python/pylume/pylume/lume diff --git a/libs/pylume/pylume/models.py b/libs/python/pylume/pylume/models.py similarity index 100% rename from libs/pylume/pylume/models.py rename to libs/python/pylume/pylume/models.py diff --git a/libs/pylume/pylume/pylume.py b/libs/python/pylume/pylume/pylume.py similarity index 100% rename from libs/pylume/pylume/pylume.py rename to libs/python/pylume/pylume/pylume.py diff --git a/libs/pylume/pylume/server.py b/libs/python/pylume/pylume/server.py similarity index 100% rename from libs/pylume/pylume/server.py rename to libs/python/pylume/pylume/server.py diff --git a/libs/pylume/pyproject.toml b/libs/python/pylume/pyproject.toml similarity index 100% rename from libs/pylume/pyproject.toml rename to libs/python/pylume/pyproject.toml diff --git a/libs/som/README.md b/libs/python/som/README.md similarity index 100% rename from libs/som/README.md rename to libs/python/som/README.md diff --git a/libs/som/poetry.toml b/libs/python/som/poetry.toml similarity index 100% rename from libs/som/poetry.toml rename to libs/python/som/poetry.toml diff --git a/libs/som/pyproject.toml b/libs/python/som/pyproject.toml similarity index 100% rename from libs/som/pyproject.toml rename to libs/python/som/pyproject.toml diff --git a/libs/som/som/__init__.py b/libs/python/som/som/__init__.py similarity index 100% rename from libs/som/som/__init__.py rename to libs/python/som/som/__init__.py diff --git a/libs/som/som/detect.py b/libs/python/som/som/detect.py similarity index 100% rename from libs/som/som/detect.py rename to libs/python/som/som/detect.py diff --git a/libs/som/som/detection.py b/libs/python/som/som/detection.py similarity index 100% rename from libs/som/som/detection.py rename to libs/python/som/som/detection.py diff --git a/libs/som/som/models.py b/libs/python/som/som/models.py similarity index 100% rename from libs/som/som/models.py rename to libs/python/som/som/models.py diff --git a/libs/som/som/ocr.py b/libs/python/som/som/ocr.py similarity index 100% rename from libs/som/som/ocr.py rename to libs/python/som/som/ocr.py diff --git a/libs/som/som/util/utils.py b/libs/python/som/som/util/utils.py similarity index 100% rename from libs/som/som/util/utils.py rename to libs/python/som/som/util/utils.py diff --git a/libs/som/som/visualization.py b/libs/python/som/som/visualization.py similarity index 100% rename from libs/som/som/visualization.py rename to libs/python/som/som/visualization.py diff --git a/libs/som/tests/test_omniparser.py b/libs/python/som/tests/test_omniparser.py similarity index 100% rename from libs/som/tests/test_omniparser.py rename to libs/python/som/tests/test_omniparser.py diff --git a/libs/computer/typescript/.editorconfig b/libs/typescript/computer/.editorconfig similarity index 100% rename from libs/computer/typescript/.editorconfig rename to libs/typescript/computer/.editorconfig diff --git a/libs/computer/typescript/.gitattributes b/libs/typescript/computer/.gitattributes similarity index 100% rename from libs/computer/typescript/.gitattributes rename to libs/typescript/computer/.gitattributes diff --git a/libs/computer/typescript/.github/_workflows/release.yml b/libs/typescript/computer/.github/_workflows/release.yml similarity index 100% rename from libs/computer/typescript/.github/_workflows/release.yml rename to libs/typescript/computer/.github/_workflows/release.yml diff --git a/libs/computer/typescript/.github/_workflows/unit-test.yml b/libs/typescript/computer/.github/_workflows/unit-test.yml similarity index 100% rename from libs/computer/typescript/.github/_workflows/unit-test.yml rename to libs/typescript/computer/.github/_workflows/unit-test.yml diff --git a/libs/computer/typescript/.gitignore b/libs/typescript/computer/.gitignore similarity index 100% rename from libs/computer/typescript/.gitignore rename to libs/typescript/computer/.gitignore diff --git a/libs/computer/typescript/.nvmrc b/libs/typescript/computer/.nvmrc similarity index 100% rename from libs/computer/typescript/.nvmrc rename to libs/typescript/computer/.nvmrc diff --git a/libs/computer/typescript/LICENSE b/libs/typescript/computer/LICENSE similarity index 100% rename from libs/computer/typescript/LICENSE rename to libs/typescript/computer/LICENSE diff --git a/libs/computer/typescript/README.md b/libs/typescript/computer/README.md similarity index 100% rename from libs/computer/typescript/README.md rename to libs/typescript/computer/README.md diff --git a/libs/computer/typescript/biome.json b/libs/typescript/computer/biome.json similarity index 100% rename from libs/computer/typescript/biome.json rename to libs/typescript/computer/biome.json diff --git a/libs/computer/typescript/package.json b/libs/typescript/computer/package.json similarity index 100% rename from libs/computer/typescript/package.json rename to libs/typescript/computer/package.json diff --git a/libs/computer/typescript/pnpm-lock.yaml b/libs/typescript/computer/pnpm-lock.yaml similarity index 100% rename from libs/computer/typescript/pnpm-lock.yaml rename to libs/typescript/computer/pnpm-lock.yaml diff --git a/libs/computer/typescript/pnpm-workspace.yaml b/libs/typescript/computer/pnpm-workspace.yaml similarity index 100% rename from libs/computer/typescript/pnpm-workspace.yaml rename to libs/typescript/computer/pnpm-workspace.yaml diff --git a/libs/computer/typescript/src/computer/index.ts b/libs/typescript/computer/src/computer/index.ts similarity index 100% rename from libs/computer/typescript/src/computer/index.ts rename to libs/typescript/computer/src/computer/index.ts diff --git a/libs/computer/typescript/src/computer/providers/base.ts b/libs/typescript/computer/src/computer/providers/base.ts similarity index 100% rename from libs/computer/typescript/src/computer/providers/base.ts rename to libs/typescript/computer/src/computer/providers/base.ts diff --git a/libs/computer/typescript/src/computer/providers/cloud.ts b/libs/typescript/computer/src/computer/providers/cloud.ts similarity index 100% rename from libs/computer/typescript/src/computer/providers/cloud.ts rename to libs/typescript/computer/src/computer/providers/cloud.ts diff --git a/libs/computer/typescript/src/computer/providers/index.ts b/libs/typescript/computer/src/computer/providers/index.ts similarity index 100% rename from libs/computer/typescript/src/computer/providers/index.ts rename to libs/typescript/computer/src/computer/providers/index.ts diff --git a/libs/computer/typescript/src/computer/types.ts b/libs/typescript/computer/src/computer/types.ts similarity index 100% rename from libs/computer/typescript/src/computer/types.ts rename to libs/typescript/computer/src/computer/types.ts diff --git a/libs/computer/typescript/src/index.ts b/libs/typescript/computer/src/index.ts similarity index 100% rename from libs/computer/typescript/src/index.ts rename to libs/typescript/computer/src/index.ts diff --git a/libs/computer/typescript/src/interface/base.ts b/libs/typescript/computer/src/interface/base.ts similarity index 100% rename from libs/computer/typescript/src/interface/base.ts rename to libs/typescript/computer/src/interface/base.ts diff --git a/libs/computer/typescript/src/interface/factory.ts b/libs/typescript/computer/src/interface/factory.ts similarity index 100% rename from libs/computer/typescript/src/interface/factory.ts rename to libs/typescript/computer/src/interface/factory.ts diff --git a/libs/computer/typescript/src/interface/index.ts b/libs/typescript/computer/src/interface/index.ts similarity index 100% rename from libs/computer/typescript/src/interface/index.ts rename to libs/typescript/computer/src/interface/index.ts diff --git a/libs/computer/typescript/src/interface/linux.ts b/libs/typescript/computer/src/interface/linux.ts similarity index 100% rename from libs/computer/typescript/src/interface/linux.ts rename to libs/typescript/computer/src/interface/linux.ts diff --git a/libs/computer/typescript/src/interface/macos.ts b/libs/typescript/computer/src/interface/macos.ts similarity index 100% rename from libs/computer/typescript/src/interface/macos.ts rename to libs/typescript/computer/src/interface/macos.ts diff --git a/libs/computer/typescript/src/interface/windows.ts b/libs/typescript/computer/src/interface/windows.ts similarity index 100% rename from libs/computer/typescript/src/interface/windows.ts rename to libs/typescript/computer/src/interface/windows.ts diff --git a/libs/computer/typescript/src/types.ts b/libs/typescript/computer/src/types.ts similarity index 100% rename from libs/computer/typescript/src/types.ts rename to libs/typescript/computer/src/types.ts diff --git a/libs/computer/typescript/tests/computer/cloud.test.ts b/libs/typescript/computer/tests/computer/cloud.test.ts similarity index 100% rename from libs/computer/typescript/tests/computer/cloud.test.ts rename to libs/typescript/computer/tests/computer/cloud.test.ts diff --git a/libs/computer/typescript/tests/interface/factory.test.ts b/libs/typescript/computer/tests/interface/factory.test.ts similarity index 100% rename from libs/computer/typescript/tests/interface/factory.test.ts rename to libs/typescript/computer/tests/interface/factory.test.ts diff --git a/libs/computer/typescript/tests/interface/index.test.ts b/libs/typescript/computer/tests/interface/index.test.ts similarity index 100% rename from libs/computer/typescript/tests/interface/index.test.ts rename to libs/typescript/computer/tests/interface/index.test.ts diff --git a/libs/computer/typescript/tests/interface/linux.test.ts b/libs/typescript/computer/tests/interface/linux.test.ts similarity index 100% rename from libs/computer/typescript/tests/interface/linux.test.ts rename to libs/typescript/computer/tests/interface/linux.test.ts diff --git a/libs/computer/typescript/tests/interface/macos.test.ts b/libs/typescript/computer/tests/interface/macos.test.ts similarity index 100% rename from libs/computer/typescript/tests/interface/macos.test.ts rename to libs/typescript/computer/tests/interface/macos.test.ts diff --git a/libs/computer/typescript/tests/interface/windows.test.ts b/libs/typescript/computer/tests/interface/windows.test.ts similarity index 100% rename from libs/computer/typescript/tests/interface/windows.test.ts rename to libs/typescript/computer/tests/interface/windows.test.ts diff --git a/libs/computer/typescript/tests/setup.ts b/libs/typescript/computer/tests/setup.ts similarity index 100% rename from libs/computer/typescript/tests/setup.ts rename to libs/typescript/computer/tests/setup.ts diff --git a/libs/computer/typescript/tsconfig.json b/libs/typescript/computer/tsconfig.json similarity index 100% rename from libs/computer/typescript/tsconfig.json rename to libs/typescript/computer/tsconfig.json diff --git a/libs/computer/typescript/tsdown.config.ts b/libs/typescript/computer/tsdown.config.ts similarity index 100% rename from libs/computer/typescript/tsdown.config.ts rename to libs/typescript/computer/tsdown.config.ts diff --git a/libs/computer/typescript/vitest.config.ts b/libs/typescript/computer/vitest.config.ts similarity index 100% rename from libs/computer/typescript/vitest.config.ts rename to libs/typescript/computer/vitest.config.ts diff --git a/libs/typescript/core/.editorconfig b/libs/typescript/core/.editorconfig new file mode 100644 index 00000000..7095e7fb --- /dev/null +++ b/libs/typescript/core/.editorconfig @@ -0,0 +1,6 @@ +root = true + +[*] +indent_size = 2 +end_of_line = lf +insert_final_newline = true diff --git a/libs/typescript/core/.gitattributes b/libs/typescript/core/.gitattributes new file mode 100644 index 00000000..6313b56c --- /dev/null +++ b/libs/typescript/core/.gitattributes @@ -0,0 +1 @@ +* text=auto eol=lf diff --git a/libs/typescript/core/.github/_workflows/release.yml b/libs/typescript/core/.github/_workflows/release.yml new file mode 100644 index 00000000..e5b7a4c3 --- /dev/null +++ b/libs/typescript/core/.github/_workflows/release.yml @@ -0,0 +1,26 @@ +name: Release + +permissions: + contents: write + +on: + push: + tags: + - 'v*' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Set node + uses: actions/setup-node@v4 + with: + node-version: lts/* + + - run: npx changelogithub + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/libs/typescript/core/.github/_workflows/unit-test.yml b/libs/typescript/core/.github/_workflows/unit-test.yml new file mode 100644 index 00000000..dc3418c5 --- /dev/null +++ b/libs/typescript/core/.github/_workflows/unit-test.yml @@ -0,0 +1,38 @@ +name: Unit Test + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + test: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install pnpm + uses: pnpm/action-setup@v4.1.0 + + - name: Set node LTS + uses: actions/setup-node@v4 + with: + node-version: lts/* + cache: pnpm + + - name: Install + run: pnpm install + + - name: Build + run: pnpm run build + + - name: Lint + run: pnpm run lint + + - name: Typecheck + run: pnpm run typecheck + + - name: Test + run: pnpm run test diff --git a/libs/typescript/core/.gitignore b/libs/typescript/core/.gitignore new file mode 100644 index 00000000..e79f2036 --- /dev/null +++ b/libs/typescript/core/.gitignore @@ -0,0 +1,6 @@ +node_modules +dist + +*.log +.DS_Store +.eslintcache diff --git a/libs/typescript/core/.vscode/settings.json b/libs/typescript/core/.vscode/settings.json new file mode 100644 index 00000000..ad92582b --- /dev/null +++ b/libs/typescript/core/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "editor.formatOnSave": true +} diff --git a/libs/typescript/core/LICENSE b/libs/typescript/core/LICENSE new file mode 100644 index 00000000..74987166 --- /dev/null +++ b/libs/typescript/core/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright © 2025 C/ua + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/libs/typescript/core/README.md b/libs/typescript/core/README.md new file mode 100644 index 00000000..a6b568ff --- /dev/null +++ b/libs/typescript/core/README.md @@ -0,0 +1,27 @@ +# tsdown-starter + +A starter for creating a tsdown package. + +## Development + +- Install dependencies: + +```bash +pnpm install +``` + +- Run the unit tests: + +```bash +pnpm test +``` + +- Build the library: + +```bash +pnpm build +``` + +## License + +[MIT](./LICENSE) License 2025 [C/UA](https://github.com/trycua) diff --git a/libs/typescript/core/biome.json b/libs/typescript/core/biome.json new file mode 100644 index 00000000..3251a52d --- /dev/null +++ b/libs/typescript/core/biome.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { + "enabled": false, + "clientKind": "git", + "useIgnoreFile": false + }, + "files": { + "ignoreUnknown": false, + "ignore": [ + "dist", + "node_modules" + ] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 80, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true, + "style": { + "useSelfClosingElements": "warn", + "noUnusedTemplateLiteral": "warn", + "noNonNullAssertion": "off" + }, + "a11y": { + "useMediaCaption": "off", + "useKeyWithClickEvents": "warn", + "useKeyWithMouseEvents": "warn", + "noSvgWithoutTitle": "off", + "useButtonType": "warn", + "noAutofocus": "off" + }, + "suspicious": { + "noArrayIndexKey": "off" + }, + "correctness": { + "noUnusedVariables": "warn", + "noUnusedFunctionParameters": "warn", + "noUnusedImports": "warn" + }, + "complexity": { + "useOptionalChain": "info" + }, + "nursery": { + "useSortedClasses": { + "level": "warn", + "fix": "safe", + "options": { + "attributes": [ + "className" + ], + "functions": [ + "cn" + ] + } + } + } + } + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "double", + "quoteProperties": "asNeeded", + "trailingCommas": "es5", + "semicolons": "always", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + } + } +} \ No newline at end of file diff --git a/libs/typescript/core/package.json b/libs/typescript/core/package.json new file mode 100644 index 00000000..f9b0109c --- /dev/null +++ b/libs/typescript/core/package.json @@ -0,0 +1,54 @@ +{ + "name": "@cua/core", + "version": "0.0.1", + "packageManager": "pnpm@10.11.0", + "description": "Typescript SDK for c/ua core", + "type": "module", + "license": "MIT", + "homepage": "", + "bugs": { + "url": "https://github.com/trycua/cua/issues" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/trycua/cua.git" + }, + "author": "c/ua", + "files": [ + "dist" + ], + "main": "./dist/index.js", + "module": "./dist/index.js", + "types": "./dist/index.d.ts", + "exports": { + ".": "./dist/index.js", + "./package.json": "./package.json" + }, + "publishConfig": { + "access": "public" + }, + "scripts": { + "lint": "biome lint .", + "lint:fix": "biome lint --fix .", + "build": "tsdown", + "dev": "tsdown --watch", + "test": "vitest", + "typecheck": "tsc --noEmit", + "release": "bumpp && pnpm publish", + "prepublishOnly": "pnpm run build" + }, + "dependencies": { + "pino": "^9.7.0" + }, + "devDependencies": { + "@biomejs/biome": "^1.9.4", + "@types/node": "^22.15.17", + "@types/ws": "^8.18.1", + "bumpp": "^10.1.0", + "happy-dom": "^17.4.7", + "tsdown": "^0.11.9", + "tsx": "^4.19.4", + "typescript": "^5.8.3", + "vitest": "^3.1.3" + } +} \ No newline at end of file diff --git a/libs/typescript/core/pnpm-lock.yaml b/libs/typescript/core/pnpm-lock.yaml new file mode 100644 index 00000000..2f35a784 --- /dev/null +++ b/libs/typescript/core/pnpm-lock.yaml @@ -0,0 +1,5724 @@ +lockfileVersion: "9.0" + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + .: + devDependencies: + "@sxzz/eslint-config": + specifier: ^7.0.1 + version: 7.0.4(@typescript-eslint/eslint-plugin@8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(@typescript-eslint/utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@sxzz/prettier-config": + specifier: ^2.2.1 + version: 2.2.1 + "@types/node": + specifier: ^22.15.17 + version: 22.15.32 + bumpp: + specifier: ^10.1.0 + version: 10.2.0 + eslint: + specifier: ^9.26.0 + version: 9.29.0(jiti@2.4.2) + happy-dom: + specifier: ^17.4.7 + version: 17.6.3 + prettier: + specifier: ^3.5.3 + version: 3.6.0 + tsdown: + specifier: ^0.11.9 + version: 0.11.13(typescript@5.8.3) + tsx: + specifier: ^4.19.4 + version: 4.20.3 + typescript: + specifier: ^5.8.3 + version: 5.8.3 + vitest: + specifier: ^3.1.3 + version: 3.2.4(@types/debug@4.1.12)(@types/node@22.15.32)(happy-dom@17.6.3)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0) + +packages: + "@babel/generator@7.27.5": + resolution: + { + integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==, + } + engines: { node: ">=6.9.0" } + + "@babel/helper-string-parser@7.27.1": + resolution: + { + integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==, + } + engines: { node: ">=6.9.0" } + + "@babel/helper-validator-identifier@7.27.1": + resolution: + { + integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==, + } + engines: { node: ">=6.9.0" } + + "@babel/parser@7.27.5": + resolution: + { + integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==, + } + engines: { node: ">=6.0.0" } + hasBin: true + + "@babel/types@7.27.6": + resolution: + { + integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==, + } + engines: { node: ">=6.9.0" } + + "@emnapi/core@1.4.3": + resolution: + { + integrity: sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==, + } + + "@emnapi/runtime@1.4.3": + resolution: + { + integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==, + } + + "@emnapi/wasi-threads@1.0.2": + resolution: + { + integrity: sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==, + } + + "@es-joy/jsdoccomment@0.50.2": + resolution: + { + integrity: sha512-YAdE/IJSpwbOTiaURNCKECdAwqrJuFiZhylmesBcIRawtYKnBR2wxPhoIewMg+Yu+QuYvHfJNReWpoxGBKOChA==, + } + engines: { node: ">=18" } + + "@es-joy/jsdoccomment@0.52.0": + resolution: + { + integrity: sha512-BXuN7BII+8AyNtn57euU2Yxo9yA/KUDNzrpXyi3pfqKmBhhysR6ZWOebFh3vyPoqA3/j1SOvGgucElMGwlXing==, + } + engines: { node: ">=20.11.0" } + + "@esbuild/aix-ppc64@0.25.5": + resolution: + { + integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==, + } + engines: { node: ">=18" } + cpu: [ppc64] + os: [aix] + + "@esbuild/android-arm64@0.25.5": + resolution: + { + integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [android] + + "@esbuild/android-arm@0.25.5": + resolution: + { + integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==, + } + engines: { node: ">=18" } + cpu: [arm] + os: [android] + + "@esbuild/android-x64@0.25.5": + resolution: + { + integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [android] + + "@esbuild/darwin-arm64@0.25.5": + resolution: + { + integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [darwin] + + "@esbuild/darwin-x64@0.25.5": + resolution: + { + integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [darwin] + + "@esbuild/freebsd-arm64@0.25.5": + resolution: + { + integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [freebsd] + + "@esbuild/freebsd-x64@0.25.5": + resolution: + { + integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [freebsd] + + "@esbuild/linux-arm64@0.25.5": + resolution: + { + integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [linux] + + "@esbuild/linux-arm@0.25.5": + resolution: + { + integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==, + } + engines: { node: ">=18" } + cpu: [arm] + os: [linux] + + "@esbuild/linux-ia32@0.25.5": + resolution: + { + integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==, + } + engines: { node: ">=18" } + cpu: [ia32] + os: [linux] + + "@esbuild/linux-loong64@0.25.5": + resolution: + { + integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==, + } + engines: { node: ">=18" } + cpu: [loong64] + os: [linux] + + "@esbuild/linux-mips64el@0.25.5": + resolution: + { + integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==, + } + engines: { node: ">=18" } + cpu: [mips64el] + os: [linux] + + "@esbuild/linux-ppc64@0.25.5": + resolution: + { + integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==, + } + engines: { node: ">=18" } + cpu: [ppc64] + os: [linux] + + "@esbuild/linux-riscv64@0.25.5": + resolution: + { + integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==, + } + engines: { node: ">=18" } + cpu: [riscv64] + os: [linux] + + "@esbuild/linux-s390x@0.25.5": + resolution: + { + integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==, + } + engines: { node: ">=18" } + cpu: [s390x] + os: [linux] + + "@esbuild/linux-x64@0.25.5": + resolution: + { + integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [linux] + + "@esbuild/netbsd-arm64@0.25.5": + resolution: + { + integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [netbsd] + + "@esbuild/netbsd-x64@0.25.5": + resolution: + { + integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [netbsd] + + "@esbuild/openbsd-arm64@0.25.5": + resolution: + { + integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [openbsd] + + "@esbuild/openbsd-x64@0.25.5": + resolution: + { + integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [openbsd] + + "@esbuild/sunos-x64@0.25.5": + resolution: + { + integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [sunos] + + "@esbuild/win32-arm64@0.25.5": + resolution: + { + integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [win32] + + "@esbuild/win32-ia32@0.25.5": + resolution: + { + integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==, + } + engines: { node: ">=18" } + cpu: [ia32] + os: [win32] + + "@esbuild/win32-x64@0.25.5": + resolution: + { + integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [win32] + + "@eslint-community/eslint-plugin-eslint-comments@4.5.0": + resolution: + { + integrity: sha512-MAhuTKlr4y/CE3WYX26raZjy+I/kS2PLKSzvfmDCGrBLTFHOYwqROZdr4XwPgXwX3K9rjzMr4pSmUWGnzsUyMg==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + "@eslint-community/eslint-utils@4.7.0": + resolution: + { + integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + "@eslint-community/regexpp@4.12.1": + resolution: + { + integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } + + "@eslint/compat@1.3.0": + resolution: + { + integrity: sha512-ZBygRBqpDYiIHsN+d1WyHn3TYgzgpzLEcgJUxTATyiInQbKZz6wZb6+ljwdg8xeeOe4v03z6Uh6lELiw0/mVhQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^9.10.0 + peerDependenciesMeta: + eslint: + optional: true + + "@eslint/config-array@0.20.1": + resolution: + { + integrity: sha512-OL0RJzC/CBzli0DrrR31qzj6d6i6Mm3HByuhflhl4LOBiWxN+3i6/t/ZQQNii4tjksXi8r2CRW1wMpWA2ULUEw==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/config-helpers@0.2.3": + resolution: + { + integrity: sha512-u180qk2Um1le4yf0ruXH3PYFeEZeYC3p/4wCTKrr2U1CmGdzGi3KtY0nuPDH48UJxlKCC5RDzbcbh4X0XlqgHg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/core@0.13.0": + resolution: + { + integrity: sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/core@0.14.0": + resolution: + { + integrity: sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/core@0.15.0": + resolution: + { + integrity: sha512-b7ePw78tEWWkpgZCDYkbqDOP8dmM6qe+AOC6iuJqlq1R/0ahMAeH3qynpnqKFGkMltrp44ohV4ubGyvLX28tzw==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/eslintrc@3.3.1": + resolution: + { + integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/js@9.29.0": + resolution: + { + integrity: sha512-3PIF4cBw/y+1u2EazflInpV+lYsSG0aByVIQzAgb1m1MhHFSbqTyNqtBKHgWf/9Ykud+DhILS9EGkmekVhbKoQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/markdown@6.6.0": + resolution: + { + integrity: sha512-IsWPy2jU3gaQDlioDC4sT4I4kG1hX1OMWs/q2sWwJrPoMASHW/Z4SDw+6Aql6EsHejGbagYuJbFq9Zvx+Y1b1Q==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/object-schema@2.1.6": + resolution: + { + integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/plugin-kit@0.2.8": + resolution: + { + integrity: sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@eslint/plugin-kit@0.3.2": + resolution: + { + integrity: sha512-4SaFZCNfJqvk/kenHpI8xvN42DMaoycy4PzKc5otHxRswww1kAt82OlBuwRVLofCACCTZEcla2Ydxv8scMXaTg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@humanfs/core@0.19.1": + resolution: + { + integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==, + } + engines: { node: ">=18.18.0" } + + "@humanfs/node@0.16.6": + resolution: + { + integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==, + } + engines: { node: ">=18.18.0" } + + "@humanwhocodes/module-importer@1.0.1": + resolution: + { + integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==, + } + engines: { node: ">=12.22" } + + "@humanwhocodes/retry@0.3.1": + resolution: + { + integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==, + } + engines: { node: ">=18.18" } + + "@humanwhocodes/retry@0.4.3": + resolution: + { + integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==, + } + engines: { node: ">=18.18" } + + "@isaacs/balanced-match@4.0.1": + resolution: + { + integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==, + } + engines: { node: 20 || >=22 } + + "@isaacs/brace-expansion@5.0.0": + resolution: + { + integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==, + } + engines: { node: 20 || >=22 } + + "@jridgewell/gen-mapping@0.3.8": + resolution: + { + integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==, + } + engines: { node: ">=6.0.0" } + + "@jridgewell/resolve-uri@3.1.2": + resolution: + { + integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==, + } + engines: { node: ">=6.0.0" } + + "@jridgewell/set-array@1.2.1": + resolution: + { + integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==, + } + engines: { node: ">=6.0.0" } + + "@jridgewell/sourcemap-codec@1.5.0": + resolution: + { + integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==, + } + + "@jridgewell/trace-mapping@0.3.25": + resolution: + { + integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==, + } + + "@napi-rs/wasm-runtime@0.2.11": + resolution: + { + integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==, + } + + "@nodelib/fs.scandir@2.1.5": + resolution: + { + integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, + } + engines: { node: ">= 8" } + + "@nodelib/fs.stat@2.0.5": + resolution: + { + integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, + } + engines: { node: ">= 8" } + + "@nodelib/fs.walk@1.2.8": + resolution: + { + integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, + } + engines: { node: ">= 8" } + + "@oxc-project/types@0.70.0": + resolution: + { + integrity: sha512-ngyLUpUjO3dpqygSRQDx7nMx8+BmXbWOU4oIwTJFV2MVIDG7knIZwgdwXlQWLg3C3oxg1lS7ppMtPKqKFb7wzw==, + } + + "@pkgr/core@0.2.7": + resolution: + { + integrity: sha512-YLT9Zo3oNPJoBjBc4q8G2mjU4tqIbf5CEOORbUUr48dCD9q3umJ3IPlVqOqDakPfd2HuwccBaqlGhN4Gmr5OWg==, + } + engines: { node: ^12.20.0 || ^14.18.0 || >=16.0.0 } + + "@quansync/fs@0.1.3": + resolution: + { + integrity: sha512-G0OnZbMWEs5LhDyqy2UL17vGhSVHkQIfVojMtEWVenvj0V5S84VBgy86kJIuNsGDp2p7sTKlpSIpBUWdC35OKg==, + } + engines: { node: ">=20.0.0" } + + "@rolldown/binding-darwin-arm64@1.0.0-beta.9": + resolution: + { + integrity: sha512-geUG/FUpm+membLC0NQBb39vVyOfguYZ2oyXc7emr6UjH6TeEECT4b0CPZXKFnELareTiU/Jfl70/eEgNxyQeA==, + } + cpu: [arm64] + os: [darwin] + + "@rolldown/binding-darwin-x64@1.0.0-beta.9": + resolution: + { + integrity: sha512-7wPXDwcOtv2I+pWTL2UNpNAxMAGukgBT90Jz4DCfwaYdGvQncF7J0S7IWrRVsRFhBavxM+65RcueE3VXw5UIbg==, + } + cpu: [x64] + os: [darwin] + + "@rolldown/binding-freebsd-x64@1.0.0-beta.9": + resolution: + { + integrity: sha512-agO5mONTNKVrcIt4SRxw5Ni0FOVV3gaH8dIiNp1A4JeU91b9kw7x+JRuNJAQuM2X3pYqVvA6qh13UTNOsaqM/Q==, + } + cpu: [x64] + os: [freebsd] + + "@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.9": + resolution: + { + integrity: sha512-dDNDV9p/8WYDriS9HCcbH6y6+JP38o3enj/pMkdkmkxEnZ0ZoHIfQ9RGYWeRYU56NKBCrya4qZBJx49Jk9LRug==, + } + cpu: [arm] + os: [linux] + + "@rolldown/binding-linux-arm64-gnu@1.0.0-beta.9": + resolution: + { + integrity: sha512-kZKegmHG1ZvfsFIwYU6DeFSxSIcIliXzeznsJHUo9D9/dlVSDi/PUvsRKcuJkQjZoejM6pk8MHN/UfgGdIhPHw==, + } + cpu: [arm64] + os: [linux] + + "@rolldown/binding-linux-arm64-musl@1.0.0-beta.9": + resolution: + { + integrity: sha512-f+VL8mO31pyMJiJPr2aA1ryYONkP2UqgbwK7fKtKHZIeDd/AoUGn3+ujPqDhuy2NxgcJ5H8NaSvDpG1tJMHh+g==, + } + cpu: [arm64] + os: [linux] + + "@rolldown/binding-linux-x64-gnu@1.0.0-beta.9": + resolution: + { + integrity: sha512-GiUEZ0WPjX5LouDoC3O8aJa4h6BLCpIvaAboNw5JoRour/3dC6rbtZZ/B5FC3/ySsN3/dFOhAH97ylQxoZJi7A==, + } + cpu: [x64] + os: [linux] + + "@rolldown/binding-linux-x64-musl@1.0.0-beta.9": + resolution: + { + integrity: sha512-AMb0dicw+QHh6RxvWo4BRcuTMgS0cwUejJRMpSyIcHYnKTbj6nUW4HbWNQuDfZiF27l6F5gEwBS+YLUdVzL9vg==, + } + cpu: [x64] + os: [linux] + + "@rolldown/binding-wasm32-wasi@1.0.0-beta.9": + resolution: + { + integrity: sha512-+pdaiTx7L8bWKvsAuCE0HAxP1ze1WOLoWGCawcrZbMSY10dMh2i82lJiH6tXGXbfYYwsNWhWE2NyG4peFZvRfQ==, + } + engines: { node: ">=14.21.3" } + cpu: [wasm32] + + "@rolldown/binding-win32-arm64-msvc@1.0.0-beta.9": + resolution: + { + integrity: sha512-A7kN248viWvb8eZMzQu024TBKGoyoVYBsDG2DtoP8u2pzwoh5yDqUL291u01o4f8uzpUHq8mfwQJmcGChFu8KQ==, + } + cpu: [arm64] + os: [win32] + + "@rolldown/binding-win32-ia32-msvc@1.0.0-beta.9": + resolution: + { + integrity: sha512-DzKN7iEYjAP8AK8F2G2aCej3fk43Y/EQrVrR3gF0XREes56chjQ7bXIhw819jv74BbxGdnpPcslhet/cgt7WRA==, + } + cpu: [ia32] + os: [win32] + + "@rolldown/binding-win32-x64-msvc@1.0.0-beta.9": + resolution: + { + integrity: sha512-GMWgTvvbZ8TfBsAiJpoz4SRq3IN3aUMn0rYm8q4I8dcEk4J1uISyfb6ZMzvqW+cvScTWVKWZNqnrmYOKLLUt4w==, + } + cpu: [x64] + os: [win32] + + "@rolldown/pluginutils@1.0.0-beta.9": + resolution: + { + integrity: sha512-e9MeMtVWo186sgvFFJOPGy7/d2j2mZhLJIdVW0C/xDluuOvymEATqz6zKsP0ZmXGzQtqlyjz5sC1sYQUoJG98w==, + } + + "@rollup/rollup-android-arm-eabi@4.44.0": + resolution: + { + integrity: sha512-xEiEE5oDW6tK4jXCAyliuntGR+amEMO7HLtdSshVuhFnKTYoeYMyXQK7pLouAJJj5KHdwdn87bfHAR2nSdNAUA==, + } + cpu: [arm] + os: [android] + + "@rollup/rollup-android-arm64@4.44.0": + resolution: + { + integrity: sha512-uNSk/TgvMbskcHxXYHzqwiyBlJ/lGcv8DaUfcnNwict8ba9GTTNxfn3/FAoFZYgkaXXAdrAA+SLyKplyi349Jw==, + } + cpu: [arm64] + os: [android] + + "@rollup/rollup-darwin-arm64@4.44.0": + resolution: + { + integrity: sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==, + } + cpu: [arm64] + os: [darwin] + + "@rollup/rollup-darwin-x64@4.44.0": + resolution: + { + integrity: sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==, + } + cpu: [x64] + os: [darwin] + + "@rollup/rollup-freebsd-arm64@4.44.0": + resolution: + { + integrity: sha512-u5AZzdQJYJXByB8giQ+r4VyfZP+walV+xHWdaFx/1VxsOn6eWJhK2Vl2eElvDJFKQBo/hcYIBg/jaKS8ZmKeNQ==, + } + cpu: [arm64] + os: [freebsd] + + "@rollup/rollup-freebsd-x64@4.44.0": + resolution: + { + integrity: sha512-qC0kS48c/s3EtdArkimctY7h3nHicQeEUdjJzYVJYR3ct3kWSafmn6jkNCA8InbUdge6PVx6keqjk5lVGJf99g==, + } + cpu: [x64] + os: [freebsd] + + "@rollup/rollup-linux-arm-gnueabihf@4.44.0": + resolution: + { + integrity: sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==, + } + cpu: [arm] + os: [linux] + + "@rollup/rollup-linux-arm-musleabihf@4.44.0": + resolution: + { + integrity: sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==, + } + cpu: [arm] + os: [linux] + + "@rollup/rollup-linux-arm64-gnu@4.44.0": + resolution: + { + integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==, + } + cpu: [arm64] + os: [linux] + + "@rollup/rollup-linux-arm64-musl@4.44.0": + resolution: + { + integrity: sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==, + } + cpu: [arm64] + os: [linux] + + "@rollup/rollup-linux-loongarch64-gnu@4.44.0": + resolution: + { + integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==, + } + cpu: [loong64] + os: [linux] + + "@rollup/rollup-linux-powerpc64le-gnu@4.44.0": + resolution: + { + integrity: sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==, + } + cpu: [ppc64] + os: [linux] + + "@rollup/rollup-linux-riscv64-gnu@4.44.0": + resolution: + { + integrity: sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==, + } + cpu: [riscv64] + os: [linux] + + "@rollup/rollup-linux-riscv64-musl@4.44.0": + resolution: + { + integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==, + } + cpu: [riscv64] + os: [linux] + + "@rollup/rollup-linux-s390x-gnu@4.44.0": + resolution: + { + integrity: sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==, + } + cpu: [s390x] + os: [linux] + + "@rollup/rollup-linux-x64-gnu@4.44.0": + resolution: + { + integrity: sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==, + } + cpu: [x64] + os: [linux] + + "@rollup/rollup-linux-x64-musl@4.44.0": + resolution: + { + integrity: sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==, + } + cpu: [x64] + os: [linux] + + "@rollup/rollup-win32-arm64-msvc@4.44.0": + resolution: + { + integrity: sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==, + } + cpu: [arm64] + os: [win32] + + "@rollup/rollup-win32-ia32-msvc@4.44.0": + resolution: + { + integrity: sha512-3XJ0NQtMAXTWFW8FqZKcw3gOQwBtVWP/u8TpHP3CRPXD7Pd6s8lLdH3sHWh8vqKCyyiI8xW5ltJScQmBU9j7WA==, + } + cpu: [ia32] + os: [win32] + + "@rollup/rollup-win32-x64-msvc@4.44.0": + resolution: + { + integrity: sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==, + } + cpu: [x64] + os: [win32] + + "@sxzz/eslint-config@7.0.4": + resolution: + { + integrity: sha512-4o3stQQ5wVdQXJ4zWwHlfC5Mv489Ob6A7bmEnt2GGOr675eVV/IFqDdwu1MnbmcQVY5CVXsyhkBCNHQTjDqAiA==, + } + engines: { node: ">=20.0.0" } + peerDependencies: + "@unocss/eslint-plugin": ">=65.0.0" + eslint: ^9.5.0 + peerDependenciesMeta: + "@unocss/eslint-plugin": + optional: true + + "@sxzz/prettier-config@2.2.1": + resolution: + { + integrity: sha512-4eKrQdzJpMOFrUD9rFm1IfVkpchPvnPOObJvnX+DQB0KHRtHbU0vBwSpOLHioxLPYFwJGjSl6NC0trrCDkCtsA==, + } + + "@tybys/wasm-util@0.9.0": + resolution: + { + integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==, + } + + "@types/chai@5.2.2": + resolution: + { + integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==, + } + + "@types/debug@4.1.12": + resolution: + { + integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==, + } + + "@types/deep-eql@4.0.2": + resolution: + { + integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==, + } + + "@types/estree@1.0.8": + resolution: + { + integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==, + } + + "@types/json-schema@7.0.15": + resolution: + { + integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==, + } + + "@types/mdast@4.0.4": + resolution: + { + integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==, + } + + "@types/ms@2.1.0": + resolution: + { + integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==, + } + + "@types/node@22.15.32": + resolution: + { + integrity: sha512-3jigKqgSjsH6gYZv2nEsqdXfZqIFGAV36XYYjf9KGZ3PSG+IhLecqPnI310RvjutyMwifE2hhhNEklOUrvx/wA==, + } + + "@types/unist@3.0.3": + resolution: + { + integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==, + } + + "@typescript-eslint/eslint-plugin@8.34.1": + resolution: + { + integrity: sha512-STXcN6ebF6li4PxwNeFnqF8/2BNDvBupf2OPx2yWNzr6mKNGF7q49VM00Pz5FaomJyqvbXpY6PhO+T9w139YEQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + "@typescript-eslint/parser": ^8.34.1 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/parser@8.34.1": + resolution: + { + integrity: sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/project-service@8.34.1": + resolution: + { + integrity: sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/scope-manager@8.34.1": + resolution: + { + integrity: sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@typescript-eslint/tsconfig-utils@8.34.1": + resolution: + { + integrity: sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/type-utils@8.34.1": + resolution: + { + integrity: sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/types@8.34.1": + resolution: + { + integrity: sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@typescript-eslint/typescript-estree@8.34.1": + resolution: + { + integrity: sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/utils@8.34.1": + resolution: + { + integrity: sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + + "@typescript-eslint/visitor-keys@8.34.1": + resolution: + { + integrity: sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + "@unrs/resolver-binding-android-arm-eabi@1.9.1": + resolution: + { + integrity: sha512-dd7yIp1hfJFX9ZlVLQRrh/Re9WMUHHmF9hrKD1yIvxcyNr2BhQ3xc1upAVhy8NijadnCswAxWQu8MkkSMC1qXQ==, + } + cpu: [arm] + os: [android] + + "@unrs/resolver-binding-android-arm64@1.9.1": + resolution: + { + integrity: sha512-EzUPcMFtDVlo5yrbzMqUsGq3HnLXw+3ZOhSd7CUaDmbTtnrzM+RO2ntw2dm2wjbbc5djWj3yX0wzbbg8pLhx8g==, + } + cpu: [arm64] + os: [android] + + "@unrs/resolver-binding-darwin-arm64@1.9.1": + resolution: + { + integrity: sha512-nB+dna3q4kOleKFcSZJ/wDXIsAd1kpMO9XrVAt8tG3RDWJ6vi+Ic6bpz4cmg5tWNeCfHEY4KuqJCB+pKejPEmQ==, + } + cpu: [arm64] + os: [darwin] + + "@unrs/resolver-binding-darwin-x64@1.9.1": + resolution: + { + integrity: sha512-aKWHCrOGaCGwZcekf3TnczQoBxk5w//W3RZ4EQyhux6rKDwBPgDU9Y2yGigCV1Z+8DWqZgVGQi+hdpnlSy3a1w==, + } + cpu: [x64] + os: [darwin] + + "@unrs/resolver-binding-freebsd-x64@1.9.1": + resolution: + { + integrity: sha512-4dIEMXrXt0UqDVgrsUd1I+NoIzVQWXy/CNhgpfS75rOOMK/4Abn0Mx2M2gWH4Mk9+ds/ASAiCmqoUFynmMY5hA==, + } + cpu: [x64] + os: [freebsd] + + "@unrs/resolver-binding-linux-arm-gnueabihf@1.9.1": + resolution: + { + integrity: sha512-vtvS13IXPs1eE8DuS/soiosqMBeyh50YLRZ+p7EaIKAPPeevRnA9G/wu/KbVt01ZD5qiGjxS+CGIdVC7I6gTOw==, + } + cpu: [arm] + os: [linux] + + "@unrs/resolver-binding-linux-arm-musleabihf@1.9.1": + resolution: + { + integrity: sha512-BfdnN6aZ7NcX8djW8SR6GOJc+K+sFhWRF4vJueVE0vbUu5N1bLnBpxJg1TGlhSyo+ImC4SR0jcNiKN0jdoxt+A==, + } + cpu: [arm] + os: [linux] + + "@unrs/resolver-binding-linux-arm64-gnu@1.9.1": + resolution: + { + integrity: sha512-Jhge7lFtH0QqfRz2PyJjJXWENqywPteITd+nOS0L6AhbZli+UmEyGBd2Sstt1c+l9C+j/YvKTl9wJo9PPmsFNg==, + } + cpu: [arm64] + os: [linux] + + "@unrs/resolver-binding-linux-arm64-musl@1.9.1": + resolution: + { + integrity: sha512-ofdK/ow+ZSbSU0pRoB7uBaiRHeaAOYQFU5Spp87LdcPL/P1RhbCTMSIYVb61XWzsVEmYKjHFtoIE0wxP6AFvrA==, + } + cpu: [arm64] + os: [linux] + + "@unrs/resolver-binding-linux-ppc64-gnu@1.9.1": + resolution: + { + integrity: sha512-eC8SXVn8de67HacqU7PoGdHA+9tGbqfEdD05AEFRAB81ejeQtNi5Fx7lPcxpLH79DW0BnMAHau3hi4RVkHfSCw==, + } + cpu: [ppc64] + os: [linux] + + "@unrs/resolver-binding-linux-riscv64-gnu@1.9.1": + resolution: + { + integrity: sha512-fIkwvAAQ41kfoGWfzeJ33iLGShl0JEDZHrMnwTHMErUcPkaaZRJYjQjsFhMl315NEQ4mmTlC+2nfK/J2IszDOw==, + } + cpu: [riscv64] + os: [linux] + + "@unrs/resolver-binding-linux-riscv64-musl@1.9.1": + resolution: + { + integrity: sha512-RAAszxImSOFLk44aLwnSqpcOdce8sBcxASledSzuFAd8Q5ZhhVck472SisspnzHdc7THCvGXiUeZ2hOC7NUoBQ==, + } + cpu: [riscv64] + os: [linux] + + "@unrs/resolver-binding-linux-s390x-gnu@1.9.1": + resolution: + { + integrity: sha512-QoP9vkY+THuQdZi05bA6s6XwFd6HIz3qlx82v9bTOgxeqin/3C12Ye7f7EOD00RQ36OtOPWnhEMMm84sv7d1XQ==, + } + cpu: [s390x] + os: [linux] + + "@unrs/resolver-binding-linux-x64-gnu@1.9.1": + resolution: + { + integrity: sha512-/p77cGN/h9zbsfCseAP5gY7tK+7+DdM8fkPfr9d1ye1fsF6bmtGbtZN6e/8j4jCZ9NEIBBkT0GhdgixSelTK9g==, + } + cpu: [x64] + os: [linux] + + "@unrs/resolver-binding-linux-x64-musl@1.9.1": + resolution: + { + integrity: sha512-wInTqT3Bu9u50mDStEig1v8uxEL2Ht+K8pir/YhyyrM5ordJtxoqzsL1vR/CQzOJuDunUTrDkMM0apjW/d7/PA==, + } + cpu: [x64] + os: [linux] + + "@unrs/resolver-binding-wasm32-wasi@1.9.1": + resolution: + { + integrity: sha512-eNwqO5kUa+1k7yFIircwwiniKWA0UFHo2Cfm8LYgkh9km7uMad+0x7X7oXbQonJXlqfitBTSjhA0un+DsHIrhw==, + } + engines: { node: ">=14.0.0" } + cpu: [wasm32] + + "@unrs/resolver-binding-win32-arm64-msvc@1.9.1": + resolution: + { + integrity: sha512-Eaz1xMUnoa2mFqh20mPqSdbYl6crnk8HnIXDu6nsla9zpgZJZO8w3c1gvNN/4Eb0RXRq3K9OG6mu8vw14gIqiA==, + } + cpu: [arm64] + os: [win32] + + "@unrs/resolver-binding-win32-ia32-msvc@1.9.1": + resolution: + { + integrity: sha512-H/+d+5BGlnEQif0gnwWmYbYv7HJj563PUKJfn8PlmzF8UmF+8KxdvXdwCsoOqh4HHnENnoLrav9NYBrv76x1wQ==, + } + cpu: [ia32] + os: [win32] + + "@unrs/resolver-binding-win32-x64-msvc@1.9.1": + resolution: + { + integrity: sha512-rS86wI4R6cknYM3is3grCb/laE8XBEbpWAMSIPjYfmYp75KL5dT87jXF2orDa4tQYg5aajP5G8Fgh34dRyR+Rw==, + } + cpu: [x64] + os: [win32] + + "@vitest/expect@3.2.4": + resolution: + { + integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==, + } + + "@vitest/mocker@3.2.4": + resolution: + { + integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==, + } + peerDependencies: + msw: ^2.4.9 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + + "@vitest/pretty-format@3.2.4": + resolution: + { + integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==, + } + + "@vitest/runner@3.2.4": + resolution: + { + integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==, + } + + "@vitest/snapshot@3.2.4": + resolution: + { + integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==, + } + + "@vitest/spy@3.2.4": + resolution: + { + integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==, + } + + "@vitest/utils@3.2.4": + resolution: + { + integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==, + } + + acorn-jsx@5.3.2: + resolution: + { + integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, + } + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.15.0: + resolution: + { + integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==, + } + engines: { node: ">=0.4.0" } + hasBin: true + + ajv@6.12.6: + resolution: + { + integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, + } + + ansi-styles@4.3.0: + resolution: + { + integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, + } + engines: { node: ">=8" } + + ansis@4.1.0: + resolution: + { + integrity: sha512-BGcItUBWSMRgOCe+SVZJ+S7yTRG0eGt9cXAHev72yuGcY23hnLA7Bky5L/xLyPINoSN95geovfBkqoTlNZYa7w==, + } + engines: { node: ">=14" } + + are-docs-informative@0.0.2: + resolution: + { + integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==, + } + engines: { node: ">=14" } + + argparse@2.0.1: + resolution: + { + integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, + } + + args-tokenizer@0.3.0: + resolution: + { + integrity: sha512-xXAd7G2Mll5W8uo37GETpQ2VrE84M181Z7ugHFGQnJZ50M2mbOv0osSZ9VsSgPfJQ+LVG0prSi0th+ELMsno7Q==, + } + + assertion-error@2.0.1: + resolution: + { + integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==, + } + engines: { node: ">=12" } + + ast-kit@2.1.0: + resolution: + { + integrity: sha512-ROM2LlXbZBZVk97crfw8PGDOBzzsJvN2uJCmwswvPUNyfH14eg90mSN3xNqsri1JS1G9cz0VzeDUhxJkTrr4Ew==, + } + engines: { node: ">=20.18.0" } + + balanced-match@1.0.2: + resolution: + { + integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, + } + + birpc@2.4.0: + resolution: + { + integrity: sha512-5IdNxTyhXHv2UlgnPHQ0h+5ypVmkrYHzL8QT+DwFZ//2N/oNV8Ch+BCRmTJ3x6/z9Axo/cXYBc9eprsUVK/Jsg==, + } + + boolbase@1.0.0: + resolution: + { + integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==, + } + + brace-expansion@1.1.12: + resolution: + { + integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==, + } + + brace-expansion@2.0.2: + resolution: + { + integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==, + } + + braces@3.0.3: + resolution: + { + integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==, + } + engines: { node: ">=8" } + + browserslist@4.25.0: + resolution: + { + integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==, + } + engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } + hasBin: true + + builtin-modules@5.0.0: + resolution: + { + integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==, + } + engines: { node: ">=18.20" } + + bumpp@10.2.0: + resolution: + { + integrity: sha512-1EJ2NG3M3WYJj4m+GtcxNH6Y7zMQ8q68USMoUGKjM6qFTVXSXCnTxcQSUDV7j4KjLVbk2uK6345Z+6RKOv0w5A==, + } + engines: { node: ">=18" } + hasBin: true + + c12@3.0.4: + resolution: + { + integrity: sha512-t5FaZTYbbCtvxuZq9xxIruYydrAGsJ+8UdP0pZzMiK2xl/gNiSOy0OxhLzHUEEb0m1QXYqfzfvyIFEmz/g9lqg==, + } + peerDependencies: + magicast: ^0.3.5 + peerDependenciesMeta: + magicast: + optional: true + + cac@6.7.14: + resolution: + { + integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, + } + engines: { node: ">=8" } + + callsites@3.1.0: + resolution: + { + integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, + } + engines: { node: ">=6" } + + caniuse-lite@1.0.30001724: + resolution: + { + integrity: sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==, + } + + ccount@2.0.1: + resolution: + { + integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==, + } + + chai@5.2.0: + resolution: + { + integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==, + } + engines: { node: ">=12" } + + chalk@4.1.2: + resolution: + { + integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, + } + engines: { node: ">=10" } + + character-entities@2.0.2: + resolution: + { + integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==, + } + + check-error@2.1.1: + resolution: + { + integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==, + } + engines: { node: ">= 16" } + + chokidar@4.0.3: + resolution: + { + integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==, + } + engines: { node: ">= 14.16.0" } + + ci-info@4.2.0: + resolution: + { + integrity: sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==, + } + engines: { node: ">=8" } + + citty@0.1.6: + resolution: + { + integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==, + } + + clean-regexp@1.0.0: + resolution: + { + integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==, + } + engines: { node: ">=4" } + + color-convert@2.0.1: + resolution: + { + integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, + } + engines: { node: ">=7.0.0" } + + color-name@1.1.4: + resolution: + { + integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, + } + + comment-parser@1.4.1: + resolution: + { + integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==, + } + engines: { node: ">= 12.0.0" } + + concat-map@0.0.1: + resolution: + { + integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, + } + + confbox@0.1.8: + resolution: + { + integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==, + } + + confbox@0.2.2: + resolution: + { + integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==, + } + + consola@3.4.2: + resolution: + { + integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==, + } + engines: { node: ^14.18.0 || >=16.10.0 } + + core-js-compat@3.43.0: + resolution: + { + integrity: sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==, + } + + cross-spawn@7.0.6: + resolution: + { + integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==, + } + engines: { node: ">= 8" } + + cssesc@3.0.0: + resolution: + { + integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==, + } + engines: { node: ">=4" } + hasBin: true + + debug@4.4.1: + resolution: + { + integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==, + } + engines: { node: ">=6.0" } + peerDependencies: + supports-color: "*" + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.2.0: + resolution: + { + integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==, + } + + deep-eql@5.0.2: + resolution: + { + integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==, + } + engines: { node: ">=6" } + + deep-is@0.1.4: + resolution: + { + integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, + } + + defu@6.1.4: + resolution: + { + integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==, + } + + dequal@2.0.3: + resolution: + { + integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==, + } + engines: { node: ">=6" } + + destr@2.0.5: + resolution: + { + integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==, + } + + devlop@1.1.0: + resolution: + { + integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==, + } + + diff@8.0.2: + resolution: + { + integrity: sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==, + } + engines: { node: ">=0.3.1" } + + dotenv@16.5.0: + resolution: + { + integrity: sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==, + } + engines: { node: ">=12" } + + dts-resolver@2.1.1: + resolution: + { + integrity: sha512-3BiGFhB6mj5Kv+W2vdJseQUYW+SKVzAFJL6YNP6ursbrwy1fXHRotfHi3xLNxe4wZl/K8qbAFeCDjZLjzqxxRw==, + } + engines: { node: ">=20.18.0" } + peerDependencies: + oxc-resolver: ">=11.0.0" + peerDependenciesMeta: + oxc-resolver: + optional: true + + electron-to-chromium@1.5.171: + resolution: + { + integrity: sha512-scWpzXEJEMrGJa4Y6m/tVotb0WuvNmasv3wWVzUAeCgKU0ToFOhUW6Z+xWnRQANMYGxN4ngJXIThgBJOqzVPCQ==, + } + + empathic@1.1.0: + resolution: + { + integrity: sha512-rsPft6CK3eHtrlp9Y5ALBb+hfK+DWnA4WFebbazxjWyx8vSm3rZeoM3z9irsjcqO3PYRzlfv27XIB4tz2DV7RA==, + } + engines: { node: ">=14" } + + enhanced-resolve@5.18.1: + resolution: + { + integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==, + } + engines: { node: ">=10.13.0" } + + es-module-lexer@1.7.0: + resolution: + { + integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==, + } + + esbuild@0.25.5: + resolution: + { + integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==, + } + engines: { node: ">=18" } + hasBin: true + + escalade@3.2.0: + resolution: + { + integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==, + } + engines: { node: ">=6" } + + escape-string-regexp@1.0.5: + resolution: + { + integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, + } + engines: { node: ">=0.8.0" } + + escape-string-regexp@4.0.0: + resolution: + { + integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, + } + engines: { node: ">=10" } + + escape-string-regexp@5.0.0: + resolution: + { + integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==, + } + engines: { node: ">=12" } + + eslint-compat-utils@0.5.1: + resolution: + { + integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==, + } + engines: { node: ">=12" } + peerDependencies: + eslint: ">=6.0.0" + + eslint-compat-utils@0.6.5: + resolution: + { + integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==, + } + engines: { node: ">=12" } + peerDependencies: + eslint: ">=6.0.0" + + eslint-config-flat-gitignore@2.1.0: + resolution: + { + integrity: sha512-cJzNJ7L+psWp5mXM7jBX+fjHtBvvh06RBlcweMhKD8jWqQw0G78hOW5tpVALGHGFPsBV+ot2H+pdDGJy6CV8pA==, + } + peerDependencies: + eslint: ^9.5.0 + + eslint-config-prettier@10.1.5: + resolution: + { + integrity: sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==, + } + hasBin: true + peerDependencies: + eslint: ">=7.0.0" + + eslint-flat-config-utils@2.1.0: + resolution: + { + integrity: sha512-6fjOJ9tS0k28ketkUcQ+kKptB4dBZY2VijMZ9rGn8Cwnn1SH0cZBoPXT8AHBFHxmHcLFQK9zbELDinZ2Mr1rng==, + } + + eslint-import-context@0.1.8: + resolution: + { + integrity: sha512-bq+F7nyc65sKpZGT09dY0S0QrOnQtuDVIfyTGQ8uuvtMIF7oHp6CEP3mouN0rrnYF3Jqo6Ke0BfU/5wASZue1w==, + } + engines: { node: ^12.20.0 || ^14.18.0 || >=16.0.0 } + peerDependencies: + unrs-resolver: ^1.0.0 + peerDependenciesMeta: + unrs-resolver: + optional: true + + eslint-json-compat-utils@0.2.1: + resolution: + { + integrity: sha512-YzEodbDyW8DX8bImKhAcCeu/L31Dd/70Bidx2Qex9OFUtgzXLqtfWL4Hr5fM/aCCB8QUZLuJur0S9k6UfgFkfg==, + } + engines: { node: ">=12" } + peerDependencies: + "@eslint/json": "*" + eslint: "*" + jsonc-eslint-parser: ^2.4.0 + peerDependenciesMeta: + "@eslint/json": + optional: true + + eslint-plugin-antfu@3.1.1: + resolution: + { + integrity: sha512-7Q+NhwLfHJFvopI2HBZbSxWXngTwBLKxW1AGXLr2lEGxcEIK/AsDs8pn8fvIizl5aZjBbVbVK5ujmMpBe4Tvdg==, + } + peerDependencies: + eslint: "*" + + eslint-plugin-command@3.3.1: + resolution: + { + integrity: sha512-fBVTXQ2y48TVLT0+4A6PFINp7GcdIailHAXbvPBixE7x+YpYnNQhFZxTdvnb+aWk+COgNebQKen/7m4dmgyWAw==, + } + peerDependencies: + eslint: "*" + + eslint-plugin-de-morgan@1.3.0: + resolution: + { + integrity: sha512-UHCQ4XyDaEeSmk7lI0O1TEcsSBkvdyY8FV4H9TN2DvBfKV45SJR/qZ/rYwzt8JSBIbMXy8S0vNBhzngnpIreJw==, + } + engines: { node: ^18.0.0 || >=20.0.0 } + peerDependencies: + eslint: ">=8.0.0" + + eslint-plugin-es-x@7.8.0: + resolution: + { + integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==, + } + engines: { node: ^14.18.0 || >=16.0.0 } + peerDependencies: + eslint: ">=8" + + eslint-plugin-import-x@4.15.2: + resolution: + { + integrity: sha512-J5gx7sN6DTm0LRT//eP3rVVQ2Yi4hrX0B+DbWxa5er8PZ6JjLo9GUBwogIFvEDdwJaSqZplpQT+haK/cXhb7VQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + "@typescript-eslint/utils": ^8.0.0 + eslint: ^8.57.0 || ^9.0.0 + eslint-import-resolver-node: "*" + peerDependenciesMeta: + "@typescript-eslint/utils": + optional: true + eslint-import-resolver-node: + optional: true + + eslint-plugin-jsdoc@51.2.1: + resolution: + { + integrity: sha512-iE2qpG/kaA9xXfEcTNSsxNvH5O8+o38VBGLwl2oZisQaM1JRGftTLJAGQrj7YZjSkp3n9VCrNTjOpo3ONhTApQ==, + } + engines: { node: ">=20.11.0" } + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-plugin-jsonc@2.20.1: + resolution: + { + integrity: sha512-gUzIwQHXx7ZPypUoadcyRi4WbHW2TPixDr0kqQ4miuJBU0emJmyGTlnaT3Og9X2a8R1CDayN9BFSq5weGWbTng==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + peerDependencies: + eslint: ">=6.0.0" + + eslint-plugin-n@17.20.0: + resolution: + { + integrity: sha512-IRSoatgB/NQJZG5EeTbv/iAx1byOGdbbyhQrNvWdCfTnmPxUT0ao9/eGOeG7ljD8wJBsxwE8f6tES5Db0FRKEw==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ">=8.23.0" + + eslint-plugin-perfectionist@4.15.0: + resolution: + { + integrity: sha512-pC7PgoXyDnEXe14xvRUhBII8A3zRgggKqJFx2a82fjrItDs1BSI7zdZnQtM2yQvcyod6/ujmzb7ejKPx8lZTnw==, + } + engines: { node: ^18.0.0 || >=20.0.0 } + peerDependencies: + eslint: ">=8.45.0" + + eslint-plugin-pnpm@0.3.1: + resolution: + { + integrity: sha512-vi5iHoELIAlBbX4AW8ZGzU3tUnfxuXhC/NKo3qRcI5o9igbz6zJUqSlQ03bPeMqWIGTPatZnbWsNR1RnlNERNQ==, + } + peerDependencies: + eslint: ^9.0.0 + + eslint-plugin-prettier@5.5.0: + resolution: + { + integrity: sha512-8qsOYwkkGrahrgoUv76NZi23koqXOGiiEzXMrT8Q7VcYaUISR+5MorIUxfWqYXN0fN/31WbSrxCxFkVQ43wwrA==, + } + engines: { node: ^14.18.0 || >=16.0.0 } + peerDependencies: + "@types/eslint": ">=8.0.0" + eslint: ">=8.0.0" + eslint-config-prettier: ">= 7.0.0 <10.0.0 || >=10.1.0" + prettier: ">=3.0.0" + peerDependenciesMeta: + "@types/eslint": + optional: true + eslint-config-prettier: + optional: true + + eslint-plugin-regexp@2.9.0: + resolution: + { + integrity: sha512-9WqJMnOq8VlE/cK+YAo9C9YHhkOtcEtEk9d12a+H7OSZFwlpI6stiHmYPGa2VE0QhTzodJyhlyprUaXDZLgHBw==, + } + engines: { node: ^18 || >=20 } + peerDependencies: + eslint: ">=8.44.0" + + eslint-plugin-sxzz@0.3.0: + resolution: + { + integrity: sha512-Zf5ubmi+oPqIYAZFJJYvUN7+cyuyShfRpPCLR245PYjYguay/eLDo1c671V8DJqURzk2B6rhhGJAfA9oJDdApA==, + } + engines: { node: ">=20.18.0" } + peerDependencies: + eslint: "*" + + eslint-plugin-unicorn@59.0.1: + resolution: + { + integrity: sha512-EtNXYuWPUmkgSU2E7Ttn57LbRREQesIP1BiLn7OZLKodopKfDXfBUkC/0j6mpw2JExwf43Uf3qLSvrSvppgy8Q==, + } + engines: { node: ^18.20.0 || ^20.10.0 || >=21.0.0 } + peerDependencies: + eslint: ">=9.22.0" + + eslint-plugin-unused-imports@4.1.4: + resolution: + { + integrity: sha512-YptD6IzQjDardkl0POxnnRBhU1OEePMV0nd6siHaRBbd+lyh6NAhFEobiznKU7kTsSsDeSD62Pe7kAM1b7dAZQ==, + } + peerDependencies: + "@typescript-eslint/eslint-plugin": ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0 + eslint: ^9.0.0 || ^8.0.0 + peerDependenciesMeta: + "@typescript-eslint/eslint-plugin": + optional: true + + eslint-plugin-vue@10.2.0: + resolution: + { + integrity: sha512-tl9s+KN3z0hN2b8fV2xSs5ytGl7Esk1oSCxULLwFcdaElhZ8btYYZFrWxvh4En+czrSDtuLCeCOGa8HhEZuBdQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + vue-eslint-parser: ^10.0.0 + + eslint-plugin-yml@1.18.0: + resolution: + { + integrity: sha512-9NtbhHRN2NJa/s3uHchO3qVVZw0vyOIvWlXWGaKCr/6l3Go62wsvJK5byiI6ZoYztDsow4GnS69BZD3GnqH3hA==, + } + engines: { node: ^14.17.0 || >=16.0.0 } + peerDependencies: + eslint: ">=6.0.0" + + eslint-scope@8.4.0: + resolution: + { + integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + eslint-visitor-keys@3.4.3: + resolution: + { + integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + + eslint-visitor-keys@4.2.1: + resolution: + { + integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + eslint@9.29.0: + resolution: + { + integrity: sha512-GsGizj2Y1rCWDu6XoEekL3RLilp0voSePurjZIkxL3wlm5o5EC9VpgaP7lrCvjnkuLvzFBQWB3vWB3K5KQTveQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + hasBin: true + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true + + espree@10.4.0: + resolution: + { + integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + + espree@9.6.1: + resolution: + { + integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + + esquery@1.6.0: + resolution: + { + integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==, + } + engines: { node: ">=0.10" } + + esrecurse@4.3.0: + resolution: + { + integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, + } + engines: { node: ">=4.0" } + + estraverse@5.3.0: + resolution: + { + integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, + } + engines: { node: ">=4.0" } + + estree-walker@3.0.3: + resolution: + { + integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==, + } + + esutils@2.0.3: + resolution: + { + integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, + } + engines: { node: ">=0.10.0" } + + expect-type@1.2.1: + resolution: + { + integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==, + } + engines: { node: ">=12.0.0" } + + exsolve@1.0.7: + resolution: + { + integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==, + } + + fast-deep-equal@3.1.3: + resolution: + { + integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, + } + + fast-diff@1.3.0: + resolution: + { + integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==, + } + + fast-glob@3.3.3: + resolution: + { + integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==, + } + engines: { node: ">=8.6.0" } + + fast-json-stable-stringify@2.1.0: + resolution: + { + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, + } + + fast-levenshtein@2.0.6: + resolution: + { + integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, + } + + fastq@1.19.1: + resolution: + { + integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==, + } + + fault@2.0.1: + resolution: + { + integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==, + } + + fdir@6.4.6: + resolution: + { + integrity: sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==, + } + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + file-entry-cache@8.0.0: + resolution: + { + integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==, + } + engines: { node: ">=16.0.0" } + + fill-range@7.1.1: + resolution: + { + integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==, + } + engines: { node: ">=8" } + + find-up-simple@1.0.1: + resolution: + { + integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==, + } + engines: { node: ">=18" } + + find-up@5.0.0: + resolution: + { + integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==, + } + engines: { node: ">=10" } + + flat-cache@4.0.1: + resolution: + { + integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==, + } + engines: { node: ">=16" } + + flatted@3.3.3: + resolution: + { + integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==, + } + + format@0.2.2: + resolution: + { + integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==, + } + engines: { node: ">=0.4.x" } + + fsevents@2.3.3: + resolution: + { + integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, + } + engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } + os: [darwin] + + get-tsconfig@4.10.1: + resolution: + { + integrity: sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==, + } + + giget@2.0.0: + resolution: + { + integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==, + } + hasBin: true + + github-slugger@2.0.0: + resolution: + { + integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==, + } + + glob-parent@5.1.2: + resolution: + { + integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, + } + engines: { node: ">= 6" } + + glob-parent@6.0.2: + resolution: + { + integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==, + } + engines: { node: ">=10.13.0" } + + globals@14.0.0: + resolution: + { + integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==, + } + engines: { node: ">=18" } + + globals@15.15.0: + resolution: + { + integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==, + } + engines: { node: ">=18" } + + globals@16.2.0: + resolution: + { + integrity: sha512-O+7l9tPdHCU320IigZZPj5zmRCFG9xHmx9cU8FqU2Rp+JN714seHV+2S9+JslCpY4gJwU2vOGox0wzgae/MCEg==, + } + engines: { node: ">=18" } + + graceful-fs@4.2.11: + resolution: + { + integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, + } + + graphemer@1.4.0: + resolution: + { + integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==, + } + + happy-dom@17.6.3: + resolution: + { + integrity: sha512-UVIHeVhxmxedbWPCfgS55Jg2rDfwf2BCKeylcPSqazLz5w3Kri7Q4xdBJubsr/+VUzFLh0VjIvh13RaDA2/Xug==, + } + engines: { node: ">=20.0.0" } + + has-flag@4.0.0: + resolution: + { + integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, + } + engines: { node: ">=8" } + + hookable@5.5.3: + resolution: + { + integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==, + } + + ignore@5.3.2: + resolution: + { + integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==, + } + engines: { node: ">= 4" } + + ignore@7.0.5: + resolution: + { + integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==, + } + engines: { node: ">= 4" } + + import-fresh@3.3.1: + resolution: + { + integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==, + } + engines: { node: ">=6" } + + imurmurhash@0.1.4: + resolution: + { + integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, + } + engines: { node: ">=0.8.19" } + + indent-string@5.0.0: + resolution: + { + integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==, + } + engines: { node: ">=12" } + + is-builtin-module@5.0.0: + resolution: + { + integrity: sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==, + } + engines: { node: ">=18.20" } + + is-extglob@2.1.1: + resolution: + { + integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, + } + engines: { node: ">=0.10.0" } + + is-glob@4.0.3: + resolution: + { + integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, + } + engines: { node: ">=0.10.0" } + + is-number@7.0.0: + resolution: + { + integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, + } + engines: { node: ">=0.12.0" } + + isexe@2.0.0: + resolution: + { + integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, + } + + jiti@2.4.2: + resolution: + { + integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==, + } + hasBin: true + + js-tokens@9.0.1: + resolution: + { + integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==, + } + + js-yaml@4.1.0: + resolution: + { + integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, + } + hasBin: true + + jsdoc-type-pratt-parser@4.1.0: + resolution: + { + integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==, + } + engines: { node: ">=12.0.0" } + + jsesc@3.0.2: + resolution: + { + integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==, + } + engines: { node: ">=6" } + hasBin: true + + jsesc@3.1.0: + resolution: + { + integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==, + } + engines: { node: ">=6" } + hasBin: true + + json-buffer@3.0.1: + resolution: + { + integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==, + } + + json-schema-traverse@0.4.1: + resolution: + { + integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, + } + + json-stable-stringify-without-jsonify@1.0.1: + resolution: + { + integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==, + } + + jsonc-eslint-parser@2.4.0: + resolution: + { + integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + + jsonc-parser@3.3.1: + resolution: + { + integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==, + } + + keyv@4.5.4: + resolution: + { + integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==, + } + + levn@0.4.1: + resolution: + { + integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, + } + engines: { node: ">= 0.8.0" } + + local-pkg@1.1.1: + resolution: + { + integrity: sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==, + } + engines: { node: ">=14" } + + locate-path@6.0.0: + resolution: + { + integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==, + } + engines: { node: ">=10" } + + lodash.merge@4.6.2: + resolution: + { + integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==, + } + + lodash@4.17.21: + resolution: + { + integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, + } + + longest-streak@3.1.0: + resolution: + { + integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==, + } + + loupe@3.1.4: + resolution: + { + integrity: sha512-wJzkKwJrheKtknCOKNEtDK4iqg/MxmZheEMtSTYvnzRdEYaZzmgH976nenp8WdJRdx5Vc1X/9MO0Oszl6ezeXg==, + } + + magic-string@0.30.17: + resolution: + { + integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==, + } + + markdown-table@3.0.4: + resolution: + { + integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==, + } + + mdast-util-find-and-replace@3.0.2: + resolution: + { + integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==, + } + + mdast-util-from-markdown@2.0.2: + resolution: + { + integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==, + } + + mdast-util-frontmatter@2.0.1: + resolution: + { + integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==, + } + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: + { + integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==, + } + + mdast-util-gfm-footnote@2.1.0: + resolution: + { + integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==, + } + + mdast-util-gfm-strikethrough@2.0.0: + resolution: + { + integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==, + } + + mdast-util-gfm-table@2.0.0: + resolution: + { + integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==, + } + + mdast-util-gfm-task-list-item@2.0.0: + resolution: + { + integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==, + } + + mdast-util-gfm@3.1.0: + resolution: + { + integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==, + } + + mdast-util-phrasing@4.1.0: + resolution: + { + integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==, + } + + mdast-util-to-markdown@2.1.2: + resolution: + { + integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==, + } + + mdast-util-to-string@4.0.0: + resolution: + { + integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==, + } + + merge2@1.4.1: + resolution: + { + integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, + } + engines: { node: ">= 8" } + + micromark-core-commonmark@2.0.3: + resolution: + { + integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==, + } + + micromark-extension-frontmatter@2.0.0: + resolution: + { + integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==, + } + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: + { + integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==, + } + + micromark-extension-gfm-footnote@2.1.0: + resolution: + { + integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==, + } + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: + { + integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==, + } + + micromark-extension-gfm-table@2.1.1: + resolution: + { + integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==, + } + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: + { + integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==, + } + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: + { + integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==, + } + + micromark-extension-gfm@3.0.0: + resolution: + { + integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==, + } + + micromark-factory-destination@2.0.1: + resolution: + { + integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==, + } + + micromark-factory-label@2.0.1: + resolution: + { + integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==, + } + + micromark-factory-space@2.0.1: + resolution: + { + integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==, + } + + micromark-factory-title@2.0.1: + resolution: + { + integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==, + } + + micromark-factory-whitespace@2.0.1: + resolution: + { + integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==, + } + + micromark-util-character@2.1.1: + resolution: + { + integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==, + } + + micromark-util-chunked@2.0.1: + resolution: + { + integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==, + } + + micromark-util-classify-character@2.0.1: + resolution: + { + integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==, + } + + micromark-util-combine-extensions@2.0.1: + resolution: + { + integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==, + } + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: + { + integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==, + } + + micromark-util-decode-string@2.0.1: + resolution: + { + integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==, + } + + micromark-util-encode@2.0.1: + resolution: + { + integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==, + } + + micromark-util-html-tag-name@2.0.1: + resolution: + { + integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==, + } + + micromark-util-normalize-identifier@2.0.1: + resolution: + { + integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==, + } + + micromark-util-resolve-all@2.0.1: + resolution: + { + integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==, + } + + micromark-util-sanitize-uri@2.0.1: + resolution: + { + integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==, + } + + micromark-util-subtokenize@2.1.0: + resolution: + { + integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==, + } + + micromark-util-symbol@2.0.1: + resolution: + { + integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==, + } + + micromark-util-types@2.0.2: + resolution: + { + integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==, + } + + micromark@4.0.2: + resolution: + { + integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==, + } + + micromatch@4.0.8: + resolution: + { + integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==, + } + engines: { node: ">=8.6" } + + min-indent@1.0.1: + resolution: + { + integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==, + } + engines: { node: ">=4" } + + minimatch@10.0.3: + resolution: + { + integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==, + } + engines: { node: 20 || >=22 } + + minimatch@3.1.2: + resolution: + { + integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + } + + minimatch@9.0.5: + resolution: + { + integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==, + } + engines: { node: ">=16 || 14 >=14.17" } + + mlly@1.7.4: + resolution: + { + integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==, + } + + ms@2.1.3: + resolution: + { + integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, + } + + nanoid@3.3.11: + resolution: + { + integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==, + } + engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } + hasBin: true + + napi-postinstall@0.2.4: + resolution: + { + integrity: sha512-ZEzHJwBhZ8qQSbknHqYcdtQVr8zUgGyM/q6h6qAyhtyVMNrSgDhrC4disf03dYW0e+czXyLnZINnCTEkWy0eJg==, + } + engines: { node: ^12.20.0 || ^14.18.0 || >=16.0.0 } + hasBin: true + + natural-compare@1.4.0: + resolution: + { + integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, + } + + natural-orderby@5.0.0: + resolution: + { + integrity: sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==, + } + engines: { node: ">=18" } + + node-fetch-native@1.6.6: + resolution: + { + integrity: sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ==, + } + + node-releases@2.0.19: + resolution: + { + integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==, + } + + nth-check@2.1.1: + resolution: + { + integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==, + } + + nypm@0.6.0: + resolution: + { + integrity: sha512-mn8wBFV9G9+UFHIrq+pZ2r2zL4aPau/by3kJb3cM7+5tQHMt6HGQB8FDIeKFYp8o0D2pnH6nVsO88N4AmUxIWg==, + } + engines: { node: ^14.16.0 || >=16.10.0 } + hasBin: true + + ohash@2.0.11: + resolution: + { + integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==, + } + + optionator@0.9.4: + resolution: + { + integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==, + } + engines: { node: ">= 0.8.0" } + + p-limit@3.1.0: + resolution: + { + integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, + } + engines: { node: ">=10" } + + p-locate@5.0.0: + resolution: + { + integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==, + } + engines: { node: ">=10" } + + package-manager-detector@1.3.0: + resolution: + { + integrity: sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==, + } + + parent-module@1.0.1: + resolution: + { + integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, + } + engines: { node: ">=6" } + + parse-imports-exports@0.2.4: + resolution: + { + integrity: sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==, + } + + parse-statements@1.0.11: + resolution: + { + integrity: sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==, + } + + path-exists@4.0.0: + resolution: + { + integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, + } + engines: { node: ">=8" } + + path-key@3.1.1: + resolution: + { + integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, + } + engines: { node: ">=8" } + + pathe@2.0.3: + resolution: + { + integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==, + } + + pathval@2.0.0: + resolution: + { + integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==, + } + engines: { node: ">= 14.16" } + + perfect-debounce@1.0.0: + resolution: + { + integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==, + } + + picocolors@1.1.1: + resolution: + { + integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==, + } + + picomatch@2.3.1: + resolution: + { + integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, + } + engines: { node: ">=8.6" } + + picomatch@4.0.2: + resolution: + { + integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==, + } + engines: { node: ">=12" } + + pkg-types@1.3.1: + resolution: + { + integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==, + } + + pkg-types@2.1.0: + resolution: + { + integrity: sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==, + } + + pluralize@8.0.0: + resolution: + { + integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==, + } + engines: { node: ">=4" } + + pnpm-workspace-yaml@0.3.1: + resolution: + { + integrity: sha512-3nW5RLmREmZ8Pm8MbPsO2RM+99RRjYd25ynj3NV0cFsN7CcEl4sDFzgoFmSyduFwxFQ2Qbu3y2UdCh6HlyUOeA==, + } + + postcss-selector-parser@6.1.2: + resolution: + { + integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==, + } + engines: { node: ">=4" } + + postcss@8.5.6: + resolution: + { + integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==, + } + engines: { node: ^10 || ^12 || >=14 } + + prelude-ls@1.2.1: + resolution: + { + integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, + } + engines: { node: ">= 0.8.0" } + + prettier-linter-helpers@1.0.0: + resolution: + { + integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==, + } + engines: { node: ">=6.0.0" } + + prettier@3.6.0: + resolution: + { + integrity: sha512-ujSB9uXHJKzM/2GBuE0hBOUgC77CN3Bnpqa+g80bkv3T3A93wL/xlzDATHhnhkzifz/UE2SNOvmbTz5hSkDlHw==, + } + engines: { node: ">=14" } + hasBin: true + + punycode@2.3.1: + resolution: + { + integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==, + } + engines: { node: ">=6" } + + quansync@0.2.10: + resolution: + { + integrity: sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==, + } + + queue-microtask@1.2.3: + resolution: + { + integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, + } + + rc9@2.1.2: + resolution: + { + integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==, + } + + readdirp@4.1.2: + resolution: + { + integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==, + } + engines: { node: ">= 14.18.0" } + + refa@0.12.1: + resolution: + { + integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } + + regexp-ast-analysis@0.7.1: + resolution: + { + integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } + + regexp-tree@0.1.27: + resolution: + { + integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==, + } + hasBin: true + + regjsparser@0.12.0: + resolution: + { + integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==, + } + hasBin: true + + resolve-from@4.0.0: + resolution: + { + integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, + } + engines: { node: ">=4" } + + resolve-pkg-maps@1.0.0: + resolution: + { + integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, + } + + reusify@1.1.0: + resolution: + { + integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==, + } + engines: { iojs: ">=1.0.0", node: ">=0.10.0" } + + rolldown-plugin-dts@0.13.12: + resolution: + { + integrity: sha512-4QdQQfMOWNDLhmvoG3USAUpCm75dgwWk3IrK6SV9Fw2U5uwcSE7oQTqEcmsUGEBsNxZ58+gtM1oX38MMf0g5PA==, + } + engines: { node: ">=20.18.0" } + peerDependencies: + "@typescript/native-preview": ">=7.0.0-dev.20250601.1" + rolldown: ^1.0.0-beta.9 + typescript: ^5.0.0 + vue-tsc: ~2.2.0 + peerDependenciesMeta: + "@typescript/native-preview": + optional: true + typescript: + optional: true + vue-tsc: + optional: true + + rolldown@1.0.0-beta.9: + resolution: + { + integrity: sha512-ZgZky52n6iF0UainGKjptKGrOG4Con2S5sdc4C4y2Oj25D5PHAY8Y8E5f3M2TSd/zlhQs574JlMeTe3vREczSg==, + } + hasBin: true + peerDependencies: + "@oxc-project/runtime": 0.70.0 + peerDependenciesMeta: + "@oxc-project/runtime": + optional: true + + rollup@4.44.0: + resolution: + { + integrity: sha512-qHcdEzLCiktQIfwBq420pn2dP+30uzqYxv9ETm91wdt2R9AFcWfjNAmje4NWlnCIQ5RMTzVf0ZyisOKqHR6RwA==, + } + engines: { node: ">=18.0.0", npm: ">=8.0.0" } + hasBin: true + + run-parallel@1.2.0: + resolution: + { + integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, + } + + scslre@0.3.0: + resolution: + { + integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==, + } + engines: { node: ^14.0.0 || >=16.0.0 } + + semver@7.7.2: + resolution: + { + integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==, + } + engines: { node: ">=10" } + hasBin: true + + shebang-command@2.0.0: + resolution: + { + integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, + } + engines: { node: ">=8" } + + shebang-regex@3.0.0: + resolution: + { + integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, + } + engines: { node: ">=8" } + + siginfo@2.0.0: + resolution: + { + integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==, + } + + source-map-js@1.2.1: + resolution: + { + integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==, + } + engines: { node: ">=0.10.0" } + + spdx-exceptions@2.5.0: + resolution: + { + integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==, + } + + spdx-expression-parse@4.0.0: + resolution: + { + integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==, + } + + spdx-license-ids@3.0.21: + resolution: + { + integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==, + } + + stable-hash-x@0.1.1: + resolution: + { + integrity: sha512-l0x1D6vhnsNUGPFVDx45eif0y6eedVC8nm5uACTrVFJFtl2mLRW17aWtVyxFCpn5t94VUPkjU8vSLwIuwwqtJQ==, + } + engines: { node: ">=12.0.0" } + + stackback@0.0.2: + resolution: + { + integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==, + } + + std-env@3.9.0: + resolution: + { + integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==, + } + + strip-indent@4.0.0: + resolution: + { + integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==, + } + engines: { node: ">=12" } + + strip-json-comments@3.1.1: + resolution: + { + integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, + } + engines: { node: ">=8" } + + strip-literal@3.0.0: + resolution: + { + integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==, + } + + supports-color@7.2.0: + resolution: + { + integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, + } + engines: { node: ">=8" } + + synckit@0.11.8: + resolution: + { + integrity: sha512-+XZ+r1XGIJGeQk3VvXhT6xx/VpbHsRzsTkGgF6E5RX9TTXD0118l87puaEBZ566FhqblC6U0d4XnubznJDm30A==, + } + engines: { node: ^14.18.0 || >=16.0.0 } + + tapable@2.2.2: + resolution: + { + integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==, + } + engines: { node: ">=6" } + + tinybench@2.9.0: + resolution: + { + integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==, + } + + tinyexec@0.3.2: + resolution: + { + integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==, + } + + tinyexec@1.0.1: + resolution: + { + integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==, + } + + tinyglobby@0.2.14: + resolution: + { + integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==, + } + 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@2.0.0: + resolution: + { + integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==, + } + engines: { node: ">=14.0.0" } + + tinyspy@4.0.3: + resolution: + { + integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==, + } + engines: { node: ">=14.0.0" } + + to-regex-range@5.0.1: + resolution: + { + integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, + } + engines: { node: ">=8.0" } + + ts-api-utils@2.1.0: + resolution: + { + integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==, + } + engines: { node: ">=18.12" } + peerDependencies: + typescript: ">=4.8.4" + + ts-declaration-location@1.0.7: + resolution: + { + integrity: sha512-EDyGAwH1gO0Ausm9gV6T2nUvBgXT5kGoCMJPllOaooZ+4VvJiKBdZE7wK18N1deEowhcUptS+5GXZK8U/fvpwA==, + } + peerDependencies: + typescript: ">=4.0.0" + + tsdown@0.11.13: + resolution: + { + integrity: sha512-VSfoNm8MJXFdg7PJ4p2javgjMRiQQHpkP9N3iBBTrmCixcT6YZ9ZtqYMW3NDHczqR0C0Qnur1HMQr1ZfZcmrng==, + } + engines: { node: ">=18.0.0" } + hasBin: true + peerDependencies: + publint: ^0.3.0 + typescript: ^5.0.0 + unplugin-lightningcss: ^0.4.0 + unplugin-unused: ^0.5.0 + peerDependenciesMeta: + publint: + optional: true + typescript: + optional: true + unplugin-lightningcss: + optional: true + unplugin-unused: + optional: true + + tslib@2.8.1: + resolution: + { + integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==, + } + + tsx@4.20.3: + resolution: + { + integrity: sha512-qjbnuR9Tr+FJOMBqJCW5ehvIo/buZq7vH7qD7JziU98h6l3qGy0a/yPFjwO+y0/T7GFpNgNAvEcPPVfyT8rrPQ==, + } + engines: { node: ">=18.0.0" } + hasBin: true + + type-check@0.4.0: + resolution: + { + integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, + } + engines: { node: ">= 0.8.0" } + + typescript-eslint@8.34.1: + resolution: + { + integrity: sha512-XjS+b6Vg9oT1BaIUfkW3M3LvqZE++rbzAMEHuccCfO/YkP43ha6w3jTEMilQxMF92nVOYCcdjv1ZUhAa1D/0ow==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + + typescript@5.8.3: + resolution: + { + integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==, + } + engines: { node: ">=14.17" } + hasBin: true + + ufo@1.6.1: + resolution: + { + integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==, + } + + unconfig@7.3.2: + resolution: + { + integrity: sha512-nqG5NNL2wFVGZ0NA/aCFw0oJ2pxSf1lwg4Z5ill8wd7K4KX/rQbHlwbh+bjctXL5Ly1xtzHenHGOK0b+lG6JVg==, + } + + undici-types@6.21.0: + resolution: + { + integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==, + } + + unist-util-is@6.0.0: + resolution: + { + integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==, + } + + unist-util-stringify-position@4.0.0: + resolution: + { + integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==, + } + + unist-util-visit-parents@6.0.1: + resolution: + { + integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==, + } + + unist-util-visit@5.0.0: + resolution: + { + integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==, + } + + unrs-resolver@1.9.1: + resolution: + { + integrity: sha512-4AZVxP05JGN6DwqIkSP4VKLOcwQa5l37SWHF/ahcuqBMbfxbpN1L1QKafEhWCziHhzKex9H/AR09H0OuVyU+9g==, + } + + update-browserslist-db@1.1.3: + resolution: + { + integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==, + } + hasBin: true + peerDependencies: + browserslist: ">= 4.21.0" + + uri-js@4.4.1: + resolution: + { + integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, + } + + util-deprecate@1.0.2: + resolution: + { + integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, + } + + vite-node@3.2.4: + resolution: + { + integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==, + } + engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 } + hasBin: true + + vite@6.3.5: + resolution: + { + integrity: sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==, + } + engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 } + hasBin: true + peerDependencies: + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: ">=1.21.0" + less: "*" + lightningcss: ^1.21.0 + sass: "*" + sass-embedded: "*" + stylus: "*" + sugarss: "*" + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + "@types/node": + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + + vitest@3.2.4: + resolution: + { + integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==, + } + engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 } + hasBin: true + peerDependencies: + "@edge-runtime/vm": "*" + "@types/debug": ^4.1.12 + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + "@vitest/browser": 3.2.4 + "@vitest/ui": 3.2.4 + happy-dom: "*" + jsdom: "*" + peerDependenciesMeta: + "@edge-runtime/vm": + optional: true + "@types/debug": + optional: true + "@types/node": + optional: true + "@vitest/browser": + optional: true + "@vitest/ui": + optional: true + happy-dom: + optional: true + jsdom: + optional: true + + vue-eslint-parser@10.1.3: + resolution: + { + integrity: sha512-dbCBnd2e02dYWsXoqX5yKUZlOt+ExIpq7hmHKPb5ZqKcjf++Eo0hMseFTZMLKThrUk61m+Uv6A2YSBve6ZvuDQ==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + webidl-conversions@7.0.0: + resolution: + { + integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==, + } + engines: { node: ">=12" } + + whatwg-mimetype@3.0.0: + resolution: + { + integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==, + } + engines: { node: ">=12" } + + which@2.0.2: + resolution: + { + integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, + } + engines: { node: ">= 8" } + hasBin: true + + why-is-node-running@2.3.0: + resolution: + { + integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==, + } + engines: { node: ">=8" } + hasBin: true + + word-wrap@1.2.5: + resolution: + { + integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==, + } + engines: { node: ">=0.10.0" } + + xml-name-validator@4.0.0: + resolution: + { + integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==, + } + engines: { node: ">=12" } + + yaml-eslint-parser@1.3.0: + resolution: + { + integrity: sha512-E/+VitOorXSLiAqtTd7Yqax0/pAS3xaYMP+AUUJGOK1OZG3rhcj9fcJOM5HJ2VrP1FrStVCWr1muTfQCdj4tAA==, + } + engines: { node: ^14.17.0 || >=16.0.0 } + + yaml@2.8.0: + resolution: + { + integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==, + } + engines: { node: ">= 14.6" } + hasBin: true + + yocto-queue@0.1.0: + resolution: + { + integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, + } + engines: { node: ">=10" } + + zwitch@2.0.4: + resolution: + { + integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==, + } + +snapshots: + "@babel/generator@7.27.5": + dependencies: + "@babel/parser": 7.27.5 + "@babel/types": 7.27.6 + "@jridgewell/gen-mapping": 0.3.8 + "@jridgewell/trace-mapping": 0.3.25 + jsesc: 3.1.0 + + "@babel/helper-string-parser@7.27.1": {} + + "@babel/helper-validator-identifier@7.27.1": {} + + "@babel/parser@7.27.5": + dependencies: + "@babel/types": 7.27.6 + + "@babel/types@7.27.6": + dependencies: + "@babel/helper-string-parser": 7.27.1 + "@babel/helper-validator-identifier": 7.27.1 + + "@emnapi/core@1.4.3": + dependencies: + "@emnapi/wasi-threads": 1.0.2 + tslib: 2.8.1 + optional: true + + "@emnapi/runtime@1.4.3": + dependencies: + tslib: 2.8.1 + optional: true + + "@emnapi/wasi-threads@1.0.2": + dependencies: + tslib: 2.8.1 + optional: true + + "@es-joy/jsdoccomment@0.50.2": + dependencies: + "@types/estree": 1.0.8 + "@typescript-eslint/types": 8.34.1 + comment-parser: 1.4.1 + esquery: 1.6.0 + jsdoc-type-pratt-parser: 4.1.0 + + "@es-joy/jsdoccomment@0.52.0": + dependencies: + "@types/estree": 1.0.8 + "@typescript-eslint/types": 8.34.1 + comment-parser: 1.4.1 + esquery: 1.6.0 + jsdoc-type-pratt-parser: 4.1.0 + + "@esbuild/aix-ppc64@0.25.5": + optional: true + + "@esbuild/android-arm64@0.25.5": + optional: true + + "@esbuild/android-arm@0.25.5": + optional: true + + "@esbuild/android-x64@0.25.5": + optional: true + + "@esbuild/darwin-arm64@0.25.5": + optional: true + + "@esbuild/darwin-x64@0.25.5": + optional: true + + "@esbuild/freebsd-arm64@0.25.5": + optional: true + + "@esbuild/freebsd-x64@0.25.5": + optional: true + + "@esbuild/linux-arm64@0.25.5": + optional: true + + "@esbuild/linux-arm@0.25.5": + optional: true + + "@esbuild/linux-ia32@0.25.5": + optional: true + + "@esbuild/linux-loong64@0.25.5": + optional: true + + "@esbuild/linux-mips64el@0.25.5": + optional: true + + "@esbuild/linux-ppc64@0.25.5": + optional: true + + "@esbuild/linux-riscv64@0.25.5": + optional: true + + "@esbuild/linux-s390x@0.25.5": + optional: true + + "@esbuild/linux-x64@0.25.5": + optional: true + + "@esbuild/netbsd-arm64@0.25.5": + optional: true + + "@esbuild/netbsd-x64@0.25.5": + optional: true + + "@esbuild/openbsd-arm64@0.25.5": + optional: true + + "@esbuild/openbsd-x64@0.25.5": + optional: true + + "@esbuild/sunos-x64@0.25.5": + optional: true + + "@esbuild/win32-arm64@0.25.5": + optional: true + + "@esbuild/win32-ia32@0.25.5": + optional: true + + "@esbuild/win32-x64@0.25.5": + optional: true + + "@eslint-community/eslint-plugin-eslint-comments@4.5.0(eslint@9.29.0(jiti@2.4.2))": + dependencies: + escape-string-regexp: 4.0.0 + eslint: 9.29.0(jiti@2.4.2) + ignore: 5.3.2 + + "@eslint-community/eslint-utils@4.7.0(eslint@9.29.0(jiti@2.4.2))": + dependencies: + eslint: 9.29.0(jiti@2.4.2) + eslint-visitor-keys: 3.4.3 + + "@eslint-community/regexpp@4.12.1": {} + + "@eslint/compat@1.3.0(eslint@9.29.0(jiti@2.4.2))": + optionalDependencies: + eslint: 9.29.0(jiti@2.4.2) + + "@eslint/config-array@0.20.1": + dependencies: + "@eslint/object-schema": 2.1.6 + debug: 4.4.1 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + "@eslint/config-helpers@0.2.3": {} + + "@eslint/core@0.13.0": + dependencies: + "@types/json-schema": 7.0.15 + + "@eslint/core@0.14.0": + dependencies: + "@types/json-schema": 7.0.15 + + "@eslint/core@0.15.0": + dependencies: + "@types/json-schema": 7.0.15 + + "@eslint/eslintrc@3.3.1": + dependencies: + ajv: 6.12.6 + debug: 4.4.1 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + "@eslint/js@9.29.0": {} + + "@eslint/markdown@6.6.0": + dependencies: + "@eslint/core": 0.14.0 + "@eslint/plugin-kit": 0.3.2 + github-slugger: 2.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-frontmatter: 2.0.1 + mdast-util-gfm: 3.1.0 + micromark-extension-frontmatter: 2.0.0 + micromark-extension-gfm: 3.0.0 + transitivePeerDependencies: + - supports-color + + "@eslint/object-schema@2.1.6": {} + + "@eslint/plugin-kit@0.2.8": + dependencies: + "@eslint/core": 0.13.0 + levn: 0.4.1 + + "@eslint/plugin-kit@0.3.2": + dependencies: + "@eslint/core": 0.15.0 + levn: 0.4.1 + + "@humanfs/core@0.19.1": {} + + "@humanfs/node@0.16.6": + dependencies: + "@humanfs/core": 0.19.1 + "@humanwhocodes/retry": 0.3.1 + + "@humanwhocodes/module-importer@1.0.1": {} + + "@humanwhocodes/retry@0.3.1": {} + + "@humanwhocodes/retry@0.4.3": {} + + "@isaacs/balanced-match@4.0.1": {} + + "@isaacs/brace-expansion@5.0.0": + dependencies: + "@isaacs/balanced-match": 4.0.1 + + "@jridgewell/gen-mapping@0.3.8": + dependencies: + "@jridgewell/set-array": 1.2.1 + "@jridgewell/sourcemap-codec": 1.5.0 + "@jridgewell/trace-mapping": 0.3.25 + + "@jridgewell/resolve-uri@3.1.2": {} + + "@jridgewell/set-array@1.2.1": {} + + "@jridgewell/sourcemap-codec@1.5.0": {} + + "@jridgewell/trace-mapping@0.3.25": + dependencies: + "@jridgewell/resolve-uri": 3.1.2 + "@jridgewell/sourcemap-codec": 1.5.0 + + "@napi-rs/wasm-runtime@0.2.11": + dependencies: + "@emnapi/core": 1.4.3 + "@emnapi/runtime": 1.4.3 + "@tybys/wasm-util": 0.9.0 + optional: true + + "@nodelib/fs.scandir@2.1.5": + dependencies: + "@nodelib/fs.stat": 2.0.5 + run-parallel: 1.2.0 + + "@nodelib/fs.stat@2.0.5": {} + + "@nodelib/fs.walk@1.2.8": + dependencies: + "@nodelib/fs.scandir": 2.1.5 + fastq: 1.19.1 + + "@oxc-project/types@0.70.0": {} + + "@pkgr/core@0.2.7": {} + + "@quansync/fs@0.1.3": + dependencies: + quansync: 0.2.10 + + "@rolldown/binding-darwin-arm64@1.0.0-beta.9": + optional: true + + "@rolldown/binding-darwin-x64@1.0.0-beta.9": + optional: true + + "@rolldown/binding-freebsd-x64@1.0.0-beta.9": + optional: true + + "@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.9": + optional: true + + "@rolldown/binding-linux-arm64-gnu@1.0.0-beta.9": + optional: true + + "@rolldown/binding-linux-arm64-musl@1.0.0-beta.9": + optional: true + + "@rolldown/binding-linux-x64-gnu@1.0.0-beta.9": + optional: true + + "@rolldown/binding-linux-x64-musl@1.0.0-beta.9": + optional: true + + "@rolldown/binding-wasm32-wasi@1.0.0-beta.9": + dependencies: + "@napi-rs/wasm-runtime": 0.2.11 + optional: true + + "@rolldown/binding-win32-arm64-msvc@1.0.0-beta.9": + optional: true + + "@rolldown/binding-win32-ia32-msvc@1.0.0-beta.9": + optional: true + + "@rolldown/binding-win32-x64-msvc@1.0.0-beta.9": + optional: true + + "@rolldown/pluginutils@1.0.0-beta.9": {} + + "@rollup/rollup-android-arm-eabi@4.44.0": + optional: true + + "@rollup/rollup-android-arm64@4.44.0": + optional: true + + "@rollup/rollup-darwin-arm64@4.44.0": + optional: true + + "@rollup/rollup-darwin-x64@4.44.0": + optional: true + + "@rollup/rollup-freebsd-arm64@4.44.0": + optional: true + + "@rollup/rollup-freebsd-x64@4.44.0": + optional: true + + "@rollup/rollup-linux-arm-gnueabihf@4.44.0": + optional: true + + "@rollup/rollup-linux-arm-musleabihf@4.44.0": + optional: true + + "@rollup/rollup-linux-arm64-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-arm64-musl@4.44.0": + optional: true + + "@rollup/rollup-linux-loongarch64-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-powerpc64le-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-riscv64-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-riscv64-musl@4.44.0": + optional: true + + "@rollup/rollup-linux-s390x-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-x64-gnu@4.44.0": + optional: true + + "@rollup/rollup-linux-x64-musl@4.44.0": + optional: true + + "@rollup/rollup-win32-arm64-msvc@4.44.0": + optional: true + + "@rollup/rollup-win32-ia32-msvc@4.44.0": + optional: true + + "@rollup/rollup-win32-x64-msvc@4.44.0": + optional: true + + "@sxzz/eslint-config@7.0.4(@typescript-eslint/eslint-plugin@8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(@typescript-eslint/utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)": + dependencies: + "@eslint-community/eslint-plugin-eslint-comments": 4.5.0(eslint@9.29.0(jiti@2.4.2)) + "@eslint/js": 9.29.0 + "@eslint/markdown": 6.6.0 + eslint: 9.29.0(jiti@2.4.2) + eslint-config-flat-gitignore: 2.1.0(eslint@9.29.0(jiti@2.4.2)) + eslint-config-prettier: 10.1.5(eslint@9.29.0(jiti@2.4.2)) + eslint-flat-config-utils: 2.1.0 + eslint-plugin-antfu: 3.1.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-command: 3.3.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-de-morgan: 1.3.0(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-import-x: 4.15.2(@typescript-eslint/utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-jsdoc: 51.2.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-jsonc: 2.20.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-n: 17.20.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + eslint-plugin-perfectionist: 4.15.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + eslint-plugin-pnpm: 0.3.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-prettier: 5.5.0(eslint-config-prettier@10.1.5(eslint@9.29.0(jiti@2.4.2)))(eslint@9.29.0(jiti@2.4.2))(prettier@3.6.0) + eslint-plugin-regexp: 2.9.0(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-sxzz: 0.3.0(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-unicorn: 59.0.1(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-unused-imports: 4.1.4(@typescript-eslint/eslint-plugin@8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2)) + eslint-plugin-vue: 10.2.0(eslint@9.29.0(jiti@2.4.2))(vue-eslint-parser@10.1.3(eslint@9.29.0(jiti@2.4.2))) + eslint-plugin-yml: 1.18.0(eslint@9.29.0(jiti@2.4.2)) + globals: 16.2.0 + jsonc-eslint-parser: 2.4.0 + local-pkg: 1.1.1 + prettier: 3.6.0 + typescript-eslint: 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + vue-eslint-parser: 10.1.3(eslint@9.29.0(jiti@2.4.2)) + yaml-eslint-parser: 1.3.0 + transitivePeerDependencies: + - "@eslint/json" + - "@types/eslint" + - "@typescript-eslint/eslint-plugin" + - "@typescript-eslint/utils" + - eslint-import-resolver-node + - supports-color + - typescript + + "@sxzz/prettier-config@2.2.1": {} + + "@tybys/wasm-util@0.9.0": + dependencies: + tslib: 2.8.1 + optional: true + + "@types/chai@5.2.2": + dependencies: + "@types/deep-eql": 4.0.2 + + "@types/debug@4.1.12": + dependencies: + "@types/ms": 2.1.0 + + "@types/deep-eql@4.0.2": {} + + "@types/estree@1.0.8": {} + + "@types/json-schema@7.0.15": {} + + "@types/mdast@4.0.4": + dependencies: + "@types/unist": 3.0.3 + + "@types/ms@2.1.0": {} + + "@types/node@22.15.32": + dependencies: + undici-types: 6.21.0 + + "@types/unist@3.0.3": {} + + "@typescript-eslint/eslint-plugin@8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)": + dependencies: + "@eslint-community/regexpp": 4.12.1 + "@typescript-eslint/parser": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@typescript-eslint/scope-manager": 8.34.1 + "@typescript-eslint/type-utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@typescript-eslint/visitor-keys": 8.34.1 + eslint: 9.29.0(jiti@2.4.2) + graphemer: 1.4.0 + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)": + dependencies: + "@typescript-eslint/scope-manager": 8.34.1 + "@typescript-eslint/types": 8.34.1 + "@typescript-eslint/typescript-estree": 8.34.1(typescript@5.8.3) + "@typescript-eslint/visitor-keys": 8.34.1 + debug: 4.4.1 + eslint: 9.29.0(jiti@2.4.2) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/project-service@8.34.1(typescript@5.8.3)": + dependencies: + "@typescript-eslint/tsconfig-utils": 8.34.1(typescript@5.8.3) + "@typescript-eslint/types": 8.34.1 + debug: 4.4.1 + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/scope-manager@8.34.1": + dependencies: + "@typescript-eslint/types": 8.34.1 + "@typescript-eslint/visitor-keys": 8.34.1 + + "@typescript-eslint/tsconfig-utils@8.34.1(typescript@5.8.3)": + dependencies: + typescript: 5.8.3 + + "@typescript-eslint/type-utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)": + dependencies: + "@typescript-eslint/typescript-estree": 8.34.1(typescript@5.8.3) + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + debug: 4.4.1 + eslint: 9.29.0(jiti@2.4.2) + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/types@8.34.1": {} + + "@typescript-eslint/typescript-estree@8.34.1(typescript@5.8.3)": + dependencies: + "@typescript-eslint/project-service": 8.34.1(typescript@5.8.3) + "@typescript-eslint/tsconfig-utils": 8.34.1(typescript@5.8.3) + "@typescript-eslint/types": 8.34.1 + "@typescript-eslint/visitor-keys": 8.34.1 + debug: 4.4.1 + fast-glob: 3.3.3 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.7.2 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)": + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@typescript-eslint/scope-manager": 8.34.1 + "@typescript-eslint/types": 8.34.1 + "@typescript-eslint/typescript-estree": 8.34.1(typescript@5.8.3) + eslint: 9.29.0(jiti@2.4.2) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/visitor-keys@8.34.1": + dependencies: + "@typescript-eslint/types": 8.34.1 + eslint-visitor-keys: 4.2.1 + + "@unrs/resolver-binding-android-arm-eabi@1.9.1": + optional: true + + "@unrs/resolver-binding-android-arm64@1.9.1": + optional: true + + "@unrs/resolver-binding-darwin-arm64@1.9.1": + optional: true + + "@unrs/resolver-binding-darwin-x64@1.9.1": + optional: true + + "@unrs/resolver-binding-freebsd-x64@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-arm-gnueabihf@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-arm-musleabihf@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-arm64-gnu@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-arm64-musl@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-ppc64-gnu@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-riscv64-gnu@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-riscv64-musl@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-s390x-gnu@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-x64-gnu@1.9.1": + optional: true + + "@unrs/resolver-binding-linux-x64-musl@1.9.1": + optional: true + + "@unrs/resolver-binding-wasm32-wasi@1.9.1": + dependencies: + "@napi-rs/wasm-runtime": 0.2.11 + optional: true + + "@unrs/resolver-binding-win32-arm64-msvc@1.9.1": + optional: true + + "@unrs/resolver-binding-win32-ia32-msvc@1.9.1": + optional: true + + "@unrs/resolver-binding-win32-x64-msvc@1.9.1": + optional: true + + "@vitest/expect@3.2.4": + dependencies: + "@types/chai": 5.2.2 + "@vitest/spy": 3.2.4 + "@vitest/utils": 3.2.4 + chai: 5.2.0 + tinyrainbow: 2.0.0 + + "@vitest/mocker@3.2.4(vite@6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0))": + dependencies: + "@vitest/spy": 3.2.4 + estree-walker: 3.0.3 + magic-string: 0.30.17 + optionalDependencies: + vite: 6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0) + + "@vitest/pretty-format@3.2.4": + dependencies: + tinyrainbow: 2.0.0 + + "@vitest/runner@3.2.4": + dependencies: + "@vitest/utils": 3.2.4 + pathe: 2.0.3 + strip-literal: 3.0.0 + + "@vitest/snapshot@3.2.4": + dependencies: + "@vitest/pretty-format": 3.2.4 + magic-string: 0.30.17 + pathe: 2.0.3 + + "@vitest/spy@3.2.4": + dependencies: + tinyspy: 4.0.3 + + "@vitest/utils@3.2.4": + dependencies: + "@vitest/pretty-format": 3.2.4 + loupe: 3.1.4 + tinyrainbow: 2.0.0 + + acorn-jsx@5.3.2(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + + acorn@8.15.0: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansis@4.1.0: {} + + are-docs-informative@0.0.2: {} + + argparse@2.0.1: {} + + args-tokenizer@0.3.0: {} + + assertion-error@2.0.1: {} + + ast-kit@2.1.0: + dependencies: + "@babel/parser": 7.27.5 + pathe: 2.0.3 + + balanced-match@1.0.2: {} + + birpc@2.4.0: {} + + boolbase@1.0.0: {} + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.25.0: + dependencies: + caniuse-lite: 1.0.30001724 + electron-to-chromium: 1.5.171 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.25.0) + + builtin-modules@5.0.0: {} + + bumpp@10.2.0: + dependencies: + ansis: 4.1.0 + args-tokenizer: 0.3.0 + c12: 3.0.4 + cac: 6.7.14 + escalade: 3.2.0 + jsonc-parser: 3.3.1 + package-manager-detector: 1.3.0 + semver: 7.7.2 + tinyexec: 1.0.1 + tinyglobby: 0.2.14 + yaml: 2.8.0 + transitivePeerDependencies: + - magicast + + c12@3.0.4: + dependencies: + chokidar: 4.0.3 + confbox: 0.2.2 + defu: 6.1.4 + dotenv: 16.5.0 + exsolve: 1.0.7 + giget: 2.0.0 + jiti: 2.4.2 + ohash: 2.0.11 + pathe: 2.0.3 + perfect-debounce: 1.0.0 + pkg-types: 2.1.0 + rc9: 2.1.2 + + cac@6.7.14: {} + + callsites@3.1.0: {} + + caniuse-lite@1.0.30001724: {} + + ccount@2.0.1: {} + + chai@5.2.0: + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.4 + pathval: 2.0.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + character-entities@2.0.2: {} + + check-error@2.1.1: {} + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + ci-info@4.2.0: {} + + citty@0.1.6: + dependencies: + consola: 3.4.2 + + clean-regexp@1.0.0: + dependencies: + escape-string-regexp: 1.0.5 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + comment-parser@1.4.1: {} + + concat-map@0.0.1: {} + + confbox@0.1.8: {} + + confbox@0.2.2: {} + + consola@3.4.2: {} + + core-js-compat@3.43.0: + dependencies: + browserslist: 4.25.0 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + cssesc@3.0.0: {} + + debug@4.4.1: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.2.0: + dependencies: + character-entities: 2.0.2 + + deep-eql@5.0.2: {} + + deep-is@0.1.4: {} + + defu@6.1.4: {} + + dequal@2.0.3: {} + + destr@2.0.5: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + diff@8.0.2: {} + + dotenv@16.5.0: {} + + dts-resolver@2.1.1: {} + + electron-to-chromium@1.5.171: {} + + empathic@1.1.0: {} + + enhanced-resolve@5.18.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.2 + + es-module-lexer@1.7.0: {} + + esbuild@0.25.5: + optionalDependencies: + "@esbuild/aix-ppc64": 0.25.5 + "@esbuild/android-arm": 0.25.5 + "@esbuild/android-arm64": 0.25.5 + "@esbuild/android-x64": 0.25.5 + "@esbuild/darwin-arm64": 0.25.5 + "@esbuild/darwin-x64": 0.25.5 + "@esbuild/freebsd-arm64": 0.25.5 + "@esbuild/freebsd-x64": 0.25.5 + "@esbuild/linux-arm": 0.25.5 + "@esbuild/linux-arm64": 0.25.5 + "@esbuild/linux-ia32": 0.25.5 + "@esbuild/linux-loong64": 0.25.5 + "@esbuild/linux-mips64el": 0.25.5 + "@esbuild/linux-ppc64": 0.25.5 + "@esbuild/linux-riscv64": 0.25.5 + "@esbuild/linux-s390x": 0.25.5 + "@esbuild/linux-x64": 0.25.5 + "@esbuild/netbsd-arm64": 0.25.5 + "@esbuild/netbsd-x64": 0.25.5 + "@esbuild/openbsd-arm64": 0.25.5 + "@esbuild/openbsd-x64": 0.25.5 + "@esbuild/sunos-x64": 0.25.5 + "@esbuild/win32-arm64": 0.25.5 + "@esbuild/win32-ia32": 0.25.5 + "@esbuild/win32-x64": 0.25.5 + + escalade@3.2.0: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-compat-utils@0.5.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + semver: 7.7.2 + + eslint-compat-utils@0.6.5(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + semver: 7.7.2 + + eslint-config-flat-gitignore@2.1.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@eslint/compat": 1.3.0(eslint@9.29.0(jiti@2.4.2)) + eslint: 9.29.0(jiti@2.4.2) + + eslint-config-prettier@10.1.5(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + + eslint-flat-config-utils@2.1.0: + dependencies: + pathe: 2.0.3 + + eslint-import-context@0.1.8(unrs-resolver@1.9.1): + dependencies: + get-tsconfig: 4.10.1 + stable-hash-x: 0.1.1 + optionalDependencies: + unrs-resolver: 1.9.1 + + eslint-json-compat-utils@0.2.1(eslint@9.29.0(jiti@2.4.2))(jsonc-eslint-parser@2.4.0): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + esquery: 1.6.0 + jsonc-eslint-parser: 2.4.0 + + eslint-plugin-antfu@3.1.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + + eslint-plugin-command@3.3.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@es-joy/jsdoccomment": 0.50.2 + eslint: 9.29.0(jiti@2.4.2) + + eslint-plugin-de-morgan@1.3.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + + eslint-plugin-es-x@7.8.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@eslint-community/regexpp": 4.12.1 + eslint: 9.29.0(jiti@2.4.2) + eslint-compat-utils: 0.5.1(eslint@9.29.0(jiti@2.4.2)) + + eslint-plugin-import-x@4.15.2(@typescript-eslint/utils@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@typescript-eslint/types": 8.34.1 + comment-parser: 1.4.1 + debug: 4.4.1 + eslint: 9.29.0(jiti@2.4.2) + eslint-import-context: 0.1.8(unrs-resolver@1.9.1) + is-glob: 4.0.3 + minimatch: 10.0.3 + semver: 7.7.2 + stable-hash-x: 0.1.1 + unrs-resolver: 1.9.1 + optionalDependencies: + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + transitivePeerDependencies: + - supports-color + + eslint-plugin-jsdoc@51.2.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@es-joy/jsdoccomment": 0.52.0 + are-docs-informative: 0.0.2 + comment-parser: 1.4.1 + debug: 4.4.1 + escape-string-regexp: 4.0.0 + eslint: 9.29.0(jiti@2.4.2) + espree: 10.4.0 + esquery: 1.6.0 + parse-imports-exports: 0.2.4 + semver: 7.7.2 + spdx-expression-parse: 4.0.0 + transitivePeerDependencies: + - supports-color + + eslint-plugin-jsonc@2.20.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + eslint: 9.29.0(jiti@2.4.2) + eslint-compat-utils: 0.6.5(eslint@9.29.0(jiti@2.4.2)) + eslint-json-compat-utils: 0.2.1(eslint@9.29.0(jiti@2.4.2))(jsonc-eslint-parser@2.4.0) + espree: 10.4.0 + graphemer: 1.4.0 + jsonc-eslint-parser: 2.4.0 + natural-compare: 1.4.0 + synckit: 0.11.8 + transitivePeerDependencies: + - "@eslint/json" + + eslint-plugin-n@17.20.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + enhanced-resolve: 5.18.1 + eslint: 9.29.0(jiti@2.4.2) + eslint-plugin-es-x: 7.8.0(eslint@9.29.0(jiti@2.4.2)) + get-tsconfig: 4.10.1 + globals: 15.15.0 + ignore: 5.3.2 + minimatch: 9.0.5 + semver: 7.7.2 + ts-declaration-location: 1.0.7(typescript@5.8.3) + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-perfectionist@4.15.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + "@typescript-eslint/types": 8.34.1 + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.29.0(jiti@2.4.2) + natural-orderby: 5.0.0 + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-pnpm@0.3.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + find-up-simple: 1.0.1 + jsonc-eslint-parser: 2.4.0 + pathe: 2.0.3 + pnpm-workspace-yaml: 0.3.1 + tinyglobby: 0.2.14 + yaml-eslint-parser: 1.3.0 + + eslint-plugin-prettier@5.5.0(eslint-config-prettier@10.1.5(eslint@9.29.0(jiti@2.4.2)))(eslint@9.29.0(jiti@2.4.2))(prettier@3.6.0): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + prettier: 3.6.0 + prettier-linter-helpers: 1.0.0 + synckit: 0.11.8 + optionalDependencies: + eslint-config-prettier: 10.1.5(eslint@9.29.0(jiti@2.4.2)) + + eslint-plugin-regexp@2.9.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@eslint-community/regexpp": 4.12.1 + comment-parser: 1.4.1 + eslint: 9.29.0(jiti@2.4.2) + jsdoc-type-pratt-parser: 4.1.0 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + scslre: 0.3.0 + + eslint-plugin-sxzz@0.3.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + + eslint-plugin-unicorn@59.0.1(eslint@9.29.0(jiti@2.4.2)): + dependencies: + "@babel/helper-validator-identifier": 7.27.1 + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@eslint/plugin-kit": 0.2.8 + ci-info: 4.2.0 + clean-regexp: 1.0.0 + core-js-compat: 3.43.0 + eslint: 9.29.0(jiti@2.4.2) + esquery: 1.6.0 + find-up-simple: 1.0.1 + globals: 16.2.0 + indent-string: 5.0.0 + is-builtin-module: 5.0.0 + jsesc: 3.1.0 + pluralize: 8.0.0 + regexp-tree: 0.1.27 + regjsparser: 0.12.0 + semver: 7.7.2 + strip-indent: 4.0.0 + + eslint-plugin-unused-imports@4.1.4(@typescript-eslint/eslint-plugin@8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2)): + dependencies: + eslint: 9.29.0(jiti@2.4.2) + optionalDependencies: + "@typescript-eslint/eslint-plugin": 8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + + eslint-plugin-vue@10.2.0(eslint@9.29.0(jiti@2.4.2))(vue-eslint-parser@10.1.3(eslint@9.29.0(jiti@2.4.2))): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + eslint: 9.29.0(jiti@2.4.2) + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 6.1.2 + semver: 7.7.2 + vue-eslint-parser: 10.1.3(eslint@9.29.0(jiti@2.4.2)) + xml-name-validator: 4.0.0 + + eslint-plugin-yml@1.18.0(eslint@9.29.0(jiti@2.4.2)): + dependencies: + debug: 4.4.1 + escape-string-regexp: 4.0.0 + eslint: 9.29.0(jiti@2.4.2) + eslint-compat-utils: 0.6.5(eslint@9.29.0(jiti@2.4.2)) + natural-compare: 1.4.0 + yaml-eslint-parser: 1.3.0 + transitivePeerDependencies: + - supports-color + + eslint-scope@8.4.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.1: {} + + eslint@9.29.0(jiti@2.4.2): + dependencies: + "@eslint-community/eslint-utils": 4.7.0(eslint@9.29.0(jiti@2.4.2)) + "@eslint-community/regexpp": 4.12.1 + "@eslint/config-array": 0.20.1 + "@eslint/config-helpers": 0.2.3 + "@eslint/core": 0.14.0 + "@eslint/eslintrc": 3.3.1 + "@eslint/js": 9.29.0 + "@eslint/plugin-kit": 0.3.2 + "@humanfs/node": 0.16.6 + "@humanwhocodes/module-importer": 1.0.1 + "@humanwhocodes/retry": 0.4.3 + "@types/estree": 1.0.8 + "@types/json-schema": 7.0.15 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.1 + escape-string-regexp: 4.0.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.4.2 + transitivePeerDependencies: + - supports-color + + espree@10.4.0: + dependencies: + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 4.2.1 + + espree@9.6.1: + dependencies: + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 3.4.3 + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@3.0.3: + dependencies: + "@types/estree": 1.0.8 + + esutils@2.0.3: {} + + expect-type@1.2.1: {} + + exsolve@1.0.7: {} + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.3: + dependencies: + "@nodelib/fs.stat": 2.0.5 + "@nodelib/fs.walk": 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.19.1: + dependencies: + reusify: 1.1.0 + + fault@2.0.1: + dependencies: + format: 0.2.2 + + fdir@6.4.6(picomatch@4.0.2): + optionalDependencies: + picomatch: 4.0.2 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up-simple@1.0.1: {} + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.3 + keyv: 4.5.4 + + flatted@3.3.3: {} + + format@0.2.2: {} + + fsevents@2.3.3: + optional: true + + get-tsconfig@4.10.1: + dependencies: + resolve-pkg-maps: 1.0.0 + + giget@2.0.0: + dependencies: + citty: 0.1.6 + consola: 3.4.2 + defu: 6.1.4 + node-fetch-native: 1.6.6 + nypm: 0.6.0 + pathe: 2.0.3 + + github-slugger@2.0.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + globals@14.0.0: {} + + globals@15.15.0: {} + + globals@16.2.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + happy-dom@17.6.3: + dependencies: + webidl-conversions: 7.0.0 + whatwg-mimetype: 3.0.0 + + has-flag@4.0.0: {} + + hookable@5.5.3: {} + + ignore@5.3.2: {} + + ignore@7.0.5: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + indent-string@5.0.0: {} + + is-builtin-module@5.0.0: + dependencies: + builtin-modules: 5.0.0 + + is-extglob@2.1.1: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + isexe@2.0.0: {} + + jiti@2.4.2: {} + + js-tokens@9.0.1: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsdoc-type-pratt-parser@4.1.0: {} + + jsesc@3.0.2: {} + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + jsonc-eslint-parser@2.4.0: + dependencies: + acorn: 8.15.0 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + semver: 7.7.2 + + jsonc-parser@3.3.1: {} + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + local-pkg@1.1.1: + dependencies: + mlly: 1.7.4 + pkg-types: 2.1.0 + quansync: 0.2.10 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + lodash@4.17.21: {} + + longest-streak@3.1.0: {} + + loupe@3.1.4: {} + + magic-string@0.30.17: + dependencies: + "@jridgewell/sourcemap-codec": 1.5.0 + + markdown-table@3.0.4: {} + + mdast-util-find-and-replace@3.0.2: + dependencies: + "@types/mdast": 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + mdast-util-from-markdown@2.0.2: + dependencies: + "@types/mdast": 4.0.4 + "@types/unist": 3.0.3 + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-frontmatter@2.0.1: + dependencies: + "@types/mdast": 4.0.4 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + "@types/mdast": 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.1.0: + dependencies: + "@types/mdast": 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + "@types/mdast": 4.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + "@types/mdast": 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + "@types/mdast": 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.1.0: + dependencies: + mdast-util-from-markdown: 2.0.2 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.1.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + "@types/mdast": 4.0.4 + unist-util-is: 6.0.0 + + mdast-util-to-markdown@2.1.2: + dependencies: + "@types/mdast": 4.0.4 + "@types/unist": 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + "@types/mdast": 4.0.4 + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-frontmatter@2.0.0: + dependencies: + fault: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.2 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.2.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + "@types/debug": 4.1.12 + debug: 4.4.1 + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + min-indent@1.0.1: {} + + minimatch@10.0.3: + dependencies: + "@isaacs/brace-expansion": 5.0.0 + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.12 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.2 + + mlly@1.7.4: + dependencies: + acorn: 8.15.0 + pathe: 2.0.3 + pkg-types: 1.3.1 + ufo: 1.6.1 + + ms@2.1.3: {} + + nanoid@3.3.11: {} + + napi-postinstall@0.2.4: {} + + natural-compare@1.4.0: {} + + natural-orderby@5.0.0: {} + + node-fetch-native@1.6.6: {} + + node-releases@2.0.19: {} + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + nypm@0.6.0: + dependencies: + citty: 0.1.6 + consola: 3.4.2 + pathe: 2.0.3 + pkg-types: 2.1.0 + tinyexec: 0.3.2 + + ohash@2.0.11: {} + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + package-manager-detector@1.3.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-imports-exports@0.2.4: + dependencies: + parse-statements: 1.0.11 + + parse-statements@1.0.11: {} + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + pathe@2.0.3: {} + + pathval@2.0.0: {} + + perfect-debounce@1.0.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.2: {} + + pkg-types@1.3.1: + dependencies: + confbox: 0.1.8 + mlly: 1.7.4 + pathe: 2.0.3 + + pkg-types@2.1.0: + dependencies: + confbox: 0.2.2 + exsolve: 1.0.7 + pathe: 2.0.3 + + pluralize@8.0.0: {} + + pnpm-workspace-yaml@0.3.1: + dependencies: + yaml: 2.8.0 + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.5.6: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + + prettier@3.6.0: {} + + punycode@2.3.1: {} + + quansync@0.2.10: {} + + queue-microtask@1.2.3: {} + + rc9@2.1.2: + dependencies: + defu: 6.1.4 + destr: 2.0.5 + + readdirp@4.1.2: {} + + refa@0.12.1: + dependencies: + "@eslint-community/regexpp": 4.12.1 + + regexp-ast-analysis@0.7.1: + dependencies: + "@eslint-community/regexpp": 4.12.1 + refa: 0.12.1 + + regexp-tree@0.1.27: {} + + regjsparser@0.12.0: + dependencies: + jsesc: 3.0.2 + + resolve-from@4.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + reusify@1.1.0: {} + + rolldown-plugin-dts@0.13.12(rolldown@1.0.0-beta.9)(typescript@5.8.3): + dependencies: + "@babel/generator": 7.27.5 + "@babel/parser": 7.27.5 + "@babel/types": 7.27.6 + ast-kit: 2.1.0 + birpc: 2.4.0 + debug: 4.4.1 + dts-resolver: 2.1.1 + get-tsconfig: 4.10.1 + rolldown: 1.0.0-beta.9 + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - oxc-resolver + - supports-color + + rolldown@1.0.0-beta.9: + dependencies: + "@oxc-project/types": 0.70.0 + "@rolldown/pluginutils": 1.0.0-beta.9 + ansis: 4.1.0 + optionalDependencies: + "@rolldown/binding-darwin-arm64": 1.0.0-beta.9 + "@rolldown/binding-darwin-x64": 1.0.0-beta.9 + "@rolldown/binding-freebsd-x64": 1.0.0-beta.9 + "@rolldown/binding-linux-arm-gnueabihf": 1.0.0-beta.9 + "@rolldown/binding-linux-arm64-gnu": 1.0.0-beta.9 + "@rolldown/binding-linux-arm64-musl": 1.0.0-beta.9 + "@rolldown/binding-linux-x64-gnu": 1.0.0-beta.9 + "@rolldown/binding-linux-x64-musl": 1.0.0-beta.9 + "@rolldown/binding-wasm32-wasi": 1.0.0-beta.9 + "@rolldown/binding-win32-arm64-msvc": 1.0.0-beta.9 + "@rolldown/binding-win32-ia32-msvc": 1.0.0-beta.9 + "@rolldown/binding-win32-x64-msvc": 1.0.0-beta.9 + + rollup@4.44.0: + dependencies: + "@types/estree": 1.0.8 + optionalDependencies: + "@rollup/rollup-android-arm-eabi": 4.44.0 + "@rollup/rollup-android-arm64": 4.44.0 + "@rollup/rollup-darwin-arm64": 4.44.0 + "@rollup/rollup-darwin-x64": 4.44.0 + "@rollup/rollup-freebsd-arm64": 4.44.0 + "@rollup/rollup-freebsd-x64": 4.44.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.44.0 + "@rollup/rollup-linux-arm-musleabihf": 4.44.0 + "@rollup/rollup-linux-arm64-gnu": 4.44.0 + "@rollup/rollup-linux-arm64-musl": 4.44.0 + "@rollup/rollup-linux-loongarch64-gnu": 4.44.0 + "@rollup/rollup-linux-powerpc64le-gnu": 4.44.0 + "@rollup/rollup-linux-riscv64-gnu": 4.44.0 + "@rollup/rollup-linux-riscv64-musl": 4.44.0 + "@rollup/rollup-linux-s390x-gnu": 4.44.0 + "@rollup/rollup-linux-x64-gnu": 4.44.0 + "@rollup/rollup-linux-x64-musl": 4.44.0 + "@rollup/rollup-win32-arm64-msvc": 4.44.0 + "@rollup/rollup-win32-ia32-msvc": 4.44.0 + "@rollup/rollup-win32-x64-msvc": 4.44.0 + fsevents: 2.3.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + scslre@0.3.0: + dependencies: + "@eslint-community/regexpp": 4.12.1 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + + semver@7.7.2: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + siginfo@2.0.0: {} + + source-map-js@1.2.1: {} + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@4.0.0: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.21 + + spdx-license-ids@3.0.21: {} + + stable-hash-x@0.1.1: {} + + stackback@0.0.2: {} + + std-env@3.9.0: {} + + strip-indent@4.0.0: + dependencies: + min-indent: 1.0.1 + + strip-json-comments@3.1.1: {} + + strip-literal@3.0.0: + dependencies: + js-tokens: 9.0.1 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + synckit@0.11.8: + dependencies: + "@pkgr/core": 0.2.7 + + tapable@2.2.2: {} + + tinybench@2.9.0: {} + + tinyexec@0.3.2: {} + + tinyexec@1.0.1: {} + + tinyglobby@0.2.14: + dependencies: + fdir: 6.4.6(picomatch@4.0.2) + picomatch: 4.0.2 + + tinypool@1.1.1: {} + + tinyrainbow@2.0.0: {} + + tinyspy@4.0.3: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + ts-api-utils@2.1.0(typescript@5.8.3): + dependencies: + typescript: 5.8.3 + + ts-declaration-location@1.0.7(typescript@5.8.3): + dependencies: + picomatch: 4.0.2 + typescript: 5.8.3 + + tsdown@0.11.13(typescript@5.8.3): + dependencies: + ansis: 4.1.0 + cac: 6.7.14 + chokidar: 4.0.3 + debug: 4.4.1 + diff: 8.0.2 + empathic: 1.1.0 + hookable: 5.5.3 + rolldown: 1.0.0-beta.9 + rolldown-plugin-dts: 0.13.12(rolldown@1.0.0-beta.9)(typescript@5.8.3) + semver: 7.7.2 + tinyexec: 1.0.1 + tinyglobby: 0.2.14 + unconfig: 7.3.2 + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - "@oxc-project/runtime" + - "@typescript/native-preview" + - oxc-resolver + - supports-color + - vue-tsc + + tslib@2.8.1: + optional: true + + tsx@4.20.3: + dependencies: + esbuild: 0.25.5 + get-tsconfig: 4.10.1 + optionalDependencies: + fsevents: 2.3.3 + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + typescript-eslint@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + "@typescript-eslint/eslint-plugin": 8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@typescript-eslint/parser": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + "@typescript-eslint/utils": 8.34.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.29.0(jiti@2.4.2) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + typescript@5.8.3: {} + + ufo@1.6.1: {} + + unconfig@7.3.2: + dependencies: + "@quansync/fs": 0.1.3 + defu: 6.1.4 + jiti: 2.4.2 + quansync: 0.2.10 + + undici-types@6.21.0: {} + + unist-util-is@6.0.0: + dependencies: + "@types/unist": 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + "@types/unist": 3.0.3 + + unist-util-visit-parents@6.0.1: + dependencies: + "@types/unist": 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@5.0.0: + dependencies: + "@types/unist": 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + unrs-resolver@1.9.1: + dependencies: + napi-postinstall: 0.2.4 + optionalDependencies: + "@unrs/resolver-binding-android-arm-eabi": 1.9.1 + "@unrs/resolver-binding-android-arm64": 1.9.1 + "@unrs/resolver-binding-darwin-arm64": 1.9.1 + "@unrs/resolver-binding-darwin-x64": 1.9.1 + "@unrs/resolver-binding-freebsd-x64": 1.9.1 + "@unrs/resolver-binding-linux-arm-gnueabihf": 1.9.1 + "@unrs/resolver-binding-linux-arm-musleabihf": 1.9.1 + "@unrs/resolver-binding-linux-arm64-gnu": 1.9.1 + "@unrs/resolver-binding-linux-arm64-musl": 1.9.1 + "@unrs/resolver-binding-linux-ppc64-gnu": 1.9.1 + "@unrs/resolver-binding-linux-riscv64-gnu": 1.9.1 + "@unrs/resolver-binding-linux-riscv64-musl": 1.9.1 + "@unrs/resolver-binding-linux-s390x-gnu": 1.9.1 + "@unrs/resolver-binding-linux-x64-gnu": 1.9.1 + "@unrs/resolver-binding-linux-x64-musl": 1.9.1 + "@unrs/resolver-binding-wasm32-wasi": 1.9.1 + "@unrs/resolver-binding-win32-arm64-msvc": 1.9.1 + "@unrs/resolver-binding-win32-ia32-msvc": 1.9.1 + "@unrs/resolver-binding-win32-x64-msvc": 1.9.1 + + update-browserslist-db@1.1.3(browserslist@4.25.0): + dependencies: + browserslist: 4.25.0 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + vite-node@3.2.4(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0): + dependencies: + cac: 6.7.14 + debug: 4.4.1 + es-module-lexer: 1.7.0 + pathe: 2.0.3 + vite: 6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0) + transitivePeerDependencies: + - "@types/node" + - jiti + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + + vite@6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0): + dependencies: + esbuild: 0.25.5 + fdir: 6.4.6(picomatch@4.0.2) + picomatch: 4.0.2 + postcss: 8.5.6 + rollup: 4.44.0 + tinyglobby: 0.2.14 + optionalDependencies: + "@types/node": 22.15.32 + fsevents: 2.3.3 + jiti: 2.4.2 + tsx: 4.20.3 + yaml: 2.8.0 + + vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.15.32)(happy-dom@17.6.3)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0): + dependencies: + "@types/chai": 5.2.2 + "@vitest/expect": 3.2.4 + "@vitest/mocker": 3.2.4(vite@6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0)) + "@vitest/pretty-format": 3.2.4 + "@vitest/runner": 3.2.4 + "@vitest/snapshot": 3.2.4 + "@vitest/spy": 3.2.4 + "@vitest/utils": 3.2.4 + chai: 5.2.0 + debug: 4.4.1 + expect-type: 1.2.1 + magic-string: 0.30.17 + pathe: 2.0.3 + picomatch: 4.0.2 + std-env: 3.9.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.14 + tinypool: 1.1.1 + tinyrainbow: 2.0.0 + vite: 6.3.5(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0) + vite-node: 3.2.4(@types/node@22.15.32)(jiti@2.4.2)(tsx@4.20.3)(yaml@2.8.0) + why-is-node-running: 2.3.0 + optionalDependencies: + "@types/debug": 4.1.12 + "@types/node": 22.15.32 + happy-dom: 17.6.3 + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + + vue-eslint-parser@10.1.3(eslint@9.29.0(jiti@2.4.2)): + dependencies: + debug: 4.4.1 + eslint: 9.29.0(jiti@2.4.2) + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.6.0 + lodash: 4.17.21 + semver: 7.7.2 + transitivePeerDependencies: + - supports-color + + webidl-conversions@7.0.0: {} + + whatwg-mimetype@3.0.0: {} + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + + word-wrap@1.2.5: {} + + xml-name-validator@4.0.0: {} + + yaml-eslint-parser@1.3.0: + dependencies: + eslint-visitor-keys: 3.4.3 + yaml: 2.8.0 + + yaml@2.8.0: {} + + yocto-queue@0.1.0: {} + + zwitch@2.0.4: {} diff --git a/libs/typescript/core/src/index.ts b/libs/typescript/core/src/index.ts new file mode 100644 index 00000000..da86d36e --- /dev/null +++ b/libs/typescript/core/src/index.ts @@ -0,0 +1,3 @@ +export const myFunction = () => { + return 'Hello, world!' +} diff --git a/libs/typescript/core/tests/index.test.ts b/libs/typescript/core/tests/index.test.ts new file mode 100644 index 00000000..3ef6cded --- /dev/null +++ b/libs/typescript/core/tests/index.test.ts @@ -0,0 +1,6 @@ +import { expect, test } from 'vitest' +import { myFunction } from '../src' + +test('myFunction', () => { + expect(myFunction()).toBe('Hello, world!') +}) diff --git a/libs/typescript/core/tsconfig.json b/libs/typescript/core/tsconfig.json new file mode 100644 index 00000000..77b838a8 --- /dev/null +++ b/libs/typescript/core/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "esnext", + "lib": ["es2023"], + "moduleDetection": "force", + "module": "preserve", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "types": ["node"], + "strict": true, + "noUnusedLocals": true, + "declaration": true, + "emitDeclarationOnly": true, + "esModuleInterop": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true + }, + "include": ["src"] +} diff --git a/libs/typescript/core/tsdown.config.ts b/libs/typescript/core/tsdown.config.ts new file mode 100644 index 00000000..f30bbedd --- /dev/null +++ b/libs/typescript/core/tsdown.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'tsdown' + +export default defineConfig([ + { + entry: ['./src/index.ts'], + platform: 'neutral', + dts: true, + }, +]) diff --git a/libs/typescript/core/vitest.config.ts b/libs/typescript/core/vitest.config.ts new file mode 100644 index 00000000..abed6b21 --- /dev/null +++ b/libs/typescript/core/vitest.config.ts @@ -0,0 +1,3 @@ +import { defineConfig } from 'vitest/config' + +export default defineConfig({})