This commit is contained in:
Zitao Xiong
2024-05-23 18:10:25 +08:00
parent 9318632f31
commit a07d262277
37 changed files with 626 additions and 79 deletions

View File

@@ -1 +1,9 @@
# this is a base env file that should be used by all other env files
POSTGRES_DB=sui_data_sync_db
POSTGRES_PASSWORD=postgres
POSTGRES_USER=postgres
DEV_NETWORK_NAME=sui_data_sync_network
DOCKER_COMPOSE_NETWORK_NAME=sui_data_sync_network
HASURA_VERSION=2.22.0
HASURA_GRAPHQL_ADMIN_SECRET=JBw5-wS9B-rOV2
HASURA_GRAPHQL_SERVER_PORT=40180

2
.envrc
View File

@@ -5,3 +5,5 @@ PATH_add tools/bin
dotenv_if_exists .env.base
dotenv_if_exists .env.override
source_env_if_exists .envrc.override
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
export NX_WORKSPACE_ROOT=$DIR

3
.gitignore vendored
View File

@@ -40,4 +40,5 @@ Thumbs.db
.nx/cache
.env.override
.env.override
tools/bin/cli-hasura-**

View File

@@ -0,0 +1,39 @@
services:
postgres:
restart: always
image: postgres:15.3-alpine
shm_size: 1gb
command: postgres -c 'max_connections=1000'
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_DB: ${POSTGRES_DB}
ports:
- '40432:5432'
volumes:
- pgdata:/var/lib/postgresql/data
networks:
- default
hasura:
restart: always
image: hasura/graphql-engine:v${HASURA_VERSION}
environment:
HASURA_GRAPHQL_METADATA_DATABASE_URL: 'postgresql://postgres:postgres@postgres:5432/${POSTGRES_DB}'
HASURA_GRAPHQL_DATABASE_URL: 'postgresql://postgres:postgres@postgres:5432/${POSTGRES_DB}'
HASURA_GRAPHQL_ADMIN_SECRET: '${HASURA_GRAPHQL_ADMIN_SECRET}'
HASURA_GRAPHQL_SERVER_PORT: 8080
HASURA_GRAPHQL_ENABLE_CONSOLE: 'true'
HASURA_GRAPHQL_LOG_LEVEL: 'info'
HASURA_GRAPHQL_UNAUTHORIZED_ROLE: 'public'
HASURA_GRAPHQL_ENABLED_LOG_TYPES: 'startup, http-log, webhook-log, websocket-log, query-log'
HASURA_GRAPHQL_DEV_MODE: 'true'
ports:
- '${HASURA_GRAPHQL_SERVER_PORT}:8080'
networks:
- default
volumes:
pgdata: {}
networks:
default:
name: ${DOCKER_COMPOSE_NETWORK_NAME}
external: true

View File

@@ -0,0 +1,28 @@
{
"name": "dev-database",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/dev/database",
"projectType": "application",
"implicitDependencies": ["dev-network"],
"targets": {
"setup": {
"command": "hasura metadata apply && hasura migrate apply --all-databases && hasura metadata reload"
},
"up": {
"command": "dev-database up"
},
"sync": {
"command": "dev-database sync"
},
"logs": {
"command": "dev-database logs"
},
"recreate": {
"command": "dev-database reset"
},
"down": {
"command": "dev-database clean"
}
},
"tags": []
}

View File

@@ -0,0 +1,5 @@
version: 3
endpoint: http://localhost:8080
admin_secret: myadminsecret
metadata_directory: metadata

View File

@@ -0,0 +1,6 @@
actions: []
custom_types:
enums: []
input_objects: []
objects: []
scalars: []

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1,9 @@
- name: main_db
kind: postgres
configuration:
connection_info:
database_url:
from_env: HASURA_GRAPHQL_DATABASE_URL
isolation_level: read-committed
use_prepared_statements: false
tables: "!include main_db/tables/tables.yaml"

View File

@@ -0,0 +1 @@
disabled_for_roles: []

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1 @@
{}

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1 @@
version: 3

View File

@@ -0,0 +1,37 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."faucet_users" add column "verification" text
-- null;
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."faucet_users" add column "updated_at" timestamptz
-- not null default now();
--
-- CREATE OR REPLACE FUNCTION "public"."set_current_timestamp_updated_at"()
-- RETURNS TRIGGER AS $$
-- DECLARE
-- _new record;
-- BEGIN
-- _new := NEW;
-- _new."updated_at" = NOW();
-- RETURN _new;
-- END;
-- $$ LANGUAGE plpgsql;
-- CREATE TRIGGER "set_public_faucet_users_updated_at"
-- BEFORE UPDATE ON "public"."faucet_users"
-- FOR EACH ROW
-- EXECUTE PROCEDURE "public"."set_current_timestamp_updated_at"();
-- COMMENT ON TRIGGER "set_public_faucet_users_updated_at" ON "public"."faucet_users"
-- IS 'trigger to set value of column "updated_at" to current timestamp on row update';
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."faucet_users" add column "created_at" timestamptz
-- not null default now();
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."faucet_users" add column "sent" boolean
-- not null default 'false';

View File

@@ -0,0 +1,17 @@
CREATE
EXTENSION IF NOT EXISTS pgcrypto;
CREATE
OR REPLACE FUNCTION "public"."set_current_timestamp_updated_at"()
RETURNS TRIGGER AS
$$
DECLARE
_new record;
BEGIN
_new := NEW;
_new."updated_at" = NOW();
RETURN _new;
END;
$$
LANGUAGE plpgsql;

View File

@@ -0,0 +1,15 @@
{
"name": "dev-network",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/network/src",
"projectType": "application",
"targets": {
"up": {
"command": "dev-network up"
},
"down": {
"command": "dev-network down"
}
},
"tags": []
}

View File

@@ -9,11 +9,12 @@
"dependencies": {
"@mysten/bcs": "0.11.1",
"@mysten/sui.js": "0.54.1",
"zod": "^3.22.4",
"@t3-oss/env-core": "^0.7.1",
"tslib": "^2.3.0"
"tslib": "^2.3.0",
"zod": "^3.22.4"
},
"devDependencies": {
"@nx/devkit": "^19.0.6",
"@nx/eslint": "19.0.6",
"@nx/eslint-plugin": "19.0.6",
"@nx/js": "19.0.6",
@@ -32,9 +33,9 @@
"eslint-config-prettier": "^9.0.0",
"nx": "19.0.6",
"prettier": "^2.6.2",
"tsx": "^4.10.3",
"typescript": "~5.4.2",
"vite": "~5.0.0",
"tsx": "^4.10.3",
"vitest": "^1.3.1"
},
"nx": {

164
pnpm-lock.yaml generated
View File

@@ -24,27 +24,30 @@ importers:
specifier: ^3.22.4
version: 3.23.8
devDependencies:
'@nx/devkit':
specifier: ^19.0.6
version: 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/eslint':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)
version: 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/eslint-plugin':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0)(eslint-config-prettier@9.1.0)(eslint@8.57.0)(nx@19.0.6)(typescript@5.4.5)
version: 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/js':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
version: 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/vite':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)(vite@5.0.13)(vitest@1.6.0)
version: 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)(vite@5.0.13(@types/node@18.16.9))(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))
'@nx/web':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
version: 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/workspace':
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
version: 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
'@swc-node/register':
specifier: ~1.8.0
version: 1.8.0(@swc/core@1.3.107)(@swc/types@0.1.7)(typescript@5.4.5)
version: 1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5)
'@swc/core':
specifier: ~1.3.85
version: 1.3.107(@swc/helpers@0.5.11)
@@ -56,13 +59,13 @@ importers:
version: 18.16.9
'@typescript-eslint/eslint-plugin':
specifier: ^7.3.0
version: 7.10.0(@typescript-eslint/parser@7.10.0)(eslint@8.57.0)(typescript@5.4.5)
version: 7.10.0(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser':
specifier: ^7.3.0
version: 7.10.0(eslint@8.57.0)(typescript@5.4.5)
'@vitest/coverage-v8':
specifier: ^1.0.4
version: 1.6.0(vitest@1.6.0)
version: 1.6.0(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))
'@vitest/ui':
specifier: ^1.3.1
version: 1.6.0(vitest@1.6.0)
@@ -74,7 +77,7 @@ importers:
version: 9.1.0(eslint@8.57.0)
nx:
specifier: 19.0.6
version: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
version: 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
prettier:
specifier: ^2.6.2
version: 2.8.8
@@ -3186,7 +3189,7 @@ packages:
snapshots:
'@0no-co/graphql.web@1.0.7(graphql@16.8.1)':
dependencies:
optionalDependencies:
graphql: 16.8.1
'@0no-co/graphqlsp@1.12.3(graphql@16.8.1)(typescript@5.4.5)':
@@ -4229,15 +4232,15 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.17.1
'@nrwl/devkit@19.0.6(nx@19.0.6)':
'@nrwl/devkit@19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))':
dependencies:
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
transitivePeerDependencies:
- nx
'@nrwl/eslint-plugin-nx@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0)(eslint-config-prettier@9.1.0)(eslint@8.57.0)(nx@19.0.6)(typescript@5.4.5)':
'@nrwl/eslint-plugin-nx@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@nx/eslint-plugin': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0)(eslint-config-prettier@9.1.0)(eslint@8.57.0)(nx@19.0.6)(typescript@5.4.5)
'@nx/eslint-plugin': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4253,9 +4256,9 @@ snapshots:
- typescript
- verdaccio
'@nrwl/js@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)':
'@nrwl/js@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@nx/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nx/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4268,18 +4271,18 @@ snapshots:
- typescript
- verdaccio
'@nrwl/tao@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)':
'@nrwl/tao@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))':
dependencies:
nx: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
nx: 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
tslib: 2.6.2
transitivePeerDependencies:
- '@swc-node/register'
- '@swc/core'
- debug
'@nrwl/vite@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)(vite@5.0.13)(vitest@1.6.0)':
'@nrwl/vite@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)(vite@5.0.13(@types/node@18.16.9))(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))':
dependencies:
'@nx/vite': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)(vite@5.0.13)(vitest@1.6.0)
'@nx/vite': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)(vite@5.0.13(@types/node@18.16.9))(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4294,9 +4297,9 @@ snapshots:
- vite
- vitest
'@nrwl/web@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)':
'@nrwl/web@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@nx/web': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nx/web': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4309,41 +4312,42 @@ snapshots:
- typescript
- verdaccio
'@nrwl/workspace@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)':
'@nrwl/workspace@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))':
dependencies:
'@nx/workspace': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
'@nx/workspace': 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
transitivePeerDependencies:
- '@swc-node/register'
- '@swc/core'
- debug
'@nx/devkit@19.0.6(nx@19.0.6)':
'@nx/devkit@19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))':
dependencies:
'@nrwl/devkit': 19.0.6(nx@19.0.6)
'@nrwl/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
ejs: 3.1.10
enquirer: 2.3.6
ignore: 5.3.1
minimatch: 9.0.3
nx: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
nx: 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
semver: 7.6.2
tmp: 0.2.3
tslib: 2.6.2
yargs-parser: 21.1.1
'@nx/eslint-plugin@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0)(eslint-config-prettier@9.1.0)(eslint@8.57.0)(nx@19.0.6)(typescript@5.4.5)':
'@nx/eslint-plugin@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@nrwl/eslint-plugin-nx': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0)(eslint-config-prettier@9.1.0)(eslint@8.57.0)(nx@19.0.6)(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nrwl/eslint-plugin-nx': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/type-utils': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/utils': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
chalk: 4.1.2
confusing-browser-globals: 1.0.11
eslint-config-prettier: 9.1.0(eslint@8.57.0)
jsonc-eslint-parser: 2.4.0
semver: 7.6.2
tslib: 2.6.2
optionalDependencies:
eslint-config-prettier: 9.1.0(eslint@8.57.0)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4357,11 +4361,11 @@ snapshots:
- typescript
- verdaccio
'@nx/eslint@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)':
'@nx/eslint@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))':
dependencies:
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nx/linter': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/linter': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
eslint: 8.57.0
tslib: 2.6.2
typescript: 5.4.5
@@ -4376,7 +4380,7 @@ snapshots:
- supports-color
- verdaccio
'@nx/js@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)':
'@nx/js@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@babel/core': 7.24.5
'@babel/plugin-proposal-decorators': 7.24.1(@babel/core@7.24.5)
@@ -4385,12 +4389,12 @@ snapshots:
'@babel/preset-env': 7.24.5(@babel/core@7.24.5)
'@babel/preset-typescript': 7.24.1(@babel/core@7.24.5)
'@babel/runtime': 7.24.5
'@nrwl/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/workspace': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
'@nrwl/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/workspace': 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
babel-plugin-const-enum: 1.2.0(@babel/core@7.24.5)
babel-plugin-macros: 2.8.0
babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.24.5)
babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.24.5)(@babel/traverse@7.24.5)
chalk: 4.1.2
columnify: 1.6.0
detect-port: 1.6.1
@@ -4404,7 +4408,7 @@ snapshots:
ora: 5.3.0
semver: 7.6.2
source-map-support: 0.5.19
ts-node: 10.9.1(@swc/core@1.3.107)(@types/node@18.16.9)(typescript@5.4.5)
ts-node: 10.9.1(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(typescript@5.4.5)
tsconfig-paths: 4.2.0
tslib: 2.6.2
transitivePeerDependencies:
@@ -4418,9 +4422,9 @@ snapshots:
- supports-color
- typescript
'@nx/linter@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)':
'@nx/linter@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))':
dependencies:
'@nx/eslint': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)
'@nx/eslint': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -4463,11 +4467,11 @@ snapshots:
'@nx/nx-win32-x64-msvc@19.0.6':
optional: true
'@nx/vite@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)(vite@5.0.13)(vitest@1.6.0)':
'@nx/vite@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)(vite@5.0.13(@types/node@18.16.9))(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))':
dependencies:
'@nrwl/vite': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)(vite@5.0.13)(vitest@1.6.0)
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nrwl/vite': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)(vite@5.0.13(@types/node@18.16.9))(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@phenomnomnominal/tsquery': 5.0.1(typescript@5.4.5)
'@swc/helpers': 0.5.11
enquirer: 2.3.6
@@ -4486,11 +4490,11 @@ snapshots:
- typescript
- verdaccio
'@nx/web@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)':
'@nx/web@19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)':
dependencies:
'@nrwl/web': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nx/js': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)(@types/node@18.16.9)(nx@19.0.6)(typescript@5.4.5)
'@nrwl/web': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
'@nx/js': 19.0.6(@babel/traverse@7.24.5)(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))(typescript@5.4.5)
chalk: 4.1.2
detect-port: 1.6.1
http-server: 14.1.1
@@ -4507,13 +4511,13 @@ snapshots:
- typescript
- verdaccio
'@nx/workspace@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)':
'@nx/workspace@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))':
dependencies:
'@nrwl/workspace': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
'@nx/devkit': 19.0.6(nx@19.0.6)
'@nrwl/workspace': 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
'@nx/devkit': 19.0.6(nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)))
chalk: 4.1.2
enquirer: 2.3.6
nx: 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
nx: 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
tslib: 2.6.2
yargs-parser: 21.1.1
transitivePeerDependencies:
@@ -4593,14 +4597,14 @@ snapshots:
'@suchipi/femver@1.0.0': {}
'@swc-node/core@1.13.1(@swc/core@1.3.107)(@swc/types@0.1.7)':
'@swc-node/core@1.13.1(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)':
dependencies:
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
'@swc/types': 0.1.7
'@swc-node/register@1.8.0(@swc/core@1.3.107)(@swc/types@0.1.7)(typescript@5.4.5)':
'@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5)':
dependencies:
'@swc-node/core': 1.13.1(@swc/core@1.3.107)(@swc/types@0.1.7)
'@swc-node/core': 1.13.1(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)
'@swc-node/sourcemap-support': 0.4.0
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
colorette: 2.0.20
@@ -4650,7 +4654,6 @@ snapshots:
'@swc/core@1.3.107(@swc/helpers@0.5.11)':
dependencies:
'@swc/counter': 0.1.3
'@swc/helpers': 0.5.11
'@swc/types': 0.1.7
optionalDependencies:
'@swc/core-darwin-arm64': 1.3.107
@@ -4663,6 +4666,7 @@ snapshots:
'@swc/core-win32-arm64-msvc': 1.3.107
'@swc/core-win32-ia32-msvc': 1.3.107
'@swc/core-win32-x64-msvc': 1.3.107
'@swc/helpers': 0.5.11
'@swc/counter@0.1.3': {}
@@ -4676,8 +4680,9 @@ snapshots:
'@t3-oss/env-core@0.7.3(typescript@5.4.5)(zod@3.23.8)':
dependencies:
typescript: 5.4.5
zod: 3.23.8
optionalDependencies:
typescript: 5.4.5
'@tsconfig/node10@1.0.11': {}
@@ -4693,7 +4698,7 @@ snapshots:
'@types/parse-json@4.0.2': {}
'@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.10.0)(eslint@8.57.0)(typescript@5.4.5)':
'@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/regexpp': 4.10.0
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
@@ -4706,6 +4711,7 @@ snapshots:
ignore: 5.3.1
natural-compare: 1.4.0
ts-api-utils: 1.3.0(typescript@5.4.5)
optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4718,6 +4724,7 @@ snapshots:
'@typescript-eslint/visitor-keys': 7.10.0
debug: 4.3.4
eslint: 8.57.0
optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4734,6 +4741,7 @@ snapshots:
debug: 4.3.4
eslint: 8.57.0
ts-api-utils: 1.3.0(typescript@5.4.5)
optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4750,6 +4758,7 @@ snapshots:
minimatch: 9.0.4
semver: 7.6.2
ts-api-utils: 1.3.0(typescript@5.4.5)
optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4772,7 +4781,7 @@ snapshots:
'@ungap/structured-clone@1.2.0': {}
'@vitest/coverage-v8@1.6.0(vitest@1.6.0)':
'@vitest/coverage-v8@1.6.0(vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0))':
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 0.2.3
@@ -4860,8 +4869,9 @@ snapshots:
computeds: 0.0.1
minimatch: 9.0.4
path-browserify: 1.0.1
typescript: 5.4.5
vue-template-compiler: 2.7.16
optionalDependencies:
typescript: 5.4.5
'@vue/shared@3.4.27': {}
@@ -4982,10 +4992,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
babel-plugin-transform-typescript-metadata@0.3.2(@babel/core@7.24.5):
babel-plugin-transform-typescript-metadata@0.3.2(@babel/core@7.24.5)(@babel/traverse@7.24.5):
dependencies:
'@babel/core': 7.24.5
'@babel/helper-plugin-utils': 7.24.5
optionalDependencies:
'@babel/traverse': 7.24.5
balanced-match@1.0.2: {}
@@ -5897,11 +5909,9 @@ snapshots:
dependencies:
path-key: 4.0.0
nx@19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107):
nx@19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11)):
dependencies:
'@nrwl/tao': 19.0.6(@swc-node/register@1.8.0)(@swc/core@1.3.107)
'@swc-node/register': 1.8.0(@swc/core@1.3.107)(@swc/types@0.1.7)(typescript@5.4.5)
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
'@nrwl/tao': 19.0.6(@swc-node/register@1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5))(@swc/core@1.3.107(@swc/helpers@0.5.11))
'@yarnpkg/lockfile': 1.1.0
'@yarnpkg/parsers': 3.0.0-rc.46
axios: 1.7.2
@@ -5945,6 +5955,8 @@ snapshots:
'@nx/nx-linux-x64-musl': 19.0.6
'@nx/nx-win32-arm64-msvc': 19.0.6
'@nx/nx-win32-x64-msvc': 19.0.6
'@swc-node/register': 1.8.0(@swc/core@1.3.107(@swc/helpers@0.5.11))(@swc/types@0.1.7)(typescript@5.4.5)
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
transitivePeerDependencies:
- debug
@@ -6346,10 +6358,9 @@ snapshots:
dependencies:
typescript: 5.4.5
ts-node@10.9.1(@swc/core@1.3.107)(@types/node@18.16.9)(typescript@5.4.5):
ts-node@10.9.1(@swc/core@1.3.107(@swc/helpers@0.5.11))(@types/node@18.16.9)(typescript@5.4.5):
dependencies:
'@cspotcode/source-map-support': 0.8.1
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
'@tsconfig/node10': 1.0.11
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
@@ -6364,6 +6375,8 @@ snapshots:
typescript: 5.4.5
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
optionalDependencies:
'@swc/core': 1.3.107(@swc/helpers@0.5.11)
tsconfig-paths@4.2.0:
dependencies:
@@ -6448,21 +6461,19 @@ snapshots:
vite@5.0.13(@types/node@18.16.9):
dependencies:
'@types/node': 18.16.9
esbuild: 0.19.12
postcss: 8.4.38
rollup: 4.18.0
optionalDependencies:
'@types/node': 18.16.9
fsevents: 2.3.3
vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0):
dependencies:
'@types/node': 18.16.9
'@vitest/expect': 1.6.0
'@vitest/runner': 1.6.0
'@vitest/snapshot': 1.6.0
'@vitest/spy': 1.6.0
'@vitest/ui': 1.6.0(vitest@1.6.0)
'@vitest/utils': 1.6.0
acorn-walk: 8.3.2
chai: 4.4.1
@@ -6479,6 +6490,9 @@ snapshots:
vite: 5.0.13(@types/node@18.16.9)
vite-node: 1.6.0(@types/node@18.16.9)
why-is-node-running: 2.2.2
optionalDependencies:
'@types/node': 18.16.9
'@vitest/ui': 1.6.0(vitest@1.6.0)
transitivePeerDependencies:
- less
- lightningcss

8
tools/bin/_common_utils Normal file
View File

@@ -0,0 +1,8 @@
#!/usr/bin/env bash
set -euo pipefail
get_host_name() {
echo "localhost"
}
export HOST_NAME=$(get_host_name)

41
tools/bin/_dev_utils Normal file
View File

@@ -0,0 +1,41 @@
#!/usr/bin/env bash
set -euo pipefail
# shellcheck source=./_common_utils
source "$NX_WORKSPACE_ROOT"/tools/bin/_common_utils
# this file is used to be sourced by other scripts
# expects variables:
# - PROJECT_NAME: the name of the project
if [ -z "$PROJECT_NAME" ]; then
echo "PROJECT_NAME is not set"
exit 1
fi
export PROFILE=${CURRENT_PROFILE:-'local'}
export PROJECT_PATH=$(find-project-root "$PROJECT_NAME")
export PROJECT_ROOT="$NX_WORKSPACE_ROOT/$PROJECT_PATH"
export DOCKER_COMPOSE_FILE_PATH=${DOCKER_COMPOSE_FILE_PATH:-"$PROJECT_ROOT/docker-compose.yaml"}
grey() { echo -e "\033[1;30m$1\033[0m"; }
echo_welcome() {
grey "run - project: $PROJECT_NAME, profile: [$PROFILE]"
}
_docker_compose() {
pushd "$PROJECT_ROOT" >/dev/null 2>&1 || exit 1
docker-compose --profile "$PROFILE" --project-name "$PROJECT_NAME" "$@"
popd >/dev/null 2>&1 || exit 1
}
check_remote_artifact_config() {
if [ ! -f "$DOCKER_COMPOSE_FILE_PATH" ]; then
echo "File $DOCKER_COMPOSE_FILE_PATH does not exist, building it with your environment"
fi
echo "\$PROFILE is set to local, skipping remote artifact check"
exit 1
}
read_docker_compose() {
yq e "$@" $DOCKER_COMPOSE_FILE_PATH
}

36
tools/bin/dev Executable file
View File

@@ -0,0 +1,36 @@
#!/usr/bin/env bash
set -euo pipefail
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
cd $DIR/../..
green() {
echo -e "\033[1;32m$1\033[0m"
}
main() {
local CMD="${1:-start}"
case "${CMD}" in
start)
dev-network up
dev-database reset
green "dev environment started, press ctrl-c to exit"
trap 'dev down' SIGINT EXIT TERM
while true; do
sleep 5
done
;;
down)
dev-database down
dev-network down
;;
*)
echo "unknown command: ${CMD}"
;;
esac
}
main $@

82
tools/bin/dev-database Executable file
View File

@@ -0,0 +1,82 @@
#!/usr/bin/env bash
set -euo pipefail
export PROJECT_NAME="dev-database"
# shellcheck source=./_dev_utils
source "$NX_WORKSPACE_ROOT"/tools/bin/_dev_utils
echo_welcome
HASURA_PORT=${HASURA_GRAPHQL_SERVER_PORT:-'8080'}
HASURA_SECRET=${HASURA_GRAPHQL_ADMIN_SECRET:-'mysecretkey'}
HASURA_ENDPOINT=${HASURA_GRAPHQL_ENDPOINT:-"http://localhost:$HASURA_PORT"}
print_usage() {
echo "Usage: $0 {up|upd|deploy|down|logs|clean|reset|sync}"
}
main() {
# check if command is passed
if [ -z "${1:-}" ]; then
print_usage
exit 1
fi
local cmd=$1
case $cmd in
sync)
check_remote_artifact_config
upload_artifact
;;
_up)
shift
_docker_compose up $@
echo_ports
;;
up)
_docker_compose up -d
echo -e "hasura console will be running at \e[32m$HASURA_ENDPOINT/console\e[m"
echo -e " with admin secret: \e[32m$HASURA_SECRET\e[m"
echo "If you're starting from fresh, run:"
echo ' hasura metadata apply && hasura migrate apply --all-databases && hasura metadata reload'
echo -n "Waiting for hasura to be ready - $HASURA_ENDPOINT"
for _ in $(seq 1 999); do
echo -n .
if curl -so /dev/null "$HASURA_ENDPOINT"/v1/version; then
echo
echo "Applying migrations..."
hasura metadata apply &&
hasura migrate apply --all-databases &&
hasura metadata reload
exit 0
fi
sleep 0.5
done
echo "Failed to connect to local hasura console"
;;
down)
_docker_compose down
;;
logs)
_docker_compose logs -f --tail=100
;;
clean)
_docker_compose down -v -t 0
;;
reset)
_docker_compose down -v -t 0
main up
;;
pull)
_docker_compose pull
;;
*)
echo "Usage: $0 {up|down|logs|clean|reset|pull}"
exit 1
;;
esac
}
main $@

39
tools/bin/dev-network Executable file
View File

@@ -0,0 +1,39 @@
#!/usr/bin/env bash
set -euo pipefail
export PROJECT_NAME="dev-network"
# shellcheck source=./_dev_utils
source "$NX_WORKSPACE_ROOT"/tools/bin/_dev_utils
echo_welcome
NETWORK_NAME="${DEV_NETWORK_NAME}"
main() {
local cmd=$1
case $cmd in
up)
if [ "$PROFILE" = "local" ] || [ "$PROFILE" = "ci" ]; then
docker network create --driver bridge --attachable ${NETWORK_NAME} || true
else
echo "creating network ${NETWORK_NAME} on remote host: ${REMOTE_SSH_HOST}"
ssh "$(REMOTE_USER_HOST)" "docker network create --driver bridge --attachable ${NETWORK_NAME}" || true
echo "created network ${NETWORK_NAME} on remote host: ${REMOTE_SSH_HOST}"
fi
;;
down)
if [ "$PROFILE" = "local" ] || [ "$PROFILE" = "ci" ]; then
docker network rm ${NETWORK_NAME} || true
else
echo "removing network ${NETWORK_NAME} on remote host: ${REMOTE_SSH_HOST}"
ssh "$(REMOTE_USER_HOST)" "docker network rm ${NETWORK_NAME}" || true
echo "removed network ${NETWORK_NAME} on remote host: ${REMOTE_SSH_HOST}"
fi
;;
*)
echo "Usage: $0 [up|down]"
exit 1
;;
esac
}
main $@

51
tools/bin/download Executable file
View File

@@ -0,0 +1,51 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/no-var-requires */
const http = require('http');
const https = require('https');
const fs = require('fs');
async function downloadFile(fileUrl, outputLocationPath) {
return new Promise((resolve, reject) => {
const file = fs.createWriteStream(outputLocationPath);
const request = (fileUrl.startsWith('https') ?https : http).get(fileUrl,{}, function(response) {
if (response.statusCode === 302 || response.statusCode === 301) {
downloadFile(response.headers.location, outputLocationPath).then(resolve).catch(reject);
return;
}
response.pipe(file);
// after download completed close filestream
file.on("finish", () => {
file.close();
console.log("Download Completed");
resolve();
});
file.on('error', err => {
file.close();
console.error(err)
reject(err);
})
});
})
}
if (process.argv.length !== 4) {
console.error('Usage: ./download <url> <output-path>');
}
const url = process.argv[2];
const output = process.argv[3];
console.log(`Downloading ${url}`);
downloadFile(url, output).then(
() => {
console.log(`Saved ${url} to ${output}`);
process.exit(0);
},
e => {
console.error(`Fail to download file from ${url}, error: ${e}`);
process.exit(1);
},
);

24
tools/bin/find-project-root Executable file
View File

@@ -0,0 +1,24 @@
#!/usr/bin/env node
const { createProjectGraphAsync } = require('@nx/devkit');
async function run() {
const graph = await createProjectGraphAsync();
const [, , name] = process.argv;
const project = graph.nodes[name];
if (project == null) {
throw new Error(`Project ${name} not found`);
} else {
console.log(project.data.root);
}
}
run()
.then(() => {
process.exit(0);
})
.catch(e => {
console.error(e);
process.exit(1);
});

15
tools/bin/get-env Executable file
View File

@@ -0,0 +1,15 @@
#!/usr/bin/env node
const dotenv = require('dotenv');
const [prevEnv, afterEnv] = process.argv.slice(2);
const prev = dotenv.parse(prevEnv);
const after = dotenv.parse(afterEnv);
// print direnv exported variables for dotenv to use in jest tests
for (const [k, v] of Object.entries(after)) {
// only print changed vars
if (prev[k] !== after[k]) {
console.log(`${k}=${v}`);
}
}

40
tools/bin/hasura Executable file
View File

@@ -0,0 +1,40 @@
#!/usr/bin/env bash
set -euo pipefail
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
BUILD_DIST_DIR=$DIR/../../../../dist/packages/dev/database
DOCKER_COMPOSE_FILE_PATH=$BUILD_DIST_DIR/docker-compose.yaml
read_docker_compose() {
yq e "$@" "$DOCKER_COMPOSE_FILE_PATH"
}
CLI_PATH=cli-hasura-$($DIR/osarch)-v${HASURA_VERSION}
if [ ! -e "${DIR}/${CLI_PATH}" ]; then
rm -f ${DIR}/cli-hasura-*
$DIR/download https://github.com/hasura/graphql-engine/releases/download/v${HASURA_VERSION}/cli-hasura-$($DIR/osarch) ${DIR}/${CLI_PATH}
chmod +x ${DIR}/${CLI_PATH}
fi
HASURA_PORT=${HASURA_GRAPHQL_SERVER_PORT:-'8080'}
HASURA_SECRET=${HASURA_GRAPHQL_ADMIN_SECRET:-'mysecretkey'}
HASURA_ENDPOINT=${HASURA_GRAPHQL_ENDPOINT:-"http://localhost:$HASURA_PORT"}
grey() { echo -e "\033[1;30m$1\033[0m"; }
grey " run hasrua with endpoint: $HASURA_ENDPOINT, admin secret: $HASURA_SECRET"
pushd ${DIR}/../schema >/dev/null 2>&1 || exit 1
#echo "version: 3
#endpoint: $HASURA_ENDPOINT
#admin_secret: $HASURA_SECRET
#metadata_directory: metadata
#" > config.yaml
# https://github.com/hasura/graphql-engine/issues/4953
unset NODE_OPTIONS
${DIR}/${CLI_PATH} --skip-update-check --endpoint $HASURA_ENDPOINT --admin-secret $HASURA_SECRET $@
popd >/dev/null 2>&1 || exit 1

16
tools/bin/osarch Executable file
View File

@@ -0,0 +1,16 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/no-var-requires */
const os = require('os');
function normalizeArch(arch) {
if (arch === 'x64') return 'amd64';
return arch;
}
function normalizePlatform(platform) {
if (platform === 'win32') return 'windows';
return platform;
}
console.log(normalizePlatform(os.platform()) + '-' + normalizeArch(os.arch()));