diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 000000000..29e44415f --- /dev/null +++ b/.eslintrc @@ -0,0 +1,9 @@ +{ + "extends": "@antfu", + "rules": { + "yml/no-empty-mapping-value": "off" + }, + "ignorePatterns": [ + "generated" + ] +} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index f1203f906..000000000 --- a/.eslintrc.js +++ /dev/null @@ -1,15 +0,0 @@ -module.exports = { - env: { - es2021: true, - node: true - }, - extends: 'standard-with-typescript', - overrides: [ - ], - parserOptions: { - ecmaVersion: 'latest', - sourceType: 'module' - }, - rules: { - } -} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ff918a201..b91f05761 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -135,6 +135,23 @@ jobs: - name: Check Diff run: docker run --rm --volume "$(pwd)/Protos/V1:/workspace" --workdir /workspace bufbuild/buf:1.8.0 format -d --exit-code + lint-js: + name: Lint JS + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + - run: corepack enable + - uses: actions/setup-node@v3 + with: + node-version: 20 + cache: pnpm + + - run: pnpm install --frozen-lockfile + + - run: pnpm run lint + build-web: name: Build Web runs-on: ubuntu-latest @@ -210,14 +227,14 @@ jobs: - name: pip update and add build package run: bash proto2python.sh ~/pyvenv - + - name: Install dependencies run: pip install "$(echo pkg/armonik*.whl)[tests]" - name: Run tests run: python -m pytest tests --cov=armonik --cov-config=.coveragerc --cov-report=term-missing --cov-report xml:coverage.xml --cov-report html:coverage_report - - - name: Get Cover + + - name: Get Cover uses: orgoro/coverage@6d7a2607343d2abeab89ef40b54ec9785134e313 with: coverageFile: packages/python/coverage.xml @@ -258,4 +275,3 @@ jobs: if-no-files-found: error path: packages/cpp/tools/packaging/*.${{ matrix.type }} name: libarmonik.${{ matrix.type }} - diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 8b97e470e..00205f9a8 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -12,7 +12,7 @@ permissions: id-token: write concurrency: - group: "pages" + group: pages cancel-in-progress: true jobs: @@ -28,8 +28,8 @@ jobs: - name: Setup Node uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 with: - node-version: "18" - cache: "pnpm" + node-version: '18' + cache: pnpm - name: Install dependencies run: nci @@ -80,8 +80,8 @@ jobs: - name: Setup Node uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 with: - node-version: "18" - cache: "pnpm" + node-version: '18' + cache: pnpm - name: Install dependencies run: cd .docs && nci diff --git a/.github/workflows/publish-edge.yml b/.github/workflows/publish-edge.yml index 880228af3..5bcafacd1 100644 --- a/.github/workflows/publish-edge.yml +++ b/.github/workflows/publish-edge.yml @@ -25,7 +25,7 @@ jobs: id: genver run: echo "VERSION=$(npx @aneoconsultingfr/generate-next-version@latest --edge)" >> "$GITHUB_OUTPUT" - name: Summary version - # Print to the summary + # Print to the summary run: echo "VERSION=${{ steps.genver.outputs.version }}" >> $GITHUB_STEP_SUMMARY version: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3508270cc..0a6735fba 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,7 +6,7 @@ permissions: on: push: tags: - - "[0-9]+.[0-9]+.[0-9]+" + - '[0-9]+.[0-9]+.[0-9]+' jobs: # We need to verify the version in some packages with the tag in order to have the same version in all packages (python, csharp, angular, web). @@ -197,7 +197,6 @@ jobs: run: | gh release upload ${{ github.ref_name }} packages/cpp/tools/packaging/*.${{ matrix.type }} - update-changelog: needs: [verify-versions] runs-on: ubuntu-latest diff --git a/.github/workflows/semantic-pull-request.yml b/.github/workflows/semantic-pull-request.yml index 12f02c7e3..eb961627b 100644 --- a/.github/workflows/semantic-pull-request.yml +++ b/.github/workflows/semantic-pull-request.yml @@ -1,4 +1,4 @@ -name: "Lint PR" +name: Lint PR on: pull_request_target: diff --git a/.github/workflows/validate-docs-generation.yml b/.github/workflows/validate-docs-generation.yml index dc4b9492d..cb132f8bd 100644 --- a/.github/workflows/validate-docs-generation.yml +++ b/.github/workflows/validate-docs-generation.yml @@ -23,8 +23,8 @@ jobs: uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 with: node-version: 18 - cache: "pnpm" - cache-dependency-path: ".docs/pnpm-lock.yaml" + cache: pnpm + cache-dependency-path: .docs/pnpm-lock.yaml - name: Install dependencies run: cd .docs && nci @@ -35,7 +35,6 @@ jobs: - name: Static HTML export with Nuxt run: cd .docs && nr generate - lint-markdown: name: Lint Markdown runs-on: ubuntu-latest @@ -48,7 +47,7 @@ jobs: with: node-version: 18 cache: pnpm - cache-dependency-path: ".docs/pnpm-lock.yaml" + cache-dependency-path: .docs/pnpm-lock.yaml - run: cd .docs && nci @@ -66,7 +65,7 @@ jobs: with: node-version: 18 cache: pnpm - cache-dependency-path: ".docs/pnpm-lock.yaml" + cache-dependency-path: .docs/pnpm-lock.yaml - run: cd .docs && nci diff --git a/examples/angular/package.json b/examples/angular/package.json index 91f38f126..6d1d8de45 100644 --- a/examples/angular/package.json +++ b/examples/angular/package.json @@ -1,7 +1,8 @@ { "name": "armonik-api-angular", - "description": "This project is a demo of the ArmoniK API Angular library", "version": "0.0.0", + "private": true, + "description": "This project is a demo of the ArmoniK API Angular library", "scripts": { "ng": "ng", "start": "ng serve", @@ -9,7 +10,6 @@ "watch": "ng build --watch --configuration development", "test": "ng test" }, - "private": true, "dependencies": { "@aneoconsultingfr/armonik.api.angular": "^3.8.1", "@angular/animations": "^16.0.0", diff --git a/examples/angular/src/app/app.component.ts b/examples/angular/src/app/app.component.ts index 3c86f09a6..41b73473f 100644 --- a/examples/angular/src/app/app.component.ts +++ b/examples/angular/src/app/app.component.ts @@ -1,8 +1,9 @@ -import { AfterViewInit, Component, inject } from '@angular/core'; -import { PartitionsGrpcService } from './services/partitions-grpc.service'; -import { PartitionRaw } from '@aneoconsultingfr/armonik.api.angular'; -import { Subject, merge, startWith, switchMap } from 'rxjs'; -import { NgFor, NgIf } from '@angular/common'; +import type { AfterViewInit } from '@angular/core' +import { Component, inject } from '@angular/core' +import type { PartitionRaw } from '@aneoconsultingfr/armonik.api.angular' +import { Subject, merge, startWith, switchMap } from 'rxjs' +import { NgFor, NgIf } from '@angular/common' +import { PartitionsGrpcService } from './services/partitions-grpc.service' @Component({ selector: 'app-root', @@ -21,7 +22,7 @@ import { NgFor, NgIf } from '@angular/common'; `], standalone: true, providers: [ - PartitionsGrpcService + PartitionsGrpcService, ], imports: [ NgIf, @@ -29,39 +30,38 @@ import { NgFor, NgIf } from '@angular/common'; ], }) export class AppComponent implements AfterViewInit { - #partitionsGrpcService = inject(PartitionsGrpcService); + #partitionsGrpcService = inject(PartitionsGrpcService) - #refresh$ = new Subject(); + #refresh$ = new Subject() - loading = true; - partitions: PartitionRaw.AsObject[] = []; + loading = true + partitions: PartitionRaw.AsObject[] = [] ngAfterViewInit(): void { - merge( - this.#refresh$, - ) - .pipe( - startWith({}), - switchMap(() => { - this.loading = true; - return this.#partitionsGrpcService.list$(); - }), - ).subscribe( - (response) => { - this.loading = false; + merge( + this.#refresh$, + ) + .pipe( + startWith({}), + switchMap(() => { + this.loading = true + return this.#partitionsGrpcService.list$() + }), + ).subscribe( + (response) => { + this.loading = false - if (response.partitions) { - this.partitions = response.partitions; - } - } - ); + if (response.partitions) + this.partitions = response.partitions + }, + ) } refresh(): void { - this.#refresh$.next(); + this.#refresh$.next() } trackByPartition(_index_: number, partition: PartitionRaw.AsObject): string { - return partition.id; + return partition.id } } diff --git a/examples/angular/src/app/app.config.ts b/examples/angular/src/app/app.config.ts index 1676b1e77..debccae3e 100644 --- a/examples/angular/src/app/app.config.ts +++ b/examples/angular/src/app/app.config.ts @@ -1,10 +1,11 @@ -import { ApplicationConfig, importProvidersFrom } from '@angular/core'; -import { GrpcCoreModule } from '@ngx-grpc/core'; -import { GrpcWebClientModule } from '@ngx-grpc/grpc-web-client'; +import type { ApplicationConfig } from '@angular/core' +import { importProvidersFrom } from '@angular/core' +import { GrpcCoreModule } from '@ngx-grpc/core' +import { GrpcWebClientModule } from '@ngx-grpc/grpc-web-client' export const appConfig: ApplicationConfig = { providers: [ importProvidersFrom(GrpcCoreModule.forRoot()), - importProvidersFrom(GrpcWebClientModule.forRoot({ settings: { host: '' } })) - ] -}; + importProvidersFrom(GrpcWebClientModule.forRoot({ settings: { host: '' } })), + ], +} diff --git a/examples/angular/src/app/services/partitions-grpc.service.ts b/examples/angular/src/app/services/partitions-grpc.service.ts index a54ed8a7b..8b990e040 100644 --- a/examples/angular/src/app/services/partitions-grpc.service.ts +++ b/examples/angular/src/app/services/partitions-grpc.service.ts @@ -1,10 +1,11 @@ -import { Injectable, inject } from '@angular/core'; -import { ListPartitionsRequest, ListPartitionsResponse, PartitionsClient } from '@aneoconsultingfr/armonik.api.angular'; -import { Observable } from 'rxjs'; +import { Injectable, inject } from '@angular/core' +import type { ListPartitionsResponse } from '@aneoconsultingfr/armonik.api.angular' +import { ListPartitionsRequest, PartitionsClient } from '@aneoconsultingfr/armonik.api.angular' +import type { Observable } from 'rxjs' @Injectable() export class PartitionsGrpcService { - readonly #client = inject(PartitionsClient); + readonly #client = inject(PartitionsClient) list$(): Observable { const options = new ListPartitionsRequest({ @@ -12,7 +13,7 @@ export class PartitionsGrpcService { pageSize: 10, sort: { direction: ListPartitionsRequest.OrderDirection.ORDER_DIRECTION_ASC, - field: ListPartitionsRequest.OrderByField.ORDER_BY_FIELD_ID + field: ListPartitionsRequest.OrderByField.ORDER_BY_FIELD_ID, }, filter: { id: '', @@ -21,9 +22,9 @@ export class PartitionsGrpcService { podReserved: 0, preemptionPercentage: 0, priority: 0, - } - }); + }, + }) - return this.#client.listPartitions(options); + return this.#client.listPartitions(options) } } diff --git a/examples/angular/src/main.ts b/examples/angular/src/main.ts index 35b00f346..a74c853de 100644 --- a/examples/angular/src/main.ts +++ b/examples/angular/src/main.ts @@ -1,6 +1,6 @@ -import { bootstrapApplication } from '@angular/platform-browser'; -import { appConfig } from './app/app.config'; -import { AppComponent } from './app/app.component'; +import { bootstrapApplication } from '@angular/platform-browser' +import { appConfig } from './app/app.config' +import { AppComponent } from './app/app.component' bootstrapApplication(AppComponent, appConfig) - .catch((err) => console.error(err)); + .catch(err => console.error(err)) diff --git a/package.json b/package.json index da130980b..e7db86bf4 100644 --- a/package.json +++ b/package.json @@ -5,9 +5,12 @@ "ci:publish": "zx scripts/publish.mjs", "ci:publish-edge": "zx scripts/publish-edge.mjs", "update-versions": "jiti ./scripts/update-versions.ts", - "verify-versions": "jiti ./scripts/verify-versions.ts" + "verify-versions": "jiti ./scripts/verify-versions.ts", + "lint": "eslint .", + "lint:fix": "eslint --fix ." }, "devDependencies": { + "@antfu/eslint-config": "^0.41.0", "@typescript-eslint/eslint-plugin": "^5.62.0", "consola": "^2.15.3", "eslint": "^8.47.0", diff --git a/packages/angular/package.json b/packages/angular/package.json index 2bfd30602..5d7bae2ed 100644 --- a/packages/angular/package.json +++ b/packages/angular/package.json @@ -1,5 +1,7 @@ { "name": "armonik.api.angular", + "private": true, + "packageManager": "pnpm@8.6.12", "scripts": { "ng": "ng", "start": "ng serve", @@ -8,8 +10,6 @@ "test": "ng test", "proto:generate:linux": "protoc --plugin=protoc-gen-ng=$(which protoc-gen-ng) --ng_out=./projects/aneoconsultingfr/armonik.api.angular/src/lib/generated -I ../../Protos/V1 ../../Protos/V1/*.proto" }, - "packageManager": "pnpm@8.6.12", - "private": true, "dependencies": { "@angular/animations": "^16.2.1", "@angular/common": "^16.2.1", diff --git a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/ng-package.json b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/ng-package.json index ce023c8ff..a5c3b5fc3 100644 --- a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/ng-package.json +++ b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/ng-package.json @@ -4,4 +4,4 @@ "lib": { "entryFile": "src/public-api.ts" } -} \ No newline at end of file +} diff --git a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json index d3fac489b..7ec4ff515 100644 --- a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json +++ b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json @@ -2,6 +2,22 @@ "name": "@aneoconsultingfr/armonik.api.angular", "version": "3.11.0", "description": "gRPC API to interact with ArmoniK built for Angular", + "license": "Apache-2.0", + "homepage": "https://github.com/aneoconsulting/ArmoniK.Api#readme", + "repository": { + "type": "git", + "url": "git+https://github.com/aneoconsulting/ArmoniK.Api.git" + }, + "bugs": { + "url": "https://github.com/aneoconsulting/ArmoniK.Api/issues" + }, + "keywords": [ + "gRPC", + "API", + "Aneo consulting", + "Angular" + ], + "sideEffects": false, "peerDependencies": { "@angular/common": "^16.2.1", "@angular/core": "^16.2.1", @@ -13,21 +29,5 @@ }, "dependencies": { "tslib": "^2.6.2" - }, - "keywords": [ - "gRPC", - "API", - "Aneo consulting", - "Angular" - ], - "repository": { - "type": "git", - "url": "git+https://github.com/aneoconsulting/ArmoniK.Api.git" - }, - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/aneoconsulting/ArmoniK.Api/issues" - }, - "homepage": "https://github.com/aneoconsulting/ArmoniK.Api#readme", - "sideEffects": false + } } diff --git a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/src/lib/index.ts b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/src/lib/index.ts index bfcdafc65..a9f279fac 100644 --- a/packages/angular/projects/aneoconsultingfr/armonik.api.angular/src/lib/index.ts +++ b/packages/angular/projects/aneoconsultingfr/armonik.api.angular/src/lib/index.ts @@ -1,29 +1,29 @@ export { ApplicationRaw, ListApplicationsRequest, - ListApplicationsResponse -} from "./generated/applications-common.pb"; + ListApplicationsResponse, +} from './generated/applications-common.pb' export { ApplicationField, ApplicationRawEnumField, - ApplicationRawField -} from "./generated/applications-fields.pb"; + ApplicationRawField, +} from './generated/applications-fields.pb' export { FilterField as ApplicationFilterField, Filters as ApplicationFilters, FiltersAnd as ApplicationFiltersAnd, -} from "./generated/applications-filters.pb"; -export { ApplicationsClient } from "./generated/applications-service.pbsc"; +} from './generated/applications-filters.pb' +export { ApplicationsClient } from './generated/applications-service.pbsc' export { GetCurrentUserRequest, GetCurrentUserResponse, - User -} from "./generated/auth-common.pb"; -export { AuthenticationClient } from "./generated/auth-service.pbsc"; + User, +} from './generated/auth-common.pb' +export { AuthenticationClient } from './generated/auth-service.pbsc' export { EventSubscriptionRequest, - EventSubscriptionResponse -} from './generated/events-common.pb'; -export { EventsClient } from "./generated/events-service.pbsc"; + EventSubscriptionResponse, +} from './generated/events-common.pb' +export { EventsClient } from './generated/events-service.pbsc' export { FilterArrayOperator, FilterDateOperator, @@ -34,67 +34,67 @@ export { FilterNumber, FilterString, FilterBooleanOperator, -} from "./generated/filters-common.pb"; -export { StatusCount, TaskOptions } from "./generated/objects.pb"; +} from './generated/filters-common.pb' +export { StatusCount, TaskOptions } from './generated/objects.pb' export { GetPartitionRequest, GetPartitionResponse, ListPartitionsRequest, ListPartitionsResponse, - PartitionRaw -} from "./generated/partitions-common.pb"; + PartitionRaw, +} from './generated/partitions-common.pb' export { PartitionField, PartitionRawEnumField, - PartitionRawField -} from "./generated/partitions-fields.pb"; + PartitionRawField, +} from './generated/partitions-fields.pb' export { FilterField as PartitionFilterField, Filters as PartitionFilters, FiltersAnd as PartitionFiltersAnd, -} from "./generated/partitions-filters.pb"; -export { PartitionsClient } from "./generated/partitions-service.pbsc"; -export { ResultStatus } from "./generated/result-status.pb"; +} from './generated/partitions-filters.pb' +export { PartitionsClient } from './generated/partitions-service.pbsc' +export { ResultStatus } from './generated/result-status.pb' export { GetOwnerTaskIdRequest, GetOwnerTaskIdResponse, GetResultRequest, GetResultResponse, ListResultsRequest, - ListResultsResponse, ResultRaw -} from "./generated/results-common.pb"; + ListResultsResponse, ResultRaw, +} from './generated/results-common.pb' export { ResultField, ResultRawEnumField, - ResultRawField -} from "./generated/results-fields.pb"; + ResultRawField, +} from './generated/results-fields.pb' export { FilterField as ResultFilterField, Filters as ResultFilters, FiltersAnd as ResultFiltersAnd, - FilterStatus as ResultFilterStatus -} from "./generated/results-filters.pb"; -export { ResultsClient } from "./generated/results-service.pbsc"; -export { SessionStatus } from "./generated/session-status.pb"; + FilterStatus as ResultFilterStatus, +} from './generated/results-filters.pb' +export { ResultsClient } from './generated/results-service.pbsc' +export { SessionStatus } from './generated/session-status.pb' export { CancelSessionRequest, CancelSessionResponse, GetSessionRequest, GetSessionResponse, ListSessionsRequest, - ListSessionsResponse, SessionRaw -} from "./generated/sessions-common.pb"; + ListSessionsResponse, SessionRaw, +} from './generated/sessions-common.pb' export { SessionField, SessionRawEnumField, SessionRawField, TaskOptionEnumField as SessionTaskOptionEnumField, TaskOptionField as SessionTaskOptionField, - TaskOptionGenericField as SessionTaskOptionGenericField -} from "./generated/sessions-fields.pb"; + TaskOptionGenericField as SessionTaskOptionGenericField, +} from './generated/sessions-fields.pb' export { FilterField as SessionFilterField, Filters as SessionFilters, FiltersAnd as SessionFiltersAnd, - FilterStatus as SessionFilterStatus -} from "./generated/sessions-filters.pb"; -export { SessionsClient } from "./generated/sessions-service.pbsc"; -export { SortDirection } from "./generated/sort-direction.pb"; -export { TaskStatus } from "./generated/task-status.pb"; + FilterStatus as SessionFilterStatus, +} from './generated/sessions-filters.pb' +export { SessionsClient } from './generated/sessions-service.pbsc' +export { SortDirection } from './generated/sort-direction.pb' +export { TaskStatus } from './generated/task-status.pb' export { CancelTasksRequest, CancelTasksResponse, CountTasksByStatusRequest, @@ -104,20 +104,20 @@ export { GetTaskResponse, ListTasksRequest, ListTasksResponse, TaskDetailed, - TaskSummary -} from "./generated/tasks-common.pb"; + TaskSummary, +} from './generated/tasks-common.pb' export { TaskField, TaskOptionEnumField, TaskOptionField, TaskOptionGenericField, TaskSummaryEnumField, - TaskSummaryField -} from "./generated/tasks-fields.pb"; + TaskSummaryField, +} from './generated/tasks-fields.pb' export { FilterField as TaskFilterField, Filters as TaskFilters, FiltersAnd as TaskFiltersAnd, - FilterStatus as TaskFilterStatus -} from "./generated/tasks-filters.pb"; -export { TasksClient } from "./generated/tasks-service.pbsc"; -export { ListVersionsRequest, ListVersionsResponse } from "./generated/versions-common.pb"; -export { VersionsClient } from "./generated/versions-service.pbsc"; + FilterStatus as TaskFilterStatus, +} from './generated/tasks-filters.pb' +export { TasksClient } from './generated/tasks-service.pbsc' +export { ListVersionsRequest, ListVersionsResponse } from './generated/versions-common.pb' +export { VersionsClient } from './generated/versions-service.pbsc' diff --git a/packages/cpp/CMakeSettings.json b/packages/cpp/CMakeSettings.json index a9c794aa7..7fc1135ba 100644 --- a/packages/cpp/CMakeSettings.json +++ b/packages/cpp/CMakeSettings.json @@ -1,10 +1,10 @@ -{ +{ "configurations": [ { "name": "x64-Debug", "generator": "Ninja", "configurationType": "Debug", - "inheritEnvironments": [ "msvc_x64_x64" ], + "inheritEnvironments": ["msvc_x64_x64"], "buildRoot": "${projectDir}\\out\\build\\${name}", "installRoot": "${projectDir}\\out\\install\\${name}", "cmakeCommandArgs": "", @@ -12,4 +12,4 @@ "ctestCommandArgs": "" } ] -} \ No newline at end of file +} diff --git a/packages/web/package.json b/packages/web/package.json index 3fb5d73e9..d48952d34 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -1,18 +1,33 @@ { "name": "@aneoconsultingfr/armonik.api", "version": "3.11.0", - "description": "gRPC API to interact with ArmoniK built for the web", "packageManager": "pnpm@8.6.12", + "description": "gRPC API to interact with ArmoniK built for the web", + "license": "Apache-2.0", + "homepage": "https://github.com/aneoconsulting/ArmoniK.Api#readme", + "repository": { + "type": "git", + "url": "git+https://github.com/aneoconsulting/ArmoniK.Api.git" + }, + "bugs": { + "url": "https://github.com/aneoconsulting/ArmoniK.Api/issues" + }, + "keywords": [ + "gRPC", + "API", + "Aneo consulting", + "Web" + ], "exports": { ".": { + "types": "./dist/index.d.ts", "import": "./dist/index.mjs", - "require": "./dist/index.js", - "types": "./dist/index.d.ts" + "require": "./dist/index.js" }, "./*": { + "types": "./dist/generated/*.d.ts", "import": "./dist/generated/*.mjs", - "require": "./dist/generated/*.js", - "types": "./dist/generated/*.d.ts" + "require": "./dist/generated/*.js" } }, "main": "./dist/index.js", @@ -26,28 +41,13 @@ "proto:generate:linux": "protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_opt=esModuleInterop=true,importSuffix=.js --ts_proto_out=./src/generated -I ../../Protos/V1 ../../Protos/V1/*.proto", "prepublish": "cp ../../LICENSE ./LICENSE" }, - "keywords": [ - "gRPC", - "API", - "Aneo consulting", - "Web" - ], - "repository": { - "type": "git", - "url": "git+https://github.com/aneoconsulting/ArmoniK.Api.git" - }, - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/aneoconsulting/ArmoniK.Api/issues" + "dependencies": { + "protobufjs": "^7.2.5", + "rxjs": "^7.8.1" }, - "homepage": "https://github.com/aneoconsulting/ArmoniK.Api#readme", "devDependencies": { "ts-proto": "^1.156.7", "tsup": "^7.2.0", "typescript": "^5.2.2" - }, - "dependencies": { - "protobufjs": "^7.2.5", - "rxjs": "^7.8.1" } } diff --git a/packages/web/tsup.config.ts b/packages/web/tsup.config.ts index 245bc8da6..92b6f3d2f 100644 --- a/packages/web/tsup.config.ts +++ b/packages/web/tsup.config.ts @@ -6,5 +6,5 @@ export default defineConfig({ splitting: true, dts: true, clean: true, - shims: false + shims: false, }) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fa77aaa5d..b85ba2780 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,6 +5,9 @@ settings: excludeLinksFromLockfile: false devDependencies: + '@antfu/eslint-config': + specifier: ^0.41.0 + version: 0.41.0(eslint@8.47.0)(typescript@4.9.5) '@typescript-eslint/eslint-plugin': specifier: ^5.62.0 version: 5.62.0(@typescript-eslint/parser@5.57.0)(eslint@8.47.0)(typescript@4.9.5) @@ -52,6 +55,124 @@ packages: engines: {node: '>=0.10.0'} dev: true + /@antfu/eslint-config-basic@0.41.0(@typescript-eslint/eslint-plugin@6.4.1)(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-zcwFv+nEV/NroeeVWriNdnIGd9soOLRG8wIiVz4VVJ0BjONrqQR56HLG/gDxH/1GUYBnQCEcVxGUmegce08cnw==} + peerDependencies: + eslint: '>=7.4.0' + dependencies: + eslint: 8.47.0 + eslint-plugin-antfu: 0.41.0(eslint@8.47.0)(typescript@4.9.5) + eslint-plugin-eslint-comments: 3.2.0(eslint@8.47.0) + eslint-plugin-html: 7.1.0 + eslint-plugin-import: /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.4.1)(eslint@8.47.0) + eslint-plugin-jsonc: 2.9.0(eslint@8.47.0) + eslint-plugin-markdown: 3.0.1(eslint@8.47.0) + eslint-plugin-n: 16.0.2(eslint@8.47.0) + eslint-plugin-no-only-tests: 3.1.0 + eslint-plugin-promise: 6.1.1(eslint@8.47.0) + eslint-plugin-unicorn: 48.0.1(eslint@8.47.0) + eslint-plugin-unused-imports: 3.0.0(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0) + eslint-plugin-yml: 1.8.0(eslint@8.47.0) + jsonc-eslint-parser: 2.3.0 + yaml-eslint-parser: 1.2.2 + transitivePeerDependencies: + - '@typescript-eslint/eslint-plugin' + - '@typescript-eslint/parser' + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + - typescript + dev: true + + /@antfu/eslint-config-ts@0.41.0(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-ng3GYpJGZgrxGwBVda/MgUpveH3LbEqdPCFi1+S5e62W4kf8rmEVbhc0I8w7/aKN0uNqir5SInYg8gob2maDAQ==} + peerDependencies: + eslint: '>=7.4.0' + typescript: '>=3.9' + dependencies: + '@antfu/eslint-config-basic': 0.41.0(@typescript-eslint/eslint-plugin@6.4.1)(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + eslint: 8.47.0 + eslint-plugin-jest: 27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + typescript: 4.9.5 + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - jest + - supports-color + dev: true + + /@antfu/eslint-config-vue@0.41.0(@typescript-eslint/eslint-plugin@6.4.1)(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-iJiEGRUgRmT3mQCmGl0hTMwq/ShXRjRPjpgsDcphKJyEF06ZIR/4gxHn+utQRLT2hD39DQN8gk0ZbpV3gWtf/g==} + peerDependencies: + eslint: '>=7.4.0' + dependencies: + '@antfu/eslint-config-basic': 0.41.0(@typescript-eslint/eslint-plugin@6.4.1)(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@antfu/eslint-config-ts': 0.41.0(eslint@8.47.0)(typescript@4.9.5) + eslint: 8.47.0 + eslint-plugin-vue: 9.17.0(eslint@8.47.0) + local-pkg: 0.4.3 + transitivePeerDependencies: + - '@typescript-eslint/eslint-plugin' + - '@typescript-eslint/parser' + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - jest + - supports-color + - typescript + dev: true + + /@antfu/eslint-config@0.41.0(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-510DginDPdzf45O6HOah3cK6NHXxobBc43IdBQCQmUGb+av9LIJjrd1idThFoyFh6m05iZ4YX/mhnhhJFqLiNw==} + peerDependencies: + eslint: '>=7.4.0' + dependencies: + '@antfu/eslint-config-vue': 0.41.0(@typescript-eslint/eslint-plugin@6.4.1)(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + eslint: 8.47.0 + eslint-plugin-eslint-comments: 3.2.0(eslint@8.47.0) + eslint-plugin-html: 7.1.0 + eslint-plugin-import: /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.4.1)(eslint@8.47.0) + eslint-plugin-jsonc: 2.9.0(eslint@8.47.0) + eslint-plugin-n: 16.0.2(eslint@8.47.0) + eslint-plugin-promise: 6.1.1(eslint@8.47.0) + eslint-plugin-unicorn: 48.0.1(eslint@8.47.0) + eslint-plugin-vue: 9.17.0(eslint@8.47.0) + eslint-plugin-yml: 1.8.0(eslint@8.47.0) + jsonc-eslint-parser: 2.3.0 + yaml-eslint-parser: 1.2.2 + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - jest + - supports-color + - typescript + dev: true + + /@babel/code-frame@7.22.10: + resolution: {integrity: sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.22.10 + chalk: 2.4.2 + dev: true + + /@babel/helper-validator-identifier@7.22.5: + resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/highlight@7.22.10: + resolution: {integrity: sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.22.5 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: true + /@eslint-community/eslint-utils@4.4.0(eslint@8.47.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -146,6 +267,10 @@ packages: resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} dev: true + /@types/json-schema@7.0.12: + resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + dev: true + /@types/json5@0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true @@ -156,6 +281,12 @@ packages: '@types/node': 18.16.7 dev: true + /@types/mdast@3.0.12: + resolution: {integrity: sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg==} + dependencies: + '@types/unist': 2.0.7 + dev: true + /@types/minimist@1.2.2: resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} dev: true @@ -164,6 +295,10 @@ packages: resolution: {integrity: sha512-MFg7ua/bRtnA1hYE3pVyWxGd/r7aMqjNOdHvlSsXV3n8iaeGKkOaPzpJh6/ovf4bEXWcojkeMJpTsq3mzXW4IQ==} dev: true + /@types/normalize-package-data@2.4.1: + resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} + dev: true + /@types/ps-tree@1.1.2: resolution: {integrity: sha512-ZREFYlpUmPQJ0esjxoG1fMvB2HNaD3z+mjqdSosZvd3RalncI9NEur73P8ZJz4YQdL64CmV1w0RuqoRUlhQRBw==} dev: true @@ -172,6 +307,14 @@ packages: resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} dev: true + /@types/semver@7.5.0: + resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + dev: true + + /@types/unist@2.0.7: + resolution: {integrity: sha512-cputDpIbFgLUaGQn6Vqg3/YsJwxUwHLO13v3i5ouxT4lat0khip9AEWxtERujXV9wxIB1EyF97BSJFt6vpdI8g==} + dev: true + /@types/which@3.0.0: resolution: {integrity: sha512-ASCxdbsrwNfSMXALlC3Decif9rwDMu+80KGp5zI2RLRotfMsTv7fHL8W8VDp24wymzDyIFudhUeSCugrgRFfHQ==} dev: true @@ -204,6 +347,35 @@ packages: - supports-color dev: true + /@typescript-eslint/eslint-plugin@6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-3F5PtBzUW0dYlq77Lcqo13fv+58KDwUib3BddilE8ajPJT+faGgxmI9Sw+I8ZS22BYwoir9ZhNXcLi+S+I2bkw==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.6.2 + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/type-utils': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/visitor-keys': 6.4.1 + debug: 4.3.4 + eslint: 8.47.0 + graphemer: 1.4.0 + ignore: 5.2.4 + natural-compare: 1.4.0 + semver: 7.5.4 + ts-api-utils: 1.0.2(typescript@4.9.5) + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/parser@5.57.0(eslint@8.47.0)(typescript@4.9.5): resolution: {integrity: sha512-orrduvpWYkgLCyAdNtR1QIWovcNZlEm6yL8nwH/eTxWLd8gsP+25pdLHYzL2QdkqrieaDwLpytHqycncv0woUQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -224,6 +396,27 @@ packages: - supports-color dev: true + /@typescript-eslint/parser@6.4.1(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-610G6KHymg9V7EqOaNBMtD1GgpAmGROsmfHJPXNLCU9bfIuLrkdOygltK784F6Crboyd5tBFayPB7Sf0McrQwg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/typescript-estree': 6.4.1(typescript@4.9.5) + '@typescript-eslint/visitor-keys': 6.4.1 + debug: 4.3.4 + eslint: 8.47.0 + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/scope-manager@5.57.0: resolution: {integrity: sha512-NANBNOQvllPlizl9LatX8+MHi7bx7WGIWYjPHDmQe5Si/0YEYfxSljJpoTyTWFTgRy3X8gLYSE4xQ2U+aCozSw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -240,6 +433,14 @@ packages: '@typescript-eslint/visitor-keys': 5.62.0 dev: true + /@typescript-eslint/scope-manager@6.4.1: + resolution: {integrity: sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==} + engines: {node: ^16.0.0 || >=18.0.0} + dependencies: + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/visitor-keys': 6.4.1 + dev: true + /@typescript-eslint/type-utils@5.62.0(eslint@8.47.0)(typescript@4.9.5): resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -260,6 +461,26 @@ packages: - supports-color dev: true + /@typescript-eslint/type-utils@6.4.1(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-7ON8M8NXh73SGZ5XvIqWHjgX2f+vvaOarNliGhjrJnv1vdjG0LVIz+ToYfPirOoBi56jxAKLfsLm40+RvxVVXA==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 6.4.1(typescript@4.9.5) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + debug: 4.3.4 + eslint: 8.47.0 + ts-api-utils: 1.0.2(typescript@4.9.5) + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/types@5.57.0: resolution: {integrity: sha512-mxsod+aZRSyLT+jiqHw1KK6xrANm19/+VFALVFP5qa/aiJnlP38qpyaTd0fEKhWvQk6YeNZ5LGwI1pDpBRBhtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -270,6 +491,11 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@typescript-eslint/types@6.4.1: + resolution: {integrity: sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==} + engines: {node: ^16.0.0 || >=18.0.0} + dev: true + /@typescript-eslint/typescript-estree@5.57.0(typescript@4.9.5): resolution: {integrity: sha512-LTzQ23TV82KpO8HPnWuxM2V7ieXW8O142I7hQTxWIHDcCEIjtkat6H96PFkYBQqGFLW/G/eVVOB9Z8rcvdY/Vw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -312,6 +538,27 @@ packages: - supports-color dev: true + /@typescript-eslint/typescript-estree@6.4.1(typescript@4.9.5): + resolution: {integrity: sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/visitor-keys': 6.4.1 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.5.4 + ts-api-utils: 1.0.2(typescript@4.9.5) + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/utils@5.62.0(eslint@8.47.0)(typescript@4.9.5): resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -332,12 +579,31 @@ packages: - typescript dev: true + /@typescript-eslint/utils@6.4.1(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.0 + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/typescript-estree': 6.4.1(typescript@4.9.5) + eslint: 8.47.0 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/visitor-keys@5.57.0: resolution: {integrity: sha512-ery2g3k0hv5BLiKpPuwYt9KBkAp2ugT6VvyShXdLOkax895EC55sP0Tx5L0fZaQueiK3fBLvHVvEl3jFS5ia+g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.57.0 - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.3 dev: true /@typescript-eslint/visitor-keys@5.62.0: @@ -345,7 +611,15 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.3 + dev: true + + /@typescript-eslint/visitor-keys@6.4.1: + resolution: {integrity: sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==} + engines: {node: ^16.0.0 || >=18.0.0} + dependencies: + '@typescript-eslint/types': 6.4.1 + eslint-visitor-keys: 3.4.3 dev: true /acorn-jsx@5.3.2(acorn@8.9.0): @@ -376,6 +650,13 @@ packages: engines: {node: '>=8'} dev: true + /ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + dev: true + /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} @@ -450,6 +731,10 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true + /boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + dev: true + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -470,10 +755,15 @@ packages: fill-range: 7.0.1 dev: true + /builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} + dev: true + /builtins@5.0.1: resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} dependencies: - semver: 7.3.8 + semver: 7.5.4 dev: true /call-bind@1.0.2: @@ -488,6 +778,15 @@ packages: engines: {node: '>=6'} dev: true + /chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: true + /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} @@ -501,6 +800,36 @@ packages: engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true + /character-entities-legacy@1.1.4: + resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} + dev: true + + /character-entities@1.2.4: + resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} + dev: true + + /character-reference-invalid@1.1.4: + resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} + dev: true + + /ci-info@3.8.0: + resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} + engines: {node: '>=8'} + dev: true + + /clean-regexp@1.0.0: + resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} + engines: {node: '>=4'} + dependencies: + escape-string-regexp: 1.0.5 + dev: true + + /color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: true + /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -508,6 +837,10 @@ packages: color-name: 1.1.4 dev: true + /color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: true + /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true @@ -529,6 +862,12 @@ packages: which: 2.0.2 dev: true + /cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + dev: true + /data-uri-to-buffer@4.0.1: resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} engines: {node: '>= 12'} @@ -590,10 +929,48 @@ packages: esutils: 2.0.3 dev: true + /dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + dev: true + + /domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + dev: true + + /domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + dependencies: + domelementtype: 2.3.0 + dev: true + + /domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + dev: true + /duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} dev: true + /entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + dev: true + + /error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: 0.2.1 + dev: true + /es-abstract@1.21.2: resolution: {integrity: sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==} engines: {node: '>= 0.4'} @@ -658,6 +1035,11 @@ packages: is-symbol: 1.0.4 dev: true + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: true + /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} @@ -704,7 +1086,7 @@ packages: dependencies: debug: 3.2.7 is-core-module: 2.13.0 - resolve: 1.22.1 + resolve: 1.22.4 transitivePeerDependencies: - supports-color dev: true @@ -738,6 +1120,56 @@ packages: - supports-color dev: true + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.7)(eslint@8.47.0): + resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + dependencies: + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + debug: 3.2.7 + eslint: 8.47.0 + eslint-import-resolver-node: 0.3.7 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-antfu@0.41.0(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-JeEeDZgz7oqYPYWYNQHdXrKaW2nhJz/70jeMZUkaNjVp72cpsJPH3idiEhIhGu3wjFdsOMCoEkboT/DQXlCaqA==} + dependencies: + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@4.9.5) + transitivePeerDependencies: + - eslint + - supports-color + - typescript + dev: true + + /eslint-plugin-es-x@7.2.0(eslint@8.47.0): + resolution: {integrity: sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '>=8' + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + '@eslint-community/regexpp': 4.6.2 + eslint: 8.47.0 + dev: true + /eslint-plugin-es@4.1.0(eslint@8.47.0): resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} engines: {node: '>=8.10.0'} @@ -749,6 +1181,46 @@ packages: regexpp: 3.2.0 dev: true + /eslint-plugin-eslint-comments@3.2.0(eslint@8.47.0): + resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} + engines: {node: '>=6.5.0'} + peerDependencies: + eslint: '>=4.19.1' + dependencies: + escape-string-regexp: 1.0.5 + eslint: 8.47.0 + ignore: 5.2.4 + dev: true + + /eslint-plugin-html@7.1.0: + resolution: {integrity: sha512-fNLRraV/e6j8e3XYOC9xgND4j+U7b1Rq+OygMlLcMg+wI/IpVbF+ubQa3R78EjKB9njT6TQOlcK5rFKBVVtdfg==} + dependencies: + htmlparser2: 8.0.2 + dev: true + + /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.4.1)(eslint@8.47.0): + resolution: {integrity: sha512-z48kG4qmE4TmiLcxbmvxMT5ycwvPkXaWW0XpU1L768uZaTbiDbxsHMEdV24JHlOR1xDsPpKW39BfP/pRdYIwFA==} + engines: {node: '>=12'} + peerDependencies: + eslint: ^7.2.0 || ^8 + dependencies: + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 8.47.0 + eslint-import-resolver-node: 0.3.7 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.7)(eslint@8.47.0) + get-tsconfig: 4.7.0 + is-glob: 4.0.3 + minimatch: 3.1.2 + resolve: 1.22.4 + semver: 7.5.4 + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + dev: true + /eslint-plugin-import@2.28.1(@typescript-eslint/parser@5.57.0)(eslint@8.47.0): resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} engines: {node: '>=4'} @@ -779,8 +1251,53 @@ packages: semver: 6.3.1 tsconfig-paths: 3.14.2 transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + dev: true + + /eslint-plugin-jest@27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(typescript@4.9.5): + resolution: {integrity: sha512-sRLlSCpICzWuje66Gl9zvdF6mwD5X86I4u55hJyFBsxYOsBCmT5+kSUjf+fkFWVMMgpzNEupjW8WzUqi83hJAQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 + eslint: ^7.0.0 || ^8.0.0 + jest: '*' + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + jest: + optional: true + dependencies: + '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + '@typescript-eslint/utils': 5.62.0(eslint@8.47.0)(typescript@4.9.5) + eslint: 8.47.0 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /eslint-plugin-jsonc@2.9.0(eslint@8.47.0): + resolution: {integrity: sha512-RK+LeONVukbLwT2+t7/OY54NJRccTXh/QbnXzPuTLpFMVZhPuq1C9E07+qWenGx7rrQl0kAalAWl7EmB+RjpGA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + eslint: 8.47.0 + jsonc-eslint-parser: 2.3.0 + natural-compare: 1.4.0 + dev: true + + /eslint-plugin-markdown@3.0.1(eslint@8.47.0): + resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + eslint: 8.47.0 + mdast-util-from-markdown: 0.8.5 + transitivePeerDependencies: - supports-color dev: true @@ -801,6 +1318,28 @@ packages: semver: 7.3.8 dev: true + /eslint-plugin-n@16.0.2(eslint@8.47.0): + resolution: {integrity: sha512-Y66uDfUNbBzypsr0kELWrIz+5skicECrLUqlWuXawNSLUq3ltGlCwu6phboYYOTSnoTdHgTLrc+5Ydo6KjzZog==} + engines: {node: '>=16.0.0'} + peerDependencies: + eslint: '>=7.0.0' + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + builtins: 5.0.1 + eslint: 8.47.0 + eslint-plugin-es-x: 7.2.0(eslint@8.47.0) + ignore: 5.2.4 + is-core-module: 2.13.0 + minimatch: 3.1.2 + resolve: 1.22.4 + semver: 7.5.4 + dev: true + + /eslint-plugin-no-only-tests@3.1.0: + resolution: {integrity: sha512-Lf4YW/bL6Un1R6A76pRZyE1dl1vr31G/ev8UzIc/geCgFWyrKil8hVjYqWVKGB/UIGmb6Slzs9T0wNezdSVegw==} + engines: {node: '>=5.0.0'} + dev: true + /eslint-plugin-promise@6.1.1(eslint@8.47.0): resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -810,6 +1349,83 @@ packages: eslint: 8.47.0 dev: true + /eslint-plugin-unicorn@48.0.1(eslint@8.47.0): + resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==} + engines: {node: '>=16'} + peerDependencies: + eslint: '>=8.44.0' + dependencies: + '@babel/helper-validator-identifier': 7.22.5 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + ci-info: 3.8.0 + clean-regexp: 1.0.0 + eslint: 8.47.0 + esquery: 1.5.0 + indent-string: 4.0.0 + is-builtin-module: 3.2.1 + jsesc: 3.0.2 + lodash: 4.17.21 + pluralize: 8.0.0 + read-pkg-up: 7.0.1 + regexp-tree: 0.1.27 + regjsparser: 0.10.0 + semver: 7.5.4 + strip-indent: 3.0.0 + dev: true + + /eslint-plugin-unused-imports@3.0.0(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0): + resolution: {integrity: sha512-sduiswLJfZHeeBJ+MQaG+xYzSWdRXoSw61DpU13mzWumCkR0ufD0HmO4kdNokjrkluMHpj/7PJeN35pgbhW3kw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^6.0.0 + eslint: ^8.0.0 + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + dependencies: + '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@4.9.5) + eslint: 8.47.0 + eslint-rule-composer: 0.3.0 + dev: true + + /eslint-plugin-vue@9.17.0(eslint@8.47.0): + resolution: {integrity: sha512-r7Bp79pxQk9I5XDP0k2dpUC7Ots3OSWgvGZNu3BxmKK6Zg7NgVtcOB6OCna5Kb9oQwJPl5hq183WD0SY5tZtIQ==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + eslint: 8.47.0 + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 6.0.13 + semver: 7.5.4 + vue-eslint-parser: 9.3.1(eslint@8.47.0) + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-yml@1.8.0(eslint@8.47.0): + resolution: {integrity: sha512-fgBiJvXD0P2IN7SARDJ2J7mx8t0bLdG6Zcig4ufOqW5hOvSiFxeUyc2g5I1uIm8AExbo26NNYCcTGZT0MXTsyg==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + dependencies: + debug: 4.3.4 + eslint: 8.47.0 + lodash: 4.17.21 + natural-compare: 1.4.0 + yaml-eslint-parser: 1.2.2 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-rule-composer@0.3.0: + resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==} + engines: {node: '>=4.0.0'} + dev: true + /eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -853,11 +1469,6 @@ packages: engines: {node: '>=10'} dev: true - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1010,6 +1621,14 @@ packages: to-regex-range: 5.0.1 dev: true + /find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + dev: true + /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -1108,6 +1727,12 @@ packages: get-intrinsic: 1.2.0 dev: true + /get-tsconfig@4.7.0: + resolution: {integrity: sha512-pmjiZ7xtB8URYm74PlGJozDNyhvsVLUcpBa8DZBG3bWHwaHa9bPiRpiSfovw+fjhwONSCWKRyk+JQHEGZmMrzw==} + dependencies: + resolve-pkg-maps: 1.0.0 + dev: true + /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -1199,6 +1824,11 @@ packages: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: true + /has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + dev: true + /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -1234,6 +1864,19 @@ packages: function-bind: 1.1.1 dev: true + /hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + dev: true + + /htmlparser2@8.0.2: + resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.1.0 + entities: 4.5.0 + dev: true + /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} @@ -1252,6 +1895,11 @@ packages: engines: {node: '>=0.8.19'} dev: true + /indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + dev: true + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -1272,6 +1920,17 @@ packages: side-channel: 1.0.4 dev: true + /is-alphabetical@1.0.4: + resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} + dev: true + + /is-alphanumerical@1.0.4: + resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} + dependencies: + is-alphabetical: 1.0.4 + is-decimal: 1.0.4 + dev: true + /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: @@ -1280,6 +1939,10 @@ packages: is-typed-array: 1.1.10 dev: true + /is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + dev: true + /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -1294,6 +1957,13 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-builtin-module@3.2.1: + resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} + engines: {node: '>=6'} + dependencies: + builtin-modules: 3.3.0 + dev: true + /is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -1318,6 +1988,10 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-decimal@1.0.4: + resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} + dev: true + /is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -1330,6 +2004,10 @@ packages: is-extglob: 2.1.1 dev: true + /is-hexadecimal@1.0.4: + resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} + dev: true + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} @@ -1406,6 +2084,10 @@ packages: hasBin: true dev: true + /js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + dev: true + /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true @@ -1413,6 +2095,21 @@ packages: argparse: 2.0.1 dev: true + /jsesc@0.5.0: + resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} + hasBin: true + dev: true + + /jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} + hasBin: true + dev: true + + /json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: true + /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true @@ -1428,6 +2125,16 @@ packages: minimist: 1.2.8 dev: true + /jsonc-eslint-parser@2.3.0: + resolution: {integrity: sha512-9xZPKVYp9DxnM3sd1yAsh/d59iIaswDkai8oTxbursfKYbg/ibjX0IzFt35+VZ8iEW453TVTXztnRvYUQlAfUQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + acorn: 8.9.0 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + semver: 7.5.4 + dev: true + /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: @@ -1444,6 +2151,22 @@ packages: type-check: 0.4.0 dev: true + /lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + dev: true + + /local-pkg@0.4.3: + resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} + engines: {node: '>=14'} + dev: true + + /locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + dependencies: + p-locate: 4.1.0 + dev: true + /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -1455,6 +2178,10 @@ packages: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true + /lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: true + /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} @@ -1466,11 +2193,36 @@ packages: resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==} dev: true + /mdast-util-from-markdown@0.8.5: + resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==} + dependencies: + '@types/mdast': 3.0.12 + mdast-util-to-string: 2.0.0 + micromark: 2.11.4 + parse-entities: 2.0.0 + unist-util-stringify-position: 2.0.3 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-to-string@2.0.0: + resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} + dev: true + /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} dev: true + /micromark@2.11.4: + resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} + dependencies: + debug: 4.3.4 + parse-entities: 2.0.0 + transitivePeerDependencies: + - supports-color + dev: true + /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -1479,6 +2231,11 @@ packages: picomatch: 2.3.1 dev: true + /min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -1526,6 +2283,21 @@ packages: formdata-polyfill: 4.0.10 dev: true + /normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.4 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + dev: true + + /nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + dependencies: + boolbase: 1.0.0 + dev: true + /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: true @@ -1590,6 +2362,13 @@ packages: type-check: 0.4.0 dev: true + /p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + dependencies: + p-try: 2.2.0 + dev: true + /p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -1597,6 +2376,13 @@ packages: yocto-queue: 0.1.0 dev: true + /p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + dependencies: + p-limit: 2.3.0 + dev: true + /p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -1604,6 +2390,11 @@ packages: p-limit: 3.1.0 dev: true + /p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + dev: true + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -1611,6 +2402,27 @@ packages: callsites: 3.1.0 dev: true + /parse-entities@2.0.0: + resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} + dependencies: + character-entities: 1.2.4 + character-entities-legacy: 1.1.4 + character-reference-invalid: 1.1.4 + is-alphanumerical: 1.0.4 + is-decimal: 1.0.4 + is-hexadecimal: 1.0.4 + dev: true + + /parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': 7.22.10 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + dev: true + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -1650,6 +2462,19 @@ packages: engines: {node: '>=8.6'} dev: true + /pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + dev: true + + /postcss-selector-parser@6.0.13: + resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: true + /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -1672,6 +2497,30 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true + /read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} + dependencies: + find-up: 4.1.0 + read-pkg: 5.2.0 + type-fest: 0.8.1 + dev: true + + /read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} + dependencies: + '@types/normalize-package-data': 2.4.1 + normalize-package-data: 2.5.0 + parse-json: 5.2.0 + type-fest: 0.6.0 + dev: true + + /regexp-tree@0.1.27: + resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} + hasBin: true + dev: true + /regexp.prototype.flags@1.4.3: resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} engines: {node: '>= 0.4'} @@ -1686,16 +2535,36 @@ packages: engines: {node: '>=8'} dev: true + /regjsparser@0.10.0: + resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} + hasBin: true + dependencies: + jsesc: 0.5.0 + dev: true + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} dev: true + /resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + dev: true + /resolve@1.22.1: resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} hasBin: true dependencies: - is-core-module: 2.11.0 + is-core-module: 2.13.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /resolve@1.22.4: + resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} + hasBin: true + dependencies: + is-core-module: 2.13.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true @@ -1726,6 +2595,11 @@ packages: is-regex: 1.1.4 dev: true + /semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + dev: true + /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -1739,6 +2613,14 @@ packages: lru-cache: 6.0.0 dev: true + /semver@7.5.4: + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1769,6 +2651,28 @@ packages: engines: {node: '>=12'} dev: true + /spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.13 + dev: true + + /spdx-exceptions@2.3.0: + resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} + dev: true + + /spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + dependencies: + spdx-exceptions: 2.3.0 + spdx-license-ids: 3.0.13 + dev: true + + /spdx-license-ids@3.0.13: + resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} + dev: true + /split@0.3.3: resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==} dependencies: @@ -1818,11 +2722,25 @@ packages: engines: {node: '>=4'} dev: true + /strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + dependencies: + min-indent: 1.0.1 + dev: true + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} dev: true + /supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + dependencies: + has-flag: 3.0.0 + dev: true + /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -1850,6 +2768,15 @@ packages: is-number: 7.0.0 dev: true + /ts-api-utils@1.0.2(typescript@4.9.5): + resolution: {integrity: sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==} + engines: {node: '>=16.13.0'} + peerDependencies: + typescript: '>=4.2.0' + dependencies: + typescript: 4.9.5 + dev: true + /tsconfig-paths@3.14.2: resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} dependencies: @@ -1889,6 +2816,16 @@ packages: engines: {node: '>=10'} dev: true + /type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + dev: true + + /type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + dev: true + /typed-array-length@1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} dependencies: @@ -1912,6 +2849,12 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /unist-util-stringify-position@2.0.3: + resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} + dependencies: + '@types/unist': 2.0.7 + dev: true + /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} @@ -1923,6 +2866,35 @@ packages: punycode: 2.3.0 dev: true + /util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + dev: true + + /validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + dev: true + + /vue-eslint-parser@9.3.1(eslint@8.47.0): + resolution: {integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + dependencies: + debug: 4.3.4 + eslint: 8.47.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.5.0 + lodash: 4.17.21 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + dev: true + /web-streams-polyfill@3.2.1: resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} engines: {node: '>= 8'} @@ -1975,10 +2947,24 @@ packages: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} dev: true + /xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} + dev: true + /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true + /yaml-eslint-parser@1.2.2: + resolution: {integrity: sha512-pEwzfsKbTrB8G3xc/sN7aw1v6A6c/pKxLAkjclnAyo5g5qOh6eL9WGu0o3cSDQZKrTNk4KL4lQSwZW+nBkANEg==} + engines: {node: ^14.17.0 || >=16.0.0} + dependencies: + eslint-visitor-keys: 3.4.3 + lodash: 4.17.21 + yaml: 2.2.2 + dev: true + /yaml@2.2.2: resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} engines: {node: '>= 14'} diff --git a/scripts/update-versions.ts b/scripts/update-versions.ts index 3f113106d..ffb1d1a42 100644 --- a/scripts/update-versions.ts +++ b/scripts/update-versions.ts @@ -1,5 +1,6 @@ -import consola from "consola"; -import { _readAndReplace } from "./versions/_readAndReplace"; +import process from 'node:process' +import consola from 'consola' +import { _readAndReplace } from './versions/_readAndReplace' import { cppFiles, cppPattern, @@ -7,28 +8,26 @@ import { csharpPattern, jsFiles, jsPattern, - pythonFiles, - pythonPattern, -} from "./versions/_contants"; +} from './versions/_contants' -const [, , ...args] = process.argv; +const [, , ...args] = process.argv if (args.length === 0) { - consola.fatal("Please provide a version"); - consola.log("Usage: npm run update-versions "); - consola.log("Example: npm run update-versions 1.0.0"); - process.exit(1); + consola.fatal('Please provide a version') + consola.log('Usage: npm run update-versions ') + consola.log('Example: npm run update-versions 1.0.0') + process.exit(1) } -const version = args[0]; +const version = args[0] -consola.info("Updating C# projects to ", version); +consola.info('Updating C# projects to ', version) csharpFiles.forEach( - _readAndReplace(csharpPattern, `${version}`) -); + _readAndReplace(csharpPattern, `${version}`), +) -consola.info("Updating JS projects to ", version); -jsFiles.forEach(_readAndReplace(jsPattern, `"version": "${version}"`)); +consola.info('Updating JS projects to ', version) +jsFiles.forEach(_readAndReplace(jsPattern, `"version": "${version}"`)) -consola.info("Updating cpp projects to ", version); -cppFiles.forEach(_readAndReplace(cppPattern, `set(version ${version})`)); +consola.info('Updating cpp projects to ', version) +cppFiles.forEach(_readAndReplace(cppPattern, `set(version ${version})`)) diff --git a/scripts/verify-versions.ts b/scripts/verify-versions.ts index 9eccaeab4..9d0a11de9 100644 --- a/scripts/verify-versions.ts +++ b/scripts/verify-versions.ts @@ -1,4 +1,5 @@ -import consola from "consola"; +import process from 'node:process' +import consola from 'consola' import { cppFiles, cppPattern, @@ -6,42 +7,41 @@ import { csharpPattern, jsFiles, jsPattern, - pythonFiles, - pythonPattern, -} from "./versions/_contants"; -import { _readAndFind } from "./versions/_readAndFind"; +} from './versions/_contants' +import { _readAndFind } from './versions/_readAndFind' -const versions = new Map(); -const [, , ...args] = process.argv; +const versions = new Map() +const [, , ...args] = process.argv -consola.info("Finding JS projects versions"); -jsFiles.forEach(_readAndFind(jsPattern, versions)); -consola.info("Finding C# projects versions"); -csharpFiles.forEach(_readAndFind(csharpPattern, versions)); -consola.info("Finding Cpp projects versions"); -cppFiles.forEach(_readAndFind(cppPattern, versions)); +consola.info('Finding JS projects versions') +jsFiles.forEach(_readAndFind(jsPattern, versions)) +consola.info('Finding C# projects versions') +csharpFiles.forEach(_readAndFind(csharpPattern, versions)) +consola.info('Finding Cpp projects versions') +cppFiles.forEach(_readAndFind(cppPattern, versions)) -const versionsArray = [...versions.values()]; -const uniqueVersions = [...new Set(versionsArray)]; +const versionsArray = [...versions.values()] +const uniqueVersions = [...new Set(versionsArray)] -const filesPerVersion = new Map(); +const filesPerVersion = new Map() versions.forEach((version, file) => { - const files = filesPerVersion.get(version) || []; - files.push(file); - filesPerVersion.set(version, files); -}); - + const files = filesPerVersion.get(version) || [] + files.push(file) + filesPerVersion.set(version, files) +}) if (uniqueVersions.length > 1) { - consola.fatal(`Found multiple versions`); + consola.fatal('Found multiple versions') uniqueVersions.forEach((version) => { - consola.info(version, filesPerVersion.get(version)); - }); - process.exit(1); -} else if(args.length > 0 && uniqueVersions[0] != args[0]) { - consola.fatal(`Found ${uniqueVersions[0]} for all projects but does not match expected ${args[0]}`); - process.exit(1); -} else { - consola.success(`Found ${uniqueVersions[0]} for all projects`); - process.exit(0); + consola.info(version, filesPerVersion.get(version)) + }) + process.exit(1) +} +else if (args.length > 0 && uniqueVersions[0] !== args[0]) { + consola.fatal(`Found ${uniqueVersions[0]} for all projects but does not match expected ${args[0]}`) + process.exit(1) +} +else { + consola.success(`Found ${uniqueVersions[0]} for all projects`) + process.exit(0) } diff --git a/scripts/versions/_contants.ts b/scripts/versions/_contants.ts index e04c966f1..bf4af5599 100644 --- a/scripts/versions/_contants.ts +++ b/scripts/versions/_contants.ts @@ -1,13 +1,13 @@ -import glob from "glob"; +import glob from 'glob' -export const csharpPattern = /(?.*)<\/PackageVersion>/; -export const csharpFiles = glob.sync(`**/*.csproj`); +export const csharpPattern = /(?.*)<\/PackageVersion>/ +export const csharpFiles = glob.sync('**/*.csproj') -export const pythonPattern = /version = "(?.*)"/g; -export const pythonFiles = ["packages/python/pyproject.toml"]; +export const pythonPattern = /version = "(?.*)"/g +export const pythonFiles = ['packages/python/pyproject.toml'] -export const jsPattern = /"version": "(?.*)"/; -export const jsFiles = ["packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json", "packages/web/package.json"]; +export const jsPattern = /"version": "(?.*)"/ +export const jsFiles = ['packages/angular/projects/aneoconsultingfr/armonik.api.angular/package.json', 'packages/web/package.json'] export const cppPattern = /set\(version (?.*)\)/ -export const cppFiles = ["packages/cpp/CMakeLists.txt"]; +export const cppFiles = ['packages/cpp/CMakeLists.txt'] diff --git a/scripts/versions/_readAndFind.ts b/scripts/versions/_readAndFind.ts index d094cc849..d01a78b66 100644 --- a/scripts/versions/_readAndFind.ts +++ b/scripts/versions/_readAndFind.ts @@ -1,23 +1,23 @@ -import { resolve } from "pathe"; -import consola from "consola"; -import fs from "node:fs"; +import fs from 'node:fs' +import process from 'node:process' +import { resolve } from 'pathe' +import consola from 'consola' export function _readAndFind(pattern: RegExp, versions: Map) { return (file: string) => { const data = fs.readFileSync(resolve(file), { - encoding: "utf8", - flag: "r", - }); + encoding: 'utf8', + flag: 'r', + }) - const version = pattern.exec(data)?.groups?.version; + const version = pattern.exec(data)?.groups?.version if (!version) { - consola.fatal(`Could not find version in ${file}`); - process.exit(1); + consola.fatal(`Could not find version in ${file}`) + process.exit(1) } - versions.set(file, version); - consola.log(`Found ${file.split("/").pop()}@${version}`); - - }; + versions.set(file, version) + consola.log(`Found ${file.split('/').pop()}@${version}`) + } } diff --git a/scripts/versions/_readAndReplace.ts b/scripts/versions/_readAndReplace.ts index 080277f2b..56a357c87 100644 --- a/scripts/versions/_readAndReplace.ts +++ b/scripts/versions/_readAndReplace.ts @@ -1,15 +1,15 @@ -import { resolve } from "pathe"; -import consola from "consola"; -import fs from "node:fs"; +import fs from 'node:fs' +import { resolve } from 'pathe' +import consola from 'consola' export function _readAndReplace(pattern: RegExp, replace: string) { return (file: string) => { - const data = fs.readFileSync(resolve(file), "utf8"); + const data = fs.readFileSync(resolve(file), 'utf8') - const result = data.replace(pattern, replace); + const result = data.replace(pattern, replace) - fs.writeFileSync(resolve(file), result, "utf8"); + fs.writeFileSync(resolve(file), result, 'utf8') - consola.success(`Update ${file.split("/").pop()}`); - }; + consola.success(`Update ${file.split('/').pop()}`) + } }