From 587d606a080212cc9bc8f7c739f2175bf11c353f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Knuchel?=
Date: Fri, 22 Nov 2024 12:30:07 +0100
Subject: [PATCH 01/20] Move desktop and browser-enxtension in subfolder
---
.dockerignore | 6 +-
.pre-commit-config.yaml | 4 +-
.../docs/create-your-project.html.heex | 10 +-
.../website/docs/getting-started.html.heex | 7 +
.../website/docs/what-is-azimutt.html.heex | 7 +-
.../browser-extension}/.gitignore | 0
.../browser-extension}/README.md | 0
.../browser-extension}/build.js | 0
.../browser-extension}/build.watch.js | 0
.../browser-extension}/package.json | 2 +-
.../public/assets/azimutt_128.png | Bin
.../public/assets/azimutt_16.png | Bin
.../public/assets/azimutt_32.png | Bin
.../public/assets/azimutt_48.png | Bin
.../browser-extension}/public/manifest.json | 0
.../browser-extension}/public/manifest2.json | 0
.../browser-extension}/src/appendButton.ts | 0
.../browser-extension}/src/background.ts | 0
.../browser-extension}/tsconfig.json | 0
.../desktop}/.eslintrc.json | 0
{desktop => extensions/desktop}/.gitignore | 0
{desktop => extensions/desktop}/README.md | 0
.../desktop}/forge.config.ts | 0
.../desktop}/images/icon.icns | Bin
.../desktop}/images/icon.ico | Bin
.../desktop}/images/icon.png | Bin
{desktop => extensions/desktop}/package.json | 2 +-
.../desktop}/src/main/bridge.ts | 0
.../desktop}/src/main/index.ts | 0
.../desktop}/src/main/logger.ts | 0
.../desktop}/src/preload.ts | 0
.../desktop}/src/renderer/index.css | 0
.../desktop}/src/renderer/index.html | 0
.../desktop}/src/renderer/index.ts | 0
{desktop => extensions/desktop}/tsconfig.json | 0
.../desktop}/webpack.main.config.ts | 0
.../desktop}/webpack.plugins.ts | 0
.../desktop}/webpack.renderer.config.ts | 0
.../desktop}/webpack.rules.ts | 0
gateway/README.md | 2 +-
integration/README.md | 17 ---
integration/compose.yaml | 74 ---------
integration/mysql.sql | 7 -
integration/postgres.sql | 126 ---------------
libs/connector-bigquery/README.md | 2 +-
libs/connector-couchbase/README.md | 2 +-
libs/connector-mariadb/README.md | 2 +-
libs/connector-mongodb/README.md | 2 +-
libs/connector-mysql/README.md | 2 +-
libs/connector-oracle/README.md | 2 +-
libs/connector-postgres/README.md | 2 +-
libs/connector-snowflake/README.md | 2 +-
libs/connector-sqlserver/README.md | 2 +-
package.json | 2 +-
pnpm-lock.yaml | 144 +++++++++---------
pnpm-workspace.yaml | 3 +-
56 files changed, 105 insertions(+), 326 deletions(-)
rename {browser-extension => extensions/browser-extension}/.gitignore (100%)
rename {browser-extension => extensions/browser-extension}/README.md (100%)
rename {browser-extension => extensions/browser-extension}/build.js (100%)
rename {browser-extension => extensions/browser-extension}/build.watch.js (100%)
rename {browser-extension => extensions/browser-extension}/package.json (93%)
rename {browser-extension => extensions/browser-extension}/public/assets/azimutt_128.png (100%)
rename {browser-extension => extensions/browser-extension}/public/assets/azimutt_16.png (100%)
rename {browser-extension => extensions/browser-extension}/public/assets/azimutt_32.png (100%)
rename {browser-extension => extensions/browser-extension}/public/assets/azimutt_48.png (100%)
rename {browser-extension => extensions/browser-extension}/public/manifest.json (100%)
rename {browser-extension => extensions/browser-extension}/public/manifest2.json (100%)
rename {browser-extension => extensions/browser-extension}/src/appendButton.ts (100%)
rename {browser-extension => extensions/browser-extension}/src/background.ts (100%)
rename {browser-extension => extensions/browser-extension}/tsconfig.json (100%)
rename {desktop => extensions/desktop}/.eslintrc.json (100%)
rename {desktop => extensions/desktop}/.gitignore (100%)
rename {desktop => extensions/desktop}/README.md (100%)
rename {desktop => extensions/desktop}/forge.config.ts (100%)
rename {desktop => extensions/desktop}/images/icon.icns (100%)
rename {desktop => extensions/desktop}/images/icon.ico (100%)
rename {desktop => extensions/desktop}/images/icon.png (100%)
rename {desktop => extensions/desktop}/package.json (98%)
rename {desktop => extensions/desktop}/src/main/bridge.ts (100%)
rename {desktop => extensions/desktop}/src/main/index.ts (100%)
rename {desktop => extensions/desktop}/src/main/logger.ts (100%)
rename {desktop => extensions/desktop}/src/preload.ts (100%)
rename {desktop => extensions/desktop}/src/renderer/index.css (100%)
rename {desktop => extensions/desktop}/src/renderer/index.html (100%)
rename {desktop => extensions/desktop}/src/renderer/index.ts (100%)
rename {desktop => extensions/desktop}/tsconfig.json (100%)
rename {desktop => extensions/desktop}/webpack.main.config.ts (100%)
rename {desktop => extensions/desktop}/webpack.plugins.ts (100%)
rename {desktop => extensions/desktop}/webpack.renderer.config.ts (100%)
rename {desktop => extensions/desktop}/webpack.rules.ts (100%)
delete mode 100644 integration/README.md
delete mode 100644 integration/compose.yaml
delete mode 100644 integration/mysql.sql
delete mode 100644 integration/postgres.sql
diff --git a/.dockerignore b/.dockerignore
index 1e032daad..c0b801dbe 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -104,9 +104,9 @@ backend/priv/static/elm/**/dist
backend/priv/static/elm/**/script.js
backend/priv/static/elm/**/script.js.map
-# flyctl launch added from browser-extension/.gitignore
-browser-extension/**/dist
-browser-extension/**/node_modules
+# flyctl launch added from extensions/browser-extension/.gitignore
+extensions/browser-extension/**/dist
+extensions/browser-extension/**/node_modules
# flyctl launch added from frontend/.gitignore
frontend/.coverage
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 89ee65faf..62e63516e 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -189,8 +189,8 @@ repos:
pass_filenames: false
files: cli/.*\.ts*$
- # No test or build for browser-extension
- # No test or build for desktop
+ # No test or build for extensions/browser-extension
+ # No test or build for extensions/desktop
- repo: https://github.com/commitizen-tools/commitizen
rev: v2.32.2
diff --git a/backend/lib/azimutt_web/templates/website/docs/create-your-project.html.heex b/backend/lib/azimutt_web/templates/website/docs/create-your-project.html.heex
index fab2ae3ff..5adbe161a 100644
--- a/backend/lib/azimutt_web/templates/website/docs/create-your-project.html.heex
+++ b/backend/lib/azimutt_web/templates/website/docs/create-your-project.html.heex
@@ -2,7 +2,7 @@
<%= doc_prose do %>
- Azimutt explorer has several ways to import your schema. The suggested one being the database connection
+ Azimutt explorer has several ways to import your database schema. The suggested one is the database connection
as it's more reliable and offer more features (see below) but you have many other options if you prefer.
@@ -21,7 +21,7 @@
Quite awesome if you ask me 😉
- For more details, you can have a look at the connectors to see exactly what and how its being done, here are the scripts for
+ For more details, you can have a look at the connectors to see exactly what and how its being done, here are the scripts for
PostgreSQL ,
MySQL and
MongoDB .
@@ -36,7 +36,7 @@
If you just want to explore your database schema, you can upload it as SQL statements (CREATE TABLE, CREATE INDEX, COMMENTS and others).
You can do it safely as nothing will be sent to Azimutt servers ,
- the parsing is made on the frontend and your schema is shown with no business data being sent to Azimutt server.
+ the parsing is made on the frontend and your schema is shown with no business data sent to Azimutt.
@@ -45,7 +45,7 @@
<%= render "docs/_h2.html", title: "From Prisma" %>
- Prisma is a Node.jS and TypeScript ORM
+ Prisma is a Node.js and TypeScript ORM
that use its own schema syntax .
Same as SQL, you can import the file in Azimutt, local or remote.
@@ -53,7 +53,7 @@
<%= render "docs/_h2.html", title: "From JSON" %>
If you have a database that is not supported yet by Azimutt,
- you can create an issue (or vote on the existing one),
+ you can create an issue (or vote on the existing ones),
send a Pull Request (look at other connectors ) or
extract its schema on your own and import it as JSON in Azimutt.
You just have to format it according to the JSON Schema below the import section.
diff --git a/backend/lib/azimutt_web/templates/website/docs/getting-started.html.heex b/backend/lib/azimutt_web/templates/website/docs/getting-started.html.heex
index 4afaf92c6..569b23016 100644
--- a/backend/lib/azimutt_web/templates/website/docs/getting-started.html.heex
+++ b/backend/lib/azimutt_web/templates/website/docs/getting-started.html.heex
@@ -1,2 +1,9 @@
<%= render "docs/_header.html", conn: @conn, page: @page %>
+
+<%= doc_prose do %>
+
+ Now let's dig into the main Azimutt topics.
+
+<% end %>
+
<%= render "docs/_footer.html", conn: @conn, page: @page, prev: @prev, next: @next %>
diff --git a/backend/lib/azimutt_web/templates/website/docs/what-is-azimutt.html.heex b/backend/lib/azimutt_web/templates/website/docs/what-is-azimutt.html.heex
index 1bc1913ee..3340d90a1 100644
--- a/backend/lib/azimutt_web/templates/website/docs/what-is-azimutt.html.heex
+++ b/backend/lib/azimutt_web/templates/website/docs/what-is-azimutt.html.heex
@@ -2,8 +2,8 @@
<%= doc_prose do %>
- Azimutt goal is to make databases way more accessible for everyone who want or need to understand them.
- For that we have built several tools, the biggest one being the explorer ,
+ Azimutt goal is to make databases way more accessible for everyone who need or want to understand them.
+ For that we have built several tools, the main one being the explorer ,
but there is also other interesting ones like the CLI and converters .
@@ -17,6 +17,7 @@
The Gateway is the central piece allowing Azimutt to connect to any database.
It's a simple Node.js server with all the databases connector allowing Azimutt editor frontend to access databases.
It can be launched locally using npx azimutt@latest gateway
, hosted in your infrastructure or using the Azimutt one if your database is accessible over internet.
+ Learn more about it.
<%= render "docs/_h2.html", title: "Azimutt CLI" %>
@@ -30,11 +31,13 @@
Analyze your database
More to come soon...
+ Learn more about it.
<%= render "docs/_h2.html", title: "Azimutt converters" %>
Azimutt is doing a lot of work around database schemas. We took this opportunity to build these standalone converters to be easily accessible:
+ Learn more about them.
<% end %>
<%= render "docs/_footer.html", conn: @conn, page: @page, prev: @prev, next: @next %>
diff --git a/browser-extension/.gitignore b/extensions/browser-extension/.gitignore
similarity index 100%
rename from browser-extension/.gitignore
rename to extensions/browser-extension/.gitignore
diff --git a/browser-extension/README.md b/extensions/browser-extension/README.md
similarity index 100%
rename from browser-extension/README.md
rename to extensions/browser-extension/README.md
diff --git a/browser-extension/build.js b/extensions/browser-extension/build.js
similarity index 100%
rename from browser-extension/build.js
rename to extensions/browser-extension/build.js
diff --git a/browser-extension/build.watch.js b/extensions/browser-extension/build.watch.js
similarity index 100%
rename from browser-extension/build.watch.js
rename to extensions/browser-extension/build.watch.js
diff --git a/browser-extension/package.json b/extensions/browser-extension/package.json
similarity index 93%
rename from browser-extension/package.json
rename to extensions/browser-extension/package.json
index 0c82274dc..4f1d755f9 100644
--- a/browser-extension/package.json
+++ b/extensions/browser-extension/package.json
@@ -13,7 +13,7 @@
"repository": {
"type": "git",
"url": "git+https://github.com/azimuttapp/azimutt.git",
- "directory": "browser-extension"
+ "directory": "extensions/browser-extension"
},
"scripts": {
"start": "./build.watch.js",
diff --git a/browser-extension/public/assets/azimutt_128.png b/extensions/browser-extension/public/assets/azimutt_128.png
similarity index 100%
rename from browser-extension/public/assets/azimutt_128.png
rename to extensions/browser-extension/public/assets/azimutt_128.png
diff --git a/browser-extension/public/assets/azimutt_16.png b/extensions/browser-extension/public/assets/azimutt_16.png
similarity index 100%
rename from browser-extension/public/assets/azimutt_16.png
rename to extensions/browser-extension/public/assets/azimutt_16.png
diff --git a/browser-extension/public/assets/azimutt_32.png b/extensions/browser-extension/public/assets/azimutt_32.png
similarity index 100%
rename from browser-extension/public/assets/azimutt_32.png
rename to extensions/browser-extension/public/assets/azimutt_32.png
diff --git a/browser-extension/public/assets/azimutt_48.png b/extensions/browser-extension/public/assets/azimutt_48.png
similarity index 100%
rename from browser-extension/public/assets/azimutt_48.png
rename to extensions/browser-extension/public/assets/azimutt_48.png
diff --git a/browser-extension/public/manifest.json b/extensions/browser-extension/public/manifest.json
similarity index 100%
rename from browser-extension/public/manifest.json
rename to extensions/browser-extension/public/manifest.json
diff --git a/browser-extension/public/manifest2.json b/extensions/browser-extension/public/manifest2.json
similarity index 100%
rename from browser-extension/public/manifest2.json
rename to extensions/browser-extension/public/manifest2.json
diff --git a/browser-extension/src/appendButton.ts b/extensions/browser-extension/src/appendButton.ts
similarity index 100%
rename from browser-extension/src/appendButton.ts
rename to extensions/browser-extension/src/appendButton.ts
diff --git a/browser-extension/src/background.ts b/extensions/browser-extension/src/background.ts
similarity index 100%
rename from browser-extension/src/background.ts
rename to extensions/browser-extension/src/background.ts
diff --git a/browser-extension/tsconfig.json b/extensions/browser-extension/tsconfig.json
similarity index 100%
rename from browser-extension/tsconfig.json
rename to extensions/browser-extension/tsconfig.json
diff --git a/desktop/.eslintrc.json b/extensions/desktop/.eslintrc.json
similarity index 100%
rename from desktop/.eslintrc.json
rename to extensions/desktop/.eslintrc.json
diff --git a/desktop/.gitignore b/extensions/desktop/.gitignore
similarity index 100%
rename from desktop/.gitignore
rename to extensions/desktop/.gitignore
diff --git a/desktop/README.md b/extensions/desktop/README.md
similarity index 100%
rename from desktop/README.md
rename to extensions/desktop/README.md
diff --git a/desktop/forge.config.ts b/extensions/desktop/forge.config.ts
similarity index 100%
rename from desktop/forge.config.ts
rename to extensions/desktop/forge.config.ts
diff --git a/desktop/images/icon.icns b/extensions/desktop/images/icon.icns
similarity index 100%
rename from desktop/images/icon.icns
rename to extensions/desktop/images/icon.icns
diff --git a/desktop/images/icon.ico b/extensions/desktop/images/icon.ico
similarity index 100%
rename from desktop/images/icon.ico
rename to extensions/desktop/images/icon.ico
diff --git a/desktop/images/icon.png b/extensions/desktop/images/icon.png
similarity index 100%
rename from desktop/images/icon.png
rename to extensions/desktop/images/icon.png
diff --git a/desktop/package.json b/extensions/desktop/package.json
similarity index 98%
rename from desktop/package.json
rename to extensions/desktop/package.json
index c0d88922e..08d946d30 100644
--- a/desktop/package.json
+++ b/extensions/desktop/package.json
@@ -17,7 +17,7 @@
"repository": {
"type": "git",
"url": "git+https://github.com/azimuttapp/azimutt.git",
- "directory": "desktop"
+ "directory": "extensions/desktop"
},
"main": ".webpack/main",
"scripts": {
diff --git a/desktop/src/main/bridge.ts b/extensions/desktop/src/main/bridge.ts
similarity index 100%
rename from desktop/src/main/bridge.ts
rename to extensions/desktop/src/main/bridge.ts
diff --git a/desktop/src/main/index.ts b/extensions/desktop/src/main/index.ts
similarity index 100%
rename from desktop/src/main/index.ts
rename to extensions/desktop/src/main/index.ts
diff --git a/desktop/src/main/logger.ts b/extensions/desktop/src/main/logger.ts
similarity index 100%
rename from desktop/src/main/logger.ts
rename to extensions/desktop/src/main/logger.ts
diff --git a/desktop/src/preload.ts b/extensions/desktop/src/preload.ts
similarity index 100%
rename from desktop/src/preload.ts
rename to extensions/desktop/src/preload.ts
diff --git a/desktop/src/renderer/index.css b/extensions/desktop/src/renderer/index.css
similarity index 100%
rename from desktop/src/renderer/index.css
rename to extensions/desktop/src/renderer/index.css
diff --git a/desktop/src/renderer/index.html b/extensions/desktop/src/renderer/index.html
similarity index 100%
rename from desktop/src/renderer/index.html
rename to extensions/desktop/src/renderer/index.html
diff --git a/desktop/src/renderer/index.ts b/extensions/desktop/src/renderer/index.ts
similarity index 100%
rename from desktop/src/renderer/index.ts
rename to extensions/desktop/src/renderer/index.ts
diff --git a/desktop/tsconfig.json b/extensions/desktop/tsconfig.json
similarity index 100%
rename from desktop/tsconfig.json
rename to extensions/desktop/tsconfig.json
diff --git a/desktop/webpack.main.config.ts b/extensions/desktop/webpack.main.config.ts
similarity index 100%
rename from desktop/webpack.main.config.ts
rename to extensions/desktop/webpack.main.config.ts
diff --git a/desktop/webpack.plugins.ts b/extensions/desktop/webpack.plugins.ts
similarity index 100%
rename from desktop/webpack.plugins.ts
rename to extensions/desktop/webpack.plugins.ts
diff --git a/desktop/webpack.renderer.config.ts b/extensions/desktop/webpack.renderer.config.ts
similarity index 100%
rename from desktop/webpack.renderer.config.ts
rename to extensions/desktop/webpack.renderer.config.ts
diff --git a/desktop/webpack.rules.ts b/extensions/desktop/webpack.rules.ts
similarity index 100%
rename from desktop/webpack.rules.ts
rename to extensions/desktop/webpack.rules.ts
diff --git a/gateway/README.md b/gateway/README.md
index 5fd536808..0ef650dee 100644
--- a/gateway/README.md
+++ b/gateway/README.md
@@ -2,7 +2,7 @@
Small Node server to proxy database connections and enable browsers to access database features.
-The other way is to use the [desktop app](../desktop) for this, keeping everything local and accessing local databases.
+The other way is to use the [desktop app](../extensions/desktop) for this, keeping everything local and accessing local databases.
## Set Up
diff --git a/integration/README.md b/integration/README.md
deleted file mode 100644
index baea5fe07..000000000
--- a/integration/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-In this folder we set up several databases with default schema and data to serve as example for database access & data exploration.
-We could also set up some integration tests with them...
-
-Start them with: `docker compose up -d`
-Stop them with: `docker compose down`
-Start only one: `docker compose up `
-Check which services are running: `docker ps`
-
-Connection urls:
-- Couchbase:
-- MariaDB:
-- MongoDB:
-- MySQL: `mysql://mysql:mysql@localhost:3306/azimutt_sample`
-- PostgreSQL: `postgres://postgres:postgres@localhost:5432/azimutt_sample`
-- SQL Server:
-
-Each database has an "interesting" database to experiment Azimutt features.
diff --git a/integration/compose.yaml b/integration/compose.yaml
deleted file mode 100644
index 809dd0a60..000000000
--- a/integration/compose.yaml
+++ /dev/null
@@ -1,74 +0,0 @@
-services:
- couchbase:
- image: couchbase # https://hub.docker.com/_/couchbase
- restart: always
- environment:
- COUCHBASE_BUCKET: azimutt_sample
- COUCHBASE_ROOT_PASSWORD: password
- ports:
- - "8091:8091"
- - "8092:8092"
- - "8093:8093"
- - "8094:8094"
- - "11210:11210"
-
- mariadb:
- image: mariadb # https://hub.docker.com/_/mariadb
- restart: always
- environment:
- MARIADB_ROOT_PASSWORD: root
- MARIADB_USER: mariadb
- MARIADB_PASSWORD: mariadb
- MARIADB_DATABASE: azimutt_sample
- volumes:
- - ./mariadb:/docker-entrypoint-initdb.d
- ports:
- - "3307:3307"
-
- mongo:
- image: mongo # https://hub.docker.com/_/mongo
- restart: always
- environment:
- MONGO_INITDB_DATABASE: azimutt_sample
- MONGO_INITDB_ROOT_USERNAME: root
- MONGO_INITDB_ROOT_PASSWORD: password
- volumes:
- - ./mongo:/docker-entrypoint-initdb.d
- ports:
- - "27017:27017"
-
- mysql:
- image: mysql # https://hub.docker.com/_/mysql
- restart: always
- environment:
- MYSQL_ROOT_PASSWORD: root
- MYSQL_USER: mysql
- MYSQL_PASSWORD: mysql
- MYSQL_DATABASE: azimutt_sample
- volumes:
- - ./mysql:/docker-entrypoint-initdb.d
- ports:
- - "3306:3306"
-
- postgres:
- image: postgres # https://hub.docker.com/_/postgres
- restart: always
- environment:
- POSTGRES_DB: azimutt_sample
- POSTGRES_USER: postgres
- POSTGRES_PASSWORD: postgres
- volumes:
- - ./postgres:/docker-entrypoint-initdb.d
- ports:
- - "5432:5432"
-
- sqlserver:
- image: mcr.microsoft.com/mssql/server # https://hub.docker.com/_/microsoft-mssql-server
- restart: always
- environment:
- ACCEPT_EULA: Y
- MSSQL_SA_PASSWORD: Pa$$w0rdddd # userid = 'sa'
- ports:
- - "1433:1433"
-
-# https://hub.docker.com/_/oraclelinux
diff --git a/integration/mysql.sql b/integration/mysql.sql
deleted file mode 100644
index aac560558..000000000
--- a/integration/mysql.sql
+++ /dev/null
@@ -1,7 +0,0 @@
-DROP TABLE IF EXISTS users;
-
-CREATE TABLE users
-(
- id varchar(36),
- name varchar(120)
-);
diff --git a/integration/postgres.sql b/integration/postgres.sql
deleted file mode 100644
index 600e78ae4..000000000
--- a/integration/postgres.sql
+++ /dev/null
@@ -1,126 +0,0 @@
-DROP TABLE IF EXISTS events;
-DROP TABLE IF EXISTS order_lines;
-DROP TABLE IF EXISTS orders;
-DROP TABLE IF EXISTS cart_items;
-DROP TABLE IF EXISTS carts;
-DROP TABLE IF EXISTS products;
-DROP TABLE IF EXISTS categories;
-DROP TABLE IF EXISTS users;
-
-CREATE TABLE users
-(
- id uuid PRIMARY KEY,
- name varchar NOT NULL,
- email varchar NOT NULL UNIQUE
-);
-
-CREATE TABLE categories
-(
- id uuid PRIMARY KEY,
- parent uuid REFERENCES categories (id),
- slug varchar NOT NULL UNIQUE,
- name varchar NOT NULL
-);
-
-
-CREATE TABLE products
-(
- id uuid PRIMARY KEY,
- category_id uuid NOT NULL REFERENCES categories (id),
- name varchar NOT NULL
-);
-
-
-CREATE TABLE carts
-(
- id uuid PRIMARY KEY,
- created_by uuid NOT NULL REFERENCES users (id),
- created_at timestamp NOT NULL,
- updated_at timestamp NOT NULL
-);
-COMMENT ON TABLE carts IS 'temporary saves what users want to buy';
-
-CREATE TABLE cart_items
-(
- cart_id uuid REFERENCES carts (id),
- product_id uuid REFERENCES products (id),
- price decimal NOT NULL,
- quantity int NOT NULL CHECK (quantity > 0),
- created_at timestamp NOT NULL,
- updated_at timestamp NOT NULL,
- PRIMARY KEY (cart_id, product_id)
-);
-COMMENT ON COLUMN cart_items.price IS 'unitary price';
-COMMENT ON COLUMN cart_items.quantity IS 'should be checked with stock at buy time';
-
-
-CREATE TABLE orders
-(
- id uuid PRIMARY KEY,
- created_by uuid NOT NULL REFERENCES users (id),
- created_at timestamp NOT NULL
-);
-
-CREATE TABLE order_lines
-(
- order_id uuid NOT NULL REFERENCES orders (id),
- product_id uuid NOT NULL REFERENCES products (id),
- price decimal NOT NULL,
- quantity int NOT NULL CHECK (quantity > 0)
-);
-COMMENT ON COLUMN order_lines.price IS 'unitary price';
-COMMENT ON COLUMN order_lines.quantity IS 'should be checked with stock at buy time';
-
-CREATE TABLE events
-(
- id uuid PRIMARY KEY,
- name varchar NOT NULL,
- item_type varchar NOT NULL,
- item_id uuid NOT NULL,
- details json NOT NULL,
- created_by uuid NOT NULL,
- created_at timestamp NOT NULL
-);
-
-
-INSERT INTO users (id, name, email)
-VALUES ('e7a47f0f-a2b1-44fa-aa86-c9f4dba6fa73', 'Loïc', 'loic@azimutt.app'),
- ('54e48db0-8740-46be-b1dc-301832fe6a5d', 'Samir', 'samir@azimutt.app'),
- ('add7502f-47fe-4870-9b9f-0c0c73e65b8b', 'Azimutt admin', 'admin@azimutt.app'),
- ('fa551c9e-d9b7-42a3-96d5-af6723f1c467', 'Azimutt contact', 'contact@azimutt.app'),
- ('0b48b4b3-ae00-4623-bec6-e66ae791414c', 'Claude', 'claude@example.com'),
- ('5301f6c8-4259-4122-bb4b-e2378065f88c', 'Lise', 'lise@example.com');
-
-INSERT INTO categories (id, parent, slug, name)
-VALUES ('50c33d85-559a-44ea-b745-fad5aad7d062', null, 'electronics', 'Electronics'),
- ('e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', '50c33d85-559a-44ea-b745-fad5aad7d062', 'accessories-supplies', 'Accessories & Supplies'),
- ('0084e8e3-a12c-4ea5-b004-ec3e8b4573db', 'e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', 'camera-photo-accessories', 'Camera & Photo Accessories'),
- ('8098c34d-2931-4510-9d2f-779d0fe69266', 'e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', 'cell-phone-accessories', 'Cell Phone Accessories'),
- ('fc5d586d-6f6d-4afc-936f-1564ea6788f9', 'e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', 'telephone-accessories', 'Telephone Accessories'),
- ('91f2ca95-1137-4c81-89fb-f62379c552ec', 'e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', 'cables', 'Cables'),
- ('e4bb31df-18f7-4272-8f10-ca519c15cc51', 'e62c89f7-6278-49ba-9c3c-2a2f60bbf3b4', 'microphones', 'Microphones'),
- ('cae0b67b-08f4-48b9-bd97-093673550fe7', null, 'computers', 'Computers'),
- ('3283049d-9740-4e39-b2e9-d8f0ecaf63f3', 'cae0b67b-08f4-48b9-bd97-093673550fe7', 'data-storage', 'Data Storage'),
- ('f47b15e8-2ae5-41f4-9338-c472caa5584b', '3283049d-9740-4e39-b2e9-d8f0ecaf63f3', 'external-hard-drives', 'External Hard Drives'),
- ('db3b50fa-1076-48a6-b7c6-b17e464f1751', '3283049d-9740-4e39-b2e9-d8f0ecaf63f3', 'usb-flash-drives', 'USB Flash Drives'),
- ('c5a7b1f3-2933-45ef-8345-4755417959aa', null, 'arts-crafts', 'Arts & Crafts'),
- ('03a9dc3f-b15a-4e94-baa1-43c76863f38f', 'c5a7b1f3-2933-45ef-8345-4755417959aa', 'floral-arranging', 'Floral Arranging'),
- ('dfd8acea-baa9-471b-8a41-412fdc2865a4', 'c5a7b1f3-2933-45ef-8345-4755417959aa', 'woodcrafts', 'Woodcrafts'),
- ('1899869f-ae62-4978-965b-61eb22da9895', null, 'software', 'Software'),
- ('b58366b6-b571-4cbc-86dc-4e8be14a082f', '1899869f-ae62-4978-965b-61eb22da9895', 'utilities', 'Utilities'),
- ('47804682-deeb-45a1-82ef-fa49792246bd', 'b58366b6-b571-4cbc-86dc-4e8be14a082f', 'internet-utilities', 'Internet Utilities'),
- ('73835bef-b948-42de-aaf8-ab10ca469b45', '1899869f-ae62-4978-965b-61eb22da9895', 'photography-graphic-design', 'Photography & Graphic Design'),
- ('c68aab30-6052-47da-bece-3e4fac896099', null, 'video-games', 'Video Games');
-
-INSERT INTO products (id, category_id, name)
-VALUES ('407ae0e1-eee2-4513-a753-7bb557694af9', '73835bef-b948-42de-aaf8-ab10ca469b45', 'Adobe Photoshop Elements 2023'),
- ('55334065-0cf8-4016-afc4-ce120ec8afc1', '73835bef-b948-42de-aaf8-ab10ca469b45', 'Clip Studio Paint Pro'),
- ('34e0a39a-1bc1-4ec5-99bd-d340ed8d4550', '73835bef-b948-42de-aaf8-ab10ca469b45', 'Corel PaintShop Pro 2023 Ultimate'),
- ('dbfad459-bf8e-4d97-917c-6e4e74277509', '73835bef-b948-42de-aaf8-ab10ca469b45', 'Nero Standard 2018'),
- ('81ec90c8-48e0-4fd9-888b-5824300a98e7', '73835bef-b948-42de-aaf8-ab10ca469b45', 'Adobe Premiere Elements 2023');
-
-INSERT INTO events (id, name, item_type, item_id, details, created_by, created_at)
-VALUES ('730a110f-9dc1-41c3-a48a-c8442e36fd16', 'user_created', 'User', 'add7502f-47fe-4870-9b9f-0c0c73e65b8b', '{"name": "Admin"}', 'add7502f-47fe-4870-9b9f-0c0c73e65b8b', '2023-09-01 12:12:12-07'),
- ('1d5619fe-a2a8-4c07-9243-b6f0c27ab64f', 'user_created', 'User', 'e7a47f0f-a2b1-44fa-aa86-c9f4dba6fa73', '{"name": "Loïc"}', 'e7a47f0f-a2b1-44fa-aa86-c9f4dba6fa73', '2023-09-01 18:05:25-07'),
- ('8e555622-44d6-41f0-90f8-38e22c43ea66', 'category_created', 'Category', '1899869f-ae62-4978-965b-61eb22da9895', '{}', 'e7a47f0f-a2b1-44fa-aa86-c9f4dba6fa73', '2023-09-01 19:21:42-07'),
- ('d0f4e0de-4b6b-42ac-941b-7c3bc563a828', 'product_created', 'Product', '407ae0e1-eee2-4513-a753-7bb557694af9', '{"source": "web"}', 'e7a47f0f-a2b1-44fa-aa86-c9f4dba6fa73', '2023-09-01 19:32:58-07');
diff --git a/libs/connector-bigquery/README.md b/libs/connector-bigquery/README.md
index 2d609b664..202b9d4f7 100644
--- a/libs/connector-bigquery/README.md
+++ b/libs/connector-bigquery/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [BigQuery](https://cloud.google.com/bigquery),
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their BigQuery database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-couchbase/README.md b/libs/connector-couchbase/README.md
index c538289f2..ea6f9e25a 100644
--- a/libs/connector-couchbase/README.md
+++ b/libs/connector-couchbase/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [Couchbase](https://www.couchbase.com), extrac
It browses all buckets, scopes and collections, fetch a sample of documents and then infer a schema from them.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their Couchbase database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-mariadb/README.md b/libs/connector-mariadb/README.md
index 81f2a1fcd..62303b2b5 100644
--- a/libs/connector-mariadb/README.md
+++ b/libs/connector-mariadb/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [MariaDB](https://mariadb.com), extract its sc
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their MariaDB database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-mongodb/README.md b/libs/connector-mongodb/README.md
index 9a99ab1cb..333d4c19c 100644
--- a/libs/connector-mongodb/README.md
+++ b/libs/connector-mongodb/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [MongoDB](https://www.mongodb.com), extract it
It browses all databases and collections, fetch a sample of documents and then infer a schema from them.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their MongoDB database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-mysql/README.md b/libs/connector-mysql/README.md
index 123711dd4..8d50c90a4 100644
--- a/libs/connector-mysql/README.md
+++ b/libs/connector-mysql/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [MySQL](https://www.mysql.com), extract its sc
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their MySQL database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-oracle/README.md b/libs/connector-oracle/README.md
index 826abe50f..ee4fe977f 100644
--- a/libs/connector-oracle/README.md
+++ b/libs/connector-oracle/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [Oracle](https://www.oracle.com/database), ext
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their Oracle database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-postgres/README.md b/libs/connector-postgres/README.md
index 6284e6a68..5b19b6293 100644
--- a/libs/connector-postgres/README.md
+++ b/libs/connector-postgres/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [PostgreSQL](https://www.postgresql.org), extr
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their PostgreSQL database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-snowflake/README.md b/libs/connector-snowflake/README.md
index 799c81424..9271574ea 100644
--- a/libs/connector-snowflake/README.md
+++ b/libs/connector-snowflake/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [Snowflake](https://www.snowflake.com), extrac
It lists all schemas, tables, columns and relations and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their Snowflake database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/libs/connector-sqlserver/README.md b/libs/connector-sqlserver/README.md
index 6c8f188b0..acce546fa 100644
--- a/libs/connector-sqlserver/README.md
+++ b/libs/connector-sqlserver/README.md
@@ -5,7 +5,7 @@ This library allows to connect to [SQL Server](https://www.microsoft.com/fr-fr/s
It lists all schemas, tables, columns, relations and types and format them in a JSON Schema.
This library is made by [Azimutt](https://azimutt.app) to allow people to explore their SQL Server database.
-It's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
+It's accessible through the [Desktop app](../../extensions/desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.
**Feel free to use it and even submit PR to improve it:**
diff --git a/package.json b/package.json
index 8c9a2af59..5a39d5181 100644
--- a/package.json
+++ b/package.json
@@ -30,7 +30,7 @@
"test": "pnpm -r run test",
"format": "pnpm -r run format",
"lint": "pnpm -r run lint",
- "build": "pnpm --filter=!\"./desktop\" -r run build",
+ "build": "pnpm --filter=!\"./extensions/desktop\" -r run build",
"update": "pnpm -r update && pnpm install && pnpm -r --if-present run update",
"build:docker": "pnpm install && pnpm --filter \"azimutt-backend\" run setup && pnpm --filter \"@azimutt/*\" run build:docker && pnpm --filter \"azimutt-editor\" run build:docker"
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 9225dad54..6196ba05c 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -14,25 +14,6 @@ importers:
specifier: workspace:^
version: link:../frontend
- browser-extension:
- dependencies:
- webextension-polyfill:
- specifier: ^0.8.0
- version: 0.8.0
- devDependencies:
- '@types/webextension-polyfill':
- specifier: ^0.8.3
- version: 0.8.3
- esbuild:
- specifier: ^0.14.54
- version: 0.14.54
- esbuild-plugin-copy:
- specifier: ^1.6.0
- version: 1.6.0(esbuild@0.14.54)
- typescript:
- specifier: ^5.6.3
- version: 5.6.3
-
cli:
dependencies:
'@azimutt/gateway':
@@ -212,17 +193,36 @@ importers:
specifier: ^2.0.3
version: 2.0.3(rollup@4.25.0)(vite@5.4.10(@types/node@22.9.0)(terser@5.36.0))
- desktop:
+ extensions/browser-extension:
+ dependencies:
+ webextension-polyfill:
+ specifier: ^0.8.0
+ version: 0.8.0
+ devDependencies:
+ '@types/webextension-polyfill':
+ specifier: ^0.8.3
+ version: 0.8.3
+ esbuild:
+ specifier: ^0.14.54
+ version: 0.14.54
+ esbuild-plugin-copy:
+ specifier: ^1.6.0
+ version: 1.6.0(esbuild@0.14.54)
+ typescript:
+ specifier: ^5.6.3
+ version: 5.6.3
+
+ extensions/desktop:
dependencies:
'@azimutt/connector-postgres':
specifier: workspace:^
- version: link:../libs/connector-postgres
+ version: link:../../libs/connector-postgres
'@azimutt/models':
specifier: workspace:^
- version: link:../libs/models
+ version: link:../../libs/models
'@azimutt/utils':
specifier: workspace:^
- version: link:../libs/utils
+ version: link:../../libs/utils
electron-squirrel-startup:
specifier: 1.0.0
version: 1.0.0
@@ -565,7 +565,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -596,7 +596,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -627,7 +627,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -658,7 +658,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -689,7 +689,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -720,7 +720,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -754,7 +754,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -791,7 +791,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -825,7 +825,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -859,7 +859,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -896,7 +896,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -951,7 +951,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1000,7 +1000,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1055,7 +1055,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1076,7 +1076,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -10107,7 +10107,7 @@ snapshots:
'@babel/traverse': 7.25.9
'@babel/types': 7.26.0
convert-source-map: 2.0.0
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -10265,7 +10265,7 @@ snapshots:
'@babel/parser': 7.26.2
'@babel/template': 7.25.9
'@babel/types': 7.26.0
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -12684,7 +12684,7 @@ snapshots:
'@types/yauzl@2.10.3':
dependencies:
- '@types/node': 20.17.6
+ '@types/node': 22.9.0
optional: true
'@typescript-eslint/eslint-plugin@8.13.0(@typescript-eslint/parser@8.13.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3)':
@@ -12989,7 +12989,7 @@ snapshots:
agent-base@6.0.2:
dependencies:
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -14026,10 +14026,6 @@ snapshots:
dependencies:
ms: 2.1.3
- debug@4.3.7:
- dependencies:
- ms: 2.1.3
-
debug@4.3.7(supports-color@5.5.0):
dependencies:
ms: 2.1.3
@@ -15314,14 +15310,12 @@ snapshots:
folder-hash@3.3.3:
dependencies:
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
graceful-fs: 4.2.11
minimatch: 3.0.8
transitivePeerDependencies:
- supports-color
- follow-redirects@1.15.9: {}
-
follow-redirects@1.15.9(debug@3.2.7):
optionalDependencies:
debug: 3.2.7
@@ -15830,7 +15824,7 @@ snapshots:
dependencies:
'@tootallnate/once': 2.0.0
agent-base: 6.0.2
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -15856,7 +15850,7 @@ snapshots:
http-proxy@1.17.0:
dependencies:
eventemitter3: 3.1.2
- follow-redirects: 1.15.9
+ follow-redirects: 1.15.9(debug@3.2.7)
requires-port: 1.0.0
transitivePeerDependencies:
- debug
@@ -15864,7 +15858,7 @@ snapshots:
http-proxy@1.18.1:
dependencies:
eventemitter3: 4.0.7
- follow-redirects: 1.15.9
+ follow-redirects: 1.15.9(debug@3.2.7)
requires-port: 1.0.0
transitivePeerDependencies:
- debug
@@ -15891,7 +15885,7 @@ snapshots:
https-proxy-agent@5.0.1:
dependencies:
agent-base: 6.0.2
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -16168,7 +16162,7 @@ snapshots:
istanbul-lib-source-maps@4.0.1:
dependencies:
- debug: 4.3.7
+ debug: 4.3.7(supports-color@5.5.0)
istanbul-lib-coverage: 3.2.2
source-map: 0.6.1
transitivePeerDependencies:
@@ -16319,7 +16313,7 @@ snapshots:
strip-json-comments: 3.1.1
optionalDependencies:
'@types/node': 22.9.0
- ts-node: 10.9.2(@types/node@22.9.0)(typescript@5.6.3)
+ ts-node: 10.9.2(@swc/core@1.9.1)(@types/node@22.9.0)(typescript@5.6.3)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@@ -17664,7 +17658,7 @@ snapshots:
yaml: 2.6.0
optionalDependencies:
postcss: 8.4.47
- ts-node: 10.9.2(@types/node@22.9.0)(typescript@5.6.3)
+ ts-node: 10.9.2(@swc/core@1.9.1)(@types/node@22.9.0)(typescript@5.6.3)
postcss-modules-extract-imports@3.1.0(postcss@8.4.47):
dependencies:
@@ -18932,6 +18926,25 @@ snapshots:
'@jest/types': 29.6.3
babel-jest: 29.7.0(@babel/core@7.26.0)
+ ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3):
+ dependencies:
+ bs-logger: 0.2.6
+ ejs: 3.1.10
+ fast-json-stable-stringify: 2.1.0
+ jest: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
+ jest-util: 29.7.0
+ json5: 2.2.3
+ lodash.memoize: 4.1.2
+ make-error: 1.3.6
+ semver: 7.6.3
+ typescript: 5.6.3
+ yargs-parser: 21.1.1
+ optionalDependencies:
+ '@babel/core': 7.26.0
+ '@jest/transform': 29.7.0
+ '@jest/types': 29.6.3
+ babel-jest: 29.7.0(@babel/core@7.26.0)
+
ts-loader@9.5.1(typescript@5.6.3)(webpack@5.96.1(@swc/core@1.9.1)):
dependencies:
chalk: 4.1.2
@@ -18982,25 +18995,6 @@ snapshots:
optionalDependencies:
'@swc/core': 1.9.1
- ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3):
- dependencies:
- '@cspotcode/source-map-support': 0.8.1
- '@tsconfig/node10': 1.0.11
- '@tsconfig/node12': 1.0.11
- '@tsconfig/node14': 1.0.3
- '@tsconfig/node16': 1.0.4
- '@types/node': 22.9.0
- acorn: 8.14.0
- acorn-walk: 8.3.4
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- typescript: 5.6.3
- v8-compile-cache-lib: 3.0.1
- yn: 3.1.1
- optional: true
-
tsconfig-paths@3.15.0:
dependencies:
'@types/json5': 0.0.29
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index 46df38d54..81644da32 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -1,9 +1,8 @@
packages:
- "backend"
- - "browser-extension"
- "cli"
- "cli/html-report"
- - "desktop"
+ - "extensions/*"
- "frontend"
- "gateway"
- "libs/*"
From 42052cd6172066b7ab7045f5bb92fc0cc1689cb4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Knuchel?=
Date: Fri, 22 Nov 2024 14:02:02 +0100
Subject: [PATCH 02/20] Generate boilerplate
---
extensions/vscode-aml/.gitignore | 3 +
extensions/vscode-aml/.npmrc | 1 +
extensions/vscode-aml/.vscodeignore | 16 +
extensions/vscode-aml/CHANGELOG.md | 9 +
extensions/vscode-aml/README.md | 65 +
extensions/vscode-aml/esbuild.js | 100 ++
extensions/vscode-aml/eslint.config.mjs | 28 +
extensions/vscode-aml/package.json | 56 +
extensions/vscode-aml/src/web/extension.ts | 27 +
.../src/web/test/suite/extension.test.ts | 15 +
.../src/web/test/suite/mochaTestRunner.ts | 26 +
extensions/vscode-aml/tsconfig.json | 17 +
.../vscode-aml/vsc-extension-quickstart.md | 44 +
pnpm-lock.yaml | 1142 ++++++++++++++++-
pnpm-workspace.yaml | 4 +-
15 files changed, 1496 insertions(+), 57 deletions(-)
create mode 100644 extensions/vscode-aml/.gitignore
create mode 100644 extensions/vscode-aml/.npmrc
create mode 100644 extensions/vscode-aml/.vscodeignore
create mode 100644 extensions/vscode-aml/CHANGELOG.md
create mode 100644 extensions/vscode-aml/README.md
create mode 100644 extensions/vscode-aml/esbuild.js
create mode 100644 extensions/vscode-aml/eslint.config.mjs
create mode 100644 extensions/vscode-aml/package.json
create mode 100644 extensions/vscode-aml/src/web/extension.ts
create mode 100644 extensions/vscode-aml/src/web/test/suite/extension.test.ts
create mode 100644 extensions/vscode-aml/src/web/test/suite/mochaTestRunner.ts
create mode 100644 extensions/vscode-aml/tsconfig.json
create mode 100644 extensions/vscode-aml/vsc-extension-quickstart.md
diff --git a/extensions/vscode-aml/.gitignore b/extensions/vscode-aml/.gitignore
new file mode 100644
index 000000000..c4f24f4b8
--- /dev/null
+++ b/extensions/vscode-aml/.gitignore
@@ -0,0 +1,3 @@
+.vscode
+dist
+node_modules
diff --git a/extensions/vscode-aml/.npmrc b/extensions/vscode-aml/.npmrc
new file mode 100644
index 000000000..8e012302a
--- /dev/null
+++ b/extensions/vscode-aml/.npmrc
@@ -0,0 +1 @@
+enable-pre-post-scripts = true
diff --git a/extensions/vscode-aml/.vscodeignore b/extensions/vscode-aml/.vscodeignore
new file mode 100644
index 000000000..9d63524ad
--- /dev/null
+++ b/extensions/vscode-aml/.vscodeignore
@@ -0,0 +1,16 @@
+.vscode/**
+.vscode-test-web/**
+src/**
+out/**
+node_modules/**
+dist/test/**
+.gitignore
+vsc-extension-quickstart.md
+webpack.config.js
+esbuild.js
+.yarnrc
+**/tsconfig.json
+**/eslint.config.mjs
+**/*.map
+**/*.ts
+**/.vscode-test.*
diff --git a/extensions/vscode-aml/CHANGELOG.md b/extensions/vscode-aml/CHANGELOG.md
new file mode 100644
index 000000000..56cadccec
--- /dev/null
+++ b/extensions/vscode-aml/CHANGELOG.md
@@ -0,0 +1,9 @@
+# Change Log
+
+All notable changes to the "vscode-aml" extension will be documented in this file.
+
+Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file.
+
+## [Unreleased]
+
+- Initial release
diff --git a/extensions/vscode-aml/README.md b/extensions/vscode-aml/README.md
new file mode 100644
index 000000000..662cbb50f
--- /dev/null
+++ b/extensions/vscode-aml/README.md
@@ -0,0 +1,65 @@
+# vscode-aml README
+
+This is the README for your extension "vscode-aml". After writing up a brief description, we recommend including the following sections.
+
+## Features
+
+Describe specific features of your extension including screenshots of your extension in action. Image paths are relative to this README file.
+
+For example if there is an image subfolder under your extension project workspace:
+
+\!\[feature X\]\(images/feature-x.png\)
+
+> Tip: Many popular extensions utilize animations. This is an excellent way to show off your extension! We recommend short, focused animations that are easy to follow.
+
+## Requirements
+
+If you have any requirements or dependencies, add a section describing those and how to install and configure them.
+
+## Extension Settings
+
+Include if your extension adds any VS Code settings through the `contributes.configuration` extension point.
+
+For example:
+
+This extension contributes the following settings:
+
+* `myExtension.enable`: Enable/disable this extension.
+* `myExtension.thing`: Set to `blah` to do something.
+
+## Known Issues
+
+Calling out known issues can help limit users opening duplicate issues against your extension.
+
+## Release Notes
+
+Users appreciate release notes as you update your extension.
+
+### 1.0.0
+
+Initial release of ...
+
+### 1.0.1
+
+Fixed issue #.
+
+### 1.1.0
+
+Added features X, Y, and Z.
+
+---
+
+## Working with Markdown
+
+You can author your README using Visual Studio Code. Here are some useful editor keyboard shortcuts:
+
+* Split the editor (`Cmd+\` on macOS or `Ctrl+\` on Windows and Linux).
+* Toggle preview (`Shift+Cmd+V` on macOS or `Shift+Ctrl+V` on Windows and Linux).
+* Press `Ctrl+Space` (Windows, Linux, macOS) to see a list of Markdown snippets.
+
+## For more information
+
+* [Visual Studio Code's Markdown Support](http://code.visualstudio.com/docs/languages/markdown)
+* [Markdown Syntax Reference](https://help.github.com/articles/markdown-basics/)
+
+**Enjoy!**
diff --git a/extensions/vscode-aml/esbuild.js b/extensions/vscode-aml/esbuild.js
new file mode 100644
index 000000000..9fb9920c8
--- /dev/null
+++ b/extensions/vscode-aml/esbuild.js
@@ -0,0 +1,100 @@
+const esbuild = require('esbuild');
+const glob = require('glob');
+const path = require('path');
+const polyfill = require('@esbuild-plugins/node-globals-polyfill');
+
+const production = process.argv.includes('--production');
+const watch = process.argv.includes('--watch');
+
+/**
+ * This plugin hooks into the build process to print errors in a format that the problem matcher in
+ * Visual Studio Code can understand.
+ * @type {import('esbuild').Plugin}
+ */
+const esbuildProblemMatcherPlugin = {
+ name: 'esbuild-problem-matcher',
+
+ setup(build) {
+ build.onStart(() => {
+ console.log('[watch] build started');
+ });
+ build.onEnd((result) => {
+ result.errors.forEach(({ text, location }) => {
+ console.error(`✘ [ERROR] ${text}`);
+ console.error(` ${location.file}:${location.line}:${location.column}:`);
+ });
+ console.log('[watch] build finished');
+ });
+ },
+};
+
+
+/**
+ * For web extension, all tests, including the test runner, need to be bundled into
+ * a single module that has a exported `run` function .
+ * This plugin bundles implements a virtual file extensionTests.ts that bundles all these together.
+ * @type {import('esbuild').Plugin}
+ */
+const testBundlePlugin = {
+ name: 'testBundlePlugin',
+ setup(build) {
+ build.onResolve({ filter: /[\/\\]extensionTests\.ts$/ }, args => {
+ if (args.kind === 'entry-point') {
+ return { path: path.resolve(args.path) };
+ }
+ });
+ build.onLoad({ filter: /[\/\\]extensionTests\.ts$/ }, async args => {
+ const testsRoot = path.join(__dirname, 'src/web/test/suite');
+ const files = await glob.glob('*.test.{ts,tsx}', { cwd: testsRoot, posix: true });
+ return {
+ contents:
+ `export { run } from './mochaTestRunner.ts';` +
+ files.map(f => `import('./${f}');`).join(''),
+ watchDirs: files.map(f => path.dirname(path.resolve(testsRoot, f))),
+ watchFiles: files.map(f => path.resolve(testsRoot, f))
+ };
+ });
+ }
+};
+
+async function main() {
+ const ctx = await esbuild.context({
+ entryPoints: [
+ 'src/web/extension.ts',
+ 'src/web/test/suite/extensionTests.ts'
+ ],
+ bundle: true,
+ format: 'cjs',
+ minify: production,
+ sourcemap: !production,
+ sourcesContent: false,
+ platform: 'browser',
+ outdir: 'dist/web',
+ external: ['vscode'],
+ logLevel: 'silent',
+ // Node.js global to browser globalThis
+ define: {
+ global: 'globalThis',
+ },
+
+ plugins: [
+ polyfill.NodeGlobalsPolyfillPlugin({
+ process: true,
+ buffer: true,
+ }),
+ testBundlePlugin,
+ esbuildProblemMatcherPlugin, /* add to the end of plugins array */
+ ],
+ });
+ if (watch) {
+ await ctx.watch();
+ } else {
+ await ctx.rebuild();
+ await ctx.dispose();
+ }
+}
+
+main().catch(e => {
+ console.error(e);
+ process.exit(1);
+});
diff --git a/extensions/vscode-aml/eslint.config.mjs b/extensions/vscode-aml/eslint.config.mjs
new file mode 100644
index 000000000..40e4769c6
--- /dev/null
+++ b/extensions/vscode-aml/eslint.config.mjs
@@ -0,0 +1,28 @@
+import typescriptEslint from "@typescript-eslint/eslint-plugin";
+import tsParser from "@typescript-eslint/parser";
+
+export default [{
+ files: ["**/*.ts"],
+}, {
+ plugins: {
+ "@typescript-eslint": typescriptEslint,
+ },
+
+ languageOptions: {
+ parser: tsParser,
+ ecmaVersion: 2022,
+ sourceType: "module",
+ },
+
+ rules: {
+ "@typescript-eslint/naming-convention": ["warn", {
+ selector: "import",
+ format: ["camelCase", "PascalCase"],
+ }],
+
+ curly: "warn",
+ eqeqeq: "warn",
+ "no-throw-literal": "warn",
+ semi: "warn",
+ },
+}];
diff --git a/extensions/vscode-aml/package.json b/extensions/vscode-aml/package.json
new file mode 100644
index 000000000..fdd9cb71b
--- /dev/null
+++ b/extensions/vscode-aml/package.json
@@ -0,0 +1,56 @@
+{
+ "name": "@azimutt/vscode-aml",
+ "displayName": "AML - Fast database design",
+ "description": "Language support for Azimutt Markup Language (AML)",
+ "icon": "assets/icon.png",
+ "version": "0.0.1",
+ "publisher": "loicknuchel",
+ "engines": {
+ "vscode": "^1.95.0"
+ },
+ "categories": ["Programming Languages", "Snippets", "Other"],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/azimuttapp/azimutt.git",
+ "directory": "extensions/vscode-aml"
+ },
+ "activationEvents": [],
+ "browser": "./dist/web/extension.js",
+ "contributes": {
+ "commands": [
+ {
+ "command": "aml-web.helloWorld",
+ "title": "Hello World"
+ }
+ ]
+ },
+ "scripts": {
+ "test": "vscode-test-web --browserType=chromium --extensionDevelopmentPath=. --extensionTestsPath=dist/web/test/suite/extensionTests.js",
+ "pretest": "pnpm run compile-web",
+ "vscode:prepublish": "pnpm run package-web",
+ "compile-web": "pnpm run check-types && pnpm run lint && node esbuild.js",
+ "watch-web": "npm-run-all -p watch-web:*",
+ "watch-web:esbuild": "node esbuild.js --watch",
+ "watch-web:tsc": "tsc --noEmit --watch --project tsconfig.json",
+ "package-web": "pnpm run check-types && pnpm run lint && node esbuild.js --production",
+ "check-types": "tsc --noEmit",
+ "lint": "eslint src",
+ "run-in-browser": "vscode-test-web --browserType=chromium --extensionDevelopmentPath=. ."
+ },
+ "devDependencies": {
+ "@types/vscode": "^1.95.0",
+ "@types/mocha": "^10.0.9",
+ "@types/assert": "^1.5.10",
+ "eslint": "^9.13.0",
+ "@typescript-eslint/eslint-plugin": "^8.10.0",
+ "@typescript-eslint/parser": "^8.7.0",
+ "mocha": "^10.7.3",
+ "typescript": "^5.6.3",
+ "@vscode/test-web": "^0.0.63",
+ "esbuild": "^0.24.0",
+ "glob": "^11.0.0",
+ "npm-run-all": "^4.1.5",
+ "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
+ "assert": "^2.1.0"
+ }
+}
diff --git a/extensions/vscode-aml/src/web/extension.ts b/extensions/vscode-aml/src/web/extension.ts
new file mode 100644
index 000000000..3d69aae16
--- /dev/null
+++ b/extensions/vscode-aml/src/web/extension.ts
@@ -0,0 +1,27 @@
+// The module 'vscode' contains the VS Code extensibility API
+// Import the module and reference it with the alias vscode in your code below
+import * as vscode from 'vscode';
+
+// This method is called when your extension is activated
+// Your extension is activated the very first time the command is executed
+export function activate(context: vscode.ExtensionContext) {
+
+ // Use the console to output diagnostic information (console.log) and errors (console.error)
+ // This line of code will only be executed once when your extension is activated
+ console.log('Congratulations, your extension "aml-web" is now active in the web extension host!');
+
+ // The command has been defined in the package.json file
+ // Now provide the implementation of the command with registerCommand
+ // The commandId parameter must match the command field in package.json
+ const disposable = vscode.commands.registerCommand('aml-web.helloWorld', () => {
+ // The code you place here will be executed every time your command is executed
+
+ // Display a message box to the user
+ vscode.window.showInformationMessage('Hello World from AML-web in a web extension host!');
+ });
+
+ context.subscriptions.push(disposable);
+}
+
+// This method is called when your extension is deactivated
+export function deactivate() {}
diff --git a/extensions/vscode-aml/src/web/test/suite/extension.test.ts b/extensions/vscode-aml/src/web/test/suite/extension.test.ts
new file mode 100644
index 000000000..7e022bc4c
--- /dev/null
+++ b/extensions/vscode-aml/src/web/test/suite/extension.test.ts
@@ -0,0 +1,15 @@
+import * as assert from 'assert';
+
+// You can import and use all API from the 'vscode' module
+// as well as import your extension to test it
+import * as vscode from 'vscode';
+// import * as myExtension from '../../extension';
+
+suite('Web Extension Test Suite', () => {
+ vscode.window.showInformationMessage('Start all tests.');
+
+ test('Sample test', () => {
+ assert.strictEqual(-1, [1, 2, 3].indexOf(5));
+ assert.strictEqual(-1, [1, 2, 3].indexOf(0));
+ });
+});
diff --git a/extensions/vscode-aml/src/web/test/suite/mochaTestRunner.ts b/extensions/vscode-aml/src/web/test/suite/mochaTestRunner.ts
new file mode 100644
index 000000000..d449bc2f3
--- /dev/null
+++ b/extensions/vscode-aml/src/web/test/suite/mochaTestRunner.ts
@@ -0,0 +1,26 @@
+// Imports mocha for the browser, defining the `mocha` global.
+import 'mocha/mocha';
+
+mocha.setup({
+ ui: 'tdd',
+ reporter: undefined
+});
+
+export function run(): Promise {
+
+ return new Promise((c, e) => {
+ try {
+ // Run the mocha test
+ mocha.run(failures => {
+ if (failures > 0) {
+ e(new Error(`${failures} tests failed.`));
+ } else {
+ c();
+ }
+ });
+ } catch (err) {
+ console.error(err);
+ e(err);
+ }
+ });
+}
diff --git a/extensions/vscode-aml/tsconfig.json b/extensions/vscode-aml/tsconfig.json
new file mode 100644
index 000000000..1d76149b4
--- /dev/null
+++ b/extensions/vscode-aml/tsconfig.json
@@ -0,0 +1,17 @@
+{
+ "compilerOptions": {
+ "module": "Node16",
+ "target": "ES2020",
+ "outDir": "dist",
+ "lib": [
+ "ES2020", "WebWorker"
+ ],
+ "sourceMap": true,
+ "rootDir": "src",
+ "strict": true /* enable all strict type-checking options */
+ /* Additional Checks */
+ // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
+ // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
+ // "noUnusedParameters": true, /* Report errors on unused parameters. */
+ }
+}
diff --git a/extensions/vscode-aml/vsc-extension-quickstart.md b/extensions/vscode-aml/vsc-extension-quickstart.md
new file mode 100644
index 000000000..5176d16cd
--- /dev/null
+++ b/extensions/vscode-aml/vsc-extension-quickstart.md
@@ -0,0 +1,44 @@
+# Welcome to your VS Code Extension
+
+## What's in the folder
+
+* This folder contains all of the files necessary for your web extension.
+* `package.json` * this is the manifest file in which you declare your extension and command.
+* `src/web/extension.ts` * this is the main file for the browser
+* `webpack.config.js` * the webpack config file for the web main
+
+## Setup
+
+* install the recommended extensions (amodio.tsl-problem-matcher, ms-vscode.extension-test-runner, and dbaeumer.vscode-eslint)
+
+## Get up and running the Web Extension
+
+* Run `pnpm install`.
+* Place breakpoints in `src/web/extension.ts`.
+* Debug via F5 (Run Web Extension).
+* Execute extension code via `F1 > Hello world`.
+
+## Make changes
+
+* You can relaunch the extension from the debug toolbar after changing code in `src/web/extension.ts`.
+* You can also reload (`Ctrl+R` or `Cmd+R` on Mac) the VS Code window with your extension to load your changes.
+
+## Explore the API
+
+* You can open the full set of our API when you open the file `node_modules/@types/vscode/index.d.ts`.
+
+## Run tests
+
+* Open the debug viewlet (`Ctrl+Shift+D` or `Cmd+Shift+D` on Mac) and from the launch configuration dropdown pick `Extension Tests`.
+* Press `F5` to run the tests in a new window with your extension loaded.
+* See the output of the test result in the debug console.
+* Make changes to `src/web/test/suite/extension.test.ts` or create new test files inside the `test/suite` folder.
+ * The provided test runner will only consider files matching the name pattern `**.test.ts`.
+ * You can create folders inside the `test` folder to structure your tests any way you want.
+
+## Go further
+
+* [Follow UX guidelines](https://code.visualstudio.com/api/ux-guidelines/overview) to create extensions that seamlessly integrate with VS Code's native interface and patterns.
+* Check out the [Web Extension Guide](https://code.visualstudio.com/api/extension-guides/web-extensions).
+* [Publish your extension](https://code.visualstudio.com/api/working-with-extensions/publishing-extension) on the VS Code extension marketplace.
+* Automate builds by setting up [Continuous Integration](https://code.visualstudio.com/api/working-with-extensions/continuous-integration).
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 6196ba05c..bfbfd18a4 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -300,6 +300,51 @@ importers:
specifier: ^5.96.1
version: 5.96.1(@swc/core@1.9.1)
+ extensions/vscode-aml:
+ devDependencies:
+ '@esbuild-plugins/node-globals-polyfill':
+ specifier: ^0.2.3
+ version: 0.2.3(esbuild@0.24.0)
+ '@types/assert':
+ specifier: ^1.5.10
+ version: 1.5.11
+ '@types/mocha':
+ specifier: ^10.0.9
+ version: 10.0.10
+ '@types/vscode':
+ specifier: ^1.95.0
+ version: 1.95.0
+ '@typescript-eslint/eslint-plugin':
+ specifier: ^8.10.0
+ version: 8.13.0(@typescript-eslint/parser@8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
+ '@typescript-eslint/parser':
+ specifier: ^8.7.0
+ version: 8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
+ '@vscode/test-web':
+ specifier: ^0.0.63
+ version: 0.0.63
+ assert:
+ specifier: ^2.1.0
+ version: 2.1.0
+ esbuild:
+ specifier: ^0.24.0
+ version: 0.24.0
+ eslint:
+ specifier: ^9.13.0
+ version: 9.14.0(jiti@1.21.6)
+ glob:
+ specifier: ^11.0.0
+ version: 11.0.0
+ mocha:
+ specifier: ^10.7.3
+ version: 10.8.2
+ npm-run-all:
+ specifier: ^4.1.5
+ version: 4.1.5
+ typescript:
+ specifier: ^5.6.3
+ version: 5.6.3
+
frontend:
dependencies:
'@azimutt/aml':
@@ -1773,6 +1818,11 @@ packages:
cpu: [x64]
os: [win32]
+ '@esbuild-plugins/node-globals-polyfill@0.2.3':
+ resolution: {integrity: sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==}
+ peerDependencies:
+ esbuild: '*'
+
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
@@ -1785,6 +1835,12 @@ packages:
cpu: [ppc64]
os: [aix]
+ '@esbuild/aix-ppc64@0.24.0':
+ resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/android-arm64@0.21.5':
resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
engines: {node: '>=12'}
@@ -1797,6 +1853,12 @@ packages:
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm64@0.24.0':
+ resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm@0.21.5':
resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
engines: {node: '>=12'}
@@ -1809,6 +1871,12 @@ packages:
cpu: [arm]
os: [android]
+ '@esbuild/android-arm@0.24.0':
+ resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-x64@0.21.5':
resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
engines: {node: '>=12'}
@@ -1821,6 +1889,12 @@ packages:
cpu: [x64]
os: [android]
+ '@esbuild/android-x64@0.24.0':
+ resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/darwin-arm64@0.21.5':
resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
engines: {node: '>=12'}
@@ -1833,6 +1907,12 @@ packages:
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-arm64@0.24.0':
+ resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.21.5':
resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
engines: {node: '>=12'}
@@ -1845,6 +1925,12 @@ packages:
cpu: [x64]
os: [darwin]
+ '@esbuild/darwin-x64@0.24.0':
+ resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/freebsd-arm64@0.21.5':
resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
engines: {node: '>=12'}
@@ -1857,6 +1943,12 @@ packages:
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-arm64@0.24.0':
+ resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.21.5':
resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
engines: {node: '>=12'}
@@ -1869,6 +1961,12 @@ packages:
cpu: [x64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.24.0':
+ resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/linux-arm64@0.21.5':
resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
engines: {node: '>=12'}
@@ -1881,6 +1979,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm64@0.24.0':
+ resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm@0.21.5':
resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
engines: {node: '>=12'}
@@ -1893,6 +1997,12 @@ packages:
cpu: [arm]
os: [linux]
+ '@esbuild/linux-arm@0.24.0':
+ resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-ia32@0.21.5':
resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
engines: {node: '>=12'}
@@ -1905,6 +2015,12 @@ packages:
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-ia32@0.24.0':
+ resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-loong64@0.14.54':
resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==}
engines: {node: '>=12'}
@@ -1923,6 +2039,12 @@ packages:
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-loong64@0.24.0':
+ resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.21.5':
resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
engines: {node: '>=12'}
@@ -1935,6 +2057,12 @@ packages:
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-mips64el@0.24.0':
+ resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.21.5':
resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
engines: {node: '>=12'}
@@ -1947,6 +2075,12 @@ packages:
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-ppc64@0.24.0':
+ resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.21.5':
resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
engines: {node: '>=12'}
@@ -1959,6 +2093,12 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-riscv64@0.24.0':
+ resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-s390x@0.21.5':
resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
engines: {node: '>=12'}
@@ -1971,6 +2111,12 @@ packages:
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-s390x@0.24.0':
+ resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-x64@0.21.5':
resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
engines: {node: '>=12'}
@@ -1983,6 +2129,12 @@ packages:
cpu: [x64]
os: [linux]
+ '@esbuild/linux-x64@0.24.0':
+ resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/netbsd-x64@0.21.5':
resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
engines: {node: '>=12'}
@@ -1995,12 +2147,24 @@ packages:
cpu: [x64]
os: [netbsd]
+ '@esbuild/netbsd-x64@0.24.0':
+ resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/openbsd-arm64@0.23.1':
resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
+ '@esbuild/openbsd-arm64@0.24.0':
+ resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.21.5':
resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
engines: {node: '>=12'}
@@ -2013,6 +2177,12 @@ packages:
cpu: [x64]
os: [openbsd]
+ '@esbuild/openbsd-x64@0.24.0':
+ resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/sunos-x64@0.21.5':
resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
engines: {node: '>=12'}
@@ -2025,6 +2195,12 @@ packages:
cpu: [x64]
os: [sunos]
+ '@esbuild/sunos-x64@0.24.0':
+ resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/win32-arm64@0.21.5':
resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
engines: {node: '>=12'}
@@ -2037,6 +2213,12 @@ packages:
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-arm64@0.24.0':
+ resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-ia32@0.21.5':
resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
engines: {node: '>=12'}
@@ -2049,6 +2231,12 @@ packages:
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-ia32@0.24.0':
+ resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-x64@0.21.5':
resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
engines: {node: '>=12'}
@@ -2061,6 +2249,12 @@ packages:
cpu: [x64]
os: [win32]
+ '@esbuild/win32-x64@0.24.0':
+ resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
'@eslint-community/eslint-utils@4.4.1':
resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2298,6 +2492,14 @@ packages:
'@js-joda/core@5.6.3':
resolution: {integrity: sha512-T1rRxzdqkEXcou0ZprN1q9yDRlvzCPLqmlNt5IIsGBzoEVgLCCYrKEwc84+TvsXuAc95VAZwtWD2zVsKPY4bcA==}
+ '@koa/cors@5.0.0':
+ resolution: {integrity: sha512-x/iUDjcS90W69PryLDIMgFyV21YLTnG9zOpPXS7Bkt2b8AsY3zZsIpOLBkYr9fBcF3HbkKaER5hOBZLfpLgYNw==}
+ engines: {node: '>= 14.0.0'}
+
+ '@koa/router@13.1.0':
+ resolution: {integrity: sha512-mNVu1nvkpSd8Q8gMebGbCkDWJ51ODetrFvLKYusej+V0ByD4btqHYnPIzTBLXnQMVUlm/oxVwqmWBY3zQfZilw==}
+ engines: {node: '>= 18'}
+
'@leichtgewicht/ip-codec@2.0.5':
resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
@@ -2389,6 +2591,10 @@ packages:
resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ '@playwright/browser-chromium@1.49.0':
+ resolution: {integrity: sha512-SnDBEmw0h4XpbHcWR8T0LgLj1Cqn8Cvql+Nahot2zBud945z+MYXH3WVPvMI5U37WsWAgw9Cj7pZ6oL7haKrhg==}
+ engines: {node: '>=18'}
+
'@radix-ui/number@1.1.0':
resolution: {integrity: sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==}
@@ -3270,6 +3476,9 @@ packages:
'@types/aria-query@5.0.4':
resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
+ '@types/assert@1.5.11':
+ resolution: {integrity: sha512-FjS1mxq2dlGr9N4z72/DO+XmyRS3ZZIoVn998MEopAN/OmyN28F4yumRL5pOw2z+hbFLuWGYuF2rrw5p11xM5A==}
+
'@types/babel__core@7.20.5':
resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
@@ -3393,6 +3602,9 @@ packages:
'@types/minimatch@5.1.2':
resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
+ '@types/mocha@10.0.10':
+ resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==}
+
'@types/mssql@9.1.5':
resolution: {integrity: sha512-Q9EsgXwuRoX5wvUSu24YfbKMbFChv7pZ/jeCzPkj47ehcuXYsBcfogwrtVFosSjinD4Q/MY2YPGk9Yy1cM2Ywg==}
@@ -3474,6 +3686,9 @@ packages:
'@types/triple-beam@1.3.5':
resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
+ '@types/vscode@1.95.0':
+ resolution: {integrity: sha512-0LBD8TEiNbet3NvWsmn59zLzOFu/txSlGxnv5yAFHCrhG9WvAnR3IvfHzMOs2aeWqgvNjq9pO99IUw8d3n+unw==}
+
'@types/webextension-polyfill@0.8.3':
resolution: {integrity: sha512-GN+Hjzy9mXjWoXKmaicTegv3FJ0WFZ3aYz77Wk8TMp1IY3vEzvzj1vnsa0ggV7vMI1i+PUxe4qqnIJKCzf9aTg==}
@@ -3592,6 +3807,11 @@ packages:
'@vitest/utils@2.1.4':
resolution: {integrity: sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==}
+ '@vscode/test-web@0.0.63':
+ resolution: {integrity: sha512-FIFfT2gZeEp0d1RnR+IYORS9HZPTtlTNuMLdZpO5c9sAtz5rCHPWsCD5VxnV4U08Slz5GdzgH7pDQspb9Oa8ZQ==}
+ engines: {node: '>=16'}
+ hasBin: true
+
'@webassemblyjs/ast@1.14.1':
resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==}
@@ -3730,6 +3950,10 @@ packages:
ajv@8.17.1:
resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
+ ansi-colors@4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ engines: {node: '>=6'}
+
ansi-escapes@4.3.2:
resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
engines: {node: '>=8'}
@@ -3876,6 +4100,9 @@ packages:
resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==}
engines: {node: '>=0.8'}
+ assert@2.1.0:
+ resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==}
+
assertion-error@2.0.1:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
@@ -3934,6 +4161,9 @@ packages:
axios@1.7.7:
resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==}
+ b4a@1.6.7:
+ resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==}
+
babel-jest@29.7.0:
resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -3962,9 +4192,28 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ bare-events@2.5.0:
+ resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==}
+
+ bare-fs@2.3.5:
+ resolution: {integrity: sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==}
+
+ bare-os@2.4.4:
+ resolution: {integrity: sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==}
+
+ bare-path@2.1.3:
+ resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==}
+
+ bare-stream@2.4.0:
+ resolution: {integrity: sha512-sd96/aZ8LjF1uJbEHzIo1LrERPKRFPEy1nZ1eOILftBxrVsFDAQkimHIIq87xrHcubzjNeETsD9PwN0wp+vLiQ==}
+
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ basic-auth@2.0.1:
+ resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==}
+ engines: {node: '>= 0.8'}
+
batch@0.6.1:
resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==}
@@ -4053,6 +4302,12 @@ packages:
resolution: {integrity: sha512-YyNI4qJJ+piQG6MMEuo7J3Bzaqssufx04zpEKYfSrl/1Op59HWali9zMtBpXnkmqMcOuWJPZvudrm9wISmnCbg==}
engines: {'0': node}
+ browser-stdout@1.3.1:
+ resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
+
+ browserify-zlib@0.1.4:
+ resolution: {integrity: sha512-19OEpq7vWgsH6WkvkBJQDFvJS1uPcbFOQ4v9CU839dO+ZZXUZO6XpE6hNCqvlIIj+4fZvRiJ6DsAQ382GwiyTQ==}
+
browserslist@4.24.2:
resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
@@ -4108,6 +4363,10 @@ packages:
resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==}
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
+ cache-content-type@1.0.1:
+ resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==}
+ engines: {node: '>= 6.0.0'}
+
cacheable-lookup@5.0.4:
resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==}
engines: {node: '>=10.6.0'}
@@ -4414,6 +4673,10 @@ packages:
resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
engines: {node: '>= 0.6'}
+ cookies@0.9.1:
+ resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==}
+ engines: {node: '>= 0.8'}
+
core-util-is@1.0.2:
resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==}
@@ -4593,6 +4856,10 @@ packages:
resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
engines: {node: '>=0.10.0'}
+ decamelize@4.0.0:
+ resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==}
+ engines: {node: '>=10'}
+
decimal.js@10.4.3:
resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==}
@@ -4612,6 +4879,9 @@ packages:
resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
engines: {node: '>=6'}
+ deep-equal@1.0.1:
+ resolution: {integrity: sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==}
+
deep-extend@0.6.0:
resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
engines: {node: '>=4.0.0'}
@@ -4720,6 +4990,10 @@ packages:
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
engines: {node: '>=0.3.1'}
+ diff@5.2.0:
+ resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
+ engines: {node: '>=0.3.1'}
+
dijkstrajs@1.0.3:
resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==}
@@ -4783,6 +5057,9 @@ packages:
resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==}
engines: {node: '>=12'}
+ duplexify@3.7.1:
+ resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==}
+
duplexify@4.1.3:
resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==}
@@ -5143,6 +5420,11 @@ packages:
engines: {node: '>=18'}
hasBin: true
+ esbuild@0.24.0:
+ resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==}
+ engines: {node: '>=18'}
+ hasBin: true
+
escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -5402,6 +5684,9 @@ packages:
fast-diff@1.3.0:
resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
+ fast-fifo@1.3.2:
+ resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==}
+
fast-glob@3.3.2:
resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
engines: {node: '>=8.6.0'}
@@ -5661,6 +5946,11 @@ packages:
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
os: [darwin]
+ fsevents@2.3.2:
+ resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
@@ -5775,6 +6065,11 @@ packages:
resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
hasBin: true
+ glob@11.0.0:
+ resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
deprecated: Glob versions prior to v9 are no longer supported
@@ -5852,6 +6147,10 @@ packages:
resolution: {integrity: sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==}
engines: {node: '>=14.0.0'}
+ gunzip-maybe@1.4.2:
+ resolution: {integrity: sha512-4haO1M4mLO91PW57BMsDFf75UmwoRX0GkdD+Faw+Lr+r/OZrOCS0pIBwOL1xCKQqnQzbNFGgK2V2CpBUPeFNTw==}
+ hasBin: true
+
handle-thing@2.0.1:
resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
@@ -5948,6 +6247,10 @@ packages:
htmlparser2@6.1.0:
resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==}
+ http-assert@1.5.0:
+ resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==}
+ engines: {node: '>= 0.8'}
+
http-cache-semantics@4.1.1:
resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
@@ -5962,6 +6265,10 @@ packages:
resolution: {integrity: sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==}
engines: {node: '>= 0.6'}
+ http-errors@1.8.1:
+ resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==}
+ engines: {node: '>= 0.6'}
+
http-errors@2.0.0:
resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
engines: {node: '>= 0.8'}
@@ -6111,6 +6418,10 @@ packages:
resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==}
engines: {node: '>= 10'}
+ is-arguments@1.1.1:
+ resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
+ engines: {node: '>= 0.4'}
+
is-array-buffer@3.0.4:
resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
engines: {node: '>= 0.4'}
@@ -6151,6 +6462,9 @@ packages:
resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
engines: {node: '>= 0.4'}
+ is-deflate@1.0.0:
+ resolution: {integrity: sha512-YDoFpuZWu1VRXlsnlYMzKyVRITXj7Ej/V9gXQ2/pAe7X1J7M/RNOqaIYi6qUn+B7nGyB9pDXrv02dsB58d2ZAQ==}
+
is-docker@2.2.1:
resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
engines: {node: '>=8'}
@@ -6177,10 +6491,18 @@ packages:
resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==}
engines: {node: '>=6'}
+ is-generator-function@1.0.10:
+ resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
+ engines: {node: '>= 0.4'}
+
is-glob@4.0.3:
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
engines: {node: '>=0.10.0'}
+ is-gzip@1.0.0:
+ resolution: {integrity: sha512-rcfALRIb1YewtnksfRIHGcIY93QnK8BIQ/2c9yDYcG/Y6+vRoJuTWBmmSEbyLLYtXm7q35pHOHbZFQBaLrhlWQ==}
+ engines: {node: '>=0.10.0'}
+
is-inside-container@1.0.0:
resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
engines: {node: '>=14.16'}
@@ -6196,6 +6518,10 @@ packages:
is-module@1.0.0:
resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
+ is-nan@1.3.2:
+ resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==}
+ engines: {node: '>= 0.4'}
+
is-negative-zero@2.0.3:
resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
engines: {node: '>= 0.4'}
@@ -6212,6 +6538,10 @@ packages:
resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
engines: {node: '>=8'}
+ is-plain-obj@2.1.0:
+ resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==}
+ engines: {node: '>=8'}
+
is-plain-obj@3.0.0:
resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
engines: {node: '>=10'}
@@ -6343,6 +6673,10 @@ packages:
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
+ jackspeak@4.0.2:
+ resolution: {integrity: sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==}
+ engines: {node: 20 || >=22}
+
jake@10.9.2:
resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==}
engines: {node: '>=10'}
@@ -6541,6 +6875,9 @@ packages:
json-buffer@3.0.1:
resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+ json-parse-better-errors@1.0.2:
+ resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
+
json-parse-even-better-errors@2.3.1:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
@@ -6601,6 +6938,10 @@ packages:
jws@4.0.0:
resolution: {integrity: sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==}
+ keygrip@1.1.0:
+ resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==}
+ engines: {node: '>= 0.6'}
+
keyv@4.5.4:
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
@@ -6612,6 +6953,32 @@ packages:
resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
engines: {node: '>=6'}
+ koa-compose@4.1.0:
+ resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==}
+
+ koa-convert@2.0.0:
+ resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==}
+ engines: {node: '>= 10'}
+
+ koa-morgan@1.0.1:
+ resolution: {integrity: sha512-JOUdCNlc21G50afBXfErUrr1RKymbgzlrO5KURY+wmDG1Uvd2jmxUJcHgylb/mYXy2SjiNZyYim/ptUBGsIi3A==}
+
+ koa-mount@4.0.0:
+ resolution: {integrity: sha512-rm71jaA/P+6HeCpoRhmCv8KVBIi0tfGuO/dMKicbQnQW/YJntJ6MnnspkodoA4QstMVEZArsCphmd0bJEtoMjQ==}
+ engines: {node: '>= 7.6.0'}
+
+ koa-send@5.0.1:
+ resolution: {integrity: sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==}
+ engines: {node: '>= 8'}
+
+ koa-static@5.0.0:
+ resolution: {integrity: sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==}
+ engines: {node: '>= 7.6.0'}
+
+ koa@2.15.3:
+ resolution: {integrity: sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==}
+ engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4}
+
kuler@2.0.0:
resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==}
@@ -6660,6 +7027,10 @@ packages:
resolution: {integrity: sha512-3p6ZOGNbiX4CdvEd1VcE6yi78UrGNpjHO33noGwHCnT/o2fyllJDepsm8+mFFv/DvtwFHht5HIHSyOy5a+ChVQ==}
engines: {node: '>=4'}
+ load-json-file@4.0.0:
+ resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
+ engines: {node: '>=4'}
+
loader-runner@4.3.0:
resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==}
engines: {node: '>=6.11.5'}
@@ -6757,6 +7128,10 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
+ lru-cache@11.0.2:
+ resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==}
+ engines: {node: 20 || >=22}
+
lru-cache@4.1.5:
resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==}
@@ -6830,6 +7205,10 @@ packages:
memory-stream@1.0.0:
resolution: {integrity: sha512-Wm13VcsPIMdG96dzILfij09PvuS3APtcKNh7M28FsCA/w6+1mjR7hhPmfFNoilX9xU7wTdhsH5lJAm6XNzdtww==}
+ memorystream@0.3.1:
+ resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
+ engines: {node: '>= 0.10.0'}
+
merge-descriptors@1.0.3:
resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==}
@@ -6903,6 +7282,10 @@ packages:
minimalistic-assert@1.0.1:
resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+ minimatch@10.0.1:
+ resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==}
+ engines: {node: 20 || >=22}
+
minimatch@3.0.8:
resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==}
@@ -6976,6 +7359,11 @@ packages:
mnemonist@0.39.6:
resolution: {integrity: sha512-A/0v5Z59y63US00cRSLiloEIw3t5G+MiKz4BhX21FI+YBJXBOGW0ohFxTxO08dsOYlzxo87T7vGfZKYp2bcAWA==}
+ mocha@10.8.2:
+ resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==}
+ engines: {node: '>= 14.0.0'}
+ hasBin: true
+
moment-timezone@0.5.46:
resolution: {integrity: sha512-ZXm9b36esbe7OmdABqIWJuBBiLLwAjrN7CE+7sYdCCx82Nabt1wHDj8TVseS59QIlfFPbOoiBPm6ca9BioG4hw==}
@@ -7012,6 +7400,10 @@ packages:
socks:
optional: true
+ morgan@1.10.0:
+ resolution: {integrity: sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==}
+ engines: {node: '>= 0.8.0'}
+
ms@2.0.0:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
@@ -7153,6 +7545,11 @@ packages:
resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==}
engines: {node: '>=10'}
+ npm-run-all@4.1.5:
+ resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==}
+ engines: {node: '>= 4'}
+ hasBin: true
+
npm-run-path@2.0.2:
resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==}
engines: {node: '>=4'}
@@ -7187,6 +7584,10 @@ packages:
resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==}
engines: {node: '>= 0.4'}
+ object-is@1.1.6:
+ resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
+ engines: {node: '>= 0.4'}
+
object-keys@1.1.1:
resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
engines: {node: '>= 0.4'}
@@ -7239,6 +7640,9 @@ packages:
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
+ only@0.0.2:
+ resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==}
+
open@10.1.0:
resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==}
engines: {node: '>=18'}
@@ -7343,6 +7747,9 @@ packages:
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+ pako@0.2.9:
+ resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==}
+
param-case@3.0.4:
resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
@@ -7358,6 +7765,10 @@ packages:
resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==}
engines: {node: '>=0.10.0'}
+ parse-json@4.0.0:
+ resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
+ engines: {node: '>=4'}
+
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -7406,13 +7817,24 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
+ path-scurry@2.0.0:
+ resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
+ engines: {node: 20 || >=22}
+
path-to-regexp@0.1.10:
resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==}
+ path-to-regexp@6.3.0:
+ resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==}
+
path-type@2.0.0:
resolution: {integrity: sha512-dUnb5dXUf+kzhC/W/F4e5/SkluXIFf5VUHolW1Eg1irn1hGWjPGdsRcvYJ1nD6lhk8Ir7VM0bHJKsYTx8Jx9OQ==}
engines: {node: '>=4'}
+ path-type@3.0.0:
+ resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==}
+ engines: {node: '>=4'}
+
path-type@4.0.0:
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
engines: {node: '>=8'}
@@ -7428,6 +7850,9 @@ packages:
resolution: {integrity: sha512-nh39Mo1eGWmZS7y+mK/dQIqg7S1lp38DpRxkyoHf0ZcUs/HDc+yyTjuOtTvSMZHmfSLuSQaX945u05Y2Q6UWZg==}
engines: {node: '>=14', npm: '>=7'}
+ peek-stream@1.1.3:
+ resolution: {integrity: sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==}
+
pem@1.14.2:
resolution: {integrity: sha512-TOnPtq3ZFnCniOZ+rka4pk8UIze9xG1qI+wNE7EmkiR/cg+53uVvk5QbkWZ7M6RsuOxzz62FW1hlAobJr/lTOA==}
engines: {node: '>=6.0.0'}
@@ -7497,10 +7922,19 @@ packages:
resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
engines: {node: '>=12'}
+ pidtree@0.3.1:
+ resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+
pify@2.3.0:
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
engines: {node: '>=0.10.0'}
+ pify@3.0.0:
+ resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
+ engines: {node: '>=4'}
+
pino-abstract-transport@2.0.0:
resolution: {integrity: sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==}
@@ -7523,6 +7957,16 @@ packages:
resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
engines: {node: '>=8'}
+ playwright-core@1.49.0:
+ resolution: {integrity: sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ playwright@1.49.0:
+ resolution: {integrity: sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==}
+ engines: {node: '>=18'}
+ hasBin: true
+
plist@3.1.0:
resolution: {integrity: sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==}
engines: {node: '>=10.4.0'}
@@ -7729,9 +8173,15 @@ packages:
pstree.remy@1.1.8:
resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==}
+ pump@2.0.1:
+ resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==}
+
pump@3.0.2:
resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==}
+ pumpify@1.5.1:
+ resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==}
+
punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
@@ -7761,6 +8211,9 @@ packages:
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ queue-tick@1.0.1:
+ resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==}
+
quick-format-unescaped@4.0.4:
resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==}
@@ -7843,6 +8296,10 @@ packages:
resolution: {integrity: sha512-eFIBOPW7FGjzBuk3hdXEuNSiTZS/xEMlH49HxMyzb0hyPfu4EhVjT2DH32K1hSSmVq4sebAWnZuuY5auISUTGA==}
engines: {node: '>=4'}
+ read-pkg@3.0.0:
+ resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==}
+ engines: {node: '>=4'}
+
readable-stream@1.0.31:
resolution: {integrity: sha512-tco/Dwv1f/sgIgN6CWdj/restacPKNskK6yps1981ivH2ZmLYcs5o5rVzL3qaO/cSkhN8hYOMWs7+glzOLSgRg==}
@@ -7940,6 +8397,10 @@ packages:
resolution: {integrity: sha512-rzB7NnQpOkPHBWFPP3prUMqOP6yg3HkRGgcvR+lDyvyHoY3fZLFLYDkPXh78SPVBAE6VTCk/V+j8we4djg6o4g==}
engines: {node: '>=4', npm: '>=2'}
+ resolve-path@1.4.0:
+ resolution: {integrity: sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==}
+ engines: {node: '>= 0.8'}
+
resolve-pkg-maps@1.0.0:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
@@ -8328,6 +8789,9 @@ packages:
stream-shift@1.0.3:
resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==}
+ streamx@2.20.2:
+ resolution: {integrity: sha512-aDGDLU+j9tJcUdPGOaHmVF1u/hhI+CsGkT02V3OKlHDV7IukOI+nTWAGkiZEKCO35rWN1wIr4tS7YFr1f4qSvA==}
+
string-length@4.0.2:
resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==}
engines: {node: '>=10'}
@@ -8340,6 +8804,10 @@ packages:
resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
engines: {node: '>=12'}
+ string.prototype.padend@3.1.6:
+ resolution: {integrity: sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==}
+ engines: {node: '>= 0.4'}
+
string.prototype.trim@1.2.9:
resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
engines: {node: '>= 0.4'}
@@ -8480,6 +8948,12 @@ packages:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
engines: {node: '>=6'}
+ tar-fs@3.0.6:
+ resolution: {integrity: sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==}
+
+ tar-stream@3.1.7:
+ resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==}
+
tar@6.2.1:
resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==}
engines: {node: '>=10'}
@@ -8534,6 +9008,9 @@ packages:
resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
engines: {node: '>=8'}
+ text-decoder@1.2.1:
+ resolution: {integrity: sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==}
+
text-hex@1.0.0:
resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==}
@@ -8550,6 +9027,9 @@ packages:
thread-stream@3.1.0:
resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==}
+ through2@2.0.5:
+ resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+
through@2.3.8:
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
@@ -8708,6 +9188,10 @@ packages:
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+ tsscmp@1.0.6:
+ resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==}
+ engines: {node: '>=0.6.x'}
+
tsx@4.19.2:
resolution: {integrity: sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==}
engines: {node: '>=18.0.0'}
@@ -8882,6 +9366,9 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ util@0.12.5:
+ resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==}
+
utila@0.4.0:
resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==}
@@ -8988,6 +9475,9 @@ packages:
jsdom:
optional: true
+ vscode-uri@3.0.8:
+ resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
+
w3c-xmlserializer@4.0.0:
resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==}
engines: {node: '>=14'}
@@ -9129,6 +9619,9 @@ packages:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
+ workerpool@6.5.1:
+ resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==}
+
wrap-ansi@6.2.0:
resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
engines: {node: '>=8'}
@@ -9263,6 +9756,10 @@ packages:
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
engines: {node: '>=12'}
+ yargs-unparser@2.0.0:
+ resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==}
+ engines: {node: '>=10'}
+
yargs@15.4.1:
resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
engines: {node: '>=8'}
@@ -9283,6 +9780,10 @@ packages:
yauzl@2.10.0:
resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==}
+ ylru@1.4.0:
+ resolution: {integrity: sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==}
+ engines: {node: '>= 4.0.0'}
+
yn@3.1.1:
resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
engines: {node: '>=6'}
@@ -10107,7 +10608,7 @@ snapshots:
'@babel/traverse': 7.25.9
'@babel/types': 7.26.0
convert-source-map: 2.0.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -10265,7 +10766,7 @@ snapshots:
'@babel/parser': 7.26.2
'@babel/template': 7.25.9
'@babel/types': 7.26.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -10341,7 +10842,7 @@ snapshots:
'@electron/get': 3.1.0
chalk: 4.1.2
commander: 4.1.1
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 10.1.0
listr2: 7.0.2
semver: 7.6.3
@@ -10356,7 +10857,7 @@ snapshots:
'@electron/rebuild': 3.7.0
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
find-up: 5.0.0
fs-extra: 10.1.0
log-symbols: 4.1.0
@@ -10384,7 +10885,7 @@ snapshots:
'@electron/rebuild': 3.7.0
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fast-glob: 3.3.2
filenamify: 4.3.0
find-up: 5.0.0
@@ -10473,7 +10974,7 @@ snapshots:
'@electron-forge/shared-types': 7.5.0
'@electron-forge/web-multi-logger': 7.5.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
chalk: 4.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fast-glob: 3.3.2
fs-extra: 10.1.0
html-webpack-plugin: 5.6.3(webpack@5.96.1(@swc/core@1.9.1))
@@ -10509,7 +11010,7 @@ snapshots:
'@octokit/rest': 18.12.0(encoding@0.1.13)
'@octokit/types': 6.41.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 10.1.0
log-symbols: 4.1.0
mime-types: 2.1.35
@@ -10532,7 +11033,7 @@ snapshots:
dependencies:
'@electron-forge/shared-types': 7.5.0
'@malept/cross-spawn-promise': 2.0.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 10.1.0
username: 5.1.0
transitivePeerDependencies:
@@ -10599,7 +11100,7 @@ snapshots:
'@electron/get@2.0.3':
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@@ -10613,7 +11114,7 @@ snapshots:
'@electron/get@3.1.0':
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@@ -10643,7 +11144,7 @@ snapshots:
'@electron/notarize@2.5.0':
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 9.1.0
promise-retry: 2.0.1
transitivePeerDependencies:
@@ -10652,7 +11153,7 @@ snapshots:
'@electron/osx-sign@1.3.1':
dependencies:
compare-version: 0.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 10.1.0
isbinaryfile: 4.0.10
minimist: 1.2.8
@@ -10668,7 +11169,7 @@ snapshots:
'@electron/osx-sign': 1.3.1
'@electron/universal': 2.0.1
'@electron/windows-sign': 1.2.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
extract-zip: 2.0.1
filenamify: 4.3.0
fs-extra: 11.2.0
@@ -10689,7 +11190,7 @@ snapshots:
'@electron/node-gyp': https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
detect-libc: 2.0.3
fs-extra: 10.1.0
got: 11.8.6
@@ -10708,7 +11209,7 @@ snapshots:
dependencies:
'@electron/asar': 3.2.17
'@malept/cross-spawn-promise': 2.0.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
dir-compare: 4.2.0
fs-extra: 11.2.0
minimatch: 9.0.5
@@ -10719,7 +11220,7 @@ snapshots:
'@electron/windows-sign@1.2.0':
dependencies:
cross-dirname: 0.1.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 11.2.0
minimist: 1.2.8
postject: 1.0.0-alpha.6
@@ -10738,72 +11239,109 @@ snapshots:
'@elm_binaries/win32_x64@0.19.1-0':
optional: true
+ '@esbuild-plugins/node-globals-polyfill@0.2.3(esbuild@0.24.0)':
+ dependencies:
+ esbuild: 0.24.0
+
'@esbuild/aix-ppc64@0.21.5':
optional: true
'@esbuild/aix-ppc64@0.23.1':
optional: true
+ '@esbuild/aix-ppc64@0.24.0':
+ optional: true
+
'@esbuild/android-arm64@0.21.5':
optional: true
'@esbuild/android-arm64@0.23.1':
optional: true
+ '@esbuild/android-arm64@0.24.0':
+ optional: true
+
'@esbuild/android-arm@0.21.5':
optional: true
'@esbuild/android-arm@0.23.1':
optional: true
+ '@esbuild/android-arm@0.24.0':
+ optional: true
+
'@esbuild/android-x64@0.21.5':
optional: true
'@esbuild/android-x64@0.23.1':
optional: true
+ '@esbuild/android-x64@0.24.0':
+ optional: true
+
'@esbuild/darwin-arm64@0.21.5':
optional: true
'@esbuild/darwin-arm64@0.23.1':
optional: true
+ '@esbuild/darwin-arm64@0.24.0':
+ optional: true
+
'@esbuild/darwin-x64@0.21.5':
optional: true
'@esbuild/darwin-x64@0.23.1':
optional: true
+ '@esbuild/darwin-x64@0.24.0':
+ optional: true
+
'@esbuild/freebsd-arm64@0.21.5':
optional: true
'@esbuild/freebsd-arm64@0.23.1':
optional: true
+ '@esbuild/freebsd-arm64@0.24.0':
+ optional: true
+
'@esbuild/freebsd-x64@0.21.5':
optional: true
'@esbuild/freebsd-x64@0.23.1':
optional: true
+ '@esbuild/freebsd-x64@0.24.0':
+ optional: true
+
'@esbuild/linux-arm64@0.21.5':
optional: true
'@esbuild/linux-arm64@0.23.1':
optional: true
+ '@esbuild/linux-arm64@0.24.0':
+ optional: true
+
'@esbuild/linux-arm@0.21.5':
optional: true
'@esbuild/linux-arm@0.23.1':
optional: true
+ '@esbuild/linux-arm@0.24.0':
+ optional: true
+
'@esbuild/linux-ia32@0.21.5':
optional: true
'@esbuild/linux-ia32@0.23.1':
optional: true
+ '@esbuild/linux-ia32@0.24.0':
+ optional: true
+
'@esbuild/linux-loong64@0.14.54':
optional: true
@@ -10813,75 +11351,114 @@ snapshots:
'@esbuild/linux-loong64@0.23.1':
optional: true
+ '@esbuild/linux-loong64@0.24.0':
+ optional: true
+
'@esbuild/linux-mips64el@0.21.5':
optional: true
'@esbuild/linux-mips64el@0.23.1':
optional: true
+ '@esbuild/linux-mips64el@0.24.0':
+ optional: true
+
'@esbuild/linux-ppc64@0.21.5':
optional: true
'@esbuild/linux-ppc64@0.23.1':
optional: true
+ '@esbuild/linux-ppc64@0.24.0':
+ optional: true
+
'@esbuild/linux-riscv64@0.21.5':
optional: true
'@esbuild/linux-riscv64@0.23.1':
optional: true
+ '@esbuild/linux-riscv64@0.24.0':
+ optional: true
+
'@esbuild/linux-s390x@0.21.5':
optional: true
'@esbuild/linux-s390x@0.23.1':
optional: true
+ '@esbuild/linux-s390x@0.24.0':
+ optional: true
+
'@esbuild/linux-x64@0.21.5':
optional: true
'@esbuild/linux-x64@0.23.1':
optional: true
+ '@esbuild/linux-x64@0.24.0':
+ optional: true
+
'@esbuild/netbsd-x64@0.21.5':
optional: true
'@esbuild/netbsd-x64@0.23.1':
optional: true
+ '@esbuild/netbsd-x64@0.24.0':
+ optional: true
+
'@esbuild/openbsd-arm64@0.23.1':
optional: true
+ '@esbuild/openbsd-arm64@0.24.0':
+ optional: true
+
'@esbuild/openbsd-x64@0.21.5':
optional: true
'@esbuild/openbsd-x64@0.23.1':
optional: true
+ '@esbuild/openbsd-x64@0.24.0':
+ optional: true
+
'@esbuild/sunos-x64@0.21.5':
optional: true
'@esbuild/sunos-x64@0.23.1':
optional: true
+ '@esbuild/sunos-x64@0.24.0':
+ optional: true
+
'@esbuild/win32-arm64@0.21.5':
optional: true
'@esbuild/win32-arm64@0.23.1':
optional: true
+ '@esbuild/win32-arm64@0.24.0':
+ optional: true
+
'@esbuild/win32-ia32@0.21.5':
optional: true
'@esbuild/win32-ia32@0.23.1':
optional: true
+ '@esbuild/win32-ia32@0.24.0':
+ optional: true
+
'@esbuild/win32-x64@0.21.5':
optional: true
'@esbuild/win32-x64@0.23.1':
optional: true
+ '@esbuild/win32-x64@0.24.0':
+ optional: true
+
'@eslint-community/eslint-utils@4.4.1(eslint@8.57.1)':
dependencies:
eslint: 8.57.1
@@ -10897,7 +11474,7 @@ snapshots:
'@eslint/config-array@0.18.0':
dependencies:
'@eslint/object-schema': 2.1.4
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -10907,7 +11484,7 @@ snapshots:
'@eslint/eslintrc@2.1.4':
dependencies:
ajv: 6.12.6
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.2
@@ -10921,7 +11498,7 @@ snapshots:
'@eslint/eslintrc@3.1.0':
dependencies:
ajv: 6.12.6
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
espree: 10.3.0
globals: 14.0.0
ignore: 5.3.2
@@ -11056,7 +11633,7 @@ snapshots:
'@humanwhocodes/config-array@0.13.0':
dependencies:
'@humanwhocodes/object-schema': 2.0.3
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -11314,6 +11891,16 @@ snapshots:
'@js-joda/core@5.6.3': {}
+ '@koa/cors@5.0.0':
+ dependencies:
+ vary: 1.1.2
+
+ '@koa/router@13.1.0':
+ dependencies:
+ http-errors: 2.0.0
+ koa-compose: 4.1.0
+ path-to-regexp: 6.3.0
+
'@leichtgewicht/ip-codec@2.0.5': {}
'@loancrate/prisma-schema-parser@2.0.0':
@@ -11445,6 +12032,10 @@ snapshots:
'@pkgr/core@0.1.1': {}
+ '@playwright/browser-chromium@1.49.0':
+ dependencies:
+ playwright-core: 1.49.0
+
'@radix-ui/number@1.1.0': {}
'@radix-ui/primitive@1.1.0': {}
@@ -12396,6 +12987,8 @@ snapshots:
'@types/aria-query@5.0.4': {}
+ '@types/assert@1.5.11': {}
+
'@types/babel__core@7.20.5':
dependencies:
'@babel/parser': 7.26.2
@@ -12558,6 +13151,8 @@ snapshots:
'@types/minimatch@5.1.2':
optional: true
+ '@types/mocha@10.0.10': {}
+
'@types/mssql@9.1.5':
dependencies:
'@types/node': 22.9.0
@@ -12664,6 +13259,8 @@ snapshots:
'@types/triple-beam@1.3.5': {}
+ '@types/vscode@1.95.0': {}
+
'@types/webextension-polyfill@0.8.3': {}
'@types/webidl-conversions@7.0.3': {}
@@ -12729,7 +13326,7 @@ snapshots:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
eslint: 8.57.1
optionalDependencies:
typescript: 5.6.3
@@ -12742,7 +13339,7 @@ snapshots:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
eslint: 9.14.0(jiti@1.21.6)
optionalDependencies:
typescript: 5.6.3
@@ -12758,7 +13355,7 @@ snapshots:
dependencies:
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/utils': 8.13.0(eslint@8.57.1)(typescript@5.6.3)
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
ts-api-utils: 1.4.0(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
@@ -12770,7 +13367,7 @@ snapshots:
dependencies:
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/utils': 8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
ts-api-utils: 1.4.0(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
@@ -12784,7 +13381,7 @@ snapshots:
dependencies:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fast-glob: 3.3.2
is-glob: 4.0.3
minimatch: 9.0.5
@@ -12875,6 +13472,26 @@ snapshots:
loupe: 3.1.2
tinyrainbow: 1.2.0
+ '@vscode/test-web@0.0.63':
+ dependencies:
+ '@koa/cors': 5.0.0
+ '@koa/router': 13.1.0
+ '@playwright/browser-chromium': 1.49.0
+ glob: 11.0.0
+ gunzip-maybe: 1.4.2
+ http-proxy-agent: 7.0.2
+ https-proxy-agent: 7.0.5
+ koa: 2.15.3
+ koa-morgan: 1.0.1
+ koa-mount: 4.0.0
+ koa-static: 5.0.0
+ minimist: 1.2.8
+ playwright: 1.49.0
+ tar-fs: 3.0.6
+ vscode-uri: 3.0.8
+ transitivePeerDependencies:
+ - supports-color
+
'@webassemblyjs/ast@1.14.1':
dependencies:
'@webassemblyjs/helper-numbers': 1.13.2
@@ -12989,13 +13606,13 @@ snapshots:
agent-base@6.0.2:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
agent-base@7.1.1:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -13039,6 +13656,8 @@ snapshots:
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
+ ansi-colors@4.1.3: {}
+
ansi-escapes@4.3.2:
dependencies:
type-fest: 0.21.3
@@ -13191,6 +13810,14 @@ snapshots:
assert-plus@1.0.0: {}
+ assert@2.1.0:
+ dependencies:
+ call-bind: 1.0.7
+ is-nan: 1.3.2
+ object-is: 1.1.6
+ object.assign: 4.1.5
+ util: 0.12.5
+
assertion-error@2.0.1: {}
astral-regex@2.0.0: {}
@@ -13254,6 +13881,8 @@ snapshots:
transitivePeerDependencies:
- debug
+ b4a@1.6.7: {}
+
babel-jest@29.7.0(@babel/core@7.26.0):
dependencies:
'@babel/core': 7.26.0
@@ -13311,8 +13940,35 @@ snapshots:
balanced-match@1.0.2: {}
+ bare-events@2.5.0:
+ optional: true
+
+ bare-fs@2.3.5:
+ dependencies:
+ bare-events: 2.5.0
+ bare-path: 2.1.3
+ bare-stream: 2.4.0
+ optional: true
+
+ bare-os@2.4.4:
+ optional: true
+
+ bare-path@2.1.3:
+ dependencies:
+ bare-os: 2.4.4
+ optional: true
+
+ bare-stream@2.4.0:
+ dependencies:
+ streamx: 2.20.2
+ optional: true
+
base64-js@1.5.1: {}
+ basic-auth@2.0.1:
+ dependencies:
+ safe-buffer: 5.1.2
+
batch@0.6.1: {}
bcrypt-pbkdf@1.0.2:
@@ -13413,6 +14069,12 @@ snapshots:
browser-request@0.3.3: {}
+ browser-stdout@1.3.1: {}
+
+ browserify-zlib@0.1.4:
+ dependencies:
+ pako: 0.2.9
+
browserslist@4.24.2:
dependencies:
caniuse-lite: 1.0.30001679
@@ -13483,6 +14145,11 @@ snapshots:
transitivePeerDependencies:
- bluebird
+ cache-content-type@1.0.1:
+ dependencies:
+ mime-types: 2.1.35
+ ylru: 1.4.0
+
cacheable-lookup@5.0.4: {}
cacheable-request@7.0.4:
@@ -13662,7 +14329,6 @@ snapshots:
string-width: 4.2.3
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
- optional: true
cliui@8.0.1:
dependencies:
@@ -13689,7 +14355,7 @@ snapshots:
cmake-js@7.3.0:
dependencies:
axios: 1.7.7(debug@4.3.7)
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 11.2.0
lodash.isplainobject: 4.0.6
memory-stream: 1.0.0
@@ -13823,6 +14489,11 @@ snapshots:
cookie@0.7.2: {}
+ cookies@0.9.1:
+ dependencies:
+ depd: 2.0.0
+ keygrip: 1.1.0
+
core-util-is@1.0.2: {}
core-util-is@1.0.3: {}
@@ -14032,8 +14703,16 @@ snapshots:
optionalDependencies:
supports-color: 5.5.0
+ debug@4.3.7(supports-color@8.1.1):
+ dependencies:
+ ms: 2.1.3
+ optionalDependencies:
+ supports-color: 8.1.1
+
decamelize@1.2.0: {}
+ decamelize@4.0.0: {}
+
decimal.js@10.4.3: {}
decompress-response@6.0.0:
@@ -14044,6 +14723,8 @@ snapshots:
deep-eql@5.0.2: {}
+ deep-equal@1.0.1: {}
+
deep-extend@0.6.0: {}
deep-is@0.1.4: {}
@@ -14120,6 +14801,8 @@ snapshots:
diff@4.0.2: {}
+ diff@5.2.0: {}
+
dijkstrajs@1.0.3: {}
dir-compare@4.2.0:
@@ -14184,6 +14867,13 @@ snapshots:
dotenv@16.4.5: {}
+ duplexify@3.7.1:
+ dependencies:
+ end-of-stream: 1.4.4
+ inherits: 2.0.4
+ readable-stream: 2.3.8
+ stream-shift: 1.0.3
+
duplexify@4.1.3:
dependencies:
end-of-stream: 1.4.4
@@ -14212,7 +14902,7 @@ snapshots:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
asar: 3.2.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 9.1.0
glob: 7.2.3
lodash: 4.17.21
@@ -14228,7 +14918,7 @@ snapshots:
electron-installer-debian@3.2.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
electron-installer-common: 0.10.3
fs-extra: 9.1.0
get-folder-size: 2.0.1
@@ -14242,7 +14932,7 @@ snapshots:
electron-installer-redhat@3.4.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
electron-installer-common: 0.10.3
fs-extra: 9.1.0
lodash: 4.17.21
@@ -14263,7 +14953,7 @@ snapshots:
electron-winstaller@5.4.0:
dependencies:
'@electron/asar': 3.2.17
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 7.0.1
lodash: 4.17.21
temp: 0.9.4
@@ -14753,6 +15443,33 @@ snapshots:
'@esbuild/win32-ia32': 0.23.1
'@esbuild/win32-x64': 0.23.1
+ esbuild@0.24.0:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.24.0
+ '@esbuild/android-arm': 0.24.0
+ '@esbuild/android-arm64': 0.24.0
+ '@esbuild/android-x64': 0.24.0
+ '@esbuild/darwin-arm64': 0.24.0
+ '@esbuild/darwin-x64': 0.24.0
+ '@esbuild/freebsd-arm64': 0.24.0
+ '@esbuild/freebsd-x64': 0.24.0
+ '@esbuild/linux-arm': 0.24.0
+ '@esbuild/linux-arm64': 0.24.0
+ '@esbuild/linux-ia32': 0.24.0
+ '@esbuild/linux-loong64': 0.24.0
+ '@esbuild/linux-mips64el': 0.24.0
+ '@esbuild/linux-ppc64': 0.24.0
+ '@esbuild/linux-riscv64': 0.24.0
+ '@esbuild/linux-s390x': 0.24.0
+ '@esbuild/linux-x64': 0.24.0
+ '@esbuild/netbsd-x64': 0.24.0
+ '@esbuild/openbsd-arm64': 0.24.0
+ '@esbuild/openbsd-x64': 0.24.0
+ '@esbuild/sunos-x64': 0.24.0
+ '@esbuild/win32-arm64': 0.24.0
+ '@esbuild/win32-ia32': 0.24.0
+ '@esbuild/win32-x64': 0.24.0
+
escalade@3.2.0: {}
escape-html@1.0.3: {}
@@ -14872,7 +15589,7 @@ snapshots:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.5
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
doctrine: 3.0.0
escape-string-regexp: 4.0.0
eslint-scope: 7.2.2
@@ -14919,7 +15636,7 @@ snapshots:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.5
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
escape-string-regexp: 4.0.0
eslint-scope: 8.2.0
eslint-visitor-keys: 4.2.0
@@ -15094,7 +15811,7 @@ snapshots:
extract-zip@2.0.1:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
get-stream: 5.2.0
yauzl: 2.10.0
optionalDependencies:
@@ -15114,6 +15831,8 @@ snapshots:
fast-diff@1.3.0: {}
+ fast-fifo@1.3.2: {}
+
fast-glob@3.3.2:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -15301,7 +16020,7 @@ snapshots:
flora-colossus@2.0.0:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
fs-extra: 10.1.0
transitivePeerDependencies:
- supports-color
@@ -15310,7 +16029,7 @@ snapshots:
folder-hash@3.3.3:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
graceful-fs: 4.2.11
minimatch: 3.0.8
transitivePeerDependencies:
@@ -15322,7 +16041,7 @@ snapshots:
follow-redirects@1.15.9(debug@4.3.7):
optionalDependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
for-each@0.3.3:
dependencies:
@@ -15433,6 +16152,9 @@ snapshots:
fsevents@2.1.3:
optional: true
+ fsevents@2.3.2:
+ optional: true
+
fsevents@2.3.3:
optional: true
@@ -15449,7 +16171,7 @@ snapshots:
galactus@1.0.0:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
flora-colossus: 2.0.0
fs-extra: 10.1.0
transitivePeerDependencies:
@@ -15576,6 +16298,15 @@ snapshots:
package-json-from-dist: 1.0.1
path-scurry: 1.11.1
+ glob@11.0.0:
+ dependencies:
+ foreground-child: 3.3.0
+ jackspeak: 4.0.2
+ minimatch: 10.0.1
+ minipass: 7.1.2
+ package-json-from-dist: 1.0.1
+ path-scurry: 2.0.0
+
glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
@@ -15702,6 +16433,15 @@ snapshots:
- encoding
- supports-color
+ gunzip-maybe@1.4.2:
+ dependencies:
+ browserify-zlib: 0.1.4
+ is-deflate: 1.0.0
+ is-gzip: 1.0.0
+ peek-stream: 1.1.3
+ pumpify: 1.5.1
+ through2: 2.0.5
+
handle-thing@2.0.1: {}
har-schema@2.0.0: {}
@@ -15791,6 +16531,11 @@ snapshots:
domutils: 2.8.0
entities: 2.2.0
+ http-assert@1.5.0:
+ dependencies:
+ deep-equal: 1.0.1
+ http-errors: 1.8.1
+
http-cache-semantics@4.1.1: {}
http-deceiver@1.2.7: {}
@@ -15810,6 +16555,14 @@ snapshots:
statuses: 1.5.0
toidentifier: 1.0.0
+ http-errors@1.8.1:
+ dependencies:
+ depd: 1.1.2
+ inherits: 2.0.4
+ setprototypeof: 1.2.0
+ statuses: 1.5.0
+ toidentifier: 1.0.1
+
http-errors@2.0.0:
dependencies:
depd: 2.0.0
@@ -15824,14 +16577,14 @@ snapshots:
dependencies:
'@tootallnate/once': 2.0.0
agent-base: 6.0.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
http-proxy-agent@7.0.2:
dependencies:
agent-base: 7.1.1
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -15885,14 +16638,14 @@ snapshots:
https-proxy-agent@5.0.1:
dependencies:
agent-base: 6.0.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.5:
dependencies:
agent-base: 7.1.1
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -15979,6 +16732,11 @@ snapshots:
ipaddr.js@2.2.0: {}
+ is-arguments@1.1.1:
+ dependencies:
+ call-bind: 1.0.7
+ has-tostringtag: 1.0.2
+
is-array-buffer@3.0.4:
dependencies:
call-bind: 1.0.7
@@ -16017,6 +16775,8 @@ snapshots:
dependencies:
has-tostringtag: 1.0.2
+ is-deflate@1.0.0: {}
+
is-docker@2.2.1: {}
is-docker@3.0.0: {}
@@ -16029,10 +16789,16 @@ snapshots:
is-generator-fn@2.1.0: {}
+ is-generator-function@1.0.10:
+ dependencies:
+ has-tostringtag: 1.0.2
+
is-glob@4.0.3:
dependencies:
is-extglob: 2.1.1
+ is-gzip@1.0.0: {}
+
is-inside-container@1.0.0:
dependencies:
is-docker: 3.0.0
@@ -16043,6 +16809,11 @@ snapshots:
is-module@1.0.0: {}
+ is-nan@1.3.2:
+ dependencies:
+ call-bind: 1.0.7
+ define-properties: 1.2.1
+
is-negative-zero@2.0.3: {}
is-number-object@1.0.7:
@@ -16053,6 +16824,8 @@ snapshots:
is-path-inside@3.0.3: {}
+ is-plain-obj@2.1.0: {}
+
is-plain-obj@3.0.0: {}
is-plain-object@2.0.4:
@@ -16162,7 +16935,7 @@ snapshots:
istanbul-lib-source-maps@4.0.1:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
istanbul-lib-coverage: 3.2.2
source-map: 0.6.1
transitivePeerDependencies:
@@ -16179,6 +16952,10 @@ snapshots:
optionalDependencies:
'@pkgjs/parseargs': 0.11.0
+ jackspeak@4.0.2:
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+
jake@10.9.2:
dependencies:
async: 3.2.6
@@ -16642,6 +17419,8 @@ snapshots:
json-buffer@3.0.1: {}
+ json-parse-better-errors@1.0.2: {}
+
json-parse-even-better-errors@2.3.1: {}
json-schema-ref-resolver@1.0.1:
@@ -16718,6 +17497,10 @@ snapshots:
jwa: 2.0.0
safe-buffer: 5.2.1
+ keygrip@1.1.0:
+ dependencies:
+ tsscmp: 1.0.6
+
keyv@4.5.4:
dependencies:
json-buffer: 3.0.1
@@ -16726,6 +17509,69 @@ snapshots:
kleur@3.0.3: {}
+ koa-compose@4.1.0: {}
+
+ koa-convert@2.0.0:
+ dependencies:
+ co: 4.6.0
+ koa-compose: 4.1.0
+
+ koa-morgan@1.0.1:
+ dependencies:
+ morgan: 1.10.0
+ transitivePeerDependencies:
+ - supports-color
+
+ koa-mount@4.0.0:
+ dependencies:
+ debug: 4.3.7(supports-color@8.1.1)
+ koa-compose: 4.1.0
+ transitivePeerDependencies:
+ - supports-color
+
+ koa-send@5.0.1:
+ dependencies:
+ debug: 4.3.7(supports-color@8.1.1)
+ http-errors: 1.8.1
+ resolve-path: 1.4.0
+ transitivePeerDependencies:
+ - supports-color
+
+ koa-static@5.0.0:
+ dependencies:
+ debug: 3.2.7
+ koa-send: 5.0.1
+ transitivePeerDependencies:
+ - supports-color
+
+ koa@2.15.3:
+ dependencies:
+ accepts: 1.3.8
+ cache-content-type: 1.0.1
+ content-disposition: 0.5.4
+ content-type: 1.0.5
+ cookies: 0.9.1
+ debug: 4.3.7(supports-color@8.1.1)
+ delegates: 1.0.0
+ depd: 2.0.0
+ destroy: 1.2.0
+ encodeurl: 1.0.2
+ escape-html: 1.0.3
+ fresh: 0.5.2
+ http-assert: 1.5.0
+ http-errors: 1.8.1
+ is-generator-function: 1.0.10
+ koa-compose: 4.1.0
+ koa-convert: 2.0.0
+ on-finished: 2.4.1
+ only: 0.0.2
+ parseurl: 1.3.3
+ statuses: 1.5.0
+ type-is: 1.6.18
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+
kuler@2.0.0: {}
launch-editor@2.9.1:
@@ -16781,6 +17627,13 @@ snapshots:
pify: 2.3.0
strip-bom: 3.0.0
+ load-json-file@4.0.0:
+ dependencies:
+ graceful-fs: 4.2.11
+ parse-json: 4.0.0
+ pify: 3.0.0
+ strip-bom: 3.0.0
+
loader-runner@4.3.0: {}
loader-utils@2.0.4:
@@ -16872,6 +17725,8 @@ snapshots:
lru-cache@10.4.3: {}
+ lru-cache@11.0.2: {}
+
lru-cache@4.1.5:
dependencies:
pseudomap: 1.0.2
@@ -16968,6 +17823,8 @@ snapshots:
dependencies:
readable-stream: 3.6.2
+ memorystream@0.3.1: {}
+
merge-descriptors@1.0.3: {}
merge-stream@2.0.0: {}
@@ -17009,6 +17866,10 @@ snapshots:
minimalistic-assert@1.0.1: {}
+ minimatch@10.0.1:
+ dependencies:
+ brace-expansion: 2.0.1
+
minimatch@3.0.8:
dependencies:
brace-expansion: 1.1.11
@@ -17080,6 +17941,29 @@ snapshots:
dependencies:
obliterator: 2.0.4
+ mocha@10.8.2:
+ dependencies:
+ ansi-colors: 4.1.3
+ browser-stdout: 1.3.1
+ chokidar: 3.6.0
+ debug: 4.3.7(supports-color@8.1.1)
+ diff: 5.2.0
+ escape-string-regexp: 4.0.0
+ find-up: 5.0.0
+ glob: 8.1.0
+ he: 1.2.0
+ js-yaml: 4.1.0
+ log-symbols: 4.1.0
+ minimatch: 5.1.6
+ ms: 2.1.3
+ serialize-javascript: 6.0.2
+ strip-json-comments: 3.1.1
+ supports-color: 8.1.1
+ workerpool: 6.5.1
+ yargs: 16.2.0
+ yargs-parser: 20.2.9
+ yargs-unparser: 2.0.0
+
moment-timezone@0.5.46:
dependencies:
moment: 2.30.1
@@ -17099,6 +17983,16 @@ snapshots:
optionalDependencies:
socks: 2.8.3
+ morgan@1.10.0:
+ dependencies:
+ basic-auth: 2.0.1
+ debug: 2.6.9
+ depd: 2.0.0
+ on-finished: 2.3.0
+ on-headers: 1.0.2
+ transitivePeerDependencies:
+ - supports-color
+
ms@2.0.0: {}
ms@2.1.1: {}
@@ -17109,7 +18003,7 @@ snapshots:
dependencies:
'@tediousjs/connection-string': 0.5.0
commander: 11.1.0
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
rfdc: 1.4.1
tarn: 3.0.2
tedious: 18.6.1
@@ -17237,6 +18131,18 @@ snapshots:
normalize-url@6.1.0: {}
+ npm-run-all@4.1.5:
+ dependencies:
+ ansi-styles: 3.2.1
+ chalk: 2.4.2
+ cross-spawn: 6.0.5
+ memorystream: 0.3.1
+ minimatch: 3.1.2
+ pidtree: 0.3.1
+ read-pkg: 3.0.0
+ shell-quote: 1.8.1
+ string.prototype.padend: 3.1.6
+
npm-run-path@2.0.2:
dependencies:
path-key: 2.0.1
@@ -17266,6 +18172,11 @@ snapshots:
object-inspect@1.13.3: {}
+ object-is@1.1.6:
+ dependencies:
+ call-bind: 1.0.7
+ define-properties: 1.2.1
+
object-keys@1.1.1: {}
object.assign@4.1.5:
@@ -17322,6 +18233,8 @@ snapshots:
dependencies:
mimic-fn: 2.1.0
+ only@0.0.2: {}
+
open@10.1.0:
dependencies:
default-browser: 5.2.1
@@ -17434,6 +18347,8 @@ snapshots:
package-json-from-dist@1.0.1: {}
+ pako@0.2.9: {}
+
param-case@3.0.4:
dependencies:
dot-case: 3.0.4
@@ -17451,6 +18366,11 @@ snapshots:
dependencies:
error-ex: 1.3.2
+ parse-json@4.0.0:
+ dependencies:
+ error-ex: 1.3.2
+ json-parse-better-errors: 1.0.2
+
parse-json@5.2.0:
dependencies:
'@babel/code-frame': 7.26.2
@@ -17490,12 +18410,23 @@ snapshots:
lru-cache: 10.4.3
minipass: 7.1.2
+ path-scurry@2.0.0:
+ dependencies:
+ lru-cache: 11.0.2
+ minipass: 7.1.2
+
path-to-regexp@0.1.10: {}
+ path-to-regexp@6.3.0: {}
+
path-type@2.0.0:
dependencies:
pify: 2.3.0
+ path-type@3.0.0:
+ dependencies:
+ pify: 3.0.0
+
path-type@4.0.0: {}
pathe@1.1.2: {}
@@ -17504,6 +18435,12 @@ snapshots:
pe-library@1.0.1: {}
+ peek-stream@1.1.3:
+ dependencies:
+ buffer-from: 1.1.2
+ duplexify: 3.7.1
+ through2: 2.0.5
+
pem@1.14.2:
dependencies:
es6-promisify: 6.1.1
@@ -17583,8 +18520,12 @@ snapshots:
picomatch@4.0.2: {}
+ pidtree@0.3.1: {}
+
pify@2.3.0: {}
+ pify@3.0.0: {}
+
pino-abstract-transport@2.0.0:
dependencies:
split2: 4.2.0
@@ -17628,6 +18569,14 @@ snapshots:
dependencies:
find-up: 4.1.0
+ playwright-core@1.49.0: {}
+
+ playwright@1.49.0:
+ dependencies:
+ playwright-core: 1.49.0
+ optionalDependencies:
+ fsevents: 2.3.2
+
plist@3.1.0:
dependencies:
'@xmldom/xmldom': 0.8.10
@@ -17796,11 +18745,22 @@ snapshots:
pstree.remy@1.1.8: {}
+ pump@2.0.1:
+ dependencies:
+ end-of-stream: 1.4.4
+ once: 1.4.0
+
pump@3.0.2:
dependencies:
end-of-stream: 1.4.4
once: 1.4.0
+ pumpify@1.5.1:
+ dependencies:
+ duplexify: 3.7.1
+ inherits: 2.0.4
+ pump: 2.0.1
+
punycode@2.3.1: {}
pure-rand@6.1.0: {}
@@ -17825,6 +18785,8 @@ snapshots:
queue-microtask@1.2.3: {}
+ queue-tick@1.0.1: {}
+
quick-format-unescaped@4.0.4: {}
quick-lru@5.1.1: {}
@@ -17893,7 +18855,7 @@ snapshots:
read-binary-file-arch@1.0.6:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -17912,6 +18874,12 @@ snapshots:
normalize-package-data: 2.5.0
path-type: 2.0.0
+ read-pkg@3.0.0:
+ dependencies:
+ load-json-file: 4.0.0
+ normalize-package-data: 2.5.0
+ path-type: 3.0.0
+
readable-stream@1.0.31:
dependencies:
core-util-is: 1.0.3
@@ -18037,6 +19005,11 @@ snapshots:
dependencies:
get-installed-path: 2.1.1
+ resolve-path@1.4.0:
+ dependencies:
+ http-errors: 1.6.3
+ path-is-absolute: 1.0.1
+
resolve-pkg-maps@1.0.0: {}
resolve.exports@2.0.2: {}
@@ -18414,7 +19387,7 @@ snapshots:
socks-proxy-agent@7.0.0:
dependencies:
agent-base: 6.0.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
socks: 2.8.3
transitivePeerDependencies:
- supports-color
@@ -18466,7 +19439,7 @@ snapshots:
spdy-transport@3.0.0:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
detect-node: 2.1.0
hpack.js: 2.1.6
obuf: 1.1.2
@@ -18477,7 +19450,7 @@ snapshots:
spdy@4.0.2:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
handle-thing: 2.0.1
http-deceiver: 1.2.7
select-hose: 2.0.0
@@ -18535,6 +19508,14 @@ snapshots:
stream-shift@1.0.3: {}
+ streamx@2.20.2:
+ dependencies:
+ fast-fifo: 1.3.2
+ queue-tick: 1.0.1
+ text-decoder: 1.2.1
+ optionalDependencies:
+ bare-events: 2.5.0
+
string-length@4.0.2:
dependencies:
char-regex: 1.0.2
@@ -18552,6 +19533,13 @@ snapshots:
emoji-regex: 9.2.2
strip-ansi: 7.1.0
+ string.prototype.padend@3.1.6:
+ dependencies:
+ call-bind: 1.0.7
+ define-properties: 1.2.1
+ es-abstract: 1.23.3
+ es-object-atoms: 1.0.0
+
string.prototype.trim@1.2.9:
dependencies:
call-bind: 1.0.7
@@ -18635,7 +19623,7 @@ snapshots:
sumchecker@3.0.1:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -18710,6 +19698,20 @@ snapshots:
tapable@2.2.1: {}
+ tar-fs@3.0.6:
+ dependencies:
+ pump: 3.0.2
+ tar-stream: 3.1.7
+ optionalDependencies:
+ bare-fs: 2.3.5
+ bare-path: 2.1.3
+
+ tar-stream@3.1.7:
+ dependencies:
+ b4a: 1.6.7
+ fast-fifo: 1.3.2
+ streamx: 2.20.2
+
tar@6.2.1:
dependencies:
chownr: 2.0.0
@@ -18788,6 +19790,8 @@ snapshots:
glob: 7.2.3
minimatch: 3.1.2
+ text-decoder@1.2.1: {}
+
text-hex@1.0.0: {}
text-table@0.2.0: {}
@@ -18804,6 +19808,11 @@ snapshots:
dependencies:
real-require: 0.2.0
+ through2@2.0.5:
+ dependencies:
+ readable-stream: 2.3.8
+ xtend: 4.0.2
+
through@2.3.8: {}
thunky@1.1.0: {}
@@ -19004,6 +20013,8 @@ snapshots:
tslib@2.8.1: {}
+ tsscmp@1.0.6: {}
+
tsx@4.19.2:
dependencies:
esbuild: 0.23.1
@@ -19172,6 +20183,14 @@ snapshots:
util-deprecate@1.0.2: {}
+ util@0.12.5:
+ dependencies:
+ inherits: 2.0.4
+ is-arguments: 1.1.1
+ is-generator-function: 1.0.10
+ is-typed-array: 1.1.13
+ which-typed-array: 1.1.15
+
utila@0.4.0: {}
utils-merge@1.0.1: {}
@@ -19206,7 +20225,7 @@ snapshots:
vite-node@2.1.4(@types/node@22.9.0)(terser@5.36.0):
dependencies:
cac: 6.7.14
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
pathe: 1.1.2
vite: 5.4.10(@types/node@22.9.0)(terser@5.36.0)
transitivePeerDependencies:
@@ -19246,7 +20265,7 @@ snapshots:
'@vitest/spy': 2.1.4
'@vitest/utils': 2.1.4
chai: 5.1.2
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.7(supports-color@8.1.1)
expect-type: 1.1.0
magic-string: 0.30.12
pathe: 1.1.2
@@ -19272,6 +20291,8 @@ snapshots:
- supports-color
- terser
+ vscode-uri@3.0.8: {}
+
w3c-xmlserializer@4.0.0:
dependencies:
xml-name-validator: 4.0.0
@@ -19487,6 +20508,8 @@ snapshots:
word-wrap@1.2.5: {}
+ workerpool@6.5.1: {}
+
wrap-ansi@6.2.0:
dependencies:
ansi-styles: 4.3.0
@@ -19571,11 +20594,17 @@ snapshots:
camelcase: 5.3.1
decamelize: 1.2.0
- yargs-parser@20.2.9:
- optional: true
+ yargs-parser@20.2.9: {}
yargs-parser@21.1.1: {}
+ yargs-unparser@2.0.0:
+ dependencies:
+ camelcase: 6.3.0
+ decamelize: 4.0.0
+ flat: 5.0.2
+ is-plain-obj: 2.1.0
+
yargs@15.4.1:
dependencies:
cliui: 6.0.0
@@ -19599,7 +20628,6 @@ snapshots:
string-width: 4.2.3
y18n: 5.0.8
yargs-parser: 20.2.9
- optional: true
yargs@17.7.2:
dependencies:
@@ -19621,6 +20649,8 @@ snapshots:
buffer-crc32: 0.2.13
fd-slicer: 1.1.0
+ ylru@1.4.0: {}
+
yn@3.1.1: {}
yocto-queue@0.1.0: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index 81644da32..35f8a8361 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -2,7 +2,9 @@ packages:
- "backend"
- "cli"
- "cli/html-report"
- - "extensions/*"
+ - "extensions/browser-extension"
+ - "extensions/desktop"
+ - "extensions/vscode-aml"
- "frontend"
- "gateway"
- "libs/*"
From 895796e29277e2b7f0696a86a94fd005045cde9f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Knuchel?=
Date: Fri, 22 Nov 2024 14:06:11 +0100
Subject: [PATCH 03/20] Update libs
---
extensions/vscode-aml/package.json | 29 +-
pnpm-lock.yaml | 452 ++++++++++++++++++++++-------
2 files changed, 367 insertions(+), 114 deletions(-)
diff --git a/extensions/vscode-aml/package.json b/extensions/vscode-aml/package.json
index fdd9cb71b..5427609f3 100644
--- a/extensions/vscode-aml/package.json
+++ b/extensions/vscode-aml/package.json
@@ -8,7 +8,11 @@
"engines": {
"vscode": "^1.95.0"
},
- "categories": ["Programming Languages", "Snippets", "Other"],
+ "categories": [
+ "Programming Languages",
+ "Snippets",
+ "Other"
+ ],
"repository": {
"type": "git",
"url": "git+https://github.com/azimuttapp/azimutt.git",
@@ -37,20 +41,23 @@
"lint": "eslint src",
"run-in-browser": "vscode-test-web --browserType=chromium --extensionDevelopmentPath=. ."
},
+ "dependencies": {
+ "@azimutt/aml": "^0.1.8"
+ },
"devDependencies": {
+ "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
+ "@types/assert": "^1.5.11",
+ "@types/mocha": "^10.0.10",
"@types/vscode": "^1.95.0",
- "@types/mocha": "^10.0.9",
- "@types/assert": "^1.5.10",
- "eslint": "^9.13.0",
- "@typescript-eslint/eslint-plugin": "^8.10.0",
- "@typescript-eslint/parser": "^8.7.0",
- "mocha": "^10.7.3",
- "typescript": "^5.6.3",
- "@vscode/test-web": "^0.0.63",
+ "@typescript-eslint/eslint-plugin": "^8.15.0",
+ "@typescript-eslint/parser": "^8.15.0",
+ "@vscode/test-web": "^0.0.64",
+ "assert": "^2.1.0",
"esbuild": "^0.24.0",
+ "eslint": "^9.15.0",
"glob": "^11.0.0",
+ "mocha": "^10.8.2",
"npm-run-all": "^4.1.5",
- "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
- "assert": "^2.1.0"
+ "typescript": "^5.6.3"
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index bfbfd18a4..20b6546d6 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -301,28 +301,32 @@ importers:
version: 5.96.1(@swc/core@1.9.1)
extensions/vscode-aml:
+ dependencies:
+ '@azimutt/aml':
+ specifier: ^0.1.8
+ version: 0.1.8
devDependencies:
'@esbuild-plugins/node-globals-polyfill':
specifier: ^0.2.3
version: 0.2.3(esbuild@0.24.0)
'@types/assert':
- specifier: ^1.5.10
+ specifier: ^1.5.11
version: 1.5.11
'@types/mocha':
- specifier: ^10.0.9
+ specifier: ^10.0.10
version: 10.0.10
'@types/vscode':
specifier: ^1.95.0
version: 1.95.0
'@typescript-eslint/eslint-plugin':
- specifier: ^8.10.0
- version: 8.13.0(@typescript-eslint/parser@8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
+ specifier: ^8.15.0
+ version: 8.15.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
'@typescript-eslint/parser':
- specifier: ^8.7.0
- version: 8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
+ specifier: ^8.15.0
+ version: 8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
'@vscode/test-web':
- specifier: ^0.0.63
- version: 0.0.63
+ specifier: ^0.0.64
+ version: 0.0.64
assert:
specifier: ^2.1.0
version: 2.1.0
@@ -330,13 +334,13 @@ importers:
specifier: ^0.24.0
version: 0.24.0
eslint:
- specifier: ^9.13.0
- version: 9.14.0(jiti@1.21.6)
+ specifier: ^9.15.0
+ version: 9.15.0(jiti@1.21.6)
glob:
specifier: ^11.0.0
version: 11.0.0
mocha:
- specifier: ^10.7.3
+ specifier: ^10.8.2
version: 10.8.2
npm-run-all:
specifier: ^4.1.5
@@ -610,7 +614,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -641,7 +645,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -672,7 +676,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -703,7 +707,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -734,7 +738,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -765,7 +769,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -799,7 +803,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -836,7 +840,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -870,7 +874,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -904,7 +908,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -941,7 +945,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -996,7 +1000,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1045,7 +1049,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1100,7 +1104,7 @@ importers:
version: 4.25.0
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1121,7 +1125,7 @@ importers:
version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
ts-jest:
specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3)
+ version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3)))(typescript@5.6.3)
typescript:
specifier: ^5.6.3
version: 5.6.3
@@ -1332,6 +1336,9 @@ packages:
resolution: {integrity: sha512-k0z5b5dkYSuOHY0AOZ4iyjcGBeVL9lWsQNF4+c+1oK3OW4fRWl/bNa1soMRMpangsHPzgyn/QkzuDbl7qR4qrw==}
engines: {node: '>=16.0.0'}
+ '@azimutt/aml@0.1.8':
+ resolution: {integrity: sha512-gyNAkiW1TdaXA2rg9SpBWE2p1VUnPZIv1C1r+fSt4DlDVjcRnO4Q+9QpJZoqmVghu5Hqbd5c5ia+k/vAwufrkw==}
+
'@azimutt/connector-bigquery@0.1.2':
resolution: {integrity: sha512-MXdXAZxxn/32nCKXz+ZIk4BQajHhdVw4eI5oIKj5+vrjdXnLmXNvf6QClbHJ+mR9anDSJLTvPDEDY4iI3X4nFw==}
@@ -2269,10 +2276,18 @@ packages:
resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/config-array@0.19.0':
+ resolution: {integrity: sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/core@0.7.0':
resolution: {integrity: sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/core@0.9.0':
+ resolution: {integrity: sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/eslintrc@2.1.4':
resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2281,6 +2296,10 @@ packages:
resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/eslintrc@3.2.0':
+ resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/js@8.57.1':
resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2289,6 +2308,10 @@ packages:
resolution: {integrity: sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/js@9.15.0':
+ resolution: {integrity: sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/object-schema@2.1.4':
resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -2297,6 +2320,10 @@ packages:
resolution: {integrity: sha512-CXtq5nR4Su+2I47WPOlWud98Y5Lv8Kyxp2ukhgFx/eW6Blm18VXJO5WuQylPugRo8nbluoi6GvvxBLqHcvqUUw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/plugin-kit@0.2.3':
+ resolution: {integrity: sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@fastify/ajv-compiler@3.6.0':
resolution: {integrity: sha512-LwdXQJjmMD+GwLOkP7TVC68qa+pSSogeWWmznRJ/coyTcfe9qA05AHFSe1eZFwK6q+xVRpChnvFUkf1iYaSZsQ==}
@@ -3721,6 +3748,17 @@ packages:
typescript:
optional: true
+ '@typescript-eslint/eslint-plugin@8.15.0':
+ resolution: {integrity: sha512-+zkm9AR1Ds9uLWN3fkoeXgFppaQ+uEVtfOV62dDmsy9QCNqlRHWNEck4yarvRNrvRcHQLGfqBNui3cimoz8XAg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@typescript-eslint/parser@8.13.0':
resolution: {integrity: sha512-w0xp+xGg8u/nONcGw1UXAr6cjCPU1w0XVyBs6Zqaj5eLmxkKQAByTdV/uGgNN5tVvN/kKpoQlP2cL7R+ajZZIQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3731,10 +3769,24 @@ packages:
typescript:
optional: true
+ '@typescript-eslint/parser@8.15.0':
+ resolution: {integrity: sha512-7n59qFpghG4uazrF9qtGKBZXn7Oz4sOMm8dwNWDQY96Xlm2oX67eipqcblDj+oY1lLCbf1oltMZFpUso66Kl1A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@typescript-eslint/scope-manager@8.13.0':
resolution: {integrity: sha512-XsGWww0odcUT0gJoBZ1DeulY1+jkaHUciUq4jKNv4cpInbvvrtDoyBH9rE/n2V29wQJPk8iCH1wipra9BhmiMA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@typescript-eslint/scope-manager@8.15.0':
+ resolution: {integrity: sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@typescript-eslint/type-utils@8.13.0':
resolution: {integrity: sha512-Rqnn6xXTR316fP4D2pohZenJnp+NwQ1mo7/JM+J1LWZENSLkJI8ID8QNtlvFeb0HnFSK94D6q0cnMX6SbE5/vA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3744,10 +3796,24 @@ packages:
typescript:
optional: true
+ '@typescript-eslint/type-utils@8.15.0':
+ resolution: {integrity: sha512-UU6uwXDoI3JGSXmcdnP5d8Fffa2KayOhUUqr/AiBnG1Gl7+7ut/oyagVeSkh7bxQ0zSXV9ptRh/4N15nkCqnpw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@typescript-eslint/types@8.13.0':
resolution: {integrity: sha512-4cyFErJetFLckcThRUFdReWJjVsPCqyBlJTi6IDEpc1GWCIIZRFxVppjWLIMcQhNGhdWJJRYFHpHoDWvMlDzng==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@typescript-eslint/types@8.15.0':
+ resolution: {integrity: sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@typescript-eslint/typescript-estree@8.13.0':
resolution: {integrity: sha512-v7SCIGmVsRK2Cy/LTLGN22uea6SaUIlpBcO/gnMGT/7zPtxp90bphcGf4fyrCQl3ZtiBKqVTG32hb668oIYy1g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3757,16 +3823,39 @@ packages:
typescript:
optional: true
+ '@typescript-eslint/typescript-estree@8.15.0':
+ resolution: {integrity: sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@typescript-eslint/utils@8.13.0':
resolution: {integrity: sha512-A1EeYOND6Uv250nybnLZapeXpYMl8tkzYUxqmoKAWnI4sei3ihf2XdZVd+vVOmHGcp3t+P7yRrNsyyiXTvShFQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
+ '@typescript-eslint/utils@8.15.0':
+ resolution: {integrity: sha512-k82RI9yGhr0QM3Dnq+egEpz9qB6Un+WLYhmoNcvl8ltMEededhh7otBVVIDDsEEttauwdY/hQoSsOv13lxrFzQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@typescript-eslint/visitor-keys@8.13.0':
resolution: {integrity: sha512-7N/+lztJqH4Mrf0lb10R/CbI1EaAMMGyF5y0oJvFoAhafwgiRA7TXyd8TFn8FC8k5y2dTsYogg238qavRGNnlw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@typescript-eslint/visitor-keys@8.15.0':
+ resolution: {integrity: sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@ungap/structured-clone@1.2.0':
resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
@@ -3807,8 +3896,8 @@ packages:
'@vitest/utils@2.1.4':
resolution: {integrity: sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==}
- '@vscode/test-web@0.0.63':
- resolution: {integrity: sha512-FIFfT2gZeEp0d1RnR+IYORS9HZPTtlTNuMLdZpO5c9sAtz5rCHPWsCD5VxnV4U08Slz5GdzgH7pDQspb9Oa8ZQ==}
+ '@vscode/test-web@0.0.64':
+ resolution: {integrity: sha512-V7fTb3K1HzlqwT+VrxIq+vZLqPYzoItu6Tg3vd6sbd87ll0srICQNiH/W7IBUn76zHf7v5xzEXzNOnhSQJ2/YQ==}
engines: {node: '>=16'}
hasBin: true
@@ -5550,6 +5639,16 @@ packages:
jiti:
optional: true
+ eslint@9.15.0:
+ resolution: {integrity: sha512-7CrWySmIibCgT1Os28lUU6upBshZ+GxybLOrmRzi08kS8MBuO8QA7pXEgYgY5W8vK3e74xv0lpjo9DbaGU9Rkw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ hasBin: true
+ peerDependencies:
+ jiti: '*'
+ peerDependenciesMeta:
+ jiti:
+ optional: true
+
esniff@2.0.1:
resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==}
engines: {node: '>=0.10'}
@@ -10338,6 +10437,14 @@ snapshots:
'@smithy/types': 3.6.0
tslib: 2.8.1
+ '@azimutt/aml@0.1.8':
+ dependencies:
+ '@azimutt/models': 0.1.15
+ '@azimutt/utils': 0.1.6
+ chevrotain: 10.5.0
+ transitivePeerDependencies:
+ - encoding
+
'@azimutt/connector-bigquery@0.1.2':
dependencies:
'@azimutt/models': 0.1.15
@@ -10608,7 +10715,7 @@ snapshots:
'@babel/traverse': 7.25.9
'@babel/types': 7.26.0
convert-source-map: 2.0.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -10766,7 +10873,7 @@ snapshots:
'@babel/parser': 7.26.2
'@babel/template': 7.25.9
'@babel/types': 7.26.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -10842,7 +10949,7 @@ snapshots:
'@electron/get': 3.1.0
chalk: 4.1.2
commander: 4.1.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 10.1.0
listr2: 7.0.2
semver: 7.6.3
@@ -10857,7 +10964,7 @@ snapshots:
'@electron/rebuild': 3.7.0
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
find-up: 5.0.0
fs-extra: 10.1.0
log-symbols: 4.1.0
@@ -10885,7 +10992,7 @@ snapshots:
'@electron/rebuild': 3.7.0
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fast-glob: 3.3.2
filenamify: 4.3.0
find-up: 5.0.0
@@ -10974,7 +11081,7 @@ snapshots:
'@electron-forge/shared-types': 7.5.0
'@electron-forge/web-multi-logger': 7.5.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
chalk: 4.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fast-glob: 3.3.2
fs-extra: 10.1.0
html-webpack-plugin: 5.6.3(webpack@5.96.1(@swc/core@1.9.1))
@@ -11010,7 +11117,7 @@ snapshots:
'@octokit/rest': 18.12.0(encoding@0.1.13)
'@octokit/types': 6.41.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 10.1.0
log-symbols: 4.1.0
mime-types: 2.1.35
@@ -11033,7 +11140,7 @@ snapshots:
dependencies:
'@electron-forge/shared-types': 7.5.0
'@malept/cross-spawn-promise': 2.0.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 10.1.0
username: 5.1.0
transitivePeerDependencies:
@@ -11100,7 +11207,7 @@ snapshots:
'@electron/get@2.0.3':
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@@ -11114,7 +11221,7 @@ snapshots:
'@electron/get@3.1.0':
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@@ -11144,7 +11251,7 @@ snapshots:
'@electron/notarize@2.5.0':
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 9.1.0
promise-retry: 2.0.1
transitivePeerDependencies:
@@ -11153,7 +11260,7 @@ snapshots:
'@electron/osx-sign@1.3.1':
dependencies:
compare-version: 0.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 10.1.0
isbinaryfile: 4.0.10
minimist: 1.2.8
@@ -11169,7 +11276,7 @@ snapshots:
'@electron/osx-sign': 1.3.1
'@electron/universal': 2.0.1
'@electron/windows-sign': 1.2.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
extract-zip: 2.0.1
filenamify: 4.3.0
fs-extra: 11.2.0
@@ -11190,7 +11297,7 @@ snapshots:
'@electron/node-gyp': https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
detect-libc: 2.0.3
fs-extra: 10.1.0
got: 11.8.6
@@ -11209,7 +11316,7 @@ snapshots:
dependencies:
'@electron/asar': 3.2.17
'@malept/cross-spawn-promise': 2.0.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
dir-compare: 4.2.0
fs-extra: 11.2.0
minimatch: 9.0.5
@@ -11220,7 +11327,7 @@ snapshots:
'@electron/windows-sign@1.2.0':
dependencies:
cross-dirname: 0.1.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 11.2.0
minimist: 1.2.8
postject: 1.0.0-alpha.6
@@ -11469,22 +11576,37 @@ snapshots:
eslint: 9.14.0(jiti@1.21.6)
eslint-visitor-keys: 3.4.3
+ '@eslint-community/eslint-utils@4.4.1(eslint@9.15.0(jiti@1.21.6))':
+ dependencies:
+ eslint: 9.15.0(jiti@1.21.6)
+ eslint-visitor-keys: 3.4.3
+
'@eslint-community/regexpp@4.12.1': {}
'@eslint/config-array@0.18.0':
dependencies:
'@eslint/object-schema': 2.1.4
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/config-array@0.19.0':
+ dependencies:
+ '@eslint/object-schema': 2.1.4
+ debug: 4.3.7(supports-color@5.5.0)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
'@eslint/core@0.7.0': {}
+ '@eslint/core@0.9.0': {}
+
'@eslint/eslintrc@2.1.4':
dependencies:
ajv: 6.12.6
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.2
@@ -11498,7 +11620,21 @@ snapshots:
'@eslint/eslintrc@3.1.0':
dependencies:
ajv: 6.12.6
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
+ espree: 10.3.0
+ globals: 14.0.0
+ ignore: 5.3.2
+ import-fresh: 3.3.0
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/eslintrc@3.2.0':
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.3.7(supports-color@5.5.0)
espree: 10.3.0
globals: 14.0.0
ignore: 5.3.2
@@ -11513,12 +11649,18 @@ snapshots:
'@eslint/js@9.14.0': {}
+ '@eslint/js@9.15.0': {}
+
'@eslint/object-schema@2.1.4': {}
'@eslint/plugin-kit@0.2.2':
dependencies:
levn: 0.4.1
+ '@eslint/plugin-kit@0.2.3':
+ dependencies:
+ levn: 0.4.1
+
'@fastify/ajv-compiler@3.6.0':
dependencies:
ajv: 8.17.1
@@ -11633,7 +11775,7 @@ snapshots:
'@humanwhocodes/config-array@0.13.0':
dependencies:
'@humanwhocodes/object-schema': 2.0.3
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -13320,13 +13462,31 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@typescript-eslint/eslint-plugin@8.15.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ '@typescript-eslint/parser': 8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
+ '@typescript-eslint/scope-manager': 8.15.0
+ '@typescript-eslint/type-utils': 8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.15.0
+ eslint: 9.15.0(jiti@1.21.6)
+ graphemer: 1.4.0
+ ignore: 5.3.2
+ natural-compare: 1.4.0
+ ts-api-utils: 1.4.0(typescript@5.6.3)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/parser@8.13.0(eslint@8.57.1)(typescript@5.6.3)':
dependencies:
'@typescript-eslint/scope-manager': 8.13.0
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
eslint: 8.57.1
optionalDependencies:
typescript: 5.6.3
@@ -13339,23 +13499,41 @@ snapshots:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
eslint: 9.14.0(jiti@1.21.6)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- supports-color
+ '@typescript-eslint/parser@8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.15.0
+ '@typescript-eslint/types': 8.15.0
+ '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.15.0
+ debug: 4.3.7(supports-color@5.5.0)
+ eslint: 9.15.0(jiti@1.21.6)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/scope-manager@8.13.0':
dependencies:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/visitor-keys': 8.13.0
+ '@typescript-eslint/scope-manager@8.15.0':
+ dependencies:
+ '@typescript-eslint/types': 8.15.0
+ '@typescript-eslint/visitor-keys': 8.15.0
+
'@typescript-eslint/type-utils@8.13.0(eslint@8.57.1)(typescript@5.6.3)':
dependencies:
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/utils': 8.13.0(eslint@8.57.1)(typescript@5.6.3)
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
ts-api-utils: 1.4.0(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
@@ -13367,7 +13545,7 @@ snapshots:
dependencies:
'@typescript-eslint/typescript-estree': 8.13.0(typescript@5.6.3)
'@typescript-eslint/utils': 8.13.0(eslint@9.14.0(jiti@1.21.6))(typescript@5.6.3)
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
ts-api-utils: 1.4.0(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
@@ -13375,13 +13553,42 @@ snapshots:
- eslint
- supports-color
+ '@typescript-eslint/type-utils@8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)':
+ dependencies:
+ '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)
+ debug: 4.3.7(supports-color@5.5.0)
+ eslint: 9.15.0(jiti@1.21.6)
+ ts-api-utils: 1.4.0(typescript@5.6.3)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/types@8.13.0': {}
+ '@typescript-eslint/types@8.15.0': {}
+
'@typescript-eslint/typescript-estree@8.13.0(typescript@5.6.3)':
dependencies:
'@typescript-eslint/types': 8.13.0
'@typescript-eslint/visitor-keys': 8.13.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
+ fast-glob: 3.3.2
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.6.3
+ ts-api-utils: 1.4.0(typescript@5.6.3)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/typescript-estree@8.15.0(typescript@5.6.3)':
+ dependencies:
+ '@typescript-eslint/types': 8.15.0
+ '@typescript-eslint/visitor-keys': 8.15.0
+ debug: 4.3.7(supports-color@5.5.0)
fast-glob: 3.3.2
is-glob: 4.0.3
minimatch: 9.0.5
@@ -13414,11 +13621,28 @@ snapshots:
- supports-color
- typescript
+ '@typescript-eslint/utils@8.15.0(eslint@9.15.0(jiti@1.21.6))(typescript@5.6.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.15.0(jiti@1.21.6))
+ '@typescript-eslint/scope-manager': 8.15.0
+ '@typescript-eslint/types': 8.15.0
+ '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
+ eslint: 9.15.0(jiti@1.21.6)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/visitor-keys@8.13.0':
dependencies:
'@typescript-eslint/types': 8.13.0
eslint-visitor-keys: 3.4.3
+ '@typescript-eslint/visitor-keys@8.15.0':
+ dependencies:
+ '@typescript-eslint/types': 8.15.0
+ eslint-visitor-keys: 4.2.0
+
'@ungap/structured-clone@1.2.0': {}
'@vercel/webpack-asset-relocator-loader@1.7.4':
@@ -13472,7 +13696,7 @@ snapshots:
loupe: 3.1.2
tinyrainbow: 1.2.0
- '@vscode/test-web@0.0.63':
+ '@vscode/test-web@0.0.64':
dependencies:
'@koa/cors': 5.0.0
'@koa/router': 13.1.0
@@ -13606,13 +13830,13 @@ snapshots:
agent-base@6.0.2:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
agent-base@7.1.1:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -14355,7 +14579,7 @@ snapshots:
cmake-js@7.3.0:
dependencies:
axios: 1.7.7(debug@4.3.7)
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 11.2.0
lodash.isplainobject: 4.0.6
memory-stream: 1.0.0
@@ -14902,7 +15126,7 @@ snapshots:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
asar: 3.2.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 9.1.0
glob: 7.2.3
lodash: 4.17.21
@@ -14918,7 +15142,7 @@ snapshots:
electron-installer-debian@3.2.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
electron-installer-common: 0.10.3
fs-extra: 9.1.0
get-folder-size: 2.0.1
@@ -14932,7 +15156,7 @@ snapshots:
electron-installer-redhat@3.4.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
electron-installer-common: 0.10.3
fs-extra: 9.1.0
lodash: 4.17.21
@@ -14953,7 +15177,7 @@ snapshots:
electron-winstaller@5.4.0:
dependencies:
'@electron/asar': 3.2.17
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 7.0.1
lodash: 4.17.21
temp: 0.9.4
@@ -15589,7 +15813,7 @@ snapshots:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.5
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
doctrine: 3.0.0
escape-string-regexp: 4.0.0
eslint-scope: 7.2.2
@@ -15636,7 +15860,7 @@ snapshots:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.5
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
escape-string-regexp: 4.0.0
eslint-scope: 8.2.0
eslint-visitor-keys: 4.2.0
@@ -15661,6 +15885,47 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ eslint@9.15.0(jiti@1.21.6):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.15.0(jiti@1.21.6))
+ '@eslint-community/regexpp': 4.12.1
+ '@eslint/config-array': 0.19.0
+ '@eslint/core': 0.9.0
+ '@eslint/eslintrc': 3.2.0
+ '@eslint/js': 9.15.0
+ '@eslint/plugin-kit': 0.2.3
+ '@humanfs/node': 0.16.6
+ '@humanwhocodes/module-importer': 1.0.1
+ '@humanwhocodes/retry': 0.4.1
+ '@types/estree': 1.0.6
+ '@types/json-schema': 7.0.15
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.5
+ debug: 4.3.7(supports-color@5.5.0)
+ escape-string-regexp: 4.0.0
+ eslint-scope: 8.2.0
+ eslint-visitor-keys: 4.2.0
+ espree: 10.3.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: 1.21.6
+ transitivePeerDependencies:
+ - supports-color
+
esniff@2.0.1:
dependencies:
d: 1.0.2
@@ -15811,7 +16076,7 @@ snapshots:
extract-zip@2.0.1:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
get-stream: 5.2.0
yauzl: 2.10.0
optionalDependencies:
@@ -16020,7 +16285,7 @@ snapshots:
flora-colossus@2.0.0:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
fs-extra: 10.1.0
transitivePeerDependencies:
- supports-color
@@ -16029,7 +16294,7 @@ snapshots:
folder-hash@3.3.3:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
graceful-fs: 4.2.11
minimatch: 3.0.8
transitivePeerDependencies:
@@ -16041,7 +16306,7 @@ snapshots:
follow-redirects@1.15.9(debug@4.3.7):
optionalDependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
for-each@0.3.3:
dependencies:
@@ -16171,7 +16436,7 @@ snapshots:
galactus@1.0.0:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
flora-colossus: 2.0.0
fs-extra: 10.1.0
transitivePeerDependencies:
@@ -16577,14 +16842,14 @@ snapshots:
dependencies:
'@tootallnate/once': 2.0.0
agent-base: 6.0.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
http-proxy-agent@7.0.2:
dependencies:
agent-base: 7.1.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -16638,14 +16903,14 @@ snapshots:
https-proxy-agent@5.0.1:
dependencies:
agent-base: 6.0.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.5:
dependencies:
agent-base: 7.1.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -16935,7 +17200,7 @@ snapshots:
istanbul-lib-source-maps@4.0.1:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
istanbul-lib-coverage: 3.2.2
source-map: 0.6.1
transitivePeerDependencies:
@@ -17524,14 +17789,14 @@ snapshots:
koa-mount@4.0.0:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
koa-compose: 4.1.0
transitivePeerDependencies:
- supports-color
koa-send@5.0.1:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
http-errors: 1.8.1
resolve-path: 1.4.0
transitivePeerDependencies:
@@ -17551,7 +17816,7 @@ snapshots:
content-disposition: 0.5.4
content-type: 1.0.5
cookies: 0.9.1
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
delegates: 1.0.0
depd: 2.0.0
destroy: 1.2.0
@@ -18003,7 +18268,7 @@ snapshots:
dependencies:
'@tediousjs/connection-string': 0.5.0
commander: 11.1.0
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
rfdc: 1.4.1
tarn: 3.0.2
tedious: 18.6.1
@@ -18855,7 +19120,7 @@ snapshots:
read-binary-file-arch@1.0.6:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -19387,7 +19652,7 @@ snapshots:
socks-proxy-agent@7.0.0:
dependencies:
agent-base: 6.0.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
socks: 2.8.3
transitivePeerDependencies:
- supports-color
@@ -19439,7 +19704,7 @@ snapshots:
spdy-transport@3.0.0:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
detect-node: 2.1.0
hpack.js: 2.1.6
obuf: 1.1.2
@@ -19450,7 +19715,7 @@ snapshots:
spdy@4.0.2:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
handle-thing: 2.0.1
http-deceiver: 1.2.7
select-hose: 2.0.0
@@ -19623,7 +19888,7 @@ snapshots:
sumchecker@3.0.1:
dependencies:
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
@@ -19935,25 +20200,6 @@ snapshots:
'@jest/types': 29.6.3
babel-jest: 29.7.0(@babel/core@7.26.0)
- ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.9.0))(typescript@5.6.3):
- dependencies:
- bs-logger: 0.2.6
- ejs: 3.1.10
- fast-json-stable-stringify: 2.1.0
- jest: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@types/node@22.9.0)(typescript@5.6.3))
- jest-util: 29.7.0
- json5: 2.2.3
- lodash.memoize: 4.1.2
- make-error: 1.3.6
- semver: 7.6.3
- typescript: 5.6.3
- yargs-parser: 21.1.1
- optionalDependencies:
- '@babel/core': 7.26.0
- '@jest/transform': 29.7.0
- '@jest/types': 29.6.3
- babel-jest: 29.7.0(@babel/core@7.26.0)
-
ts-loader@9.5.1(typescript@5.6.3)(webpack@5.96.1(@swc/core@1.9.1)):
dependencies:
chalk: 4.1.2
@@ -20225,7 +20471,7 @@ snapshots:
vite-node@2.1.4(@types/node@22.9.0)(terser@5.36.0):
dependencies:
cac: 6.7.14
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
pathe: 1.1.2
vite: 5.4.10(@types/node@22.9.0)(terser@5.36.0)
transitivePeerDependencies:
@@ -20265,7 +20511,7 @@ snapshots:
'@vitest/spy': 2.1.4
'@vitest/utils': 2.1.4
chai: 5.1.2
- debug: 4.3.7(supports-color@8.1.1)
+ debug: 4.3.7(supports-color@5.5.0)
expect-type: 1.1.0
magic-string: 0.30.12
pathe: 1.1.2
From e80576a881f290b95c3074e9a4fbe09177fd0d48 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Knuchel?=
Date: Fri, 22 Nov 2024 16:38:56 +0100
Subject: [PATCH 04/20] Basic language support
---
extensions/vscode-aml/DEVELOPMENT.md | 9 ++++
extensions/vscode-aml/assets/icon-white.png | Bin 0 -> 31773 bytes
extensions/vscode-aml/assets/icon-white.svg | 1 +
extensions/vscode-aml/assets/icon.png | Bin 0 -> 31367 bytes
extensions/vscode-aml/assets/icon.svg | 1 +
.../vscode-aml/language-configuration.json | 26 ++++++++++
extensions/vscode-aml/package.json | 45 ++++++++++++++---
extensions/vscode-aml/resources/schema.aml | 9 ++++
extensions/vscode-aml/resources/schema.json | 26 ++++++++++
extensions/vscode-aml/resources/schema.sql | 11 ++++
extensions/vscode-aml/snippets.json | 47 ++++++++++++++++++
extensions/vscode-aml/src/web/extension.ts | 29 +++++------
.../vscode-aml/syntaxes/aml.tmLanguage.json | 25 ++++++++++
13 files changed, 204 insertions(+), 25 deletions(-)
create mode 100644 extensions/vscode-aml/DEVELOPMENT.md
create mode 100644 extensions/vscode-aml/assets/icon-white.png
create mode 100644 extensions/vscode-aml/assets/icon-white.svg
create mode 100644 extensions/vscode-aml/assets/icon.png
create mode 100644 extensions/vscode-aml/assets/icon.svg
create mode 100644 extensions/vscode-aml/language-configuration.json
create mode 100644 extensions/vscode-aml/resources/schema.aml
create mode 100644 extensions/vscode-aml/resources/schema.json
create mode 100644 extensions/vscode-aml/resources/schema.sql
create mode 100644 extensions/vscode-aml/snippets.json
create mode 100644 extensions/vscode-aml/syntaxes/aml.tmLanguage.json
diff --git a/extensions/vscode-aml/DEVELOPMENT.md b/extensions/vscode-aml/DEVELOPMENT.md
new file mode 100644
index 000000000..cdc3afb53
--- /dev/null
+++ b/extensions/vscode-aml/DEVELOPMENT.md
@@ -0,0 +1,9 @@
+# Developing this extension
+
+First, read the [VSCode extension development](https://code.visualstudio.com/api/get-started/your-first-extension).
+
+Specific parts:
+
+- [Language Configuration Guide](https://code.visualstudio.com/api/language-extensions/language-configuration-guide)
+- [Syntax Highlight Guide](https://code.visualstudio.com/api/language-extensions/syntax-highlight-guide)
+- [Snippet Guide](https://code.visualstudio.com/api/language-extensions/snippet-guide)
diff --git a/extensions/vscode-aml/assets/icon-white.png b/extensions/vscode-aml/assets/icon-white.png
new file mode 100644
index 0000000000000000000000000000000000000000..15a5c4a010ac4cd107091899705aea4fdde63e8e
GIT binary patch
literal 31773
zcmY&<2T)U87wt`m0i+k{B|vBb(u>s4B!~(M2#6Hvpa`NMQiF66q$^63BE3ozgaiQ*
z3%wTs1*Hloz2%+g_rEu9#u=UQ-h1xdXP>p#T6-tj=#n1INsf~c1kvbYb*?}V9Q+dw
zQ6Rxzo4$kl5QKvCbu>+UtyeP0pD}lAZyUf)=;~aC=^}JD6B!UD^z@pW@I*Abd6z|w
zgON<)-T223brSM)y3Pup=*nK$O1x~;cQ9l*O-pnfbG&lDXEAd}wMUhzNzJq%Xh_z(
zacR)>I^JdU28B}T3_e5bu`cvm_^<@$=h$(wTW
zJ-vIOSpGX#hu~LJ0b+?R}#oRZ2wl;?Phc)-zsxG7}<$LheWLtZd|2
zU%;=MWT|cce7!H6Iq8bVfP2y)Cx(`hinc0^o#m_-_l!KRR}b_paFXFDb{ctBj9plN
zFPa^XvL45_W}btCJFNL}*|sl&+;@%!HCs(3<$K-TZ$LAiPZnXsawW1BkC{$m^;iV>
zrkrTV3Hgm25qypbhpkV6;mFjo$pbG;;frl_w@RJ`&ELtsc2$$~$lLrl_J^kXwb$^e
z%VRLKQ2#A70U`)B`1SVW#hhVRS^xf%Ou@9nP9KNB5^f^8myr_MC|uTO-pT@hcF6pL
zDc$}~2j^x&yPg1y5d~wU$bb?lzaz<>YD+#^du)J%;ZE#?^6X02J`oL4U1Y7v#`0CWDEb>W71mKw*shW+d|^%kpea
zZBc1Le*=TX(85+Yo|V|#y@#qaiL>-l0|6}X*d*8}`1E$pJV9%4P{u=)@wn@7EMt18
zEruLUHP^`gpoa}Y_mcbdlC!EV+V^(GEFUD`%@$##YZ2Pe12_dDpp`&;_~5SG^-mD$
zlH_s-@fY|MIP~A+4k(}H!`^O|5_o@k#K}w8LiC@c6-w|;#~u%E_Et0h{RY?##8uZ|
z8KkyrAIKZ3A#?aQ_b~8214!kB6z95Q
z4PR6-grPfpW1qDvy*th8p7CWn5ySwZL}O>{(#LR9eeXn0!*QeEeFK*ddvpzcR%ejX
z7X#O17=2lh$*dyaDOh;Faow&5yzzQZ_JL!3kg3lNVz1-B@A^qu+Ha~b_z6C(VpDrp
z-jDRQ1JfqC?P9riu@+4K0!~hmKIqOC@zkuAOqCs4Xw~pvA=pflDe}GeyA+!KEZp8M
z6nB(xw>9&*8Y{Sh_+_*eAEx%f{Pf=^V3HZk88{IE^Z7phLQpT6#^!#Y@v)(AQPL>O
zzZ{8TQetq{hkjBwd{t!t58%~OXFKFh>
z#dI%|6m~2@0+HH@g#DTN=BX9br~uXot{x4+ryX~R1}jd7Z)T9Ln$&{~;M(?NA^6Fk
zEmv;SLVh=ARwpSk)RX>()Hi~Fo=R-=E1B`Gul?W+!v+2BDdwvmsbH&beTDxQ)=V@G
zm0eE@r+ri8U49bUoS|c%rrkH~x){GG_AgjJDL?l~tmKD6A1IsNU1tK{f_GU-BHk=V
z83_N&k(^jU;%FLf=(bCP7#!^V(`fEPn|ov?`&iP(q3LT83hhW3RX!6vFX?W-m6WnU=0y(eNU-A`r&M+e
z5>7q|O8EPU@dS5@^jI1=5}SvXfqFxO2emFF7B;7bQhM?M9_e<8X)+iuAyE56dW4RNv{ViZQwp9O{PEyin?#Sozaz0rfl*-7#I$$Q
zMwvtO{>8k=V4jsWI>f&elw%~ov?$>GUXN^bNKr2siG4rA%M`2Dt?+OA<1ykP`XF@d
z1<^XEp@lNe@$SX<)$0G!kC7fbBdbQWUOo_XmIqoWAf`4Zzky-v;Lj}96}Y7
zUCTsHKKAz=745T*W&N^^M-l&hMCA)Y*Qf=qVx{!MFzNYYwSTbtVmF)x%oY9y38M6U
zOgK5kgFf-AzQn5T1V|vf*mf7b#j5-D_5Yr+E)^nOB?}84?>nbLh8rHA4f0X?BJ(e^
zv8eMDHGQw4y1CvlMpBfh8|^*kZY+r`q7;(;d&3o!rxok|TUxk}g;m2m499b5>?SO{
zWae0s;rQTR2BGQ05l+hr_=-@R*wwnJI4HZwhu;7AKX3%s4AbKj2vRp6?Gy9OIY{eF
zHh!ku-%3xpR4xABYesp&Rqh?!TtwN{n{t)XLdct)>XjeQrfUCpiqM{+1bS{ruKrP^
zBRJ{%6>JBa!Fbc|Dz5(?fC}M6oO$03|6KbpT9EXbypOmKKV6$;{zNKjfB#_P2@gk6
zGx*uxRi~kuOrod%!!_Z5{~1D{Fwdc(_kpsrj;UONt5)eckNW@HLr^;fao-Lz<6#)4ZRV@jpP?Hkp#4Pv0t3XUS*6w;km`s_Gw;Hw
zmX<5LL5hBoOs4_Iy#<|j>01;S{Vz|
zFRym*fP;=Ow4G}7F1Bv=TiV_D-ijalabMi3(d5*b>!UxenX6Kgjzajpv!fal&KBiD
zB@7k5ym_Fyz_Et}^tL3
zcfR_2czXO80txk!@maZszj-R%$A`4g=BCErvD8tpnUVa49r)l%io?C1SxburSyzP(
zGpS3snx@kQ^l0T>`_UO!vq;2N>1m)^Ixmt83->dN4Rc-iX!QXO5lgx$8AHVlQE!{sXTu2mR=u3ZC%;dFoGBHA7N_q|2bxJ-3wx4%uu|2@
zWBfwF{R+E`gJ;&C&1Z;71KTQE=#Xddry>+}@wlxHerE2?j#Ku}GlG@QJv^p0E||)FMa?YuO9`wvrI6d<8yd=9+Je1vZrZCA;wAX_X>~y(RQ}OMo#y548
zAINY*gu=_YgMmAj)!S>i^*g7q*^#u6@^tsc1QMKk-mFo_ebe69GSc&$;O4~O-(A8T
z2E=`PYS)=)CgI}4y*~#{$-w}1K+v45O!T=C7?gDP06lv-ZPam1!yNE;oCf^q
z87mpRML);=>5;GLXYUq+WG&3oPukZe{Jl%h_7yEu{4cWu_U$eZHEc8J#G?^d6g`|%
z;g%GP@KQSx{$|p2q}00kc|W0iNm_Xs2LI{JSxH@~7G%kI9o`Fr5|QV8vuAI?DH|R^
zb3s+kE#Aw+OFbGd=Vv8Ci)WKXjo%K5)I}iXm|RN9AoSL>L-YxVY14G=lLwO;8s@=(
z`!?;r)?C0MZaz~M(NXtfqmx&$3umah5hgs*c`gBG1ZVPwj6Qjg$_3wElPTVd(w$<8
zAJ)UTdwj5F8UjBtIR7cy?S4b!D%b(B(NFFsmx%`mk@vd7>P2iGCJ=5-*_6ru1f%Jw{&fBlm&nFPf1MacFU9M{nt12fMxqXjVeaDXS0;pOSa$vaQZ~8BZQCq|nyBC;FEFgWydp~&vj#Qj4
z-Q#M$Tw~1h%p#Y5lfg
zA3(3__`4S`QWV@l9uA$}T6x`bPS<}7%Sf-49YqTb3$j3RBf)Iw_REc$@XOk^qm?&`
zt(tt6cBX@$JXfG&lfu;A8k2Dw{}hpkgWwYPAStCP$hP>nO$DBwM}?-BN1U;KTevh>
zWdDlT+;YrYZ+u6JzD~`~nIugK4DhVQo{6S<1hgL`oPR7hOgt<66RT0l$hb>HDBPZO
z$qT0AQDyVSf(*}n#4O6_z3LRIkJ3W4jBN4K&754qGx#k-*@ef%Vv4gJZu+Rx|4Jx0
zPd}1XCC?N0mrV+JE~P77o_g>zqXcqd|N7#GG~7l42m
z*ChF-;IsPtW0J6;i4d`)`Gg3~
zXF$A_&f8YdLZ5F0J0UT`ka|uq*N|kyOx!k^Sd0_gAXWTw1^(F2#Qn&i5D)GwN7C`!
zs?!qEPeecWpsdS4q@&hfl+OW3JM3hInEUY!i^(YAx3=79`Y(vDe#;W_{@W`q=R9*)
z&5<~{bwElCc|alFX7UBN^dbO;p|P6&xjoXw0Wc0Tv(T4Y>^b{x>2sPaB8O6ScP7;B
z&yO#s!CTA$*TYsLq~05n`oapKsEV47ysH7zfzh)`+l9GJ)Rpb8Dt><7hr#s|-qK+S
z((nv#sJD$3dOR{T>{aS^RR@0g0_0Cz9;v8s`ttnL)-v&q2N{~|*Lbag;Kk>1kJe}v
zG7wyRQsA{}17U>v#*cP!CZEn@Q6DL7i&cb#-Y?7y96x~uA+u8Rmyb?;H)B|%VysLf
zoaTm@@!D$;rXf%VFEf6fFGe_|P^
zd@qh{#5QkL{=2+Jqng;0sb+wpq{nff5@87fnxKqUreItV(2)13fm>w};Q*M~;DP&_
zmscn1g=2LncJo52E_h7`?j!*302hdGLqP;lF8h^|P(g4hjkzbxiSC7s7Evqm+La4k6?lJpEi($1dv>m3VwHfj@lw&E0~1ki4-n
zvzcoCw_E}jbop<1P1L!cJPRZ7*H4re^dKo4R?FevITk1oRlZ8cPb^!YE|idw(?;=M
zX}srJ>$_pc1j)G#Vgt9woKKz)ze3$l`1DlLtRsf?={LqB6ikxA90%ckLcT=?V=R{u
zQrU5wikAR|)k)u617*{s(KRs1BM!9S1YW``U?y_4);NA8#0h=&I5SH_t9{-
z{ze-zMbud6a!?;T<2n?wN&(R>ML29>?13z$*8_A-5`S2|5As-dFM>U~CGeow|JR$J
z5jI;(L$a1@X!g7iz+pWSnMv|5l~E}Sn$feG%S~nZ^bTwWHH_N&!|_uGI@NU?hpf}%
z;_Gj!AJXD_DpzSO;ezup0>0R^gd^BE|GXfjKp-Eio@tj7Mi87j`RI02v)CeD2~JN8
zDV1=7p~t8s-`WlzRvk%}AA#Kvf-pat(YbP!d0(?7dH6lqVFaS;AW9(|(N1q(>z2|$
z?NfMsqd0h>_vLBV{=E9iht`_k-^c2@n_Wm1PvcOy^^8OW-*uB*Mw~o?4Ki;_$d4yn
zM9`a!lv)^H%uqIEW*1qxn5k-!B4&0*6CcN|;uI%#3`(8OUhMqIl~>tvm4&xo%AOGh
zrtdsAcE^!X$#1jJZ$8DW-EqjdC)29Ts_7~p9g43_0fVNvlqRFgJQ~U4hb^;seeP)4
zhR8V2n!yKCWU_^3etgYcv!g`0mYJ4Z{gxNpbZ;?7{do7g&YK%Q;14lIXWsg46^pcF
z1^kX~2s?inw?Iva(8mEgm*9Jra#vt|!ULbS<(7UZEZTv*xroIEfO_LG5e5n@`@Gg+
zvV-q_SOv^CZzTEO2UQvfp@fKps(LN#j-`3JO4yE!SO$^O9U62{|^tKS;#Y2QR8d|iO?h0mM;qy2=vIr;QZ2vEsqr_EFh_h0-?#tX{D#K5>cx{^2ts%xYyZGx!Tr{8!!VH2%$cp2;*|?
z!Dz>B?R{{%B2LOOy}XsxmZadtflf2zVCxjm4g7lt1-K)Yb6S^lM^NysqtMUg=(bG_
znf*`6qD+aFz&ube90$UXa`DKg8K}wgPW319Lst1ed*y~eWH^@v$GScrxbUTPBhnFV
zDBZjM#!HmzeDbr+3Js}IWE4Uxokye#Me~@QRh*mzjamZ0+n2i?z)Cr(GXqdTzAM~Q54Oilb+Pl`K1^4%?4Qotc^^2y8+`aOn-b$XQ+c@>Vx-pv4UocL
z*|N6V+b
zZQ>!~9m;dDU+~Yp$BV)GscQZ{wf7eLNw@7C1Fpq+5eG!*Zqr~NUIQGoA2`&%06ioH
zNXh!`bHr_a&%@n2DH_2+-rFk{mmT8cM|1V)QuuXG8XUe;&|5*WsRuL&&RdvL0Q}op
zcCMi%70Ffx(4OFuw7v+oluh|w;n_XI#QaMc<0A9GiTHY@-e+a>k$481^ecKu%-it2I
zbtO5mK#Z-4kNXLUexWT5;iU7i$$Z4DJJZPq+5{!2&oxOCSK#2k#eiM
zdEJ=Pn%f6&AN(-^3Jd;5b>(KjC&)-E*#Wp#in6j4NYb{{gPMT5PeF;$gvfX@gEWYT
ze^6f?iTP)}=8S;HV!YU&{~9l2MFz;&iQm01wc`d^T?C(~Z9fC*DP^96B4oH{84GF=
z8`Mx#zi_ji5<|tSrNRaYT9jNZGuinyC6RPYljr{Bg`$~u1U2Q{mCo|kU*s+*6gC&Q
zhn`5>4$$N0pliFm?UAQ5nGKSJViVqVY~Xz=h@I|#0N|T;r=QiW!W@X1m6yJcpy61`2bs_MJU(Ic+We*d3hKwC(r!422a$p;c3zh|v8h@24DcF7){!
z87=JQS<4{pJguJg&0-k}K_O1Nmg+#KzMIYP-WXfVL(Z-#Uh>>^u3d1ly%t
zEj8~GkC}1M0reX54y?J}jS7J%F#D_nQ*7&K_G+S{$JbIoOfsVyPF&7ok+>E`^%zC-
z)_eKt*5-hrUKo{_AWRWp!%T#A&JzYF@E8y-Cc)I=I#cMsS%9OM)>Ys#
z$C>}OIShIy1F`8RA%g&_3^F=J7R3h+fv*jzD`krb{h{Uq!%C|j
z)w>Ry3*79}ivz;=W-!R-FUS7+NY@!a4WFapfG_DO3wqLT1+X&;h;vVP+!-N3eWLo|
zdYjXP)mXJ7cgpeB{ah5Ev|*;|67Ug^&v>t_QKVK7(34gJh8#m%b-C^r#<{&YBh)@#)|0V`Yp|0t+*&!Ie=d
z1h6Nj$A^2mZ^+-+EHG>W(m$8B^C2ZFI+{U{hT2J~wle5w|1{9DIr~Z7@fb9z#GwO+
zC7xs2B4|#fLV(x?<9EMNnN~aK>))PQp9fl7$XV;ToF{<1!7xgu25Qvr@|VU5AT>}|
z<}4~);GkD?we%Uu6BW_O^8a*_U^<>{^=qefp!gvWGr;>;K=my+#o$dl~}x~&y6S`;sCA@eUXY^2C&
z_dLpH#LY<}D*-o*_NsClDt0=uX*>dw;2Z~=zuU@YGZT*!V3`gx7yXdJCMp)1*3#
z8YgYWwhC?)A58#2Fc>4*QW&(qC@k%;UNc_jZaGwY)69(9J;tE}U|Gy8g&yhLbM_O`
zPtXs^-xGoZc+i2AOOg#Bz4759W4+|i_~QIbaTl`1N;GBnKkrdMHmTFf2(Ghwr0ga5qjE5d+X@cI}ED
z@sg{p-ksMn|HHr^;xH`n8`e@kZF#gh;;~=4%l)4j_m!#IAC6bvd%b;fb$m=6|S)(!-&V@|-yjx-Y6
znKQFp&d7tP-1mOG@EE*V(aduG^)3&iry5whd`(LM#RX@Jm-?W!zw=0&9
z4FIJGD4n7j*Mak1Vh%RlnQA4#6wImQLUqYFe8^6fv?(WXiNEK@GYrrjJ*n4>MTnro
z4ZYVpyc&WQ;0sKDc4rI$E+x@bRvF+r-O{`SoCPr&(tFK@rk
zz+ICBWggxfDt2@}rTLU*(PnoG3|Xlx?3@p31Map7*gIw~INAbe{Mf<5!%Nv-MT{G3>#XJf*yU7B|@{InE
zD@p@&55UR!u*~E)M-M|2X*d-=zZ{2`Ap7xbXlbe$UG4G{-Jw@ytEiTK>Y3Hd8ie!YqMKYR>a$$EToG75zK9
zJ06z-UU5|asbdV<6BI;Ff1)7wQA|N^C^=m*VEEB*juOrCO%#MjbtvQ31r%cY*VIj9Hn7IXz24Z5yamM4?PIcN+z@NgqjDR3
zIZ5EkgQ6rT3N?L?Q+d4G52`JXs9fn&1Q&pA!sW?Q@qUEViP%LVINPG7dIr)Chmsc6
zI?ca7ie0&0J@f=1UK;AcxC{me=^>z$d@=E5%{}k(|Hlag5U8Vx99=3>V^(j8swNTi
zi%NheBo+nfh5|Kpsrm5tCpY5pQO@%hq}mL;^%VJ=SO0o7m7yT`DuvY-st}%U&&Vwr
z0zc=y-UT)7eO5{r>%`+Na<u47mu>De29LM
z5c{HyzLp$zKa|Gvz?k^0p|Bs$wDJbGwd5
zMc}-RU)2*i@l@pUI|KymGV1x&@*qQi?H7NA{?C~40bpY*Y?UhU2&(hdbRoA`xI!&c
zQ+BQPikjbM)W>$&LLOjDSqD+z<_0
zS$+RC*tH+u7D;Co%c;oH^;xt)itJ(gXHdeFO&u{?MjT403vWMkfM_-}{8{j`MS#ws
zQ}R#XjYztc?S+u@7?IO*t-sx@z*{TdTZm^kF%gm%25>pXbw*M}S-My^&jJUORDPM5IOlX{hB}#;{ZQ{f15VKo%2j!M
zjcA9|0`S}~2Z9dMN&Of9|Bdm-R?U93A~L`~DAqsz6wenbg6ChQ{w)s*gfqxtb|12A
zymi2a?q49McmW)fN``6(0Qv4LxxgI%;tcPH&vmW?@3BO$^LxW8Kf&yRiAVERYT@d0
zKntZ$CISF7*;R~1yww8PXy%u=3dApRoJ2YJ|A4v&4vrI1cv6B?fV;-xQ>mlUqPvoW
zjXBH*3!=NjzyK$v0kId9fCxI;GRv)yylCG7w$2Tlkkh)4nEBu6ju(}fRXm@=x;iV&
zT!7N~(*R6j1?-N{w(KB2sV^Ng6Dekr-+%x=?61O)P
z(zx6bc(~D7Z1D6pkR++2aBBz7+x$>qAT`Re?iR3y3~NU(ooiBqAv{6<
z{H#}=h^wt{GqAI__LnPOQ|S|!K>GXUaE?*%!m>6iYLbYalaj;72~RP93?WMxXsfE-
z`2+#$-srV+&sF-nISIJ`nRCP!B>86e1k6gX=py|;yc8v_x6#G?HYk=|(8H41E9fPv
z?JwlIfwH(X=A4x>#}ddF5>GPCC^@ImDbVmJ-|^kK4-C?0zPU2U)US@$8k0mO8$M5^
zzuEu(9sT?9$X`PxPXS3~_vXr*#%%UTg6IS>Yyh`p_gjplNi2uFPBam`#CflZ=I!S%
zjLuD(Vaa}eOfeV~jidJfl8W&Hut_#7!)U`uhU+tE&&L9RdL1KrP5&xDASOt4d(=L0
z(konY{?k)4(iDk^%^jH;Ko;l90ISuMMphGBrPisXw|`IF4G){{5a;`!Ca8&n(DndfOU^xJyJ7W`C3&;o
zKr*d%894JF9`>8JgYJ(>Uykk&fO4HyoSamm>T4j^{xatfa6afM1g!;932CyGQTQqqIxECaMq;6=`Pe!lWi-UJS~1@n-^z4vrr^|!j$
z^=E$1e>xp}e7FQkY|dfi4-K?k5?Y`Cqhy5=nd=Og4=aR`A)^wJEnviJC{@C;fs-Jn
zcrCdm6oyH@S2OZ_Z~mzbX`&^1{DAH~lh6gJ938m>iWy(q59$U<$Ov(%xe!pq{@2L(
zgA4%>Yz!s{`U_X|uTj0v4E~Ju;?(aZQb7gCuzi);VG-=wRnolGC#cpsG{1UbhWop+h-l!AO?q(Xvqiin7MM%8n$IXouL$p22FII_~9Bj^HGdfrf
zN-UsW7_YV7`WF;4?RXF?@E)O?9+9-%k2fWe4x^x5b85ISP?F1$b7%TzPnOwk#+vuW
zH{GP(D5CZ-+XUC0nJ+fMN8aCwB23|oJFh|rgAke2^RhD%}A#&51oXY~`VD2D~1fwqP`Xh-OAaIUzq6bH8JFUhimE^>GS
z-uXu>6DSha+b7`xFoFmE=*Q^q6LL$lS&|S26EA4Mk^%+~Q)HblB^5@re*CfxkWuV2
zVFe5tn8=bUg37`Le$v(td!B$%XP-F9Y@`HX6K{-jlZn6jy)hRjd|9>3e&0Ih20<@}
z!}^0&p?OtKu}M+lyP8@Lq;}49^j;V{lgN4?Xz=Asz5)$M&>sQfnyw*@0F;9%5Oy8<
z#KyFup8KDfnZdNEL-}`cGI7y{Me$JZ)*Ox)*M5RI%e!CnAl!n$=`B*z#^0tVBmsI^
zHUtLUbVTtF%3`F*)<23>6awB+3^c$Sp_rr5D*JQnUO;c@qqgGN^{x
z8GZm)_|TjY4WQ2_cFJAPGH-kS=9QUu?WQMGV?e@xVNp>;pF9H!7-)%JOqY|YD?4Le
zNl4i{)jjE2Dws&Zr$qJTZ3EDs9(9T=Pq`4M|fdbhA^{U%h(Nb_#(9!Qrhw
zE#|#6==6!(dS~i>)`QvmY%YA?sZunk_tpRC!wwuCZX5uf_>}^gjo!^79_ncd5W!S1
zNfo-SeQiETX0PNdJoo8o4|YOJ72C-7U<24?^z%aPPlYZ%*ZC)FFd(DX$QTgoI{xz?
zPrdF52ALvsheSnx-0!C*lOAqQ5Q)?r7ycBp^5E9dJ27CW{19&Uky_U-RxD4&8@p>&
zLba+Z*#w0*AXUmPYg6;SCht=`5idB}Mv?H~W_2E++e%Ge{(=D=sL)?eX3A3xeZ}1b?mZa$@1L`PDvxaiXfAkG%5qRo7U_8MD@QcZyiQZs3k{|lAJ9(TrfWbaK
z3$P`is#297{LW){sSJ`>G*G4w0&>Q5?d_jSsHcrTIOfQ+HKaHPicQ68fn>G}=*%X$
zm#NB6nj{&`uw&=ulXW1$A
z^w%Qe0@aPpEOQN%B51&)nz%+hXJ`kv?Qjh=@6qGuwFc<9Lml4cadt*g
zO;*|KnNeF~p|A?<+qT3c^b19gOus*06b0Yt*yKC|$4TT@fY|f6m7_At`eKikz4xVy
z+Lh$r)Do*J%UpyR57%{~1)`g8EvRtOJ!XH=F#OutP*xUY#nAgxHdQ*Cmv1$U0L<8D
zT#48fijCiapX$O%%|VyRoMS6<$@f9az)pDP?)ZWK{`qtv#`Qbrzk-g2n&gk)t>nCg
zU^sS?k#Ivl8?^q**&8Y+!*XNquZ%K8PYCuY0~fBs^S0*p%9!q+u5(Tjc-4iKo$PC|
zMYb#Kov0@Thd`mdP}?_`j6=2!T&u8dzQFRZC0Tmhal`NW(Ag7*~TKVdU#D&q*5r`5O*_EwG`b(f+r8ai&Rz}+j
z(u<4nb@Wvmc1Y)D&-AOQ4>Qw%
zeO#+?>5KIa6xq}*(S*?%b{g&fdCsR#J0Y7O7wMQ0R_EBVJ$_RNB5c-9P+KYh&U5$j
zZEc;Cs#L6J!~sKP3M8STO_uPu9rnFlF{@!H7!8mzKEA~Dj_ghv*IBPZkc4U4&S+OM
zObi|-|%V$0!g1A%V)g1t+%ZH+RU
zzoogawFEra`YhY?%-iRdVvbX^8MJREQt*Kuwh4!vCEobKO8+5*>1&(v{#SO{WjV2?wekbt>+LZ(R!}OB}G00s|7jVU;f^sV!4qncSUAGJM=WO`4{h
z@awe!gI|h~+;4{H*S~!QJ?J?7REG~uVE!=@{dB<~nFKN$w0c4sVSeZ0xLm_-b!VtJ
zmmoD>?UI@#uN|qi#Ie5T(`51!dM>V@&m#DGvw6WRg1}kw5TCQ)ke8Exw)SnUoEs>-
zERe+f)1!#IfJdwL*N~Zwci_OCZ5=SSujFcrHsz<->0e1)_DB`E3HI=bw^F9B)M~V_
zD@7bID$lupeLGes97w&yhT`>|fo=W%Bw12F9b~B~N8WWeWSlgeclq_rk#d?%iMZ>L
z*?Gal+
z=#xDaGwZ(9Hg_9}^q{!vOcGRku{g$E0dEMxY;>s}=&+>C
zr{*mYWi#$)xC*$wm6GX4^f35{+P;ZC2fsv`CzIQdT521Rk*Tke
z6yIx7J8r4F;Y6-XPO@;~)wYX6s8Z$gGH!%8LLy|1fpuLaJF!nEIv|Yi+Bd2r0M+L{
zIDo)AtrGz~5Z~bdze`rXuxvjC=Gyw5IM|9EeK?$0espKt1nrQNScpQePK&K8wjZw)
z#~!M2$!+uLBAwKN&8Fh;p$(WPFjU{`Y=!|7$5oCVJ!WjE<_L$x@xX`B2h1})kK4hD
zZ9!Tv#(NU*f#(ImC0WS{pCcuC&>O=|OJ+Ygid;sNKY6nN9C7vjP*1DBU4h86Tz_
z-8r}>RHf&ic>lr-AG99kKed*ruIY8HR2fa`?X(S>8NNMRVmtoG9Y>-DpgTL8O0Xqt
zj8}r}rQm#7d%||rheW`ZQ`mOF94=>X(se28nHZka0i%9qperLgBd|QRxb^F6v;PZ(
zygulcp&jSDGb|G=>$gt)l(+4I`yGu^G8WFp^S-5X_pz*Ga^d`LL+)xj`Ns&K><}*&
zp-u+(;-FL_O+p#xc^K2R5ctBI0uOxTZ;eWYd*8WR-ai2SHw%E?vv6!_-Z$^m^HDMB
zlbYhxhcP-h+8>}Ea_dK=(IcSS?DPqT(E;=byLv<_)
z*GRv?`aM?Tc^H|BOnlH>cfijj6i{(Q;t)MbeH>Ej0tejB50#?G$7in69!)O
zT>uNO4HcUj%x)U!pL4al>Lm%2obDPBw&qiG)8+h_;uHS_-_jz~qLV7OnRE0^@H%+GH)|u-Kwy*X!!tIB$BPFREO251EF7L(n
zhl5}2k8F|YQVwa&@nI8>PZ%Ja6Q4MD9B+|$3irv7UyhwT!KGr~u{K<-E2)zan6-SP
zingEhmPUe8p)OQ)+281eqC@-(OZU{@kTz;i(O0HT)Ztl9hlxfI|Axf%Hdf_VClm5%
zUvjAS-B{)cT0^#7A-}iyvPQToo@Ad!z}e;i`P!yoQ$MG!!%ENRgJdsxO5}XPCyQM0-m!&zOs;W!iFeT0z)Kkw581VXI$lRKW)rhx*x9)19t0%O)T*{80z1dQztzPk7#
zn^9Lfn=gSO{Y~6TmV&xH#W9*aKSXdVqCW5jL~lp5D<%SI?IhL*hD%}(-LeN>Z32+IhhwYKHL21e^-sHp
zvv!
zx3|X{S#S9>HS$=#0Mbq9{5~s;^*2K$uWBNah6r5k=LcfXj*jU4wfaT9*j!#R5yt4~
zU%jiENTl}q((JdDIL8>cL7J7RUo=vk(&k_ZMGV`Ao^_?^u*3C$sa8KQv+yO;zEu8P
zE<$XOcEeEtAX@w%^vdq!jW_dz5Hca9m}Ia$ALD!f(8(#nEjuc^pJ==P{_%xVbVSWq
zQhfxA)QLac<$0UDCAhL(TL7j45CR)^db`9hO{SxC%YIz>8A1cS28x#z(&Bws*j&@YukobC1F)B!2b^$7qoX-~JLvxr&~RK|Gj=ODc_!T(D(4l*)hn-GT4S6+oPm2yNol
z`CxF)0S=+B>q}GT(Yros-zaJ5B$evKZ7DK(7amHuK_LvZY%>hQS*EeTHIjuj$+_A_
zIcZY8`?ROYa$hip3bY1s=H|PM5mFSd4idt-7g%8}$yMQW#?=znYNQI*`oM2#ehaVP
z3)d0TkGM|lU?Cvcrcd^Sr1=Ku$%Ybgx0ULB65@=f@`4s&0)C%_oL`?+bs1tQ|T{H7R?dx0FFPw&i2h51$^ga
z5FVpLvx8t<{7phlB>DrU2Scc4bjq6%+YTE@=ffcksOu6h{I)oisMPm#hEm57!nN`U
zZ_UP^`Y<5m6xEXOAu`wGPTuJP+t8-gb)6ILe!;D#p7{~?dVpD4oWKV_Ww1F%80=8glOA$@(2WZE@AVbI(A8
z=W@gQsO*Qq!VYY^BvB6LSKQE76MX08t%8Jq-7WPtP#I=EdNkAXYbAIt<@5ik>CD5S
zYTr11W{hR5V=ZN8LX@S2EE!wbB2o!us35G{f4tXa=FBa{^N=us3&Q-w`@<^VRPNmFKK1t2e*~sAALn+M=U}DS)
z4LovI5|H=XYrVh4SnC?a>*qXf;L}^BSDt;SyX+UKl42cUBmQT*`0Zeuk4I*Vlv@&ChdkQ@9`n?iYtJNKn`<5=LlX{j
z{?BtuT;}ztW61^C!C!1BncKN-dh8bH`uqI#N07g}y8nhWIwNr^1#yin$0Jw_9XBlc
zEnQzW%9#1M=!vszkRM!Pz6hAno@r?WYwV&R^ThyGcL{GwwcE;R%ipOuMfhakttfdU
zQ)X)NDx4(QOmE6wxoTdz=H>EES44BteUc|$#ZTuGD1o%4jEy}!tm<~2`fNDS_OqVJ
zvDL-J<$9E@lyH%rms7-Z17_K?6N
zX5sa{{XxL)yH{!4)N)J-?eTHI3K7snIu@$3SDPNzN-
zIW%m;E%0_peZN5AVJpkl^Yl$>*f!FQHJbv<^K)`JQ)8zFqo0W~UQnKSW_J2RoBW34
zrJtROJ6ccDU+!T|p4*()Yo4^gg5hd-POCrSKC|)cz7jnz^e1Tpk`9k@3gWlzJi>#7
z$i|l{C9Nf#H8X9aK!eK~#BJ)4^>)tb!x4EZ4cAz1$t*;#490GL-0CZOf8gQ^q)K}E
z1V`|YY}V*VqtunnttH{d8IOD0Iml;Sz@wVN#>*o)ARI{@V?h?G%5k)tJOvY`YC1&c
z_V7BT`@PS1l^mvkN6u9gZ}o=39i}H>0nLW9$!jH=s+{tloewVRJ{*Y_cQN#Lw%;3!
z5PtNqFupW3zLp}LC5x^NvZ{a@;qHd;3QU+lRV8uDV7Xk{vB4L;ZA2ld_S*M+Uiu!VI1VIiDiOv7zwst8)F$sjL{&-t3U2W{=(jh`yYq
zG&IvotSjC?8P9q<&o_p*2L7t#c1RS41V&dp2^&G9v`5)A*?C&;-J!_VLz)qn=fF3X
z@n(k9_2NDT#{(!T7edrsIWO68D#1y{NV_;g|-u*CiSxz8tR!}>Cqfpe8+1JdI2zm3D
zA6qwun!~k;$gkCU4H=XxNsB$N&=z9QzNsYU?a>K$Zo>q;Pjcp)-#rmeQr`;6#DJ+;
zGIu1;z_0CCyDjwVLTnT#1od};qrmFc>8-0qiKI$>zj=?seszT7rr3aA7;?Wt+CA){
zZ!+8Nz$AT)fYs>TO>FC>+sjPSjq!t$3#lvjmxyZkn=Auk$FZ%7bn0|~^FAax0?fB{
zTMyQjiThId@dP8dt3~s48MEQyyoXPD>cwK>z9pKyEOheF1T3pr16jA
z{$uS@bNs0S01P=t%EtdlnDR>)jf3Q%ciRtpH(kcFEykhwJ-+rKE-_#B~*?ijEdxa^-i
z*EX}9+#bk`OpKd06=2~CmK+#1TYVvXEJjIs;_F}P;&R?K={?s+%|`DvA1Iw89vk*+
zNVCe_`1u}hO56s<)Jn8R;OBc5qaK4-Gt`54MLlp>f9Ds7J~oAOHgsl_AF;LZ5NIo=
zWj{y^zZTfvW3a4|IDfHVQ`k0}?%)l2EPCC`Nw*T@CFCZrJX58gY=2RuR)R6))rOMD
z_i&1#62@t2<5G}5X%#`jo_x+)QkA9VG-)io6(1L)}i0Uy!2kz
zO<<|_lt1Sp(NFr(>&2!Un<}P)*e9rbSxR;6LdrF&*}
zl<&h$Q2a$6Kk|fia9o_F+S93eI!`&uG}r>_R9j-wrei;v4&**91#6B{rix6Ps-4R*c5~s`gcGTw
zZY~YvDr5()r`%0L1^4Jlb0z4^Q$M*xGrKC&bjS!g9B-0p
zj|85T8s}oiqZ)}!KhH?#W$`fWs%-`(tSUM!Bd_@yUvfExT9iBv3-&sFq4$aPO$BR%
zPEstA1G?7lgzYA_vYxCeKdc7BM;$fJ8ynAXg~;Gom$;=ilE_HD;ixcqf$GWw!LZBg
z`YRjI?v!TiKEJhSa><*tpqGj%Q5UOWk(P?$Y|*RU+pRToI!3#hvj=P=MVanK(m`aJoyyVRBRxCY3S!pce@Q(a^QX>roXr%0FMG|ZQlviG1DhR
z1v+<#=OSL<&_#xRl8o^iuCD@uUrc2lc*?Cbp+W+V1s;byubMvai5p+Rk30RCb~wM(
zRC2T|>kIS*dv>R`$FslDY(Ad-a+8j)G&$#`#80qwWl&@tGQL}4pG<>Nq)f|iN_p!v
zYuF&{<=?CcM@cJm*ZP&Aj&M8&VI%pqNALN>3mk;RQ&GpYT8Rq4!oaVpas4pgTj3(2
zO31oUAAzAd1Z-~#9>H^XOeR*|bXlT}D2mq#OsJNWfd}i*L#M`mF;?y*sm|yS35T&j
zkGb^6MyWgQ&pwK8lfR;URo45o!OYezTejqk4Jo;YjQ!-
zQp*F-7Kvs|?yL~?c-V>u_k4j$;8Q97SSvB#N&1N2IlG4I8z?UBW{4pkU&a0Zk;hAQ~X(;FU
z@I9dg>#TJZ9eyoVuGCiJH(iSMJKKoM!}{1(mXM{xP&j4TE7_#Ty~Fj*K@e&@dZ?9M
zB!jy_6N)&EQ`Q{}|3-QfW4cRjgUc1z8u^AGxoTUok7(7JOei5$bhwk3ZJP#;@Tu+#D#o2l9{yQDvsk$34W5d
z-S{zbtZmqdk3YP_y1L^?R8nVRzp`^ahVgOX8J;dr?pZv$|rfct?OWn1pZ{*d=pY
zm1(k;LxV24SG|Eu+b?q$Bqqs2P|JT)@(h{;ZwF*_4XJe)6A{^$51^x+#fJq^_ey%J
z?-@Xcxz@(z9r_@}iye0|iRmz*D`HKkVOvKaN60Kv&$&w5sRp$!+556R1OoXOQtLq%
zuxDKge#R@SJfh!nvFml_@xjw4k-=~Mm3Pl;a}$|A!kU~a2L8ZPcA{u#GQ|6)WR^#Am0S(vab*3d1nT)V6ZN@o0)u`>V8Y>z
zzij6#UJ1oeKN;!TOWf~0adn(%-9{nB>Ar6#6@1Cs@2NBNw&})Lj((U$$MHPD?%`Ym
zbtzYQxd}E}EtgvNilsrb0ESl&m3>=J81249NJt&)LBLc5nuWMAnzGf?O<{yAfxZ
zz4v?yGw*cs!p~3Um7W9rWz0H2<;hVMf9wrfRxq(1X|qXozET3Zy<|s$u~<($CSLzg
z^RKYrUS2XHHRYQ!Mo4Kn;IRU=57IAQO{C7N$u&vcvx{+lE7{Qq+NFDQWhs_-CEdaH_!F#VBF5NS%--c6
zvh&cT@)jZ4zHjw{aD6?P@TrJ8$pGCwJ{m%4EskQTEy=re5)fT_}#GA-=d}p}<_t
zVr^uCSK+ilcf>yIMd$|&u6a3Np=iC!Ng|oM;IjTNvHi$L6Oup()YA%~vuW;aI+UV~
zdjpyRLEt__>%hY@X`1Dc#9;K6lP|9GYp2LctAZM`Y#Ca`&58mslSW$K6+&SB-!gn4
z_cq;G1j!aPVHv5=-h^L*is4{=qCyB-&Xn~fids53JaP#SWdnI_9zUotI~DVZEHe5R
zUtAZ>N?}X&<$Ka5$%b6`xs5$2ykg5-^W7X`8`^KbZ+XWI%pZ3QoGuV%Oj-PXwCn4W
z%wzNi*+O=_t0_oA+(25^n~GFaK*zd_#s%@moIBw5Svjy*LND0kT6xY+`8HIpySzB9
z0zqBC8JmfT@?tkBk$7d7$Ox~wB{x2xeC%-{blHE8I}IN&%)UUNZafHr%ugVrGq!#<
z?u%*^>=$5pV7Ci-~KIUMuwA5KZ`#?*a3t+lAe$)K`?6{Ddj2Tjh=P0$W
z+!_!EbP@OtKYZsc1&3%Jb%+@nXLT!ed!2e9#(XXeCqSh3A)5I%;MoLvLT9dV?32yZ
z#qFqsqgr6blxd*LZH}=i0a53^1i03A6OtB24jDd&w9c4425DA?Yy}tqmB5T8AdOxa
z!T-T0nej4EQMf~lb#eSZNo0@rt_;hc0v|Cxa&p-83olEB2af%b7IvAvEydFdR>ks^
z7c8O55x<&-K{!qOIN@^z^v>T83Yr>hNneOe7Oht8>G`Al)g22k25Z#OTA07Hg1>`)
zup@6L?UU|Q!*BRr+52L9=$mURE
zvZFDe5-FPkzoK@G+pQ)D7leL&-&)uef(2Rhva0D=+R6gs(DLUgZR$7BQR1oKmr&JO
zO$JC1>X!wjU?w`8hUjqO?A>=U*QP0Pb1GR?`5UwLp+a_7ARXQUFOih0N0+j!JF#u5
zVdcW7eDe+E<{={g$$|zthrx>X04-N{iV)?P`VW*rqHW!;eXb#mgIu)@!qCq&r(ph1
z%3}7{-fvFrJM#e=&m^Du#cdDI_da>F3CtfGIsJzty3YuVRmB6SLj=J7QmX(~><
zPq~W+qRv-=B@DHoqI2FWJnbdO3D|qaCGM}$^p5>Ag1|14(~1Z#piLMP7Q;U8wq#;%
z#sVr;h1rPW2+F#rp*OiA8e1|1#&QtO+U(=CO$MY|fIIBblO1zaP-{)#6uLtJG08Uf
z&pZO2;DK%JLsI7}v^ian!T8|Ey{}PK8-=+t0JG>3qtW}D8Oo4+{q;50l*AbVh57Vb
z)ljW9yV$lA@)7fBbziIm%!=HCGS7-R_*(X{Kfl0t*Cb7{`9D=th?vwNJ@;G$avCre
zRPhf!bF+?t;)`Vvb8Ru^%VwLa&B1zTo88Wl=b-F!i50Xxp5h5%^9bNPL)IAtb_b9!
z1{K5dhJngK?T-iAeM4bV=%b9cnERFO_f7=aOh?}l(9oj`Gv!G^nerbWc;IY7G(n3X1T9|#yO-%tq0P{sB+EKR
z8yhAISxJJiL*VAMYb>VV=YLzz6!6@%d}>b!h4FVk>LYLmLt1K@xMfI!&hMyOqIo;L
zG==*9oB(_CxRSX}%koLs%?Z6zNOOUn_EETrJEE<@V3jm10^BPHd?2X(_eD4)50!U6
zz2x?(At>PTOL0FF@3@9;kgZaA4iY!ur3FlwW@e1nNwSeiGH=sVvQPQU#evxmIXeiC
zmnf}pL7wKR9MlsbCS>$yH_X2NsR0N3NV!^6zJGRCmb&Vi9>j~w&}596jg3#F3gWbU
zCkkPE`_1Su<}-%B6fd|%A&TWg-2wQ`>XpU&UHZ!!;DE{%NRV2KouHhH%}pXz@ORe-
zR9}S?hP9Q}yi@$OSGSDCS+d%3m)o*XSTIy78w8o=R)tAZ_00H)dr`AD_5t@~5VYB@
zU++|Gdz!))AFrJRi)yZ%U+kHPB-jhP<250h-Xdn)7S!t6Z!rj-jNKh{|1U4zA&S1R
zc_@agV%Fq>qPWWqNe)DH(I@-Bw{kmaT$SfQsn=9>-VLVI8rQMTv=diNIfy`4d?!dJ
zZ59-~2d3iTz;D$L`2QN%W!<}yN?!dPbh6
zKuNf60CP?n-y4CXjsbA#RP$2+3_7&vVbG16U9oeFdV}ZP683{yyVnJ3uK-!dEjwD}wA>bq;
zg{0q)ExKTOQQ1fglSw;T=YMe?Xj{><+u%{{KHMCw<7H%#(9Vy?1vA(DP~rdOxgXZ}
zsg063ozZ=UDQqGiiAS{5#WD1a$6a)l%ugTl<{(ql1g__$TP-g_`{3|m@1+ExYLvVp
z)sDt%hyBU=d0cLn2lYe0D`HRbBXge*xPN=#`baGTQIEO%YYkj|G19QF%QU9mV4|=Y
z4MCJa`UxdS0@y=_jVE*g6i47fv`Db~-iqK5$?@SD`y+B(0)}KrefPQACQJXKK;t-t
zakEo#&X^kwrlkR}hFtMO%KH_=CA?Lxg}BVW7i9s`7zsK^
zMkL2X_oL@Hgn&st1xriqP$r7Ox`r=-B8YO*8qA7Zf;CE&u^X}o!Xe!l>K$Zf0)hH?
zBQVjxMQXOJfl`Wr!y|F`jcX!R7x&KxIS=zOren$<(8+P>-4O0Qtezh$`iQ~}Tkm=F
zjr+VUdA}Fv9M2U4I=cAxU*C8arq3y-=f~9X{@3VGiMEBtm{1j)*<-~+_X|-{W3u@i
z(FZF`KnBH-Om@;A4&cu@bIw8o&c%MN`((nc(MB}x%tk{bvBh@ttotPZPZH(Lzc&bU
z(p#ZZlDnF_Lz>^84MVb7JCbR5OD#`kX^S;3(P;Dr9?M5fqfq`5XbAWiGt#~
zS1Wq@uj#hHXkwT++O^0(n8c5=E$cY|gw%4KXYU`UoWQpw9Ij!;tYE3LHBt7`!p}9L
zWoRHKyVrgB@9)!U!P0;E%v`Sgmg>6(2p0lJ2#7l$prT>f{i^y(FHeB8M)uns0KD$8
z{BVPew`j+Z&O0IPri~7%j8n9?L-P@6`f1B#c%KsYqDFZxXZJj>Gc}dc#CErRtSnZ(
zQw6xFUP#j$(!bmPpU~Oa{&uOi^1$7Z2s&g-XN4BzCf8nO=vguV3%w-(r2v~?P1uy7
zo?j@ci<<|4ge{oIUDU~mYl=U9|3?HR^`E^bHTJ`d1LyiK^K2KBDEdwYY7${rfl)(z
zY78tWVH_&I3Uw0`R{p2sHu(LGRUA3@n-xj;A>+kH6qYb>5&f&7zqWaU>`
zVAa4s!UgmLfCsz>itzlqBpg!agB*nJnCd}hZg_Eqz8eo_V(q11Qz$D}GvV1sCWKB~
z)N;9Gv>&x|&gAvMQ`d~8wvy%aUtJT5UiEcJr0yO??Qm-L+!g{B8o_E9I_x%q!<^)i
zI9Cny%$s{Ix$ggYk|;NL8s`5&FvFtuDC@U@^Pi5sy(LTF$bA|?3J^!;q9qZbPmOlp
zGPbl^8zOC#h5{DTu}IlVqFuX50~dl*5=FEz`C|9>BJ3XrOKjK+H3s?RrNG!#OP@|?IM8VRB>J$
zd;&p4(X3Tzu3m_#;Qvl*#s`)$=js?I8oUo7ROXL6h#i)0gS;i842WVtvK5w|sNecx
z1S-Ir@>NY>?+)N`X(~&oSH}Ik{Jj;|JLp|=Wrq2I_t}}7$My{PsK@dm86NU%dqz2m
zA5lrQzLRfw5kKfc1Yt_
z)Q<5n)Gjhp4kGQgPNbmyJ>m~gM%DtWc`~CV4M}1C9(%8nDbXj30Zuk>IzFtS9?Zgh
z0E4yllN+_z0U&r_q}S!BbW1fTT2Bo^-fIgg9^=zYU^2yW<{G6i;(p)0@wWOV9opl<
zygf|Imuq&I(F2~bjwU8&{odefgk;Ik|9psW7azG*kc85i<
zb-68TKn%iM->mU&$r$C%rXi_4fT}XQ*g;1d-L=#+!yJP&y%OetPu}P@4AR>b_6oN)
z5_IuEj$s5H4sbxG9klSx1k<$bcT5=pP<8vas*2Y!1M{#si2^7WnlVDR$+jcUv_7W)
z;bcZ3JJWvlj+HWUCQs$mmNa_lzTx*XL(dOG2sI*Nq@`e=&XG@H?cd?k7JyUza}>M;
zyMXOr9Tx!Yv`)r>3~nQ+v;nN9C>A9BtkgX4dE}unHlAGUCqf+VzT}+_878
zQI{;Z6A6_Ike|F49UpLfn!dZqAq9PZ((^{|(bl^Fq#CuoiTMP6UP!x(0pP;!qpR}x
z4&6d`>F9yNR9qV3!a}WC9<%#;{3NSBKb2cylmy$=C6ovN`b~wKI(y`==go1gMe$<6
zNxVC9)(K0D*mhhYKoT>w{YuM)S03=xVg?2CLuC86-J2Us$YbEPeIQc1
zk(^w{9{J$|IV=$*K$)!(FT@Oq33r=1lH%)
z-zuU63iDW~M)wRU7<$l`%gQXY4YFS%&4z?jCsx)Vf03DJV;<&fX+*c^I#+(Lrxxgb
zqwY%i2iCt}6foLVe{tl6>udFGF1X#lGSt>6d(`+YY(_86=d+%+aS6VpyKoIekS1Uz
zG=+M}edg1?NDW22Q9P200o@vTCq`9Ps>Mr2!COcIEFFs5jc-fp&iP#$`?^aDUV%`!
zo%|qpHfM~ZZ?DNr$bv>Za#Llh*vWMXf144{#EwG$VrV?|o
zD0@0eCj@<3Km}jscYO0K#55Df2!GMH*4XvP>J%5khAgEr4>uOh4JQ<~P{6q<=L-_q
za~Iq0Ziv*U%>DSl>7<#$;JG6UxYi>AbZH&fp$gn&9|S@QL!eQqWa50|Y2Ak`NaLXw
z7PMtN!Xy<&NBN~QJ=Ywc$SEDK
zsjy~)^x$N@x&?gdU9Wo9nn{0ipSK@4KnS&j(KC!|x*C!}sX6;$P~Y@ZOuL|Ub7Kv}
zEdq)A5$$jQkGvlTdQh`wI?z;6?*BX>7@}v}!s0DD!YBuul<(q@)4MdUr8y#1v%H~m
zo>1p$nf%pP?V0^5OSd*|o7)E%sUbpl&E?{l=xDXyL&+uoJ(`joeCQ26pqY8cPz=n}c_h(iAot60@AY=CJ@qv1IZi*pfQ4hg0
zVmwI*xNv9u>I~nq#lk@r>Z=-_@`dx9lrz6G5sTR7c`93I1WK6Y2LcfO-|NDtL|lIt
z21)%ER^^37TCpcZ=+hxA`T;E(|9t=fJ~TB?&w|Munr^zrknlzb+FVp4(mAd=?UYx4
zB_MvT{{yZHxt-#~$M|S?wL18a9lRNgplZhCw!5NWyZ`V1U$TY1b7|kNXN}I9Iwc&4
z*E?BP%;WG8jsbXy<9~0OBVeL*2FEGpq@(iQ*4^;>F=dj+TDg;E{7n6SA0c5e{Ad0!
zztpB3EH2WFAMwj^CHLk=#n8TnB`R~q#%$U2h09Dyo|UIWzl-$HC%Jr!){l?`{VzG&
zH}341QF|aHB(wEZqK#bB1p#5}6gk_iy}``a%+7`WlVg=#Up%JQ`e@zkx^9z|dsmv4
zCo7#ctvZeWyv_WRe-J~Lm|49aqf1O=#o!1e1cMvqm^e~trHFLjX0q9b;*e}snj6-R
zW1~c&@#@C^KJx{iIrEINpCgNmp&QcK9v%%pv+=SNyrqIe3QXnL&6h`+jtV#0G4!n2
zGv&x1gI$SN*N;sgk$>b!u1Rv9=HH1dDbqP0YJ|H>&Hw+K?PlU@p1k7(S>%lk%VZTP
zz?r~>9ukhry@hPmSNWA;$$R8&Pb04c5-38B?{X^a9tl16-=T9TA+@`frl*->lN3=R
z;?FVIgWO#dnU_Ytzw>}pt1ff0-Gz-R`X%Q$7p?AWKrBOM{gmOXiht5BF$=JryYges
zVCZg`@9y>1r=73AI3)k?_jd_*7X&}-7^G+(VdkHeWH685t}`7HY_~5@hQMOKTuLp;s;})Lp#$>lI2spC^cz(1Ujy(oN>F9{qPKiey#4
zhcQcS4_IzObZ~V!m**~Ret`7w{`)otcjQ+qvl5y2Id1$LG9vQrE-RltvxcbkTSW?D
zJ@=D|VWsX+thGCWJaN3^Snyc+v|EqJzi;2dUoX=2*tNt=uQ{HN&V(oZhV+ikJFWr$
zZptYsS|2;J?DZM*v*Cx!^>4_clxOn!7y&Y#1t;f^;b6cM0ys8~ce^*N
z-!Up_9`_<}h9Vz%-wk*}IGsu9!C^74Gc5nkI|LUz|BM+&n&)vma0JebTCdr9fj?8t
zYq}7<9V8^=H>>5}!R$|lGmp6t32fJyHSfPG*G2x#Lsc4`t#6FEO0UF~N&)O69q(_Q
zy+@qjUvNkqJw8bQb9=!ld-zks+T50}aO(6@JdL2*VKuhI^Y8bG`0H@=w|kgvyvNw#
z+=BRIl7Wv{H+K5%t9u@h0#$iENIkkxQ-5Bq8(l0
z_sKBI_~Ku`pMFFvH4+JM$q7d!Hus(_`^{Xx1E)EzArce#ogp
z`02~{M|b^Fg|G`Q*_Su1ng>)-%I=id!W1HV@>krVp04*zotFK#0`$q939IH;ik%wQ
z9yr1$R1f?*zcpe0>&4*6e>W2esV^Gg7yp~heeh_<)~%v2=oX)^hQBhqS)5$-NNxR>
z?sEmoQx9yty=y7ERA%3477|xLU|`@Q_7LO4y_gD7bmViqvA&(2EX>kZm38fduh@}n
zo+r-?={pYhi&luEACL+N*|v8{vaKOse3M-)I=Ck!P8Hxvyv%ZbQf^g9!e?5|>GxMP
zRt7y)79XtI+(z2J2x<|*HbQTDH7%~Sem#j{^u3Zxe&5^E51ubPj?DB>pGsg;BSUi~
z)=zXF=Q)@kUVT@cUZXP)=B=+8*|*PEY)v1XA5mMqdf9>{SDEoO`N><$&Ld~8{7j*5
zTVAbsb%!Wger)|1?s&1om$E+{hQ`CEiGF*B60y~2Dte)HVzc>xxV^NWlnsk2gblx%-w?lS%`D*gxtLPAdoLmsN?%*9JJB+=
ziM)Q{h1qnCpB?5}@0q@9HC+J-90==84950u@W2qYQKNQH%ZbQ!C*;9v+rRA?&}tu
zEE|l!2z^4=`enhT^Bp;QN2+`
diff --git a/extensions/vscode-aml/assets/icon.png b/extensions/vscode-aml/assets/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..49622ad8beeffe570db79852da2b7b9eb151c546
GIT binary patch
literal 31367
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
z