diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 00000000..e5b6d8d6 --- /dev/null +++ b/.changeset/README.md @@ -0,0 +1,8 @@ +# Changesets + +Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works +with multi-package repos, or single-package repos to help you version and publish your code. You can +find the full documentation for it [in our repository](https://github.com/changesets/changesets) + +We have a quick list of common questions to get you started engaging with this project in +[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 00000000..6d2119a4 --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,11 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "fixed": [], + "linked": [], + "access": "restricted", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "ignore": [] +} diff --git a/.syncpackrc.json b/.syncpackrc.json index 43fa0527..5de877ef 100644 --- a/.syncpackrc.json +++ b/.syncpackrc.json @@ -26,7 +26,7 @@ "versionGroups": [ { "label": "ES Mapping Generator Special Dependencies", - "dependencies": ["typescript", "typedoc", "ts-node"], + "dependencies": ["typescript", "typedoc", "ts-node", "@types/node", "got"], "packages": ["@openstapps/es-mapping-generator"], "isIgnored": true }, diff --git a/README.md b/README.md index dcc63941..8fc1a8f0 100644 --- a/README.md +++ b/README.md @@ -36,3 +36,17 @@ TURBO_TOKEN=... ```shell docker run --env-file=.env -p 3000:3000 fox1t/turborepo-remote-cache ``` + +## Useful commands + +#### Why is this package bloating the app? + +```shell +pnpm why -P -r --filter @openstapps/app PACKAGE +``` + +#### Licenses + +```shell +pnpm licenses -P --filter PROJECT +``` \ No newline at end of file diff --git a/backend/backend/app.js b/backend/backend/app.js new file mode 100644 index 00000000..d233e644 --- /dev/null +++ b/backend/backend/app.js @@ -0,0 +1,2 @@ +#!/usr/bin/env node +import './lib/cli.js' diff --git a/backend/backend/config/elasticsearch-b-tu.ts b/backend/backend/config/elasticsearch-b-tu.ts index eb30ad3b..257b54fa 100644 --- a/backend/backend/config/elasticsearch-b-tu.ts +++ b/backend/backend/config/elasticsearch-b-tu.ts @@ -1,7 +1,7 @@ // tslint:disable:no-default-export // tslint:disable:no-magic-numbers import {RecursivePartial} from '@openstapps/logger/lib/common'; -import {ElasticsearchConfigFile} from '../src/storage/elasticsearch/types/elasticsearch'; +import {ElasticsearchConfigFile} from '../src/storage/elasticsearch/types/elasticsearch.js'; /** * This is the database configuration for the technical university of berlin diff --git a/backend/backend/config/elasticsearch.ts b/backend/backend/config/elasticsearch.ts index ece20b0b..c318f165 100644 --- a/backend/backend/config/elasticsearch.ts +++ b/backend/backend/config/elasticsearch.ts @@ -1,6 +1,6 @@ // tslint:disable:no-default-export // tslint:disable:no-magic-numbers -import {ElasticsearchConfigFile} from '../src/storage/elasticsearch/types/elasticsearch-config'; +import {ElasticsearchConfigFile} from '../src/storage/elasticsearch/types/elasticsearch-config.js'; /** * This is the default configuration for elasticsearch (a database) diff --git a/backend/backend/package.json b/backend/backend/package.json index 7a7e220f..5cb17b32 100644 --- a/backend/backend/package.json +++ b/backend/backend/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/backend", "description": "A reference implementation for a StApps backend", "version": "2.1.0", + "type": "module", "license": "AGPL-3.0-only", "author": "André Bierlein ", "contributors": [ @@ -97,8 +98,8 @@ "sinon": "14.0.2", "sinon-express-mock": "2.2.1", "supertest": "6.3.3", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "nyc": { "all": true, @@ -124,5 +125,12 @@ "ts-node/register" ], "statements": 95 + }, + "pnpm": { + "peerDependencyRules": { + "allowedVersions": { + "rxjs": "7.x" + } + } } } diff --git a/backend/backend/src/app.ts b/backend/backend/src/app.ts index 0a4c024f..53a733fc 100644 --- a/backend/backend/src/app.ts +++ b/backend/backend/src/app.ts @@ -25,20 +25,20 @@ import cors from 'cors'; import {Express} from 'express'; import morgan from 'morgan'; import path from 'path'; -import {configFile, DEFAULT_TIMEOUT, isTestEnvironment, mailer, plugins, validator} from './common'; -import {getPrometheusMiddleware} from './middleware/prometheus'; -import {MailQueue} from './notification/mail-queue'; -import {bulkAddRouter} from './routes/bulk-add-route'; -import {bulkDoneRouter} from './routes/bulk-done-route'; -import {bulkRouter} from './routes/bulk-route'; -import {indexRouter} from './routes/index-route'; -import {multiSearchRouter} from './routes/multi-search-route'; -import {pluginRegisterRouter} from './routes/plugin-register-route'; -import {searchRouter} from './routes/search-route'; -import {thingUpdateRouter} from './routes/thing-update-route'; -import {virtualPluginRoute} from './routes/virtual-plugin-route'; -import {BulkStorage} from './storage/bulk-storage'; -import {DatabaseConstructor} from './storage/database'; +import {configFile, DEFAULT_TIMEOUT, isTestEnvironment, mailer, plugins, validator} from './common.js'; +import {getPrometheusMiddleware} from './middleware/prometheus.js'; +import {MailQueue} from './notification/mail-queue.js'; +import {bulkAddRouter} from './routes/bulk-add-route.js'; +import {bulkDoneRouter} from './routes/bulk-done-route.js'; +import {bulkRouter} from './routes/bulk-route.js'; +import {indexRouter} from './routes/index-route.js'; +import {multiSearchRouter} from './routes/multi-search-route.js'; +import {pluginRegisterRouter} from './routes/plugin-register-route.js'; +import {searchRouter} from './routes/search-route.js'; +import {thingUpdateRouter} from './routes/thing-update-route.js'; +import {virtualPluginRoute} from './routes/virtual-plugin-route.js'; +import {BulkStorage} from './storage/bulk-storage.js'; +import {DatabaseConstructor} from './storage/database.js'; /** * Configure the backend diff --git a/backend/backend/src/cli.ts b/backend/backend/src/cli.ts index 3779f85c..e2d40dcc 100644 --- a/backend/backend/src/cli.ts +++ b/backend/backend/src/cli.ts @@ -1,5 +1,3 @@ -#!/usr/bin/env node - /* * Copyright (C) 2019 StApps * This program is free software: you can redistribute it and/or modify @@ -18,8 +16,8 @@ import {Logger} from '@openstapps/logger'; import express from 'express'; import http from 'http'; -import {configureApp} from './app'; -import {Elasticsearch} from './storage/elasticsearch/elasticsearch'; +import {configureApp} from './app.js'; +import {Elasticsearch} from './storage/elasticsearch/elasticsearch.js'; const app = express(); diff --git a/backend/backend/src/common.ts b/backend/backend/src/common.ts index 47723fad..624109f5 100644 --- a/backend/backend/src/common.ts +++ b/backend/backend/src/common.ts @@ -14,9 +14,9 @@ * along with this program. If not, see . */ import {SCConfigFile, SCPluginMetaData} from '@openstapps/core'; -import {Validator} from '@openstapps/core-tools/lib/validate'; +import {Validator} from '@openstapps/core-tools/lib/validate.js'; import config from 'config'; -import {BackendTransport} from './notification/backend-transport'; +import {BackendTransport} from './notification/backend-transport.js'; /** * Instance of the transport for sending mails diff --git a/backend/backend/src/notification/backend-transport.ts b/backend/backend/src/notification/backend-transport.ts index 5a1d7543..12f577fe 100644 --- a/backend/backend/src/notification/backend-transport.ts +++ b/backend/backend/src/notification/backend-transport.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {Logger} from '@openstapps/logger'; -import {SMTP} from '@openstapps/logger/lib/smtp'; -import {Transport, VerifiableTransport} from '@openstapps/logger/lib/transport'; +import {SMTP} from '@openstapps/logger/lib/smtp.js'; +import {Transport, VerifiableTransport} from '@openstapps/logger/lib/transport.js'; /** * Provides information if a transport is a verifiable transport diff --git a/backend/backend/src/notification/mail-queue.ts b/backend/backend/src/notification/mail-queue.ts index 6ef23862..5c2f0580 100644 --- a/backend/backend/src/notification/mail-queue.ts +++ b/backend/backend/src/notification/mail-queue.ts @@ -15,7 +15,7 @@ * this program. If not, see . */ import {Logger} from '@openstapps/logger'; -import {SMTP} from '@openstapps/logger/lib/smtp'; +import {SMTP} from '@openstapps/logger/lib/smtp.js'; import {MailOptions} from 'nodemailer/lib/sendmail-transport'; import Queue from 'promise-queue'; /** diff --git a/backend/backend/src/routes/bulk-add-route.ts b/backend/backend/src/routes/bulk-add-route.ts index f74c8dca..147b3f8e 100644 --- a/backend/backend/src/routes/bulk-add-route.ts +++ b/backend/backend/src/routes/bulk-add-route.ts @@ -15,9 +15,9 @@ */ import {SCBulkAddRequest, SCBulkAddResponse, SCBulkAddRoute, SCNotFoundErrorResponse} from '@openstapps/core'; import {Logger} from '@openstapps/logger'; -import {isTestEnvironment} from '../common'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {isTestEnvironment} from '../common.js'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the route for adding bulks diff --git a/backend/backend/src/routes/bulk-done-route.ts b/backend/backend/src/routes/bulk-done-route.ts index 944fa4fb..e8bd8adb 100644 --- a/backend/backend/src/routes/bulk-done-route.ts +++ b/backend/backend/src/routes/bulk-done-route.ts @@ -20,9 +20,9 @@ import { SCNotFoundErrorResponse, } from '@openstapps/core'; import {Logger} from '@openstapps/logger'; -import {isTestEnvironment} from '../common'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {isTestEnvironment} from '../common.js'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the route for closing bulks diff --git a/backend/backend/src/routes/bulk-route.ts b/backend/backend/src/routes/bulk-route.ts index 931f4744..a3e070a8 100644 --- a/backend/backend/src/routes/bulk-route.ts +++ b/backend/backend/src/routes/bulk-route.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {SCBulkRequest, SCBulkResponse, SCBulkRoute} from '@openstapps/core'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the route for creating bulks diff --git a/backend/backend/src/routes/index-route.ts b/backend/backend/src/routes/index-route.ts index dc1f4f47..24b537a4 100644 --- a/backend/backend/src/routes/index-route.ts +++ b/backend/backend/src/routes/index-route.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {SCIndexResponse, SCIndexRoute} from '@openstapps/core'; -import {configFile} from '../common'; -import {createRoute} from './route'; +import {configFile} from '../common.js'; +import {createRoute} from './route.js'; /** * Contains information for using the index route diff --git a/backend/backend/src/routes/multi-search-route.ts b/backend/backend/src/routes/multi-search-route.ts index 7deba6c4..8838d8e9 100644 --- a/backend/backend/src/routes/multi-search-route.ts +++ b/backend/backend/src/routes/multi-search-route.ts @@ -20,9 +20,9 @@ import { SCSearchResponse, SCTooManyRequestsErrorResponse, } from '@openstapps/core'; -import {configFile, isTestEnvironment} from '../common'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {configFile, isTestEnvironment} from '../common.js'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the multi search route */ diff --git a/backend/backend/src/routes/plugin-register-route.ts b/backend/backend/src/routes/plugin-register-route.ts index 450390d0..17eda612 100644 --- a/backend/backend/src/routes/plugin-register-route.ts +++ b/backend/backend/src/routes/plugin-register-route.ts @@ -23,8 +23,8 @@ import { } from '@openstapps/core'; import {Logger} from '@openstapps/logger'; import {deepStrictEqual} from 'assert'; -import {configFile, isTestEnvironment, plugins} from '../common'; -import {createRoute} from './route'; +import {configFile, isTestEnvironment, plugins} from '../common.js'; +import {createRoute} from './route.js'; /** * Contains information for using the route for registering routes diff --git a/backend/backend/src/routes/route.ts b/backend/backend/src/routes/route.ts index dcee9fa9..57c8170b 100644 --- a/backend/backend/src/routes/route.ts +++ b/backend/backend/src/routes/route.ts @@ -19,12 +19,12 @@ import { SCRoute, SCValidationErrorResponse, } from '@openstapps/core'; -import {ValidationError} from '@openstapps/core-tools/src/types/validator'; +import {ValidationError} from '@openstapps/core-tools/src/types/validator.js'; import {Logger} from '@openstapps/logger'; import {Application, Router} from 'express'; import PromiseRouter from 'express-promise-router'; -import {isTestEnvironment, validator} from '../common'; -import {isHttpMethod} from './http-types'; +import {isTestEnvironment, validator} from '../common.js'; +import {isHttpMethod} from './http-types.js'; /** * Creates a router from a route class and a handler function which implements the logic diff --git a/backend/backend/src/routes/search-route.ts b/backend/backend/src/routes/search-route.ts index 3ea44606..82f98d4e 100644 --- a/backend/backend/src/routes/search-route.ts +++ b/backend/backend/src/routes/search-route.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {SCSearchRequest, SCSearchResponse, SCSearchRoute} from '@openstapps/core'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the search route diff --git a/backend/backend/src/routes/thing-update-route.ts b/backend/backend/src/routes/thing-update-route.ts index 4d41dd25..8b3a11df 100644 --- a/backend/backend/src/routes/thing-update-route.ts +++ b/backend/backend/src/routes/thing-update-route.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {SCThingUpdateRequest, SCThingUpdateResponse, SCThingUpdateRoute} from '@openstapps/core'; -import {BulkStorage} from '../storage/bulk-storage'; -import {createRoute} from './route'; +import {BulkStorage} from '../storage/bulk-storage.js'; +import {createRoute} from './route.js'; /** * Contains information for using the route for updating single things diff --git a/backend/backend/src/routes/virtual-plugin-route.ts b/backend/backend/src/routes/virtual-plugin-route.ts index dc56c07f..4802ba41 100644 --- a/backend/backend/src/routes/virtual-plugin-route.ts +++ b/backend/backend/src/routes/virtual-plugin-route.ts @@ -17,7 +17,7 @@ import {SCInternalServerErrorResponse, SCPluginMetaData, SCValidationErrorResponse} from '@openstapps/core'; import {Request} from 'express'; import got from 'got'; -import {configFile, isTestEnvironment, validator} from '../common'; +import {configFile, isTestEnvironment, validator} from '../common.js'; /** * Generic route function used to proxy actual requests to plugins @@ -27,7 +27,6 @@ import {configFile, isTestEnvironment, validator} from '../common'; * @throws {SCInternalServerErrorResponse} On request/response validation or response from the plugin errors */ export async function virtualPluginRoute(request: Request, plugin: SCPluginMetaData): Promise { - let responseBody: object; try { const requestValidation = validator.validate(request.body, plugin.requestSchema); if (requestValidation.errors.length > 0) { @@ -35,22 +34,23 @@ export async function virtualPluginRoute(request: Request, plugin: SCPluginMetaD throw new SCValidationErrorResponse(requestValidation.errors, isTestEnvironment); } // send the request to the plugin (forward the body) and save the response - const pluginResponse = await got.post(plugin.route.replace(/^\//gi, ''), { + const response = await got.post(plugin.route.replace(/^\//gi, ''), { prefixUrl: plugin.address, json: request.body, - timeout: configFile.backend.externalRequestTimeout, + timeout: { + response: configFile.backend.externalRequestTimeout + }, responseType: 'json', }); - responseBody = pluginResponse.body as object; + const responseBody = response.body const responseValidation = validator.validate(responseBody, plugin.responseSchema); if (responseValidation.errors.length > 0) { // noinspection ExceptionCaughtLocallyJS throw new SCValidationErrorResponse(responseValidation.errors, isTestEnvironment); } + return response } catch (error) { // wrap exact error inside of the internal server error response throw new SCInternalServerErrorResponse(error, isTestEnvironment); } - - return responseBody; } diff --git a/backend/backend/src/storage/bulk-storage.ts b/backend/backend/src/storage/bulk-storage.ts index 454e84c3..d1acb8b0 100644 --- a/backend/backend/src/storage/bulk-storage.ts +++ b/backend/backend/src/storage/bulk-storage.ts @@ -18,7 +18,7 @@ import {Logger} from '@openstapps/logger'; import moment from 'moment'; import NodeCache from 'node-cache'; import {v4} from 'uuid'; -import {Database} from './database'; +import {Database} from './database.js'; /** * Possible operations with a bulk diff --git a/backend/backend/src/storage/database.ts b/backend/backend/src/storage/database.ts index 8b144267..643bf9da 100644 --- a/backend/backend/src/storage/database.ts +++ b/backend/backend/src/storage/database.ts @@ -14,8 +14,8 @@ * along with this program. If not, see . */ import {SCConfigFile, SCSearchQuery, SCSearchResponse, SCThings, SCUuid} from '@openstapps/core'; -import {MailQueue} from '../notification/mail-queue'; -import {Bulk} from './bulk-storage'; +import {MailQueue} from '../notification/mail-queue.js'; +import {Bulk} from './bulk-storage.js'; /** * Creates an instance of a database diff --git a/backend/backend/src/storage/elasticsearch/elasticsearch.ts b/backend/backend/src/storage/elasticsearch/elasticsearch.ts index f3c52d41..2d35af68 100644 --- a/backend/backend/src/storage/elasticsearch/elasticsearch.ts +++ b/backend/backend/src/storage/elasticsearch/elasticsearch.ts @@ -36,7 +36,7 @@ import { ElasticsearchConfig, ElasticsearchQueryDisMaxConfig, ElasticsearchQueryQueryStringConfig, -} from './types/elasticsearch-config'; +} from './types/elasticsearch-config.js'; import { ACTIVE_INDICES_ALIAS, getThingIndexName, @@ -44,8 +44,8 @@ import { matchIndexByType, VALID_INDEX_REGEX, } from './util'; -import {noUndefined} from './util/no-undefined'; -import {retryCatch, RetryOptions} from './util/retry'; +import {noUndefined} from './util/no-undefined.js'; +import {retryCatch, RetryOptions} from './util/retry.js'; /** * A database interface for elasticsearch diff --git a/backend/backend/src/storage/elasticsearch/monitoring.ts b/backend/backend/src/storage/elasticsearch/monitoring.ts index c1bebe58..214e63da 100644 --- a/backend/backend/src/storage/elasticsearch/monitoring.ts +++ b/backend/backend/src/storage/elasticsearch/monitoring.ts @@ -25,7 +25,7 @@ import { } from '@openstapps/core'; import {Logger} from '@openstapps/logger'; import cron from 'node-cron'; -import {MailQueue} from '../../notification/mail-queue'; +import {MailQueue} from '../../notification/mail-queue.js'; /** * Check if the given condition fails on the given number of results and the condition diff --git a/backend/backend/src/storage/elasticsearch/templating.ts b/backend/backend/src/storage/elasticsearch/templating.ts index afb5ad9b..79ec021f 100644 --- a/backend/backend/src/storage/elasticsearch/templating.ts +++ b/backend/backend/src/storage/elasticsearch/templating.ts @@ -15,8 +15,8 @@ */ import {Client} from '@elastic/elasticsearch'; import {SCThingType} from '@openstapps/core'; -import {AggregationSchema} from '@openstapps/es-mapping-generator/src/types/aggregation'; -import {ElasticsearchTemplateCollection} from '@openstapps/es-mapping-generator/src/types/mapping'; +import {AggregationSchema} from '@openstapps/es-mapping-generator/src/types/aggregation.js'; +import {ElasticsearchTemplateCollection} from '@openstapps/es-mapping-generator/src/types/mapping.js'; import {readFileSync} from 'fs'; import path from 'path'; diff --git a/backend/backend/src/storage/elasticsearch/types/guards.ts b/backend/backend/src/storage/elasticsearch/types/guards.ts new file mode 100644 index 00000000..e69de29b diff --git a/backend/backend/test/app.spec.ts b/backend/backend/test/app.spec.ts index 5ad2ae0a..827aa831 100644 --- a/backend/backend/test/app.spec.ts +++ b/backend/backend/test/app.spec.ts @@ -20,9 +20,9 @@ import { SCUnsupportedMediaTypeErrorResponse, } from '@openstapps/core'; import {expect} from 'chai'; -import {configFile, DEFAULT_TIMEOUT} from '../src/common'; -import {DEFAULT_TEST_TIMEOUT} from './common'; -import {testApp} from './tests-setup'; +import {configFile, DEFAULT_TIMEOUT} from '../src/common.js'; +import {DEFAULT_TEST_TIMEOUT} from './common.js'; +import {testApp} from './tests-setup.js'; import sinon from 'sinon'; import mockedEnv from 'mocked-env'; diff --git a/backend/backend/test/common.spec.ts b/backend/backend/test/common.spec.ts index 2ec57754..c0038f0d 100644 --- a/backend/backend/test/common.spec.ts +++ b/backend/backend/test/common.spec.ts @@ -13,7 +13,7 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ -import {yearSlice} from '../config/default'; +import {yearSlice} from '../config/default.js'; import {expect} from 'chai'; describe('Common', function () { diff --git a/backend/backend/test/common.ts b/backend/backend/test/common.ts index 98fc11c8..0bd169d4 100644 --- a/backend/backend/test/common.ts +++ b/backend/backend/test/common.ts @@ -16,15 +16,15 @@ import {SCConfigFile, SCSearchQuery, SCSearchResponse, SCThings, SCThingType, SCUuid} from '@openstapps/core'; import {Express} from 'express'; import moment from 'moment'; -import {getIndexUID} from '../src/storage/elasticsearch/util'; -import {configureApp} from '../src/app'; +import {getIndexUID} from '../src/storage/elasticsearch/util.js'; +import {configureApp} from '../src/app.js'; import express from 'express'; import http from 'http'; -import {configFile} from '../src/common'; -import {MailQueue} from '../src/notification/mail-queue'; -import {Bulk, BulkStorage} from '../src/storage/bulk-storage'; +import {configFile} from '../src/common.js'; +import {MailQueue} from '../src/notification/mail-queue.js'; +import {Bulk, BulkStorage} from '../src/storage/bulk-storage.js'; import getPort from 'get-port'; -import {Database} from '../src/storage/database'; +import {Database} from '../src/storage/database.js'; import {v4} from 'uuid'; /** diff --git a/backend/backend/test/notification/backend-transport.spec.ts b/backend/backend/test/notification/backend-transport.spec.ts index b7b2d77d..22419913 100644 --- a/backend/backend/test/notification/backend-transport.spec.ts +++ b/backend/backend/test/notification/backend-transport.spec.ts @@ -17,7 +17,7 @@ import {SMTP} from '@openstapps/logger/lib/smtp'; import {Transport} from '@openstapps/logger/lib/transport'; import {expect} from 'chai'; import mockedEnv from 'mocked-env'; -import {BackendTransport, isTransportWithVerification} from '../../src/notification/backend-transport'; +import {BackendTransport, isTransportWithVerification} from '../../src/notification/backend-transport.js'; import sinon from 'sinon'; describe('Backend transport', function () { diff --git a/backend/backend/test/notification/mail-queue.spec.ts b/backend/backend/test/notification/mail-queue.spec.ts index 922a8374..f0bdc361 100644 --- a/backend/backend/test/notification/mail-queue.spec.ts +++ b/backend/backend/test/notification/mail-queue.spec.ts @@ -16,11 +16,11 @@ */ import {Logger} from '@openstapps/logger'; import sinon from 'sinon'; -import {MailQueue} from '../../src/notification/mail-queue'; +import {MailQueue} from '../../src/notification/mail-queue.js'; import {expect} from 'chai'; import Queue from 'promise-queue'; import {MailOptions} from 'nodemailer/lib/sendmail-transport'; -import {getTransport, TRANSPORT_SEND_RESPONSE} from '../common'; +import {getTransport, TRANSPORT_SEND_RESPONSE} from '../common.js'; describe('MailQueue', async function () { const sandbox = sinon.createSandbox(); diff --git a/backend/backend/test/routes/bulk-route.spec.ts b/backend/backend/test/routes/bulk-route.spec.ts index 62f73b91..37a231ac 100644 --- a/backend/backend/test/routes/bulk-route.spec.ts +++ b/backend/backend/test/routes/bulk-route.spec.ts @@ -22,8 +22,8 @@ import { } from '@openstapps/core'; import {expect} from 'chai'; import {instance as book} from '@openstapps/core/test/resources/indexable/Book.1.json'; -import {bulk, DEFAULT_TEST_TIMEOUT} from '../common'; -import {testApp} from '../tests-setup'; +import {bulk, DEFAULT_TEST_TIMEOUT} from '../common.js'; +import {testApp} from '../tests-setup.js'; describe('Bulk routes', async function () { // increase timeout for the suite diff --git a/backend/backend/test/routes/http-types.spec.ts b/backend/backend/test/routes/http-types.spec.ts index f63ecc1c..3be5193a 100644 --- a/backend/backend/test/routes/http-types.spec.ts +++ b/backend/backend/test/routes/http-types.spec.ts @@ -15,7 +15,7 @@ */ import {SCRouteHttpVerbs} from '@openstapps/core'; import {expect} from 'chai'; -import {isHttpMethod} from '../../src/routes/http-types'; +import {isHttpMethod} from '../../src/routes/http-types.js'; describe('Is HTTP method', async function () { it('should allow valid (predefined) http methods', async function () { diff --git a/backend/backend/test/routes/index-route.spec.ts b/backend/backend/test/routes/index-route.spec.ts index 2b00b51a..5f70603e 100644 --- a/backend/backend/test/routes/index-route.spec.ts +++ b/backend/backend/test/routes/index-route.spec.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ -import {DEFAULT_TEST_TIMEOUT} from '../common'; -import {testApp} from '../tests-setup'; +import {DEFAULT_TEST_TIMEOUT} from '../common.js'; +import {testApp} from '../tests-setup.js'; import {SCIndexRequest, SCIndexRoute} from '@openstapps/core'; import {expect} from 'chai'; diff --git a/backend/backend/test/routes/plugin-register-route.spec.ts b/backend/backend/test/routes/plugin-register-route.spec.ts index 1f561cfe..b6097c1c 100644 --- a/backend/backend/test/routes/plugin-register-route.spec.ts +++ b/backend/backend/test/routes/plugin-register-route.spec.ts @@ -23,13 +23,13 @@ import { SCValidationErrorResponse, } from '@openstapps/core'; import nock from 'nock'; -import {configFile, plugins} from '../../src/common'; -import {pluginRegisterHandler} from '../../src/routes/plugin-register-route'; +import {configFile, plugins} from '../../src/common.js'; +import {pluginRegisterHandler} from '../../src/routes/plugin-register-route.js'; import {expect, use} from 'chai'; import chaiAsPromised from 'chai-as-promised'; import {instance as registerRequest} from '@openstapps/core/test/resources/PluginRegisterRequest.1.json'; -import {DEFAULT_TEST_TIMEOUT} from '../common'; -import {testApp} from '../tests-setup'; +import {DEFAULT_TEST_TIMEOUT} from '../common.js'; +import {testApp} from '../tests-setup.js'; // for using promises in expectations (to.eventually.be...) use(chaiAsPromised); diff --git a/backend/backend/test/routes/route.spec.ts b/backend/backend/test/routes/route.spec.ts index c104e25a..10c57b8e 100644 --- a/backend/backend/test/routes/route.spec.ts +++ b/backend/backend/test/routes/route.spec.ts @@ -25,12 +25,12 @@ import * as bodyParser from 'body-parser'; import sinon from 'sinon'; import {expect} from 'chai'; import {Application} from 'express'; -import {validator} from '../../src/common'; -import {createRoute} from '../../src/routes/route'; +import {validator} from '../../src/common.js'; +import {createRoute} from '../../src/routes/route.js'; import express, {Express} from 'express'; import supertest from 'supertest'; import {Logger} from '@openstapps/logger'; -import {DEFAULT_TEST_TIMEOUT} from '../common'; +import {DEFAULT_TEST_TIMEOUT} from '../common.js'; interface ReturnType { foo: boolean; diff --git a/backend/backend/test/routes/search-route.spec.ts b/backend/backend/test/routes/search-route.spec.ts index f5e7d398..91f91349 100644 --- a/backend/backend/test/routes/search-route.spec.ts +++ b/backend/backend/test/routes/search-route.spec.ts @@ -21,9 +21,9 @@ import { SCTooManyRequestsErrorResponse, } from '@openstapps/core'; import {expect} from 'chai'; -import {configFile} from '../../src/common'; -import {DEFAULT_TEST_TIMEOUT} from '../common'; -import {testApp} from '../tests-setup'; +import {configFile} from '../../src/common.js'; +import {DEFAULT_TEST_TIMEOUT} from '../common.js'; +import {testApp} from '../tests-setup.js'; import sinon from 'sinon'; describe('Search route', async function () { diff --git a/backend/backend/test/routes/thing-update-route.spec.ts b/backend/backend/test/routes/thing-update-route.spec.ts index 58985d4a..319983a5 100644 --- a/backend/backend/test/routes/thing-update-route.spec.ts +++ b/backend/backend/test/routes/thing-update-route.spec.ts @@ -15,10 +15,10 @@ */ import {SCThingUpdateRoute} from '@openstapps/core'; import chaiAsPromised from 'chai-as-promised'; -import {bulkStorageMock, DEFAULT_TEST_TIMEOUT} from '../common'; +import {bulkStorageMock, DEFAULT_TEST_TIMEOUT} from '../common.js'; import {expect, use} from 'chai'; import {instance as book} from '@openstapps/core/test/resources/indexable/Book.1.json'; -import {testApp} from '../tests-setup'; +import {testApp} from '../tests-setup.js'; use(chaiAsPromised); diff --git a/backend/backend/test/routes/virtual-plugin-route.spec.ts b/backend/backend/test/routes/virtual-plugin-route.spec.ts index abebd343..31fd6de4 100644 --- a/backend/backend/test/routes/virtual-plugin-route.spec.ts +++ b/backend/backend/test/routes/virtual-plugin-route.spec.ts @@ -22,11 +22,11 @@ import got, {Options} from 'got'; import nock from 'nock'; import sinon from 'sinon'; import {mockReq} from 'sinon-express-mock'; -import {plugins, validator} from '../../src/common'; -import {virtualPluginRoute} from '../../src/routes/virtual-plugin-route'; -import {DEFAULT_TEST_TIMEOUT, FooError} from '../common'; +import {plugins, validator} from '../../src/common.js'; +import {virtualPluginRoute} from '../../src/routes/virtual-plugin-route.js'; +import {DEFAULT_TEST_TIMEOUT, FooError} from '../common.js'; import {registerAddRequest} from './plugin-register-route.spec'; -import {testApp} from '../tests-setup'; +import {testApp} from '../tests-setup.js'; use(chaiAsPromised); diff --git a/backend/backend/test/storage/bulk-storage.spec.ts b/backend/backend/test/storage/bulk-storage.spec.ts index 0ad729cf..050d9e71 100644 --- a/backend/backend/test/storage/bulk-storage.spec.ts +++ b/backend/backend/test/storage/bulk-storage.spec.ts @@ -17,10 +17,10 @@ import {SCBulkRequest, SCThingType} from '@openstapps/core'; import moment from 'moment'; // eslint-disable-next-line unicorn/import-style import util from 'util'; -import {configFile} from '../../src/common'; -import {Bulk, BulkStorage} from '../../src/storage/bulk-storage'; +import {configFile} from '../../src/common.js'; +import {Bulk, BulkStorage} from '../../src/storage/bulk-storage.js'; import {expect} from 'chai'; -import {ElasticsearchMock} from '../common'; +import {ElasticsearchMock} from '../common.js'; import sinon from 'sinon'; import NodeCache from 'node-cache'; diff --git a/backend/backend/test/storage/elasticsearch/aggregations.spec.ts b/backend/backend/test/storage/elasticsearch/aggregations.spec.ts index ed727dca..70547ef2 100644 --- a/backend/backend/test/storage/elasticsearch/aggregations.spec.ts +++ b/backend/backend/test/storage/elasticsearch/aggregations.spec.ts @@ -16,7 +16,7 @@ import {AggregateName, AggregationsMultiTermsBucket} from '@elastic/elasticsearch/lib/api/types'; import {SCFacet, SCThingType} from '@openstapps/core'; import {expect} from 'chai'; -import {parseAggregations} from '../../../src/storage/elasticsearch/aggregations'; +import {parseAggregations} from '../../../src/storage/elasticsearch/aggregations.js'; describe('Aggregations', function () { const aggregations: Record> = { diff --git a/backend/backend/test/storage/elasticsearch/common.spec.ts b/backend/backend/test/storage/elasticsearch/common.spec.ts new file mode 100644 index 00000000..e69de29b diff --git a/backend/backend/test/storage/elasticsearch/elasticsearch.spec.ts b/backend/backend/test/storage/elasticsearch/elasticsearch.spec.ts index ab981df7..44d3234a 100644 --- a/backend/backend/test/storage/elasticsearch/elasticsearch.spec.ts +++ b/backend/backend/test/storage/elasticsearch/elasticsearch.spec.ts @@ -43,20 +43,20 @@ import { ACTIVE_INDICES_ALIAS, INACTIVE_INDICES_ALIAS, parseIndexName, -} from '../../../src/storage/elasticsearch/util'; -import * as queryModule from '../../../src/storage/elasticsearch/query/query'; -import * as sortModule from '../../../src/storage/elasticsearch/query/sort'; +} from '../../../src/storage/elasticsearch/util.js'; +import * as queryModule from '../../../src/storage/elasticsearch/query/query.js'; +import * as sortModule from '../../../src/storage/elasticsearch/query/sort.js'; import sinon, {SinonStub} from 'sinon'; -import {getIndexUID, getThingIndexName, INDEX_UID_LENGTH} from '../../../src/storage/elasticsearch/util'; -import * as utilModule from '../../../src/storage/elasticsearch/util'; -import {removeInvalidAliasChars} from '../../../src/storage/elasticsearch/util/alias'; -import {configFile} from '../../../src/common'; -import {MailQueue} from '../../../src/notification/mail-queue'; -import {aggregations} from '../../../src/storage/elasticsearch/templating'; -import {Elasticsearch} from '../../../src/storage/elasticsearch/elasticsearch'; -import * as Monitoring from '../../../src/storage/elasticsearch/monitoring'; -import * as templating from '../../../src/storage/elasticsearch/templating'; -import {bulk, DEFAULT_TEST_TIMEOUT, getTransport, getIndex} from '../../common'; +import {getIndexUID, getThingIndexName, INDEX_UID_LENGTH} from '../../../src/storage/elasticsearch/util.js'; +import * as utilModule from '../../../src/storage/elasticsearch/util.js'; +import {removeInvalidAliasChars} from '../../../src/storage/elasticsearch/util/alias.js'; +import {configFile} from '../../../src/common.js'; +import {MailQueue} from '../../../src/notification/mail-queue.js'; +import {aggregations} from '../../../src/storage/elasticsearch/templating.js'; +import {Elasticsearch} from '../../../src/storage/elasticsearch/elasticsearch.js'; +import * as Monitoring from '../../../src/storage/elasticsearch/monitoring.js'; +import * as templating from '../../../src/storage/elasticsearch/templating.js'; +import {bulk, DEFAULT_TEST_TIMEOUT, getTransport, getIndex} from '../../common.js'; import fs from 'fs'; use(chaiAsPromised); diff --git a/backend/backend/test/storage/elasticsearch/monitoring.spec.ts b/backend/backend/test/storage/elasticsearch/monitoring.spec.ts index 135f03e9..ffc46042 100644 --- a/backend/backend/test/storage/elasticsearch/monitoring.spec.ts +++ b/backend/backend/test/storage/elasticsearch/monitoring.spec.ts @@ -24,10 +24,10 @@ import { SCThings, } from '@openstapps/core'; import {Logger} from '@openstapps/logger'; -import {MailQueue} from '../../../src/notification/mail-queue'; -import {setUp} from '../../../src/storage/elasticsearch/monitoring'; +import {MailQueue} from '../../../src/notification/mail-queue.js'; +import {setUp} from '../../../src/storage/elasticsearch/monitoring.js'; -import {getTransport} from '../../common'; +import {getTransport} from '../../common.js'; import {expect} from 'chai'; import sinon from 'sinon'; import cron from 'node-cron'; diff --git a/backend/backend/test/storage/elasticsearch/query.spec.ts b/backend/backend/test/storage/elasticsearch/query.spec.ts index 13fc8cd5..d3019fdc 100644 --- a/backend/backend/test/storage/elasticsearch/query.spec.ts +++ b/backend/backend/test/storage/elasticsearch/query.spec.ts @@ -25,13 +25,13 @@ import { SCThingType, } from '@openstapps/core'; import {expect} from 'chai'; -import {buildFilter} from '../../../src/storage/elasticsearch/query/filter'; -import {buildBooleanFilter} from '../../../src/storage/elasticsearch/query/filters/boolean'; -import {buildQuery} from '../../../src/storage/elasticsearch/query/query'; -import {buildSort} from '../../../src/storage/elasticsearch/query/sort'; -import {ElasticsearchConfig} from '../../../src/storage/elasticsearch/types/elasticsearch-config'; -import {QueryDslSpecificQueryContainer} from '../../../src/storage/elasticsearch/types/util'; -import {configFile} from '../../../src/common'; +import {buildFilter} from '../../../src/storage/elasticsearch/query/filter.js'; +import {buildBooleanFilter} from '../../../src/storage/elasticsearch/query/filters/boolean.js'; +import {buildQuery} from '../../../src/storage/elasticsearch/query/query.js'; +import {buildSort} from '../../../src/storage/elasticsearch/query/sort.js'; +import {ElasticsearchConfig} from '../../../src/storage/elasticsearch/types/elasticsearch-config.js'; +import {QueryDslSpecificQueryContainer} from '../../../src/storage/elasticsearch/types/util.js'; +import {configFile} from '../../../src/common.js'; import {SortCombinations} from '@elastic/elasticsearch/lib/api/types'; describe('Query', function () { diff --git a/backend/backend/test/tests-setup.ts b/backend/backend/test/tests-setup.ts index 21ebb3f7..327da340 100644 --- a/backend/backend/test/tests-setup.ts +++ b/backend/backend/test/tests-setup.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ -import {DEFAULT_TIMEOUT} from '../src/common'; -import {startApp} from './common'; +import {DEFAULT_TIMEOUT} from '../src/common.js'; +import {startApp} from './common.js'; import supertest from 'supertest'; before(async function () { diff --git a/backend/proxy/app.js b/backend/proxy/app.js new file mode 100644 index 00000000..d233e644 --- /dev/null +++ b/backend/proxy/app.js @@ -0,0 +1,2 @@ +#!/usr/bin/env node +import './lib/cli.js' diff --git a/backend/proxy/config/default.ts b/backend/proxy/config/default.ts index 98b5b2a4..4502f0d1 100644 --- a/backend/proxy/config/default.ts +++ b/backend/proxy/config/default.ts @@ -13,7 +13,7 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ -import {ConfigFile} from '../src/common'; +import {ConfigFile} from '../src/common.js'; const config: ConfigFile = { activeVersions: ['1\\.0\\.\\d+', '2\\.0\\.\\d+'], diff --git a/backend/proxy/package.json b/backend/proxy/package.json index 38e216e3..d1bb9441 100644 --- a/backend/proxy/package.json +++ b/backend/proxy/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/proxy", "description": "NGINX proxy that is dynamically configured by a Node.js script", "version": "2.1.0", + "type": "module", "license": "AGPL-3.0-only", "repository": "git@gitlab.com:openstapps/proxy.git", "author": "Anselm Rochus Stordeur ", @@ -13,12 +14,11 @@ "Michel Jonathan Schmitz ", "Rainer Killinger " ], - "main": "./lib/cli.js", + "main": "app.js", "scripts": { - "build": "npm run lint && npm run compile", + "build": "rimraf lib && tsc", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md && git commit -m 'docs: update changelog'", "check-configuration": "openstapps-configuration", - "compile": "rimraf lib && tsc", "documentation": "typedoc --includeVersion --out docs --readme README.md --entryPointStrategy expand src", "lint": "eslint --ext .ts src/", "postversion": "npm run changelog", @@ -69,8 +69,8 @@ "proxyquire": "2.1.3", "rimraf": "3.0.2", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "nyc": { "all": true, diff --git a/backend/proxy/src/cli.ts b/backend/proxy/src/cli.ts index 0f0dcfbd..e627593d 100644 --- a/backend/proxy/src/cli.ts +++ b/backend/proxy/src/cli.ts @@ -1,5 +1,3 @@ -#!/usr/bin/env node - /* * Copyright (C) 2022 StApps * This program is free software: you can redistribute it and/or modify @@ -18,9 +16,9 @@ import {Logger} from '@openstapps/logger'; import {execSync} from 'child_process'; import * as Dockerode from 'dockerode'; -import {render} from 'mustache'; -import {asyncReadFile, asyncWriteFile} from './common'; -import {getContainers, getTemplateView} from './main'; +import mustache from 'mustache'; +import {asyncReadFile, asyncWriteFile} from './common.js'; +import {getContainers, getTemplateView} from './main.js'; /* eslint-disable unicorn/prefer-module */ @@ -58,7 +56,7 @@ async function updateNginxConfig() { await delay(10_000); // render nginx config file - const nginxConfig = render( + const nginxConfig = mustache.render( await asyncReadFile('nginx.conf.template', 'utf8'), await getTemplateView(containers), ); diff --git a/backend/proxy/src/common.ts b/backend/proxy/src/common.ts index e5b7f3c7..f1507dfe 100644 --- a/backend/proxy/src/common.ts +++ b/backend/proxy/src/common.ts @@ -14,7 +14,7 @@ * along with this program. If not, see . */ import {Logger} from '@openstapps/logger'; -import {SMTP} from '@openstapps/logger/lib/smtp'; +import {SMTP} from '@openstapps/logger/lib/smtp.js'; import config from 'config'; import {existsSync, readFile, writeFile} from 'fs'; import {promisify} from 'util'; diff --git a/backend/proxy/src/main.ts b/backend/proxy/src/main.ts index 67025365..6168923b 100644 --- a/backend/proxy/src/main.ts +++ b/backend/proxy/src/main.ts @@ -16,7 +16,7 @@ import {Logger} from '@openstapps/logger'; import Dockerode from 'dockerode'; import isCidr from 'is-cidr'; -import {render} from 'mustache'; +import mustache from 'mustache'; import path from 'path'; import * as semver from 'semver'; import { @@ -28,14 +28,13 @@ import { sslHardeningParameters, SupportedLogFormats, TemplateView, -} from './common'; +} from './common.js'; +// @ts-expect-error missing type defs +import nodePortScanner from 'node-port-scanner'; /* eslint-disable unicorn/prefer-module */ /* eslint-disable unicorn/no-await-expression-member */ -// eslint-disable-next-line @typescript-eslint/no-var-requires -const nodePortScanner = require('node-port-scanner'); - /** * Checks if a ContainerInfo matches a name and version regex * @@ -263,7 +262,7 @@ export async function generateMetricsServer(logFormat: string, enableMetrics?: b async function renderTemplate(path: string, view: unknown): Promise { const content = await asyncReadFile(path, 'utf8'); - return render(content, view); + return mustache.render(content, view); } /** diff --git a/backend/proxy/test/common.spec.ts b/backend/proxy/test/common.spec.ts index 4acaad16..b6ee8f19 100644 --- a/backend/proxy/test/common.spec.ts +++ b/backend/proxy/test/common.spec.ts @@ -23,7 +23,7 @@ import {Logger} from '@openstapps/logger'; import {expect} from 'chai'; import {mkdirSync, writeFileSync, unlinkSync, rmdirSync} from 'fs'; import { resolve } from 'path'; -import { isFileType } from '../src/common'; +import { isFileType } from '../src/common.js'; process.on('unhandledRejection', async (error) => { await Logger.error(error); diff --git a/backend/proxy/test/main.spec.ts b/backend/proxy/test/main.spec.ts index e0dc308b..a194f1e0 100644 --- a/backend/proxy/test/main.spec.ts +++ b/backend/proxy/test/main.spec.ts @@ -24,7 +24,7 @@ import {expect} from 'chai'; import chaiSpies from 'chai-spies'; import {ContainerInfo} from 'dockerode'; import {slow, suite, test, timeout} from '@testdeck/mocha'; -import {sslHardeningParameters, protocolHardeningParameters, SSLFilePaths} from './../src/common'; +import {sslHardeningParameters, protocolHardeningParameters, SSLFilePaths} from './../src/common.js'; import { containerMatchesRegex, generateUpstreamMap, @@ -33,7 +33,7 @@ import { generateListener, generateMetricsServer, getContainers, -} from '../src/main'; +} from '../src/main.js'; import {resolve} from 'path'; import {mkdirSync, writeFileSync, unlinkSync, rmdirSync} from 'fs'; import proxyquire from 'proxyquire'; diff --git a/configuration/configuration/.gitlab/issue_templates/bug.md b/configuration/configuration/.gitlab/issue_templates/bug.md index c3fb037c..fe866128 100644 --- a/configuration/configuration/.gitlab/issue_templates/bug.md +++ b/configuration/configuration/.gitlab/issue_templates/bug.md @@ -2,35 +2,29 @@ (Summarize the bug encountered concisely) - ## Steps to reproduce (How one can reproduce the issue - this is very important) - ## Example Project (If possible, please create an example project here on GitLab.com that exhibits the problematic behaviour, and link to it here in the bug report) (If you are using an older version of GitLab, this will also determine whether the bug has been fixed in a more recent version) - ## What is the current bug behavior? (What actually happens) - ## What is the expected correct behavior? (What you should see instead) - ## Relevant logs and/or screenshots (Paste any relevant logs - please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise.) - ## Possible fixes (If you can, link to the line of code that might be responsible for the problem) diff --git a/configuration/configuration/.gitlab/issue_templates/feature.md b/configuration/configuration/.gitlab/issue_templates/feature.md index 7b669ac7..6c2e94be 100644 --- a/configuration/configuration/.gitlab/issue_templates/feature.md +++ b/configuration/configuration/.gitlab/issue_templates/feature.md @@ -2,15 +2,12 @@ (Describe the feature that you're requesting concisely) - ## Explanation (Explain why the feature is necessary) - ## Dependencies, issues to be resolved beforehand (List issues or dependencies that need to be resolved before this feature can be implemented) - /label ~meeting ~feature diff --git a/configuration/configuration/CHANGELOG.md b/configuration/configuration/CHANGELOG.md index fda8f07e..8195242e 100644 --- a/configuration/configuration/CHANGELOG.md +++ b/configuration/configuration/CHANGELOG.md @@ -1,372 +1,243 @@ # [0.34.0](https://gitlab.com/openstapps/configuration/compare/v0.33.0...v0.34.0) (2023-01-17) - - # [0.33.0](https://gitlab.com/openstapps/configuration/compare/v0.32.2...v0.33.0) (2022-08-17) - ### Features -* add proper coverage to ci templates ([35b4b6c](https://gitlab.com/openstapps/configuration/commit/35b4b6c8237a167518f0edb7326578095c935764)) - - +- add proper coverage to ci templates ([35b4b6c](https://gitlab.com/openstapps/configuration/commit/35b4b6c8237a167518f0edb7326578095c935764)) ## [0.32.2](https://gitlab.com/openstapps/configuration/compare/v0.32.1...v0.32.2) (2022-07-05) - ### Bug Fixes -* recommended CI settings ([0753ab9](https://gitlab.com/openstapps/configuration/commit/0753ab9f33d13eb2cd7d6512934fd285906f2c47)) - - +- recommended CI settings ([0753ab9](https://gitlab.com/openstapps/configuration/commit/0753ab9f33d13eb2cd7d6512934fd285906f2c47)) ## [0.32.1](https://gitlab.com/openstapps/configuration/compare/v0.32.0...v0.32.1) (2022-07-05) - ### Bug Fixes -* simplify dependency version checking ([df92e97](https://gitlab.com/openstapps/configuration/commit/df92e97cb65df3088b090ba76320d05938948514)) - - +- simplify dependency version checking ([df92e97](https://gitlab.com/openstapps/configuration/commit/df92e97cb65df3088b090ba76320d05938948514)) # [0.32.0](https://gitlab.com/openstapps/configuration/compare/v0.31.0...v0.32.0) (2022-06-27) - ### Features -* copyright notice year replacement ([17a796e](https://gitlab.com/openstapps/configuration/commit/17a796e97b95694ee39dae0958c99279a1936d74)) - - +- copyright notice year replacement ([17a796e](https://gitlab.com/openstapps/configuration/commit/17a796e97b95694ee39dae0958c99279a1936d74)) # [0.31.0](https://gitlab.com/openstapps/configuration/compare/v0.30.0...v0.31.0) (2022-06-02) - ### Bug Fixes -* npmignore eslint exceptions ([405f8cf](https://gitlab.com/openstapps/configuration/commit/405f8cf496aee4f8f44ef61ee2b61c4a98343114)) - - +- npmignore eslint exceptions ([405f8cf](https://gitlab.com/openstapps/configuration/commit/405f8cf496aee4f8f44ef61ee2b61c4a98343114)) # [0.30.0](https://gitlab.com/openstapps/configuration/compare/v0.29.1...v0.30.0) (2022-06-01) - ### Features -* transition from TSLint to ESLint ([9430e10](https://gitlab.com/openstapps/configuration/commit/9430e103874e2c9c41a8c29b13e1ae56d2379af3)) - - +- transition from TSLint to ESLint ([9430e10](https://gitlab.com/openstapps/configuration/commit/9430e103874e2c9c41a8c29b13e1ae56d2379af3)) ## [0.29.1](https://gitlab.com/openstapps/configuration/compare/v0.29.0...v0.29.1) (2022-05-27) - - # [0.29.0](https://gitlab.com/openstapps/configuration/compare/v0.28.1...v0.29.0) (2021-12-14) - - ## [0.28.1](https://gitlab.com/openstapps/configuration/compare/v0.28.0...v0.28.1) (2021-09-13) - ### Bug Fixes -* adjust command of typedoc (upgrade typescript) ([7d396f9](https://gitlab.com/openstapps/configuration/commit/7d396f92026ae84888e1b2246f11d3995a4bf11f)) - - +- adjust command of typedoc (upgrade typescript) ([7d396f9](https://gitlab.com/openstapps/configuration/commit/7d396f92026ae84888e1b2246f11d3995a4bf11f)) # [0.28.0](https://gitlab.com/openstapps/configuration/compare/v0.27.0...v0.28.0) (2021-09-13) - - # [0.27.0](https://gitlab.com/openstapps/configuration/compare/v0.26.0...v0.27.0) (2021-04-06) - - # [0.26.0](https://gitlab.com/openstapps/configuration/compare/v0.25.0...v0.26.0) (2021-02-22) - - # [0.25.0](https://gitlab.com/openstapps/configuration/compare/v0.24.0...v0.25.0) (2020-09-17) - ### Bug Fixes -* exclude test dir and its subdirs for tslint ([ec15ebe](https://gitlab.com/openstapps/configuration/commit/ec15ebe5c5fb30e638cc721ca916c84186b1d1e0)), closes [#34](https://gitlab.com/openstapps/configuration/issues/34) - +- exclude test dir and its subdirs for tslint ([ec15ebe](https://gitlab.com/openstapps/configuration/commit/ec15ebe5c5fb30e638cc721ca916c84186b1d1e0)), closes [#34](https://gitlab.com/openstapps/configuration/issues/34) ### Features -* Change 'npm audit' failure behaviour ([c11b1da](https://gitlab.com/openstapps/configuration/commit/c11b1da9a6546e006bea29cc7f524b94736f7bfb)) - - +- Change 'npm audit' failure behaviour ([c11b1da](https://gitlab.com/openstapps/configuration/commit/c11b1da9a6546e006bea29cc7f524b94736f7bfb)) # [0.24.0](https://gitlab.com/openstapps/configuration/compare/v0.23.0...v0.24.0) (2020-03-03) - - # [0.23.0](https://gitlab.com/openstapps/configuration/compare/v0.22.0...v0.23.0) (2020-02-10) - - # [0.22.0](https://gitlab.com/openstapps/configuration/compare/v0.21.1...v0.22.0) (2019-11-25) - - ## [0.21.1](https://gitlab.com/openstapps/configuration/compare/v0.21.0...v0.21.1) (2019-07-15) - ### Bug Fixes -* remove package-job when forPackaging is false ([b8cefa4](https://gitlab.com/openstapps/configuration/commit/b8cefa42543b0c370b9b23ca7d1a60b45907771c)) - - +- remove package-job when forPackaging is false ([b8cefa4](https://gitlab.com/openstapps/configuration/commit/b8cefa42543b0c370b9b23ca7d1a60b45907771c)) # [0.21.0](https://gitlab.com/openstapps/configuration/compare/v0.20.0...v0.21.0) (2019-06-24) - ### Bug Fixes -* update the nyc configuration ([8ece33b](https://gitlab.com/openstapps/configuration/commit/8ece33b6e6902040d42e8eb0b18237065697673e)) - - +- update the nyc configuration ([8ece33b](https://gitlab.com/openstapps/configuration/commit/8ece33b6e6902040d42e8eb0b18237065697673e)) # [0.20.0](https://gitlab.com/openstapps/configuration/compare/v0.19.0...v0.20.0) (2019-06-06) - ### Bug Fixes -* only check copyright years for TypeScript files ([1a4ec52](https://gitlab.com/openstapps/configuration/commit/1a4ec52712a2bc6b58c766141816110292f433ef)), closes [#25](https://gitlab.com/openstapps/configuration/issues/25) -* skip template lines to avoid parser errors ([b995bb5](https://gitlab.com/openstapps/configuration/commit/b995bb5c1439bb2860c04d18cfc485eda7ad110f)), closes [#26](https://gitlab.com/openstapps/configuration/issues/26) - - +- only check copyright years for TypeScript files ([1a4ec52](https://gitlab.com/openstapps/configuration/commit/1a4ec52712a2bc6b58c766141816110292f433ef)), closes [#25](https://gitlab.com/openstapps/configuration/issues/25) +- skip template lines to avoid parser errors ([b995bb5](https://gitlab.com/openstapps/configuration/commit/b995bb5c1439bb2860c04d18cfc485eda7ad110f)), closes [#26](https://gitlab.com/openstapps/configuration/issues/26) # [0.19.0](https://gitlab.com/openstapps/configuration/compare/v0.18.0...v0.19.0) (2019-06-04) - - # [0.18.0](https://gitlab.com/openstapps/configuration/compare/v0.17.2...v0.18.0) (2019-05-29) - ### Features -* automatically generate changelog after version bump ([cbee9b8](https://gitlab.com/openstapps/configuration/commit/cbee9b888cccd2192e6725c7f36e3826becae95b)), closes [#23](https://gitlab.com/openstapps/configuration/issues/23) - - +- automatically generate changelog after version bump ([cbee9b8](https://gitlab.com/openstapps/configuration/commit/cbee9b888cccd2192e6725c7f36e3826becae95b)), closes [#23](https://gitlab.com/openstapps/configuration/issues/23) ## [0.17.2](https://gitlab.com/openstapps/configuration/compare/v0.17.1...v0.17.2) (2019-05-28) - ### Features -* exclude tests from linting ([9e7f467](https://gitlab.com/openstapps/configuration/commit/9e7f46707026239875848048ddffdad3cf4f8c0d)) - - +- exclude tests from linting ([9e7f467](https://gitlab.com/openstapps/configuration/commit/9e7f46707026239875848048ddffdad3cf4f8c0d)) ## [0.17.1](https://gitlab.com/openstapps/configuration/compare/v0.17.0...v0.17.1) (2019-05-28) - ### Bug Fixes -* fix regression with copyright years ([5659295](https://gitlab.com/openstapps/configuration/commit/5659295b883034296d84aaefc3b00072797a63f9)) - - +- fix regression with copyright years ([5659295](https://gitlab.com/openstapps/configuration/commit/5659295b883034296d84aaefc3b00072797a63f9)) # [0.17.0](https://gitlab.com/openstapps/configuration/compare/v0.16.1...v0.17.0) (2019-05-28) - ### Features -* add rule to enforce completed docs ([527a6f9](https://gitlab.com/openstapps/configuration/commit/527a6f9364113405786ffb7e6533842e4d8898ac)), closes [#20](https://gitlab.com/openstapps/configuration/issues/20) -* add sctricter TSLint rules ([76ebbfa](https://gitlab.com/openstapps/configuration/commit/76ebbfab5376c9954c7e9d4e0d9c715089ef1c8b)), closes [#21](https://gitlab.com/openstapps/configuration/issues/21) -* adjust TSLint command to enable advanced rules ([14b6420](https://gitlab.com/openstapps/configuration/commit/14b6420c33aec90d55023aa9b64fd0e69758fffa)), closes [#21](https://gitlab.com/openstapps/configuration/issues/21) - - +- add rule to enforce completed docs ([527a6f9](https://gitlab.com/openstapps/configuration/commit/527a6f9364113405786ffb7e6533842e4d8898ac)), closes [#20](https://gitlab.com/openstapps/configuration/issues/20) +- add sctricter TSLint rules ([76ebbfa](https://gitlab.com/openstapps/configuration/commit/76ebbfab5376c9954c7e9d4e0d9c715089ef1c8b)), closes [#21](https://gitlab.com/openstapps/configuration/issues/21) +- adjust TSLint command to enable advanced rules ([14b6420](https://gitlab.com/openstapps/configuration/commit/14b6420c33aec90d55023aa9b64fd0e69758fffa)), closes [#21](https://gitlab.com/openstapps/configuration/issues/21) ## [0.16.1](https://gitlab.com/openstapps/configuration/compare/v0.16.0...v0.16.1) (2019-05-24) - ### Bug Fixes -* make sure that npmrc is created in correct home directory ([60f7e4c](https://gitlab.com/openstapps/configuration/commit/60f7e4cae28775b67b48aae5624a8062951c5264)) - - +- make sure that npmrc is created in correct home directory ([60f7e4c](https://gitlab.com/openstapps/configuration/commit/60f7e4cae28775b67b48aae5624a8062951c5264)) # [0.16.0](https://gitlab.com/openstapps/configuration/compare/v0.15.0...v0.16.0) (2019-05-22) - ### Bug Fixes -* use lib as artifacts path ([ec8c891](https://gitlab.com/openstapps/configuration/commit/ec8c891a7a41c5308ad8a3d0acf8ff5c17754a93)), closes [#19](https://gitlab.com/openstapps/configuration/issues/19) - - +- use lib as artifacts path ([ec8c891](https://gitlab.com/openstapps/configuration/commit/ec8c891a7a41c5308ad8a3d0acf8ff5c17754a93)), closes [#19](https://gitlab.com/openstapps/configuration/issues/19) # [0.15.0](https://gitlab.com/openstapps/configuration/compare/v0.14.0...v0.15.0) (2019-05-20) - ### Bug Fixes -* remove incremental flag ([73e6f24](https://gitlab.com/openstapps/configuration/commit/73e6f2413b462ddcea6b30e432822a2431384647)), closes [#15](https://gitlab.com/openstapps/configuration/issues/15) -* remove wrong excluded path from nyc config ([cf81c1e](https://gitlab.com/openstapps/configuration/commit/cf81c1e5201213dd9302ecf302b372073f1c480e)), closes [#16](https://gitlab.com/openstapps/configuration/issues/16) - +- remove incremental flag ([73e6f24](https://gitlab.com/openstapps/configuration/commit/73e6f2413b462ddcea6b30e432822a2431384647)), closes [#15](https://gitlab.com/openstapps/configuration/issues/15) +- remove wrong excluded path from nyc config ([cf81c1e](https://gitlab.com/openstapps/configuration/commit/cf81c1e5201213dd9302ecf302b372073f1c480e)), closes [#16](https://gitlab.com/openstapps/configuration/issues/16) ### Features -* add check for copyright years ([44c82ad](https://gitlab.com/openstapps/configuration/commit/44c82ade69938157f6b8dfc9a709d33ac73c8da5)), closes [#17](https://gitlab.com/openstapps/configuration/issues/17) -* add rules to enforce automatic package publishing ([1e3e7df](https://gitlab.com/openstapps/configuration/commit/1e3e7dfac8c0887bc3c5758c35fce5ad9b4ebef3)), closes [#18](https://gitlab.com/openstapps/configuration/issues/18) -* warn about extraneous copyright years ([1c826a4](https://gitlab.com/openstapps/configuration/commit/1c826a41e0738f2863809f56edd8be53fdfd6e35)), closes [#17](https://gitlab.com/openstapps/configuration/issues/17) - - +- add check for copyright years ([44c82ad](https://gitlab.com/openstapps/configuration/commit/44c82ade69938157f6b8dfc9a709d33ac73c8da5)), closes [#17](https://gitlab.com/openstapps/configuration/issues/17) +- add rules to enforce automatic package publishing ([1e3e7df](https://gitlab.com/openstapps/configuration/commit/1e3e7dfac8c0887bc3c5758c35fce5ad9b4ebef3)), closes [#18](https://gitlab.com/openstapps/configuration/issues/18) +- warn about extraneous copyright years ([1c826a4](https://gitlab.com/openstapps/configuration/commit/1c826a41e0738f2863809f56edd8be53fdfd6e35)), closes [#17](https://gitlab.com/openstapps/configuration/issues/17) # [0.14.0](https://gitlab.com/openstapps/configuration/compare/v0.13.0...v0.14.0) (2019-04-30) - ### Features -* add possibility to ignore CI entries ([116ddeb](https://gitlab.com/openstapps/configuration/commit/116ddebfb8714aca85612a55fc0ee398022eb0d3)), closes [#14](https://gitlab.com/openstapps/configuration/issues/14) - - +- add possibility to ignore CI entries ([116ddeb](https://gitlab.com/openstapps/configuration/commit/116ddebfb8714aca85612a55fc0ee398022eb0d3)), closes [#14](https://gitlab.com/openstapps/configuration/issues/14) # [0.13.0](https://gitlab.com/openstapps/configuration/compare/v0.12.0...v0.13.0) (2019-04-18) - ### Features -* add configuration for configuration checks ([da2d7f6](https://gitlab.com/openstapps/configuration/commit/da2d7f6f91ccfc91d3560c1e380daa4282f1aeb5)), closes [#13](https://gitlab.com/openstapps/configuration/issues/13) - - +- add configuration for configuration checks ([da2d7f6](https://gitlab.com/openstapps/configuration/commit/da2d7f6f91ccfc91d3560c1e380daa4282f1aeb5)), closes [#13](https://gitlab.com/openstapps/configuration/issues/13) # [0.12.0](https://gitlab.com/openstapps/configuration/compare/v0.11.0...v0.12.0) (2019-04-16) - ### Bug Fixes -* do not escape newlines in scripts ([77bed07](https://gitlab.com/openstapps/configuration/commit/77bed076bbf439a301b6ce4eb4a536ab2b000570)) - +- do not escape newlines in scripts ([77bed07](https://gitlab.com/openstapps/configuration/commit/77bed076bbf439a301b6ce4eb4a536ab2b000570)) ### Features -* add expected build script ([34d3d43](https://gitlab.com/openstapps/configuration/commit/34d3d43ff5963bc2dae95cd8d6eb5def8023f7fc)), closes [#12](https://gitlab.com/openstapps/configuration/issues/12) - - +- add expected build script ([34d3d43](https://gitlab.com/openstapps/configuration/commit/34d3d43ff5963bc2dae95cd8d6eb5def8023f7fc)), closes [#12](https://gitlab.com/openstapps/configuration/issues/12) # [0.11.0](https://gitlab.com/openstapps/configuration/compare/v0.10.0...v0.11.0) (2019-04-15) - ### Bug Fixes -* exclude docs from packages ([d7b6ecb](https://gitlab.com/openstapps/configuration/commit/d7b6ecb734c008fbad5a9615bf35665fdac20fac)), closes [#11](https://gitlab.com/openstapps/configuration/issues/11) - - +- exclude docs from packages ([d7b6ecb](https://gitlab.com/openstapps/configuration/commit/d7b6ecb734c008fbad5a9615bf35665fdac20fac)), closes [#11](https://gitlab.com/openstapps/configuration/issues/11) # [0.10.0](https://gitlab.com/openstapps/configuration/compare/v0.9.0...v0.10.0) (2019-04-09) - ### Features -* add check for contributors ([ab81aab](https://gitlab.com/openstapps/configuration/commit/ab81aab046248e8b8379576914b58e23a03fec45)) -* check entries in CI config ([61d2285](https://gitlab.com/openstapps/configuration/commit/61d2285a1fd76dee1c02fd2318a92cd2fbe4df71)), closes [#10](https://gitlab.com/openstapps/configuration/issues/10) - - +- add check for contributors ([ab81aab](https://gitlab.com/openstapps/configuration/commit/ab81aab046248e8b8379576914b58e23a03fec45)) +- check entries in CI config ([61d2285](https://gitlab.com/openstapps/configuration/commit/61d2285a1fd76dee1c02fd2318a92cd2fbe4df71)), closes [#10](https://gitlab.com/openstapps/configuration/issues/10) # [0.9.0](https://gitlab.com/openstapps/configuration/compare/v0.8.0...v0.9.0) (2019-04-08) - - # [0.8.0](https://gitlab.com/openstapps/configuration/compare/v0.7.0...v0.8.0) (2019-04-01) - ### Bug Fixes -* remove @types/chalk ([bf26eff](https://gitlab.com/openstapps/configuration/commit/bf26effe688299ba18047ca3a8c412ddd162b9c1)) - - +- remove @types/chalk ([bf26eff](https://gitlab.com/openstapps/configuration/commit/bf26effe688299ba18047ca3a8c412ddd162b9c1)) # [0.7.0](https://gitlab.com/openstapps/configuration/compare/v0.6.0...v0.7.0) (2019-02-26) - ### Features -* add ability to check scripts ([662f534](https://gitlab.com/openstapps/configuration/commit/662f53455097ba13c84e20111d99bf60c3f967c2)), closes [#6](https://gitlab.com/openstapps/configuration/issues/6) - - +- add ability to check scripts ([662f534](https://gitlab.com/openstapps/configuration/commit/662f53455097ba13c84e20111d99bf60c3f967c2)), closes [#6](https://gitlab.com/openstapps/configuration/issues/6) # [0.6.0](https://gitlab.com/openstapps/configuration/compare/v0.5.1...v0.6.0) (2019-02-13) - ### Bug Fixes -* correctly check tslint.json ([9c8ce48](https://gitlab.com/openstapps/configuration/commit/9c8ce486ce03ebff344b53b566afa3e164c60647)), closes [#3](https://gitlab.com/openstapps/configuration/issues/3) [#4](https://gitlab.com/openstapps/configuration/issues/4) - - +- correctly check tslint.json ([9c8ce48](https://gitlab.com/openstapps/configuration/commit/9c8ce486ce03ebff344b53b566afa3e164c60647)), closes [#3](https://gitlab.com/openstapps/configuration/issues/3) [#4](https://gitlab.com/openstapps/configuration/issues/4) ## [0.5.1](https://gitlab.com/openstapps/configuration/compare/v0.5.0...v0.5.1) (2019-01-28) - ### Bug Fixes -* exclude CLI file in nyc configuration ([c46dc18](https://gitlab.com/openstapps/configuration/commit/c46dc1828c826c7025017314fdf2fdce70a58772)), closes [#5](https://gitlab.com/openstapps/configuration/issues/5) - - +- exclude CLI file in nyc configuration ([c46dc18](https://gitlab.com/openstapps/configuration/commit/c46dc1828c826c7025017314fdf2fdce70a58772)), closes [#5](https://gitlab.com/openstapps/configuration/issues/5) # [0.5.0](https://gitlab.com/openstapps/configuration/compare/v0.4.0...v0.5.0) (2018-12-18) - ### Bug Fixes -* use template for .gitignore ([04b6154](https://gitlab.com/openstapps/configuration/commit/04b6154f9a13e68db00a2d80f54a719482c9a4f9)) - - +- use template for .gitignore ([04b6154](https://gitlab.com/openstapps/configuration/commit/04b6154f9a13e68db00a2d80f54a719482c9a4f9)) # [0.4.0](https://gitlab.com/openstapps/configuration/compare/v0.3.1...v0.4.0) (2018-12-11) - ### Features -* disallow spaces in curly braces ([4e14415](https://gitlab.com/openstapps/configuration/commit/4e1441564b6785c118f14ac94659cf1339c0dac3)), closes [#2](https://gitlab.com/openstapps/configuration/issues/2) - - +- disallow spaces in curly braces ([4e14415](https://gitlab.com/openstapps/configuration/commit/4e1441564b6785c118f14ac94659cf1339c0dac3)), closes [#2](https://gitlab.com/openstapps/configuration/issues/2) ## [0.3.1](https://gitlab.com/openstapps/configuration/compare/v0.3.0...v0.3.1) (2018-12-04) - - # [0.3.0](https://gitlab.com/openstapps/configuration/compare/v0.2.0...v0.3.0) (2018-12-04) - ### Features -* add cli to copy configurations ([98aa5a5](https://gitlab.com/openstapps/configuration/commit/98aa5a5f70bb17ca05574a291831158eea7920ef)), closes [#1](https://gitlab.com/openstapps/configuration/issues/1) -* add script to check configuration ([adfc5aa](https://gitlab.com/openstapps/configuration/commit/adfc5aa5dc149cb6d634015baceea5839ae29190)) - - +- add cli to copy configurations ([98aa5a5](https://gitlab.com/openstapps/configuration/commit/98aa5a5f70bb17ca05574a291831158eea7920ef)), closes [#1](https://gitlab.com/openstapps/configuration/issues/1) +- add script to check configuration ([adfc5aa](https://gitlab.com/openstapps/configuration/commit/adfc5aa5dc149cb6d634015baceea5839ae29190)) # [0.2.0](https://gitlab.com/openstapps/configuration/compare/v0.1.1...v0.2.0) (2018-11-30) - ### Features -* copy .editorconfig during installation ([f228af2](https://gitlab.com/openstapps/configuration/commit/f228af24f9a20457f89719c093cc9239f35cf0b3)) - - +- copy .editorconfig during installation ([f228af2](https://gitlab.com/openstapps/configuration/commit/f228af24f9a20457f89719c093cc9239f35cf0b3)) ## [0.1.1](https://gitlab.com/openstapps/configuration/compare/v0.1.0...v0.1.1) (2018-11-30) - - # [0.1.0](https://gitlab.com/openstapps/configuration/compare/v0.0.1...v0.1.0) (2018-11-30) - ### Features -* add editor config ([ecbc768](https://gitlab.com/openstapps/configuration/commit/ecbc768b32daab5f32c5f91aeac9252937586465)) - - +- add editor config ([ecbc768](https://gitlab.com/openstapps/configuration/commit/ecbc768b32daab5f32c5f91aeac9252937586465)) ## [0.0.1](https://gitlab.com/openstapps/configuration/compare/e2bb08d1e879f8e2aac0f59930f50ff9dfe7526b...v0.0.1) (2018-11-28) - ### Features -* add tslint and tsconfig ([e2bb08d](https://gitlab.com/openstapps/configuration/commit/e2bb08d1e879f8e2aac0f59930f50ff9dfe7526b)) - - - +- add tslint and tsconfig ([e2bb08d](https://gitlab.com/openstapps/configuration/commit/e2bb08d1e879f8e2aac0f59930f50ff9dfe7526b)) diff --git a/configuration/configuration/README.md b/configuration/configuration/README.md index ae001bf1..72a0561c 100644 --- a/configuration/configuration/README.md +++ b/configuration/configuration/README.md @@ -1,6 +1,6 @@ # @openstapps/configuration -[![pipeline status](https://img.shields.io/gitlab/pipeline/openstapps/configuration.svg?style=flat-square)](https://gitlab.com/openstapps/configuration/commits/master) +[![pipeline status](https://img.shields.io/gitlab/pipeline/openstapps/configuration.svg?style=flat-square)](https://gitlab.com/openstapps/configuration/commits/master) [![npm](https://img.shields.io/npm/v/@openstapps/configuration.svg?style=flat-square)](https://npmjs.com/package/@openstapps/configuration) [![license)](https://img.shields.io/npm/l/@openstapps/configuration.svg?style=flat-square)](https://www.gnu.org/licenses/gpl-3.0.en.html) [![documentation](https://img.shields.io/badge/documentation-online-blue.svg?style=flat-square)](https://openstapps.gitlab.io/configuration) diff --git a/configuration/configuration/app.js b/configuration/configuration/app.js index 19bbfa61..1bda7715 100644 --- a/configuration/configuration/app.js +++ b/configuration/configuration/app.js @@ -1,2 +1,2 @@ #!/usr/bin/env node -require('./lib/cli.js') +import './lib/cli.js'; diff --git a/configuration/configuration/package.json b/configuration/configuration/package.json index a0902afd..d3e57eaf 100644 --- a/configuration/configuration/package.json +++ b/configuration/configuration/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/configuration", "description": "A collection of configuration base files for StApps projects.", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/configuration.git", "author": "Karl-Philipp Wulfert ", @@ -16,8 +17,7 @@ "openstapps-configuration": "app.js" }, "scripts": { - "build": "npm run lint && npm run compile", - "compile": "rimraf lib && tsc --outDir lib", + "build": "rimraf lib && tsc --outDir lib", "documentation": "typedoc --out docs --readme README.md --includeVersion --listInvalidSymbolLinks --entryPointStrategy expand src", "format:fix": "prettier --write .", "lint": "eslint -c .eslintrc.json --ignore-path .eslintignore --ext .ts src/", @@ -48,10 +48,10 @@ "eslint-plugin-unicorn": "45.0.2", "prettier": "2.8.3", "rimraf": "4.4.0", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "peerDependencies": { - "typescript": "4.4.4" + "typescript": "4.8.4" } } diff --git a/configuration/configuration/src/cli.ts b/configuration/configuration/src/cli.ts index b72152d5..4cba61e8 100644 --- a/configuration/configuration/src/cli.ts +++ b/configuration/configuration/src/cli.ts @@ -30,7 +30,7 @@ import { consoleLog, getConfiguration, getRules, -} from './common'; +} from './common.js'; // current working directory const currentWorkingDirectory = cwd(); diff --git a/configuration/configuration/tsconfig.json b/configuration/configuration/tsconfig.json index 108202e4..70d43e92 100644 --- a/configuration/configuration/tsconfig.json +++ b/configuration/configuration/tsconfig.json @@ -8,10 +8,14 @@ "forceConsistentCasingInFileNames": true, "skipLibCheck": true, "inlineSourceMap": true, - "module": "CommonJS", - "moduleResolution": "node", + "module": "NodeNext", + "moduleResolution": "NodeNext", "noErrorTruncation": true, "noFallthroughCasesInSwitch": true, + "isolatedModules": true, + "allowJs": true, + "resolveJsonModule": true, + "allowSyntheticDefaultImports": true, "noImplicitAny": true, "noImplicitReturns": true, "noUnusedLocals": true, @@ -19,10 +23,7 @@ "outDir": "../../../lib/", "lib": ["ES2021", "DOM"], "strict": true, - "target": "es6" + "target": "ES2021" }, - "exclude": [ - "../../../lib/", - "../../../test/" - ] + "exclude": ["../../../app.js", "../../../lib/", "../../../test/"] } diff --git a/configuration/eslint-config/index.js b/configuration/eslint-config/index.js index 079e428d..b074185e 100644 --- a/configuration/eslint-config/index.js +++ b/configuration/eslint-config/index.js @@ -1,12 +1,16 @@ module.exports = { root: true, ignorePatterns: ['projects/**/*'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 2021, + }, overrides: [ { files: ['*.ts'], parser: '@typescript-eslint/parser', parserOptions: { - ecmaVersion: 2020, + ecmaVersion: 2021, sourceType: 'module', project: ['tsconfig.json'], createDefaultProgram: true, diff --git a/configuration/eslint-config/package.json b/configuration/eslint-config/package.json index 819b618a..895d0e19 100644 --- a/configuration/eslint-config/package.json +++ b/configuration/eslint-config/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/eslint-config", "description": "A collection of configuration base files for StApps projects.", "version": "2.1.0", + "type": "commonjs", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/eslint-config.git", "author": "Thea Schöbl", @@ -27,7 +28,7 @@ "eslint-plugin-prettier": "4.2.1", "eslint-plugin-unicorn": "45.0.2", "prettier": "2.8.3", - "typescript": "4.4.4" + "typescript": "4.8.4" }, "peerDependencies": { "@typescript-eslint/eslint-plugin": "5.49.0", diff --git a/configuration/prettier-config/package.json b/configuration/prettier-config/package.json index d2f3d23e..fb4a05c7 100644 --- a/configuration/prettier-config/package.json +++ b/configuration/prettier-config/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/prettier-config", "description": "StApps Prettier Config", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/prettier-config.git", "author": "Thea Schöbl ", diff --git a/configuration/projectmanagement/app.js b/configuration/projectmanagement/app.js index 19bbfa61..1bda7715 100644 --- a/configuration/projectmanagement/app.js +++ b/configuration/projectmanagement/app.js @@ -1,2 +1,2 @@ #!/usr/bin/env node -require('./lib/cli.js') +import './lib/cli.js'; diff --git a/configuration/projectmanagement/package.json b/configuration/projectmanagement/package.json index ee8f6734..8ab2e167 100644 --- a/configuration/projectmanagement/package.json +++ b/configuration/projectmanagement/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/projectmanagement", "description": "Main documentation and scripts for maintenance.", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/projectmanagement.git", "author": "Karl-Philipp Wulfert ", @@ -67,8 +68,8 @@ "prettier": "2.8.3", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "nyc": { "all": true, diff --git a/configuration/projectmanagement/src/cli.ts b/configuration/projectmanagement/src/cli.ts index 6536fbb5..1085fd3d 100644 --- a/configuration/projectmanagement/src/cli.ts +++ b/configuration/projectmanagement/src/cli.ts @@ -14,17 +14,17 @@ */ import {Api} from '@openstapps/gitlab-api'; import {Logger} from '@openstapps/logger'; -import {AddLogLevel} from '@openstapps/logger/lib/transformations/add-log-level'; -import {Colorize} from '@openstapps/logger/lib/transformations/colorize'; +import {AddLogLevel} from '@openstapps/logger/lib/transformations/add-log-level.js'; +import {Colorize} from '@openstapps/logger/lib/transformations/colorize.js'; import {Command} from 'commander'; import {existsSync, readFileSync} from 'fs'; import path from 'path'; import {cwd, stdout} from 'process'; -import {GITLAB_API_URL} from './configuration'; -import {getUsedVersionMajorMinor} from './tasks/get-used-version'; -import {remind} from './tasks/remind'; -import {tidy} from './tasks/tidy'; -import {unlabel} from './tasks/unlabel'; +import {GITLAB_API_URL} from './configuration.js'; +import {getUsedVersionMajorMinor} from './tasks/get-used-version.js'; +import {remind} from './tasks/remind.js'; +import {tidy} from './tasks/tidy.js'; +import {unlabel} from './tasks/unlabel.js'; // add default handler for unhandled rejections process.on('unhandledRejection', async reason => { diff --git a/configuration/projectmanagement/src/common.ts b/configuration/projectmanagement/src/common.ts index eb28e3d8..c6b75677 100644 --- a/configuration/projectmanagement/src/common.ts +++ b/configuration/projectmanagement/src/common.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {Api} from '@openstapps/gitlab-api'; -import {Project} from '@openstapps/gitlab-api/lib/types'; +import {Project} from '@openstapps/gitlab-api/lib/types.js'; import {Logger} from '@openstapps/logger'; /** diff --git a/configuration/projectmanagement/src/configuration.ts b/configuration/projectmanagement/src/configuration.ts index 77a392a7..c773739c 100644 --- a/configuration/projectmanagement/src/configuration.ts +++ b/configuration/projectmanagement/src/configuration.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {Label} from '@openstapps/gitlab-api/lib/types'; +import {Label} from '@openstapps/gitlab-api/lib/types.js'; import setHours from 'date-fns/setHours'; import nextThursday from 'date-fns/nextThursday'; import previousThursday from 'date-fns/previousThursday'; diff --git a/configuration/projectmanagement/src/tasks/remind.ts b/configuration/projectmanagement/src/tasks/remind.ts index bf6ad2db..c0dcadc6 100644 --- a/configuration/projectmanagement/src/tasks/remind.ts +++ b/configuration/projectmanagement/src/tasks/remind.ts @@ -20,10 +20,10 @@ import { MergeRequestState, Scope, User, -} from '@openstapps/gitlab-api/lib/types'; +} from '@openstapps/gitlab-api/lib/types.js'; import {Logger} from '@openstapps/logger'; import {WebClient} from '@slack/web-api'; -import {GROUPS, MAX_DEPTH_FOR_REMINDER, NOTE_PREFIX, SLACK_CHANNEL} from '../configuration'; +import {GROUPS, MAX_DEPTH_FOR_REMINDER, NOTE_PREFIX, SLACK_CHANNEL} from '../configuration.js'; /** * Remind people of open merge requests diff --git a/configuration/projectmanagement/src/tasks/report.ts b/configuration/projectmanagement/src/tasks/report.ts index d4058d49..181394fb 100644 --- a/configuration/projectmanagement/src/tasks/report.ts +++ b/configuration/projectmanagement/src/tasks/report.ts @@ -20,13 +20,13 @@ import { MergeRequestState, Project, User, -} from '@openstapps/gitlab-api/lib/types'; +} from '@openstapps/gitlab-api/lib/types.js'; import {Logger} from '@openstapps/logger'; -import {render} from 'mustache'; +import mustache from 'mustache'; import path from 'path'; import {cwd} from 'process'; -import {getProjects} from '../common'; -import {BOLD_LABELS, GROUPS, LABEL_WEIGHTS, NEXT_MEETING} from '../configuration'; +import {getProjects} from '../common.js'; +import {BOLD_LABELS, GROUPS, LABEL_WEIGHTS, NEXT_MEETING} from '../configuration.js'; import differenceInWeeks from 'date-fns/differenceInWeeks'; import formatISO from 'date-fns/formatISO'; import format from 'date-fns/format'; @@ -446,7 +446,7 @@ export async function generateReport(api: Api, label: string, template: string): timestamp: format(Date.now(), 'PPPPpp', {locale: de}), }; - return render(template, structureForTemplate); + return mustache.render(template, structureForTemplate); } /** diff --git a/configuration/projectmanagement/src/tasks/tidy.ts b/configuration/projectmanagement/src/tasks/tidy.ts index ec5e6541..2e1f332d 100644 --- a/configuration/projectmanagement/src/tasks/tidy.ts +++ b/configuration/projectmanagement/src/tasks/tidy.ts @@ -21,9 +21,9 @@ import { Milestone, Project, Scope, -} from '@openstapps/gitlab-api/lib/types'; +} from '@openstapps/gitlab-api/lib/types.js'; import {Logger} from '@openstapps/logger'; -import {getProjects} from '../common'; +import {getProjects} from '../common.js'; import { GROUPS, NEEDED_LABELS, @@ -31,7 +31,7 @@ import { NOTE_PREFIX, PROTECTED_BRANCHES, SCHOOLS, -} from '../configuration'; +} from '../configuration.js'; /** * Tidy issues without milestone diff --git a/configuration/projectmanagement/src/tasks/unlabel.ts b/configuration/projectmanagement/src/tasks/unlabel.ts index 96428500..f4c4c3e0 100644 --- a/configuration/projectmanagement/src/tasks/unlabel.ts +++ b/configuration/projectmanagement/src/tasks/unlabel.ts @@ -13,9 +13,9 @@ * this program. If not, see . */ import {Api} from '@openstapps/gitlab-api'; -import {IssueState, Scope} from '@openstapps/gitlab-api/lib/types'; +import {IssueState, Scope} from '@openstapps/gitlab-api/lib/types.js'; import {Logger} from '@openstapps/logger'; -import {GROUPS, LAST_MEETING, NOTE_PREFIX} from '../configuration'; +import {GROUPS, LAST_MEETING, NOTE_PREFIX} from '../configuration.js'; import isBefore from 'date-fns/isBefore'; /** diff --git a/configuration/projectmanagement/test/get-used-versions.spec.ts b/configuration/projectmanagement/test/get-used-versions.spec.ts index 79a3eccd..d8688acb 100644 --- a/configuration/projectmanagement/test/get-used-versions.spec.ts +++ b/configuration/projectmanagement/test/get-used-versions.spec.ts @@ -5,7 +5,7 @@ import {execSync} from 'child_process'; import {suite, test} from '@testdeck/mocha'; import {join} from 'path'; import {dirSync} from 'tmp'; -import {getUsedVersion, getUsedVersionMajorMinor} from '../src/tasks/get-used-version'; +import {getUsedVersion, getUsedVersionMajorMinor} from '../src/tasks/get-used-version.js'; chai.use(chaiAsPromised); chai.should(); diff --git a/examples/minimal-connector/app.js b/examples/minimal-connector/app.js new file mode 100644 index 00000000..d233e644 --- /dev/null +++ b/examples/minimal-connector/app.js @@ -0,0 +1,2 @@ +#!/usr/bin/env node +import './lib/cli.js' diff --git a/examples/minimal-connector/package.json b/examples/minimal-connector/package.json index 75ebf037..621c73ae 100644 --- a/examples/minimal-connector/package.json +++ b/examples/minimal-connector/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/minimal-connector", "description": "This is a minimal connector which serves as an example", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/minimal-connector.git", "author": "Anselm Stordeur ", @@ -48,8 +49,8 @@ "nyc": "15.1.0", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "nyc": { "all": true, diff --git a/examples/minimal-connector/src/cli.ts b/examples/minimal-connector/src/cli.ts index 3d9db04b..988e28df 100644 --- a/examples/minimal-connector/src/cli.ts +++ b/examples/minimal-connector/src/cli.ts @@ -1,5 +1,3 @@ -#!/usr/bin/env node - /* * Copyright (C) 2018, 2019 StApps * This program is free software: you can redistribute it and/or modify it @@ -18,8 +16,8 @@ import {Logger} from '@openstapps/logger'; import {Command} from 'commander'; import {readFileSync} from 'fs'; import {join} from 'path'; -import {executeConnector, isValidSCNamespace} from './common'; -import {MinimalConnector} from './minimal-connector'; +import {executeConnector, isValidSCNamespace} from './common.js'; +import {MinimalConnector} from './minimal-connector.js'; process.on('unhandledRejection', (error) => { throw error; @@ -34,7 +32,7 @@ const commander = new Command(); /** * Uses arguments to paramtrize the connector execution - * + * * backendURL - URL of the StApps backend deployment e.g. http://localhost:3000 * origin - Origin, where the data comes from. Typically the name of the connector e.g. minimal-connector * licensePlate - The license plate of your school. Must be matched to a SCNamespace e.g. f-u diff --git a/examples/minimal-connector/src/common.ts b/examples/minimal-connector/src/common.ts index f51d799f..8c291f93 100644 --- a/examples/minimal-connector/src/common.ts +++ b/examples/minimal-connector/src/common.ts @@ -12,14 +12,14 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ConnectorClient} from '@openstapps/api/lib/connector-client'; -import {HttpClient} from '@openstapps/api/lib/http-client'; +import {ConnectorClient} from '@openstapps/api/lib/connector-client.js'; +import {HttpClient} from '@openstapps/api/lib/http-client.js'; import { SCLicensePlate, SCNamespaces, SCThings, } from '@openstapps/core'; -import {Connector} from './connector'; +import {Connector} from './connector.js'; /** * Checks if the input is a valid SCNamespace @@ -33,10 +33,10 @@ export function isValidSCNamespace(input: string): input is SCLicensePlate { /** * Creates a uuid from a JSON stringified item identifier - * + * * You may create custom itemIdentifier-Interfaces to generate UIDs consistently * - * @param itemIdentifier Identifying representation of the item + * @param itemIdentifier Identifying representation of the item * @param licensePlate License plate of the school */ export function createUUID(itemIdentifier: unknown, licensePlate: SCLicensePlate): string { diff --git a/examples/minimal-connector/src/connector.ts b/examples/minimal-connector/src/connector.ts index 20f382d4..9c57d4d8 100644 --- a/examples/minimal-connector/src/connector.ts +++ b/examples/minimal-connector/src/connector.ts @@ -13,11 +13,11 @@ * this program. If not, see . */ import {SCLicensePlate, SCThingOriginType, SCThingRemoteOrigin, SCThings} from '@openstapps/core'; -import {createUUID} from './common'; +import {createUUID} from './common.js'; /** - * Provides abstracted methods for the connector execution process - * + * Provides abstracted methods for the connector execution process + * * By extending this class connector-developers only need to implement load and transform of the data * Pushing the data to the backend will be handled automatically * @@ -34,8 +34,8 @@ export abstract class Connector { public origin: string; /** - * Abstract constructor for a connector - * + * Abstract constructor for a connector + * * @param licensePlate License plate of the school * @param origin Name of the connector */ diff --git a/examples/minimal-connector/src/minimal-connector.ts b/examples/minimal-connector/src/minimal-connector.ts index 1425b971..b92814e2 100644 --- a/examples/minimal-connector/src/minimal-connector.ts +++ b/examples/minimal-connector/src/minimal-connector.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {SCLicensePlate, SCMessage, SCThingRemoteOrigin, SCThingType} from '@openstapps/core'; -import {createUUID} from './common'; -import {Connector} from './connector'; +import {createUUID} from './common.js'; +import {Connector} from './connector.js'; /** * Example connector @@ -27,7 +27,7 @@ export class MinimalConnector extends Connector { /** * Constructor for the MinimalConnector - * + * * @param licensePlate License plate of the school * @param origin Name of the connector */ diff --git a/examples/minimal-connector/test/common.spec.ts b/examples/minimal-connector/test/common.spec.ts index 6ddb5236..9bc2917f 100644 --- a/examples/minimal-connector/test/common.spec.ts +++ b/examples/minimal-connector/test/common.spec.ts @@ -15,8 +15,8 @@ import {SCThingType, SCBulkResponse, SCLicensePlate} from '@openstapps/core'; import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {MinimalConnector} from '../src/minimal-connector'; -import {createUUID, executeConnector, isValidSCNamespace} from '../src/common'; +import {MinimalConnector} from '../src/minimal-connector.js'; +import {createUUID, executeConnector, isValidSCNamespace} from '../src/common.js'; import nock = require('nock'); @suite diff --git a/examples/minimal-connector/test/connector.spec.ts b/examples/minimal-connector/test/connector.spec.ts index b8f013ab..c694160a 100644 --- a/examples/minimal-connector/test/connector.spec.ts +++ b/examples/minimal-connector/test/connector.spec.ts @@ -15,7 +15,7 @@ import {SCThingOriginType} from '@openstapps/core'; import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {MinimalConnector} from '../src/minimal-connector'; +import {MinimalConnector} from '../src/minimal-connector.js'; @suite export class ConnectorSpec { diff --git a/examples/minimal-connector/test/minimal-connector.spec.ts b/examples/minimal-connector/test/minimal-connector.spec.ts index 5271d676..dd5b2dc5 100644 --- a/examples/minimal-connector/test/minimal-connector.spec.ts +++ b/examples/minimal-connector/test/minimal-connector.spec.ts @@ -17,7 +17,7 @@ import {Validator} from '@openstapps/core-tools/lib/validate'; import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; import {join} from 'path'; -import {MinimalConnector} from '../src/minimal-connector'; +import {MinimalConnector} from '../src/minimal-connector.js'; @suite export class MinimalConnectorSpec { diff --git a/examples/minimal-plugin/app.js b/examples/minimal-plugin/app.js new file mode 100644 index 00000000..d233e644 --- /dev/null +++ b/examples/minimal-plugin/app.js @@ -0,0 +1,2 @@ +#!/usr/bin/env node +import './lib/cli.js' diff --git a/examples/minimal-plugin/package.json b/examples/minimal-plugin/package.json index 3bbc6564..a5e63cf2 100644 --- a/examples/minimal-plugin/package.json +++ b/examples/minimal-plugin/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/minimal-plugin", "description": "Minimal Plugin", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "author": "Thea Schöbl", "contributors": [ @@ -36,7 +37,7 @@ "@types/node": "18.15.3", "conventional-changelog-cli": "2.2.2", "rimraf": "4.4.0", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" } } diff --git a/examples/minimal-plugin/src/cli.ts b/examples/minimal-plugin/src/cli.ts index e30d5848..ebc864fc 100644 --- a/examples/minimal-plugin/src/cli.ts +++ b/examples/minimal-plugin/src/cli.ts @@ -1,5 +1,3 @@ -#!/usr/bin/env node - /* * Copyright (C) 2019-2021 StApps * This program is free software: you can redistribute it and/or modify it @@ -15,14 +13,14 @@ * this program. If not, see . */ -import {HttpClient} from '@openstapps/api/lib/http-client'; -import {PluginClient} from '@openstapps/api/lib/plugin-client'; -import {Converter} from '@openstapps/core-tools/lib/schema'; +import {HttpClient} from '@openstapps/api/lib/http-client.js'; +import {PluginClient} from '@openstapps/api/lib/plugin-client.js'; +import {Converter} from '@openstapps/core-tools/lib/schema.js'; import {Logger} from '@openstapps/logger'; import {Command, Option} from 'commander'; import {readFileSync} from 'fs'; import {join, resolve} from 'path'; -import {MinimalPlugin} from './plugin/minimal-plugin'; +import {MinimalPlugin} from './plugin/minimal-plugin.js'; process.on('unhandledRejection', (error) => { diff --git a/examples/minimal-plugin/src/plugin/minimal-plugin.ts b/examples/minimal-plugin/src/plugin/minimal-plugin.ts index 70b931d3..f6606eb2 100644 --- a/examples/minimal-plugin/src/plugin/minimal-plugin.ts +++ b/examples/minimal-plugin/src/plugin/minimal-plugin.ts @@ -12,10 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {Plugin} from '@openstapps/api/lib/plugin'; +import {Plugin} from '@openstapps/api/lib/plugin.js'; import * as express from 'express'; -import {SCMinimalRequest} from './protocol/request'; -import {SCMinimalResponse} from './protocol/response'; +import {SCMinimalRequest} from './protocol/request.js'; +import {SCMinimalResponse} from './protocol/response.js'; /** * The Plugin Class diff --git a/frontend/app/icons.config.ts b/frontend/app/icons.config.ts index 0ba30ecc..220066a2 100644 --- a/frontend/app/icons.config.ts +++ b/frontend/app/icons.config.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import type {IconConfig} from './scripts/icon-config'; +import type {IconConfig} from './scripts/icon-config.js'; const config: IconConfig = { inputPath: 'node_modules/material-symbols/material-symbols-rounded.woff2', diff --git a/frontend/app/package.json b/frontend/app/package.json index 342d7970..9739409b 100644 --- a/frontend/app/package.json +++ b/frontend/app/package.json @@ -170,7 +170,7 @@ "protractor": "7.0.0", "surge": "0.23.1", "ts-node": "10.9.1", - "typescript": "4.4.4", + "typescript": "4.8.4", "webpack-bundle-analyzer": "4.7.0" }, "cordova": { diff --git a/frontend/app/scripts/accumulate-licenses.ts b/frontend/app/scripts/accumulate-licenses.ts index 2f796328..28b1c6ff 100644 --- a/frontend/app/scripts/accumulate-licenses.ts +++ b/frontend/app/scripts/accumulate-licenses.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import fs from 'fs'; -import {omit} from '../src/app/_helpers/collections/omit'; -import {pickBy} from '../src/app/_helpers/collections/pick'; +import {omit} from '../src/app/_helpers/collections/omit.js'; +import {pickBy} from '../src/app/_helpers/collections/pick.js'; /** * accumulate and transform licenses based on two license files diff --git a/frontend/app/scripts/check-icon-correctness.ts b/frontend/app/scripts/check-icon-correctness.ts index 5582c8e1..a181ef56 100644 --- a/frontend/app/scripts/check-icon-correctness.ts +++ b/frontend/app/scripts/check-icon-correctness.ts @@ -15,7 +15,7 @@ import fontkit, {Font} from 'fontkit'; import config from '../icons.config'; import {existsSync} from 'fs'; -import {getUsedIconsHtml, getUsedIconsTS} from './gather-used-icons'; +import {getUsedIconsHtml, getUsedIconsTS} from './gather-used-icons.js'; const commandName = '"npm run minify-icons"'; const originalFont = fontkit.openSync(config.inputPath); diff --git a/frontend/app/scripts/gather-used-icons.ts b/frontend/app/scripts/gather-used-icons.ts index 5b1fc2ea..1dc5ff22 100644 --- a/frontend/app/scripts/gather-used-icons.ts +++ b/frontend/app/scripts/gather-used-icons.ts @@ -14,7 +14,7 @@ */ import glob from 'glob'; import {readFileSync} from 'fs'; -import {matchPropertyContent, matchTagProperties} from '../src/app/util/ion-icon/icon-match'; +import {matchPropertyContent, matchTagProperties} from '../src/app/util/ion-icon/icon-match.js'; const globPromise = (pattern: string) => new Promise((resolve, reject) => diff --git a/frontend/app/scripts/minify-icon-font.ts b/frontend/app/scripts/minify-icon-font.ts index 9dfa8713..9ff1efe5 100644 --- a/frontend/app/scripts/minify-icon-font.ts +++ b/frontend/app/scripts/minify-icon-font.ts @@ -18,7 +18,7 @@ import fontkit from 'fontkit'; import {exec} from 'child_process'; import config from '../icons.config'; import {statSync} from 'fs'; -import {getUsedIconsHtml, getUsedIconsTS} from './gather-used-icons'; +import {getUsedIconsHtml, getUsedIconsTS} from './gather-used-icons.js'; /** * diff --git a/frontend/app/src/app/_helpers/collections/chunk.spec.ts b/frontend/app/src/app/_helpers/collections/chunk.spec.ts index 4c53d402..5f834b1c 100644 --- a/frontend/app/src/app/_helpers/collections/chunk.spec.ts +++ b/frontend/app/src/app/_helpers/collections/chunk.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {chunk} from './chunk'; +import {chunk} from './chunk.js'; describe('chunk', function () { it('should chunk items in the correct sizes', function () { diff --git a/frontend/app/src/app/_helpers/collections/difference.spec.ts b/frontend/app/src/app/_helpers/collections/difference.spec.ts index ea9fab3d..2fd21e52 100644 --- a/frontend/app/src/app/_helpers/collections/difference.spec.ts +++ b/frontend/app/src/app/_helpers/collections/difference.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {differenceBy} from './difference'; +import {differenceBy} from './difference.js'; describe('differenceBy', function () { it('should return the difference of two arrays', function () { diff --git a/frontend/app/src/app/_helpers/collections/get.spec.ts b/frontend/app/src/app/_helpers/collections/get.spec.ts index 5682f2c5..141a4207 100644 --- a/frontend/app/src/app/_helpers/collections/get.spec.ts +++ b/frontend/app/src/app/_helpers/collections/get.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {get} from './get'; +import {get} from './get.js'; describe('get', function () { it('should get a simple path', function () { diff --git a/frontend/app/src/app/_helpers/collections/group-by.spec.ts b/frontend/app/src/app/_helpers/collections/group-by.spec.ts index 5d165257..8e3919a8 100644 --- a/frontend/app/src/app/_helpers/collections/group-by.spec.ts +++ b/frontend/app/src/app/_helpers/collections/group-by.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {groupBy, groupByStable, groupByProperty} from './group-by'; +import {groupBy, groupByStable, groupByProperty} from './group-by.js'; describe('groupBy', () => { it('should group an array by a key', () => { diff --git a/frontend/app/src/app/_helpers/collections/key-by.spec.ts b/frontend/app/src/app/_helpers/collections/key-by.spec.ts index 104ce6dc..ec6893e1 100644 --- a/frontend/app/src/app/_helpers/collections/key-by.spec.ts +++ b/frontend/app/src/app/_helpers/collections/key-by.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {keyBy} from './key-by'; +import {keyBy} from './key-by.js'; describe('keyBy', function () { it('should key objects', function () { diff --git a/frontend/app/src/app/_helpers/collections/map-values.spec.ts b/frontend/app/src/app/_helpers/collections/map-values.spec.ts index 1a8a7fe7..4b273e12 100644 --- a/frontend/app/src/app/_helpers/collections/map-values.spec.ts +++ b/frontend/app/src/app/_helpers/collections/map-values.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {mapValues} from './map-values'; +import {mapValues} from './map-values.js'; describe('map-values', () => { it('should map values', () => { diff --git a/frontend/app/src/app/_helpers/collections/min.spec.ts b/frontend/app/src/app/_helpers/collections/min.spec.ts index c88cda33..1ae71a1d 100644 --- a/frontend/app/src/app/_helpers/collections/min.spec.ts +++ b/frontend/app/src/app/_helpers/collections/min.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {minBy} from './min'; +import {minBy} from './min.js'; describe('minBy', function () { it('should pick the minimum value based on transform', function () { diff --git a/frontend/app/src/app/_helpers/collections/omit.spec.ts b/frontend/app/src/app/_helpers/collections/omit.spec.ts index 7c7adfd7..a9a888c5 100644 --- a/frontend/app/src/app/_helpers/collections/omit.spec.ts +++ b/frontend/app/src/app/_helpers/collections/omit.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {omit} from './omit'; +import {omit} from './omit.js'; describe('omit', function () { it('should omit keys', function () { diff --git a/frontend/app/src/app/_helpers/collections/partition.spec.ts b/frontend/app/src/app/_helpers/collections/partition.spec.ts index c64b568a..c1d7c688 100644 --- a/frontend/app/src/app/_helpers/collections/partition.spec.ts +++ b/frontend/app/src/app/_helpers/collections/partition.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {partition} from './partition'; +import {partition} from './partition.js'; describe('partition', function () { it('should partition an array', function () { diff --git a/frontend/app/src/app/_helpers/collections/pick.spec.ts b/frontend/app/src/app/_helpers/collections/pick.spec.ts index 6db203eb..62923762 100644 --- a/frontend/app/src/app/_helpers/collections/pick.spec.ts +++ b/frontend/app/src/app/_helpers/collections/pick.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {pick} from './pick'; +import {pick} from './pick.js'; describe('pick', function () { it('should pick properties', function () { diff --git a/frontend/app/src/app/_helpers/collections/shuffle.spec.ts b/frontend/app/src/app/_helpers/collections/shuffle.spec.ts index d2e8d0c3..c730d48b 100644 --- a/frontend/app/src/app/_helpers/collections/shuffle.spec.ts +++ b/frontend/app/src/app/_helpers/collections/shuffle.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {shuffle} from './shuffle'; +import {shuffle} from './shuffle.js'; describe('shuffle', function () { it('should shuffle an array', function () { diff --git a/frontend/app/src/app/_helpers/collections/string-sort.spec.ts b/frontend/app/src/app/_helpers/collections/string-sort.spec.ts index d20744a4..59d95414 100644 --- a/frontend/app/src/app/_helpers/collections/string-sort.spec.ts +++ b/frontend/app/src/app/_helpers/collections/string-sort.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {stringSort, stringSortBy} from './string-sort'; +import {stringSort, stringSortBy} from './string-sort.js'; describe('stringSort', () => { it('should sort an array of strings', () => { diff --git a/frontend/app/src/app/_helpers/collections/sum.spec.ts b/frontend/app/src/app/_helpers/collections/sum.spec.ts index 0b1b43d7..ed4db00c 100644 --- a/frontend/app/src/app/_helpers/collections/sum.spec.ts +++ b/frontend/app/src/app/_helpers/collections/sum.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {sum, sumBy} from './sum'; +import {sum, sumBy} from './sum.js'; describe('sum', () => { it('should return the sum of all elements in the collection', () => { diff --git a/frontend/app/src/app/_helpers/collections/tree-group.spec.ts b/frontend/app/src/app/_helpers/collections/tree-group.spec.ts index 31f762ba..72e30e24 100644 --- a/frontend/app/src/app/_helpers/collections/tree-group.spec.ts +++ b/frontend/app/src/app/_helpers/collections/tree-group.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {Tree, treeGroupBy} from './tree-group'; +import {Tree, treeGroupBy} from './tree-group.js'; interface TestItem { id: number; diff --git a/frontend/app/src/app/_helpers/collections/uniq.spec.ts b/frontend/app/src/app/_helpers/collections/uniq.spec.ts index 37cf55be..33f55985 100644 --- a/frontend/app/src/app/_helpers/collections/uniq.spec.ts +++ b/frontend/app/src/app/_helpers/collections/uniq.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {uniqBy} from './uniq'; +import {uniqBy} from './uniq.js'; describe('uniq', function () { it('should return an array with unique values', function () { diff --git a/frontend/app/src/app/_helpers/collections/zip.spec.ts b/frontend/app/src/app/_helpers/collections/zip.spec.ts index 35f7c6bc..ece47ea7 100644 --- a/frontend/app/src/app/_helpers/collections/zip.spec.ts +++ b/frontend/app/src/app/_helpers/collections/zip.spec.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {zip} from './zip'; +import {zip} from './zip.js'; describe('zip', function () { it('should zip arrays together', function () { diff --git a/frontend/app/src/app/_helpers/data/filters.ts b/frontend/app/src/app/_helpers/data/filters.ts index bd02eb88..b73e098c 100644 --- a/frontend/app/src/app/_helpers/data/filters.ts +++ b/frontend/app/src/app/_helpers/data/filters.ts @@ -14,7 +14,7 @@ */ import {SCSearchBooleanFilter, SCSearchFilter, SCSearchValueFilter, SCThing} from '@openstapps/core'; -import {logger} from '../ts-logger'; +import {logger} from '../ts-logger.js'; /** * Checks if any filter applies to an SCThing diff --git a/frontend/app/src/app/_helpers/data/sample-things.ts b/frontend/app/src/app/_helpers/data/sample-things.ts index d14e6711..2d320036 100644 --- a/frontend/app/src/app/_helpers/data/sample-things.ts +++ b/frontend/app/src/app/_helpers/data/sample-things.ts @@ -34,8 +34,8 @@ import { SCToDoPriority, } from '@openstapps/core'; import {Observable, of} from 'rxjs'; -import {checkFilter} from './filters'; -import {sampleResources} from './resources/test-resources'; +import {checkFilter} from './filters.js'; +import {sampleResources} from './resources/test-resources.js'; /* eslint-disable */ const sampleMessages: SCMessage[] = [ diff --git a/frontend/app/src/app/animation/animation-choreographer.ts b/frontend/app/src/app/animation/animation-choreographer.ts index cb7b49f6..5d2a6163 100644 --- a/frontend/app/src/app/animation/animation-choreographer.ts +++ b/frontend/app/src/app/animation/animation-choreographer.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {SHARED_AXIS_DIRECTIONS} from './material-motion'; +import {SHARED_AXIS_DIRECTIONS} from './material-motion.js'; /** * /** diff --git a/frontend/app/src/app/app.component.spec.ts b/frontend/app/src/app/app.component.spec.ts index 073828a1..38375df2 100644 --- a/frontend/app/src/app/app.component.spec.ts +++ b/frontend/app/src/app/app.component.spec.ts @@ -29,7 +29,7 @@ import {SettingsProvider} from './modules/settings/settings.provider'; import {NGXLogger} from 'ngx-logger'; import {RouterTestingModule} from '@angular/router/testing'; import {ScheduleSyncService} from './modules/background/schedule/schedule-sync.service'; -import {sampleAuthConfiguration} from './_helpers/data/sample-configuration'; +import {sampleAuthConfiguration} from './_helpers/data/sample-configuration.js'; import {StorageProvider} from './modules/storage/storage.provider'; import {SimpleBrowser} from './util/browser.factory'; diff --git a/frontend/app/src/app/app.component.ts b/frontend/app/src/app/app.component.ts index 8006ca65..c7d2124e 100644 --- a/frontend/app/src/app/app.component.ts +++ b/frontend/app/src/app/app.component.ts @@ -18,7 +18,7 @@ import {App, URLOpenListenerEvent} from '@capacitor/app'; import {Platform, ToastController} from '@ionic/angular'; import {SettingsProvider} from './modules/settings/settings.provider'; import {AuthHelperService} from './modules/auth/auth-helper.service'; -import {environment} from '../environments/environment'; +import {environment} from '../environments/environment.js'; import {StatusBar, Style} from '@capacitor/status-bar'; import {Capacitor} from '@capacitor/core'; import {ScheduleSyncService} from './modules/background/schedule/schedule-sync.service'; diff --git a/frontend/app/src/app/app.module.ts b/frontend/app/src/app/app.module.ts index 4c2b97bf..65f6caeb 100644 --- a/frontend/app/src/app/app.module.ts +++ b/frontend/app/src/app/app.module.ts @@ -26,7 +26,7 @@ import 'moment/min/locales'; import {LoggerModule, NGXLogger, NgxLoggerLevel} from 'ngx-logger'; import SwiperCore, {FreeMode, Navigation} from 'swiper'; -import {environment} from '../environments/environment'; +import {environment} from '../environments/environment.js'; import {AppRoutingModule} from './app-routing.module'; import {AppComponent} from './app.component'; import {CatalogModule} from './modules/catalog/catalog.module'; @@ -44,7 +44,7 @@ import {SettingsProvider} from './modules/settings/settings.provider'; import {StorageModule} from './modules/storage/storage.module'; import {ThingTranslateModule} from './translation/thing-translate.module'; import {UtilModule} from './util/util.module'; -import {initLogger} from './_helpers/ts-logger'; +import {initLogger} from './_helpers/ts-logger.js'; import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import {AboutModule} from './modules/about/about.module'; import {FavoritesModule} from './modules/favorites/favorites.module'; diff --git a/frontend/app/src/app/modules/about/about-page/about-page-content.html b/frontend/app/src/app/modules/about/about-page/about-page-content.html index b2e56d95..77a38f0f 100644 --- a/frontend/app/src/app/modules/about/about-page/about-page-content.html +++ b/frontend/app/src/app/modules/about/about-page/about-page-content.html @@ -14,18 +14,18 @@ -->
- +
- {{ 'title' | translateSimple: content }} + {{ 'title' | translateSimple : content }} -

{{ 'title' | translateSimple: content }}

+

{{ 'title' | translateSimple : content }}

@@ -38,6 +38,6 @@ - {{ 'title' | translateSimple: content }} + {{ 'title' | translateSimple : content }}
diff --git a/frontend/app/src/app/modules/about/about-page/about-page.html b/frontend/app/src/app/modules/about/about-page/about-page.html index 5226594f..166c0655 100644 --- a/frontend/app/src/app/modules/about/about-page/about-page.html +++ b/frontend/app/src/app/modules/about/about-page/about-page.html @@ -18,7 +18,7 @@ - {{ 'title' | translateSimple: content }} + {{ 'title' | translateSimple : content }} diff --git a/frontend/app/src/app/modules/assessments/assessments.provider.ts b/frontend/app/src/app/modules/assessments/assessments.provider.ts index 5fde0e6e..78b21259 100644 --- a/frontend/app/src/app/modules/assessments/assessments.provider.ts +++ b/frontend/app/src/app/modules/assessments/assessments.provider.ts @@ -18,8 +18,8 @@ import {ConfigProvider} from '../config/config.provider'; import {SCAssessment, SCUuid} from '@openstapps/core'; import {DefaultAuthService} from '../auth/default-auth.service'; import {HttpClient} from '@angular/common/http'; -import {uniqBy} from '../../_helpers/collections/uniq'; -import {keyBy} from '../../_helpers/collections/key-by'; +import {uniqBy} from '../../_helpers/collections/uniq.js'; +import {keyBy} from '../../_helpers/collections/key-by.js'; /** * diff --git a/frontend/app/src/app/modules/assessments/page/assessments-page.component.ts b/frontend/app/src/app/modules/assessments/page/assessments-page.component.ts index a5db3129..6c30891d 100644 --- a/frontend/app/src/app/modules/assessments/page/assessments-page.component.ts +++ b/frontend/app/src/app/modules/assessments/page/assessments-page.component.ts @@ -19,12 +19,12 @@ import {SCAssessment, SCCourseOfStudy} from '@openstapps/core'; import {ActivatedRoute, Router} from '@angular/router'; import {Subscription} from 'rxjs'; import {NGXLogger} from 'ngx-logger'; -import {materialSharedAxisX} from '../../../animation/material-motion'; -import {SharedAxisChoreographer} from '../../../animation/animation-choreographer'; +import {materialSharedAxisX} from '../../../animation/material-motion.js'; +import {SharedAxisChoreographer} from '../../../animation/animation-choreographer.js'; import {DataProvider, DataScope} from '../../data/data.provider'; import {DataRoutingService} from '../../data/data-routing.service'; -import {groupBy} from '../../../_helpers/collections/group-by'; -import {mapValues} from '../../../_helpers/collections/map-values'; +import {groupBy} from '../../../_helpers/collections/group-by.js'; +import {mapValues} from '../../../_helpers/collections/map-values.js'; @Component({ selector: 'app-assessments-page', diff --git a/frontend/app/src/app/modules/assessments/page/assessments-page.html b/frontend/app/src/app/modules/assessments/page/assessments-page.html index aaf1b4ad..92c89f2c 100644 --- a/frontend/app/src/app/modules/assessments/page/assessments-page.html +++ b/frontend/app/src/app/modules/assessments/page/assessments-page.html @@ -36,7 +36,7 @@ class="ion-text-wrap" *ngIf="assessments[key].courseOfStudy | async as course; else defaultLabel" > - {{ 'name' | thingTranslate: course }} ({{ 'academicDegree' | thingTranslate: course }}) + {{ 'name' | thingTranslate : course }} ({{ 'academicDegree' | thingTranslate : course }}) diff --git a/frontend/app/src/app/modules/assessments/types/assessment/assessment-base-info.html b/frontend/app/src/app/modules/assessments/types/assessment/assessment-base-info.html index 64a6db29..83379dde 100644 --- a/frontend/app/src/app/modules/assessments/types/assessment/assessment-base-info.html +++ b/frontend/app/src/app/modules/assessments/types/assessment/assessment-base-info.html @@ -16,14 +16,14 @@ {{ (_item.grade | isNumeric) - ? (_item.grade | numberLocalized: 'minimumFractionDigits:1,maximumFractionDigits:1') + ? (_item.grade | numberLocalized : 'minimumFractionDigits:1,maximumFractionDigits:1') : '' }} - {{ 'status' | thingTranslate: _item | titlecase }}, - {{ 'attempt' | propertyNameTranslate: _item }} + {{ 'status' | thingTranslate : _item | titlecase }}, + {{ 'attempt' | propertyNameTranslate : _item }} {{ _item.attempt }} {{ _item.ects }} - {{ 'ects' | propertyNameTranslate: _item }} diff --git a/frontend/app/src/app/modules/assessments/types/assessment/assessment-detail.html b/frontend/app/src/app/modules/assessments/types/assessment/assessment-detail.html index 9af958e0..b4a7b20c 100644 --- a/frontend/app/src/app/modules/assessments/types/assessment/assessment-detail.html +++ b/frontend/app/src/app/modules/assessments/types/assessment/assessment-detail.html @@ -16,9 +16,9 @@ - {{ $any('courseOfStudy' | propertyNameTranslate: item) | titlecase }}: - {{ 'name' | thingTranslate: $any(courseOfStudy) }} - ({{ 'academicDegree' | thingTranslate: $any(courseOfStudy) }}) + {{ $any('courseOfStudy' | propertyNameTranslate : item) | titlecase }}: + {{ 'name' | thingTranslate : $any(courseOfStudy) }} + ({{ 'academicDegree' | thingTranslate : $any(courseOfStudy) }}) diff --git a/frontend/app/src/app/modules/assessments/types/assessment/assessment-list-item.html b/frontend/app/src/app/modules/assessments/types/assessment/assessment-list-item.html index 0a9b274c..d86c2fd0 100644 --- a/frontend/app/src/app/modules/assessments/types/assessment/assessment-list-item.html +++ b/frontend/app/src/app/modules/assessments/types/assessment/assessment-list-item.html @@ -15,7 +15,7 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }} {{ item.date ? (item.date | amDateFormat) : '' }}

diff --git a/frontend/app/src/app/modules/auth/auth-helper.service.ts b/frontend/app/src/app/modules/auth/auth-helper.service.ts index f0df0148..5106abe1 100644 --- a/frontend/app/src/app/modules/auth/auth-helper.service.ts +++ b/frontend/app/src/app/modules/auth/auth-helper.service.ts @@ -14,7 +14,7 @@ */ import {Injectable} from '@angular/core'; -import {IPAIAAuthAction} from './paia/paia-auth-action'; +import {IPAIAAuthAction} from './paia/paia-auth-action.js'; import {AuthActions, IAuthAction} from 'ionic-appauth'; import {TranslateService} from '@ngx-translate/core'; import {JSONPath} from 'jsonpath-plus'; diff --git a/frontend/app/src/app/modules/auth/auth-routing.module.ts b/frontend/app/src/app/modules/auth/auth-routing.module.ts index d8c5f9e5..d8b185e1 100644 --- a/frontend/app/src/app/modules/auth/auth-routing.module.ts +++ b/frontend/app/src/app/modules/auth/auth-routing.module.ts @@ -15,7 +15,7 @@ import {RouterModule, Routes} from '@angular/router'; import {NgModule} from '@angular/core'; -import {authPaths} from './auth-paths'; +import {authPaths} from './auth-paths.js'; import {AuthCallbackPageComponent} from './auth-callback/page/auth-callback-page.component'; import {PAIAAuthCallbackPageComponent} from './paia/auth-callback/page/paiaauth-callback-page.component'; diff --git a/frontend/app/src/app/modules/auth/auth.module.ts b/frontend/app/src/app/modules/auth/auth.module.ts index 17708add..6b0dc2c5 100644 --- a/frontend/app/src/app/modules/auth/auth.module.ts +++ b/frontend/app/src/app/modules/auth/auth.module.ts @@ -2,7 +2,7 @@ import {NgModule} from '@angular/core'; import {CommonModule} from '@angular/common'; import {Platform} from '@ionic/angular'; import {Requestor, StorageBackend} from '@openid/appauth'; -import {storageFactory} from './factories'; +import {storageFactory} from './factories.js'; import {Browser} from 'ionic-appauth'; import {CapacitorBrowser} from 'ionic-appauth/lib/capacitor'; import {httpFactory} from './factories/http.factory'; diff --git a/frontend/app/src/app/modules/auth/auth.provider.methods.ts b/frontend/app/src/app/modules/auth/auth.provider.methods.ts index 5fc4dec0..da6ed0a0 100644 --- a/frontend/app/src/app/modules/auth/auth.provider.methods.ts +++ b/frontend/app/src/app/modules/auth/auth.provider.methods.ts @@ -17,8 +17,8 @@ import {AuthorizationServiceConfigurationJson} from '@openid/appauth'; import {IAuthConfig} from 'ionic-appauth'; import {SCAuthorizationProvider, SCAuthorizationProviderType} from '@openstapps/core'; import {Capacitor} from '@capacitor/core'; -import {authPaths} from './auth-paths'; -import {environment} from '../../../environments/environment'; +import {authPaths} from './auth-paths.js'; +import {environment} from '../../../environments/environment.js'; /** * Get configuration of an OAuth2 client diff --git a/frontend/app/src/app/modules/auth/factories/http.factory.ts b/frontend/app/src/app/modules/auth/factories/http.factory.ts index 6ba5e276..7a368788 100644 --- a/frontend/app/src/app/modules/auth/factories/http.factory.ts +++ b/frontend/app/src/app/modules/auth/factories/http.factory.ts @@ -15,7 +15,7 @@ import {HttpClient} from '@angular/common/http'; import {Platform} from '@ionic/angular'; -import {CapacitorRequestor} from '../capacitor-requestor'; +import {CapacitorRequestor} from '../capacitor-requestor.js'; import {NgHttpService} from '../ng-http.service'; export const httpFactory = (platform: Platform, httpClient: HttpClient) => { diff --git a/frontend/app/src/app/modules/auth/factories/storage.factory.ts b/frontend/app/src/app/modules/auth/factories/storage.factory.ts index 0bb5f194..9dd15b6e 100644 --- a/frontend/app/src/app/modules/auth/factories/storage.factory.ts +++ b/frontend/app/src/app/modules/auth/factories/storage.factory.ts @@ -15,7 +15,7 @@ import {Platform} from '@ionic/angular'; import {IonicStorage} from 'ionic-appauth/lib'; -import {SafeCapacitorSecureStorage} from '../../storage/capacitor-secure-storage'; +import {SafeCapacitorSecureStorage} from '../../storage/capacitor-secure-storage.js'; export const storageFactory = (platform: Platform) => { return platform.is('capacitor') ? new SafeCapacitorSecureStorage() : new IonicStorage(); diff --git a/frontend/app/src/app/modules/auth/paia/authorization-request-handler.ts b/frontend/app/src/app/modules/auth/paia/authorization-request-handler.ts index 5c85b329..2d066b58 100644 --- a/frontend/app/src/app/modules/auth/paia/authorization-request-handler.ts +++ b/frontend/app/src/app/modules/auth/paia/authorization-request-handler.ts @@ -25,9 +25,9 @@ import { BUILT_IN_PARAMETERS, } from '@openid/appauth'; import {Browser} from 'ionic-appauth'; -import {PAIAAuthorizationNotifier} from './paia-authorization-notifier'; -import {PAIAAuthorizationRequestResponse} from './authorization-request-response'; -import {PAIAAuthorizationResponse, PAIAAuthorizationResponseJson} from './paia-authorization-response'; +import {PAIAAuthorizationNotifier} from './paia-authorization-notifier.js'; +import {PAIAAuthorizationRequestResponse} from './authorization-request-response.js'; +import {PAIAAuthorizationResponse, PAIAAuthorizationResponseJson} from './paia-authorization-response.js'; /** key for authorization request. */ const authorizationRequestKey = (handle: string) => { diff --git a/frontend/app/src/app/modules/auth/paia/authorization-request-response.ts b/frontend/app/src/app/modules/auth/paia/authorization-request-response.ts index d9dd73ac..91fbf496 100644 --- a/frontend/app/src/app/modules/auth/paia/authorization-request-response.ts +++ b/frontend/app/src/app/modules/auth/paia/authorization-request-response.ts @@ -14,7 +14,7 @@ */ import {AuthorizationError, AuthorizationRequest} from '@openid/appauth'; -import {PAIAAuthorizationResponse} from './paia-authorization-response'; +import {PAIAAuthorizationResponse} from './paia-authorization-response.js'; /** * Represents a structural type holding both authorization request and response. diff --git a/frontend/app/src/app/modules/auth/paia/paia-auth-action.ts b/frontend/app/src/app/modules/auth/paia/paia-auth-action.ts index ec8cae9d..b1959984 100644 --- a/frontend/app/src/app/modules/auth/paia/paia-auth-action.ts +++ b/frontend/app/src/app/modules/auth/paia/paia-auth-action.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {PAIATokenResponse} from './paia-token-response'; +import {PAIATokenResponse} from './paia-token-response.js'; import {AuthActionBuilder, IAuthAction} from 'ionic-appauth'; export interface IPAIAAuthAction extends IAuthAction { diff --git a/frontend/app/src/app/modules/auth/paia/paia-auth.service.ts b/frontend/app/src/app/modules/auth/paia/paia-auth.service.ts index 252ab1eb..98f5e8cb 100644 --- a/frontend/app/src/app/modules/auth/paia/paia-auth.service.ts +++ b/frontend/app/src/app/modules/auth/paia/paia-auth.service.ts @@ -40,13 +40,13 @@ import { UserInfoHandler, } from 'ionic-appauth'; import {BehaviorSubject, Observable} from 'rxjs'; -import {PAIATokenRequestHandler} from './token-request-handler'; -import {PAIAAuthorizationRequestHandler} from './authorization-request-handler'; -import {PAIATokenRequest, PAIATokenRequestJson} from './paia-token-request'; -import {PAIAAuthorizationResponse} from './paia-authorization-response'; -import {PAIAAuthorizationNotifier} from './paia-authorization-notifier'; -import {PAIATokenResponse} from './paia-token-response'; -import {IPAIAAuthAction, PAIAAuthActionBuilder} from './paia-auth-action'; +import {PAIATokenRequestHandler} from './token-request-handler.js'; +import {PAIAAuthorizationRequestHandler} from './authorization-request-handler.js'; +import {PAIATokenRequest, PAIATokenRequestJson} from './paia-token-request.js'; +import {PAIAAuthorizationResponse} from './paia-authorization-response.js'; +import {PAIAAuthorizationNotifier} from './paia-authorization-notifier.js'; +import {PAIATokenResponse} from './paia-token-response.js'; +import {IPAIAAuthAction, PAIAAuthActionBuilder} from './paia-auth-action.js'; import {SCAuthorizationProvider} from '@openstapps/core'; import {ConfigProvider} from '../../config/config.provider'; import {getClientConfig, getEndpointsConfig} from '../auth.provider.methods'; diff --git a/frontend/app/src/app/modules/auth/paia/paia-authorization-listener.ts b/frontend/app/src/app/modules/auth/paia/paia-authorization-listener.ts index c2d346d0..c254b673 100644 --- a/frontend/app/src/app/modules/auth/paia/paia-authorization-listener.ts +++ b/frontend/app/src/app/modules/auth/paia/paia-authorization-listener.ts @@ -14,7 +14,7 @@ */ import {AuthorizationError, AuthorizationRequest} from '@openid/appauth'; -import {PAIAAuthorizationResponse} from './paia-authorization-response'; +import {PAIAAuthorizationResponse} from './paia-authorization-response.js'; export type PAIAAuthorizationListener = ( request: AuthorizationRequest, diff --git a/frontend/app/src/app/modules/auth/paia/paia-authorization-notifier.ts b/frontend/app/src/app/modules/auth/paia/paia-authorization-notifier.ts index 4b2b5613..5edda424 100644 --- a/frontend/app/src/app/modules/auth/paia/paia-authorization-notifier.ts +++ b/frontend/app/src/app/modules/auth/paia/paia-authorization-notifier.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {PAIAAuthorizationListener} from './paia-authorization-listener'; +import {PAIAAuthorizationListener} from './paia-authorization-listener.js'; import {AuthorizationError, AuthorizationRequest} from '@openid/appauth'; -import {PAIAAuthorizationResponse} from './paia-authorization-response'; +import {PAIAAuthorizationResponse} from './paia-authorization-response.js'; export class PAIAAuthorizationNotifier { // eslint-disable-next-line unicorn/no-null diff --git a/frontend/app/src/app/modules/auth/paia/paia-user-info-handler.ts b/frontend/app/src/app/modules/auth/paia/paia-user-info-handler.ts index 7ab2101f..f39463fe 100644 --- a/frontend/app/src/app/modules/auth/paia/paia-user-info-handler.ts +++ b/frontend/app/src/app/modules/auth/paia/paia-user-info-handler.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {AuthorizationServiceConfiguration, Requestor} from '@openid/appauth'; -import {PAIATokenResponse} from './paia-token-response'; +import {PAIATokenResponse} from './paia-token-response.js'; export interface UserInfoHandler { performUserInfoRequest( diff --git a/frontend/app/src/app/modules/auth/paia/token-request-handler.ts b/frontend/app/src/app/modules/auth/paia/token-request-handler.ts index cf0da436..1f652996 100644 --- a/frontend/app/src/app/modules/auth/paia/token-request-handler.ts +++ b/frontend/app/src/app/modules/auth/paia/token-request-handler.ts @@ -23,8 +23,8 @@ import { AppAuthError, TokenError, } from '@openid/appauth'; -import {PAIATokenRequest} from './paia-token-request'; -import {PAIATokenResponse, PAIATokenResponseJson} from './paia-token-response'; +import {PAIATokenRequest} from './paia-token-request.js'; +import {PAIATokenResponse, PAIATokenResponseJson} from './paia-token-response.js'; export class PAIATokenRequestHandler { constructor( diff --git a/frontend/app/src/app/modules/background/schedule/schedule-sync.service.ts b/frontend/app/src/app/modules/background/schedule/schedule-sync.service.ts index da88dc54..c1356618 100644 --- a/frontend/app/src/app/modules/background/schedule/schedule-sync.service.ts +++ b/frontend/app/src/app/modules/background/schedule/schedule-sync.service.ts @@ -27,15 +27,15 @@ import {DateFormatPipe, DurationPipe} from 'ngx-moment'; import {BackgroundFetch} from '@transistorsoft/capacitor-background-fetch'; import {StorageProvider} from '../../storage/storage.provider'; import {CalendarService} from '../../calendar/calendar.service'; -import {toICal} from '../../calendar/ical/ical'; +import {toICal} from '../../calendar/ical/ical.js'; import {Subscription} from 'rxjs'; -import {ChangesOf} from './changes'; -import {hashStringToInt} from './hash'; +import {ChangesOf} from './changes.js'; +import {hashStringToInt} from './hash.js'; import { CALENDAR_NOTIFICATIONS_ENABLED_KEY, CALENDAR_SYNC_ENABLED_KEY, getCalendarSetting, -} from '../../settings/page/calendar-sync-settings-keys'; +} from '../../settings/page/calendar-sync-settings-keys.js'; import {filter} from 'rxjs/operators'; import {Capacitor} from '@capacitor/core'; diff --git a/frontend/app/src/app/modules/calendar/add-event-review-modal.component.ts b/frontend/app/src/app/modules/calendar/add-event-review-modal.component.ts index 8fbc93a0..1de4a9d3 100644 --- a/frontend/app/src/app/modules/calendar/add-event-review-modal.component.ts +++ b/frontend/app/src/app/modules/calendar/add-event-review-modal.component.ts @@ -20,7 +20,7 @@ import { serializeICal, toICal, toICalUpdates, -} from './ical/ical'; +} from './ical/ical.js'; import moment from 'moment'; import {Share} from '@capacitor/share'; import {Directory, Encoding, Filesystem} from '@capacitor/filesystem'; @@ -30,7 +30,7 @@ import {Dialog} from '@capacitor/dialog'; import {SCDateSeries} from '@openstapps/core'; import {ThingTranslateService} from '../../translation/thing-translate.service'; import {TranslateService} from '@ngx-translate/core'; -import {NewShareData, NewShareNavigator} from './new-share'; +import {NewShareData, NewShareNavigator} from './new-share.js'; interface ICalInfo { title: string; diff --git a/frontend/app/src/app/modules/calendar/add-event-review-modal.html b/frontend/app/src/app/modules/calendar/add-event-review-modal.html index 1b82fe2e..1f7e5097 100644 --- a/frontend/app/src/app/modules/calendar/add-event-review-modal.html +++ b/frontend/app/src/app/modules/calendar/add-event-review-modal.html @@ -35,7 +35,7 @@ > - {{ moment(iCalEvent.start) | amDateFormat: 'll, HH:mm' }} + {{ moment(iCalEvent.start) | amDateFormat : 'll, HH:mm' }} diff --git a/frontend/app/src/app/modules/calendar/calendar.service.ts b/frontend/app/src/app/modules/calendar/calendar.service.ts index 984665b9..ae5bb836 100644 --- a/frontend/app/src/app/modules/calendar/calendar.service.ts +++ b/frontend/app/src/app/modules/calendar/calendar.service.ts @@ -15,10 +15,10 @@ import {Calendar} from '@awesome-cordova-plugins/calendar/ngx'; import {Injectable} from '@angular/core'; -import {ICalEvent} from './ical/ical'; +import {ICalEvent} from './ical/ical.js'; import moment, {duration, Moment, unitOfTime} from 'moment'; import {Dialog} from '@capacitor/dialog'; -import {CalendarInfo} from './calendar-info'; +import {CalendarInfo} from './calendar-info.js'; import {Subject} from 'rxjs'; import {ConfigProvider} from '../config/config.provider'; diff --git a/frontend/app/src/app/modules/calendar/ical/ical.spec.ts b/frontend/app/src/app/modules/calendar/ical/ical.spec.ts index 752026d5..380ae948 100644 --- a/frontend/app/src/app/modules/calendar/ical/ical.spec.ts +++ b/frontend/app/src/app/modules/calendar/ical/ical.spec.ts @@ -13,10 +13,10 @@ * this program. If not, see . */ -import {findRRules, RRule} from './ical'; +import {findRRules, RRule} from './ical.js'; import moment, {unitOfTime} from 'moment'; import {SCISO8601Date} from '@openstapps/core'; -import {shuffle} from '../../../_helpers/collections/shuffle'; +import {shuffle} from '../../../_helpers/collections/shuffle.js'; /** * diff --git a/frontend/app/src/app/modules/calendar/ical/ical.ts b/frontend/app/src/app/modules/calendar/ical/ical.ts index 143dda3e..3cdeabbf 100644 --- a/frontend/app/src/app/modules/calendar/ical/ical.ts +++ b/frontend/app/src/app/modules/calendar/ical/ical.ts @@ -21,8 +21,8 @@ import { SCUuid, } from '@openstapps/core'; import moment, {unitOfTime} from 'moment'; -import {minBy} from '../../../_helpers/collections/min'; -import {mapValues} from '../../../_helpers/collections/map-values'; +import {minBy} from '../../../_helpers/collections/min.js'; +import {mapValues} from '../../../_helpers/collections/map-values.js'; export interface ICalEvent { name?: string; diff --git a/frontend/app/src/app/modules/calendar/schedule.provider.ts b/frontend/app/src/app/modules/calendar/schedule.provider.ts index 46e18ea7..2a6fee5e 100644 --- a/frontend/app/src/app/modules/calendar/schedule.provider.ts +++ b/frontend/app/src/app/modules/calendar/schedule.provider.ts @@ -28,7 +28,7 @@ import {BehaviorSubject, Observable, Subscription} from 'rxjs'; import {DataProvider} from '../data/data.provider'; import {map} from 'rxjs/operators'; import {DateFormatPipe, DurationPipe} from 'ngx-moment'; -import {pick} from '../../_helpers/collections/pick'; +import {pick} from '../../_helpers/collections/pick.js'; /** * diff --git a/frontend/app/src/app/modules/config/config.provider.spec.ts b/frontend/app/src/app/modules/config/config.provider.spec.ts index c271f153..45bc90f8 100644 --- a/frontend/app/src/app/modules/config/config.provider.spec.ts +++ b/frontend/app/src/app/modules/config/config.provider.spec.ts @@ -21,9 +21,9 @@ import { ConfigInitError, SavedConfigNotAvailable, WrongConfigVersionInStorage, -} from './errors'; +} from './errors.js'; import {NGXLogger} from 'ngx-logger'; -import {sampleIndexResponse} from '../../_helpers/data/sample-configuration'; +import {sampleIndexResponse} from '../../_helpers/data/sample-configuration.js'; describe('ConfigProvider', () => { let configProvider: ConfigProvider; diff --git a/frontend/app/src/app/modules/config/config.provider.ts b/frontend/app/src/app/modules/config/config.provider.ts index 5739f883..76fe7cec 100644 --- a/frontend/app/src/app/modules/config/config.provider.ts +++ b/frontend/app/src/app/modules/config/config.provider.ts @@ -17,7 +17,7 @@ import {Client} from '@openstapps/api/lib/client'; import {SCAppConfiguration, SCIndexResponse} from '@openstapps/core'; import {NGXLogger} from 'ngx-logger'; import packageJson from '../../../../package.json'; -import {environment} from '../../../environments/environment'; +import {environment} from '../../../environments/environment.js'; import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider'; import {StorageProvider} from '../storage/storage.provider'; import { @@ -26,7 +26,7 @@ import { ConfigValueNotAvailable, SavedConfigNotAvailable, WrongConfigVersionInStorage, -} from './errors'; +} from './errors.js'; /** * Key to store config in storage module diff --git a/frontend/app/src/app/modules/config/errors.ts b/frontend/app/src/app/modules/config/errors.ts index f9fcd84d..acea4f44 100644 --- a/frontend/app/src/app/modules/config/errors.ts +++ b/frontend/app/src/app/modules/config/errors.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {AppError} from '../../_helpers/errors'; +import {AppError} from '../../_helpers/errors.js'; /** * Error that is thrown when fetching from backend fails diff --git a/frontend/app/src/app/modules/dashboard/dashboard.component.html b/frontend/app/src/app/modules/dashboard/dashboard.component.html index 98c1c61f..07ea8215 100644 --- a/frontend/app/src/app/modules/dashboard/dashboard.component.html +++ b/frontend/app/src/app/modules/dashboard/dashboard.component.html @@ -32,7 +32,7 @@ {{ nextEvent?.event - ? (nextEvent!.dates | nextDateInList | amDateFormat: 'll, HH:mm') + ? (nextEvent!.dates | nextDateInList | amDateFormat : 'll, HH:mm') : ('dashboard.schedule.noEvent' | translate) }} diff --git a/frontend/app/src/app/modules/dashboard/dashboard.component.ts b/frontend/app/src/app/modules/dashboard/dashboard.component.ts index e4fe0f3d..329f57ed 100644 --- a/frontend/app/src/app/modules/dashboard/dashboard.component.ts +++ b/frontend/app/src/app/modules/dashboard/dashboard.component.ts @@ -23,7 +23,7 @@ import {SplashScreen} from '@capacitor/splash-screen'; import {DataRoutingService} from '../data/data-routing.service'; import {ScheduleProvider} from '../calendar/schedule.provider'; import {AnimationController, IonContent} from '@ionic/angular'; -import {DashboardCollapse} from './dashboard-collapse'; +import {DashboardCollapse} from './dashboard-collapse.js'; import {BreakpointObserver} from '@angular/cdk/layout'; // const scrollTimeline = new ScrollTimeline(); diff --git a/frontend/app/src/app/modules/dashboard/sections/mensa-section/mensa-section.component.html b/frontend/app/src/app/modules/dashboard/sections/mensa-section/mensa-section.component.html index cf55a5c5..83103fde 100644 --- a/frontend/app/src/app/modules/dashboard/sections/mensa-section/mensa-section.component.html +++ b/frontend/app/src/app/modules/dashboard/sections/mensa-section/mensa-section.component.html @@ -16,7 +16,7 @@ - + diff --git a/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.component.ts b/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.component.ts index 39a2dfe1..0db81406 100644 --- a/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.component.ts +++ b/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.component.ts @@ -23,7 +23,7 @@ import {CoordinatedSearchProvider} from '../../coordinated-search.provider'; import { chipSkeletonTransition, chipTransition, -} from '../../../../animation/skeleton-transitions/chip-loading-transition'; +} from '../../../../animation/skeleton-transitions/chip-loading-transition.js'; import {AddEventStates, AddEventStatesMap} from './add-event-action-chip.config'; import {EditEventSelectionComponent} from '../edit-event-selection.component'; import {AddEventReviewModalComponent} from '../../../calendar/add-event-review-modal.component'; diff --git a/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.config.ts b/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.config.ts index 8d7b0330..0902a44c 100644 --- a/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.config.ts +++ b/frontend/app/src/app/modules/data/chips/data/add-event-action-chip.config.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {SCIcon} from '../../../../util/ion-icon/icon'; +import {SCIcon} from '../../../../util/ion-icon/icon.js'; export enum AddEventStates { ADDED_ALL, diff --git a/frontend/app/src/app/modules/data/chips/edit-event-selection.component.ts b/frontend/app/src/app/modules/data/chips/edit-event-selection.component.ts index 182e1f56..c438d56c 100644 --- a/frontend/app/src/app/modules/data/chips/edit-event-selection.component.ts +++ b/frontend/app/src/app/modules/data/chips/edit-event-selection.component.ts @@ -22,12 +22,12 @@ import { } from '../../calendar/schedule.provider'; import {CalendarService} from '../../calendar/calendar.service'; import {ThingTranslatePipe} from '../../../translation/thing-translate.pipe'; -import {groupBy, groupByProperty} from '../../../_helpers/collections/group-by'; -import {mapValues} from '../../../_helpers/collections/map-values'; -import {stringSortBy} from '../../../_helpers/collections/string-sort'; -import {uniqBy} from '../../../_helpers/collections/uniq'; -import {differenceBy} from '../../../_helpers/collections/difference'; -import {SelectionValue, TreeNode} from './tree-node'; +import {groupBy, groupByProperty} from '../../../_helpers/collections/group-by.js'; +import {mapValues} from '../../../_helpers/collections/map-values.js'; +import {stringSortBy} from '../../../_helpers/collections/string-sort.js'; +import {uniqBy} from '../../../_helpers/collections/uniq.js'; +import {differenceBy} from '../../../_helpers/collections/difference.js'; +import {SelectionValue, TreeNode} from './tree-node.js'; /** * Shows a horizontal list of action chips diff --git a/frontend/app/src/app/modules/data/data-facets.provider.spec.ts b/frontend/app/src/app/modules/data/data-facets.provider.spec.ts index f3660e77..4bab876e 100644 --- a/frontend/app/src/app/modules/data/data-facets.provider.spec.ts +++ b/frontend/app/src/app/modules/data/data-facets.provider.spec.ts @@ -14,8 +14,8 @@ */ import {TestBed} from '@angular/core/testing'; import {SCFacet, SCThing, SCFacetBucket} from '@openstapps/core'; -import {sampleAggregations} from '../../_helpers/data/sample-configuration'; -import {sampleThingsMap} from '../../_helpers/data/sample-things'; +import {sampleAggregations} from '../../_helpers/data/sample-configuration.js'; +import {sampleThingsMap} from '../../_helpers/data/sample-things.js'; import {DataFacetsProvider} from './data-facets.provider'; import {DataModule} from './data.module'; import {DataProvider} from './data.provider'; diff --git a/frontend/app/src/app/modules/data/data-icon.config.ts b/frontend/app/src/app/modules/data/data-icon.config.ts index 6484e63f..c4779bbf 100644 --- a/frontend/app/src/app/modules/data/data-icon.config.ts +++ b/frontend/app/src/app/modules/data/data-icon.config.ts @@ -14,7 +14,7 @@ */ import {SCThingType} from '@openstapps/core'; -import {SCIcon} from '../../util/ion-icon/icon'; +import {SCIcon} from '../../util/ion-icon/icon.js'; export const DataIcons: Record = { 'academic event': SCIcon`school`, diff --git a/frontend/app/src/app/modules/data/data.provider.spec.ts b/frontend/app/src/app/modules/data/data.provider.spec.ts index d7cfadfb..34389efc 100644 --- a/frontend/app/src/app/modules/data/data.provider.spec.ts +++ b/frontend/app/src/app/modules/data/data.provider.spec.ts @@ -26,7 +26,7 @@ import { SCThingOriginType, SCThingType, } from '@openstapps/core'; -import {sampleThingsMap} from '../../_helpers/data/sample-things'; +import {sampleThingsMap} from '../../_helpers/data/sample-things.js'; import {StorageProvider} from '../storage/storage.provider'; import {DataModule} from './data.module'; import {DataProvider, DataScope} from './data.provider'; diff --git a/frontend/app/src/app/modules/data/data.provider.ts b/frontend/app/src/app/modules/data/data.provider.ts index b62211a9..cfe6e57a 100644 --- a/frontend/app/src/app/modules/data/data.provider.ts +++ b/frontend/app/src/app/modules/data/data.provider.ts @@ -32,10 +32,10 @@ import { SCFeedbackResponse, SCUuid, } from '@openstapps/core'; -import {environment} from '../../../environments/environment'; +import {environment} from '../../../environments/environment.js'; import {StorageProvider} from '../storage/storage.provider'; import {StAppsWebHttpClient} from './stapps-web-http-client.provider'; -import {chunk} from '../../_helpers/collections/chunk'; +import {chunk} from '../../_helpers/collections/chunk.js'; export enum DataScope { Local = 'local', @@ -132,8 +132,7 @@ export class DataProvider { const facet: SCFacet = {buckets: [], field: field}; for (const item of items) { - const value = - bucketMap.get(item.type) === undefined ? 1 : (bucketMap.get(item.type) as number) + 1; + const value = bucketMap.get(item.type) === undefined ? 1 : (bucketMap.get(item.type) as number) + 1; bucketMap.set(item.type, value); } diff --git a/frontend/app/src/app/modules/data/detail/data-detail-content.html b/frontend/app/src/app/modules/data/detail/data-detail-content.html index 9dff31b9..e5dc6d08 100644 --- a/frontend/app/src/app/modules/data/detail/data-detail-content.html +++ b/frontend/app/src/app/modules/data/detail/data-detail-content.html @@ -15,7 +15,7 @@ - {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }} {{ 'app.ui.CLOSE' | translate }} @@ -93,8 +93,8 @@
diff --git a/frontend/app/src/app/modules/data/detail/data-detail.component.spec.ts b/frontend/app/src/app/modules/data/detail/data-detail.component.spec.ts index c471b7a3..57519ec4 100644 --- a/frontend/app/src/app/modules/data/detail/data-detail.component.spec.ts +++ b/frontend/app/src/app/modules/data/detail/data-detail.component.spec.ts @@ -19,7 +19,7 @@ import {ComponentFixture, TestBed} from '@angular/core/testing'; import {ActivatedRoute, RouterModule} from '@angular/router'; import {IonTitle} from '@ionic/angular'; import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core'; -import {sampleThingsMap} from '../../../_helpers/data/sample-things'; +import {sampleThingsMap} from '../../../_helpers/data/sample-things.js'; import {DataRoutingModule} from '../data-routing.module'; import {DataModule} from '../data.module'; import {DataProvider} from '../data.provider'; diff --git a/frontend/app/src/app/modules/data/detail/data-detail.component.ts b/frontend/app/src/app/modules/data/detail/data-detail.component.ts index 61b8cd2a..55e1f1fb 100644 --- a/frontend/app/src/app/modules/data/detail/data-detail.component.ts +++ b/frontend/app/src/app/modules/data/detail/data-detail.component.ts @@ -129,10 +129,10 @@ export class DataDetailComponent implements ViewWillEnter { this.item = item ? // eslint-disable-next-line unicorn/no-null DataDetailComponent.isSCSavableThing(item) - ? item.data - : item - // eslint-disable-next-line unicorn/no-null - : null; + ? item.data + : item + : // eslint-disable-next-line unicorn/no-null + null; } catch { // eslint-disable-next-line unicorn/no-null this.item = null; diff --git a/frontend/app/src/app/modules/data/detail/data-path.html b/frontend/app/src/app/modules/data/detail/data-path.html index 5de6dc48..896aa6b6 100644 --- a/frontend/app/src/app/modules/data/detail/data-path.html +++ b/frontend/app/src/app/modules/data/detail/data-path.html @@ -34,7 +34,7 @@ : 'calc(100vw - 120px)' " class="crumb-label" - >{{ 'name' | thingTranslate: $any(fragment) }}{{ 'name' | thingTranslate : $any(fragment) }} diff --git a/frontend/app/src/app/modules/data/elements/long-inline-text.html b/frontend/app/src/app/modules/data/elements/long-inline-text.html index 89267e6b..1b0ad343 100644 --- a/frontend/app/src/app/modules/data/elements/long-inline-text.html +++ b/frontend/app/src/app/modules/data/elements/long-inline-text.html @@ -14,14 +14,14 @@ --> - {{ text | slice: 0:size }} + {{ text | slice : 0 : size }} … - {{ text | slice: 0:size * 2 }} + {{ text | slice : 0 : size * 2 }} … - {{ text | slice: 0:size * 3 }} + {{ text | slice : 0 : size * 3 }} … diff --git a/frontend/app/src/app/modules/data/elements/offers-detail.html b/frontend/app/src/app/modules/data/elements/offers-detail.html index 30bd02eb..168cff77 100644 --- a/frontend/app/src/app/modules/data/elements/offers-detail.html +++ b/frontend/app/src/app/modules/data/elements/offers-detail.html @@ -22,7 +22,7 @@ - {{ 'name' | thingTranslate: offer.inPlace }} + {{ 'name' | thingTranslate : offer.inPlace }} @@ -31,7 +31,7 @@ > {{ (offer.availabilityRange.gt ? offer.availabilityRange.gt : offer.availabilityRange.gte) - | amDateFormat: 'll' + | amDateFormat : 'll' }} @@ -42,7 +42,7 @@ {{ 'data.detail.offers.' + group | translate }}

- {{ offer.prices[group] | currency: 'EUR':'symbol':undefined:'de' }} + {{ offer.prices[group] | currency : 'EUR' : 'symbol' : undefined : 'de' }}

diff --git a/frontend/app/src/app/modules/data/elements/offers-in-list.html b/frontend/app/src/app/modules/data/elements/offers-in-list.html index c0bcb3f0..ef46c3b1 100644 --- a/frontend/app/src/app/modules/data/elements/offers-in-list.html +++ b/frontend/app/src/app/modules/data/elements/offers-in-list.html @@ -16,7 +16,7 @@

- {{ price | currency: 'EUR':'symbol':undefined:'de' }} + {{ price | currency : 'EUR' : 'symbol' : undefined : 'de' }}

diff --git a/frontend/app/src/app/modules/data/elements/origin-detail.html b/frontend/app/src/app/modules/data/elements/origin-detail.html index 3b27a113..56607830 100644 --- a/frontend/app/src/app/modules/data/elements/origin-detail.html +++ b/frontend/app/src/app/modules/data/elements/origin-detail.html @@ -21,15 +21,15 @@

{{ 'data.types.origin.detail.CREATED' | translate | titlecase }}: - {{ origin.created | amDateFormat: 'll' }} + {{ origin.created | amDateFormat : 'll' }}

{{ 'data.types.origin.detail.UPDATED' | translate | titlecase }}: - {{ origin.updated | amDateFormat: 'll' }} + {{ origin.updated | amDateFormat : 'll' }}

{{ 'data.types.origin.detail.MODIFIED' | translate | titlecase }}: - {{ origin.modified | amDateFormat: 'll' }} + {{ origin.modified | amDateFormat : 'll' }}

{{ 'data.types.origin.detail.MAINTAINER' | translate }}: {{ origin.name }}

@@ -47,11 +47,11 @@

{{ 'data.types.origin.detail.INDEXED' | translate | titlecase }}: - {{ origin.indexed | amDateFormat: 'll' }} + {{ origin.indexed | amDateFormat : 'll' }}

{{ 'data.types.origin.detail.MODIFIED' | translate | titlecase }}: - {{ origin.modified | amDateFormat: 'll' }} + {{ origin.modified | amDateFormat : 'll' }}

{{ 'data.types.origin.detail.MAINTAINER' | translate }}: {{ origin.name }}

diff --git a/frontend/app/src/app/modules/data/elements/simple-card.html b/frontend/app/src/app/modules/data/elements/simple-card.html index 677643f2..e44722c6 100644 --- a/frontend/app/src/app/modules/data/elements/simple-card.html +++ b/frontend/app/src/app/modules/data/elements/simple-card.html @@ -29,7 +29,7 @@ -

{{ 'name' | thingTranslate: thing }}

+

{{ 'name' | thingTranslate : thing }}

diff --git a/frontend/app/src/app/modules/data/elements/title-card.component.html b/frontend/app/src/app/modules/data/elements/title-card.component.html index aab97c59..ec72c934 100644 --- a/frontend/app/src/app/modules/data/elements/title-card.component.html +++ b/frontend/app/src/app/modules/data/elements/title-card.component.html @@ -17,11 +17,11 @@

{{ - 'honorificPrefix' | thingTranslate: item + 'honorificPrefix' | thingTranslate : item }} - {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }} {{ - 'honorificSuffix' | thingTranslate: item + 'honorificSuffix' | thingTranslate : item }}

@@ -32,7 +32,7 @@
- {{ 'description' | thingTranslate: item }} + {{ 'description' | thingTranslate : item }}

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

diff --git a/frontend/app/src/app/modules/data/list/sc-thing-list-item-virtual-scroll-strategy.directive.ts b/frontend/app/src/app/modules/data/list/sc-thing-list-item-virtual-scroll-strategy.directive.ts index c56468f0..26d5528e 100644 --- a/frontend/app/src/app/modules/data/list/sc-thing-list-item-virtual-scroll-strategy.directive.ts +++ b/frontend/app/src/app/modules/data/list/sc-thing-list-item-virtual-scroll-strategy.directive.ts @@ -15,7 +15,7 @@ import {Directive, forwardRef, Input, Output, ViewChild} from '@angular/core'; import {CdkVirtualForOf, VIRTUAL_SCROLL_STRATEGY} from '@angular/cdk/scrolling'; -import {ScThingListItemVirtualScrollStrategy} from './sc-thing-list-item-virtual-scroll-strategy'; +import {ScThingListItemVirtualScrollStrategy} from './sc-thing-list-item-virtual-scroll-strategy.js'; /** * diff --git a/frontend/app/src/app/modules/data/list/search-page.component.ts b/frontend/app/src/app/modules/data/list/search-page.component.ts index 699a0e6c..345a0210 100644 --- a/frontend/app/src/app/modules/data/list/search-page.component.ts +++ b/frontend/app/src/app/modules/data/list/search-page.component.ts @@ -34,7 +34,7 @@ import {DataRoutingService} from '../data-routing.service'; import {DataProvider} from '../data.provider'; import {PositionService} from '../../map/position.service'; import {ConfigProvider} from '../../config/config.provider'; -import {searchPageSwitchAnimation} from './search-page-switch-animation'; +import {searchPageSwitchAnimation} from './search-page-switch-animation.js'; /** * SearchPageComponent queries things and shows list of things as search results and filter as context menu diff --git a/frontend/app/src/app/modules/data/list/tree-list-fragment.component.ts b/frontend/app/src/app/modules/data/list/tree-list-fragment.component.ts index 9e19a89f..d7b643e2 100644 --- a/frontend/app/src/app/modules/data/list/tree-list-fragment.component.ts +++ b/frontend/app/src/app/modules/data/list/tree-list-fragment.component.ts @@ -14,7 +14,7 @@ */ import {Component, Input, TemplateRef} from '@angular/core'; import {SCThings, SCThingWithoutReferences, SCUuid} from '@openstapps/core'; -import {Tree} from '../../../_helpers/collections/tree-group'; +import {Tree} from '../../../_helpers/collections/tree-group.js'; import {DataListContext} from './data-list.component'; @Component({ diff --git a/frontend/app/src/app/modules/data/list/tree-list.component.ts b/frontend/app/src/app/modules/data/list/tree-list.component.ts index ba57e2af..9d13380c 100644 --- a/frontend/app/src/app/modules/data/list/tree-list.component.ts +++ b/frontend/app/src/app/modules/data/list/tree-list.component.ts @@ -15,7 +15,7 @@ import {Component, ContentChild, Input, TemplateRef} from '@angular/core'; import {DataListContext} from './data-list.component'; import {SCThings, SCThingWithoutReferences, SCUuid} from '@openstapps/core'; -import {Tree, treeGroupBy} from '../../../_helpers/collections/tree-group'; +import {Tree, treeGroupBy} from '../../../_helpers/collections/tree-group.js'; @Component({ selector: 'tree-list', diff --git a/frontend/app/src/app/modules/data/types/article/article-content.html b/frontend/app/src/app/modules/data/types/article/article-content.html index 03c09bf9..2ffdfb7a 100644 --- a/frontend/app/src/app/modules/data/types/article/article-content.html +++ b/frontend/app/src/app/modules/data/types/article/article-content.html @@ -16,14 +16,14 @@ {{ 'hebisSearch.detail.title' | translate | sentencecase }} - + @@ -35,14 +35,14 @@ - {{ 'authors' | propertyNameTranslate: item | sentencecase }} + {{ 'authors' | propertyNameTranslate : item | sentencecase }} - {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} @@ -56,15 +56,15 @@ - {{ 'publications' | propertyNameTranslate: item | sentencecase }} + {{ 'publications' | propertyNameTranslate : item | sentencecase }}

- {{ publication.locations | join: ', ' }} + {{ publication.locations | join : ', ' }} {{ publication.locations && publication.publisher ? ':' : '' }} {{ publication.publisher }}

@@ -73,21 +73,21 @@ - {{ 'categories' | propertyNameTranslate: item | sentencecase }} + {{ 'categories' | propertyNameTranslate : item | sentencecase }} - {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }} diff --git a/frontend/app/src/app/modules/data/types/article/article-list-item.html b/frontend/app/src/app/modules/data/types/article/article-list-item.html index ad213ae5..402b6522 100644 --- a/frontend/app/src/app/modules/data/types/article/article-list-item.html +++ b/frontend/app/src/app/modules/data/types/article/article-list-item.html @@ -17,22 +17,23 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} {{ item.firstPublished }}{{ - [item.firstPublished, item.lastPublished] | join: ' - ' + [item.firstPublished, item.lastPublished] | join : ' - ' }}

- {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/data/types/book/book-detail-content.html b/frontend/app/src/app/modules/data/types/book/book-detail-content.html index 06e0e9fa..1c60b855 100644 --- a/frontend/app/src/app/modules/data/types/book/book-detail-content.html +++ b/frontend/app/src/app/modules/data/types/book/book-detail-content.html @@ -16,21 +16,21 @@ {{ 'hebisSearch.detail.title' | translate | sentencecase }} - + @@ -42,20 +42,20 @@ - {{ 'authors' | propertyNameTranslate: item | sentencecase }} + {{ 'authors' | propertyNameTranslate : item | sentencecase }} - {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} @@ -68,25 +68,25 @@ - {{ 'publications' | propertyNameTranslate: item | sentencecase }} + {{ 'publications' | propertyNameTranslate : item | sentencecase }}

- {{ publication.locations | join: ', ' }} + {{ publication.locations | join : ', ' }} {{ publication.locations && publication.publisher ? ':' : '' }} {{ publication.publisher }}

- {{ 'categories' | propertyNameTranslate: item | sentencecase }} + {{ 'categories' | propertyNameTranslate : item | sentencecase }} - {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }} diff --git a/frontend/app/src/app/modules/data/types/book/book-list-item.html b/frontend/app/src/app/modules/data/types/book/book-list-item.html index ad213ae5..402b6522 100644 --- a/frontend/app/src/app/modules/data/types/book/book-list-item.html +++ b/frontend/app/src/app/modules/data/types/book/book-list-item.html @@ -17,22 +17,23 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} {{ item.firstPublished }}{{ - [item.firstPublished, item.lastPublished] | join: ' - ' + [item.firstPublished, item.lastPublished] | join : ' - ' }}

- {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/data/types/catalog/catalog-detail-content.html b/frontend/app/src/app/modules/data/types/catalog/catalog-detail-content.html index e67413ac..6f7983a8 100644 --- a/frontend/app/src/app/modules/data/types/catalog/catalog-detail-content.html +++ b/frontend/app/src/app/modules/data/types/catalog/catalog-detail-content.html @@ -17,6 +17,6 @@ id="simple-data-list" [items]="items" [singleType]="true" - [listHeader]="'type' | thingTranslate: item | titlecase" + [listHeader]="'type' | thingTranslate : item | titlecase" [emptyListMessage]="'catalog.detail.EMPTY_CATALOG' | translate" > diff --git a/frontend/app/src/app/modules/data/types/catalog/catalog-list-item.html b/frontend/app/src/app/modules/data/types/catalog/catalog-list-item.html index 1fa3b8ca..bc739631 100644 --- a/frontend/app/src/app/modules/data/types/catalog/catalog-list-item.html +++ b/frontend/app/src/app/modules/data/types/catalog/catalog-list-item.html @@ -3,7 +3,7 @@
- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

{{ item.academicTerm.name }} diff --git a/frontend/app/src/app/modules/data/types/date-series/date-series-detail-content.html b/frontend/app/src/app/modules/data/types/date-series/date-series-detail-content.html index 4056340f..0464fad0 100644 --- a/frontend/app/src/app/modules/data/types/date-series/date-series-detail-content.html +++ b/frontend/app/src/app/modules/data/types/date-series/date-series-detail-content.html @@ -14,19 +14,19 @@ --> - {{ 'event' | propertyNameTranslate: item | titlecase }} + {{ 'event' | propertyNameTranslate : item | titlecase }} - {{ 'name' | thingTranslate: item.event }} + {{ 'name' | thingTranslate : item.event }} - {{ 'inPlace' | propertyNameTranslate: item | titlecase }} + {{ 'inPlace' | propertyNameTranslate : item | titlecase }} - {{ 'name' | thingTranslate: item.inPlace }} + {{ 'name' | thingTranslate : item.inPlace }} diff --git a/frontend/app/src/app/modules/data/types/date-series/date-series-list-item.html b/frontend/app/src/app/modules/data/types/date-series/date-series-list-item.html index 75ab4d5c..465329e2 100644 --- a/frontend/app/src/app/modules/data/types/date-series/date-series-list-item.html +++ b/frontend/app/src/app/modules/data/types/date-series/date-series-list-item.html @@ -17,13 +17,13 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ item.repeatFrequency | durationLocalized: true | sentencecase }}, - {{ item.dates[0] | dateFormat: 'weekday:long' }} + {{ item.repeatFrequency | durationLocalized : true | sentencecase }}, + {{ item.dates[0] | dateFormat : 'weekday:long' }} ({{ item.dates[0] | dateFormat }} - {{ item.dates[item.dates.length - 1] | dateFormat }}) @@ -31,7 +31,7 @@

{{ - 'categories' | thingTranslate: item.event | join: ', ' + 'categories' | thingTranslate : item.event | join : ', ' }}
diff --git a/frontend/app/src/app/modules/data/types/event/event-detail-content.html b/frontend/app/src/app/modules/data/types/event/event-detail-content.html index 8a6fbf5a..7b59c688 100644 --- a/frontend/app/src/app/modules/data/types/event/event-detail-content.html +++ b/frontend/app/src/app/modules/data/types/event/event-detail-content.html @@ -15,8 +15,8 @@ @@ -25,22 +25,22 @@ {{ - $any('superCatalogs' | propertyNameTranslate: 'catalog') | titlecase + $any('superCatalogs' | propertyNameTranslate : 'catalog') | titlecase }} diff --git a/frontend/app/src/app/modules/data/types/event/event-route-path.html b/frontend/app/src/app/modules/data/types/event/event-route-path.html index e0a10180..5436e1f8 100644 --- a/frontend/app/src/app/modules/data/types/event/event-route-path.html +++ b/frontend/app/src/app/modules/data/types/event/event-route-path.html @@ -21,7 +21,7 @@ > {{ - 'name' | thingTranslate: $any(item) + 'name' | thingTranslate : $any(item) }} @@ -55,6 +55,6 @@ - {{ 'name' | thingTranslate: $any(item) }} + {{ 'name' | thingTranslate : $any(item) }} diff --git a/frontend/app/src/app/modules/data/types/favorite/favorite-list-item.html b/frontend/app/src/app/modules/data/types/favorite/favorite-list-item.html index f72c387b..8b86b2aa 100644 --- a/frontend/app/src/app/modules/data/types/favorite/favorite-list-item.html +++ b/frontend/app/src/app/modules/data/types/favorite/favorite-list-item.html @@ -18,16 +18,16 @@
- {{ 'name' | thingTranslate: item }}: - {{ 'name' | thingTranslate: item.data }} + {{ 'name' | thingTranslate : item }}: + {{ 'name' | thingTranslate : item.data }}

- {{ 'type' | thingTranslate: item }} ({{ 'type' | thingTranslate: item.data }}) + {{ 'type' | thingTranslate : item }} ({{ 'type' | thingTranslate : item.data }})
diff --git a/frontend/app/src/app/modules/data/types/message/message-detail-content.html b/frontend/app/src/app/modules/data/types/message/message-detail-content.html index 898be3ff..5105b30f 100644 --- a/frontend/app/src/app/modules/data/types/message/message-detail-content.html +++ b/frontend/app/src/app/modules/data/types/message/message-detail-content.html @@ -15,26 +15,26 @@
@@ -55,7 +55,7 @@ - {{ 'sameAs' | propertyNameTranslate: item | titlecase }} + {{ 'sameAs' | propertyNameTranslate : item | titlecase }} diff --git a/frontend/app/src/app/modules/data/types/message/message-list-item.html b/frontend/app/src/app/modules/data/types/message/message-list-item.html index dede9103..59dc81ad 100644 --- a/frontend/app/src/app/modules/data/types/message/message-list-item.html +++ b/frontend/app/src/app/modules/data/types/message/message-list-item.html @@ -17,11 +17,11 @@
- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'type' | thingTranslate: item }} + {{ 'type' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/data/types/organization/organization-detail-content.html b/frontend/app/src/app/modules/data/types/organization/organization-detail-content.html index a34c8c27..ef914268 100644 --- a/frontend/app/src/app/modules/data/types/organization/organization-detail-content.html +++ b/frontend/app/src/app/modules/data/types/organization/organization-detail-content.html @@ -15,11 +15,11 @@ - {{ 'inPlace' | propertyNameTranslate: item | titlecase }} + {{ 'inPlace' | propertyNameTranslate : item | titlecase }} - {{ 'name' | thingTranslate: item.inPlace }} + {{ 'name' | thingTranslate : item.inPlace }}
- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'description' | thingTranslate: item }} + {{ 'description' | thingTranslate : item }}

- {{ 'type' | thingTranslate: item }} + {{ 'type' | thingTranslate : item }}
- {{ 'name' | thingTranslate: item.inPlace }} + {{ 'name' | thingTranslate : item.inPlace }} diff --git a/frontend/app/src/app/modules/data/types/periodical/periodical-detail-content.html b/frontend/app/src/app/modules/data/types/periodical/periodical-detail-content.html index 06b186ea..db6d3011 100644 --- a/frontend/app/src/app/modules/data/types/periodical/periodical-detail-content.html +++ b/frontend/app/src/app/modules/data/types/periodical/periodical-detail-content.html @@ -16,14 +16,14 @@ {{ 'hebisSearch.detail.title' | translate | sentencecase }} - + @@ -35,14 +35,14 @@ - {{ 'authors' | propertyNameTranslate: item | sentencecase }} + {{ 'authors' | propertyNameTranslate : item | sentencecase }} - {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} @@ -55,31 +55,31 @@ - {{ 'publications' | propertyNameTranslate: item | sentencecase }} + {{ 'publications' | propertyNameTranslate : item | sentencecase }}

- {{ publication.locations | join: ', ' }} + {{ publication.locations | join : ', ' }} {{ publication.locations && publication.publisher ? ':' : '' }} {{ publication.publisher }}

- {{ 'categories' | propertyNameTranslate: item | sentencecase }} + {{ 'categories' | propertyNameTranslate : item | sentencecase }} - {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }} diff --git a/frontend/app/src/app/modules/data/types/periodical/periodical-list-item.html b/frontend/app/src/app/modules/data/types/periodical/periodical-list-item.html index ad213ae5..402b6522 100644 --- a/frontend/app/src/app/modules/data/types/periodical/periodical-list-item.html +++ b/frontend/app/src/app/modules/data/types/periodical/periodical-list-item.html @@ -17,22 +17,23 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'name' | thingTranslate: author }} + {{ 'name' | thingTranslate : author }} {{ item.firstPublished }}{{ - [item.firstPublished, item.lastPublished] | join: ' - ' + [item.firstPublished, item.lastPublished] | join : ' - ' }}

- {{ 'categories' | thingTranslate: item }} + {{ 'categories' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/data/types/person/person-detail-content.html b/frontend/app/src/app/modules/data/types/person/person-detail-content.html index 47449724..f1c14a26 100644 --- a/frontend/app/src/app/modules/data/types/person/person-detail-content.html +++ b/frontend/app/src/app/modules/data/types/person/person-detail-content.html @@ -17,31 +17,31 @@ {{ i + 1 }}. - {{ 'type' | thingTranslate: contactPoint | titlecase }} + {{ 'type' | thingTranslate : contactPoint | titlecase }}

- {{ 'telephone' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'telephone' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.telephone }}

- {{ 'email' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'email' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.email }}

- {{ 'faxNumber' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'faxNumber' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.faxNumber }}

- {{ 'officeHours' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'officeHours' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.officeHours }}

- {{ 'url' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'url' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.url }}

- {{ 'areaServed' | propertyNameTranslate: contactPoint | titlecase }}: + {{ 'areaServed' | propertyNameTranslate : contactPoint | titlecase }}: {{ contactPoint.areaServed.name }}

@@ -49,6 +49,6 @@ diff --git a/frontend/app/src/app/modules/data/types/person/person-list-item.html b/frontend/app/src/app/modules/data/types/person/person-list-item.html index c4713f21..f1077940 100644 --- a/frontend/app/src/app/modules/data/types/person/person-list-item.html +++ b/frontend/app/src/app/modules/data/types/person/person-list-item.html @@ -18,7 +18,7 @@
- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }} , {{ item.honorificPrefix }}

diff --git a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-detail.component.ts b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-detail.component.ts index 63ddfc32..d1237163 100644 --- a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-detail.component.ts +++ b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-detail.component.ts @@ -17,7 +17,7 @@ import moment, {Moment} from 'moment'; import {AfterViewInit, Component, Input, OnDestroy} from '@angular/core'; import {SCDish, SCISO8601Date, SCPlace} from '@openstapps/core'; -import {PlaceMensaService} from './place-mensa-service'; +import {PlaceMensaService} from './place-mensa-service.js'; import {Router} from '@angular/router'; import {Subscription} from 'rxjs'; import {IonRouterOutlet} from '@ionic/angular'; diff --git a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-service.ts b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-service.ts index e18b4021..314c28b8 100644 --- a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-service.ts +++ b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa-service.ts @@ -17,7 +17,7 @@ import {Injectable} from '@angular/core'; import {SCDish, SCISO8601Date, SCPlace, SCSearchQuery, SCThingType} from '@openstapps/core'; import moment from 'moment'; import {DataProvider} from '../../../../data.provider'; -import {mapValues} from '../../../../../../_helpers/collections/map-values'; +import {mapValues} from '../../../../../../_helpers/collections/map-values.js'; import {SettingsProvider} from '../../../../../settings/settings.provider'; /** diff --git a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa.html b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa.html index 196534e5..28eb8bbb 100644 --- a/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa.html +++ b/frontend/app/src/app/modules/data/types/place/special/mensa/place-mensa.html @@ -19,10 +19,10 @@ {{ - day.key | dateFormat: 'weekday:long,month:numeric,day:numeric' + day.key | dateFormat : 'weekday:long,month:numeric,day:numeric' }} {{ - day.key | dateFormat: 'weekday:short,month:numeric,day:numeric' + day.key | dateFormat : 'weekday:short,month:numeric,day:numeric' }} diff --git a/frontend/app/src/app/modules/data/types/semester/semester-detail-content.html b/frontend/app/src/app/modules/data/types/semester/semester-detail-content.html index c6a34d9b..6f01a42c 100644 --- a/frontend/app/src/app/modules/data/types/semester/semester-detail-content.html +++ b/frontend/app/src/app/modules/data/types/semester/semester-detail-content.html @@ -16,9 +16,11 @@ diff --git a/frontend/app/src/app/modules/data/types/semester/semester-list-item.html b/frontend/app/src/app/modules/data/types/semester/semester-list-item.html index a43c981b..bcae688a 100644 --- a/frontend/app/src/app/modules/data/types/semester/semester-list-item.html +++ b/frontend/app/src/app/modules/data/types/semester/semester-list-item.html @@ -17,12 +17,12 @@

- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

{{ item.startDate | dateFormat }} - {{ item.endDate | dateFormat }}

- {{ 'type' | thingTranslate: item }} + {{ 'type' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/data/types/video/video-detail-content.html b/frontend/app/src/app/modules/data/types/video/video-detail-content.html index f6f05699..3802bd30 100644 --- a/frontend/app/src/app/modules/data/types/video/video-detail-content.html +++ b/frontend/app/src/app/modules/data/types/video/video-detail-content.html @@ -15,18 +15,18 @@ diff --git a/frontend/app/src/app/modules/data/types/video/video-list-item.html b/frontend/app/src/app/modules/data/types/video/video-list-item.html index abfe344e..32270524 100644 --- a/frontend/app/src/app/modules/data/types/video/video-list-item.html +++ b/frontend/app/src/app/modules/data/types/video/video-list-item.html @@ -2,18 +2,18 @@
- {{ 'name' | thingTranslate: item }} + {{ 'name' | thingTranslate : item }}

- {{ 'duration' | propertyNameTranslate: item | titlecase }}: - {{ item.duration | amDuration: 'seconds' }} + {{ 'duration' | propertyNameTranslate : item | titlecase }}: + {{ item.duration | amDuration : 'seconds' }}

- {{ 'type' | thingTranslate: item }} + {{ 'type' | thingTranslate : item }}
diff --git a/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.spec.ts b/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.spec.ts index 377bc32b..1e32e411 100644 --- a/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.spec.ts +++ b/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.spec.ts @@ -18,7 +18,7 @@ import {CUSTOM_ELEMENTS_SCHEMA} from '@angular/core'; import {ComponentFixture, TestBed} from '@angular/core/testing'; import {ActivatedRoute, RouterModule} from '@angular/router'; import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core'; -import {sampleThingsMap} from '../../../_helpers/data/sample-things'; +import {sampleThingsMap} from '../../../_helpers/data/sample-things.js'; import {HebisRoutingModule} from '../hebis-routing.module'; import {HebisModule} from '../hebis.module'; import {DaiaAvailabilityComponent} from './daia-availability.component'; diff --git a/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.ts b/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.ts index 1a709865..7a4003e4 100644 --- a/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.ts +++ b/frontend/app/src/app/modules/hebis/daia-availability/daia-availability.component.ts @@ -20,9 +20,9 @@ import {FavoritesService} from '../../favorites/favorites.service'; import {DataProvider} from '../../data/data.provider'; import {DataDetailComponent} from '../../data/detail/data-detail.component'; import {DaiaDataProvider} from '../daia-data.provider'; -import {DaiaHolding} from '../protocol/response'; +import {DaiaHolding} from '../protocol/response.js'; import {ModalController} from '@ionic/angular'; -import {groupByStable} from '../../../_helpers/collections/group-by'; +import {groupByStable} from '../../../_helpers/collections/group-by.js'; /** * A Component to display an SCThing detailed diff --git a/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.component.ts b/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.component.ts index f3c84298..df095fee 100644 --- a/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.component.ts +++ b/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.component.ts @@ -14,7 +14,7 @@ */ import {Component, Input, OnInit} from '@angular/core'; -import {DaiaHolding} from '../protocol/response'; +import {DaiaHolding} from '../protocol/response.js'; import {DaiaDataProvider} from '../daia-data.provider'; @Component({ diff --git a/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.html b/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.html index ff61f986..6d21aabe 100644 --- a/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.html +++ b/frontend/app/src/app/modules/hebis/daia-availability/daia-holding.html @@ -67,6 +67,6 @@ {{ 'hebisSearch.daia.dueDate' | translate }} - {{ holding.dueDate | amDateFormat: 'll' }} + {{ holding.dueDate | amDateFormat : 'll' }} diff --git a/frontend/app/src/app/modules/hebis/daia-data.provider.spec.ts b/frontend/app/src/app/modules/hebis/daia-data.provider.spec.ts index 9fefb831..a647e072 100644 --- a/frontend/app/src/app/modules/hebis/daia-data.provider.spec.ts +++ b/frontend/app/src/app/modules/hebis/daia-data.provider.spec.ts @@ -23,7 +23,7 @@ import {LoggerConfig, LoggerModule, NGXLogger} from 'ngx-logger'; import {MapModule} from '../map/map.module'; import {HttpClientModule} from '@angular/common/http'; import {StorageModule} from '../storage/storage.module'; -import {DaiaHolding, DaiaService} from './protocol/response'; +import {DaiaHolding, DaiaService} from './protocol/response.js'; import {Observable, of} from 'rxjs'; import {TranslateLoader, TranslateModule} from '@ngx-translate/core'; diff --git a/frontend/app/src/app/modules/hebis/daia-data.provider.ts b/frontend/app/src/app/modules/hebis/daia-data.provider.ts index 6ec60129..6df31a51 100644 --- a/frontend/app/src/app/modules/hebis/daia-data.provider.ts +++ b/frontend/app/src/app/modules/hebis/daia-data.provider.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {Injectable} from '@angular/core'; -import {DaiaAvailabilityResponse, DaiaHolding, DaiaService} from './protocol/response'; +import {DaiaAvailabilityResponse, DaiaHolding, DaiaService} from './protocol/response.js'; import {StorageProvider} from '../storage/storage.provider'; import {HttpClient, HttpHeaders} from '@angular/common/http'; import {ConfigProvider} from '../config/config.provider'; diff --git a/frontend/app/src/app/modules/hebis/hebis-data.provider.ts b/frontend/app/src/app/modules/hebis/hebis-data.provider.ts index 9c65a288..71cc187c 100644 --- a/frontend/app/src/app/modules/hebis/hebis-data.provider.ts +++ b/frontend/app/src/app/modules/hebis/hebis-data.provider.ts @@ -14,13 +14,13 @@ */ import {Injectable} from '@angular/core'; import {Client} from '@openstapps/api/lib/client'; -import {SCHebisSearchRequest} from './protocol/request'; -import {HebisSearchResponse} from './protocol/response'; +import {SCHebisSearchRequest} from './protocol/request.js'; +import {HebisSearchResponse} from './protocol/response.js'; import {StorageProvider} from '../storage/storage.provider'; import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider'; import {HttpClient} from '@angular/common/http'; import {DataProvider} from '../data/data.provider'; -import {SCHebisSearchRoute} from './protocol/route'; +import {SCHebisSearchRoute} from './protocol/route.js'; const HEBIS_PREFIX = 'HEB'; diff --git a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail-content.html b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail-content.html index 6ea8524b..727cbab2 100644 --- a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail-content.html +++ b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail-content.html @@ -38,8 +38,8 @@
diff --git a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.spec.ts b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.spec.ts index 55a69a31..69bb6e77 100644 --- a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.spec.ts +++ b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.spec.ts @@ -19,7 +19,7 @@ import {CUSTOM_ELEMENTS_SCHEMA} from '@angular/core'; import {ComponentFixture, TestBed} from '@angular/core/testing'; import {ActivatedRoute, RouterModule} from '@angular/router'; import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core'; -import {sampleThingsMap} from '../../../_helpers/data/sample-things'; +import {sampleThingsMap} from '../../../_helpers/data/sample-things.js'; import {HebisRoutingModule} from '../hebis-routing.module'; import {HebisModule} from '../hebis.module'; import {HebisDataProvider} from '../hebis-data.provider'; diff --git a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.ts b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.ts index c0f486ce..884f7729 100644 --- a/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.ts +++ b/frontend/app/src/app/modules/hebis/hebis-detail/hebis-detail.component.ts @@ -20,7 +20,7 @@ import {HebisDataProvider} from '../hebis-data.provider'; import {FavoritesService} from '../../favorites/favorites.service'; import {DataProvider} from '../../data/data.provider'; import {DataDetailComponent} from '../../data/detail/data-detail.component'; -import {DaiaHolding} from '../protocol/response'; +import {DaiaHolding} from '../protocol/response.js'; import {ModalController} from '@ionic/angular'; /** diff --git a/frontend/app/src/app/modules/library/account/checked-out/checked-out-page.component.ts b/frontend/app/src/app/modules/library/account/checked-out/checked-out-page.component.ts index 0c1a756b..f18702f4 100644 --- a/frontend/app/src/app/modules/library/account/checked-out/checked-out-page.component.ts +++ b/frontend/app/src/app/modules/library/account/checked-out/checked-out-page.component.ts @@ -14,7 +14,7 @@ */ import {Component} from '@angular/core'; -import {DocumentAction, PAIADocument, PAIADocumentStatus} from '../../types'; +import {DocumentAction, PAIADocument, PAIADocumentStatus} from '../../types.js'; import {LibraryAccountService} from '../library-account.service'; @Component({ diff --git a/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.component.ts b/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.component.ts index c526007f..790c89bb 100644 --- a/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.component.ts +++ b/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.component.ts @@ -14,7 +14,7 @@ */ import {Component, Input} from '@angular/core'; -import {PAIAFee} from '../../../types'; +import {PAIAFee} from '../../../types.js'; import {SCArticle, SCBook, SCPeriodical} from '@openstapps/core'; import {LibraryAccountService} from '../../library-account.service'; diff --git a/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.html b/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.html index fc6a6957..bb89d420 100644 --- a/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.html +++ b/frontend/app/src/app/modules/library/account/elements/fee-item/fee-item.html @@ -32,7 +32,7 @@ {{ fee[property] }} - {{ fee[property] | amDateFormat: 'll' }} + {{ fee[property] | amDateFormat : 'll' }}

diff --git a/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.component.ts b/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.component.ts index e08546e6..484c89c0 100644 --- a/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.component.ts +++ b/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.component.ts @@ -14,7 +14,7 @@ */ import {Component, EventEmitter, Input, Output} from '@angular/core'; -import {DocumentAction, PAIADocument} from '../../../types'; +import {DocumentAction, PAIADocument} from '../../../types.js'; @Component({ selector: 'stapps-paia-item', diff --git a/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.html b/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.html index 0831edd4..2845a24d 100644 --- a/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.html +++ b/frontend/app/src/app/modules/library/account/elements/paia-item/paiaitem.html @@ -24,7 +24,7 @@ {{ item[property] }} - {{ item[property] | amDateFormat: 'll' }} + {{ item[property] | amDateFormat : 'll' }}

diff --git a/frontend/app/src/app/modules/library/account/fines/fines-page.component.ts b/frontend/app/src/app/modules/library/account/fines/fines-page.component.ts index f530bc12..8fcd045a 100644 --- a/frontend/app/src/app/modules/library/account/fines/fines-page.component.ts +++ b/frontend/app/src/app/modules/library/account/fines/fines-page.component.ts @@ -1,6 +1,6 @@ import {Component} from '@angular/core'; import {LibraryAccountService} from '../library-account.service'; -import {PAIAFee} from '../../types'; +import {PAIAFee} from '../../types.js'; @Component({ selector: 'app-fines', diff --git a/frontend/app/src/app/modules/library/account/holds/holds-page.component.ts b/frontend/app/src/app/modules/library/account/holds/holds-page.component.ts index 0a0f2f2f..15da7a9b 100644 --- a/frontend/app/src/app/modules/library/account/holds/holds-page.component.ts +++ b/frontend/app/src/app/modules/library/account/holds/holds-page.component.ts @@ -14,7 +14,7 @@ */ import {Component} from '@angular/core'; -import {DocumentAction, PAIADocument, PAIADocumentStatus} from '../../types'; +import {DocumentAction, PAIADocument, PAIADocumentStatus} from '../../types.js'; import {LibraryAccountService} from '../library-account.service'; type Segment = 'orders' | 'reservations'; diff --git a/frontend/app/src/app/modules/library/account/library-account.service.ts b/frontend/app/src/app/modules/library/account/library-account.service.ts index f3d81d14..ea83aedb 100644 --- a/frontend/app/src/app/modules/library/account/library-account.service.ts +++ b/frontend/app/src/app/modules/library/account/library-account.service.ts @@ -20,14 +20,14 @@ import { SCFeatureConfiguration, SCFeatureConfigurationExtern, } from '@openstapps/core'; -import {DocumentAction, PAIADocument, PAIADocumentStatus, PAIAFees, PAIAItems, PAIAPatron} from '../types'; +import {DocumentAction, PAIADocument, PAIADocumentStatus, PAIAFees, PAIAItems, PAIAPatron} from '../types.js'; import {HebisDataProvider} from '../../hebis/hebis-data.provider'; -import {PAIATokenResponse} from '../../auth/paia/paia-token-response'; +import {PAIATokenResponse} from '../../auth/paia/paia-token-response.js'; import {AuthHelperService} from '../../auth/auth-helper.service'; import {ConfigProvider} from '../../config/config.provider'; import {TranslateService} from '@ngx-translate/core'; import {AlertController, ToastController} from '@ionic/angular'; -import {HebisSearchResponse} from '../../hebis/protocol/response'; +import {HebisSearchResponse} from '../../hebis/protocol/response.js'; @Injectable({ providedIn: 'root', diff --git a/frontend/app/src/app/modules/library/account/profile/profile-page.component.ts b/frontend/app/src/app/modules/library/account/profile/profile-page.component.ts index d3772aca..584f01ce 100644 --- a/frontend/app/src/app/modules/library/account/profile/profile-page.component.ts +++ b/frontend/app/src/app/modules/library/account/profile/profile-page.component.ts @@ -15,7 +15,7 @@ import {Component} from '@angular/core'; import {LibraryAccountService} from '../library-account.service'; -import {PAIAPatron} from '../../types'; +import {PAIAPatron} from '../../types.js'; @Component({ selector: 'app-profile', diff --git a/frontend/app/src/app/modules/library/account/profile/profile-page.html b/frontend/app/src/app/modules/library/account/profile/profile-page.html index e84e31fa..d4914ffa 100644 --- a/frontend/app/src/app/modules/library/account/profile/profile-page.html +++ b/frontend/app/src/app/modules/library/account/profile/profile-page.html @@ -38,7 +38,7 @@ {{ 'library.account.pages.profile.values.expires' | translate }}: {{ - patron[property] | amDateFormat: 'll' + patron[property] | amDateFormat : 'll' }} diff --git a/frontend/app/src/app/modules/map/map.provider.spec.ts b/frontend/app/src/app/modules/map/map.provider.spec.ts index 566eeaa5..608858e6 100644 --- a/frontend/app/src/app/modules/map/map.provider.spec.ts +++ b/frontend/app/src/app/modules/map/map.provider.spec.ts @@ -22,7 +22,7 @@ import {MapModule} from './map.module'; import {StorageModule} from '../storage/storage.module'; import {LoggerModule, NGXLogger, NgxLoggerLevel} from 'ngx-logger'; import {ConfigProvider} from '../config/config.provider'; -import {sampleDefaultPolygon} from '../../_helpers/data/sample-configuration'; +import {sampleDefaultPolygon} from '../../_helpers/data/sample-configuration.js'; import {RouterModule} from '@angular/router'; describe('MapProvider', () => { diff --git a/frontend/app/src/app/modules/map/map.provider.ts b/frontend/app/src/app/modules/map/map.provider.ts index 6ec931ae..adfbda63 100644 --- a/frontend/app/src/app/modules/map/map.provider.ts +++ b/frontend/app/src/app/modules/map/map.provider.ts @@ -25,9 +25,9 @@ import {Point, Polygon} from 'geojson'; import {divIcon, geoJSON, LatLng, Map, marker, Marker} from 'leaflet'; import {DataProvider} from '../data/data.provider'; import {MapPosition, PositionService} from './position.service'; -import {hasValidLocation} from '../data/types/place/place-types'; +import {hasValidLocation} from '../data/types/place/place-types.js'; import {ConfigProvider} from '../config/config.provider'; -import {SCIcon} from '../../util/ion-icon/icon'; +import {SCIcon} from '../../util/ion-icon/icon.js'; /** * Provides methods for presenting the map diff --git a/frontend/app/src/app/modules/menu/context/context-menu.component.spec.ts b/frontend/app/src/app/modules/menu/context/context-menu.component.spec.ts index eade660a..0ddaf7db 100644 --- a/frontend/app/src/app/modules/menu/context/context-menu.component.spec.ts +++ b/frontend/app/src/app/modules/menu/context/context-menu.component.spec.ts @@ -23,7 +23,7 @@ import {SCFacet, SCThingType} from '@openstapps/core'; import {ContextMenuComponent} from './context-menu.component'; import {SettingsModule} from '../../settings/settings.module'; import {ContextMenuService} from './context-menu.service'; -import {FilterContext, SortContext} from './context-type'; +import {FilterContext, SortContext} from './context-type.js'; import {Component} from '@angular/core'; import {By} from '@angular/platform-browser'; diff --git a/frontend/app/src/app/modules/menu/context/context-menu.component.ts b/frontend/app/src/app/modules/menu/context/context-menu.component.ts index 33cdafff..89270d69 100644 --- a/frontend/app/src/app/modules/menu/context/context-menu.component.ts +++ b/frontend/app/src/app/modules/menu/context/context-menu.component.ts @@ -17,7 +17,7 @@ import {LangChangeEvent, TranslateService} from '@ngx-translate/core'; import {SCLanguage, SCThingTranslator, SCThingType, SCTranslations} from '@openstapps/core'; import {Subscription} from 'rxjs'; import {ContextMenuService} from './context-menu.service'; -import {FilterContext, FilterFacet, SortContext, SortContextOption} from './context-type'; +import {FilterContext, FilterFacet, SortContext, SortContextOption} from './context-type.js'; /** * The context menu diff --git a/frontend/app/src/app/modules/menu/navigation/root-link.directive.ts b/frontend/app/src/app/modules/menu/navigation/root-link.directive.ts index 28345a40..4c2f8260 100644 --- a/frontend/app/src/app/modules/menu/navigation/root-link.directive.ts +++ b/frontend/app/src/app/modules/menu/navigation/root-link.directive.ts @@ -15,7 +15,7 @@ import {Directive, ElementRef, Input, OnDestroy, OnInit, Renderer2} from '@angular/core'; import {AnimationController, NavController} from '@ionic/angular'; import {Router, RouterEvent} from '@angular/router'; -import {tabsTransition} from './tabs-transition'; +import {tabsTransition} from './tabs-transition.js'; import {Subscription} from 'rxjs'; @Directive({ diff --git a/frontend/app/src/app/modules/menu/navigation/tabs.spec.ts b/frontend/app/src/app/modules/menu/navigation/tabs.spec.ts index 3a350346..48d3287a 100644 --- a/frontend/app/src/app/modules/menu/navigation/tabs.spec.ts +++ b/frontend/app/src/app/modules/menu/navigation/tabs.spec.ts @@ -20,7 +20,7 @@ import {RouterTestingModule} from '@angular/router/testing'; import {TabsComponent} from './tabs.component'; import {ConfigProvider} from '../../config/config.provider'; -import {sampleAuthConfiguration} from '../../../_helpers/data/sample-configuration'; +import {sampleAuthConfiguration} from '../../../_helpers/data/sample-configuration.js'; import {TranslateModule, TranslateService} from '@ngx-translate/core'; import {NGXLogger} from 'ngx-logger'; import {Platform} from '@ionic/angular'; diff --git a/frontend/app/src/app/modules/news/elements/news-filter-settings/news-settings-filter.component.ts b/frontend/app/src/app/modules/news/elements/news-filter-settings/news-settings-filter.component.ts index 8c3f7322..759aa5dc 100644 --- a/frontend/app/src/app/modules/news/elements/news-filter-settings/news-settings-filter.component.ts +++ b/frontend/app/src/app/modules/news/elements/news-filter-settings/news-settings-filter.component.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core'; -import {newsFilterSettingsFieldsMapping, NewsFilterSettingsNames} from '../../news-filter-settings'; +import {newsFilterSettingsFieldsMapping, NewsFilterSettingsNames} from '../../news-filter-settings.js'; import {SCSearchValueFilter, SCSetting} from '@openstapps/core'; import {DataProvider} from '../../../data/data.provider'; diff --git a/frontend/app/src/app/modules/news/news.provider.ts b/frontend/app/src/app/modules/news/news.provider.ts index c83c30aa..ee410b5c 100644 --- a/frontend/app/src/app/modules/news/news.provider.ts +++ b/frontend/app/src/app/modules/news/news.provider.ts @@ -27,7 +27,7 @@ import { newsFilterSettingsCategory, newsFilterSettingsFieldsMapping, NewsFilterSettingsNames, -} from './news-filter-settings'; +} from './news-filter-settings.js'; import {SettingsProvider} from '../settings/settings.provider'; /** diff --git a/frontend/app/src/app/modules/profile/page/profile-page-section.html b/frontend/app/src/app/modules/profile/page/profile-page-section.html index ac78accb..50aef702 100644 --- a/frontend/app/src/app/modules/profile/page/profile-page-section.html +++ b/frontend/app/src/app/modules/profile/page/profile-page-section.html @@ -13,7 +13,7 @@ ~ this program. If not, see . --> - + @@ -32,7 +32,7 @@ >
- {{ 'name' | translateSimple: link }} + {{ 'name' | translateSimple : link }}
diff --git a/frontend/app/src/app/modules/profile/page/profile-page.spec.ts b/frontend/app/src/app/modules/profile/page/profile-page.spec.ts index f2a60ace..10c22f43 100644 --- a/frontend/app/src/app/modules/profile/page/profile-page.spec.ts +++ b/frontend/app/src/app/modules/profile/page/profile-page.spec.ts @@ -21,7 +21,7 @@ import {AuthModule} from '../../auth/auth.module'; import {ProfilePageComponent} from './profile-page.component'; import {TranslateModule} from '@ngx-translate/core'; import {ConfigProvider} from '../../config/config.provider'; -import {sampleAuthConfiguration} from '../../../_helpers/data/sample-configuration'; +import {sampleAuthConfiguration} from '../../../_helpers/data/sample-configuration.js'; import {StorageProvider} from '../../storage/storage.provider'; import {ScheduleProvider} from '../../calendar/schedule.provider'; import {DataProvider} from '../../data/data.provider'; diff --git a/frontend/app/src/app/modules/schedule/page/calendar-view.component.ts b/frontend/app/src/app/modules/schedule/page/calendar-view.component.ts index 68faff56..285e7be1 100644 --- a/frontend/app/src/app/modules/schedule/page/calendar-view.component.ts +++ b/frontend/app/src/app/modules/schedule/page/calendar-view.component.ts @@ -15,8 +15,8 @@ import {AfterViewInit, Component, Input, OnDestroy, OnInit, ViewChild} from '@angular/core'; import {ActivatedRoute} from '@angular/router'; import moment from 'moment'; -import {materialFade, materialManualFade, materialSharedAxisX} from '../../../animation/material-motion'; -import {ScheduleResponsiveBreakpoint} from './schema/schema'; +import {materialFade, materialManualFade, materialSharedAxisX} from '../../../animation/material-motion.js'; +import {ScheduleResponsiveBreakpoint} from './schema/schema.js'; import {ScheduleProvider} from '../../calendar/schedule.provider'; import {CalendarComponent} from './components/calendar.component'; import {CalendarService} from '../../calendar/calendar.service'; diff --git a/frontend/app/src/app/modules/schedule/page/calendar-view.html b/frontend/app/src/app/modules/schedule/page/calendar-view.html index b0af6a04..8a97f9f4 100644 --- a/frontend/app/src/app/modules/schedule/page/calendar-view.html +++ b/frontend/app/src/app/modules/schedule/page/calendar-view.html @@ -26,7 +26,7 @@ (indexChange)="onHeaderSwipe($event, mainSwiper)" > -
+
{{ dateRange.startDate }} - {{ dateRange.endDate }} @@ -36,7 +36,7 @@ @@ -64,13 +64,13 @@ > diff --git a/frontend/app/src/app/modules/schedule/page/components/calendar.component.ts b/frontend/app/src/app/modules/schedule/page/components/calendar.component.ts index 092f5748..da37bced 100644 --- a/frontend/app/src/app/modules/schedule/page/components/calendar.component.ts +++ b/frontend/app/src/app/modules/schedule/page/components/calendar.component.ts @@ -16,15 +16,19 @@ import {Component, Input, OnDestroy, OnInit} from '@angular/core'; import {ActivatedRoute} from '@angular/router'; import {SCISO8601Date, SCUuid} from '@openstapps/core'; import moment, {Moment} from 'moment'; -import {materialFade, materialManualFade, materialSharedAxisX} from '../../../../animation/material-motion'; +import { + materialFade, + materialManualFade, + materialSharedAxisX, +} from '../../../../animation/material-motion.js'; import {ScheduleProvider} from '../../../calendar/schedule.provider'; -import {ScheduleEvent, ScheduleResponsiveBreakpoint} from '../schema/schema'; +import {ScheduleEvent, ScheduleResponsiveBreakpoint} from '../schema/schema.js'; import {SwiperComponent} from 'swiper/angular'; import {InfiniteSwiperComponent} from '../grid/infinite-swiper.component'; import {IonContent, IonDatetime} from '@ionic/angular'; import {Subscription} from 'rxjs'; import {CalendarService} from '../../../calendar/calendar.service'; -import {getScheduleCursorOffset} from '../grid/schedule-cursor-offset'; +import {getScheduleCursorOffset} from '../grid/schedule-cursor-offset.js'; /** * Component that displays the schedule diff --git a/frontend/app/src/app/modules/schedule/page/grid/infinite-swiper.component.ts b/frontend/app/src/app/modules/schedule/page/grid/infinite-swiper.component.ts index 815f740e..81ad3bc7 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/infinite-swiper.component.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/infinite-swiper.component.ts @@ -33,8 +33,8 @@ import { ViewContainerRef, } from '@angular/core'; import Swiper from 'swiper'; -import {materialManualFade} from '../../../../animation/material-motion'; -import {zip} from '../../../../_helpers/collections/zip'; +import {materialManualFade} from '../../../../animation/material-motion.js'; +import {zip} from '../../../../_helpers/collections/zip.js'; export interface SlideContext { $implicit: number; diff --git a/frontend/app/src/app/modules/schedule/page/grid/range-overlap.spec.ts b/frontend/app/src/app/modules/schedule/page/grid/range-overlap.spec.ts index c4883b59..0bb3c27c 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/range-overlap.spec.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/range-overlap.spec.ts @@ -14,8 +14,8 @@ */ /* eslint-disable @typescript-eslint/no-explicit-any */ -import {groupRangeOverlaps} from './range-overlap'; -import {shuffle} from '../../../../_helpers/collections/shuffle'; +import {groupRangeOverlaps} from './range-overlap.js'; +import {shuffle} from '../../../../_helpers/collections/shuffle.js'; interface SimpleRange { starty: number; diff --git a/frontend/app/src/app/modules/schedule/page/grid/range-overlap.ts b/frontend/app/src/app/modules/schedule/page/grid/range-overlap.ts index bba6a7b4..08ba0ade 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/range-overlap.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/range-overlap.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {partition} from '../../../../_helpers/collections/partition'; +import {partition} from '../../../../_helpers/collections/partition.js'; export interface RangeInfo { elements: T[]; diff --git a/frontend/app/src/app/modules/schedule/page/grid/schedule-card.component.ts b/frontend/app/src/app/modules/schedule/page/grid/schedule-card.component.ts index 41ae4ef6..8aeabcbb 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/schedule-card.component.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/schedule-card.component.ts @@ -15,7 +15,7 @@ import {Component, Input, OnInit} from '@angular/core'; import moment from 'moment'; import {ScheduleProvider} from '../../../calendar/schedule.provider'; -import {ScheduleEvent} from '../schema/schema'; +import {ScheduleEvent} from '../schema/schema.js'; /** * Component that can display a schedule event diff --git a/frontend/app/src/app/modules/schedule/page/grid/schedule-card.html b/frontend/app/src/app/modules/schedule/page/grid/schedule-card.html index d5ab3ded..0b316ca0 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/schedule-card.html +++ b/frontend/app/src/app/modules/schedule/page/grid/schedule-card.html @@ -26,7 +26,7 @@ {{ - this.scheduleEvent?.dateSeries?.event?.name | nullishCoalesce: this.scheduleEvent?.dateSeries?.name + this.scheduleEvent?.dateSeries?.event?.name | nullishCoalesce : this.scheduleEvent?.dateSeries?.name }} diff --git a/frontend/app/src/app/modules/schedule/page/grid/schedule-cursor.component.ts b/frontend/app/src/app/modules/schedule/page/grid/schedule-cursor.component.ts index dab8764e..85e1c0b4 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/schedule-cursor.component.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/schedule-cursor.component.ts @@ -13,9 +13,9 @@ * this program. If not, see . */ import {Component, Input, OnInit} from '@angular/core'; -import {HoursRange} from '../schema/schema'; +import {HoursRange} from '../schema/schema.js'; import moment from 'moment'; -import {getScheduleCursorOffset} from './schedule-cursor-offset'; +import {getScheduleCursorOffset} from './schedule-cursor-offset.js'; /** * Component that displays the schedule diff --git a/frontend/app/src/app/modules/schedule/page/grid/schedule-day.component.ts b/frontend/app/src/app/modules/schedule/page/grid/schedule-day.component.ts index f6e2d867..d1b50b29 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/schedule-day.component.ts +++ b/frontend/app/src/app/modules/schedule/page/grid/schedule-day.component.ts @@ -14,11 +14,11 @@ */ import {Component, HostListener, Input, OnInit} from '@angular/core'; import moment from 'moment'; -import {Range, ScheduleEvent, ScheduleResponsiveBreakpoint} from '../schema/schema'; +import {Range, ScheduleEvent, ScheduleResponsiveBreakpoint} from '../schema/schema.js'; import {ScheduleProvider} from '../../../calendar/schedule.provider'; import {SCISO8601Duration, SCUuid} from '@openstapps/core'; -import {materialFade} from '../../../../animation/material-motion'; -import {groupRangeOverlaps} from './range-overlap'; +import {materialFade} from '../../../../animation/material-motion.js'; +import {groupRangeOverlaps} from './range-overlap.js'; @Component({ selector: 'schedule-day', diff --git a/frontend/app/src/app/modules/schedule/page/grid/schedule-day.html b/frontend/app/src/app/modules/schedule/page/grid/schedule-day.html index 7607a04d..ff2a35ef 100644 --- a/frontend/app/src/app/modules/schedule/page/grid/schedule-day.html +++ b/frontend/app/src/app/modules/schedule/page/grid/schedule-day.html @@ -14,7 +14,7 @@ -->
- {{ day | amDateFormat: dateFormat }} + {{ day | amDateFormat : dateFormat }}
@@ -28,6 +28,6 @@
- +
diff --git a/frontend/app/src/app/modules/schedule/page/schedule-single-events.component.ts b/frontend/app/src/app/modules/schedule/page/schedule-single-events.component.ts index 01d3d42a..1ab6bc02 100644 --- a/frontend/app/src/app/modules/schedule/page/schedule-single-events.component.ts +++ b/frontend/app/src/app/modules/schedule/page/schedule-single-events.component.ts @@ -16,12 +16,12 @@ import {Component, Input, OnDestroy, OnInit} from '@angular/core'; import {SCDateSeries, SCUuid} from '@openstapps/core'; import moment from 'moment'; import {Subscription} from 'rxjs'; -import {materialFade} from '../../../animation/material-motion'; +import {materialFade} from '../../../animation/material-motion.js'; import {ScheduleProvider} from '../../calendar/schedule.provider'; -import {ScheduleEvent} from './schema/schema'; -import {groupBy} from '../../../_helpers/collections/group-by'; -import {omit} from '../../../_helpers/collections/omit'; -import {stringSortBy} from '../../../_helpers/collections/string-sort'; +import {ScheduleEvent} from './schema/schema.js'; +import {groupBy} from '../../../_helpers/collections/group-by.js'; +import {omit} from '../../../_helpers/collections/omit.js'; +import {stringSortBy} from '../../../_helpers/collections/string-sort.js'; /** * A single event diff --git a/frontend/app/src/app/modules/schedule/page/schedule-single-events.html b/frontend/app/src/app/modules/schedule/page/schedule-single-events.html index c6b216ea..d75e905c 100644 --- a/frontend/app/src/app/modules/schedule/page/schedule-single-events.html +++ b/frontend/app/src/app/modules/schedule/page/schedule-single-events.html @@ -17,7 +17,7 @@ - {{ day[0].day | amDateFormat: 'LL' }} + {{ day[0].day | amDateFormat : 'LL' }}
diff --git a/frontend/app/src/app/modules/schedule/page/schedule-view.component.ts b/frontend/app/src/app/modules/schedule/page/schedule-view.component.ts index 10729688..9ef9b06e 100644 --- a/frontend/app/src/app/modules/schedule/page/schedule-view.component.ts +++ b/frontend/app/src/app/modules/schedule/page/schedule-view.component.ts @@ -15,10 +15,10 @@ import {AfterViewInit, Component, Input, OnDestroy, OnInit, ViewChild} from '@angular/core'; import {ActivatedRoute} from '@angular/router'; import moment, {Moment} from 'moment'; -import {materialFade, materialManualFade, materialSharedAxisX} from '../../../animation/material-motion'; +import {materialFade, materialManualFade, materialSharedAxisX} from '../../../animation/material-motion.js'; import {ScheduleProvider} from '../../calendar/schedule.provider'; import {SCISO8601Date, SCUuid} from '@openstapps/core'; -import {ScheduleEvent, ScheduleResponsiveBreakpoint} from './schema/schema'; +import {ScheduleEvent, ScheduleResponsiveBreakpoint} from './schema/schema.js'; import {CalendarService} from '../../calendar/calendar.service'; import {CalendarComponent} from './components/calendar.component'; import {IonContent, IonDatetime} from '@ionic/angular'; diff --git a/frontend/app/src/app/modules/schedule/page/schedule-view.html b/frontend/app/src/app/modules/schedule/page/schedule-view.html index fda7b098..8fd1bbf7 100644 --- a/frontend/app/src/app/modules/schedule/page/schedule-view.html +++ b/frontend/app/src/app/modules/schedule/page/schedule-view.html @@ -26,7 +26,7 @@ (activeIndexChange)="syncSwiper(headerSwiper, mainSwiper)" > -
+
{{ dateRange.startDate }} - {{ dateRange.endDate }} @@ -36,7 +36,7 @@ @@ -71,7 +71,7 @@ [uuids]="uuids" [dateSeries]="testSchedule[i]" [layout]="layout" - [isLeftmost]="dateRange.startDate === (i | dateFromIndex: baselineDate).format('DD.MM.YY')" + [isLeftmost]="dateRange.startDate === (i | dateFromIndex : baselineDate).format('DD.MM.YY')" > diff --git a/frontend/app/src/app/modules/settings/item/settings-item.html b/frontend/app/src/app/modules/settings/item/settings-item.html index 0c0532e9..56c9c106 100644 --- a/frontend/app/src/app/modules/settings/item/settings-item.html +++ b/frontend/app/src/app/modules/settings/item/settings-item.html @@ -17,8 +17,8 @@ - {{ 'description' | thingTranslate: setting | titlecase }} + {{ 'description' | thingTranslate : setting | titlecase }}
@@ -79,7 +79,7 @@ >
- {{ ('values' | thingTranslate: setting)[i] | titlecase }} + {{ ('values' | thingTranslate : setting)[i] | titlecase }}
{{ val }}
@@ -91,7 +91,7 @@
- {{ ('values' | thingTranslate: setting)[i] | titlecase }} + {{ ('values' | thingTranslate : setting)[i] | titlecase }}
{{ val }}
diff --git a/frontend/app/src/app/modules/settings/page/calendar-sync-settings.component.ts b/frontend/app/src/app/modules/settings/page/calendar-sync-settings.component.ts index ed7d4454..2a86a298 100644 --- a/frontend/app/src/app/modules/settings/page/calendar-sync-settings.component.ts +++ b/frontend/app/src/app/modules/settings/page/calendar-sync-settings.component.ts @@ -26,7 +26,7 @@ import {TranslateService} from '@ngx-translate/core'; import {StorageProvider} from '../../storage/storage.provider'; import {ScheduleSyncService} from '../../background/schedule/schedule-sync.service'; import {CalendarService} from '../../calendar/calendar.service'; -import {getNativeCalendarExport} from '../../calendar/ical/ical'; +import {getNativeCalendarExport} from '../../calendar/ical/ical.js'; import {ThingTranslateService} from '../../../translation/thing-translate.service'; import { CALENDAR_NOTIFICATIONS_ENABLED_KEY, @@ -34,7 +34,7 @@ import { CALENDAR_SYNC_KEYS, calendarSettingStorageKey, getCalendarSetting, -} from './calendar-sync-settings-keys'; +} from './calendar-sync-settings-keys.js'; @Component({ selector: 'calendar-sync-settings', diff --git a/frontend/app/src/app/modules/settings/settings.provider.ts b/frontend/app/src/app/modules/settings/settings.provider.ts index 62aac587..da4423cd 100644 --- a/frontend/app/src/app/modules/settings/settings.provider.ts +++ b/frontend/app/src/app/modules/settings/settings.provider.ts @@ -346,8 +346,11 @@ export class SettingsProvider { // iterate through setting keys of category for (const settingKey of Object.keys(this.settingsCache[categoryKey].settings)) { // if saved setting value exists set it, otherwise set to default value - this.settingsCache[categoryKey].settings[settingKey].value = valuesContainer[categoryKey] !== undefined && - valuesContainer[categoryKey][settingKey] !== undefined ? valuesContainer[categoryKey][settingKey] : this.settingsCache[categoryKey].settings[settingKey].defaultValue; + this.settingsCache[categoryKey].settings[settingKey].value = + valuesContainer[categoryKey] !== undefined && + valuesContainer[categoryKey][settingKey] !== undefined + ? valuesContainer[categoryKey][settingKey] + : this.settingsCache[categoryKey].settings[settingKey].defaultValue; } } await this.saveSettingValues(); diff --git a/frontend/app/src/app/translation/common-string-pipes.ts b/frontend/app/src/app/translation/common-string-pipes.ts index 1a6d3ca4..36464a7d 100644 --- a/frontend/app/src/app/translation/common-string-pipes.ts +++ b/frontend/app/src/app/translation/common-string-pipes.ts @@ -17,7 +17,7 @@ import {Injectable, OnDestroy, Pipe, PipeTransform} from '@angular/core'; import {LangChangeEvent, TranslateService} from '@ngx-translate/core'; import moment from 'moment'; import {Subscription} from 'rxjs'; -import {logger} from '../_helpers/ts-logger'; +import {logger} from '../_helpers/ts-logger.js'; import opening_hours from 'opening_hours'; @Injectable() diff --git a/frontend/app/src/app/translation/thing-translate.module.ts b/frontend/app/src/app/translation/thing-translate.module.ts index 707c75e1..e81b8391 100644 --- a/frontend/app/src/app/translation/thing-translate.module.ts +++ b/frontend/app/src/app/translation/thing-translate.module.ts @@ -27,7 +27,7 @@ import { SentenceCasePipe, StringSplitPipe, ToUnixPipe, -} from './common-string-pipes'; +} from './common-string-pipes.js'; import {ThingTranslateDefaultParser, ThingTranslateParser} from './thing-translate.parser'; import {ThingTranslatePipe} from './thing-translate.pipe'; import {ThingTranslateService} from './thing-translate.service'; diff --git a/frontend/app/src/app/translation/translate-simple.pipe.ts b/frontend/app/src/app/translation/translate-simple.pipe.ts index 0108a415..c9a16b0a 100644 --- a/frontend/app/src/app/translation/translate-simple.pipe.ts +++ b/frontend/app/src/app/translation/translate-simple.pipe.ts @@ -14,7 +14,7 @@ */ import {Injectable, OnDestroy, Pipe, PipeTransform} from '@angular/core'; import {TranslateService} from '@ngx-translate/core'; -import {get} from '../_helpers/collections/get'; +import {get} from '../_helpers/collections/get.js'; import {Subscription} from 'rxjs'; @Injectable() diff --git a/frontend/app/src/app/util/edit-modal.component.ts b/frontend/app/src/app/util/edit-modal.component.ts index 4775dc96..87f9c26b 100644 --- a/frontend/app/src/app/util/edit-modal.component.ts +++ b/frontend/app/src/app/util/edit-modal.component.ts @@ -22,7 +22,7 @@ import { IonRouterOutlet, ModalController, } from '@ionic/angular'; -import {pendingChangesActionSheet, PendingChangesRole} from './pending-changes-action-sheet'; +import {pendingChangesActionSheet, PendingChangesRole} from './pending-changes-action-sheet.js'; import {TranslatePipe} from '@ngx-translate/core'; @Component({ diff --git a/frontend/app/src/app/util/ion-icon/icon-match.spec.ts b/frontend/app/src/app/util/ion-icon/icon-match.spec.ts index 088d0676..c19ea8ad 100644 --- a/frontend/app/src/app/util/ion-icon/icon-match.spec.ts +++ b/frontend/app/src/app/util/ion-icon/icon-match.spec.ts @@ -14,7 +14,7 @@ */ /* eslint-disable unicorn/no-null */ -import {matchPropertyContent, matchTagProperties} from './icon-match'; +import {matchPropertyContent, matchTagProperties} from './icon-match.js'; describe('matchTagProperties', function () { const regex = matchTagProperties('test'); diff --git a/frontend/app/src/app/util/ion-icon/ion-back-button.directive.ts b/frontend/app/src/app/util/ion-icon/ion-back-button.directive.ts index dd9df2bc..f11eb44d 100644 --- a/frontend/app/src/app/util/ion-icon/ion-back-button.directive.ts +++ b/frontend/app/src/app/util/ion-icon/ion-back-button.directive.ts @@ -14,8 +14,8 @@ */ import {Directive, ElementRef, Host, Optional, Self, ViewContainerRef} from '@angular/core'; -import {SCIcon} from './icon'; -import {IconReplacer} from './replace-util'; +import {SCIcon} from './icon.js'; +import {IconReplacer} from './replace-util.js'; import {TranslateService} from '@ngx-translate/core'; import {Subscription} from 'rxjs'; import {IonBackButton} from '@ionic/angular'; diff --git a/frontend/app/src/app/util/ion-icon/ion-breadcrumb.directive.ts b/frontend/app/src/app/util/ion-icon/ion-breadcrumb.directive.ts index e9139ae1..2f38f991 100644 --- a/frontend/app/src/app/util/ion-icon/ion-breadcrumb.directive.ts +++ b/frontend/app/src/app/util/ion-icon/ion-breadcrumb.directive.ts @@ -14,8 +14,8 @@ */ import {Directive, ElementRef, ViewContainerRef} from '@angular/core'; -import {SCIcon} from './icon'; -import {IconReplacer} from './replace-util'; +import {SCIcon} from './icon.js'; +import {IconReplacer} from './replace-util.js'; @Directive({ selector: 'ion-breadcrumb', diff --git a/frontend/app/src/app/util/ion-icon/ion-reorder.directive.ts b/frontend/app/src/app/util/ion-icon/ion-reorder.directive.ts index bbac84b9..5ea2b6bd 100644 --- a/frontend/app/src/app/util/ion-icon/ion-reorder.directive.ts +++ b/frontend/app/src/app/util/ion-icon/ion-reorder.directive.ts @@ -14,8 +14,8 @@ */ import {Directive, ElementRef, ViewContainerRef} from '@angular/core'; -import {SCIcon} from './icon'; -import {IconReplacer} from './replace-util'; +import {SCIcon} from './icon.js'; +import {IconReplacer} from './replace-util.js'; @Directive({ selector: 'ion-reorder', diff --git a/frontend/app/src/app/util/ion-icon/ion-searchbar.directive.ts b/frontend/app/src/app/util/ion-icon/ion-searchbar.directive.ts index d9f6d324..c0738d0f 100644 --- a/frontend/app/src/app/util/ion-icon/ion-searchbar.directive.ts +++ b/frontend/app/src/app/util/ion-icon/ion-searchbar.directive.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {Directive, ElementRef, ViewContainerRef} from '@angular/core'; -import {SCIcon} from './icon'; -import {IconReplacer} from './replace-util'; +import {SCIcon} from './icon.js'; +import {IconReplacer} from './replace-util.js'; @Directive({ selector: 'ion-searchbar', diff --git a/frontend/app/src/app/util/lazy.pipe.ts b/frontend/app/src/app/util/lazy.pipe.ts index 23079153..e865a0f4 100644 --- a/frontend/app/src/app/util/lazy.pipe.ts +++ b/frontend/app/src/app/util/lazy.pipe.ts @@ -17,7 +17,7 @@ import {Observable} from 'rxjs'; import {Pipe, PipeTransform} from '@angular/core'; import {SCSaveableThing, SCThings, SCUuid} from '@openstapps/core'; import {DataProvider, DataScope} from '../modules/data/data.provider'; -import {get} from '../_helpers/collections/get'; +import {get} from '../_helpers/collections/get.js'; @Pipe({ name: 'lazyThing', diff --git a/frontend/app/src/app/util/opening-hours.html b/frontend/app/src/app/util/opening-hours.html index 29d7af42..46fc9117 100644 --- a/frontend/app/src/app/util/opening-hours.html +++ b/frontend/app/src/app/util/opening-hours.html @@ -17,18 +17,18 @@
- {{ openingHours | openingHours | slice: 1:2 }} + {{ openingHours | openingHours | slice : 1 : 2 }} - {{ openingHours | openingHours | slice: 1:2 }} + {{ openingHours | openingHours | slice : 1 : 2 }} - {{ openingHours | openingHours | slice: 2:3 }} + {{ openingHours | openingHours | slice : 2 : 3 }}
diff --git a/frontend/app/src/main.ts b/frontend/app/src/main.ts index bac43391..fd824be1 100644 --- a/frontend/app/src/main.ts +++ b/frontend/app/src/main.ts @@ -15,7 +15,7 @@ import {enableProdMode} from '@angular/core'; import {platformBrowserDynamic} from '@angular/platform-browser-dynamic'; import {AppModule} from './app/app.module'; -import {environment} from './environments/environment'; +import {environment} from './environments/environment.js'; if (environment.production) { enableProdMode(); diff --git a/package.json b/package.json index 10ea793d..c8a86255 100644 --- a/package.json +++ b/package.json @@ -9,11 +9,13 @@ "lint": "dotenv -c -- turbo run lint", "lint:fix": "dotenv -c -- turbo run lint:fix", "syncpack": "syncpack list-mismatches && syncpack lint-semver-ranges", - "syncpack:fix": "syncpack format && syncpack fix-mismatches" + "syncpack:fix": "syncpack format && syncpack fix-mismatches", + "publish-packages": "dotenv -c -- turbo run build format lint test && changeset version && changeset publish" }, "devDependencies": { "dotenv-cli": "7.1.0", "syncpack": "9.8.4", - "turbo": "1.8.3" + "turbo": "1.8.3", + "@changesets/cli": "2.26.0" } } diff --git a/packages/api/app.js b/packages/api/app.js index 19bbfa61..d233e644 100644 --- a/packages/api/app.js +++ b/packages/api/app.js @@ -1,2 +1,2 @@ #!/usr/bin/env node -require('./lib/cli.js') +import './lib/cli.js' diff --git a/packages/api/package.json b/packages/api/package.json index 7cb6faae..1b2398b3 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/api", "description": "Node.js library to interact with the StApps backend service", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/api.git", "author": "Karl-Philipp Wulfert ", @@ -19,10 +20,9 @@ "openstapps-api": "app.js" }, "scripts": { - "build": "npm run lint && npm run compile", + "build": "rimraf lib && tsc", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md && git commit -m 'docs: update changelog'", "check-configuration": "openstapps-configuration", - "compile": "rimraf lib && tsc", "documentation": "typedoc --includeVersion --out docs --readme README.md --listInvalidSymbolLinks --entryPointStrategy expand src", "lint": "eslint --ext .ts src/", "postversion": "npm run changelog", @@ -87,8 +87,8 @@ "prettier": "2.8.8", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "peerDependencies": { "@openstapps/core": "~2.1.0" diff --git a/packages/api/src/bulk.ts b/packages/api/src/bulk.ts index 2c08f5d7..899ceef1 100644 --- a/packages/api/src/bulk.ts +++ b/packages/api/src/bulk.ts @@ -21,8 +21,8 @@ import { SCThings, SCThingType, } from '@openstapps/core'; -import {Client} from './client'; -import {BulkWithMultipleTypesError} from './errors'; +import {Client} from './client.js'; +import {BulkWithMultipleTypesError} from './errors.js'; /** * A bulk diff --git a/packages/api/src/cli.ts b/packages/api/src/cli.ts index fc334eb9..65dee471 100644 --- a/packages/api/src/cli.ts +++ b/packages/api/src/cli.ts @@ -19,10 +19,10 @@ import {readFileSync} from 'fs'; import path from 'path'; import {URL} from 'url'; import waitOn from 'wait-on'; -import {copy} from './copy'; +import {copy} from './copy.js'; // eslint-disable-next-line unicorn/prevent-abbreviations -import {e2eRun} from './e2e'; -import {HttpClient} from './http-client'; +import {e2eRun} from './e2e.js'; +import {HttpClient} from './http-client.js'; process.on('unhandledRejection', async error => { await Logger.error('unhandledRejection', error); diff --git a/packages/api/src/client.ts b/packages/api/src/client.ts index 9cd6e359..13c071aa 100644 --- a/packages/api/src/client.ts +++ b/packages/api/src/client.ts @@ -31,8 +31,8 @@ import { SCSearchRoute, SCThings, } from '@openstapps/core'; -import {ApiError, CoreVersionIncompatibleError, OutOfRangeError, PluginNotAvailableError} from './errors'; -import {HttpClientHeaders, HttpClientInterface} from './http-client-interface'; +import {ApiError, CoreVersionIncompatibleError, OutOfRangeError, PluginNotAvailableError} from './errors.js'; +import {HttpClientHeaders, HttpClientInterface} from './http-client-interface.js'; /** * StApps-API client diff --git a/packages/api/src/connector-client.ts b/packages/api/src/connector-client.ts index b2fc47e1..db66f43e 100644 --- a/packages/api/src/connector-client.ts +++ b/packages/api/src/connector-client.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {asyncPool} from '@krlwlfrt/async-pool/lib/async-pool'; +import {asyncPool} from '@krlwlfrt/async-pool/lib/async-pool.js'; import { isThing, SCAssociatedThingWithoutReferences, @@ -28,9 +28,9 @@ import { import moment from 'moment'; import clone = require('rfdc'); import {v5} from 'uuid'; -import {Bulk} from './bulk'; -import {Client} from './client'; -import {EmptyBulkError, NamespaceNotDefinedError} from './errors'; +import {Bulk} from './bulk.js'; +import {Client} from './client.js'; +import {EmptyBulkError, NamespaceNotDefinedError} from './errors.js'; /** * StApps-API client @@ -187,7 +187,7 @@ export class ConnectorClient extends Client { */ async bulk(type: SCThingType, source: string, timeout?: number): Promise> { // set default value for timeout to one hour - const bulkTimeout = typeof timeout !== 'number' ? ConnectorClient.BULK_TIMEOUT : timeout; + const bulkTimeout = typeof timeout === 'number' ? timeout : ConnectorClient.BULK_TIMEOUT; const bulkData = await this.invokeRoute(this.bulkRoute, undefined, { expiration: moment().add(bulkTimeout, 'seconds').format(), diff --git a/packages/api/src/copy.ts b/packages/api/src/copy.ts index 819437f0..c852110a 100644 --- a/packages/api/src/copy.ts +++ b/packages/api/src/copy.ts @@ -12,13 +12,13 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {asyncPool} from '@krlwlfrt/async-pool/lib/async-pool'; +import {asyncPool} from '@krlwlfrt/async-pool/lib/async-pool.js'; import {SCSearchRequest, SCThingType} from '@openstapps/core'; import {Bar} from 'cli-progress'; -import {Client} from './client'; -import {ConnectorClient} from './connector-client'; -import {OutOfRangeError} from './errors'; -import {HttpClientInterface} from './http-client-interface'; +import {Client} from './client.js'; +import {ConnectorClient} from './connector-client.js'; +import {OutOfRangeError} from './errors.js'; +import {HttpClientInterface} from './http-client-interface.js'; /** * Options to set up copying data from one backend to another diff --git a/packages/api/src/e2e.ts b/packages/api/src/e2e.ts index 9c86128b..fc435932 100644 --- a/packages/api/src/e2e.ts +++ b/packages/api/src/e2e.ts @@ -20,8 +20,8 @@ import {deepStrictEqual} from 'assert'; import {readdir, readFile} from 'fs'; import path from 'path'; import {promisify} from 'util'; -import {ConnectorClient} from './connector-client'; -import {HttpClientInterface} from './http-client-interface'; +import {ConnectorClient} from './connector-client.js'; +import {HttpClientInterface} from './http-client-interface.js'; const localItemMap: Map = new Map(); const remoteItemMap: Map = new Map(); diff --git a/packages/api/src/plugin-client.ts b/packages/api/src/plugin-client.ts index 71da329c..b9b88598 100644 --- a/packages/api/src/plugin-client.ts +++ b/packages/api/src/plugin-client.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {SCPluginRegisterRequest, SCPluginRegisterRoute} from '@openstapps/core'; -import {ConnectorClient} from './connector-client'; -import {Plugin} from './plugin'; +import {ConnectorClient} from './connector-client.js'; +import {Plugin} from './plugin.js'; /** * The PluginClient for registering and unregistering HTTP Plugins diff --git a/packages/api/src/plugin.ts b/packages/api/src/plugin.ts index 1a2fa154..66cab943 100644 --- a/packages/api/src/plugin.ts +++ b/packages/api/src/plugin.ts @@ -12,8 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ - -import {Converter} from '@openstapps/core-tools/lib/schema'; +import {Converter} from '@openstapps/core-tools/lib/schema.js'; import {Logger} from '@openstapps/logger'; import bodyParser from 'body-parser'; import express from 'express'; @@ -126,7 +125,7 @@ export abstract class Plugin { this.app.use(bodyParser.json()); this.port = Plugin.normalizePort( /* istanbul ignore next */ - typeof process.env.PORT !== 'undefined' ? process.env.PORT : port.toString(), + typeof process.env.PORT === 'undefined' ? port.toString() : process.env.PORT, ); this.app.set('port', this.port); @@ -175,18 +174,21 @@ export abstract class Plugin { // handle specific listen errors with friendly messages switch (error.code) { - case 'EACCES': + case 'EACCES': { // tslint:disable-next-line:no-floating-promises Logger.error(`${bind} requires elevated privileges`); process.exit(1); break; - case 'EADDRINUSE': + } + case 'EADDRINUSE': { // tslint:disable-next-line:no-floating-promises Logger.error(`${bind} is already in use`); process.exit(1); break; - default: + } + default: { throw error; + } } } diff --git a/packages/api/test/bulk.spec.ts b/packages/api/test/bulk.spec.ts index 07fe8e41..1d97604b 100644 --- a/packages/api/test/bulk.spec.ts +++ b/packages/api/test/bulk.spec.ts @@ -19,10 +19,10 @@ import chaiAsPromised from 'chai-as-promised'; import chaiSpies from 'chai-spies'; import {suite, test} from '@testdeck/mocha'; import moment from 'moment'; -import {Bulk} from '../src/bulk'; -import {Client} from '../src/client'; -import {BulkWithMultipleTypesError} from '../src/errors'; -import {HttpClient} from '../src/http-client'; +import {Bulk} from '../src/bulk.js'; +import {Client} from '../src/client.js'; +import {BulkWithMultipleTypesError} from '../src/errors.js'; +import {HttpClient} from '../src/http-client.js'; chai.should(); chai.use(chaiSpies); diff --git a/packages/api/test/client.spec.ts b/packages/api/test/client.spec.ts index f62fa7da..eaec54d5 100644 --- a/packages/api/test/client.spec.ts +++ b/packages/api/test/client.spec.ts @@ -29,10 +29,10 @@ import chai from 'chai'; import chaiAsPromised from 'chai-as-promised'; import chaiSpies from 'chai-spies'; import {suite, test} from '@testdeck/mocha'; -import {Client} from '../src/client'; -import {ApiError, OutOfRangeError} from '../src/errors'; -import {HttpClient} from '../src/http-client'; -import {HttpClientResponse} from '../src/http-client-interface'; +import {Client} from '../src/client.js'; +import {ApiError, OutOfRangeError} from '../src/errors.js'; +import {HttpClient} from '../src/http-client.js'; +import {HttpClientResponse} from '../src/http-client-interface.js'; chai.should(); chai.use(chaiSpies); diff --git a/packages/api/test/connector-client.spec.ts b/packages/api/test/connector-client.spec.ts index d19fc2d6..1597b3ac 100644 --- a/packages/api/test/connector-client.spec.ts +++ b/packages/api/test/connector-client.spec.ts @@ -39,10 +39,10 @@ import moment from 'moment'; import {join, resolve} from 'path'; import traverse from 'traverse'; import {promisify} from 'util'; -import {ConnectorClient} from '../src/connector-client'; -import {EmptyBulkError, NamespaceNotDefinedError} from '../src/errors'; -import {HttpClient} from '../src/http-client'; -import {HttpClientRequest, HttpClientResponse} from '../src/http-client-interface'; +import {ConnectorClient} from '../src/connector-client.js'; +import {EmptyBulkError, NamespaceNotDefinedError} from '../src/errors.js'; +import {HttpClient} from '../src/http-client.js'; +import {HttpClientRequest, HttpClientResponse} from '../src/http-client-interface.js'; chai.should(); chai.use(chaiSpies); diff --git a/packages/api/test/copy.spec.ts b/packages/api/test/copy.spec.ts index 507dc88a..feb6accd 100644 --- a/packages/api/test/copy.spec.ts +++ b/packages/api/test/copy.spec.ts @@ -29,9 +29,9 @@ import chaiAsPromised from 'chai-as-promised'; import chaiSpies from 'chai-spies'; import {suite, test} from '@testdeck/mocha'; import moment from 'moment'; -import {copy} from '../src/copy'; -import {ApiError} from '../src/errors'; -import {HttpClient, RequestOptions, Response} from '../src/http-client'; +import {copy} from '../src/copy.js'; +import {ApiError} from '../src/errors.js'; +import {HttpClient, RequestOptions, Response} from '../src/http-client.js'; import {RecursivePartial} from './client.spec'; chai.should(); diff --git a/packages/api/test/e2e.spec.ts b/packages/api/test/e2e.spec.ts index fa37d5b6..a66cc914 100644 --- a/packages/api/test/e2e.spec.ts +++ b/packages/api/test/e2e.spec.ts @@ -34,9 +34,9 @@ import {existsSync, mkdirSync, rmdirSync, unlinkSync} from 'fs'; import {createFileSync} from 'fs-extra'; import {suite, test} from '@testdeck/mocha'; import {join} from 'path'; -import {e2eRun, getItemsFromSamples} from '../src/e2e'; -import {ApiError} from '../src/errors'; -import {HttpClient, RequestOptions, Response} from '../src/http-client'; +import {e2eRun, getItemsFromSamples} from '../src/e2e.js'; +import {ApiError} from '../src/errors.js'; +import {HttpClient, RequestOptions, Response} from '../src/http-client.js'; import {RecursivePartial} from './client.spec'; chai.should(); diff --git a/packages/api/test/errors.spec.ts b/packages/api/test/errors.spec.ts index 70713e70..f13164c6 100644 --- a/packages/api/test/errors.spec.ts +++ b/packages/api/test/errors.spec.ts @@ -17,7 +17,7 @@ import {expect} from 'chai'; import chaiAsPromised from 'chai-as-promised'; import chaiSpies from 'chai-spies'; import {suite, test} from '@testdeck/mocha'; -import {ApiError} from '../src/errors'; +import {ApiError} from '../src/errors.js'; chai.should(); chai.use(chaiSpies); diff --git a/packages/api/test/http-client.spec.ts b/packages/api/test/http-client.spec.ts index 1bfc133c..5700ebfb 100644 --- a/packages/api/test/http-client.spec.ts +++ b/packages/api/test/http-client.spec.ts @@ -15,7 +15,7 @@ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; import nock from 'nock'; -import {HttpClient} from '../src/http-client'; +import {HttpClient} from '../src/http-client.js'; // TODO: use after each to clean up the nock (then there is no need for numerated resource links) diff --git a/packages/api/test/plugin-client.spec.ts b/packages/api/test/plugin-client.spec.ts index c1cc8079..f6505d25 100644 --- a/packages/api/test/plugin-client.spec.ts +++ b/packages/api/test/plugin-client.spec.ts @@ -17,10 +17,10 @@ import chai from 'chai'; import {expect} from 'chai'; import chaiSpies from 'chai-spies'; import {suite, test, timeout} from '@testdeck/mocha'; -import {HttpClient} from '../src/http-client'; -import {HttpClientResponse} from '../src/http-client-interface'; -import {PluginClient} from '../src/plugin-client'; -import {TestPlugin} from './plugin-resources/test-plugin'; +import {HttpClient} from '../src/http-client.js'; +import {HttpClientResponse} from '../src/http-client-interface.js'; +import {PluginClient} from '../src/plugin-client.js'; +import {TestPlugin} from './plugin-resources/test-plugin.js'; chai.use(chaiSpies); diff --git a/packages/api/test/plugin-resources/test-plugin.ts b/packages/api/test/plugin-resources/test-plugin.ts index 163ae8c6..a8b3404b 100644 --- a/packages/api/test/plugin-resources/test-plugin.ts +++ b/packages/api/test/plugin-resources/test-plugin.ts @@ -14,7 +14,7 @@ */ import * as express from 'express'; -import {Plugin} from '../../src/plugin'; +import {Plugin} from '../../src/plugin.js'; /** * A test plugin we use for all the tests diff --git a/packages/api/test/plugin.spec.ts b/packages/api/test/plugin.spec.ts index 7bbc548b..68f8191f 100644 --- a/packages/api/test/plugin.spec.ts +++ b/packages/api/test/plugin.spec.ts @@ -20,8 +20,8 @@ import chaiSpies from 'chai-spies'; import {readFileSync} from 'fs'; import {suite, test, timeout} from '@testdeck/mocha'; import {resolve} from 'path'; -import {HttpClient} from '../src/http-client'; -import {TestPlugin} from './plugin-resources/test-plugin'; +import {HttpClient} from '../src/http-client.js'; +import {TestPlugin} from './plugin-resources/test-plugin.js'; chai.use(chaiSpies); diff --git a/packages/collection-utils/package.json b/packages/collection-utils/package.json index e875ec20..5196f868 100644 --- a/packages/collection-utils/package.json +++ b/packages/collection-utils/package.json @@ -1,6 +1,7 @@ { "name": "@openstapps/collection-utils", "version": "2.1.0", + "type": "module", "scripts": { "build": "rimraf lib && tsc", "format": "prettier .", @@ -20,6 +21,6 @@ "prettier": "2.8.3", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typescript": "4.4.4" + "typescript": "4.8.4" } } diff --git a/packages/collection-utils/src/difference.ts b/packages/collection-utils/src/difference.ts index 62839057..fac965a6 100644 --- a/packages/collection-utils/src/difference.ts +++ b/packages/collection-utils/src/difference.ts @@ -16,8 +16,12 @@ /** * Returns the difference between two arrays. */ -export function differenceBy(a: T[], b: T[], transform: (item: T) => unknown) { +export function differenceBy( + a: T[], + b: T[], + transform: (item: T) => unknown +) { const disallowed = new Set(b.map(transform)); - return a.filter(item => !disallowed.has(transform(item))); + return a.filter((item) => !disallowed.has(transform(item))); } diff --git a/packages/collection-utils/src/get.ts b/packages/collection-utils/src/get.ts index 78f20749..633d03d5 100644 --- a/packages/collection-utils/src/get.ts +++ b/packages/collection-utils/src/get.ts @@ -19,12 +19,12 @@ * If the path doesn't exist, undefined is returned. */ export function get(object: object, path: string): U { - return path.split('.').reduce( + return path.split(".").reduce( (accumulator, current) => accumulator?.hasOwnProperty(current) ? // eslint-disable-next-line @typescript-eslint/no-explicit-any (accumulator as any)[current] : undefined, - object, + object ) as unknown as U; } diff --git a/packages/collection-utils/src/group-by.ts b/packages/collection-utils/src/group-by.ts index 6723f7db..0015e7d8 100644 --- a/packages/collection-utils/src/group-by.ts +++ b/packages/collection-utils/src/group-by.ts @@ -16,9 +16,12 @@ /** * Group an array by a function */ -export function groupBy(collection: T[], group: (item: T) => string | undefined): Record { +export function groupBy( + collection: T[], + group: (item: T) => string | undefined +): Record { return collection.reduce((accumulator: Record, item) => { - const key = group(item) ?? ''; + const key = group(item) ?? ""; accumulator[key] = accumulator[key] ?? []; accumulator[key].push(item); return accumulator; @@ -28,9 +31,12 @@ export function groupBy(collection: T[], group: (item: T) => string | undefin /** * Group an array by a function (returns a Map, whose keys keep order info of items entry) */ -export function groupByStable(collection: T[], group: (item: T) => string | undefined): Map { +export function groupByStable( + collection: T[], + group: (item: T) => string | undefined +): Map { return collection.reduce((accumulator: Map, item) => { - const key = group(item) ?? ''; + const key = group(item) ?? ""; accumulator.set(key, accumulator.get(key) ?? []); accumulator.get(key)?.push(item); return accumulator; @@ -40,6 +46,9 @@ export function groupByStable(collection: T[], group: (item: T) => string | u /** * */ -export function groupByProperty(collection: T[], property: keyof T): Record { - return groupBy(collection, item => item[property] as unknown as string); +export function groupByProperty( + collection: T[], + property: keyof T +): Record { + return groupBy(collection, (item) => item[property] as unknown as string); } diff --git a/packages/collection-utils/src/key-by.ts b/packages/collection-utils/src/key-by.ts index e7f3a544..da50c471 100644 --- a/packages/collection-utils/src/key-by.ts +++ b/packages/collection-utils/src/key-by.ts @@ -19,7 +19,10 @@ * each key is the last element responsible for generating the key. The * iteratee is invoked with one argument: (value). */ -export function keyBy(collection: T[], key: (item: T) => string | number): Record { +export function keyBy( + collection: T[], + key: (item: T) => string | number +): Record { return collection.reduce((accumulator, item) => { accumulator[key(item)] = item; return accumulator; diff --git a/packages/collection-utils/src/map-values.ts b/packages/collection-utils/src/map-values.ts index 3b36d107..6d8f93f4 100644 --- a/packages/collection-utils/src/map-values.ts +++ b/packages/collection-utils/src/map-values.ts @@ -18,9 +18,9 @@ */ export function mapValues( object: T, - transform: (value: T[keyof T], key: keyof T) => U, -): {[key in keyof T]: U} { - const result = {} as {[key in keyof T]: U}; + transform: (value: T[keyof T], key: keyof T) => U +): { [key in keyof T]: U } { + const result = {} as { [key in keyof T]: U }; for (const key in object) { if (object.hasOwnProperty(key)) { diff --git a/packages/collection-utils/src/min.ts b/packages/collection-utils/src/min.ts index 2a99e971..f3e70beb 100644 --- a/packages/collection-utils/src/min.ts +++ b/packages/collection-utils/src/min.ts @@ -16,8 +16,11 @@ /** * Returns the minimum value of a collection. */ -export function minBy(array: T[], transform: (item: T) => number | undefined): T { +export function minBy( + array: T[], + transform: (item: T) => number | undefined +): T { const transforms = array.map(transform); - const min = Math.min(...(transforms.filter(it => !!it) as number[])); + const min = Math.min(...(transforms.filter((it) => !!it) as number[])); return array.find((_, i) => transforms[i] === min) as T; } diff --git a/packages/collection-utils/src/omit.ts b/packages/collection-utils/src/omit.ts index dd15b66f..7364a4dd 100644 --- a/packages/collection-utils/src/omit.ts +++ b/packages/collection-utils/src/omit.ts @@ -16,8 +16,11 @@ /** * Returns a new object without the specified keys. */ -export function omit(object: T, ...keys: U[]): Omit { - const out = {...object}; +export function omit( + object: T, + ...keys: U[] +): Omit { + const out = { ...object }; for (const key of keys) delete out[key]; return out as Exclude; } diff --git a/packages/collection-utils/src/partition.ts b/packages/collection-utils/src/partition.ts index 27ccfb62..e845fec4 100644 --- a/packages/collection-utils/src/partition.ts +++ b/packages/collection-utils/src/partition.ts @@ -17,12 +17,15 @@ * Partitions a list into two lists. One with the elements that satisfy a predicate, * and one with the elements that don't satisfy the predicate. */ -export function partition(array: T[], transform: (item: T) => boolean): [T[], T[]] { +export function partition( + array: T[], + transform: (item: T) => boolean +): [T[], T[]] { return array.reduce<[T[], T[]]>( (accumulator, item) => { accumulator[transform(item) ? 0 : 1].push(item); return accumulator; }, - [[], []], + [[], []] ); } diff --git a/packages/collection-utils/src/pick.ts b/packages/collection-utils/src/pick.ts index 9405a37b..171d7f70 100644 --- a/packages/collection-utils/src/pick.ts +++ b/packages/collection-utils/src/pick.ts @@ -16,7 +16,10 @@ /** * Pick a set of properties from an object */ -export function pick(object: T, keys: U[]): Pick { +export function pick( + object: T, + keys: U[] +): Pick { return keys.reduce((accumulator, key) => { if (object.hasOwnProperty(key)) { accumulator[key] = object[key]; @@ -30,7 +33,7 @@ export function pick(object: T, keys: U[]): */ export function pickBy( object: T, - predicate: (value: T[U], key: U) => boolean, + predicate: (value: T[U], key: U) => boolean ): Pick { return (Object.keys(object) as U[]).reduce((accumulator, key) => { if (predicate(object[key], key)) { diff --git a/packages/collection-utils/src/string-sort.ts b/packages/collection-utils/src/string-sort.ts index b7a2b24d..061d877a 100644 --- a/packages/collection-utils/src/string-sort.ts +++ b/packages/collection-utils/src/string-sort.ts @@ -16,7 +16,7 @@ /** * sort function for two strings */ -export function stringSort(a = '', b = ''): number { +export function stringSort(a = "", b = ""): number { if (a < b) return -1; if (a > b) return 1; return 0; @@ -25,10 +25,12 @@ export function stringSort(a = '', b = ''): number { /** * sort function for two strings that allows for a custom transform */ -export function stringSortBy(map: (item: T) => string | undefined): (a: T, b: T) => number { +export function stringSortBy( + map: (item: T) => string | undefined +): (a: T, b: T) => number { return (a: T, b: T): number => { - const aValue = map(a) || ''; - const bValue = map(b) || ''; + const aValue = map(a) || ""; + const bValue = map(b) || ""; if (aValue < bValue) return -1; if (aValue > bValue) return 1; return 0; diff --git a/packages/collection-utils/src/sum.ts b/packages/collection-utils/src/sum.ts index a92a796c..006589b3 100644 --- a/packages/collection-utils/src/sum.ts +++ b/packages/collection-utils/src/sum.ts @@ -18,14 +18,20 @@ */ export function sumBy( collection: T[], - transform: (value: T) => number | undefined, + transform: (value: T) => number | undefined ): number { - return collection.reduce((accumulator, item) => accumulator + (transform(item) || 0), 0); + return collection.reduce( + (accumulator, item) => accumulator + (transform(item) || 0), + 0 + ); } /** * Sum an array of numbers */ export function sum(collection: Array): number { - return collection.reduce((accumulator, item) => accumulator + (item || 0), 0); + return collection.reduce( + (accumulator, item) => accumulator + (item || 0), + 0 + ); } diff --git a/packages/collection-utils/src/tree-group.ts b/packages/collection-utils/src/tree-group.ts index 171644b9..df8a10cc 100644 --- a/packages/collection-utils/src/tree-group.ts +++ b/packages/collection-utils/src/tree-group.ts @@ -22,7 +22,10 @@ export type Tree = { /** * */ -export function treeGroupBy(items: T[], transform: (item: T) => string[]): Tree { +export function treeGroupBy( + items: T[], + transform: (item: T) => string[] +): Tree { const tree: Tree = {}; for (const item of items) { diff --git a/packages/collection-utils/src/uniq.ts b/packages/collection-utils/src/uniq.ts index 933c07e7..16ff8fe2 100644 --- a/packages/collection-utils/src/uniq.ts +++ b/packages/collection-utils/src/uniq.ts @@ -16,11 +16,14 @@ /** * Filter out duplicates from an array. */ -export function uniqBy(array: T[], transform: (item: T) => string | number): T[] { +export function uniqBy( + array: T[], + transform: (item: T) => string | number +): T[] { return Object.values( array.reduce((accumulator, current) => { accumulator[transform(current)] = current; return accumulator; - }, {} as Record), + }, {} as Record) ); } diff --git a/packages/collection-utils/test/chunk.spec.ts b/packages/collection-utils/test/chunk.spec.ts index b57e778e..90d6cedc 100644 --- a/packages/collection-utils/test/chunk.spec.ts +++ b/packages/collection-utils/test/chunk.spec.ts @@ -13,11 +13,16 @@ * this program. If not, see . */ -import {chunk} from '../src/chunk'; -import {expect} from "chai"; +import { chunk } from "../src/chunk.js"; +import { expect } from "chai"; -describe('chunk', function () { - it('should chunk items in the correct sizes', function () { - expect(chunk([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3)).to.deep.equal([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]); +describe("chunk", function () { + it("should chunk items in the correct sizes", function () { + expect(chunk([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3)).to.deep.equal([ + [1, 2, 3], + [4, 5, 6], + [7, 8, 9], + [10], + ]); }); }); diff --git a/packages/collection-utils/test/difference.spec.ts b/packages/collection-utils/test/difference.spec.ts index bd528806..01eba8b8 100644 --- a/packages/collection-utils/test/difference.spec.ts +++ b/packages/collection-utils/test/difference.spec.ts @@ -12,14 +12,14 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {differenceBy} from '../src/difference'; -import {expect} from "chai"; +import { differenceBy } from "../src/difference.js"; +import { expect } from "chai"; -describe('differenceBy', function () { - it('should return the difference of two arrays', function () { +describe("differenceBy", function () { + it("should return the difference of two arrays", function () { const a = [1, 2, 3, 4, 5]; const b = [1, 2, 3]; - expect(differenceBy(a, b, it => it)).to.deep.equal([4, 5]); + expect(differenceBy(a, b, (it) => it)).to.deep.equal([4, 5]); }); }); diff --git a/packages/collection-utils/test/get.spec.ts b/packages/collection-utils/test/get.spec.ts index dca21650..4a0bfe98 100644 --- a/packages/collection-utils/test/get.spec.ts +++ b/packages/collection-utils/test/get.spec.ts @@ -12,29 +12,29 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {get} from '../src/get'; -import {expect} from "chai"; +import { get } from "../src/get.js"; +import { expect } from "chai"; -describe('get', function () { - it('should get a simple path', function () { +describe("get", function () { + it("should get a simple path", function () { const object = { a: { b: { - c: 'd', + c: "d", }, }, }; - expect(get(object, 'a.b.c')).to.equal('d'); + expect(get(object, "a.b.c")).to.equal("d"); }); - it('should return undefined for a non-existent path', function () { + it("should return undefined for a non-existent path", function () { const object = { a: { b: { - c: 'd', + c: "d", }, }, }; - expect(get(object, 'a.b.c.d')).to.be.undefined; + expect(get(object, "a.b.c.d")).to.be.undefined; }); }); diff --git a/packages/collection-utils/test/group-by.spec.ts b/packages/collection-utils/test/group-by.spec.ts index 6c67947f..1b31d559 100644 --- a/packages/collection-utils/test/group-by.spec.ts +++ b/packages/collection-utils/test/group-by.spec.ts @@ -12,113 +12,113 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {groupBy, groupByStable, groupByProperty} from '../src/group-by'; -import {expect} from "chai"; +import { groupBy, groupByStable, groupByProperty } from "../src/group-by.js"; +import { expect } from "chai"; -describe('groupBy', () => { - it('should group an array by a key', () => { +describe("groupBy", () => { + it("should group an array by a key", () => { const array = [ - {id: 1, name: 'one'}, - {id: 2, name: 'two'}, - {id: 3, name: 'three'}, - {id: 4, name: 'four'}, - {id: 5, name: 'five'}, + { id: 1, name: "one" }, + { id: 2, name: "two" }, + { id: 3, name: "three" }, + { id: 4, name: "four" }, + { id: 5, name: "five" }, ]; - const result = groupBy(array, it => it.name); + const result = groupBy(array, (it) => it.name); expect(result).to.deep.equal({ - one: [{id: 1, name: 'one'}], - two: [{id: 2, name: 'two'}], - three: [{id: 3, name: 'three'}], - four: [{id: 4, name: 'four'}], - five: [{id: 5, name: 'five'}], + one: [{ id: 1, name: "one" }], + two: [{ id: 2, name: "two" }], + three: [{ id: 3, name: "three" }], + four: [{ id: 4, name: "four" }], + five: [{ id: 5, name: "five" }], }); }); - it('should handle multiple elements per group', () => { + it("should handle multiple elements per group", () => { const array = [ - {id: 1, name: 'one'}, - {id: 2, name: 'two'}, - {id: 3, name: 'three'}, - {id: 4, name: 'four'}, - {id: 5, name: 'five'}, - {id: 6, name: 'one'}, - {id: 7, name: 'two'}, - {id: 8, name: 'three'}, - {id: 9, name: 'four'}, - {id: 10, name: 'five'}, + { id: 1, name: "one" }, + { id: 2, name: "two" }, + { id: 3, name: "three" }, + { id: 4, name: "four" }, + { id: 5, name: "five" }, + { id: 6, name: "one" }, + { id: 7, name: "two" }, + { id: 8, name: "three" }, + { id: 9, name: "four" }, + { id: 10, name: "five" }, ]; - const result = groupBy(array, it => it.name); + const result = groupBy(array, (it) => it.name); expect(result).to.deep.equal({ one: [ - {id: 1, name: 'one'}, - {id: 6, name: 'one'}, + { id: 1, name: "one" }, + { id: 6, name: "one" }, ], two: [ - {id: 2, name: 'two'}, - {id: 7, name: 'two'}, + { id: 2, name: "two" }, + { id: 7, name: "two" }, ], three: [ - {id: 3, name: 'three'}, - {id: 8, name: 'three'}, + { id: 3, name: "three" }, + { id: 8, name: "three" }, ], four: [ - {id: 4, name: 'four'}, - {id: 9, name: 'four'}, + { id: 4, name: "four" }, + { id: 9, name: "four" }, ], five: [ - {id: 5, name: 'five'}, - {id: 10, name: 'five'}, + { id: 5, name: "five" }, + { id: 10, name: "five" }, ], }); }); }); -describe('groupByStable', () => { +describe("groupByStable", () => { const array = [ - {id: 2, name: 'two'}, - {id: 4, name: 'three'}, - {id: 3, name: 'three'}, - {id: 1, name: 'one'}, + { id: 2, name: "two" }, + { id: 4, name: "three" }, + { id: 3, name: "three" }, + { id: 1, name: "one" }, ]; - const result = groupByStable(array, it => it.name); + const result = groupByStable(array, (it) => it.name); - it('should group an array by keys', () => { - expect(result.get('one')).to.deep.equal([{id: 1, name: 'one'}]); - expect(result.get('two')).to.deep.equal([{id: 2, name: 'two'}]); - expect(result.get('three')).to.deep.equal([ - {id: 4, name: 'three'}, - {id: 3, name: 'three'}, + it("should group an array by keys", () => { + expect(result.get("one")).to.deep.equal([{ id: 1, name: "one" }]); + expect(result.get("two")).to.deep.equal([{ id: 2, name: "two" }]); + expect(result.get("three")).to.deep.equal([ + { id: 4, name: "three" }, + { id: 3, name: "three" }, ]); }); - it('should provide ordered keys', () => { + it("should provide ordered keys", () => { // eslint-disable-next-line unicorn/prefer-spread - expect(Array.from(result.keys())).to.deep.equal(['two', 'three', 'one']); + expect(Array.from(result.keys())).to.deep.equal(["two", "three", "one"]); }); }); -describe('groupByProperty', function () { - it('should group by property', () => { +describe("groupByProperty", function () { + it("should group by property", () => { const array = [ - {id: 1, name: 'one'}, - {id: 2, name: 'two'}, - {id: 3, name: 'three'}, - {id: 4, name: 'four'}, - {id: 5, name: 'five'}, + { id: 1, name: "one" }, + { id: 2, name: "two" }, + { id: 3, name: "three" }, + { id: 4, name: "four" }, + { id: 5, name: "five" }, ]; - const result = groupByProperty(array, 'name'); + const result = groupByProperty(array, "name"); expect(result).to.deep.equal({ - one: [{id: 1, name: 'one'}], - two: [{id: 2, name: 'two'}], - three: [{id: 3, name: 'three'}], - four: [{id: 4, name: 'four'}], - five: [{id: 5, name: 'five'}], + one: [{ id: 1, name: "one" }], + two: [{ id: 2, name: "two" }], + three: [{ id: 3, name: "three" }], + four: [{ id: 4, name: "four" }], + five: [{ id: 5, name: "five" }], }); }); }); diff --git a/packages/collection-utils/test/key-by.spec.ts b/packages/collection-utils/test/key-by.spec.ts index 044c5f13..09688b34 100644 --- a/packages/collection-utils/test/key-by.spec.ts +++ b/packages/collection-utils/test/key-by.spec.ts @@ -12,30 +12,30 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {keyBy} from '../src/key-by'; -import {expect} from "chai"; +import { keyBy } from "../src/key-by.js"; +import { expect } from "chai"; -describe('keyBy', function () { - it('should key objects', function () { +describe("keyBy", function () { + it("should key objects", function () { const objects = [ { id: 1, - name: 'foo', + name: "foo", }, { id: 2, - name: 'bar', + name: "bar", }, ]; - const result = keyBy(objects, it => it.id); + const result = keyBy(objects, (it) => it.id); expect(result).to.deep.equal({ 1: { id: 1, - name: 'foo', + name: "foo", }, 2: { id: 2, - name: 'bar', + name: "bar", }, }); }); diff --git a/packages/collection-utils/test/map-values.spec.ts b/packages/collection-utils/test/map-values.spec.ts index e6e5b048..866ff445 100644 --- a/packages/collection-utils/test/map-values.spec.ts +++ b/packages/collection-utils/test/map-values.spec.ts @@ -12,18 +12,18 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {mapValues} from '../src/map-values'; -import {expect} from "chai"; +import { mapValues } from "../src/map-values.js"; +import { expect } from "chai"; -describe('map-values', () => { - it('should map values', () => { +describe("map-values", () => { + it("should map values", () => { const object = { a: 1, b: 2, c: 3, }; - const result = mapValues(object, value => value * 2); + const result = mapValues(object, (value) => value * 2); expect(result).to.deep.equal({ a: 2, @@ -32,14 +32,14 @@ describe('map-values', () => { }); }); - it('should not modify the original object', () => { + it("should not modify the original object", () => { const object = { a: 1, b: 2, c: 3, }; - mapValues(object, value => value * 2); + mapValues(object, (value) => value * 2); expect(object).to.deep.equal({ a: 1, diff --git a/packages/collection-utils/test/min.spec.ts b/packages/collection-utils/test/min.spec.ts index 6df03f0c..1b808d57 100644 --- a/packages/collection-utils/test/min.spec.ts +++ b/packages/collection-utils/test/min.spec.ts @@ -12,33 +12,33 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {minBy} from '../src/min'; -import {expect} from "chai"; +import { minBy } from "../src/min.js"; +import { expect } from "chai"; -describe('minBy', function () { - it('should pick the minimum value based on transform', function () { +describe("minBy", function () { + it("should pick the minimum value based on transform", function () { expect( minBy( [ - {id: 1, name: 'A'}, - {id: 2, name: 'B'}, - {id: 3, name: 'C'}, + { id: 1, name: "A" }, + { id: 2, name: "B" }, + { id: 3, name: "C" }, ], - it => it.id, - ), - ).to.deep.equal({id: 1, name: 'A'}); + (it) => it.id + ) + ).to.deep.equal({ id: 1, name: "A" }); }); - it('should not return undefined if there are other choices', function () { + it("should not return undefined if there are other choices", function () { expect( minBy( [ - {id: undefined, name: 'B'}, - {id: 1, name: 'A'}, - {id: undefined, name: 'C'}, + { id: undefined, name: "B" }, + { id: 1, name: "A" }, + { id: undefined, name: "C" }, ], - it => it.id, - ), - ).to.deep.equal({id: 1, name: 'A'}); + (it) => it.id + ) + ).to.deep.equal({ id: 1, name: "A" }); }); }); diff --git a/packages/collection-utils/test/omit.spec.ts b/packages/collection-utils/test/omit.spec.ts index a435c955..83124d12 100644 --- a/packages/collection-utils/test/omit.spec.ts +++ b/packages/collection-utils/test/omit.spec.ts @@ -12,13 +12,13 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {omit} from '../src/omit'; -import {expect} from "chai"; +import { omit } from "../src/omit.js"; +import { expect } from "chai"; -describe('omit', function () { - it('should omit keys', function () { - const object = {a: 1, b: 2, c: 3}; - const result = omit(object, 'a', 'c'); - expect(result).to.deep.equal({b: 2}); +describe("omit", function () { + it("should omit keys", function () { + const object = { a: 1, b: 2, c: 3 }; + const result = omit(object, "a", "c"); + expect(result).to.deep.equal({ b: 2 }); }); }); diff --git a/packages/collection-utils/test/partition.spec.ts b/packages/collection-utils/test/partition.spec.ts index fa82cf00..5182b3e5 100644 --- a/packages/collection-utils/test/partition.spec.ts +++ b/packages/collection-utils/test/partition.spec.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {partition} from '../src/partition'; -import {expect} from "chai"; +import { partition } from "../src/partition.js"; +import { expect } from "chai"; -describe('partition', function () { - it('should partition an array', function () { - expect(partition([1, 2, 3, 4], it => it % 2 === 0)).to.deep.equal([ +describe("partition", function () { + it("should partition an array", function () { + expect(partition([1, 2, 3, 4], (it) => it % 2 === 0)).to.deep.equal([ [2, 4], [1, 3], ]); diff --git a/packages/collection-utils/test/pick.spec.ts b/packages/collection-utils/test/pick.spec.ts index 9dc6c839..9b40ece7 100644 --- a/packages/collection-utils/test/pick.spec.ts +++ b/packages/collection-utils/test/pick.spec.ts @@ -12,13 +12,13 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {pick} from '../src/pick'; -import {expect} from "chai"; +import { pick } from "../src/pick.js"; +import { expect } from "chai"; -describe('pick', function () { - it('should pick properties', function () { - const object = {a: 1, b: 2, c: 3}; - const result = pick(object, ['a', 'c']); - expect(result).to.deep.equal({a: 1, c: 3}); +describe("pick", function () { + it("should pick properties", function () { + const object = { a: 1, b: 2, c: 3 }; + const result = pick(object, ["a", "c"]); + expect(result).to.deep.equal({ a: 1, c: 3 }); }); }); diff --git a/packages/collection-utils/test/shuffle.spec.ts b/packages/collection-utils/test/shuffle.spec.ts index 841b8035..22682d2e 100644 --- a/packages/collection-utils/test/shuffle.spec.ts +++ b/packages/collection-utils/test/shuffle.spec.ts @@ -12,18 +12,18 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {shuffle} from '../src/shuffle'; -import {expect} from "chai"; +import { shuffle } from "../src/shuffle.js"; +import { expect } from "chai"; -describe('shuffle', function () { - it('should shuffle an array', function () { +describe("shuffle", function () { + it("should shuffle an array", function () { const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; const shuffled = shuffle(array); expect(shuffled).not.to.deep.equal(array); expect(shuffled).to.contain.members(array); }); - it('should not modify the original array', function () { + it("should not modify the original array", function () { const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; shuffle(array); expect(array).to.deep.equal([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]); diff --git a/packages/collection-utils/test/string-sort.spec.ts b/packages/collection-utils/test/string-sort.spec.ts index 5bb625a3..817bb8af 100644 --- a/packages/collection-utils/test/string-sort.spec.ts +++ b/packages/collection-utils/test/string-sort.spec.ts @@ -12,22 +12,31 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {stringSort, stringSortBy} from '../src/string-sort'; -import {expect} from "chai"; +import { stringSort, stringSortBy } from "../src/string-sort.js"; +import { expect } from "chai"; -describe('stringSort', () => { - it('should sort an array of strings', () => { - expect(['a', 'c', 'b', 'd'].sort(stringSort)).to.deep.equal(['a', 'b', 'c', 'd']); - }); -}); - -describe('stringSortBy', () => { - it('should sort an array of strings', () => { - expect([{item: 'a'}, {item: 'c'}, {item: 'b'}, {item: 'd'}].sort(stringSortBy(it => it.item))).to.deep.equal([ - {item: 'a'}, - {item: 'b'}, - {item: 'c'}, - {item: 'd'}, +describe("stringSort", () => { + it("should sort an array of strings", () => { + expect(["a", "c", "b", "d"].sort(stringSort)).to.deep.equal([ + "a", + "b", + "c", + "d", + ]); + }); +}); + +describe("stringSortBy", () => { + it("should sort an array of strings", () => { + expect( + [{ item: "a" }, { item: "c" }, { item: "b" }, { item: "d" }].sort( + stringSortBy((it) => it.item) + ) + ).to.deep.equal([ + { item: "a" }, + { item: "b" }, + { item: "c" }, + { item: "d" }, ]); }); }); diff --git a/packages/collection-utils/test/sum.spec.ts b/packages/collection-utils/test/sum.spec.ts index 7bae234f..952f26b4 100644 --- a/packages/collection-utils/test/sum.spec.ts +++ b/packages/collection-utils/test/sum.spec.ts @@ -12,21 +12,21 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {expect} from "chai"; -import {sum, sumBy} from '../src/sum'; +import { expect } from "chai"; +import { sum, sumBy } from "../src/sum.js"; -describe('sum', () => { - it('should return the sum of all elements in the collection', () => { +describe("sum", () => { + it("should return the sum of all elements in the collection", () => { const collection = [1, 2, 3, 4, 5]; const result = sum(collection); expect(result).to.equal(15); }); }); -describe('sumBy', function () { - it('should return the sum of all elements in the collection', () => { - const collection = [{a: 1}, {a: 2}, {a: 3}, {a: 4}, {a: 5}]; - const result = sumBy(collection, it => it.a); +describe("sumBy", function () { + it("should return the sum of all elements in the collection", () => { + const collection = [{ a: 1 }, { a: 2 }, { a: 3 }, { a: 4 }, { a: 5 }]; + const result = sumBy(collection, (it) => it.a); expect(result).to.equal(15); }); }); diff --git a/packages/collection-utils/test/tree-group.spec.ts b/packages/collection-utils/test/tree-group.spec.ts index df7f132b..3232b24b 100644 --- a/packages/collection-utils/test/tree-group.spec.ts +++ b/packages/collection-utils/test/tree-group.spec.ts @@ -12,34 +12,34 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {expect} from "chai"; -import {Tree, treeGroupBy} from '../src/tree-group'; +import { expect } from "chai"; +import { Tree, treeGroupBy } from "../src/tree-group.js"; interface TestItem { id: number; path?: string[]; } -describe('tree-group', function () { - it('should create a tree', function () { +describe("tree-group", function () { + it("should create a tree", function () { const items: Array = [ { id: 1, - path: ['a', 'b', 'c'], + path: ["a", "b", "c"], }, { id: 2, - path: ['a', 'b', 'd'], + path: ["a", "b", "d"], }, ]; - const tree = treeGroupBy(items, item => item.path ?? []); + const tree = treeGroupBy(items, (item) => item.path ?? []); const expectedTree: Tree = { a: { b: { - c: {_: [items[0]]}, - d: {_: [items[1]]}, + c: { _: [items[0]] }, + d: { _: [items[1]] }, } as Tree, } as Tree, } as Tree; @@ -47,23 +47,23 @@ describe('tree-group', function () { expect(tree).to.deep.equal(expectedTree); }); - it('should also sort empty paths', () => { + it("should also sort empty paths", () => { const items: Array = [ { id: 1, - path: ['a', 'b', 'c'], + path: ["a", "b", "c"], }, { id: 2, }, ]; - const tree = treeGroupBy(items, item => item.path ?? []); + const tree = treeGroupBy(items, (item) => item.path ?? []); const expectedTree: Tree = { a: { b: { - c: {_: [items[0]]}, + c: { _: [items[0]] }, } as Tree, } as Tree, _: [items[1]], diff --git a/packages/collection-utils/test/uniq.spec.ts b/packages/collection-utils/test/uniq.spec.ts index 149e2053..32197e5c 100644 --- a/packages/collection-utils/test/uniq.spec.ts +++ b/packages/collection-utils/test/uniq.spec.ts @@ -12,13 +12,15 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {expect} from "chai"; -import {uniqBy} from '../src/uniq'; +import { expect } from "chai"; +import { uniqBy } from "../src/uniq.js"; -describe('uniq', function () { - it('should return an array with unique values', function () { - const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; - const result = uniqBy(array, it => it); +describe("uniq", function () { + it("should return an array with unique values", function () { + const array = [ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, + ]; + const result = uniqBy(array, (it) => it); expect(result).to.deep.equal([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]); }); }); diff --git a/packages/collection-utils/test/zip.spec.ts b/packages/collection-utils/test/zip.spec.ts index 1ccfee70..51f5396b 100644 --- a/packages/collection-utils/test/zip.spec.ts +++ b/packages/collection-utils/test/zip.spec.ts @@ -12,11 +12,11 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {expect} from "chai"; -import {zip} from '../src/zip'; +import { expect } from "chai"; +import { zip } from "../src/zip.js"; -describe('zip', function () { - it('should zip arrays together', function () { +describe("zip", function () { + it("should zip arrays together", function () { expect(zip([1, 2, 3], [4, 5, 6])).to.deep.equal([ [1, 4], [2, 5], diff --git a/packages/core-tools/app.js b/packages/core-tools/app.js index 19bbfa61..d233e644 100644 --- a/packages/core-tools/app.js +++ b/packages/core-tools/app.js @@ -1,2 +1,2 @@ #!/usr/bin/env node -require('./lib/cli.js') +import './lib/cli.js' diff --git a/packages/core-tools/package.json b/packages/core-tools/package.json index 7ab4e224..9e481c98 100644 --- a/packages/core-tools/package.json +++ b/packages/core-tools/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/core-tools", "description": "Tools to convert and validate StAppsCore", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/core-tools.git", "author": "Karl-Philipp Wulfert ", @@ -19,10 +20,9 @@ "openstapps-core-tools": "app.js" }, "scripts": { - "build": "npm run lint && npm run compile", + "build": "rimraf lib && tsc", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md", "check-configuration": "openstapps-configuration", - "compile": "rimraf lib && tsc", "documentation": "typedoc --out docs --readme README.md --includeVersion --validation.invalidLink true --entryPointStrategy expand src", "lint": "eslint -c .eslintrc.json --ignore-path .eslintignore --ext .ts src/", "lint:fix": "eslint --fix -c .eslintrc.json --ignore-path .eslintignore --ext .ts src/", @@ -57,7 +57,8 @@ "re2": "1.18.0", "toposort": "2.0.2", "ts-json-schema-generator": "1.2.0", - "ts-node": "10.9.1" + "ts-node": "10.9.1", + "typescript": "4.8.4" }, "devDependencies": { "@openstapps/configuration": "workspace:*", @@ -83,8 +84,7 @@ "nock": "13.3.0", "prettier": "2.8.3", "rimraf": "4.4.0", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26" }, "keywords": [ "StApps", diff --git a/packages/core-tools/src/better-ajv-errors.d.ts b/packages/core-tools/src/better-ajv-errors.d.ts new file mode 100644 index 00000000..0a8a5a66 --- /dev/null +++ b/packages/core-tools/src/better-ajv-errors.d.ts @@ -0,0 +1,26 @@ +declare module 'better-ajv-errors' { + import type { ErrorObject } from 'ajv'; + + export interface IOutputError { + start: { line: number; column: number; offset: number }; + // Optional for required + end?: { line: number; column: number; offset: number }; + error: string; + suggestion?: string; + } + + export interface IInputOptions { + format?: 'cli' | 'js'; + indent?: number | null; + + /** Raw JSON used when highlighting error location */ + json?: string | null; + } + + export default function ( + schema: S, + data: T, + errors: Array, + options?: Options + ): Options extends { format: 'js' } ? Array : string; +} diff --git a/packages/core-tools/src/cli.ts b/packages/core-tools/src/cli.ts index a8f1e6ca..7386ee04 100644 --- a/packages/core-tools/src/cli.ts +++ b/packages/core-tools/src/cli.ts @@ -17,16 +17,17 @@ import {Command} from 'commander'; import {existsSync, readFileSync, writeFileSync} from 'fs'; import {copy} from 'fs-extra'; import path from 'path'; -import {mkdirPromisified, readFilePromisified} from './common'; -import {lightweightDefinitionsFromPath, lightweightProjectFromPath} from './easy-ast/easy-ast'; -import {pack} from './pack'; -import {openapi3Template} from './resources/openapi-303-template'; -import {gatherRouteInformation, generateOpenAPIForRoute} from './routes'; -import {Converter, getValidatableTypesInPath} from './schema'; -import {createDiagram, createDiagramFromString} from './uml/create-diagram'; -import {UMLConfig} from './uml/uml-config'; -import {capitalize} from './util/string'; -import {validateFiles, writeReport} from './validate'; +import {mkdirPromisified, readFilePromisified} from './common.js'; +import {lightweightDefinitionsFromPath, lightweightProjectFromPath} from './easy-ast/easy-ast.js'; +import {pack} from './pack.js'; +import {openapi3Template} from './resources/openapi-303-template.js'; +import {gatherRouteInformation, generateOpenAPIForRoute} from './routes.js'; +import {Converter, getValidatableTypesInPath} from './schema.js'; +import {createDiagram, createDiagramFromString} from './uml/create-diagram.js'; +import {UMLConfig} from './uml/uml-config.js'; +import {capitalize} from './util/string.js'; +import {validateFiles, writeReport} from './validate.js'; +import {fileURLToPath} from "url"; // handle unhandled promise rejections process.on('unhandledRejection', async (reason: unknown) => { @@ -40,7 +41,7 @@ process.on('unhandledRejection', async (reason: unknown) => { const commander = new Command('openstapps-core-tools'); // eslint-disable-next-line unicorn/prefer-module -commander.version(JSON.parse(readFileSync(path.resolve(__dirname, '..', 'package.json')).toString()).version); +commander.version(JSON.parse(readFileSync(path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'package.json')).toString()).version); commander.command('prototype ').action(async (sourcePath, out) => { const files = lightweightProjectFromPath(sourcePath); diff --git a/packages/core-tools/src/common.ts b/packages/core-tools/src/common.ts index 91844ffb..dac4708a 100644 --- a/packages/core-tools/src/common.ts +++ b/packages/core-tools/src/common.ts @@ -14,12 +14,12 @@ */ import {Logger} from '@openstapps/logger'; import {existsSync, mkdir, readFile, unlink, writeFile} from 'fs'; -import {Glob} from 'glob'; +import glob from 'glob'; import {platform} from 'os'; import {promisify} from 'util'; import path from 'path'; -export const globPromisified = promisify(Glob); +export const globPromisified = promisify(glob.Glob); export const mkdirPromisified = promisify(mkdir); export const readFilePromisified = promisify(readFile); export const writeFilePromisified = promisify(writeFile); diff --git a/packages/core-tools/src/easy-ast/ast-internal-util.ts b/packages/core-tools/src/easy-ast/ast-internal-util.ts index d130d69f..1e531747 100644 --- a/packages/core-tools/src/easy-ast/ast-internal-util.ts +++ b/packages/core-tools/src/easy-ast/ast-internal-util.ts @@ -12,34 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import { - ArrayTypeNode, - ClassDeclaration, - ClassElement, - EnumDeclaration, - Identifier, - InterfaceDeclaration, - isArrayTypeNode, - isClassDeclaration, - isComputedPropertyName, - isEnumDeclaration, - isInterfaceDeclaration, - isPropertyDeclaration, - isPropertySignature, - isTypeAliasDeclaration, - isTypeReferenceNode, - NodeArray, - PropertyDeclaration, - PropertyName, - PropertySignature, - TypeAliasDeclaration, - TypeElement, - TypeNode, - TypeReferenceNode, -} from 'typescript'; import * as ts from 'typescript'; -import {cleanupEmpty} from '../util/collections'; -import {LightweightComment} from './types/lightweight-comment'; +import {cleanupEmpty} from '../util/collections.js'; +import {LightweightComment} from './types/lightweight-comment.js'; /** @internal */ export function extractComment(node: ts.Node): LightweightComment | undefined { @@ -70,14 +45,14 @@ export function extractComment(node: ts.Node): LightweightComment | undefined { /** @internal */ export function isProperty( - node: ClassElement | TypeElement, -): node is PropertyDeclaration | PropertySignature { - return isPropertyDeclaration(node) || isPropertySignature(node); + node: ts.ClassElement | ts.TypeElement, +): node is ts.PropertyDeclaration | ts.PropertySignature { + return ts.isPropertyDeclaration(node) || ts.isPropertySignature(node); } /** @internal */ export function filterNodeTo( - node: NodeArray, + node: ts.NodeArray, check: (node: T) => node is S, ): S[] { return node.filter(check); @@ -107,36 +82,36 @@ export function getModifiers(text: string, kind: string): string[] { } /** @internal */ -export function resolvePropertyName(name?: PropertyName): string | undefined { +export function resolvePropertyName(name?: ts.PropertyName): string | undefined { return name === undefined ? undefined - : isComputedPropertyName(name) + : ts.isComputedPropertyName(name) ? 'UNSUPPORTED_IDENTIFIER_TYPE' : name.getText(); } /** @internal */ -export function resolveTypeName(type?: TypeNode): string | undefined { +export function resolveTypeName(type?: ts.TypeNode): string | undefined { // @ts-expect-error typeName exists in reality return type?.typeName?.escapedText ?? type?.typeName?.right?.escapedText; } /** @internal */ -export function isArrayLikeType(typeNode?: TypeNode): typeNode is ArrayTypeNode | TypeReferenceNode { - return typeNode !== undefined && (isArrayTypeNode(typeNode) || isArrayReference(typeNode)); +export function isArrayLikeType(typeNode?: ts.TypeNode): typeNode is ts.ArrayTypeNode | ts.TypeReferenceNode { + return typeNode !== undefined && (ts.isArrayTypeNode(typeNode) || isArrayReference(typeNode)); } /** @internal */ -export function isArrayReference(typeNode: TypeNode): boolean { - return isTypeReferenceNode(typeNode) && (typeNode.typeName as Identifier).escapedText === 'Array'; +export function isArrayReference(typeNode: ts.TypeNode): boolean { + return ts.isTypeReferenceNode(typeNode) && (typeNode.typeName as ts.Identifier).escapedText === 'Array'; } /** @internal */ -export function isClassLikeNode(node: ts.Node): node is ClassDeclaration | InterfaceDeclaration { - return isClassDeclaration(node) || isInterfaceDeclaration(node); +export function isClassLikeNode(node: ts.Node): node is ts.ClassDeclaration | ts.InterfaceDeclaration { + return ts.isClassDeclaration(node) || ts.isInterfaceDeclaration(node); } /** @internal */ -export function isEnumLikeNode(node: ts.Node): node is EnumDeclaration | TypeAliasDeclaration { - return isEnumDeclaration(node) || isTypeAliasDeclaration(node); +export function isEnumLikeNode(node: ts.Node): node is ts.EnumDeclaration | ts.TypeAliasDeclaration { + return ts.isEnumDeclaration(node) || ts.isTypeAliasDeclaration(node); } diff --git a/packages/core-tools/src/easy-ast/ast-util.ts b/packages/core-tools/src/easy-ast/ast-util.ts index 8f072487..a9fba673 100644 --- a/packages/core-tools/src/easy-ast/ast-util.ts +++ b/packages/core-tools/src/easy-ast/ast-util.ts @@ -13,14 +13,14 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {TypeFlags} from 'typescript'; -import {LightweightAliasDefinition} from './types/lightweight-alias-definition'; -import {LightweightClassDefinition} from './types/lightweight-class-definition'; -import {LightweightDefinition} from './types/lightweight-definition'; -import {LightweightDefinitionKind} from './types/lightweight-definition-kind'; -import {LightweightProject} from './types/lightweight-project'; -import {LightweightType} from './types/lightweight-type'; -import {keyBy} from "@openstapps/collection-utils/lib/key-by"; +import ts from 'typescript'; +import {LightweightAliasDefinition} from './types/lightweight-alias-definition.js'; +import {LightweightClassDefinition} from './types/lightweight-class-definition.js'; +import {LightweightDefinition} from './types/lightweight-definition.js'; +import {LightweightDefinitionKind} from './types/lightweight-definition-kind.js'; +import {LightweightProject} from './types/lightweight-project.js'; +import {LightweightType} from './types/lightweight-type.js'; +import {keyBy} from "@openstapps/collection-utils/lib/key-by.js"; /** * Creates a printable name of a type @@ -46,28 +46,28 @@ export function definitionsOf(project: LightweightProject): Record it.name); } -export function isPrimitiveType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.NonPrimitive) === 0; +export function isPrimitiveType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.NonPrimitive) === 0; } -export function isLiteralType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.Literal) !== 0; +export function isLiteralType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.Literal) !== 0; } -export function isEnumLiteralType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.EnumLiteral) !== 0; +export function isEnumLiteralType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.EnumLiteral) !== 0; } -export function isStringLiteralType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.StringLiteral) !== 0; +export function isStringLiteralType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.StringLiteral) !== 0; } -export function isUnionOrIntersectionType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.UnionOrIntersection) !== 0; +export function isUnionOrIntersectionType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.UnionOrIntersection) !== 0; } -export function isUnionType(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.Union) !== 0; +export function isUnionType(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.Union) !== 0; } export function isLightweightClass(node?: LightweightDefinition): node is LightweightClassDefinition { @@ -78,6 +78,6 @@ export function isLightweightEnum(node?: LightweightDefinition): node is Lightwe return node?.kind === LightweightDefinitionKind.ALIAS_LIKE; } -export function isTypeVariable(type: {flags: TypeFlags}): boolean { - return (type.flags & TypeFlags.TypeVariable) !== 0; +export function isTypeVariable(type: { flags: ts.TypeFlags }): boolean { + return (type.flags & ts.TypeFlags.TypeVariable) !== 0; } diff --git a/packages/core-tools/src/easy-ast/easy-ast.ts b/packages/core-tools/src/easy-ast/easy-ast.ts index 88da64bf..33704703 100644 --- a/packages/core-tools/src/easy-ast/easy-ast.ts +++ b/packages/core-tools/src/easy-ast/easy-ast.ts @@ -13,33 +13,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import * as ts from 'typescript'; -import { - ClassDeclaration, - ClassElement, - EnumDeclaration, - InterfaceDeclaration, - isArrayTypeNode, - isClassDeclaration, - isEnumDeclaration, - isIndexSignatureDeclaration, - isPropertyDeclaration, - isTypeLiteralNode, - isTypeReferenceNode, - NodeArray, - Program, - SourceFile, - SyntaxKind, - Type, - TypeAliasDeclaration, - TypeChecker, - TypeElement, - TypeFlags, - TypeLiteralNode, - TypeNode, -} from 'typescript'; -import {cleanupEmpty, mapNotNil, rejectNil} from '../util/collections'; -import {expandPathToFilesSync} from '../util/io'; +import ts from 'typescript'; +import {cleanupEmpty, mapNotNil, rejectNil} from '../util/collections.js'; +import {expandPathToFilesSync} from '../util/io.js'; import { extractComment, filterChildrenTo, @@ -51,19 +27,19 @@ import { isProperty, resolvePropertyName, resolveTypeName, -} from './ast-internal-util'; -import {isEnumLiteralType, isTypeVariable} from './ast-util'; -import {LightweightAliasDefinition} from './types/lightweight-alias-definition'; -import {LightweightClassDefinition} from './types/lightweight-class-definition'; -import {LightweightDefinition} from './types/lightweight-definition'; -import {LightweightDefinitionKind} from './types/lightweight-definition-kind'; -import {LightweightProject} from './types/lightweight-project'; -import {LightweightType} from './types/lightweight-type'; +} from './ast-internal-util.js'; +import {isEnumLiteralType, isTypeVariable} from './ast-util.js'; +import {LightweightAliasDefinition} from './types/lightweight-alias-definition.js'; +import {LightweightClassDefinition} from './types/lightweight-class-definition.js'; +import {LightweightDefinition} from './types/lightweight-definition.js'; +import {LightweightDefinitionKind} from './types/lightweight-definition-kind.js'; +import {LightweightProject} from './types/lightweight-project.js'; +import {LightweightType} from './types/lightweight-type.js'; import path from 'path'; -import {LightweightProperty} from './types/lightweight-property'; -import {mapValues} from "@openstapps/collection-utils/lib/map-values"; -import {groupBy} from "@openstapps/collection-utils/lib/group-by"; -import {keyBy} from "@openstapps/collection-utils/lib/key-by"; +import {LightweightProperty} from './types/lightweight-property.js'; +import {mapValues} from "@openstapps/collection-utils/lib/map-values.js"; +import {groupBy} from "@openstapps/collection-utils/lib/group-by.js"; +import {keyBy} from "@openstapps/collection-utils/lib/key-by.js"; /** * Convert a TypeScript project to a lightweight Type-AST representation of the project @@ -95,11 +71,11 @@ export function lightweightDefinitionsFromPath( * Reads the reflection model and converts it into a flatter, easier to handle model */ class LightweightDefinitionBuilder { - readonly program: Program; + readonly program: ts.Program; - readonly sourceFiles: readonly SourceFile[]; + readonly sourceFiles: readonly ts.SourceFile[]; - readonly typeChecker: TypeChecker; + readonly typeChecker: ts.TypeChecker; constructor(sourcePath: string | string[], readonly includeComments: boolean) { const rootNames = Array.isArray(sourcePath) @@ -125,13 +101,13 @@ class LightweightDefinitionBuilder { this.sourceFiles = mapNotNil(this.program.getRootFileNames(), it => this.program.getSourceFile(it)); } - private convertAliasLike(enumLike: EnumDeclaration | TypeAliasDeclaration): LightweightAliasDefinition { + private convertAliasLike(enumLike: ts.EnumDeclaration | ts.TypeAliasDeclaration): LightweightAliasDefinition { return cleanupEmpty({ comment: this.includeComments ? extractComment(enumLike) : undefined, name: enumLike.name.getText() ?? 'ERROR', kind: LightweightDefinitionKind.ALIAS_LIKE, - modifiers: getModifiers(enumLike.getText(), isEnumDeclaration(enumLike) ? 'enum' : 'type'), - type: isEnumDeclaration(enumLike) + modifiers: getModifiers(enumLike.getText(), ts.isEnumDeclaration(enumLike) ? 'enum' : 'type'), + type: ts.isEnumDeclaration(enumLike) ? enumLike.members.length > 0 ? { flags: 1_048_576, @@ -142,7 +118,7 @@ class LightweightDefinitionBuilder { }); } - private convertClassLike(classLike: ClassDeclaration | InterfaceDeclaration): LightweightClassDefinition { + private convertClassLike(classLike: ts.ClassDeclaration | ts.InterfaceDeclaration): LightweightClassDefinition { const heritages = mapValues( groupBy([...(classLike.heritageClauses!)], it => it.token.toString()), heritages => heritages.flatMap(it => it.types), @@ -152,15 +128,15 @@ class LightweightDefinitionBuilder { comment: this.includeComments ? extractComment(classLike) : undefined, name: classLike.name?.escapedText ?? 'ERROR', kind: LightweightDefinitionKind.CLASS_LIKE, - modifiers: getModifiers(classLike.getText(), isClassDeclaration(classLike) ? 'class' : 'interface'), + modifiers: getModifiers(classLike.getText(), ts.isClassDeclaration(classLike) ? 'class' : 'interface'), extendedDefinitions: heritages[ts.SyntaxKind.ExtendsKeyword]?.map(it => this.lightweightTypeAtNode(it)), implementedDefinitions: heritages[ts.SyntaxKind.ImplementsKeyword]?.map(it => this.lightweightTypeAtNode(it), ), indexSignatures: keyBy( filterNodeTo( - classLike.members as NodeArray, - isIndexSignatureDeclaration, + classLike.members as ts.NodeArray, + ts.isIndexSignatureDeclaration, ).map(indexSignature => cleanupEmpty({ name: @@ -183,15 +159,15 @@ class LightweightDefinitionBuilder { }); } - collectProperties(members: NodeArray): Record { + collectProperties(members: ts.NodeArray): Record { return keyBy( - filterNodeTo(members as NodeArray, isProperty).map(property => + filterNodeTo(members as ts.NodeArray, isProperty).map(property => cleanupEmpty({ comment: this.includeComments ? extractComment(property) : undefined, name: resolvePropertyName(property.name) ?? property.getText(), type: this.lightweightTypeAtNode(property), - properties: this.collectProperties((property.type as TypeLiteralNode)?.members), - optional: isPropertyDeclaration(property) + properties: this.collectProperties((property.type as ts.TypeLiteralNode)?.members), + optional: ts.isPropertyDeclaration(property) ? property.questionToken === undefined ? undefined : true @@ -208,12 +184,12 @@ class LightweightDefinitionBuilder { return this.lightweightTypeFromType(type, this.typeChecker.typeToTypeNode(type, node, undefined)); } - private lightweightTypeFromType(type: ts.Type, typeNode?: TypeNode): LightweightType { - if (typeNode?.kind === SyntaxKind.ConditionalType) { - return {value: 'UNSUPPORTED_CONDITIONAL_TYPE', flags: TypeFlags.Unknown}; + private lightweightTypeFromType(type: ts.Type, typeNode?: ts.TypeNode): LightweightType { + if (typeNode?.kind === ts.SyntaxKind.ConditionalType) { + return {value: 'UNSUPPORTED_CONDITIONAL_TYPE', flags: ts.TypeFlags.Unknown}; } if (isArrayLikeType(typeNode)) { - const elementType = isArrayTypeNode(typeNode) ? typeNode.elementType : typeNode.typeArguments?.[0]!; + const elementType = ts.isArrayTypeNode(typeNode) ? typeNode.elementType : typeNode.typeArguments?.[0]!; const out = this.lightweightTypeFromType( this.typeChecker.getTypeFromTypeNode(elementType), elementType, @@ -222,8 +198,8 @@ class LightweightDefinitionBuilder { return out; } - const isReference = typeNode !== undefined && isTypeReferenceNode(typeNode) && !isEnumLiteralType(type); - const isTypeLiteral = typeNode !== undefined && isTypeLiteralNode(typeNode); + const isReference = typeNode !== undefined && ts.isTypeReferenceNode(typeNode) && !isEnumLiteralType(type); + const isTypeLiteral = typeNode !== undefined && ts.isTypeLiteralNode(typeNode); // @ts-expect-error intrinsic name & value exist const intrinsicName = (type.intrinsicName ?? type.value) as string | undefined; @@ -239,7 +215,7 @@ class LightweightDefinitionBuilder { .getApparentType(type) // @ts-expect-error resolvedTypeArguments exits ?.resolvedTypeArguments?.filter(it => !it.isThisType) - ?.map((it: Type) => this.lightweightTypeFromType(it)), + ?.map((it: ts.Type) => this.lightweightTypeFromType(it)), specificationTypes: type.isUnionOrIntersection() && !isReference ? type.types.map(it => diff --git a/packages/core-tools/src/easy-ast/types/lightweight-alias-definition.ts b/packages/core-tools/src/easy-ast/types/lightweight-alias-definition.ts index 31ede813..d3bac456 100644 --- a/packages/core-tools/src/easy-ast/types/lightweight-alias-definition.ts +++ b/packages/core-tools/src/easy-ast/types/lightweight-alias-definition.ts @@ -13,9 +13,9 @@ * this program. If not, see . */ -import {LightweightDefinitionBase} from './lightweight-definition'; -import {LightweightDefinitionKind} from './lightweight-definition-kind'; -import {LightweightType} from './lightweight-type'; +import {LightweightDefinitionBase} from './lightweight-definition.js'; +import {LightweightDefinitionKind} from './lightweight-definition-kind.js'; +import {LightweightType} from './lightweight-type.js'; /** * Represents an enum definition */ diff --git a/packages/core-tools/src/easy-ast/types/lightweight-class-definition.ts b/packages/core-tools/src/easy-ast/types/lightweight-class-definition.ts index 33b5b8b8..79f315bd 100644 --- a/packages/core-tools/src/easy-ast/types/lightweight-class-definition.ts +++ b/packages/core-tools/src/easy-ast/types/lightweight-class-definition.ts @@ -13,10 +13,10 @@ * this program. If not, see . */ -import {LightweightDefinitionBase} from './lightweight-definition'; -import {LightweightDefinitionKind} from './lightweight-definition-kind'; -import {LightweightIndexSignature, LightweightProperty} from './lightweight-property'; -import {LightweightType} from './lightweight-type'; +import {LightweightDefinitionBase} from './lightweight-definition.js'; +import {LightweightDefinitionKind} from './lightweight-definition-kind.js'; +import {LightweightIndexSignature, LightweightProperty} from './lightweight-property.js'; +import {LightweightType} from './lightweight-type.js'; /** * Represents a class definition diff --git a/packages/core-tools/src/easy-ast/types/lightweight-definition.ts b/packages/core-tools/src/easy-ast/types/lightweight-definition.ts index 5092a29c..f67db343 100644 --- a/packages/core-tools/src/easy-ast/types/lightweight-definition.ts +++ b/packages/core-tools/src/easy-ast/types/lightweight-definition.ts @@ -12,10 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LightweightDefinitionKind} from './lightweight-definition-kind'; -import {LightweightComment} from './lightweight-comment'; -import {LightweightClassDefinition} from './lightweight-class-definition'; -import {LightweightAliasDefinition} from './lightweight-alias-definition'; +import {LightweightDefinitionKind} from './lightweight-definition-kind.js'; +import {LightweightComment} from './lightweight-comment.js'; +import {LightweightClassDefinition} from './lightweight-class-definition.js'; +import {LightweightAliasDefinition} from './lightweight-alias-definition.js'; export type LightweightDefinition = LightweightClassDefinition | LightweightAliasDefinition; diff --git a/packages/core-tools/src/easy-ast/types/lightweight-project.ts b/packages/core-tools/src/easy-ast/types/lightweight-project.ts index 90079cce..ad8abec9 100644 --- a/packages/core-tools/src/easy-ast/types/lightweight-project.ts +++ b/packages/core-tools/src/easy-ast/types/lightweight-project.ts @@ -12,11 +12,11 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {mapNotNil} from '../../util/collections'; -import {definitionsOf, isLightweightClass} from '../ast-util'; -import {lightweightProjectFromPath} from '../easy-ast'; -import {LightweightClassDefinition} from './lightweight-class-definition'; -import {LightweightDefinition} from './lightweight-definition'; +import {mapNotNil} from '../../util/collections.js'; +import {definitionsOf, isLightweightClass} from '../ast-util.js'; +import {lightweightProjectFromPath} from '../easy-ast.js'; +import {LightweightClassDefinition} from './lightweight-class-definition.js'; +import {LightweightDefinition} from './lightweight-definition.js'; /** * Build an index for a lightweight project diff --git a/packages/core-tools/src/easy-ast/types/lightweight-property.ts b/packages/core-tools/src/easy-ast/types/lightweight-property.ts index fa6bd4bb..ead030cf 100644 --- a/packages/core-tools/src/easy-ast/types/lightweight-property.ts +++ b/packages/core-tools/src/easy-ast/types/lightweight-property.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LightweightComment} from './lightweight-comment'; -import {LightweightType} from './lightweight-type'; +import {LightweightComment} from './lightweight-comment.js'; +import {LightweightType} from './lightweight-type.js'; /** * Represents a property definition diff --git a/packages/core-tools/src/pack.ts b/packages/core-tools/src/pack.ts index 742f994f..a7991292 100644 --- a/packages/core-tools/src/pack.ts +++ b/packages/core-tools/src/pack.ts @@ -17,8 +17,8 @@ import {Logger} from '@openstapps/logger'; import del from 'del'; import {existsSync} from 'fs'; import {cwd} from 'process'; -import {globPromisified, readFilePromisified, unlinkPromisified, writeFilePromisified} from './common'; -import {JavaScriptModule} from './types/pack'; +import {globPromisified, readFilePromisified, unlinkPromisified, writeFilePromisified} from './common.js'; +import {JavaScriptModule} from './types/pack.js'; import path from 'path'; const PACK_IDENTIFIER = '/* PACKED BY @openstapps/pack */'; diff --git a/packages/core-tools/src/routes.ts b/packages/core-tools/src/routes.ts index 88c4d9ed..e1496af3 100644 --- a/packages/core-tools/src/routes.ts +++ b/packages/core-tools/src/routes.ts @@ -12,15 +12,14 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {assign, filter, map} from 'lodash'; import {OpenAPIV3} from 'openapi-types'; -import {isLightweightClass} from './easy-ast/ast-util'; -import {LightweightProjectWithIndex} from './easy-ast/types/lightweight-project'; -import {RouteInstanceWithMeta, RouteWithMetaInformation} from './types/routes'; -import {rejectNil} from './util/collections'; -import {capitalize} from './util/string'; +import {isLightweightClass} from './easy-ast/ast-util.js'; +import {LightweightProjectWithIndex} from './easy-ast/types/lightweight-project.js'; +import {RouteInstanceWithMeta, RouteWithMetaInformation} from './types/routes.js'; +import {rejectNil} from './util/collections.js'; +import {capitalize} from './util/string.js'; import path from 'path'; -import {lightweightProjectFromPath} from './easy-ast/easy-ast'; +import {lightweightProjectFromPath} from './easy-ast/easy-ast.js'; /** * Gather relevant information of routes @@ -34,7 +33,7 @@ export async function gatherRouteInformation(path: string): Promise { + Object.values(project.definitions).filter(isLightweightClass).map(async node => { if (!node.extendedDefinitions?.some(it => it.referenceName === 'SCAbstractRoute')) { return undefined; } @@ -47,7 +46,7 @@ export async function gatherRouteInformation(path: string): Promise // eslint-disable-next-line @typescript-eslint/ban-types - assign((await project.instantiateDefinitionByName(error.name)) as object, {name: error.name}), + Object.assign((await project.instantiateDefinitionByName(error.name)) as object, {name: error.name}), ), ); instantiatedRoute.responseBodyDescription = diff --git a/packages/core-tools/src/schema.ts b/packages/core-tools/src/schema.ts index 6957bac1..502e95b4 100644 --- a/packages/core-tools/src/schema.ts +++ b/packages/core-tools/src/schema.ts @@ -14,17 +14,16 @@ */ import Ajv from 'ajv'; import {JSONSchema7 as JSONSchema} from 'json-schema'; -import {chain} from 'lodash'; import {Config, DEFAULT_CONFIG, Definition, SchemaGenerator} from 'ts-json-schema-generator'; -import {createFormatter} from 'ts-json-schema-generator/dist/factory/formatter'; -import {createParser} from 'ts-json-schema-generator/dist/factory/parser'; -import {createProgram} from 'ts-json-schema-generator/dist/factory/program'; -import {getTsconfigPath} from './common'; -import {definitionsOf} from './easy-ast/ast-util'; -import {lightweightProjectFromPath} from './easy-ast/easy-ast'; -import {isSchemaWithDefinitions} from './util/guards'; +import {createFormatter} from 'ts-json-schema-generator'; +import {createParser} from 'ts-json-schema-generator'; +import {createProgram} from 'ts-json-schema-generator'; +import {getTsconfigPath} from './common.js'; +import {definitionsOf} from './easy-ast/ast-util.js'; +import {lightweightProjectFromPath} from './easy-ast/easy-ast.js'; +import {isSchemaWithDefinitions} from './util/guards.js'; import path from 'path'; -import re2 from './types/re2'; +import re2 from './types/re2.js'; /** * StAppsCore converter @@ -40,7 +39,7 @@ export class Converter { /** * Schema validator instance */ - private readonly schemaValidator: Ajv; + private readonly schemaValidator: Ajv.default; /** * Create a new converter @@ -66,9 +65,7 @@ export class Converter { this.generator = new SchemaGenerator(program, createParser(program, config), createFormatter(config)); // create Ajv instance - this.schemaValidator = new Ajv({code: {regExp: re2}}); - // eslint-disable-next-line @typescript-eslint/no-var-requires,unicorn/prefer-module - this.schemaValidator.addMetaSchema(require('ajv/lib/refs/json-schema-draft-06.json')); + this.schemaValidator = new Ajv.default({code: {regExp: re2}}); } /** @@ -112,8 +109,7 @@ export class Converter { * Get a list of validatable types from an API extractor file */ export function getValidatableTypesInPath(path: string): string[] { - return chain(definitionsOf(lightweightProjectFromPath(path))) + return Object.values(definitionsOf(lightweightProjectFromPath(path))) .filter(type => !!type.comment?.tags?.find(it => it.name === 'validatable')) .map(type => type.name) - .value(); } diff --git a/packages/core-tools/src/uml/create-diagram.ts b/packages/core-tools/src/uml/create-diagram.ts index 7467108c..d88f4b2c 100644 --- a/packages/core-tools/src/uml/create-diagram.ts +++ b/packages/core-tools/src/uml/create-diagram.ts @@ -15,14 +15,13 @@ import {Logger} from '@openstapps/logger'; import {createWriteStream} from 'fs'; import * as request from 'got'; -import {forEach, map, isEmpty} from 'lodash'; -import {expandTypeValue, isLightweightClass, isUnionOrIntersectionType} from '../easy-ast/ast-util'; -import {LightweightAliasDefinition} from '../easy-ast/types/lightweight-alias-definition'; -import {LightweightClassDefinition} from '../easy-ast/types/lightweight-class-definition'; -import {LightweightDefinition} from '../easy-ast/types/lightweight-definition'; -import {LightweightProperty} from '../easy-ast/types/lightweight-property'; -import {LightweightType} from '../easy-ast/types/lightweight-type'; -import {UMLConfig} from './uml-config'; +import {expandTypeValue, isLightweightClass} from '../easy-ast/ast-util.js'; +import {LightweightAliasDefinition} from '../easy-ast/types/lightweight-alias-definition.js'; +import {LightweightClassDefinition} from '../easy-ast/types/lightweight-class-definition.js'; +import {LightweightDefinition} from '../easy-ast/types/lightweight-definition.js'; +import {LightweightProperty} from '../easy-ast/types/lightweight-property.js'; +import {LightweightType} from '../easy-ast/types/lightweight-type.js'; +import {UMLConfig} from './uml-config.js'; /** * Converts the lightweight class/enum definitions according to the configuration, @@ -39,7 +38,7 @@ export async function createDiagram( plantUmlBaseURL: string, ): Promise { // when non definitions were specified use all - config.definitions = map(definitions, 'name'); + config.definitions = definitions.map(it => it.name); // when providing definitions and either showing associations or inheritance the // inherited definitions will be added automatically @@ -54,9 +53,9 @@ export async function createDiagram( // creates a UML definition for every specified definition name // however if no definitions were provided all definitions will be transformed - const modelPlantUMLCode = map( - definitions.filter(it => !config.definitions.includes(it.name)), - definition => + const modelPlantUMLCode = definitions + .filter(it => !config.definitions.includes(it.name)) + .map(definition => isLightweightClass(definition) ? createPlantUMLCodeForClass(config, definition) : createPlantUMLCodeForEnum(config, definition), @@ -152,18 +151,20 @@ function getReferenceTypes(type: LightweightType): string[] { types.push(type.referenceName); } - forEach(type.genericsTypes, specificType => { - for (const value of getReferenceTypes(specificType)) { - types.push(value); - } - }); - - if ((isUnionOrIntersectionType(type) && isEmpty(type.specificationTypes)) || type.isArray) { - forEach(type.specificationTypes, specificType => { + if (type.genericsTypes) { + for (const specificType of type.genericsTypes) { for (const value of getReferenceTypes(specificType)) { types.push(value); } - }); + } + } + + if (Array.isArray(type.specificationTypes)) { + for (const specificType of type.specificationTypes) { + for (const value of getReferenceTypes(specificType)) { + types.push(value); + } + } } return types; @@ -194,35 +195,39 @@ function createPlantUMLCodeForClass(config: UMLConfig, readerClass: LightweightC model += '{'; // add the properties to the definition body - if (config.showProperties) { - forEach(readerClass.properties, property => { + if (config.showProperties && readerClass.properties) { + for (const key in readerClass.properties) { + const property = readerClass.properties[key]; if (property.optional && !config.showOptionalProperties) { // don't show optional attributes - return; + continue; } /*if (property.inherited && !config.showInheritedProperties) { // don't show inherited properties continue; }*/ model += `\n\t${createPropertyLine(property)}`; - }); + } } // close the definition body model += '\n}\n'; // add associations from properties with references - forEach(readerClass.properties, property => { - const types: string[] = getReferenceTypes(property.type); - for (const type of types) { - if (config.showAssociations) { - /*if (property.inherited && !config.showInheritedProperties) { - continue; - }*/ - model += `${readerClass.name} -up-> ${type} : ${property.name} >\n`; + if (readerClass.properties) { + for (const key in readerClass.properties) { + const property = readerClass.properties[key]; + const types: string[] = getReferenceTypes(property.type); + for (const type of types) { + if (config.showAssociations) { + /*if (property.inherited && !config.showInheritedProperties) { + continue; + }*/ + model += `${readerClass.name} -up-> ${type} : ${property.name} >\n`; + } } } - }); + } return model; } @@ -237,10 +242,10 @@ function createPlantUMLCodeForEnum(config: UMLConfig, readerEnum: LightweightAli // create enum header let model = `enum ${readerEnum.name} {`; // add values - if (config.showEnumValues) { - forEach(readerEnum.type?.specificationTypes, value => { + if (config.showEnumValues && readerEnum.type?.specificationTypes) { + for (const value of readerEnum.type?.specificationTypes) { model += `\n\t${value.toString()}`; - }); + } } model += '\n}\n'; diff --git a/packages/core-tools/src/util/guards.ts b/packages/core-tools/src/util/guards.ts index 707505a7..1070e412 100644 --- a/packages/core-tools/src/util/guards.ts +++ b/packages/core-tools/src/util/guards.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {JSONSchema7 as JSONSchema} from 'json-schema'; -import {SchemaWithDefinitions} from '../types/schema'; +import {SchemaWithDefinitions} from '../types/schema.js'; /** * Guard for if a JSON schema is in fact a schema with definitions diff --git a/packages/core-tools/src/validate.ts b/packages/core-tools/src/validate.ts index c4cc14a1..e6c64abf 100644 --- a/packages/core-tools/src/validate.ts +++ b/packages/core-tools/src/validate.ts @@ -17,14 +17,14 @@ import Ajv from 'ajv'; import betterAjvErrors, {IOutputError} from 'better-ajv-errors'; import {PathLike} from 'fs'; import {JSONSchema7} from 'json-schema'; -import * as mustache from 'mustache'; +import mustache from 'mustache'; import {Schema} from 'ts-json-schema-generator'; -import {globPromisified, readFilePromisified, writeFilePromisified} from './common'; -import {ExpectedValidationErrors, ValidationError, ValidationResult} from './types/validator'; -import {isThingWithType} from './util/guards'; +import {globPromisified, readFilePromisified, writeFilePromisified} from './common.js'; +import {ExpectedValidationErrors, ValidationError, ValidationResult} from './types/validator.js'; +import {isThingWithType} from './util/guards.js'; import path from 'path'; -import re2 from './types/re2'; -import {toPosixPath} from './util/posix-path'; +import re2 from './types/re2.js'; +import {toPosixPath} from './util/posix-path.js'; /** * StAppsCore validator @@ -33,7 +33,7 @@ export class Validator { /** * JSON Schema Validator */ - private readonly ajv = new Ajv({ + private readonly ajv = new Ajv.default({ verbose: true, code: {regExp: re2}, }); @@ -132,7 +132,7 @@ function fromAjvResult( result: boolean | PromiseLike, schema: JSONSchema7, instance: unknown, - ajvInstance: Ajv, + ajvInstance: Ajv.default, ): ValidationResult { const betterErrorObject: IOutputError[] | undefined = betterAjvErrors( schema, diff --git a/packages/core-tools/test/common.spec.ts b/packages/core-tools/test/common.spec.ts index 88ffa845..a60b79fb 100644 --- a/packages/core-tools/test/common.spec.ts +++ b/packages/core-tools/test/common.spec.ts @@ -17,7 +17,7 @@ import {Logger} from '@openstapps/logger'; import {expect} from 'chai'; import {slow, suite, test, timeout} from '@testdeck/mocha'; import {cwd} from 'process'; -import {getTsconfigPath} from '../src/common'; +import {getTsconfigPath} from '../src/common.js'; process.on('unhandledRejection', (reason: unknown): void => { if (reason instanceof Error) { diff --git a/packages/core-tools/test/create-diagram.spec.ts b/packages/core-tools/test/create-diagram.spec.ts index 99179d82..e6dcdaa5 100644 --- a/packages/core-tools/test/create-diagram.spec.ts +++ b/packages/core-tools/test/create-diagram.spec.ts @@ -16,11 +16,11 @@ import {expect} from 'chai'; import {existsSync, unlinkSync} from 'fs'; import {slow, suite, test, timeout} from '@testdeck/mocha'; -import {createDiagram, createDiagramFromString} from '../src/uml/create-diagram'; -import {UMLConfig} from '../src/uml/uml-config'; -import {LightweightDefinition} from '../src/easy-ast/types/lightweight-definition'; +import {createDiagram, createDiagramFromString} from '../src/uml/create-diagram.js'; +import {UMLConfig} from '../src/uml/uml-config.js'; +import {LightweightDefinition} from '../src/easy-ast/types/lightweight-definition.js'; import nock = require('nock'); -import {lightweightDefinitionsFromPath} from '../src/easy-ast/easy-ast'; +import {lightweightDefinitionsFromPath} from '../src/easy-ast/easy-ast.js'; import path from 'path'; @suite(timeout(15_000), slow(5000)) diff --git a/packages/core-tools/test/easy-ast.spec.ts b/packages/core-tools/test/easy-ast.spec.ts index 26a43468..8938dddf 100644 --- a/packages/core-tools/test/easy-ast.spec.ts +++ b/packages/core-tools/test/easy-ast.spec.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {expandPathToFilesSync, toUnixPath} from '../src/util/io'; -import {EasyAstSpecType} from './easy-ast/easy-ast-spec-type'; -import {lightweightProjectFromPath} from '../src/easy-ast/easy-ast'; +import {expandPathToFilesSync, toUnixPath} from '../src/util/io.js'; +import {EasyAstSpecType} from './easy-ast/easy-ast-spec-type.js'; +import {lightweightProjectFromPath} from '../src/easy-ast/easy-ast.js'; import {expect} from 'chai'; import {omitBy} from 'lodash'; diff --git a/packages/core-tools/test/easy-ast/alias-like.ast-test.ts b/packages/core-tools/test/easy-ast/alias-like.ast-test.ts index 7d740cec..f7097e42 100644 --- a/packages/core-tools/test/easy-ast/alias-like.ast-test.ts +++ b/packages/core-tools/test/easy-ast/alias-like.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; type TestTypeAlias = number | string; diff --git a/packages/core-tools/test/easy-ast/array-like.ast-test.ts b/packages/core-tools/test/easy-ast/array-like.ast-test.ts index fcb1ab28..c33724b0 100644 --- a/packages/core-tools/test/easy-ast/array-like.ast-test.ts +++ b/packages/core-tools/test/easy-ast/array-like.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface Random {} diff --git a/packages/core-tools/test/easy-ast/class-like.ast-test.ts b/packages/core-tools/test/easy-ast/class-like.ast-test.ts index 71404197..9ba26e7c 100644 --- a/packages/core-tools/test/easy-ast/class-like.ast-test.ts +++ b/packages/core-tools/test/easy-ast/class-like.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface TestInterface { foo: number; diff --git a/packages/core-tools/test/easy-ast/comment.ast-test.ts b/packages/core-tools/test/easy-ast/comment.ast-test.ts index c93b3d99..4db61a5f 100644 --- a/packages/core-tools/test/easy-ast/comment.ast-test.ts +++ b/packages/core-tools/test/easy-ast/comment.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; /** * Class comment diff --git a/packages/core-tools/test/easy-ast/default-generics.ast-test.ts b/packages/core-tools/test/easy-ast/default-generics.ast-test.ts index 2dc63fe3..20392a31 100644 --- a/packages/core-tools/test/easy-ast/default-generics.ast-test.ts +++ b/packages/core-tools/test/easy-ast/default-generics.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface Test1 { foo: T; diff --git a/packages/core-tools/test/easy-ast/easy-ast-spec-type.ts b/packages/core-tools/test/easy-ast/easy-ast-spec-type.ts index 915488be..683b73ea 100644 --- a/packages/core-tools/test/easy-ast/easy-ast-spec-type.ts +++ b/packages/core-tools/test/easy-ast/easy-ast-spec-type.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LightweightFile} from '../../src/easy-ast/types/lightweight-project'; +import {LightweightFile} from '../../src/easy-ast/types/lightweight-project.js'; export interface EasyAstSpecType { testName: string; diff --git a/packages/core-tools/test/easy-ast/enum-specified-value.ast-test.ts b/packages/core-tools/test/easy-ast/enum-specified-value.ast-test.ts index 34288fdd..6b41af7b 100644 --- a/packages/core-tools/test/easy-ast/enum-specified-value.ast-test.ts +++ b/packages/core-tools/test/easy-ast/enum-specified-value.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; enum TestAuto { Foo, diff --git a/packages/core-tools/test/easy-ast/generics.ast-test.ts b/packages/core-tools/test/easy-ast/generics.ast-test.ts index 38416c83..78d6c305 100644 --- a/packages/core-tools/test/easy-ast/generics.ast-test.ts +++ b/packages/core-tools/test/easy-ast/generics.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface $Random {} diff --git a/packages/core-tools/test/easy-ast/index-signature.ast-test.ts b/packages/core-tools/test/easy-ast/index-signature.ast-test.ts index bd393599..2d038187 100644 --- a/packages/core-tools/test/easy-ast/index-signature.ast-test.ts +++ b/packages/core-tools/test/easy-ast/index-signature.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface $Random {} diff --git a/packages/core-tools/test/easy-ast/ineritance.ast-test.ts b/packages/core-tools/test/easy-ast/ineritance.ast-test.ts index b96a9385..42728f3f 100644 --- a/packages/core-tools/test/easy-ast/ineritance.ast-test.ts +++ b/packages/core-tools/test/easy-ast/ineritance.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface $BaseInterface { foo: T; diff --git a/packages/core-tools/test/easy-ast/nested.ast-test.ts b/packages/core-tools/test/easy-ast/nested.ast-test.ts index e9f1a334..257f5e52 100644 --- a/packages/core-tools/test/easy-ast/nested.ast-test.ts +++ b/packages/core-tools/test/easy-ast/nested.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface NestedObject { nested: { diff --git a/packages/core-tools/test/easy-ast/primitive-types.ast-test.ts b/packages/core-tools/test/easy-ast/primitive-types.ast-test.ts index a29992ce..16edae06 100644 --- a/packages/core-tools/test/easy-ast/primitive-types.ast-test.ts +++ b/packages/core-tools/test/easy-ast/primitive-types.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface Test { number_type: number; diff --git a/packages/core-tools/test/easy-ast/stack-overflow.ast-test.ts b/packages/core-tools/test/easy-ast/stack-overflow.ast-test.ts index 2bb5708d..c2a4432f 100644 --- a/packages/core-tools/test/easy-ast/stack-overflow.ast-test.ts +++ b/packages/core-tools/test/easy-ast/stack-overflow.ast-test.ts @@ -13,8 +13,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {EasyAstSpecType} from './easy-ast-spec-type'; -import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind'; +import {EasyAstSpecType} from './easy-ast-spec-type.js'; +import {LightweightDefinitionKind} from '../../src/easy-ast/types/lightweight-definition-kind.js'; interface Foo> { bar: T; diff --git a/packages/core-tools/test/model/src/test-class.ts b/packages/core-tools/test/model/src/test-class.ts index f659086c..0cd89913 100644 --- a/packages/core-tools/test/model/src/test-class.ts +++ b/packages/core-tools/test/model/src/test-class.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {TestFirstUnion} from './test-union'; +import {TestFirstUnion} from './test-union.js'; export class TestClass { test2: T; diff --git a/packages/core-tools/test/model/src/test-interface.ts b/packages/core-tools/test/model/src/test-interface.ts index e0647bab..13afe1bd 100644 --- a/packages/core-tools/test/model/src/test-interface.ts +++ b/packages/core-tools/test/model/src/test-interface.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {TestClass, TestSecondClass} from './test-class'; -import {TestFirstEnum} from './test-enum'; -import {TestThirdUnion} from './test-union'; +import {TestClass, TestSecondClass} from './test-class.js'; +import {TestFirstEnum} from './test-enum.js'; +import {TestThirdUnion} from './test-union.js'; export interface TestInterface { articleBody: string[]; diff --git a/packages/core-tools/test/posix-path.spec.ts b/packages/core-tools/test/posix-path.spec.ts index 6e7cf5b6..7d23a983 100644 --- a/packages/core-tools/test/posix-path.spec.ts +++ b/packages/core-tools/test/posix-path.spec.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {expect} from 'chai'; -import {toPosixPath} from '../src/util/posix-path'; +import {toPosixPath} from '../src/util/posix-path.js'; import path from 'path'; describe('posix-path', function () { diff --git a/packages/core-tools/test/schema.spec.ts b/packages/core-tools/test/schema.spec.ts index 91624fdf..99218ab6 100644 --- a/packages/core-tools/test/schema.spec.ts +++ b/packages/core-tools/test/schema.spec.ts @@ -16,7 +16,7 @@ import {Logger} from '@openstapps/logger'; import {expect} from 'chai'; import {slow, suite, test, timeout} from '@testdeck/mocha'; -import {Converter} from '../src/schema'; +import {Converter} from '../src/schema.js'; import path from 'path'; process.on('unhandledRejection', (error: unknown) => { diff --git a/packages/core-tools/test/validate.spec.ts b/packages/core-tools/test/validate.spec.ts index cc8b3198..28b11ba0 100644 --- a/packages/core-tools/test/validate.spec.ts +++ b/packages/core-tools/test/validate.spec.ts @@ -19,9 +19,9 @@ import {existsSync, mkdirSync, writeFileSync} from 'fs'; import {JSONSchema7 as Schema} from 'json-schema'; import {slow, suite, test, timeout} from '@testdeck/mocha'; import rimraf from 'rimraf'; -import {Foo} from '../src/resources/foo'; -import {Converter} from '../src/schema'; -import {Validator} from '../src/validate'; +import {Foo} from '../src/resources/foo.js'; +import {Converter} from '../src/schema.js'; +import {Validator} from '../src/validate.js'; import path from 'path'; process.on('unhandledRejection', (error: unknown) => { diff --git a/packages/core/package.json b/packages/core/package.json index 083b2997..fbe03868 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/core", "description": "StAppsCore - Generalized model of data", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/core.git", "author": "Karl-Philipp Wulfert ", @@ -74,8 +75,8 @@ "source-map-support": "0.5.21", "surge": "0.23.1", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "prettier": "@openstapps/prettier-config", "keywords": [ diff --git a/packages/core/src/config/app.ts b/packages/core/src/config/app.ts index d5b73a15..19a58ad8 100644 --- a/packages/core/src/config/app.ts +++ b/packages/core/src/config/app.ts @@ -13,11 +13,11 @@ * this program. If not, see . */ import {Polygon} from 'geojson'; -import {SCTranslations} from '../general/i18n'; -import {SCMap} from '../general/map'; -import {SCLanguageSetting, SCSetting, SCUserGroupSetting} from '../things/setting'; -import {SCAuthorizationProviderType} from './authorization'; -import {SCFeatureConfiguration} from './feature'; +import {SCTranslations} from '../general/i18n.js'; +import {SCMap} from '../general/map.js'; +import {SCLanguageSetting, SCSetting, SCUserGroupSetting} from '../things/setting.js'; +import {SCAuthorizationProviderType} from './authorization.js'; +import {SCFeatureConfiguration} from './feature.js'; /** * An app configuration menu item diff --git a/packages/core/src/config/authorization.ts b/packages/core/src/config/authorization.ts index 5f9558e3..c9211d08 100644 --- a/packages/core/src/config/authorization.ts +++ b/packages/core/src/config/authorization.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ -import {SCUserConfigurationMap} from './user'; +import {SCUserConfigurationMap} from './user.js'; /** * Supported authorization provider types diff --git a/packages/core/src/config/backend.ts b/packages/core/src/config/backend.ts index 0f48e2e2..251e2cdb 100644 --- a/packages/core/src/config/backend.ts +++ b/packages/core/src/config/backend.ts @@ -12,11 +12,11 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMap, SCRestrictedMap} from '../general/map'; -import {SCUuid} from '../general/uuid'; -import {SCSearchSortType} from '../protocol/search/sort'; -import {SCThingType} from '../things/abstract/thing'; -import {SCMonitoringConfiguration} from './monitoring'; +import {SCMap, SCRestrictedMap} from '../general/map.js'; +import {SCUuid} from '../general/uuid.js'; +import {SCSearchSortType} from '../protocol/search/sort.js'; +import {SCThingType} from '../things/abstract/thing.js'; +import {SCMonitoringConfiguration} from './monitoring.js'; /** * A backend configuration diff --git a/packages/core/src/config/feature.ts b/packages/core/src/config/feature.ts index 78ef2506..553c2fb2 100644 --- a/packages/core/src/config/feature.ts +++ b/packages/core/src/config/feature.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {SCMap} from '../general/map'; -import {SCAuthorizationProviderType} from './authorization'; +import {SCMap} from '../general/map.js'; +import {SCAuthorizationProviderType} from './authorization.js'; export interface SCFeatureConfiguration { /** diff --git a/packages/core/src/config/file.ts b/packages/core/src/config/file.ts index 316bc63c..8e690a7c 100644 --- a/packages/core/src/config/file.ts +++ b/packages/core/src/config/file.ts @@ -12,10 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLicensePlate} from '../general/namespaces'; -import {SCAppConfiguration} from './app'; -import {SCAuthorizationProvider, SCAuthorizationProviderType} from './authorization'; -import {SCBackendConfiguration, SCBackendInternalConfiguration} from './backend'; +import {SCLicensePlate} from '../general/namespaces.js'; +import {SCAppConfiguration} from './app.js'; +import {SCAuthorizationProvider, SCAuthorizationProviderType} from './authorization.js'; +import {SCBackendConfiguration, SCBackendInternalConfiguration} from './backend.js'; /** * A configuration file that configures app and backend diff --git a/packages/core/src/guards.ts b/packages/core/src/guards.ts index a33d6abb..617960c0 100644 --- a/packages/core/src/guards.ts +++ b/packages/core/src/guards.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCTranslations} from './general/i18n'; -import {SCBulkResponse} from './protocol/routes/bulk-request'; -import {SCSearchResponse} from './protocol/routes/search'; -import {SCMultiSearchResponse} from './protocol/routes/search-multi'; +import {SCTranslations} from './general/i18n.js'; +import {SCBulkResponse} from './protocol/routes/bulk-request.js'; +import {SCSearchResponse} from './protocol/routes/search.js'; +import {SCMultiSearchResponse} from './protocol/routes/search-multi.js'; import { SCThing, SCThingTranslatableProperties, SCThingType, SCThingWithoutReferences, -} from './things/abstract/thing'; +} from './things/abstract/thing.js'; /** * Type guard to check if something is a SCThing diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 895c0ebe..d84dd350 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -1,102 +1,102 @@ -export * from './guards'; -export * from './meta'; -export * from './translator'; +export * from './guards.js'; +export * from './meta.js'; +export * from './translator.js'; -export * from './config/app'; -export * from './config/authorization'; -export * from './config/backend'; -export * from './config/feature'; -export * from './config/file'; -export * from './config/monitoring'; -export * from './config/user'; +export * from './config/app.js'; +export * from './config/authorization.js'; +export * from './config/backend.js'; +export * from './config/feature.js'; +export * from './config/file.js'; +export * from './config/monitoring.js'; +export * from './config/user.js'; -export * from './general/i18n'; -export * from './general/map'; -export * from './general/namespaces'; -export * from './general/time'; -export * from './general/uuid'; +export * from './general/i18n.js'; +export * from './general/map.js'; +export * from './general/namespaces.js'; +export * from './general/time.js'; +export * from './general/uuid.js'; -export * from './protocol/error'; -export * from './protocol/route'; +export * from './protocol/error.js'; +export * from './protocol/route.js'; -export * from './things/academic-event'; -export * from './things/article'; -export * from './things/assessment'; -export * from './things/book'; -export * from './things/building'; -export * from './things/catalog'; -export * from './things/contact-point'; -export * from './things/course-of-study'; -export * from './things/date-series'; -export * from './things/diff'; -export * from './things/dish'; -export * from './things/favorite'; -export * from './things/floor'; -export * from './things/message'; -export * from './things/organization'; -export * from './things/periodical'; -export * from './things/person'; -export * from './things/point-of-interest'; -export * from './things/publication-event'; -export * from './things/room'; -export * from './things/semester'; -export * from './things/setting'; -export * from './things/sport-course'; -export * from './things/study-module'; -export * from './things/ticket'; -export * from './things/todo'; -export * from './things/tour'; -export * from './things/video'; +export * from './things/academic-event.js'; +export * from './things/article.js'; +export * from './things/assessment.js'; +export * from './things/book.js'; +export * from './things/building.js'; +export * from './things/catalog.js'; +export * from './things/contact-point.js'; +export * from './things/course-of-study.js'; +export * from './things/date-series.js'; +export * from './things/diff.js'; +export * from './things/dish.js'; +export * from './things/favorite.js'; +export * from './things/floor.js'; +export * from './things/message.js'; +export * from './things/organization.js'; +export * from './things/periodical.js'; +export * from './things/person.js'; +export * from './things/point-of-interest.js'; +export * from './things/publication-event.js'; +export * from './things/room.js'; +export * from './things/semester.js'; +export * from './things/setting.js'; +export * from './things/sport-course.js'; +export * from './things/study-module.js'; +export * from './things/ticket.js'; +export * from './things/todo.js'; +export * from './things/tour.js'; +export * from './things/video.js'; -export * from './protocol/errors/internal-server-error'; -export * from './protocol/errors/method-not-allowed'; -export * from './protocol/errors/not-found'; -export * from './protocol/errors/parameters-not-acceptable'; -export * from './protocol/errors/plugin-already-registered'; -export * from './protocol/errors/plugin-registering-failed'; -export * from './protocol/errors/request-body-too-large'; -export * from './protocol/errors/syntax-error'; -export * from './protocol/errors/too-many-requests'; -export * from './protocol/errors/unsupported-media-type'; -export * from './protocol/errors/validation'; -export * from './protocol/routes/book-availability'; -export * from './protocol/routes/bulk-add'; -export * from './protocol/routes/bulk-done'; -export * from './protocol/routes/bulk-request'; -export * from './protocol/routes/feedback'; -export * from './protocol/routes/index'; -export * from './protocol/routes/plugin-register'; -export * from './protocol/routes/rating'; -export * from './protocol/routes/search-multi'; -export * from './protocol/routes/search'; -export * from './protocol/routes/thing-update'; -export * from './protocol/search/facet'; -export * from './protocol/search/filter'; -export * from './protocol/search/query'; -export * from './protocol/search/result'; -export * from './protocol/search/sort'; +export * from './protocol/errors/internal-server-error.js'; +export * from './protocol/errors/method-not-allowed.js'; +export * from './protocol/errors/not-found.js'; +export * from './protocol/errors/parameters-not-acceptable.js'; +export * from './protocol/errors/plugin-already-registered.js'; +export * from './protocol/errors/plugin-registering-failed.js'; +export * from './protocol/errors/request-body-too-large.js'; +export * from './protocol/errors/syntax-error.js'; +export * from './protocol/errors/too-many-requests.js'; +export * from './protocol/errors/unsupported-media-type.js'; +export * from './protocol/errors/validation.js'; +export * from './protocol/routes/book-availability.js'; +export * from './protocol/routes/bulk-add.js'; +export * from './protocol/routes/bulk-done.js'; +export * from './protocol/routes/bulk-request.js'; +export * from './protocol/routes/feedback.js'; +export * from './protocol/routes/index.js'; +export * from './protocol/routes/plugin-register.js'; +export * from './protocol/routes/rating.js'; +export * from './protocol/routes/search-multi.js'; +export * from './protocol/routes/search.js'; +export * from './protocol/routes/thing-update.js'; +export * from './protocol/search/facet.js'; +export * from './protocol/search/filter.js'; +export * from './protocol/search/query.js'; +export * from './protocol/search/result.js'; +export * from './protocol/search/sort.js'; -export * from './things/abstract/academic-degree'; -export * from './things/abstract/academic-term'; -export * from './things/abstract/creative-work'; -export * from './things/abstract/event'; -export * from './things/abstract/place'; -export * from './things/abstract/range'; -export * from './things/abstract/saveable-thing'; -export * from './things/abstract/thing-in-place'; -export * from './things/abstract/thing-that-accepts-payments'; -export * from './things/abstract/thing-that-can-be-offered'; -export * from './things/abstract/thing-with-categories'; -export * from './things/abstract/thing'; -export * from './things/abstract/user-groups'; +export * from './things/abstract/academic-degree.js'; +export * from './things/abstract/academic-term.js'; +export * from './things/abstract/creative-work.js'; +export * from './things/abstract/event.js'; +export * from './things/abstract/place.js'; +export * from './things/abstract/range.js'; +export * from './things/abstract/saveable-thing.js'; +export * from './things/abstract/thing-in-place.js'; +export * from './things/abstract/thing-that-accepts-payments.js'; +export * from './things/abstract/thing-that-can-be-offered.js'; +export * from './things/abstract/thing-with-categories.js'; +export * from './things/abstract/thing.js'; +export * from './things/abstract/user-groups.js'; -export * from './protocol/search/filters/availability'; -export * from './protocol/search/filters/boolean'; -export * from './protocol/search/filters/distance'; -export * from './protocol/search/filters/geo'; -export * from './protocol/search/filters/range'; -export * from './protocol/search/filters/value'; -export * from './protocol/search/sorts/distance'; -export * from './protocol/search/sorts/ducet'; -export * from './protocol/search/sorts/generic'; -export * from './protocol/search/sorts/price'; \ No newline at end of file +export * from './protocol/search/filters/availability.js'; +export * from './protocol/search/filters/boolean.js'; +export * from './protocol/search/filters/distance.js'; +export * from './protocol/search/filters/geo.js'; +export * from './protocol/search/filters/range.js'; +export * from './protocol/search/filters/value.js'; +export * from './protocol/search/sorts/distance.js'; +export * from './protocol/search/sorts/ducet.js'; +export * from './protocol/search/sorts/generic.js'; +export * from './protocol/search/sorts/price.js'; diff --git a/packages/core/src/meta.ts b/packages/core/src/meta.ts index 55e5ee6c..df48d2c7 100644 --- a/packages/core/src/meta.ts +++ b/packages/core/src/meta.ts @@ -12,52 +12,52 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCThingType} from './things/abstract/thing'; +import {SCThingType} from './things/abstract/thing.js'; import { SCAcademicEvent, SCAcademicEventMeta, SCAcademicEventWithoutReferences, -} from './things/academic-event'; -import {SCArticle, SCArticleMeta, SCArticleWithoutReferences} from './things/article'; -import {SCAssessment, SCAssessmentMeta, SCAssessmentWithoutReferences} from './things/assessment'; -import {SCBook, SCBookMeta, SCBookWithoutReferences} from './things/book'; -import {SCBuilding, SCBuildingMeta, SCBuildingWithoutReferences} from './things/building'; -import {SCCatalog, SCCatalogMeta, SCCatalogWithoutReferences} from './things/catalog'; +} from './things/academic-event.js'; +import {SCArticle, SCArticleMeta, SCArticleWithoutReferences} from './things/article.js'; +import {SCAssessment, SCAssessmentMeta, SCAssessmentWithoutReferences} from './things/assessment.js'; +import {SCBook, SCBookMeta, SCBookWithoutReferences} from './things/book.js'; +import {SCBuilding, SCBuildingMeta, SCBuildingWithoutReferences} from './things/building.js'; +import {SCCatalog, SCCatalogMeta, SCCatalogWithoutReferences} from './things/catalog.js'; import {SCCertification, SCCertificationMeta, SCCertificationWithoutReferences} from './things/certification'; -import {SCContactPoint, SCContactPointMeta, SCContactPointWithoutReferences} from './things/contact-point'; +import {SCContactPoint, SCContactPointMeta, SCContactPointWithoutReferences} from './things/contact-point.js'; import { SCCourseOfStudy, SCCourseOfStudyMeta, SCCourseOfStudyWithoutReferences, -} from './things/course-of-study'; -import {SCDateSeries, SCDateSeriesMeta, SCDateSeriesWithoutReferences} from './things/date-series'; -import {SCDiff, SCDiffMeta, SCDiffWithoutReferences} from './things/diff'; -import {SCDish, SCDishMeta, SCDishWithoutReferences} from './things/dish'; -import {SCFavorite, SCFavoriteMeta, SCFavoriteWithoutReferences} from './things/favorite'; -import {SCFloor, SCFloorMeta, SCFloorWithoutReferences} from './things/floor'; -import {SCMessage, SCMessageMeta, SCMessageWithoutReferences} from './things/message'; -import {SCOrganization, SCOrganizationMeta, SCOrganizationWithoutReferences} from './things/organization'; -import {SCPeriodical, SCPeriodicalMeta, SCPeriodicalWithoutReferences} from './things/periodical'; -import {SCPerson, SCPersonMeta, SCPersonWithoutReferences} from './things/person'; +} from './things/course-of-study.js'; +import {SCDateSeries, SCDateSeriesMeta, SCDateSeriesWithoutReferences} from './things/date-series.js'; +import {SCDiff, SCDiffMeta, SCDiffWithoutReferences} from './things/diff.js'; +import {SCDish, SCDishMeta, SCDishWithoutReferences} from './things/dish.js'; +import {SCFavorite, SCFavoriteMeta, SCFavoriteWithoutReferences} from './things/favorite.js'; +import {SCFloor, SCFloorMeta, SCFloorWithoutReferences} from './things/floor.js'; +import {SCMessage, SCMessageMeta, SCMessageWithoutReferences} from './things/message.js'; +import {SCOrganization, SCOrganizationMeta, SCOrganizationWithoutReferences} from './things/organization.js'; +import {SCPeriodical, SCPeriodicalMeta, SCPeriodicalWithoutReferences} from './things/periodical.js'; +import {SCPerson, SCPersonMeta, SCPersonWithoutReferences} from './things/person.js'; import { SCPointOfInterest, SCPointOfInterestMeta, SCPointOfInterestWithoutReferences, -} from './things/point-of-interest'; +} from './things/point-of-interest.js'; import { SCPublicationEvent, SCPublicationEventMeta, SCPublicationEventWithoutReferences, -} from './things/publication-event'; -import {SCRoom, SCRoomMeta, SCRoomWithoutReferences} from './things/room'; -import {SCSemester, SCSemesterMeta, SCSemesterWithoutReferences} from './things/semester'; -import {SCSetting, SCSettingMeta, SCSettingWithoutReferences} from './things/setting'; -import {SCSportCourse, SCSportCourseMeta, SCSportCourseWithoutReferences} from './things/sport-course'; -import {SCStudyModule, SCStudyModuleMeta, SCStudyModuleWithoutReferences} from './things/study-module'; -import {SCTicket, SCTicketMeta, SCTicketWithoutReferences} from './things/ticket'; -import {SCToDo, SCToDoMeta, SCToDoWithoutReferences} from './things/todo'; -import {SCTour, SCTourMeta, SCTourWithoutReferences} from './things/tour'; -import {SCVideo, SCVideoMeta, SCVideoWithoutReferences} from './things/video'; +} from './things/publication-event.js'; +import {SCRoom, SCRoomMeta, SCRoomWithoutReferences} from './things/room.js'; +import {SCSemester, SCSemesterMeta, SCSemesterWithoutReferences} from './things/semester.js'; +import {SCSetting, SCSettingMeta, SCSettingWithoutReferences} from './things/setting.js'; +import {SCSportCourse, SCSportCourseMeta, SCSportCourseWithoutReferences} from './things/sport-course.js'; +import {SCStudyModule, SCStudyModuleMeta, SCStudyModuleWithoutReferences} from './things/study-module.js'; +import {SCTicket, SCTicketMeta, SCTicketWithoutReferences} from './things/ticket.js'; +import {SCToDo, SCToDoMeta, SCToDoWithoutReferences} from './things/todo.js'; +import {SCTour, SCTourMeta, SCTourWithoutReferences} from './things/tour.js'; +import {SCVideo, SCVideoMeta, SCVideoWithoutReferences} from './things/video.js'; /** * A map of things, from type to meta data diff --git a/packages/core/src/protocol/errors/internal-server-error.ts b/packages/core/src/protocol/errors/internal-server-error.ts index 94e882ca..3472d48a 100644 --- a/packages/core/src/protocol/errors/internal-server-error.ts +++ b/packages/core/src/protocol/errors/internal-server-error.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned, when an internal server error occurred diff --git a/packages/core/src/protocol/errors/method-not-allowed.ts b/packages/core/src/protocol/errors/method-not-allowed.ts index 474d7a8b..05e4858a 100644 --- a/packages/core/src/protocol/errors/method-not-allowed.ts +++ b/packages/core/src/protocol/errors/method-not-allowed.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned, when the used HTTP method is not allowed on the requested route diff --git a/packages/core/src/protocol/errors/not-found.ts b/packages/core/src/protocol/errors/not-found.ts index d5ac0a9b..4d7d98c9 100644 --- a/packages/core/src/protocol/errors/not-found.ts +++ b/packages/core/src/protocol/errors/not-found.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned when the requested route or resource was not found diff --git a/packages/core/src/protocol/errors/parameters-not-acceptable.ts b/packages/core/src/protocol/errors/parameters-not-acceptable.ts index ad5dcec1..1b451961 100644 --- a/packages/core/src/protocol/errors/parameters-not-acceptable.ts +++ b/packages/core/src/protocol/errors/parameters-not-acceptable.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned when the request is in the right format, but contains parameters that are invalid or not diff --git a/packages/core/src/protocol/errors/plugin-already-registered.ts b/packages/core/src/protocol/errors/plugin-already-registered.ts index c2ebede0..4b1bc809 100644 --- a/packages/core/src/protocol/errors/plugin-already-registered.ts +++ b/packages/core/src/protocol/errors/plugin-already-registered.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; -import {SCPluginMetaData} from '../routes/plugin-register'; +import {SCError} from '../error.js'; +import {SCPluginMetaData} from '../routes/plugin-register.js'; /** * An error that is returned when a plugin with the same name is already registered, to prevent two copies of a plugin diff --git a/packages/core/src/protocol/errors/plugin-registering-failed.ts b/packages/core/src/protocol/errors/plugin-registering-failed.ts index 76d78d94..75360a72 100644 --- a/packages/core/src/protocol/errors/plugin-registering-failed.ts +++ b/packages/core/src/protocol/errors/plugin-registering-failed.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned whenever there is an unexpected error while creating a plugin diff --git a/packages/core/src/protocol/errors/request-body-too-large.ts b/packages/core/src/protocol/errors/request-body-too-large.ts index 65473b35..bd600d5a 100644 --- a/packages/core/src/protocol/errors/request-body-too-large.ts +++ b/packages/core/src/protocol/errors/request-body-too-large.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned, when the request body is too large. diff --git a/packages/core/src/protocol/errors/syntax-error.ts b/packages/core/src/protocol/errors/syntax-error.ts index a0332cdf..b74036e1 100644 --- a/packages/core/src/protocol/errors/syntax-error.ts +++ b/packages/core/src/protocol/errors/syntax-error.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned whenever there is a syntax error diff --git a/packages/core/src/protocol/errors/too-many-requests.ts b/packages/core/src/protocol/errors/too-many-requests.ts index c0c574ac..a9438c6d 100644 --- a/packages/core/src/protocol/errors/too-many-requests.ts +++ b/packages/core/src/protocol/errors/too-many-requests.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned, when to many request are submitted at once diff --git a/packages/core/src/protocol/errors/unsupported-media-type.ts b/packages/core/src/protocol/errors/unsupported-media-type.ts index 1eef9a6c..257c7271 100644 --- a/packages/core/src/protocol/errors/unsupported-media-type.ts +++ b/packages/core/src/protocol/errors/unsupported-media-type.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned when the content type of the request is not supported diff --git a/packages/core/src/protocol/errors/validation.ts b/packages/core/src/protocol/errors/validation.ts index f7d0c582..421fd1fe 100644 --- a/packages/core/src/protocol/errors/validation.ts +++ b/packages/core/src/protocol/errors/validation.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ValidationError} from '@openstapps/core-tools/lib/types/validator'; +import {ValidationError} from '@openstapps/core-tools/lib/types/validator.js'; import {StatusCodes} from 'http-status-codes'; -import {SCError} from '../error'; +import {SCError} from '../error.js'; /** * An error that is returned when the validation of a request fails diff --git a/packages/core/src/protocol/route.ts b/packages/core/src/protocol/route.ts index 152ef8ea..2e0a59ab 100644 --- a/packages/core/src/protocol/route.ts +++ b/packages/core/src/protocol/route.ts @@ -12,22 +12,22 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMap} from '../general/map'; -import {SCErrorResponse} from './error'; -import {SCIndexRequest, SCIndexResponse, SCIndexRoute} from './routes'; +import {SCMap} from '../general/map.js'; +import {SCErrorResponse} from './error.js'; +import {SCIndexRequest, SCIndexResponse, SCIndexRoute} from './routes/index.js'; import { SCBookAvailabilityRequest, SCBookAvailabilityResponse, SCBookAvailabilityRoute, -} from './routes/book-availability'; -import {SCBulkAddRequest, SCBulkAddResponse, SCBulkAddRoute} from './routes/bulk-add'; -import {SCBulkDoneRequest, SCBulkDoneResponse, SCBulkDoneRoute} from './routes/bulk-done'; -import {SCBulkRequest, SCBulkResponse, SCBulkRoute} from './routes/bulk-request'; -import {SCFeedbackRequest, SCFeedbackResponse, SCFeedbackRoute} from './routes/feedback'; -import {SCSearchRequest, SCSearchResponse, SCSearchRoute} from './routes/search'; -import {SCMultiSearchRequest, SCMultiSearchResponse, SCMultiSearchRoute} from './routes/search-multi'; -import {SCThingUpdateRequest, SCThingUpdateResponse, SCThingUpdateRoute} from './routes/thing-update'; -import {SCRatingRequest, SCRatingResponse, SCRatingRoute} from './routes/rating'; +} from './routes/book-availability.js'; +import {SCBulkAddRequest, SCBulkAddResponse, SCBulkAddRoute} from './routes/bulk-add.js'; +import {SCBulkDoneRequest, SCBulkDoneResponse, SCBulkDoneRoute} from './routes/bulk-done.js'; +import {SCBulkRequest, SCBulkResponse, SCBulkRoute} from './routes/bulk-request.js'; +import {SCFeedbackRequest, SCFeedbackResponse, SCFeedbackRoute} from './routes/feedback.js'; +import {SCSearchRequest, SCSearchResponse, SCSearchRoute} from './routes/search.js'; +import {SCMultiSearchRequest, SCMultiSearchResponse, SCMultiSearchRoute} from './routes/search-multi.js'; +import {SCThingUpdateRequest, SCThingUpdateResponse, SCThingUpdateRoute} from './routes/thing-update.js'; +import {SCRatingRequest, SCRatingResponse, SCRatingRoute} from './routes/rating.js'; /** * Possible Verbs for HTTP requests diff --git a/packages/core/src/protocol/routes/book-availability.ts b/packages/core/src/protocol/routes/book-availability.ts index ec20e917..755c5fc3 100644 --- a/packages/core/src/protocol/routes/book-availability.ts +++ b/packages/core/src/protocol/routes/book-availability.ts @@ -13,19 +13,19 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCUuid} from '../../general/uuid'; +import {SCUuid} from '../../general/uuid.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOfferedOffer, -} from '../../things/abstract/thing-that-can-be-offered'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCNotFoundErrorResponse} from '../errors/not-found'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +} from '../../things/abstract/thing-that-can-be-offered.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCNotFoundErrorResponse} from '../errors/not-found.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Request to check the availability of books diff --git a/packages/core/src/protocol/routes/bulk-add.ts b/packages/core/src/protocol/routes/bulk-add.ts index 6edb98f8..1a691f66 100644 --- a/packages/core/src/protocol/routes/bulk-add.ts +++ b/packages/core/src/protocol/routes/bulk-add.ts @@ -13,15 +13,15 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCThings} from '../../meta'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCNotFoundErrorResponse} from '../errors/not-found'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCThings} from '../../meta.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCNotFoundErrorResponse} from '../errors/not-found.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Request to add a thing to a bulk diff --git a/packages/core/src/protocol/routes/bulk-done.ts b/packages/core/src/protocol/routes/bulk-done.ts index 68514ba1..9b10e465 100644 --- a/packages/core/src/protocol/routes/bulk-done.ts +++ b/packages/core/src/protocol/routes/bulk-done.ts @@ -13,14 +13,14 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCNotFoundErrorResponse} from '../errors/not-found'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCNotFoundErrorResponse} from '../errors/not-found.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Request to change the bulk state to done (close the bulk process) diff --git a/packages/core/src/protocol/routes/bulk-request.ts b/packages/core/src/protocol/routes/bulk-request.ts index d92e6aa7..b9bf0681 100644 --- a/packages/core/src/protocol/routes/bulk-request.ts +++ b/packages/core/src/protocol/routes/bulk-request.ts @@ -13,16 +13,16 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCISO8601Date} from '../../general/time'; -import {SCUuid} from '../../general/uuid'; -import {SCThingType} from '../../things/abstract/thing'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCISO8601Date} from '../../general/time.js'; +import {SCUuid} from '../../general/uuid.js'; +import {SCThingType} from '../../things/abstract/thing.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * A bulk request diff --git a/packages/core/src/protocol/routes/feedback.ts b/packages/core/src/protocol/routes/feedback.ts index c8507f85..fad839b4 100644 --- a/packages/core/src/protocol/routes/feedback.ts +++ b/packages/core/src/protocol/routes/feedback.ts @@ -13,14 +13,14 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCMessage} from '../../things/message'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCMessage} from '../../things/message.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * User feedback diff --git a/packages/core/src/protocol/routes/index.ts b/packages/core/src/protocol/routes/index.ts index 901c7cdf..34f16eee 100644 --- a/packages/core/src/protocol/routes/index.ts +++ b/packages/core/src/protocol/routes/index.ts @@ -13,16 +13,16 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCAppConfiguration} from '../../config/app'; -import {SCAuthorizationProvider, SCAuthorizationProviderType} from '../../config/authorization'; -import {SCBackendConfiguration} from '../../config/backend'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCAppConfiguration} from '../../config/app.js'; +import {SCAuthorizationProvider, SCAuthorizationProviderType} from '../../config/authorization.js'; +import {SCBackendConfiguration} from '../../config/backend.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Index request diff --git a/packages/core/src/protocol/routes/plugin-register.ts b/packages/core/src/protocol/routes/plugin-register.ts index 4a25a636..5d46822c 100644 --- a/packages/core/src/protocol/routes/plugin-register.ts +++ b/packages/core/src/protocol/routes/plugin-register.ts @@ -14,15 +14,15 @@ */ import {StatusCodes} from 'http-status-codes'; import {JSONSchema7} from 'json-schema'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCNotFoundErrorResponse} from '../errors/not-found'; -import {SCParametersNotAcceptable} from '../errors/parameters-not-acceptable'; -import {SCPluginAlreadyRegisteredErrorResponse} from '../errors/plugin-already-registered'; -import {SCPluginRegisteringFailedErrorResponse} from '../errors/plugin-registering-failed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCNotFoundErrorResponse} from '../errors/not-found.js'; +import {SCParametersNotAcceptable} from '../errors/parameters-not-acceptable.js'; +import {SCPluginAlreadyRegisteredErrorResponse} from '../errors/plugin-already-registered.js'; +import {SCPluginRegisteringFailedErrorResponse} from '../errors/plugin-registering-failed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Plugin register request diff --git a/packages/core/src/protocol/routes/rating.ts b/packages/core/src/protocol/routes/rating.ts index 14309a32..b51d493e 100644 --- a/packages/core/src/protocol/routes/rating.ts +++ b/packages/core/src/protocol/routes/rating.ts @@ -13,15 +13,15 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; -import {SCThing} from '../../things/abstract/thing'; -import {SCUserGroupSetting} from '../../things/setting'; -import {SCValidationErrorResponse} from '../errors/validation'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; +import {SCThing} from '../../things/abstract/thing.js'; +import {SCUserGroupSetting} from '../../things/setting.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; /** * User rating from the app diff --git a/packages/core/src/protocol/routes/search-multi.ts b/packages/core/src/protocol/routes/search-multi.ts index 8a5e7495..edaf20d5 100644 --- a/packages/core/src/protocol/routes/search-multi.ts +++ b/packages/core/src/protocol/routes/search-multi.ts @@ -13,17 +13,17 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCMap} from '../../general/map'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCTooManyRequestsErrorResponse} from '../errors/too-many-requests'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; -import {SCSearchQuery} from '../search/query'; -import {SCSearchResult} from '../search/result'; +import {SCMap} from '../../general/map.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCTooManyRequestsErrorResponse} from '../errors/too-many-requests.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; +import {SCSearchQuery} from '../search/query.js'; +import {SCSearchResult} from '../search/result.js'; /** * A multi search request diff --git a/packages/core/src/protocol/routes/search.ts b/packages/core/src/protocol/routes/search.ts index bfe64ab6..3892746b 100644 --- a/packages/core/src/protocol/routes/search.ts +++ b/packages/core/src/protocol/routes/search.ts @@ -13,15 +13,15 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; -import {SCSearchQuery} from '../search/query'; -import {SCSearchResult} from '../search/result'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; +import {SCSearchQuery} from '../search/query.js'; +import {SCSearchResult} from '../search/result.js'; /** * A search request diff --git a/packages/core/src/protocol/routes/thing-update.ts b/packages/core/src/protocol/routes/thing-update.ts index f087b8ec..fb71d06b 100644 --- a/packages/core/src/protocol/routes/thing-update.ts +++ b/packages/core/src/protocol/routes/thing-update.ts @@ -13,15 +13,15 @@ * this program. If not, see . */ import {StatusCodes} from 'http-status-codes'; -import {SCThings} from '../../meta'; -import {SCInternalServerErrorResponse} from '../errors/internal-server-error'; -import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed'; -import {SCNotFoundErrorResponse} from '../errors/not-found'; -import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large'; -import {SCSyntaxErrorResponse} from '../errors/syntax-error'; -import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type'; -import {SCValidationErrorResponse} from '../errors/validation'; -import {SCAbstractRoute, SCRouteHttpVerbs} from '../route'; +import {SCThings} from '../../meta.js'; +import {SCInternalServerErrorResponse} from '../errors/internal-server-error.js'; +import {SCMethodNotAllowedErrorResponse} from '../errors/method-not-allowed.js'; +import {SCNotFoundErrorResponse} from '../errors/not-found.js'; +import {SCRequestBodyTooLargeErrorResponse} from '../errors/request-body-too-large.js'; +import {SCSyntaxErrorResponse} from '../errors/syntax-error.js'; +import {SCUnsupportedMediaTypeErrorResponse} from '../errors/unsupported-media-type.js'; +import {SCValidationErrorResponse} from '../errors/validation.js'; +import {SCAbstractRoute, SCRouteHttpVerbs} from '../route.js'; /** * Request to update an existing thing diff --git a/packages/core/src/protocol/search/facet.ts b/packages/core/src/protocol/search/facet.ts index f2f03fc6..e32e39a9 100644 --- a/packages/core/src/protocol/search/facet.ts +++ b/packages/core/src/protocol/search/facet.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCThingsField} from '../../meta'; -import {SCThingType} from '../../things/abstract/thing'; +import {SCThingsField} from '../../meta.js'; +import {SCThingType} from '../../things/abstract/thing.js'; /** * A search facet diff --git a/packages/core/src/protocol/search/filter.ts b/packages/core/src/protocol/search/filter.ts index a52aaaad..0eab49bc 100644 --- a/packages/core/src/protocol/search/filter.ts +++ b/packages/core/src/protocol/search/filter.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMap} from '../../general/map'; +import {SCMap} from '../../general/map.js'; /** * All available filter types */ -import {SCSearchAvailabilityFilter} from './filters/availability'; -import {SCSearchBooleanFilter} from './filters/boolean'; -import {SCSearchDistanceFilter} from './filters/distance'; -import {SCGeoFilter} from './filters/geo'; -import {SCSearchDateRangeFilter, SCSearchNumericRangeFilter} from './filters/range'; -import {SCSearchValueFilter} from './filters/value'; +import {SCSearchAvailabilityFilter} from './filters/availability.js'; +import {SCSearchBooleanFilter} from './filters/boolean.js'; +import {SCSearchDistanceFilter} from './filters/distance.js'; +import {SCGeoFilter} from './filters/geo.js'; +import {SCSearchDateRangeFilter, SCSearchNumericRangeFilter} from './filters/range.js'; +import {SCSearchValueFilter} from './filters/value.js'; /** * Filter instruction types diff --git a/packages/core/src/protocol/search/filters/availability.ts b/packages/core/src/protocol/search/filters/availability.ts index 1301c397..4059e634 100644 --- a/packages/core/src/protocol/search/filters/availability.ts +++ b/packages/core/src/protocol/search/filters/availability.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCISO8601Date} from '../../../general/time'; -import {SCThingsField} from '../../../meta'; -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter'; +import {SCISO8601Date} from '../../../general/time.js'; +import {SCThingsField} from '../../../meta.js'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter.js'; /** * An availability filter diff --git a/packages/core/src/protocol/search/filters/boolean.ts b/packages/core/src/protocol/search/filters/boolean.ts index 46303449..19df0f85 100644 --- a/packages/core/src/protocol/search/filters/boolean.ts +++ b/packages/core/src/protocol/search/filters/boolean.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments, SCSearchFilter} from '../filter'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments, SCSearchFilter} from '../filter.js'; /** * A boolean filter diff --git a/packages/core/src/protocol/search/filters/distance.ts b/packages/core/src/protocol/search/filters/distance.ts index 1316faaf..9963ec8f 100644 --- a/packages/core/src/protocol/search/filters/distance.ts +++ b/packages/core/src/protocol/search/filters/distance.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {Position} from 'geojson'; -import {SCThingsField} from '../../../meta'; -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter'; +import {SCThingsField} from '../../../meta.js'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter.js'; /** * A distance filter diff --git a/packages/core/src/protocol/search/filters/geo.ts b/packages/core/src/protocol/search/filters/geo.ts index bc5bddca..d67a0cb5 100644 --- a/packages/core/src/protocol/search/filters/geo.ts +++ b/packages/core/src/protocol/search/filters/geo.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import {Polygon, Position} from 'geojson'; -import {SCThingsField} from '../../../meta'; -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter'; +import {SCThingsField} from '../../../meta.js'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter.js'; /** * A geo filter diff --git a/packages/core/src/protocol/search/filters/range.ts b/packages/core/src/protocol/search/filters/range.ts index b4716b86..65ce68b2 100644 --- a/packages/core/src/protocol/search/filters/range.ts +++ b/packages/core/src/protocol/search/filters/range.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCThingsField} from '../../../meta'; -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter'; +import {SCThingsField} from '../../../meta.js'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter.js'; /** * A date range filter diff --git a/packages/core/src/protocol/search/filters/value.ts b/packages/core/src/protocol/search/filters/value.ts index 777e83f6..c818bba1 100644 --- a/packages/core/src/protocol/search/filters/value.ts +++ b/packages/core/src/protocol/search/filters/value.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCThingsField} from '../../../meta'; -import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter'; +import {SCThingsField} from '../../../meta.js'; +import {SCSearchAbstractFilter, SCSearchAbstractFilterArguments} from '../filter.js'; /** * Filters for documents that match the value on the given field diff --git a/packages/core/src/protocol/search/query.ts b/packages/core/src/protocol/search/query.ts index ce30e75f..e33415a2 100644 --- a/packages/core/src/protocol/search/query.ts +++ b/packages/core/src/protocol/search/query.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSearchContext} from '../../config/backend'; -import {SCSearchFilter} from './filter'; -import {SCSearchSort} from './sort'; +import {SCSearchContext} from '../../config/backend.js'; +import {SCSearchFilter} from './filter.js'; +import {SCSearchSort} from './sort.js'; /** * A search query diff --git a/packages/core/src/protocol/search/result.ts b/packages/core/src/protocol/search/result.ts index 2fc6a663..26764eec 100644 --- a/packages/core/src/protocol/search/result.ts +++ b/packages/core/src/protocol/search/result.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCThings} from '../../meta'; -import {SCFacet} from './facet'; +import {SCThings} from '../../meta.js'; +import {SCFacet} from './facet.js'; /** * A search response diff --git a/packages/core/src/protocol/search/sort.ts b/packages/core/src/protocol/search/sort.ts index a3d1eb1c..f9ad9bd2 100644 --- a/packages/core/src/protocol/search/sort.ts +++ b/packages/core/src/protocol/search/sort.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMap} from '../../general/map'; -import {SCThingsField} from '../../meta'; -import {SCDistanceSort} from './sorts/distance'; -import {SCDucetSort} from './sorts/ducet'; -import {SCGenericSort} from './sorts/generic'; -import {SCPriceSort} from './sorts/price'; +import {SCMap} from '../../general/map.js'; +import {SCThingsField} from '../../meta.js'; +import {SCDistanceSort} from './sorts/distance.js'; +import {SCDucetSort} from './sorts/ducet.js'; +import {SCGenericSort} from './sorts/generic.js'; +import {SCPriceSort} from './sorts/price.js'; /** * Abstract sort instruction diff --git a/packages/core/src/protocol/search/sorts/distance.ts b/packages/core/src/protocol/search/sorts/distance.ts index 37ddfdfd..2c020b7a 100644 --- a/packages/core/src/protocol/search/sorts/distance.ts +++ b/packages/core/src/protocol/search/sorts/distance.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {Position} from 'geojson'; -import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort'; +import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort.js'; /** * Sort instruction to sort by distance diff --git a/packages/core/src/protocol/search/sorts/ducet.ts b/packages/core/src/protocol/search/sorts/ducet.ts index 3f985c73..12cb236f 100644 --- a/packages/core/src/protocol/search/sorts/ducet.ts +++ b/packages/core/src/protocol/search/sorts/ducet.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort'; +import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort.js'; /** * Sort instruction for ducet sort diff --git a/packages/core/src/protocol/search/sorts/generic.ts b/packages/core/src/protocol/search/sorts/generic.ts index d04c5737..2a9508ba 100644 --- a/packages/core/src/protocol/search/sorts/generic.ts +++ b/packages/core/src/protocol/search/sorts/generic.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort'; +import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort.js'; /** * Sort instruction for generic sort such as date diff --git a/packages/core/src/protocol/search/sorts/price.ts b/packages/core/src/protocol/search/sorts/price.ts index 1ba3ae43..2df734d2 100644 --- a/packages/core/src/protocol/search/sorts/price.ts +++ b/packages/core/src/protocol/search/sorts/price.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSportCoursePriceGroup} from '../../../things/date-series'; -import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort'; +import {SCSportCoursePriceGroup} from '../../../things/date-series.js'; +import {SCSearchAbstractSort, SCSearchAbstractSortArguments} from '../sort.js'; /** * Sort instruction to sort by price diff --git a/packages/core/src/things/abstract/academic-degree.ts b/packages/core/src/things/abstract/academic-degree.ts index fe0d370b..3a6919c4 100644 --- a/packages/core/src/things/abstract/academic-degree.ts +++ b/packages/core/src/things/abstract/academic-degree.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../../general/i18n'; -import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations} from '../../general/i18n.js'; +import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing.js'; /** * An academic degree without references diff --git a/packages/core/src/things/abstract/academic-term.ts b/packages/core/src/things/abstract/academic-term.ts index 1d2ce53e..f0d98ba6 100644 --- a/packages/core/src/things/abstract/academic-term.ts +++ b/packages/core/src/things/abstract/academic-term.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../../general/i18n'; -import {SCISO8601Date} from '../../general/time'; -import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations} from '../../general/i18n.js'; +import {SCISO8601Date} from '../../general/time.js'; +import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing.js'; /** * An academic term without references diff --git a/packages/core/src/things/abstract/creative-work.ts b/packages/core/src/things/abstract/creative-work.ts index 6c0b28dc..f4267d9e 100644 --- a/packages/core/src/things/abstract/creative-work.ts +++ b/packages/core/src/things/abstract/creative-work.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLanguageCode, SCMetaTranslations, SCTranslations} from '../../general/i18n'; -import {SCISO8601Date} from '../../general/time'; -import {SCOrganizationWithoutReferences} from '../organization'; -import {SCPersonWithoutReferences} from '../person'; -import {SCPublicationEventWithoutReferences} from '../publication-event'; -import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing'; +import {SCLanguageCode, SCMetaTranslations, SCTranslations} from '../../general/i18n.js'; +import {SCISO8601Date} from '../../general/time.js'; +import {SCOrganizationWithoutReferences} from '../organization.js'; +import {SCPersonWithoutReferences} from '../person.js'; +import {SCPublicationEventWithoutReferences} from '../publication-event.js'; +import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing.js'; /** * A creative work without references diff --git a/packages/core/src/things/abstract/event.ts b/packages/core/src/things/abstract/event.ts index 86f0c671..3cfeb2ae 100644 --- a/packages/core/src/things/abstract/event.ts +++ b/packages/core/src/things/abstract/event.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../../general/i18n'; -import {SCCatalogWithoutReferences} from '../catalog'; -import {SCPersonWithoutReferences} from '../person'; -import {SCSemesterWithoutReferences} from '../semester'; -import {SCCreativeWorkWithoutReferences} from './creative-work'; -import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations} from '../../general/i18n.js'; +import {SCCatalogWithoutReferences} from '../catalog.js'; +import {SCPersonWithoutReferences} from '../person.js'; +import {SCSemesterWithoutReferences} from '../semester.js'; +import {SCCreativeWorkWithoutReferences} from './creative-work.js'; +import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing.js'; /** * An event without references diff --git a/packages/core/src/things/abstract/place.ts b/packages/core/src/things/abstract/place.ts index a8259011..4b3f1672 100644 --- a/packages/core/src/things/abstract/place.ts +++ b/packages/core/src/things/abstract/place.ts @@ -13,11 +13,11 @@ * this program. If not, see . */ import {Point, Polygon} from 'geojson'; -import {SCMetaTranslations, SCTranslations} from '../../general/i18n'; -import {SCBuildingWithoutReferences} from '../building'; -import {SCPointOfInterestWithoutReferences} from '../point-of-interest'; -import {SCRoomWithoutReferences} from '../room'; -import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations, SCTranslations} from '../../general/i18n.js'; +import {SCBuildingWithoutReferences} from '../building.js'; +import {SCPointOfInterestWithoutReferences} from '../point-of-interest.js'; +import {SCRoomWithoutReferences} from '../room.js'; +import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing.js'; /** * Positional information diff --git a/packages/core/src/things/abstract/range.ts b/packages/core/src/things/abstract/range.ts index 251fb337..8e4d0d1c 100644 --- a/packages/core/src/things/abstract/range.ts +++ b/packages/core/src/things/abstract/range.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCISO8601Date} from '../../general/time'; +import {SCISO8601Date} from '../../general/time.js'; /** * Date Range diff --git a/packages/core/src/things/abstract/saveable-thing.ts b/packages/core/src/things/abstract/saveable-thing.ts index 8f3c9aa8..d3290cfd 100644 --- a/packages/core/src/things/abstract/saveable-thing.ts +++ b/packages/core/src/things/abstract/saveable-thing.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCIndexableThings} from '../../meta'; -import {SCThing, SCThingUserOrigin, SCThingWithoutReferences} from './thing'; +import {SCIndexableThings} from '../../meta.js'; +import {SCThing, SCThingUserOrigin, SCThingWithoutReferences} from './thing.js'; /** * An encapsulation of the data (e.g. a thing) that is saved, which provides additional information. diff --git a/packages/core/src/things/abstract/thing-in-place.ts b/packages/core/src/things/abstract/thing-in-place.ts index a4e9878e..528707d0 100644 --- a/packages/core/src/things/abstract/thing-in-place.ts +++ b/packages/core/src/things/abstract/thing-in-place.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../../general/i18n'; -import {SCInPlace} from './place'; -import {SCThing, SCThingMeta} from './thing'; +import {SCMetaTranslations} from '../../general/i18n.js'; +import {SCInPlace} from './place.js'; +import {SCThing, SCThingMeta} from './thing.js'; /** * A thing that is or happens in a place diff --git a/packages/core/src/things/abstract/thing-that-accepts-payments.ts b/packages/core/src/things/abstract/thing-that-accepts-payments.ts index 9e385805..2bde63a6 100644 --- a/packages/core/src/things/abstract/thing-that-accepts-payments.ts +++ b/packages/core/src/things/abstract/thing-that-accepts-payments.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../../general/i18n'; -import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations} from '../../general/i18n.js'; +import {SCThing, SCThingMeta, SCThingWithoutReferences} from './thing.js'; /** * Types of payment that are accepted at a place. diff --git a/packages/core/src/things/abstract/thing-that-can-be-offered.ts b/packages/core/src/things/abstract/thing-that-can-be-offered.ts index f7a71081..46837095 100644 --- a/packages/core/src/things/abstract/thing-that-can-be-offered.ts +++ b/packages/core/src/things/abstract/thing-that-can-be-offered.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../../general/i18n'; -import {SCOrganizationWithoutReferences} from '../organization'; -import {SCPersonWithoutReferences} from '../person'; -import {SCInPlace} from './place'; -import {SCISO8601DateRange} from './range'; -import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations, SCTranslations} from '../../general/i18n.js'; +import {SCOrganizationWithoutReferences} from '../organization.js'; +import {SCPersonWithoutReferences} from '../person.js'; +import {SCInPlace} from './place.js'; +import {SCISO8601DateRange} from './range.js'; +import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing.js'; /** * Default price without distinction diff --git a/packages/core/src/things/abstract/thing-with-categories.ts b/packages/core/src/things/abstract/thing-with-categories.ts index b4d763a5..c96916d7 100644 --- a/packages/core/src/things/abstract/thing-with-categories.ts +++ b/packages/core/src/things/abstract/thing-with-categories.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../../general/i18n'; -import {SCMap} from '../../general/map'; -import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing'; +import {SCMetaTranslations, SCTranslations} from '../../general/i18n.js'; +import {SCMap} from '../../general/map.js'; +import {SCThing, SCThingMeta, SCThingTranslatableProperties, SCThingWithoutReferences} from './thing.js'; /** * A thing without references with categories diff --git a/packages/core/src/things/abstract/thing.ts b/packages/core/src/things/abstract/thing.ts index e1ab6303..c1dad13e 100644 --- a/packages/core/src/things/abstract/thing.ts +++ b/packages/core/src/things/abstract/thing.ts @@ -12,12 +12,12 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../../general/i18n'; -import {SCMap} from '../../general/map'; -import {SCISO8601Date} from '../../general/time'; -import {SCUuid} from '../../general/uuid'; -import {SCOrganizationWithoutReferences} from '../organization'; -import {SCPersonWithoutReferences} from '../person'; +import {SCMetaTranslations, SCTranslations} from '../../general/i18n.js'; +import {SCMap} from '../../general/map.js'; +import {SCISO8601Date} from '../../general/time.js'; +import {SCUuid} from '../../general/uuid.js'; +import {SCOrganizationWithoutReferences} from '../organization.js'; +import {SCPersonWithoutReferences} from '../person.js'; /** * Types a thing can be diff --git a/packages/core/src/things/academic-event.ts b/packages/core/src/things/academic-event.ts index 308c34e3..ed90c91e 100644 --- a/packages/core/src/things/academic-event.ts +++ b/packages/core/src/things/academic-event.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * An academic event without references diff --git a/packages/core/src/things/article.ts b/packages/core/src/things/article.ts index dcb3a490..4520aae2 100644 --- a/packages/core/src/things/article.ts +++ b/packages/core/src/things/article.ts @@ -12,28 +12,28 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCCreativeWork, SCCreativeWorkMeta, SCCreativeWorkTranslatableProperties, SCCreativeWorkWithoutReferences, -} from './abstract/creative-work'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/creative-work.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; +} from './abstract/thing-that-can-be-offered.js'; import { SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; -import {SCPeriodicalWithoutReferences} from './periodical'; +} from './abstract/thing-with-categories.js'; +import {SCPeriodicalWithoutReferences} from './periodical.js'; /** * Categories of an article diff --git a/packages/core/src/things/assessment.ts b/packages/core/src/things/assessment.ts index 3fdc525e..c025d132 100644 --- a/packages/core/src/things/assessment.ts +++ b/packages/core/src/things/assessment.ts @@ -13,17 +13,17 @@ * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCISO8601Date} from '../general/time'; -import {SCThing, SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCISO8601Date} from '../general/time.js'; +import {SCThing, SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; -import {SCCourseOfStudyWithoutReferences} from './course-of-study'; +} from './abstract/thing-with-categories.js'; +import {SCCourseOfStudyWithoutReferences} from './course-of-study.js'; /** * Categories of assessments diff --git a/packages/core/src/things/book.ts b/packages/core/src/things/book.ts index 18b81775..a9cfe906 100644 --- a/packages/core/src/things/book.ts +++ b/packages/core/src/things/book.ts @@ -12,27 +12,27 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCCreativeWork, SCCreativeWorkMeta, SCCreativeWorkTranslatableProperties, SCCreativeWorkWithoutReferences, -} from './abstract/creative-work'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/creative-work.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; +} from './abstract/thing-that-can-be-offered.js'; import { SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * Categories of a book diff --git a/packages/core/src/things/building.ts b/packages/core/src/things/building.ts index 120133a2..3e5720c7 100644 --- a/packages/core/src/things/building.ts +++ b/packages/core/src/things/building.ts @@ -12,21 +12,21 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCPlace, SCPlaceWithoutReferences, SCPlaceWithoutReferencesMeta, SCPlaceWithoutReferencesTranslatableProperties, -} from './abstract/place'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/place.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; export type SCBuildingCategories = | 'cafe' diff --git a/packages/core/src/things/catalog.ts b/packages/core/src/things/catalog.ts index ceb148ab..0fddb240 100644 --- a/packages/core/src/things/catalog.ts +++ b/packages/core/src/things/catalog.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCAcademicTermWithoutReferences} from './abstract/academic-term'; -import {SCThing, SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCAcademicTermWithoutReferences} from './abstract/academic-term.js'; +import {SCThing, SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * A catalog without references diff --git a/packages/core/src/things/contact-point.ts b/packages/core/src/things/contact-point.ts index 85f0a3b0..263a26af 100644 --- a/packages/core/src/things/contact-point.ts +++ b/packages/core/src/things/contact-point.ts @@ -13,9 +13,9 @@ * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; -import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; -import {SCRoomWithoutReferences} from './room'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; +import {SCRoomWithoutReferences} from './room.js'; /** * A contact point without references diff --git a/packages/core/src/things/course-of-study.ts b/packages/core/src/things/course-of-study.ts index 489c38b7..d1fab2de 100644 --- a/packages/core/src/things/course-of-study.ts +++ b/packages/core/src/things/course-of-study.ts @@ -12,22 +12,22 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCAcademicDegree, SCAcademicDegreeMeta, SCAcademicDegreeWithoutReferences, -} from './abstract/academic-degree'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/academic-degree.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; -import {SCDateSeriesWithoutReferences} from './date-series'; -import {SCOrganizationWithoutReferences} from './organization'; +} from './abstract/thing-that-can-be-offered.js'; +import {SCDateSeriesWithoutReferences} from './date-series.js'; +import {SCOrganizationWithoutReferences} from './organization.js'; /** * A course of study without references diff --git a/packages/core/src/things/date-series.ts b/packages/core/src/things/date-series.ts index dbd8f128..46bb0bda 100644 --- a/packages/core/src/things/date-series.ts +++ b/packages/core/src/things/date-series.ts @@ -12,20 +12,20 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCISO8601Date, SCISO8601Duration} from '../general/time'; -import {SCThingMeta, SCThingType} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCISO8601Date, SCISO8601Duration} from '../general/time.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; -import {SCAcademicEventWithoutReferences} from './academic-event'; -import {SCPersonWithoutReferences} from './person'; -import {SCSportCourseWithoutReferences} from './sport-course'; +} from './abstract/thing-that-can-be-offered.js'; +import {SCAcademicEventWithoutReferences} from './academic-event.js'; +import {SCPersonWithoutReferences} from './person.js'; +import {SCSportCourseWithoutReferences} from './sport-course.js'; /** * Price groups for sport courses diff --git a/packages/core/src/things/diff.ts b/packages/core/src/things/diff.ts index 6e147b9c..6b5f9bba 100644 --- a/packages/core/src/things/diff.ts +++ b/packages/core/src/things/diff.ts @@ -13,10 +13,10 @@ * this program. If not, see . */ import * as jsonpatch from 'json-patch'; -import {SCMetaTranslations} from '../general/i18n'; -import {SCISO8601Date} from '../general/time'; -import {SCIndexableThings} from '../meta'; -import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCISO8601Date} from '../general/time.js'; +import {SCIndexableThings} from '../meta.js'; +import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; /** * A diff without references diff --git a/packages/core/src/things/dish.ts b/packages/core/src/things/dish.ts index e0fdad05..8aee71bf 100644 --- a/packages/core/src/things/dish.ts +++ b/packages/core/src/things/dish.ts @@ -12,23 +12,23 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; +} from './abstract/thing-that-can-be-offered.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; -import {SCCertificationWithoutReferences} from './certification'; +} from './abstract/thing-with-categories.js'; +import {SCCertificationWithoutReferences} from './certification.js'; /** * A dish without references diff --git a/packages/core/src/things/favorite.ts b/packages/core/src/things/favorite.ts index df166378..8f456d78 100644 --- a/packages/core/src/things/favorite.ts +++ b/packages/core/src/things/favorite.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCSaveableThing, SCSaveableThingWithoutReferences} from './abstract/saveable-thing'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +import {SCSaveableThing, SCSaveableThingWithoutReferences} from './abstract/saveable-thing.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; /** * A favorite without references diff --git a/packages/core/src/things/floor.ts b/packages/core/src/things/floor.ts index f3a34be6..262c286c 100644 --- a/packages/core/src/things/floor.ts +++ b/packages/core/src/things/floor.ts @@ -13,16 +13,16 @@ * this program. If not, see . */ import {Feature, FeatureCollection, GeometryObject, LineString} from 'geojson'; -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCThingMeta, SCThingTranslatableProperties, SCThingType, SCThingWithoutReferences, -} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; -import {SCPointOfInterestWithoutReferences} from './point-of-interest'; -import {SCRoomWithoutReferences} from './room'; +} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; +import {SCPointOfInterestWithoutReferences} from './point-of-interest.js'; +import {SCRoomWithoutReferences} from './room.js'; /** * A floor without references diff --git a/packages/core/src/things/message.ts b/packages/core/src/things/message.ts index 345818ab..413d1c85 100644 --- a/packages/core/src/things/message.ts +++ b/packages/core/src/things/message.ts @@ -12,23 +12,23 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCISO8601Date} from '../general/time'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCISO8601Date} from '../general/time.js'; import { SCCreativeWork, SCCreativeWorkMeta, SCCreativeWorkTranslatableProperties, SCCreativeWorkWithoutReferences, -} from './abstract/creative-work'; -import {SCThingMeta, SCThingType} from './abstract/thing'; -import {SCThingThatCanBeOfferedTranslatableProperties} from './abstract/thing-that-can-be-offered'; +} from './abstract/creative-work.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; +import {SCThingThatCanBeOfferedTranslatableProperties} from './abstract/thing-that-can-be-offered.js'; import { SCThingWithCategoriesSpecificValues, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; -import {SCUserGroup} from './abstract/user-groups'; -import {SCOrganizationWithoutReferences} from './organization'; +} from './abstract/thing-with-categories.js'; +import {SCUserGroup} from './abstract/user-groups.js'; +import {SCOrganizationWithoutReferences} from './organization.js'; /** * Categories of a message diff --git a/packages/core/src/things/organization.ts b/packages/core/src/things/organization.ts index 6534d300..e79ee31f 100644 --- a/packages/core/src/things/organization.ts +++ b/packages/core/src/things/organization.ts @@ -12,10 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; -import {SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; -import {SCContactPointWithoutReferences} from './contact-point'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; +import {SCContactPointWithoutReferences} from './contact-point.js'; /** * An organization without references diff --git a/packages/core/src/things/periodical.ts b/packages/core/src/things/periodical.ts index e96c3b89..bf7d596e 100644 --- a/packages/core/src/things/periodical.ts +++ b/packages/core/src/things/periodical.ts @@ -12,27 +12,27 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; import { SCCreativeWork, SCCreativeWorkMeta, SCCreativeWorkTranslatableProperties, SCCreativeWorkWithoutReferences, -} from './abstract/creative-work'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/creative-work.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; +} from './abstract/thing-that-can-be-offered.js'; import { SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * Categories of a periodical diff --git a/packages/core/src/things/person.ts b/packages/core/src/things/person.ts index ecd4fc94..9d2b113c 100644 --- a/packages/core/src/things/person.ts +++ b/packages/core/src/things/person.ts @@ -12,14 +12,14 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCNationality} from '../general/i18n'; -import {SCISO8601Date} from '../general/time'; -import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; -import {SCBuildingWithoutReferences} from './building'; -import {SCContactPointWithoutReferences} from './contact-point'; -import {SCOrganizationWithoutReferences} from './organization'; -import {SCPointOfInterestWithoutReferences} from './point-of-interest'; -import {SCRoomWithoutReferences} from './room'; +import {SCMetaTranslations, SCNationality} from '../general/i18n.js'; +import {SCISO8601Date} from '../general/time.js'; +import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; +import {SCBuildingWithoutReferences} from './building.js'; +import {SCContactPointWithoutReferences} from './contact-point.js'; +import {SCOrganizationWithoutReferences} from './organization.js'; +import {SCPointOfInterestWithoutReferences} from './point-of-interest.js'; +import {SCRoomWithoutReferences} from './room.js'; /** * A person without references diff --git a/packages/core/src/things/point-of-interest.ts b/packages/core/src/things/point-of-interest.ts index 64cd504e..4808a6e3 100644 --- a/packages/core/src/things/point-of-interest.ts +++ b/packages/core/src/things/point-of-interest.ts @@ -12,17 +12,17 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCPlace, SCPlaceWithoutReferences, SCPlaceWithoutReferencesMeta} from './abstract/place'; -import {SCThingMeta, SCThingType} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCPlace, SCPlaceWithoutReferences, SCPlaceWithoutReferencesMeta} from './abstract/place.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * A point of interest without references diff --git a/packages/core/src/things/publication-event.ts b/packages/core/src/things/publication-event.ts index 347fc8a9..938adb7a 100644 --- a/packages/core/src/things/publication-event.ts +++ b/packages/core/src/things/publication-event.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event'; -import {SCThingMeta, SCThingTranslatableProperties, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event.js'; +import {SCThingMeta, SCThingTranslatableProperties, SCThingType} from './abstract/thing.js'; /** * An publication event without references diff --git a/packages/core/src/things/room.ts b/packages/core/src/things/room.ts index 9bb5ccf1..845fbaca 100644 --- a/packages/core/src/things/room.ts +++ b/packages/core/src/things/room.ts @@ -12,24 +12,24 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCMap} from '../general/map'; -import {SCPlace, SCPlaceWithoutReferences, SCPlaceWithoutReferencesMeta} from './abstract/place'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCMap} from '../general/map.js'; +import {SCPlace, SCPlaceWithoutReferences, SCPlaceWithoutReferencesMeta} from './abstract/place.js'; -import {SCThingMeta, SCThingType} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; import { SCThingThatAcceptsPayments, SCThingThatAcceptsPaymentsWithoutReferences, SCThingThatAcceptsPaymentsWithoutReferencesMeta, -} from './abstract/thing-that-accepts-payments'; +} from './abstract/thing-that-accepts-payments.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * Categories of a room diff --git a/packages/core/src/things/semester.ts b/packages/core/src/things/semester.ts index 64a4cc8f..fa34fab8 100644 --- a/packages/core/src/things/semester.ts +++ b/packages/core/src/things/semester.ts @@ -12,13 +12,13 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; +import {SCMetaTranslations} from '../general/i18n.js'; import { SCAcademicTerm, SCAcademicTermWithoutReferences, SCAcademicTermWithoutReferencesMeta, -} from './abstract/academic-term'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/academic-term.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; /** * A semester without references diff --git a/packages/core/src/things/setting.ts b/packages/core/src/things/setting.ts index 837de9b8..f7652a59 100644 --- a/packages/core/src/things/setting.ts +++ b/packages/core/src/things/setting.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLanguageCode, SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCThing, SCThingMeta, SCThingType} from './abstract/thing'; +import {SCLanguageCode, SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCThing, SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; -import {SCUserGroup} from './abstract/user-groups'; +} from './abstract/thing-with-categories.js'; +import {SCUserGroup} from './abstract/user-groups.js'; /** * A setting without references diff --git a/packages/core/src/things/sport-course.ts b/packages/core/src/things/sport-course.ts index 644aebc0..8d5c4b56 100644 --- a/packages/core/src/things/sport-course.ts +++ b/packages/core/src/things/sport-course.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; -import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCEvent, SCEventMeta, SCEventWithoutReferences} from './abstract/event.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; /** * A sport course without references diff --git a/packages/core/src/things/study-module.ts b/packages/core/src/things/study-module.ts index 4576f098..a315120b 100644 --- a/packages/core/src/things/study-module.ts +++ b/packages/core/src/things/study-module.ts @@ -12,19 +12,19 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCMap} from '../general/map'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCMap} from '../general/map.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; -import {SCAcademicEventWithoutReferences} from './academic-event'; -import {SCOrganizationWithoutReferences} from './organization'; -import {SCPersonWithoutReferences} from './person'; +} from './abstract/thing-that-can-be-offered.js'; +import {SCAcademicEventWithoutReferences} from './academic-event.js'; +import {SCOrganizationWithoutReferences} from './organization.js'; +import {SCPersonWithoutReferences} from './person.js'; /** * A study module without references diff --git a/packages/core/src/things/ticket.ts b/packages/core/src/things/ticket.ts index 7d17a733..b0ee8a02 100644 --- a/packages/core/src/things/ticket.ts +++ b/packages/core/src/things/ticket.ts @@ -12,10 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; -import {SCISO8601Duration} from '../general/time'; -import {SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; -import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCISO8601Duration} from '../general/time.js'; +import {SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; +import {SCThingInPlace, SCThingInPlaceMeta} from './abstract/thing-in-place.js'; /** * A ticket without references diff --git a/packages/core/src/things/todo.ts b/packages/core/src/things/todo.ts index bc01354e..2da4be99 100644 --- a/packages/core/src/things/todo.ts +++ b/packages/core/src/things/todo.ts @@ -12,16 +12,16 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCISO8601Date} from '../general/time'; -import {SCThing, SCThingMeta, SCThingType} from './abstract/thing'; +import {SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCISO8601Date} from '../general/time.js'; +import {SCThing, SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCThingWithCategories, SCThingWithCategoriesSpecificValues, SCThingWithCategoriesTranslatableProperties, SCThingWithCategoriesWithoutReferences, SCThingWithCategoriesWithoutReferencesMeta, -} from './abstract/thing-with-categories'; +} from './abstract/thing-with-categories.js'; /** * A "to do" without references diff --git a/packages/core/src/things/tour.ts b/packages/core/src/things/tour.ts index 85348c43..7e4850a3 100644 --- a/packages/core/src/things/tour.ts +++ b/packages/core/src/things/tour.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCMetaTranslations} from '../general/i18n'; -import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing'; +import {SCMetaTranslations} from '../general/i18n.js'; +import {SCThing, SCThingMeta, SCThingType, SCThingWithoutReferences} from './abstract/thing.js'; /** * A tour without references diff --git a/packages/core/src/things/video.ts b/packages/core/src/things/video.ts index 560e0f67..bc14bd37 100644 --- a/packages/core/src/things/video.ts +++ b/packages/core/src/things/video.ts @@ -12,23 +12,23 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n'; -import {SCISO8601Duration} from '../general/time'; +import {SCLanguage, SCMetaTranslations, SCTranslations} from '../general/i18n.js'; +import {SCISO8601Duration} from '../general/time.js'; import { SCCreativeWork, SCCreativeWorkMeta, SCCreativeWorkTranslatableProperties, SCCreativeWorkWithoutReferences, -} from './abstract/creative-work'; -import {SCThingMeta, SCThingType} from './abstract/thing'; +} from './abstract/creative-work.js'; +import {SCThingMeta, SCThingType} from './abstract/thing.js'; import { SCAcademicPriceGroup, SCThingThatCanBeOffered, SCThingThatCanBeOfferedMeta, SCThingThatCanBeOfferedTranslatableProperties, SCThingThatCanBeOfferedWithoutReferences, -} from './abstract/thing-that-can-be-offered'; -import {SCPersonWithoutReferences} from './person'; +} from './abstract/thing-that-can-be-offered.js'; +import {SCPersonWithoutReferences} from './person.js'; /** * A video without references diff --git a/packages/core/src/translator.ts b/packages/core/src/translator.ts index 1f8f2ccb..a241ffc2 100644 --- a/packages/core/src/translator.ts +++ b/packages/core/src/translator.ts @@ -15,10 +15,10 @@ */ import equal = require('fast-deep-equal/es6'); import clone = require('rfdc'); -import {SCLanguageCode} from './general/i18n'; -import {isThing} from './guards'; -import {SCClasses} from './meta'; -import {SCThing, SCThingType} from './things/abstract/thing'; +import {SCLanguageCode} from './general/i18n.js'; +import {isThing} from './guards.js'; +import {SCClasses} from './meta.js'; +import {SCThing, SCThingType} from './things/abstract/thing.js'; // eslint disable @typescript-eslint/no-explicit-any const standardCacheSize = 200; diff --git a/packages/core/test/guards.spec.ts b/packages/core/test/guards.spec.ts index ef86eb03..1eddbb8d 100644 --- a/packages/core/test/guards.spec.ts +++ b/packages/core/test/guards.spec.ts @@ -13,6 +13,11 @@ * this program. If not, see . */ import {slow, suite, test, timeout} from '@testdeck/mocha'; +import {SCBulkResponse} from '../src/protocol/routes/bulk-request.js'; +import {SCMultiSearchResponse} from '../src/protocol/routes/search-multi.js'; +import {SCSearchResponse} from '../src/protocol/routes/search.js'; +import {SCThingOriginType, SCThingType} from '../src/things/abstract/thing.js'; +import {SCDish} from '../src/things/dish.js'; import {expect} from 'chai'; import { isBulkResponse, @@ -20,11 +25,11 @@ import { isSearchResponse, isThing, isThingWithTranslations, -} from '../src/guards'; -import {SCBulkResponse} from '../src/protocol/routes/bulk-request'; -import {SCSearchResponse} from '../src/protocol/routes/search'; -import {SCMultiSearchResponse} from '../src/protocol/routes/search-multi'; -import {SCThingOriginType, SCThingType} from '../src/things/abstract/thing'; +} from '../src/guards.js'; +import {SCBulkResponse} from '../src/protocol/routes/bulk-request.js'; +import {SCSearchResponse} from '../src/protocol/routes/search.js'; +import {SCMultiSearchResponse} from '../src/protocol/routes/search-multi.js'; +import {SCThingOriginType, SCThingType} from '../src/things/abstract/thing.js'; import {SCDish} from '../src/things/dish'; @suite(timeout(10000), slow(5000)) diff --git a/packages/core/test/routes.spec.ts b/packages/core/test/routes.spec.ts index 8954dd68..12d9c9e3 100644 --- a/packages/core/test/routes.spec.ts +++ b/packages/core/test/routes.spec.ts @@ -14,9 +14,10 @@ */ import {slow, suite, test, timeout} from '@testdeck/mocha'; import {expect} from 'chai'; -import {SCBulkAddRoute} from '../src/protocol/routes/bulk-add'; -import {SCBulkRoute} from '../src/protocol/routes/bulk-request'; -import {SCThingUpdateRoute} from '../src/protocol/routes/thing-update'; +import {slow, suite, test, timeout} from '@testdeck/mocha'; +import {SCBulkRoute} from '../src/protocol/routes/bulk-request.js'; +import {SCBulkAddRoute} from '../src/protocol/routes/bulk-add.js'; +import {SCThingUpdateRoute} from '../src/protocol/routes/thing-update.js'; @suite(timeout(10000), slow(5000)) export class RoutesSpec { diff --git a/packages/core/test/translator.spec.ts b/packages/core/test/translator.spec.ts index 4919a04f..9c28a353 100644 --- a/packages/core/test/translator.spec.ts +++ b/packages/core/test/translator.spec.ts @@ -15,11 +15,11 @@ import {slow, suite, test, timeout} from '@testdeck/mocha'; import {expect} from 'chai'; import clone from 'rfdc'; -import {SCThingOriginType, SCThingRemoteOrigin, SCThingType} from '../src/things/abstract/thing'; -import {SCBuildingWithoutReferences} from '../src/things/building'; -import {SCDish, SCDishMeta} from '../src/things/dish'; -import {SCSetting, SCSettingInputType} from '../src/things/setting'; -import {SCThingTranslator} from '../src/translator'; +import {SCThingOriginType, SCThingRemoteOrigin, SCThingType} from '../src/things/abstract/thing.js'; +import {SCBuildingWithoutReferences} from '../src/things/building.js'; +import {SCDish, SCDishMeta} from '../src/things/dish.js'; +import {SCSetting, SCSettingInputType} from '../src/things/setting.js'; +import {SCThingTranslator} from '../src/translator.js'; const building: SCBuildingWithoutReferences = { address: { diff --git a/packages/core/test/type.spec.ts b/packages/core/test/type.spec.ts index 18ec0b05..ca61fc47 100644 --- a/packages/core/test/type.spec.ts +++ b/packages/core/test/type.spec.ts @@ -13,35 +13,35 @@ * this program. If not, see . */ import {assert, Has, IsAny, IsNever, NotHas} from 'conditional-type-checks'; -import {SCThing, SCThingWithoutReferences} from '../src/things/abstract/thing'; -import {SCAcademicEvent, SCAcademicEventWithoutReferences} from '../src/things/academic-event'; -import {SCArticle, SCArticleWithoutReferences} from '../src/things/article'; -import {SCAssessment, SCAssessmentWithoutReferences} from '../src/things/assessment'; -import {SCBook, SCBookWithoutReferences} from '../src/things/book'; -import {SCBuilding, SCBuildingWithoutReferences} from '../src/things/building'; -import {SCCatalog, SCCatalogWithoutReferences} from '../src/things/catalog'; -import {SCContactPoint, SCContactPointWithoutReferences} from '../src/things/contact-point'; -import {SCCourseOfStudy, SCCourseOfStudyWithoutReferences} from '../src/things/course-of-study'; -import {SCDateSeries, SCDateSeriesWithoutReferences} from '../src/things/date-series'; -import {SCDiff, SCDiffWithoutReferences} from '../src/things/diff'; -import {SCDish, SCDishWithoutReferences} from '../src/things/dish'; -import {SCFavorite, SCFavoriteWithoutReferences} from '../src/things/favorite'; -import {SCFloor, SCFloorWithoutReferences} from '../src/things/floor'; -import {SCMessage, SCMessageWithoutReferences} from '../src/things/message'; -import {SCOrganization, SCOrganizationWithoutReferences} from '../src/things/organization'; -import {SCPeriodical, SCPeriodicalWithoutReferences} from '../src/things/periodical'; -import {SCPerson, SCPersonWithoutReferences} from '../src/things/person'; -import {SCPointOfInterest, SCPointOfInterestWithoutReferences} from '../src/things/point-of-interest'; -import {SCPublicationEvent, SCPublicationEventWithoutReferences} from '../src/things/publication-event'; -import {SCRoom, SCRoomWithoutReferences} from '../src/things/room'; -import {SCSemester, SCSemesterWithoutReferences} from '../src/things/semester'; -import {SCSetting, SCSettingWithoutReferences} from '../src/things/setting'; -import {SCSportCourse, SCSportCourseWithoutReferences} from '../src/things/sport-course'; -import {SCStudyModule, SCStudyModuleWithoutReferences} from '../src/things/study-module'; -import {SCTicket, SCTicketWithoutReferences} from '../src/things/ticket'; -import {SCToDo, SCToDoWithoutReferences} from '../src/things/todo'; -import {SCTour, SCTourWithoutReferences} from '../src/things/tour'; -import {SCVideo, SCVideoWithoutReferences} from '../src/things/video'; +import {SCThing, SCThingWithoutReferences} from '../src/things/abstract/thing.js'; +import {SCAcademicEvent, SCAcademicEventWithoutReferences} from '../src/things/academic-event.js'; +import {SCArticle, SCArticleWithoutReferences} from '../src/things/article.js'; +import {SCAssessment, SCAssessmentWithoutReferences} from '../src/things/assessment.js'; +import {SCBook, SCBookWithoutReferences} from '../src/things/book.js'; +import {SCBuilding, SCBuildingWithoutReferences} from '../src/things/building.js'; +import {SCCatalog, SCCatalogWithoutReferences} from '../src/things/catalog.js'; +import {SCContactPoint, SCContactPointWithoutReferences} from '../src/things/contact-point.js'; +import {SCCourseOfStudy, SCCourseOfStudyWithoutReferences} from '../src/things/course-of-study.js'; +import {SCDateSeries, SCDateSeriesWithoutReferences} from '../src/things/date-series.js'; +import {SCDiff, SCDiffWithoutReferences} from '../src/things/diff.js'; +import {SCDish, SCDishWithoutReferences} from '../src/things/dish.js'; +import {SCFavorite, SCFavoriteWithoutReferences} from '../src/things/favorite.js'; +import {SCFloor, SCFloorWithoutReferences} from '../src/things/floor.js'; +import {SCMessage, SCMessageWithoutReferences} from '../src/things/message.js'; +import {SCOrganization, SCOrganizationWithoutReferences} from '../src/things/organization.js'; +import {SCPerson, SCPersonWithoutReferences} from '../src/things/person.js'; +import {SCPointOfInterest, SCPointOfInterestWithoutReferences} from '../src/things/point-of-interest.js'; +import {SCRoom, SCRoomWithoutReferences} from '../src/things/room.js'; +import {SCSemester, SCSemesterWithoutReferences} from '../src/things/semester.js'; +import {SCSetting, SCSettingWithoutReferences} from '../src/things/setting.js'; +import {SCSportCourse, SCSportCourseWithoutReferences} from '../src/things/sport-course.js'; +import {SCStudyModule, SCStudyModuleWithoutReferences} from '../src/things/study-module.js'; +import {SCTicket, SCTicketWithoutReferences} from '../src/things/ticket.js'; +import {SCToDo, SCToDoWithoutReferences} from '../src/things/todo.js'; +import {SCTour, SCTourWithoutReferences} from '../src/things/tour.js'; +import {SCVideo, SCVideoWithoutReferences} from '../src/things/video.js'; +import {SCPeriodical, SCPeriodicalWithoutReferences} from '../src/things/periodical.js'; +import {SCPublicationEvent, SCPublicationEventWithoutReferences} from '../src/things/publication-event.js'; /** * Check if E extends T diff --git a/packages/es-mapping-generator/package.json b/packages/es-mapping-generator/package.json index 63e9d7b2..183c8770 100644 --- a/packages/es-mapping-generator/package.json +++ b/packages/es-mapping-generator/package.json @@ -3,6 +3,7 @@ "version": "0.4.0", "description": "Tool to convert TypeScript Interfaces to Elasticsearch Mappings", "version": "2.1.0", + "type": "commonjs", "license": "GPL-3.0-only", "author": "Thea Schöbl ", "main": "./lib/index.js", @@ -30,7 +31,7 @@ "commander": "10.0.0", "deepmerge": "4.3.0", "flatted": "3.2.7", - "got": "12.6.0", + "got": "11.8.6", "typedoc": "0.18.0", "typescript": "3.8.3" }, @@ -40,7 +41,7 @@ "@openstapps/eslint-config": "workspace:*", "@types/chai": "4.3.4", "@types/mocha": "10.0.1", - "@types/node": "18.15.3", + "@types/node": "14.18.38", "@types/rimraf": "3.0.2", "chai": "4.3.7", "conventional-changelog-cli": "2.2.2", diff --git a/packages/es-mapping-generator/src/cli.ts b/packages/es-mapping-generator/src/cli.ts index 6f794c1c..5118a413 100644 --- a/packages/es-mapping-generator/src/cli.ts +++ b/packages/es-mapping-generator/src/cli.ts @@ -13,21 +13,20 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {Logger} from '@openstapps/logger'; import {Command} from 'commander'; import {mkdirSync, readFileSync, writeFileSync} from 'fs'; import got from 'got'; import path from 'path'; import {exit} from 'process'; -import {generateTemplate} from './mapping'; -import {getProjectReflection} from './project-reflection'; -import {ElasticsearchTemplateCollection} from './types/mapping'; +import {generateTemplate} from './mapping.js'; +import {getProjectReflection} from './project-reflection.js'; +import {ElasticsearchTemplateCollection} from './types/mapping.js'; // handle unhandled promise rejections process.on('unhandledRejection', async (reason: unknown) => { if (reason instanceof Error) { - await Logger.error(reason.message); - Logger.info(reason.stack); + await console.error(reason.message); + console.info(reason.stack); } process.exit(1); }); @@ -57,9 +56,9 @@ commander const result = generateTemplate(projectReflection, ignoredTagsList, true); if (result.errors.length > 0) { - await Logger.error('Mapping generated with errors!'); + await console.error('Mapping generated with errors!'); } else { - Logger.ok('Mapping generated without errors!'); + console.log('Mapping generated without errors!'); } // write documentation to file @@ -68,24 +67,24 @@ commander mkdirSync(path.dirname(aggPath), {recursive: true}); // tslint:disable-next-line:no-magic-numbers writeFileSync(aggPath, JSON.stringify(result.aggregations, null, 2)); - Logger.ok(`Elasticsearch aggregations written to ${aggPath}.`); + console.log(`Elasticsearch aggregations written to ${aggPath}.`); } if (typeof options.mappingPath !== 'undefined') { const mappingPath = path.resolve(options.mappingPath); mkdirSync(path.dirname(mappingPath), {recursive: true}); // tslint:disable-next-line:no-magic-numbers writeFileSync(mappingPath, JSON.stringify(result.mappings, null, 2)); - Logger.ok(`Elasticsearch mappings written to ${mappingPath}.`); + console.log(`Elasticsearch mappings written to ${mappingPath}.`); } if (typeof options.errorPath !== 'undefined') { const errorPath = path.resolve(options.errorPath); mkdirSync(path.dirname(errPath), {recursive: true}); // tslint:disable-next-line:no-magic-numbers writeFileSync(errorPath, JSON.stringify(result.errors, null, 2)); - Logger.ok(`Mapping errors written to ${errorPath}.`); + console.log(`Mapping errors written to ${errorPath}.`); } else if (result.errors.length > 0) { for (const error of result.errors) { - await Logger.error(error); + await console.error(error); } throw new Error('Mapping generation failed'); @@ -113,14 +112,14 @@ commander const HTTP_STATUS_OK = 200; if (response.statusCode !== HTTP_STATUS_OK) { - await Logger.error( + await console.error( `Template for "${template}" failed in Elasticsearch:\n${JSON.stringify(response.body)}`, ); exit(-1); } } - Logger.ok(`Templates accepted by Elasticsearch.`); + console.log(`Templates accepted by Elasticsearch.`); }); commander.parse(process.argv); diff --git a/packages/es-mapping-generator/src/config/fieldmap.ts b/packages/es-mapping-generator/src/config/fieldmap.ts index 3d66b8b6..e536986c 100644 --- a/packages/es-mapping-generator/src/config/fieldmap.ts +++ b/packages/es-mapping-generator/src/config/fieldmap.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {MappingProperty} from '@elastic/elasticsearch/lib/api/types'; -import {ElasticsearchFieldmap, SimpleType} from '../types/mapping'; +import {ElasticsearchFieldmap, SimpleType} from '../types/mapping.js'; const ducetSort = { type: 'icu_collation_keyword', diff --git a/packages/es-mapping-generator/src/config/typemap.ts b/packages/es-mapping-generator/src/config/typemap.ts index 37dfbd9d..a95634c3 100644 --- a/packages/es-mapping-generator/src/config/typemap.ts +++ b/packages/es-mapping-generator/src/config/typemap.ts @@ -13,7 +13,7 @@ * this program. If not, see . */ import {MappingFloatNumberProperty} from '@elastic/elasticsearch/lib/api/types'; -import {ElasticsearchTypemap} from '../types/mapping'; +import {ElasticsearchTypemap} from '../types/mapping.js'; export const PARSE_ERROR = 'PARSE_ERROR' as MappingFloatNumberProperty['type']; export const MISSING_PREMAP = 'MISSING_PREMAP' as MappingFloatNumberProperty['type']; diff --git a/packages/es-mapping-generator/src/mapping.ts b/packages/es-mapping-generator/src/mapping.ts index 240aface..44dc1d3f 100644 --- a/packages/es-mapping-generator/src/mapping.ts +++ b/packages/es-mapping-generator/src/mapping.ts @@ -33,12 +33,13 @@ import { TypeParameterType, UnionType, } from 'typedoc/dist/lib/models'; -import {fieldmap, filterableMap, filterableTagName} from './config/fieldmap'; -import {premaps} from './config/premap'; -import {settings} from './config/settings'; -import {dynamicTypes, isTagType, MISSING_PREMAP, PARSE_ERROR, TYPE_CONFLICT, typemap} from './config/typemap'; -import {AggregationSchema, ESNestedAggregation} from './types/aggregation'; -import {ElasticsearchTemplateCollection, MappingGenTemplate} from './types/mapping'; +import {fieldmap, filterableMap, filterableTagName} from './config/fieldmap.js'; +import {premaps} from './config/premap.js'; +import {settings} from './config/settings.js'; +import {dynamicTypes, isTagType, MISSING_PREMAP, PARSE_ERROR, TYPE_CONFLICT, typemap} from './config/typemap.js'; +import {AggregationSchema, ESNestedAggregation} from './types/aggregation.js'; +import {ElasticsearchTemplateCollection, MappingGenTemplate} from './types/mapping.js'; +import * as console from "console"; let dynamicTemplates: Record[] = []; let errors: string[] = []; @@ -118,7 +119,7 @@ function composeErrorMessage( errors.push(error); if (showErrors) { // tslint:disable-next-line:no-floating-promises - void Logger.error(error); + void console.error(error); } } @@ -170,7 +171,7 @@ function getReflectionGeneric( properties: {}, }); - Logger.warn( + console.warn( `Type "${type.name}": Defaults of generics (Foo) currently don't work due to a bug` + ` in TypeDoc. It has been replaced by a dynamic type.`, ); @@ -808,16 +809,16 @@ export function generateTemplate( typeName = typeObject.type.reflection.defaultValue.replace('"', '').replace('"', ''); } else { // tslint:disable-next-line:no-floating-promises - void Logger.error( + void console.error( 'Your input files seem to be incorrect, or there is a major bug in the mapping generator.', ); } } else if (typeObject.type instanceof StringLiteralType) { - Logger.warn(`The interface ${_interface.name} uses a string literal as type, please use SCThingType.`); + console.warn(`The interface ${_interface.name} uses a string literal as type, please use SCThingType.`); typeName = typeObject.type.value; } else { // tslint:disable-next-line:no-floating-promises - void Logger.error( + void console.error( `The interface ${_interface.name} is required to use an SCThingType as a type, please do so.`, ); } @@ -858,16 +859,16 @@ export function generateTemplate( typeName = typeObject.type.reflection.defaultValue.replace('"', '').replace('"', ''); } else { // tslint:disable-next-line:no-floating-promises - void Logger.error( + void console.error( 'Your input files seem to be incorrect, or there is a major bug in the mapping generator.', ); } } else if (typeObject.type instanceof StringLiteralType) { - Logger.warn(`The interface ${_interface.name} uses a string literal as type, please use SCThingType.`); + console.warn(`The interface ${_interface.name} uses a string literal as type, please use SCThingType.`); typeName = typeObject.type.value; } else { // tslint:disable-next-line:no-floating-promises - void Logger.error( + void console.error( `The interface ${_interface.name} is required to use an SCThingType as a type, please do so.`, ); } diff --git a/packages/es-mapping-generator/src/project-reflection.ts b/packages/es-mapping-generator/src/project-reflection.ts index 95a056a7..26def6a0 100644 --- a/packages/es-mapping-generator/src/project-reflection.ts +++ b/packages/es-mapping-generator/src/project-reflection.ts @@ -12,12 +12,10 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {Logger} from '@openstapps/logger'; import {existsSync, PathLike} from 'fs'; import {platform} from 'os'; import path from 'path'; import {Application, ProjectReflection} from 'typedoc'; -import {ModuleKind, ScriptTarget} from 'typescript'; /** * Get a project reflection from a path @@ -26,7 +24,7 @@ import {ModuleKind, ScriptTarget} from 'typescript'; * @param excludeExternals Exclude external dependencies */ export function getProjectReflection(sourcePath: PathLike, excludeExternals = true): ProjectReflection { - Logger.info(`Generating project reflection for ${sourcePath.toString()}.`); + console.info(`Generating project reflection for ${sourcePath.toString()}.`); const tsconfigPath = getTsconfigPath(sourcePath.toString()); @@ -37,8 +35,6 @@ export function getProjectReflection(sourcePath: PathLike, excludeExternals = tr excludeExternals: excludeExternals, ignoreCompilerErrors: true, includeDeclarations: true, - module: ModuleKind.CommonJS, - target: ScriptTarget.Latest, tsconfig: path.join(tsconfigPath, 'tsconfig.json'), }); @@ -85,7 +81,7 @@ export function getTsconfigPath(startPath: string): string { tsconfigPath = tsconfigPathParts.join(path.sep); } - Logger.info(`Using 'tsconfig.json' from ${tsconfigPath}.`); + console.info(`Using 'tsconfig.json' from ${tsconfigPath}.`); return tsconfigPath; } diff --git a/packages/es-mapping-generator/src/types/mapping.d.ts b/packages/es-mapping-generator/src/types/mapping.d.ts new file mode 100644 index 00000000..e69de29b diff --git a/packages/es-mapping-generator/test/aggregations.spec.ts b/packages/es-mapping-generator/test/aggregations.spec.ts index 8e3fbd89..8cec52aa 100644 --- a/packages/es-mapping-generator/test/aggregations.spec.ts +++ b/packages/es-mapping-generator/test/aggregations.spec.ts @@ -1,4 +1,3 @@ -/* eslint-disable unicorn/consistent-function-scoping */ /* * Copyright (C) 2020 StApps * This program is free software: you can redistribute it and/or modify it @@ -16,8 +15,8 @@ import {Logger} from '@openstapps/logger'; import {readdirSync, statSync} from 'fs'; import path from 'path'; -import {MapAggTest} from './mapping-model/map-agg-test'; -import {MapAggTestOptions} from './mapping-model/map-agg-test-options'; +import {MapAggTest} from './mapping-model/map-agg-test.js'; +import {MapAggTestOptions} from './mapping-model/map-agg-test-options.js'; describe('ES Aggregation Gen', async () => { const magAppInstance = new MapAggTest('aggregations'); @@ -49,7 +48,7 @@ describe('ES Aggregation Gen', async () => { it(test.testName, function () { magAppInstance.testInterfaceAgainstPath(test); }); - } catch (error) { + } catch (error: any) { await Logger.error('UNHANDLED REJECTION', error.stack); process.exit(1); } diff --git a/packages/es-mapping-generator/test/mapping-model/MapAggTest.ts b/packages/es-mapping-generator/test/mapping-model/MapAggTest.ts new file mode 100644 index 00000000..e69de29b diff --git a/packages/es-mapping-generator/test/mapping-model/MapAggTestOptions.ts b/packages/es-mapping-generator/test/mapping-model/MapAggTestOptions.ts new file mode 100644 index 00000000..e69de29b diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-array.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-array.agg-test.ts index 4d77cf70..6e46afe1 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-array.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-array.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global-nested.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global-nested.agg-test.ts index 94d3d2f8..9e942d02 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global-nested.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global-nested.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global.agg-test.ts index 8ec9a2af..d4114879 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-global.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-global.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-global.agg-test.ts index e17048d2..bc70f9af 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-global.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-global.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-overwritten.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-overwritten.agg-test.ts index cf2d8a67..7288785f 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-overwritten.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited-overwritten.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited.agg-test.ts index 057f2c86..5fdcb114 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-inherited.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-nested.agg-test.ts b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-nested.agg-test.ts index d4d72199..18b3f886 100644 --- a/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-nested.agg-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/aggregations/src/agg-nested.agg-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/any-unknown.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/any-unknown.mapping-test.ts index 79c42930..03486435 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/any-unknown.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/any-unknown.mapping-test.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/date.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/date.mapping-test.ts index dec41665..59e7f557 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/date.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/date.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @date diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/default-generics.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/default-generics.mapping-test.ts index 40db628b..7701ad95 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/default-generics.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/default-generics.mapping-test.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {PARSE_ERROR} from '../../../../lib/config/typemap'; -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {PARSE_ERROR} from '../../../../lib/config/typemap.js'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/double-type-conflict.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/double-type-conflict.mapping-test.ts index 62a612bf..17f258a5 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/double-type-conflict.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/double-type-conflict.mapping-test.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {TYPE_CONFLICT} from '../../../../lib/config/typemap'; -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {TYPE_CONFLICT} from '../../../../lib/config/typemap.js'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/enum.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/enum.mapping-test.ts index ffefc03f..067b1e89 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/enum.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/enum.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/filterable-tag.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/filterable-tag.mapping-test.ts index ef22e580..de6b65e4 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/filterable-tag.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/filterable-tag.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; export type FilterableEnumType = 'a' | 'b' | 'c'; diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/generics.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/generics.mapping-test.ts index 19203a67..71917158 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/generics.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/generics.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/impossible-union.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/impossible-union.mapping-test.ts index c674e666..e7c98d7d 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/impossible-union.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/impossible-union.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/incompatible-type.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/incompatible-type.mapping-test.ts index acf14e00..4aec718c 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/incompatible-type.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/incompatible-type.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/index-signature.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/index-signature.mapping-test.ts index fa256267..10f01cde 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/index-signature.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/index-signature.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/inferred-type-filterable.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/inferred-type-filterable.mapping-test.ts index af756d24..230f4f10 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/inferred-type-filterable.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/inferred-type-filterable.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {MapAggTestOptions} from '../../map-agg-test-options'; -import {ThingType} from './types'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; +import {ThingType} from './types.js'; /** * @date diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/inherit-tags.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/inherit-tags.mapping-test.ts index 448f790a..5149da3a 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/inherit-tags.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/inherit-tags.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {MapAggTestOptions} from '../../map-agg-test-options'; -import {ThingType} from './types'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; +import {ThingType} from './types.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/inherited-property.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/inherited-property.mapping-test.ts index b078d158..706a0ef2 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/inherited-property.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/inherited-property.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/invalid-tag.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/invalid-tag.mapping-test.ts index 5c463d91..3e58a1b7 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/invalid-tag.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/invalid-tag.mapping-test.ts @@ -1,4 +1,3 @@ -/* eslint-disable jsdoc/check-tag-names */ /* * Copyright (C) 2020 StApps * This program is free software: you can redistribute it and/or modify it @@ -13,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/map-explicit-types.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/map-explicit-types.mapping-test.ts index ef9ef6ad..7776a16c 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/map-explicit-types.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/map-explicit-types.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/missing-premap.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/missing-premap.mapping-test.ts index 63bcad62..e4b9cb46 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/missing-premap.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/missing-premap.mapping-test.ts @@ -12,9 +12,9 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {MISSING_PREMAP} from '../../../../lib/config/typemap'; -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {MISSING_PREMAP} from '../../../../lib/config/typemap.js'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/nested.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/nested.mapping-test.ts index e1464d83..6b9f7f6e 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/nested.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/nested.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/object-union.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/object-union.mapping-test.ts index 986f3fd2..86317edd 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/object-union.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/object-union.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/paired-tags.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/paired-tags.mapping-test.ts index 08558c97..b13ce38b 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/paired-tags.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/paired-tags.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/sensible-defaults.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/sensible-defaults.mapping-test.ts index eee9bb0c..bd90a89d 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/sensible-defaults.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/sensible-defaults.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/sortable-tag.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/sortable-tag.mapping-test.ts index 83a1877a..d9c79555 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/sortable-tag.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/sortable-tag.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/tags-ignore-case.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/tags-ignore-case.mapping-test.ts index d188f3f0..ff8e7c14 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/tags-ignore-case.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/tags-ignore-case.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-alias.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-alias.mapping-test.ts index 68492d91..1a32026b 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-alias.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-alias.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-overrides.mapping-test.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-overrides.mapping-test.ts index 305f79c2..b8b80eb2 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-overrides.mapping-test.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-overrides.mapping-test.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; export interface SCISO8601DateRange { bar: string; diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-query.mapping-test.disabled.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-query.mapping-test.disabled.ts index 4b7368a2..3b882ae1 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-query.mapping-test.disabled.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-query.mapping-test.disabled.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-wrapper-inheritance.mapping-test.disabled.ts b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-wrapper-inheritance.mapping-test.disabled.ts index 81f7e146..45a1f3fe 100644 --- a/packages/es-mapping-generator/test/mapping-model/mappings/src/type-wrapper-inheritance.mapping-test.disabled.ts +++ b/packages/es-mapping-generator/test/mapping-model/mappings/src/type-wrapper-inheritance.mapping-test.disabled.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {ThingType} from './types'; -import {MapAggTestOptions} from '../../map-agg-test-options'; +import {ThingType} from './types.js'; +import {MapAggTestOptions} from '../../map-agg-test-options.js'; /** * @indexable diff --git a/packages/es-mapping-generator/test/mapping.spec.ts b/packages/es-mapping-generator/test/mapping.spec.ts index 76da44d4..073dd2d4 100644 --- a/packages/es-mapping-generator/test/mapping.spec.ts +++ b/packages/es-mapping-generator/test/mapping.spec.ts @@ -15,8 +15,8 @@ import {Logger} from '@openstapps/logger'; import {readdirSync, statSync} from 'fs'; import path from 'path'; -import {MapAggTest} from './mapping-model/map-agg-test'; -import {MapAggTestOptions} from './mapping-model/map-agg-test-options'; +import {MapAggTest} from './mapping-model/map-agg-test.js'; +import {MapAggTestOptions} from './mapping-model/map-agg-test-options.js'; describe('ES Mapping Gen', async () => { const magAppInstance = new MapAggTest('mappings'); @@ -49,7 +49,7 @@ describe('ES Mapping Gen', async () => { it(test.testName, function () { magAppInstance.testInterfaceAgainstPath(test); }); - } catch (error) { + } catch (error: any) { await Logger.error('UNHANDLED REJECTION', error.stack); process.exit(1); } diff --git a/packages/es-mapping-generator/tsconfig.json b/packages/es-mapping-generator/tsconfig.json index 301fd68e..27d3a5bf 100644 --- a/packages/es-mapping-generator/tsconfig.json +++ b/packages/es-mapping-generator/tsconfig.json @@ -9,7 +9,7 @@ "inlineSourceMap": true, "skipLibCheck": true, "module": "CommonJS", - "moduleResolution": "node", + "moduleResolution": "Node", "noErrorTruncation": true, "noFallthroughCasesInSwitch": true, "noImplicitAny": true, @@ -19,7 +19,7 @@ "outDir": "./lib/", "strict": true, "skipLibCheck": true, - "target": "es6" + "target": "ES2020" }, "exclude": [ "./lib/", diff --git a/packages/gitlab-api/app.js b/packages/gitlab-api/app.js index 19bbfa61..d233e644 100644 --- a/packages/gitlab-api/app.js +++ b/packages/gitlab-api/app.js @@ -1,2 +1,2 @@ #!/usr/bin/env node -require('./lib/cli.js') +import './lib/cli.js' diff --git a/packages/gitlab-api/package.json b/packages/gitlab-api/package.json index d466b000..75ed9707 100644 --- a/packages/gitlab-api/package.json +++ b/packages/gitlab-api/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/gitlab-api", "description": "Wraps common GitLab API calls in a TypeScript class.", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/gitlab-api.git", "author": "Karl-Philipp Wulfert ", @@ -14,10 +15,9 @@ "openstapps-gitlab-api": "app.js" }, "scripts": { - "build": "npm run compile", + "build": "rimraf lib && tsc", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md && git commit -m 'docs: update changelog'", "check-configuration": "openstapps-configuration", - "compile": "rimraf lib && tsc", "documentation": "typedoc --out docs --readme README.md --listInvalidSymbolLinks --entryPointStrategy expand src", "lint": "eslint --ext .ts src/", "postversion": "npm run changelog", @@ -40,12 +40,11 @@ "eslint": "8.33.0", "eslint-config-prettier": "8.6.0", "eslint-plugin-jsdoc": "39.7.4", - "eslint-plugin-prettier": "4.2.1", "eslint-plugin-unicorn": "45.0.2", "prettier": "2.8.3", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" } } diff --git a/packages/gitlab-api/src/api.ts b/packages/gitlab-api/src/api.ts index 16586fb3..13307798 100644 --- a/packages/gitlab-api/src/api.ts +++ b/packages/gitlab-api/src/api.ts @@ -32,7 +32,7 @@ import { Scope, Tag, TreeFile, -} from './types'; +} from './types.js'; import got from "got"; /** diff --git a/packages/gitlab-api/src/cli.ts b/packages/gitlab-api/src/cli.ts index 818102fb..28e0dcd9 100644 --- a/packages/gitlab-api/src/cli.ts +++ b/packages/gitlab-api/src/cli.ts @@ -13,13 +13,13 @@ * this program. If not, see . */ import {Logger} from '@openstapps/logger'; -import {AddLogLevel} from '@openstapps/logger/lib/transformations/add-log-level'; -import {Colorize} from '@openstapps/logger/lib/transformations/colorize'; +import {AddLogLevel} from '@openstapps/logger/lib/transformations/add-log-level.js'; +import {Colorize} from '@openstapps/logger/lib/transformations/colorize.js'; import {Command} from 'commander'; import {readFileSync} from 'fs'; import path from 'path'; -import {Api, ApiRequestOptions} from './api'; -import {Issue, IssueState, MembershipScope, Scope} from './types'; +import {Api, ApiRequestOptions} from './api.js'; +import {Issue, IssueState, MembershipScope, Scope} from './types.js'; Logger.setTransformations([new AddLogLevel(), new Colorize()]); diff --git a/packages/logger/package.json b/packages/logger/package.json index 1c1fe875..d957c229 100644 --- a/packages/logger/package.json +++ b/packages/logger/package.json @@ -2,6 +2,7 @@ "name": "@openstapps/logger", "description": "A cli logger with colors, loglevels and the possibility to use a transport system for errors", "version": "2.1.0", + "type": "module", "license": "GPL-3.0-only", "repository": "git@gitlab.com:openstapps/logger.git", "author": "Karl-Philipp Wulfert ", @@ -12,10 +13,9 @@ ], "main": "./lib/logger.js", "scripts": { - "build": "npm run lint && npm run compile", + "build": "rimraf lib && tsc", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md && git commit -m 'docs: update changelog'", "check-configuration": "openstapps-configuration", - "compile": "rimraf lib && tsc", "documentation": "typedoc --name \"@openstapps/logger\" --includeVersion --out docs --readme README.md --listInvalidSymbolLinks --entryPointStrategy expand src", "lint": "eslint --ext .ts src/", "postversion": "npm run changelog", @@ -25,7 +25,6 @@ "test": "nyc mocha 'test/**/*.spec.ts'" }, "dependencies": { - "@types/node": "18.15.3", "@types/nodemailer": "6.4.7", "chalk": "4.1.2", "flatted": "3.2.7", @@ -40,6 +39,7 @@ "@types/chai-as-promised": "7.1.5", "@types/chai-spies": "1.0.3", "@types/mocha": "10.0.1", + "@types/node": "18.15.3", "@typescript-eslint/eslint-plugin": "5.49.0", "@typescript-eslint/parser": "5.49.0", "chai": "4.3.7", @@ -56,8 +56,8 @@ "prettier": "2.8.3", "rimraf": "4.4.0", "ts-node": "10.9.1", - "typedoc": "0.22.18", - "typescript": "4.4.4" + "typedoc": "0.23.26", + "typescript": "4.8.4" }, "nyc": { "all": true, diff --git a/packages/logger/src/common.ts b/packages/logger/src/common.ts index e32d083a..5f6b0de1 100644 --- a/packages/logger/src/common.ts +++ b/packages/logger/src/common.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {Transport, VerifiableTransport} from './transport'; +import {Transport, VerifiableTransport} from './transport.js'; /** * A recursive partial object diff --git a/packages/logger/src/logger.ts b/packages/logger/src/logger.ts index 08d0f65a..6218dc5d 100644 --- a/packages/logger/src/logger.ts +++ b/packages/logger/src/logger.ts @@ -13,10 +13,10 @@ * this program. If not, see . */ import {stringify} from 'flatted'; -import {isNodeEnvironment, isProductiveEnvironment, isProductiveNodeEnvironment} from './common'; -import {Transformation} from './transformation'; -import {AddLogLevel} from './transformations/add-log-level'; -import {Transport} from './transport'; +import {isNodeEnvironment, isProductiveEnvironment, isProductiveNodeEnvironment} from './common.js'; +import {Transformation} from './transformation.js'; +import {AddLogLevel} from './transformations/add-log-level.js'; +import {Transport} from './transport.js'; /** * Check if something has property STAPPS_LOG_LEVEL diff --git a/packages/logger/src/smtp.ts b/packages/logger/src/smtp.ts index 16b4a90d..fc12e98d 100644 --- a/packages/logger/src/smtp.ts +++ b/packages/logger/src/smtp.ts @@ -14,8 +14,8 @@ */ import * as nodemailer from 'nodemailer'; import {MailOptions} from 'nodemailer/lib/sendmail-transport'; -import {deleteUndefinedProperties, isProductiveEnvironment, RecursivePartial} from './common'; -import {VerifiableTransport} from './transport'; +import {deleteUndefinedProperties, isProductiveEnvironment, RecursivePartial} from './common.js'; +import {VerifiableTransport} from './transport.js'; /** * A configuration of the transport used to send mails via SMTP diff --git a/packages/logger/src/transformation.ts b/packages/logger/src/transformation.ts index 5d4a5ea3..f5201899 100644 --- a/packages/logger/src/transformation.ts +++ b/packages/logger/src/transformation.ts @@ -12,7 +12,7 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LogLevel} from './logger'; +import {LogLevel} from './logger.js'; /** * A transformer for log output diff --git a/packages/logger/src/transformations/add-log-level.ts b/packages/logger/src/transformations/add-log-level.ts index afe7e6af..6cb80d92 100644 --- a/packages/logger/src/transformations/add-log-level.ts +++ b/packages/logger/src/transformations/add-log-level.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LogLevel} from '../logger'; -import {Transformation} from '../transformation'; +import {LogLevel} from '../logger.js'; +import {Transformation} from '../transformation.js'; /** * Transformation that adds the log level to output diff --git a/packages/logger/src/transformations/colorize.ts b/packages/logger/src/transformations/colorize.ts index 775a5b92..cabacb0a 100644 --- a/packages/logger/src/transformations/colorize.ts +++ b/packages/logger/src/transformations/colorize.ts @@ -13,8 +13,8 @@ * this program. If not, see . */ import chalk from 'chalk'; -import {LogLevel} from '../logger'; -import {Transformation} from '../transformation'; +import {LogLevel} from '../logger.js'; +import {Transformation} from '../transformation.js'; /** * Transformation that colorizes log output diff --git a/packages/logger/src/transformations/timestamp.ts b/packages/logger/src/transformations/timestamp.ts index 6a682e67..054f9fb3 100644 --- a/packages/logger/src/transformations/timestamp.ts +++ b/packages/logger/src/transformations/timestamp.ts @@ -12,8 +12,8 @@ * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ -import {LogLevel} from '../logger'; -import {Transformation} from '../transformation'; +import {LogLevel} from '../logger.js'; +import {Transformation} from '../transformation.js'; /** * Transformation that adds a timestamp to output diff --git a/packages/logger/test/common.spec.ts b/packages/logger/test/common.spec.ts index bdbf9a58..26d13ecb 100644 --- a/packages/logger/test/common.spec.ts +++ b/packages/logger/test/common.spec.ts @@ -19,7 +19,7 @@ import { isNodeEnvironment, isProductiveEnvironment, isProductiveNodeEnvironment, -} from '../src/common'; +} from '../src/common.js'; @suite() export class CommonSpec { diff --git a/packages/logger/test/dummyTransport.ts b/packages/logger/test/dummyTransport.ts index 8eb042ab..cbbb70f9 100644 --- a/packages/logger/test/dummyTransport.ts +++ b/packages/logger/test/dummyTransport.ts @@ -1,4 +1,4 @@ -import {Transport, VerifiableTransport} from '../src/transport'; +import {Transport, VerifiableTransport} from '../src/transport.js'; export class DummyTransport extends Transport { send(subject: string, message: string): Promise { diff --git a/packages/logger/test/logger.spec.ts b/packages/logger/test/logger.spec.ts index 5294d3ec..a3070038 100644 --- a/packages/logger/test/logger.spec.ts +++ b/packages/logger/test/logger.spec.ts @@ -17,10 +17,10 @@ import {expect} from 'chai'; import chaiAsPromised from 'chai-as-promised'; import chaiSpies from 'chai-spies'; import {suite, test} from '@testdeck/mocha'; -import {Logger} from '../src/logger'; -import {AddLogLevel} from '../src/transformations/add-log-level'; -import {Colorize} from '../src/transformations/colorize'; -import {DummyTransport} from './dummyTransport'; +import {Logger} from '../src/logger.js'; +import {AddLogLevel} from '../src/transformations/add-log-level.js'; +import {Colorize} from '../src/transformations/colorize.js'; +import {DummyTransport} from './dummyTransport.js'; chai.should(); chai.use(chaiSpies); diff --git a/packages/logger/test/smtp.spec.ts b/packages/logger/test/smtp.spec.ts index 625a88ab..f106aecd 100644 --- a/packages/logger/test/smtp.spec.ts +++ b/packages/logger/test/smtp.spec.ts @@ -14,7 +14,7 @@ */ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {SMTP} from '../src/smtp'; +import {SMTP} from '../src/smtp.js'; @suite() export class SMTPSpec { diff --git a/packages/logger/test/transformations/add-log-level.spec.ts b/packages/logger/test/transformations/add-log-level.spec.ts index 80ebe005..231b00c1 100644 --- a/packages/logger/test/transformations/add-log-level.spec.ts +++ b/packages/logger/test/transformations/add-log-level.spec.ts @@ -14,7 +14,7 @@ */ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {AddLogLevel} from '../../src/transformations/add-log-level'; +import {AddLogLevel} from '../../src/transformations/add-log-level.js'; @suite() export class AddLogLevelSpec { diff --git a/packages/logger/test/transformations/colorize.spec.ts b/packages/logger/test/transformations/colorize.spec.ts index bacb43ee..d801241d 100644 --- a/packages/logger/test/transformations/colorize.spec.ts +++ b/packages/logger/test/transformations/colorize.spec.ts @@ -14,7 +14,7 @@ */ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {Colorize} from '../../src/transformations/colorize'; +import {Colorize} from '../../src/transformations/colorize.js'; @suite() export class ColorizeSpec { diff --git a/packages/logger/test/transformations/timestamp.spec.ts b/packages/logger/test/transformations/timestamp.spec.ts index d37133fa..69301b7c 100644 --- a/packages/logger/test/transformations/timestamp.spec.ts +++ b/packages/logger/test/transformations/timestamp.spec.ts @@ -14,7 +14,7 @@ */ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {Timestamp} from '../../src/transformations/timestamp'; +import {Timestamp} from '../../src/transformations/timestamp.js'; @suite() export class TimeStampSpec { diff --git a/packages/logger/test/transport.spec.ts b/packages/logger/test/transport.spec.ts index 188ba1a4..6e8dbbab 100644 --- a/packages/logger/test/transport.spec.ts +++ b/packages/logger/test/transport.spec.ts @@ -14,8 +14,8 @@ */ import {expect} from 'chai'; import {suite, test} from '@testdeck/mocha'; -import {isTransportWithVerification} from '../src/common'; -import {DummyTransport, VerifiableDummyTransport} from './dummyTransport'; +import {isTransportWithVerification} from '../src/common.js'; +import {DummyTransport, VerifiableDummyTransport} from './dummyTransport.js'; @suite() export class TransportSpec { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 094fe2e4..3e35d850 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,10 +4,12 @@ importers: .: specifiers: + '@changesets/cli': 2.26.0 dotenv-cli: 7.1.0 syncpack: 9.8.4 turbo: 1.8.3 devDependencies: + '@changesets/cli': 2.26.0 dotenv-cli: 7.1.0 syncpack: 9.8.4 turbo: 1.8.3 @@ -73,8 +75,8 @@ importers: sinon-express-mock: 2.2.1 supertest: 6.3.3 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 uuid: 8.3.2 dependencies: '@elastic/elasticsearch': 5.6.22 @@ -95,7 +97,7 @@ importers: nodemailer: 6.9.1 prom-client: 14.1.1 promise-queue: 2.2.5 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm uuid: 8.3.2 devDependencies: '@openstapps/configuration': link:../../configuration/configuration @@ -118,8 +120,8 @@ importers: '@types/sinon-express-mock': 1.3.9 '@types/supertest': 2.0.12 '@types/uuid': 8.3.4 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 chai-as-promised: 7.1.1_chai@4.3.7 conventional-changelog-cli: 2.2.2 @@ -138,8 +140,8 @@ importers: sinon: 14.0.2 sinon-express-mock: 2.2.1_sinon@14.0.2 supertest: 6.3.3 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 backend/proxy: specifiers: @@ -178,8 +180,8 @@ importers: rimraf: 4.4.0 semver: 7.3.8 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/logger': link:../../packages/logger config: 3.3.9 @@ -201,8 +203,8 @@ importers: '@types/proxyquire': 1.3.28 '@types/semver': 7.3.13 '@types/sha1': 1.1.3 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 chai-spies: 1.0.0_chai@4.3.7 conventional-changelog-cli: 2.2.2 @@ -216,9 +218,9 @@ importers: prettier: 2.8.3 proxyquire: 2.1.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 configuration/configuration: specifiers: @@ -239,8 +241,8 @@ importers: prettier: 2.8.3 rimraf: 4.4.0 semver: 7.3.8 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 yaml: 1.10.2 dependencies: chalk: 4.1.2 @@ -252,8 +254,8 @@ importers: '@openstapps/prettier-config': link:../prettier-config '@types/node': 18.15.3 '@types/semver': 7.3.13 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 conventional-changelog-cli: 2.2.2 eslint: 8.33.0 eslint-config-prettier: 8.6.0_eslint@8.33.0 @@ -262,8 +264,8 @@ importers: eslint-plugin-unicorn: 45.0.2_eslint@8.33.0 prettier: 2.8.3 rimraf: 4.4.0 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 configuration/eslint-config: specifiers: @@ -276,10 +278,10 @@ importers: eslint-plugin-prettier: 4.2.1 eslint-plugin-unicorn: 45.0.2 prettier: 2.8.3 - typescript: 4.4.4 + typescript: 4.8.4 devDependencies: - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 conventional-changelog-cli: 2.2.2 eslint: 8.33.0 eslint-config-prettier: 8.6.0_eslint@8.33.0 @@ -287,7 +289,7 @@ importers: eslint-plugin-prettier: 4.2.1_jqplj6qf3uqpxpu4gdyhwwasnq eslint-plugin-unicorn: 45.0.2_eslint@8.33.0 prettier: 2.8.3 - typescript: 4.4.4 + typescript: 4.8.4 configuration/prettier-config: specifiers: {} @@ -328,8 +330,8 @@ importers: rimraf: 4.4.0 tmp: 0.2.1 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/gitlab-api': link:../../packages/gitlab-api '@openstapps/logger': link:../../packages/logger @@ -351,8 +353,8 @@ importers: '@types/mustache': 4.2.2 '@types/node': 18.15.3 '@types/tmp': 0.2.3 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 chai-as-promised: 7.1.1_chai@4.3.7 conventional-changelog-cli: 2.2.2 @@ -365,9 +367,9 @@ importers: nyc: 15.1.0 prettier: 2.8.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 examples/minimal-connector: specifiers: @@ -390,8 +392,8 @@ importers: nyc: 15.1.0 rimraf: 4.4.0 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/api': link:../../packages/api '@openstapps/core': link:../../packages/core @@ -412,9 +414,9 @@ importers: nock: 13.3.0 nyc: 15.1.0 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 examples/minimal-plugin: specifiers: @@ -430,8 +432,8 @@ importers: express: 4.18.2 rimraf: 4.4.0 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/api': link:../../packages/api '@openstapps/core': link:../../packages/core @@ -439,15 +441,15 @@ importers: '@openstapps/logger': link:../../packages/logger commander: 10.0.0 express: 4.18.2 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm devDependencies: '@openstapps/configuration': link:../../configuration/configuration '@types/express': 4.17.16 '@types/node': 18.15.3 conventional-changelog-cli: 2.2.2 rimraf: 4.4.0 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 frontend/app: specifiers: @@ -565,7 +567,7 @@ importers: swiper: 8.4.5 ts-node: 10.9.1 tslib: 2.4.1 - typescript: 4.4.4 + typescript: 4.8.4 webpack-bundle-analyzer: 4.7.0 zone.js: 0.12.0 dependencies: @@ -629,17 +631,17 @@ importers: zone.js: 0.12.0 devDependencies: '@angular-devkit/architect': 0.1303.9 - '@angular-devkit/build-angular': 13.3.9_6lrthiridphjiueir2vgqufdv4 + '@angular-devkit/build-angular': 13.3.9_ea6cmfhwn32btxcasikv3bnvy4 '@angular-devkit/core': 13.3.9 '@angular-devkit/schematics': 13.3.9 - '@angular-eslint/builder': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u - '@angular-eslint/eslint-plugin': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u - '@angular-eslint/eslint-plugin-template': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u - '@angular-eslint/schematics': 13.5.0_oxskkqjpmreda62k4kgghgxdga - '@angular-eslint/template-parser': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u + '@angular-eslint/builder': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@angular-eslint/eslint-plugin': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@angular-eslint/eslint-plugin-template': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@angular-eslint/schematics': 13.5.0_536xy2vqb64yxidue4hjv6dyry + '@angular-eslint/template-parser': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 '@angular/cli': 13.3.9 '@angular/compiler': 13.3.11 - '@angular/compiler-cli': 13.3.11_hc6frll3nbtnwez4ntaf27a2my + '@angular/compiler-cli': 13.3.11_xeflokkgu73wtkc6at5gry2yxu '@angular/language-service': 13.3.11 '@capacitor/android': 4.6.1_@capacitor+core@4.6.1 '@capacitor/cli': 4.6.1 @@ -658,8 +660,8 @@ importers: '@types/leaflet': 1.9.0 '@types/leaflet.markercluster': 1.5.1 '@types/node': 18.15.3 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 conventional-changelog-cli: 2.2.2 cordova-res: 0.15.4 cypress: 12.0.1 @@ -684,8 +686,8 @@ importers: prettier: 2.8.3 protractor: 7.0.0 surge: 0.23.1 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typescript: 4.8.4 webpack-bundle-analyzer: 4.7.0 packages/api: @@ -739,8 +741,8 @@ importers: rimraf: 4.4.0 traverse: 0.6.7 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 uuid: 8.3.2 wait-on: 6.0.1 dependencies: @@ -778,8 +780,8 @@ importers: '@types/traverse': 0.6.32 '@types/uuid': 8.3.4 '@types/wait-on': 5.3.1 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 chai-as-promised: 7.1.1_chai@4.3.7 chai-spies: 1.0.0_chai@4.3.7 @@ -795,9 +797,9 @@ importers: nyc: 15.1.0 prettier: 2.8.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 packages/collection-utils: specifiers: @@ -813,7 +815,7 @@ importers: prettier: 2.8.3 rimraf: 4.4.0 ts-node: 10.9.1 - typescript: 4.4.4 + typescript: 4.8.4 devDependencies: '@openstapps/configuration': link:../../configuration/configuration '@openstapps/eslint-config': link:../../configuration/eslint-config @@ -826,8 +828,8 @@ importers: mocha: 10.2.0 prettier: 2.8.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typescript: 4.8.4 packages/core: specifiers: @@ -866,8 +868,8 @@ importers: source-map-support: 0.5.21 surge: 0.23.1 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/core-tools': link:../core-tools fast-deep-equal: 3.1.3 @@ -888,8 +890,8 @@ importers: '@types/mocha': 10.0.1 '@types/node': 18.15.3 '@types/rimraf': 3.0.2 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 conditional-type-checks: 1.0.6 conventional-changelog-cli: 2.2.2 @@ -904,9 +906,9 @@ importers: rimraf: 4.4.0 source-map-support: 0.5.21 surge: 0.23.1 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 packages/core-tools: specifiers: @@ -955,8 +957,8 @@ importers: toposort: 2.0.2 ts-json-schema-generator: 1.2.0 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/collection-utils': link:../collection-utils '@openstapps/logger': link:../logger @@ -979,7 +981,8 @@ importers: re2: 1.18.0 toposort: 2.0.2 ts-json-schema-generator: 1.2.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typescript: 4.8.4 devDependencies: '@openstapps/configuration': link:../../configuration/configuration '@openstapps/eslint-config': link:../../configuration/eslint-config @@ -993,8 +996,8 @@ importers: '@types/mustache': 4.2.2 '@types/node': 18.15.3 '@types/rimraf': 3.0.2 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 conventional-changelog-cli: 2.2.2 eslint-config-prettier: 8.6.0_eslint@8.33.0 eslint-plugin-jsdoc: 39.7.4_eslint@8.33.0 @@ -1004,24 +1007,22 @@ importers: nock: 13.3.0 prettier: 2.8.3 rimraf: 4.4.0 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + typedoc: 0.23.26_typescript@4.8.4 packages/es-mapping-generator: specifiers: '@openstapps/configuration': workspace:* - '@openstapps/logger': workspace:* '@testdeck/mocha': 0.3.3 '@types/chai': 4.3.4 '@types/mocha': 10.0.1 - '@types/node': 18.15.3 + '@types/node': 14.18.38 '@types/rimraf': 3.0.2 chai: 4.3.7 commander: 10.0.0 conventional-changelog-cli: 2.2.2 deepmerge: 4.3.0 flatted: 3.2.7 - got: 12.6.0 + got: 11.8.6 mocha: 10.2.0 nock: 13.3.0 rimraf: 4.4.0 @@ -1030,11 +1031,10 @@ importers: typedoc: 0.18.0 typescript: 3.8.3 dependencies: - '@openstapps/logger': link:../logger commander: 10.0.0 deepmerge: 4.3.0 flatted: 3.2.7 - got: 12.6.0 + got: 11.8.6 typedoc: 0.18.0_typescript@3.8.3 typescript: 3.8.3 devDependencies: @@ -1042,14 +1042,14 @@ importers: '@testdeck/mocha': 0.3.3 '@types/chai': 4.3.4 '@types/mocha': 10.0.1 - '@types/node': 18.15.3 + '@types/node': 14.18.38 '@types/rimraf': 3.0.2 chai: 4.3.7 conventional-changelog-cli: 2.2.2 mocha: 10.2.0 nock: 13.3.0 rimraf: 4.4.0 - ts-node: 10.9.1_okmvbkxma23ofrfmlmxxsitqhe + ts-node: 10.9.1_v4vfm2zcz4t2yckcvpdr2ktuie tslint-eslint-rules: 5.4.0_zod7fnacdegw6szwqawh2ymqz4 packages/gitlab-api: @@ -1065,14 +1065,13 @@ importers: eslint: 8.33.0 eslint-config-prettier: 8.6.0 eslint-plugin-jsdoc: 39.7.4 - eslint-plugin-prettier: 4.2.1 eslint-plugin-unicorn: 45.0.2 got: 12.6.0 prettier: 2.8.3 rimraf: 4.4.0 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: '@openstapps/logger': link:../logger commander: 10.0.0 @@ -1081,19 +1080,18 @@ importers: '@openstapps/configuration': link:../../configuration/configuration '@openstapps/eslint-config': link:../../configuration/eslint-config '@types/node': 18.15.3 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 conventional-changelog-cli: 2.2.2 eslint: 8.33.0 eslint-config-prettier: 8.6.0_eslint@8.33.0 eslint-plugin-jsdoc: 39.7.4_eslint@8.33.0 - eslint-plugin-prettier: 4.2.1_jqplj6qf3uqpxpu4gdyhwwasnq eslint-plugin-unicorn: 45.0.2_eslint@8.33.0 prettier: 2.8.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 packages/logger: specifiers: @@ -1126,10 +1124,9 @@ importers: prettier: 2.8.3 rimraf: 4.4.0 ts-node: 10.9.1 - typedoc: 0.22.18 - typescript: 4.4.4 + typedoc: 0.23.26 + typescript: 4.8.4 dependencies: - '@types/node': 18.15.3 '@types/nodemailer': 6.4.7 chalk: 4.1.2 flatted: 3.2.7 @@ -1143,8 +1140,9 @@ importers: '@types/chai-as-promised': 7.1.5 '@types/chai-spies': 1.0.3 '@types/mocha': 10.0.1 - '@typescript-eslint/eslint-plugin': 5.49.0_qashngm2gnebqglv6uilexvixe - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@types/node': 18.15.3 + '@typescript-eslint/eslint-plugin': 5.49.0_bhfhikta3fu7tua7ac2hrytgwe + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 chai: 4.3.7 chai-as-promised: 7.1.1_chai@4.3.7 chai-spies: 1.0.0_chai@4.3.7 @@ -1158,9 +1156,9 @@ importers: nyc: 15.1.0 prettier: 2.8.3 rimraf: 4.4.0 - ts-node: 10.9.1_pqnndxpefpwnql3f7isisgilc4 - typedoc: 0.22.18_typescript@4.4.4 - typescript: 4.4.4 + ts-node: 10.9.1_x7wmykdye3n75c4332b67wrzwm + typedoc: 0.23.26_typescript@4.8.4 + typescript: 4.8.4 packages: @@ -1194,7 +1192,7 @@ packages: - chokidar dev: true - /@angular-devkit/build-angular/13.3.9_6lrthiridphjiueir2vgqufdv4: + /@angular-devkit/build-angular/13.3.9_ea6cmfhwn32btxcasikv3bnvy4: resolution: {integrity: sha512-1LqcMizeabx3yOkx3tptCSAoEhG6nO6hPgI/B3EJ07G/ZcoxunMWSeN3P3zT10dZMEHhcxl+8cSStSXaXj9hfA==} engines: {node: ^12.20.0 || ^14.15.0 || >=16.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: @@ -1224,7 +1222,7 @@ packages: '@angular-devkit/architect': 0.1303.9 '@angular-devkit/build-webpack': 0.1303.9_yqwwn4zy7x4owjsib6p4jmcbki '@angular-devkit/core': 13.3.9 - '@angular/compiler-cli': 13.3.11_hc6frll3nbtnwez4ntaf27a2my + '@angular/compiler-cli': 13.3.11_xeflokkgu73wtkc6at5gry2yxu '@babel/core': 7.16.12 '@babel/generator': 7.16.8 '@babel/helper-annotate-as-pure': 7.16.7 @@ -1235,7 +1233,7 @@ packages: '@babel/runtime': 7.16.7 '@babel/template': 7.16.7 '@discoveryjs/json-ext': 0.5.6 - '@ngtools/webpack': 13.3.9_zahd5apot2vqf7c2vidipkydmi + '@ngtools/webpack': 13.3.9_v5dkofrxtqypqogvhwnjsgcexa ansi-colors: 4.1.1 babel-loader: 8.2.5_xcm7bbhl2zdsgckfarl5d37zpy babel-plugin-istanbul: 6.1.1 @@ -1282,7 +1280,7 @@ packages: text-table: 0.2.0 tree-kill: 1.2.2 tslib: 2.3.1 - typescript: 4.4.4 + typescript: 4.8.4 webpack: 5.70.0 webpack-dev-middleware: 5.3.0_webpack@5.70.0 webpack-dev-server: 4.7.3_webpack@5.70.0 @@ -1433,7 +1431,7 @@ packages: - chokidar dev: true - /@angular-eslint/builder/13.5.0_4lztcmfj3iyz2vssbslohlxm4u: + /@angular-eslint/builder/13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-IYY/HYS4fSddJLs2pAkMkKhHL07driUILPxGnGLblfWuoJBhRspyrVL3uZc3Q4iJXc1RJfaOno9oRw11FGyL6Q==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -1441,7 +1439,7 @@ packages: dependencies: '@nrwl/devkit': 13.1.3 eslint: 8.33.0 - typescript: 4.4.4 + typescript: 4.8.4 transitivePeerDependencies: - '@swc-node/register' - '@swc/core' @@ -1452,43 +1450,43 @@ packages: resolution: {integrity: sha512-7M/5ilxqPD3ydgqqdLsYs3kBwZgNg2Y6C01B5SEHZNLqLT9kAJa7I4y6GlxCZqejCIh554kdXGeV3abIxFccSg==} dev: true - /@angular-eslint/eslint-plugin-template/13.5.0_4lztcmfj3iyz2vssbslohlxm4u: + /@angular-eslint/eslint-plugin-template/13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-ZVSXayn8MqYOhYomH2Cjc0azhuUQbY9fp9dKjJZOD64KhP8BYHw8+Ogc9E/FU5oZQ9fKw6A+23NAYKmLNqSAgA==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: '*' dependencies: '@angular-eslint/bundled-angular-compiler': 13.5.0 - '@typescript-eslint/experimental-utils': 5.27.1_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/experimental-utils': 5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4 aria-query: 4.2.2 axobject-query: 2.2.0 eslint: 8.33.0 - typescript: 4.4.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true - /@angular-eslint/eslint-plugin/13.5.0_4lztcmfj3iyz2vssbslohlxm4u: + /@angular-eslint/eslint-plugin/13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-k9o9WIqUkdO8tdYFCJ54PUWsNd9HHflih/GmA13EWciBYx8QxciwBh0u4NSAnbtOwp4Y7juGZ/Dta5ZrT/2VBA==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: '*' dependencies: - '@angular-eslint/utils': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u - '@typescript-eslint/experimental-utils': 5.27.1_4lztcmfj3iyz2vssbslohlxm4u + '@angular-eslint/utils': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@typescript-eslint/experimental-utils': 5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4 eslint: 8.33.0 - typescript: 4.4.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true - /@angular-eslint/schematics/13.5.0_oxskkqjpmreda62k4kgghgxdga: + /@angular-eslint/schematics/13.5.0_536xy2vqb64yxidue4hjv6dyry: resolution: {integrity: sha512-0LvdalNpYb0oWwptwkeK2PVokfQ9itMIp8/aMjbOLH1RQ3eHFZgBtVvVm3G5EpPKzbL0llaeTifZvH2z70qVYQ==} peerDependencies: '@angular/cli': '>= 13.0.0 < 14.0.0' dependencies: - '@angular-eslint/eslint-plugin': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u - '@angular-eslint/eslint-plugin-template': 13.5.0_4lztcmfj3iyz2vssbslohlxm4u + '@angular-eslint/eslint-plugin': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@angular-eslint/eslint-plugin-template': 13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4 '@angular/cli': 13.3.9 ignore: 5.2.0 strip-json-comments: 3.1.1 @@ -1499,7 +1497,7 @@ packages: - typescript dev: true - /@angular-eslint/template-parser/13.5.0_4lztcmfj3iyz2vssbslohlxm4u: + /@angular-eslint/template-parser/13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-k+24+kBjaOuthfp9RBQB0zH6UqeizZuFQFEuZEQbvirPbdQ2SqNBw7IcmW2Qw1v7fjFe6/6gqK7wm2g7o9ZZvA==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -1508,19 +1506,19 @@ packages: '@angular-eslint/bundled-angular-compiler': 13.5.0 eslint: 8.33.0 eslint-scope: 5.1.1 - typescript: 4.4.4 + typescript: 4.8.4 dev: true - /@angular-eslint/utils/13.5.0_4lztcmfj3iyz2vssbslohlxm4u: + /@angular-eslint/utils/13.5.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-wX3W6STSDJDJ7ZyEsUdBp4HUPwmillMmKcdnFsy+qxbpJFzFOxOFpK1zet4ELsq1XpB89i9vRvC3vYbpHn3CSw==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: '*' dependencies: '@angular-eslint/bundled-angular-compiler': 13.5.0 - '@typescript-eslint/experimental-utils': 5.27.1_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/experimental-utils': 5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4 eslint: 8.33.0 - typescript: 4.4.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true @@ -1593,7 +1591,7 @@ packages: tslib: 2.4.1 dev: false - /@angular/compiler-cli/13.3.11_hc6frll3nbtnwez4ntaf27a2my: + /@angular/compiler-cli/13.3.11_xeflokkgu73wtkc6at5gry2yxu: resolution: {integrity: sha512-cl+3Wzxt8NRi2WY+RdsxuQ3yQRUp8pSlfSlJJnfaKE1BEqap6uem2DovuhnIbmrLhxZ5xt7o+I1szyO6sn6+ag==} engines: {node: ^12.20.0 || ^14.15.0 || >=16.10.0} hasBin: true @@ -1611,7 +1609,7 @@ packages: semver: 7.3.8 sourcemap-codec: 1.4.8 tslib: 2.4.1 - typescript: 4.4.4 + typescript: 4.8.4 yargs: 17.7.1 transitivePeerDependencies: - supports-color @@ -3794,7 +3792,7 @@ packages: resolution: {integrity: sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.9 + regenerator-runtime: 0.13.11 dev: true /@babel/runtime/7.21.0: @@ -4029,6 +4027,190 @@ packages: '@capacitor/core': 4.6.1 dev: false + /@changesets/apply-release-plan/6.1.3: + resolution: {integrity: sha512-ECDNeoc3nfeAe1jqJb5aFQX7CqzQhD2klXRez2JDb/aVpGUbX673HgKrnrgJRuQR/9f2TtLoYIzrGB9qwD77mg==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/config': 2.3.0 + '@changesets/get-version-range-type': 0.3.2 + '@changesets/git': 2.0.0 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + detect-indent: 6.1.0 + fs-extra: 7.0.1 + lodash.startcase: 4.4.0 + outdent: 0.5.0 + prettier: 2.8.3 + resolve-from: 5.0.0 + semver: 5.7.1 + dev: true + + /@changesets/assemble-release-plan/5.2.3: + resolution: {integrity: sha512-g7EVZCmnWz3zMBAdrcKhid4hkHT+Ft1n0mLussFMcB1dE2zCuwcvGoy9ec3yOgPGF4hoMtgHaMIk3T3TBdvU9g==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.5 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + semver: 5.7.1 + dev: true + + /@changesets/changelog-git/0.1.14: + resolution: {integrity: sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==} + dependencies: + '@changesets/types': 5.2.1 + dev: true + + /@changesets/cli/2.26.0: + resolution: {integrity: sha512-0cbTiDms+ICTVtEwAFLNW0jBNex9f5+fFv3I771nBvdnV/mOjd1QJ4+f8KtVSOrwD9SJkk9xbDkWFb0oXd8d1Q==} + hasBin: true + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/apply-release-plan': 6.1.3 + '@changesets/assemble-release-plan': 5.2.3 + '@changesets/changelog-git': 0.1.14 + '@changesets/config': 2.3.0 + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.5 + '@changesets/get-release-plan': 3.0.16 + '@changesets/git': 2.0.0 + '@changesets/logger': 0.0.5 + '@changesets/pre': 1.0.14 + '@changesets/read': 0.5.9 + '@changesets/types': 5.2.1 + '@changesets/write': 0.2.3 + '@manypkg/get-packages': 1.1.3 + '@types/is-ci': 3.0.0 + '@types/semver': 6.2.3 + ansi-colors: 4.1.3 + chalk: 2.4.2 + enquirer: 2.3.6 + external-editor: 3.1.0 + fs-extra: 7.0.1 + human-id: 1.0.2 + is-ci: 3.0.1 + meow: 6.1.1 + outdent: 0.5.0 + p-limit: 2.3.0 + preferred-pm: 3.0.3 + resolve-from: 5.0.0 + semver: 5.7.1 + spawndamnit: 2.0.0 + term-size: 2.2.1 + tty-table: 4.1.6 + dev: true + + /@changesets/config/2.3.0: + resolution: {integrity: sha512-EgP/px6mhCx8QeaMAvWtRrgyxW08k/Bx2tpGT+M84jEdX37v3VKfh4Cz1BkwrYKuMV2HZKeHOh8sHvja/HcXfQ==} + dependencies: + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.5 + '@changesets/logger': 0.0.5 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + micromatch: 4.0.5 + dev: true + + /@changesets/errors/0.1.4: + resolution: {integrity: sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==} + dependencies: + extendable-error: 0.1.7 + dev: true + + /@changesets/get-dependents-graph/1.3.5: + resolution: {integrity: sha512-w1eEvnWlbVDIY8mWXqWuYE9oKhvIaBhzqzo4ITSJY9hgoqQ3RoBqwlcAzg11qHxv/b8ReDWnMrpjpKrW6m1ZTA==} + dependencies: + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + chalk: 2.4.2 + fs-extra: 7.0.1 + semver: 5.7.1 + dev: true + + /@changesets/get-release-plan/3.0.16: + resolution: {integrity: sha512-OpP9QILpBp1bY2YNIKFzwigKh7Qe9KizRsZomzLe6pK8IUo8onkAAVUD8+JRKSr8R7d4+JRuQrfSSNlEwKyPYg==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/assemble-release-plan': 5.2.3 + '@changesets/config': 2.3.0 + '@changesets/pre': 1.0.14 + '@changesets/read': 0.5.9 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + dev: true + + /@changesets/get-version-range-type/0.3.2: + resolution: {integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==} + dev: true + + /@changesets/git/2.0.0: + resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/errors': 0.1.4 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + is-subdir: 1.2.0 + micromatch: 4.0.5 + spawndamnit: 2.0.0 + dev: true + + /@changesets/logger/0.0.5: + resolution: {integrity: sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==} + dependencies: + chalk: 2.4.2 + dev: true + + /@changesets/parse/0.3.16: + resolution: {integrity: sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==} + dependencies: + '@changesets/types': 5.2.1 + js-yaml: 3.14.1 + dev: true + + /@changesets/pre/1.0.14: + resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/errors': 0.1.4 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + dev: true + + /@changesets/read/0.5.9: + resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/git': 2.0.0 + '@changesets/logger': 0.0.5 + '@changesets/parse': 0.3.16 + '@changesets/types': 5.2.1 + chalk: 2.4.2 + fs-extra: 7.0.1 + p-filter: 2.1.0 + dev: true + + /@changesets/types/4.1.0: + resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} + dev: true + + /@changesets/types/5.2.1: + resolution: {integrity: sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==} + dev: true + + /@changesets/write/0.2.3: + resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/types': 5.2.1 + fs-extra: 7.0.1 + human-id: 1.0.2 + prettier: 2.8.3 + dev: true + /@colors/colors/1.5.0: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -4109,7 +4291,7 @@ packages: dependencies: ansi-colors: 4.1.3 fancy-log: 1.3.3 - typescript: 4.4.4 + typescript: 4.8.4 dev: true /@compodoc/ngd-transformer/2.1.0: @@ -4733,12 +4915,32 @@ packages: resolution: {integrity: sha512-qQp9fJdPuSxhJ0aMWCJ8ZavG67GeB1ZoYfYsIooyipeXTWZ9U67uEm93Udvd6C6v1Wa6mvD8X5PBNTtth1x0LQ==} dev: false + /@manypkg/find-root/1.1.0: + resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + dependencies: + '@babel/runtime': 7.21.0 + '@types/node': 12.20.55 + find-up: 4.1.0 + fs-extra: 8.1.0 + dev: true + + /@manypkg/get-packages/1.1.3: + resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + dependencies: + '@babel/runtime': 7.21.0 + '@changesets/types': 4.1.0 + '@manypkg/find-root': 1.1.0 + fs-extra: 8.1.0 + globby: 11.1.0 + read-yaml-file: 1.1.0 + dev: true + /@mobily/ts-belt/3.13.1: resolution: {integrity: sha512-K5KqIhPI/EoCTbA6CGbrenM9s41OouyK8A03fGJJcla/zKucsgLbz8HNbeseoLarRPgyWJsUyCYqFhI7t3Ra9Q==} engines: {node: '>= 10.*'} dev: true - /@ngtools/webpack/13.3.9_zahd5apot2vqf7c2vidipkydmi: + /@ngtools/webpack/13.3.9_v5dkofrxtqypqogvhwnjsgcexa: resolution: {integrity: sha512-wmgOI5sogAuilwBZJqCHVMjm2uhDxjdSmNLFx7eznwGDa6LjvjuATqCv2dVlftq0Y/5oZFVrg5NpyHt5kfZ8Cg==} engines: {node: ^12.20.0 || ^14.15.0 || >=16.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: @@ -4746,8 +4948,8 @@ packages: typescript: '>=4.4.3 <4.7' webpack: ^5.30.0 dependencies: - '@angular/compiler-cli': 13.3.11_hc6frll3nbtnwez4ntaf27a2my - typescript: 4.4.4 + '@angular/compiler-cli': 13.3.11_xeflokkgu73wtkc6at5gry2yxu + typescript: 4.8.4 webpack: 5.70.0 dev: true @@ -5048,7 +5250,7 @@ packages: engines: {node: '>=12.0.0'} dependencies: '@redocly/ajv': 8.11.0 - '@types/node': 14.18.36 + '@types/node': 14.18.38 colorette: 1.4.0 js-levenshtein: 1.1.6 js-yaml: 4.1.0 @@ -5111,6 +5313,11 @@ packages: engines: {node: '>=6'} dev: true + /@sindresorhus/is/4.6.0: + resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} + engines: {node: '>=10'} + dev: false + /@sindresorhus/is/5.3.0: resolution: {integrity: sha512-CX6t4SYQ37lzxicAqsBtxA3OseeoVrh9cSJ5PFYam0GksYlupRfy1A+Q4aYD3zvcfECLc0zO2u+ZnR2UYKvCrw==} engines: {node: '>=14.16'} @@ -5206,6 +5413,13 @@ packages: defer-to-connect: 1.1.3 dev: true + /@szmarczak/http-timer/4.0.6: + resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} + engines: {node: '>=10'} + dependencies: + defer-to-connect: 2.0.1 + dev: false + /@szmarczak/http-timer/5.0.1: resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} engines: {node: '>=14.16'} @@ -5278,6 +5492,15 @@ packages: '@types/node': 18.15.3 dev: true + /@types/cacheable-request/6.0.3: + resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} + dependencies: + '@types/http-cache-semantics': 4.0.1 + '@types/keyv': 3.1.4 + '@types/node': 18.15.3 + '@types/responselike': 1.0.0 + dev: false + /@types/chai-as-promised/7.1.5: resolution: {integrity: sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==} dependencies: @@ -5424,6 +5647,12 @@ packages: '@types/node': 18.15.3 dev: true + /@types/is-ci/3.0.0: + resolution: {integrity: sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==} + dependencies: + ci-info: 3.8.0 + dev: true + /@types/is-stream/1.1.0: resolution: {integrity: sha512-jkZatu4QVbR60mpIzjINmtS1ZF4a/FqdTUTBeQDVOQ2PYyidtwFKr0B5G6ERukKwliq+7mIXvxyppwzG5EgRYg==} dependencies: @@ -5461,7 +5690,6 @@ packages: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: '@types/node': 18.15.3 - dev: true /@types/leaflet.markercluster/1.5.1: resolution: {integrity: sha512-gzJzP10qO6Zkts5QNVmSAEDLYicQHTEBLT9HZpFrJiSww9eDAs5OWHvIskldf41MvDv1gbMukuEBQEawHn+wtA==} @@ -5508,8 +5736,12 @@ packages: resolution: {integrity: sha512-9PuLtBboc/+JJ7FshmJWv769gDonTpItN0Ol5TMwclpSQNjVyB2SRxSKBcTtbSysSL5R7Oea06kTTFNciCoYwA==} dev: true - /@types/node/14.18.36: - resolution: {integrity: sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ==} + /@types/node/12.20.55: + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + dev: true + + /@types/node/14.18.38: + resolution: {integrity: sha512-zMRIidN2Huikv/+/U7gRPFYsXDR/7IGqFZzTLnCEj5+gkrQjsowfamaxEnyvArct5hxGA3bTxMXlYhH78V6Cew==} dev: true /@types/node/18.15.3: @@ -5550,7 +5782,6 @@ packages: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: '@types/node': 18.15.3 - dev: true /@types/retry/0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} @@ -5566,6 +5797,10 @@ packages: resolution: {integrity: sha512-6d8Q5fqS9DWOXEhMDiF6/2FjyHdmP/jSTAUyeQR7QwrFeNmYyzmvGxD5aLIHL445HjWgibs0eAig+KPnbaesXA==} dev: true + /@types/semver/6.2.3: + resolution: {integrity: sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A==} + dev: true + /@types/semver/7.3.13: resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} dev: true @@ -5673,7 +5908,7 @@ packages: dev: true optional: true - /@typescript-eslint/eslint-plugin/5.49.0_qashngm2gnebqglv6uilexvixe: + /@typescript-eslint/eslint-plugin/5.49.0_bhfhikta3fu7tua7ac2hrytgwe: resolution: {integrity: sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5684,36 +5919,36 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/parser': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 '@typescript-eslint/scope-manager': 5.49.0 - '@typescript-eslint/type-utils': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u - '@typescript-eslint/utils': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/type-utils': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 + '@typescript-eslint/utils': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 debug: 4.3.4 eslint: 8.33.0 ignore: 5.2.4 natural-compare-lite: 1.4.0 regexpp: 3.2.0 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.4.4 - typescript: 4.4.4 + tsutils: 3.21.0_typescript@4.8.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/experimental-utils/5.27.1_4lztcmfj3iyz2vssbslohlxm4u: + /@typescript-eslint/experimental-utils/5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-Vd8uewIixGP93sEnmTRIH6jHZYRQRkGPDPpapACMvitJKX8335VHNyqKTE+mZ+m3E2c5VznTZfSsSsS5IF7vUA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@typescript-eslint/utils': 5.27.1_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/utils': 5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4 eslint: 8.33.0 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/parser/5.49.0_4lztcmfj3iyz2vssbslohlxm4u: + /@typescript-eslint/parser/5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5725,10 +5960,10 @@ packages: dependencies: '@typescript-eslint/scope-manager': 5.49.0 '@typescript-eslint/types': 5.49.0 - '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.4.4 + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.8.4 debug: 4.3.4 eslint: 8.33.0 - typescript: 4.4.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true @@ -5749,7 +5984,7 @@ packages: '@typescript-eslint/visitor-keys': 5.49.0 dev: true - /@typescript-eslint/type-utils/5.49.0_4lztcmfj3iyz2vssbslohlxm4u: + /@typescript-eslint/type-utils/5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5759,12 +5994,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.4.4 - '@typescript-eslint/utils': 5.49.0_4lztcmfj3iyz2vssbslohlxm4u + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.8.4 + '@typescript-eslint/utils': 5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4 debug: 4.3.4 eslint: 8.33.0 - tsutils: 3.21.0_typescript@4.4.4 - typescript: 4.4.4 + tsutils: 3.21.0_typescript@4.8.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true @@ -5779,7 +6014,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.27.1_typescript@4.4.4: + /@typescript-eslint/typescript-estree/5.27.1_typescript@4.8.4: resolution: {integrity: sha512-DnZvvq3TAJ5ke+hk0LklvxwYsnXpRdqUY5gaVS0D4raKtbznPz71UJGnPTHEFo0GDxqLOLdMkkmVZjSpET1hFw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5794,13 +6029,13 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.4.4 - typescript: 4.4.4 + tsutils: 3.21.0_typescript@4.8.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree/5.49.0_typescript@4.4.4: + /@typescript-eslint/typescript-estree/5.49.0_typescript@4.8.4: resolution: {integrity: sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5815,13 +6050,13 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.4.4 - typescript: 4.4.4 + tsutils: 3.21.0_typescript@4.8.4 + typescript: 4.8.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils/5.27.1_4lztcmfj3iyz2vssbslohlxm4u: + /@typescript-eslint/utils/5.27.1_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-mZ9WEn1ZLDaVrhRaYgzbkXBkTPghPFsup8zDbbsYTxC5OmqrFE7skkKS/sraVsLP3TcT3Ki5CSyEFBRkLH/H/w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5830,7 +6065,7 @@ packages: '@types/json-schema': 7.0.11 '@typescript-eslint/scope-manager': 5.27.1 '@typescript-eslint/types': 5.27.1 - '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.4.4 + '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.8.4 eslint: 8.33.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0_eslint@8.33.0 @@ -5839,7 +6074,7 @@ packages: - typescript dev: true - /@typescript-eslint/utils/5.49.0_4lztcmfj3iyz2vssbslohlxm4u: + /@typescript-eslint/utils/5.49.0_o2s6jvgtr2hafiobaqfgu6k2l4: resolution: {integrity: sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -5849,7 +6084,7 @@ packages: '@types/semver': 7.3.13 '@typescript-eslint/scope-manager': 5.49.0 '@typescript-eslint/types': 5.49.0 - '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.4.4 + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.8.4 eslint: 8.33.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0_eslint@8.33.0 @@ -6277,6 +6512,10 @@ packages: engines: {node: '>=12'} dev: true + /ansi-sequence-parser/1.1.0: + resolution: {integrity: sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==} + dev: true + /ansi-styles/2.2.1: resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} engines: {node: '>=0.10.0'} @@ -6364,6 +6603,13 @@ packages: '@babel/runtime-corejs3': 7.21.0 dev: true + /array-buffer-byte-length/1.0.0: + resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + dependencies: + call-bind: 1.0.2 + is-array-buffer: 3.0.2 + dev: true + /array-find-index/1.0.2: resolution: {integrity: sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==} engines: {node: '>=0.10.0'} @@ -6405,6 +6651,16 @@ packages: engines: {node: '>=0.10.0'} dev: true + /array.prototype.flat/1.3.1: + resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + es-shim-unscopables: 1.0.0 + dev: true + /arrify/1.0.1: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} engines: {node: '>=0.10.0'} @@ -6507,6 +6763,11 @@ packages: postcss-value-parser: 4.2.0 dev: true + /available-typed-arrays/1.0.5: + resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + engines: {node: '>= 0.4'} + dev: true + /aws-sign2/0.7.0: resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} dev: true @@ -6711,6 +6972,13 @@ packages: leven: 3.1.0 dev: false + /better-path-resolve/1.0.0: + resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} + engines: {node: '>=4'} + dependencies: + is-windows: 1.0.2 + dev: true + /big-integer/1.6.51: resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} engines: {node: '>=0.6'} @@ -6839,6 +7107,12 @@ packages: dependencies: fill-range: 7.0.1 + /breakword/1.0.5: + resolution: {integrity: sha512-ex5W9DoOQ/LUEU3PMdLs9ua/CYZl1678NUkKOdUSi8Aw5F1idieaiRURCBFJCwVcrD1J8Iy3vfWSloaMwO2qFg==} + dependencies: + wcwidth: 1.0.1 + dev: true + /brfs/2.0.2: resolution: {integrity: sha512-IrFjVtwu4eTJZyu8w/V2gxU7iLTtcHih67sgEdzrhjLBMHp2uYefUBfdM4k2UvcuWMgV7PQDZHSLeNWnLFKWVQ==} hasBin: true @@ -7070,6 +7344,11 @@ packages: transitivePeerDependencies: - bluebird + /cacheable-lookup/5.0.4: + resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} + engines: {node: '>=10.6.0'} + dev: false + /cacheable-lookup/7.0.0: resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==} engines: {node: '>=14.16'} @@ -7101,6 +7380,19 @@ packages: responselike: 1.0.2 dev: true + /cacheable-request/7.0.2: + resolution: {integrity: sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==} + engines: {node: '>=8'} + dependencies: + clone-response: 1.0.3 + get-stream: 5.2.0 + http-cache-semantics: 4.1.1 + keyv: 4.5.2 + lowercase-keys: 2.0.0 + normalize-url: 6.1.0 + responselike: 2.0.1 + dev: false + /cachedir/2.3.0: resolution: {integrity: sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==} engines: {node: '>=6'} @@ -7457,7 +7749,6 @@ packages: resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} dependencies: mimic-response: 1.0.1 - dev: true /clone/1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} @@ -8003,6 +8294,14 @@ packages: pretty-bytes: 5.6.0 dev: true + /cross-spawn/5.1.0: + resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} + dependencies: + lru-cache: 4.1.5 + shebang-command: 1.2.0 + which: 1.3.1 + dev: true + /cross-spawn/7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -8141,6 +8440,28 @@ packages: hasBin: true dev: true + /csv-generate/3.4.3: + resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} + dev: true + + /csv-parse/4.16.3: + resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==} + dev: true + + /csv-stringify/5.6.5: + resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==} + dev: true + + /csv/5.5.3: + resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==} + engines: {node: '>= 0.1.90'} + dependencies: + csv-generate: 3.4.3 + csv-parse: 4.16.3 + csv-stringify: 5.6.5 + stream-transform: 2.1.3 + dev: true + /custom-event/1.0.1: resolution: {integrity: sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==} dev: true @@ -8153,7 +8474,7 @@ packages: dependencies: '@cypress/request': 2.88.11 '@cypress/xvfb': 1.2.4_supports-color@8.1.1 - '@types/node': 14.18.36 + '@types/node': 14.18.38 '@types/sinonjs__fake-timers': 8.1.1 '@types/sizzle': 2.3.3 arch: 2.2.0 @@ -8537,6 +8858,11 @@ packages: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + /detect-indent/6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + dev: true + /detect-libc/1.0.3: resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} engines: {node: '>=0.10'} @@ -8924,10 +9250,74 @@ packages: is-arrayish: 0.2.1 dev: true + /es-abstract/1.21.2: + resolution: {integrity: sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.0 + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + es-set-tostringtag: 2.0.1 + es-to-primitive: 1.2.1 + function.prototype.name: 1.1.5 + get-intrinsic: 1.2.0 + get-symbol-description: 1.0.0 + globalthis: 1.0.3 + gopd: 1.0.1 + has: 1.0.3 + has-property-descriptors: 1.0.0 + has-proto: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.5 + is-array-buffer: 3.0.2 + is-callable: 1.2.7 + is-negative-zero: 2.0.2 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.2 + is-string: 1.0.7 + is-typed-array: 1.1.10 + is-weakref: 1.0.2 + object-inspect: 1.12.3 + object-keys: 1.1.1 + object.assign: 4.1.4 + regexp.prototype.flags: 1.4.3 + safe-regex-test: 1.0.0 + string.prototype.trim: 1.2.7 + string.prototype.trimend: 1.0.6 + string.prototype.trimstart: 1.0.6 + typed-array-length: 1.0.4 + unbox-primitive: 1.0.2 + which-typed-array: 1.1.9 + dev: true + /es-module-lexer/0.9.3: resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} dev: true + /es-set-tostringtag/2.0.1: + resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.0 + has: 1.0.3 + has-tostringtag: 1.0.0 + dev: true + + /es-shim-unscopables/1.0.0: + resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + dependencies: + has: 1.0.3 + dev: true + + /es-to-primitive/1.2.1: + resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + engines: {node: '>= 0.4'} + dependencies: + is-callable: 1.2.7 + is-date-object: 1.0.5 + is-symbol: 1.0.4 + dev: true + /es5-ext/0.10.62: resolution: {integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==} engines: {node: '>=0.10'} @@ -9634,6 +10024,10 @@ packages: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} dev: true + /extendable-error/0.1.7: + resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} + dev: true + /external-editor/3.1.0: resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} engines: {node: '>=4'} @@ -9840,6 +10234,13 @@ packages: locate-path: 6.0.0 path-exists: 4.0.0 + /find-yarn-workspace-root2/1.2.16: + resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} + dependencies: + micromatch: 4.0.5 + pkg-dir: 4.2.0 + dev: true + /findit2/2.2.3: resolution: {integrity: sha512-lg/Moejf4qXovVutL0Lz4IsaPoNYMuxt4PA0nGqFxnJ1CTTGGlEO2wKgoDpwknhvZ8k4Q2F+eesgkLbG2Mxfog==} engines: {node: '>=0.8.22'} @@ -9883,6 +10284,12 @@ packages: unicode-trie: 2.0.0 dev: true + /for-each/0.3.3: + resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + dependencies: + is-callable: 1.2.7 + dev: true + /foreach/2.0.6: resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} dev: true @@ -10000,6 +10407,15 @@ packages: universalify: 2.0.0 dev: true + /fs-extra/7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + dependencies: + graceful-fs: 4.2.10 + jsonfile: 4.0.0 + universalify: 0.1.2 + dev: true + /fs-extra/8.1.0: resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} engines: {node: '>=6 <7 || >=8'} @@ -10060,6 +10476,16 @@ packages: /function-bind/1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + /function.prototype.name/1.1.5: + resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + functions-have-names: 1.2.3 + dev: true + /functions-have-names/1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: true @@ -10139,12 +10565,19 @@ packages: engines: {node: '>=8'} dependencies: pump: 3.0.0 - dev: true /get-stream/6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + /get-symbol-description/1.0.0: + resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + dev: true + /get-uri/3.0.2: resolution: {integrity: sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==} engines: {node: '>= 6'} @@ -10285,6 +10718,13 @@ packages: dependencies: type-fest: 0.20.2 + /globalthis/1.0.3: + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.2.0 + dev: true + /globby/11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} @@ -10320,6 +10760,29 @@ packages: pinkie-promise: 2.0.1 dev: true + /gopd/1.0.1: + resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + dependencies: + get-intrinsic: 1.2.0 + dev: true + + /got/11.8.6: + resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} + engines: {node: '>=10.19.0'} + dependencies: + '@sindresorhus/is': 4.6.0 + '@szmarczak/http-timer': 4.0.6 + '@types/cacheable-request': 6.0.3 + '@types/responselike': 1.0.0 + cacheable-lookup: 5.0.4 + cacheable-request: 7.0.2 + decompress-response: 6.0.0 + http2-wrapper: 1.0.3 + lowercase-keys: 2.0.0 + p-cancelable: 2.1.1 + responselike: 2.0.1 + dev: false + /got/12.6.0: resolution: {integrity: sha512-WTcaQ963xV97MN3x0/CbAriXFZcXCfgxVp91I+Ze6pawQOa7SgzwSx2zIJJsX+kTajMnVs0xcFD1TxZKFqhdnQ==} engines: {node: '>=14.16'} @@ -10415,6 +10878,10 @@ packages: ansi-regex: 2.1.1 dev: true + /has-bigints/1.0.2: + 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'} @@ -10429,6 +10896,11 @@ packages: get-intrinsic: 1.2.0 dev: true + /has-proto/1.0.1: + resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + engines: {node: '>= 0.4'} + dev: true + /has-symbols/1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} @@ -10677,6 +11149,14 @@ packages: resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==} dev: true + /http2-wrapper/1.0.3: + resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} + engines: {node: '>=10.19.0'} + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + dev: false + /http2-wrapper/2.2.0: resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} engines: {node: '>=10.19.0'} @@ -10718,6 +11198,10 @@ packages: transitivePeerDependencies: - supports-color + /human-id/1.0.2: + resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} + dev: true + /human-signals/1.1.1: resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} engines: {node: '>=8.12.0'} @@ -10927,6 +11411,15 @@ packages: hasBin: true dev: false + /internal-slot/1.0.5: + resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.0 + has: 1.0.3 + side-channel: 1.0.4 + dev: true + /interpret/1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} engines: {node: '>= 0.10'} @@ -10999,6 +11492,14 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-array-buffer/3.0.2: + resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + is-typed-array: 1.1.10 + dev: true + /is-arrayish/0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: true @@ -11007,6 +11508,12 @@ packages: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} dev: true + /is-bigint/1.0.4: + resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + dependencies: + has-bigints: 1.0.2 + dev: true + /is-binary-path/2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} @@ -11014,6 +11521,14 @@ packages: binary-extensions: 2.2.0 dev: true + /is-boolean-object/1.1.2: + resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + has-tostringtag: 1.0.0 + dev: true + /is-builtin-module/3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} @@ -11021,6 +11536,11 @@ packages: builtin-modules: 3.3.0 dev: true + /is-callable/1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + dev: true + /is-ci/2.0.0: resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} hasBin: true @@ -11103,11 +11623,23 @@ packages: /is-lambda/1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + /is-negative-zero/2.0.2: + resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + engines: {node: '>= 0.4'} + dev: true + /is-npm/5.0.0: resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} engines: {node: '>=10'} dev: true + /is-number-object/1.0.7: + resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + /is-number/7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -11182,6 +11714,12 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-shared-array-buffer/1.0.2: + resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + dependencies: + call-bind: 1.0.2 + dev: true + /is-stream/1.1.0: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} engines: {node: '>=0.10.0'} @@ -11192,6 +11730,27 @@ packages: engines: {node: '>=8'} dev: true + /is-string/1.0.7: + resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + + /is-subdir/1.2.0: + resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} + engines: {node: '>=4'} + dependencies: + better-path-resolve: 1.0.0 + dev: true + + /is-symbol/1.0.4: + resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + engines: {node: '>= 0.4'} + dependencies: + has-symbols: 1.0.3 + dev: true + /is-text-path/1.0.1: resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==} engines: {node: '>=0.10.0'} @@ -11199,6 +11758,17 @@ packages: text-extensions: 1.9.0 dev: true + /is-typed-array/1.1.10: + resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + gopd: 1.0.1 + has-tostringtag: 1.0.0 + dev: true + /is-typedarray/1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: true @@ -11208,6 +11778,12 @@ packages: engines: {node: '>=10'} dev: true + /is-weakref/1.0.2: + resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + dependencies: + call-bind: 1.0.2 + dev: true + /is-what/3.14.1: resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==} dev: true @@ -11880,6 +12456,16 @@ packages: strip-bom: 3.0.0 dev: true + /load-yaml-file/0.2.0: + resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} + engines: {node: '>=6'} + dependencies: + graceful-fs: 4.2.10 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + dev: true + /loader-runner/4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} @@ -12011,6 +12597,10 @@ packages: resolution: {integrity: sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw==} dev: true + /lodash.startcase/4.4.0: + resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} + dev: true + /lodash/4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -12081,13 +12671,19 @@ packages: /lowercase-keys/2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} engines: {node: '>=8'} - dev: true /lowercase-keys/3.0.0: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false + /lru-cache/4.1.5: + resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} + dependencies: + pseudomap: 1.0.2 + yallist: 2.1.2 + dev: true + /lru-cache/5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -12250,6 +12846,23 @@ packages: fs-monkey: 1.0.3 dev: true + /meow/6.1.1: + resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} + engines: {node: '>=8'} + dependencies: + '@types/minimist': 1.2.2 + camelcase-keys: 6.2.2 + decamelize-keys: 1.1.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 2.5.0 + read-pkg-up: 7.0.1 + redent: 3.0.0 + trim-newlines: 3.0.1 + type-fest: 0.13.1 + yargs-parser: 18.1.3 + dev: true + /meow/8.1.2: resolution: {integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==} engines: {node: '>=10'} @@ -12337,7 +12950,6 @@ packages: /mimic-response/1.0.1: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} - dev: true /mimic-response/2.1.0: resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==} @@ -12499,6 +13111,11 @@ packages: minipass: 3.3.6 yallist: 4.0.0 + /mixme/0.5.5: + resolution: {integrity: sha512-/6IupbRx32s7jjEwHcycXikJwFD5UujbVNuJFkeKLYje+92OvtuPniF6JhnFm5JCTDUhS+kYK3W/4BWYQYXz7w==} + engines: {node: '>= 8.0.0'} + dev: true + /mkdirp-classic/0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} @@ -13029,6 +13646,11 @@ packages: engines: {node: '>=8'} dev: true + /normalize-url/6.1.0: + resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} + engines: {node: '>=10'} + dev: false + /normalize-url/8.0.0: resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} engines: {node: '>=14.16'} @@ -13292,6 +13914,16 @@ packages: engines: {node: '>= 0.4'} dev: true + /object.assign/4.1.4: + resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + has-symbols: 1.0.3 + object-keys: 1.1.1 + dev: true + /obuf/1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} dev: true @@ -13457,16 +14089,32 @@ packages: resolution: {integrity: sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==} dev: true + /outdent/0.5.0: + resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + dev: true + /p-cancelable/1.1.0: resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} engines: {node: '>=6'} dev: true + /p-cancelable/2.1.1: + resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} + engines: {node: '>=8'} + dev: false + /p-cancelable/3.0.0: resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} engines: {node: '>=12.20'} dev: false + /p-filter/2.1.0: + resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} + engines: {node: '>=8'} + dependencies: + p-map: 2.1.0 + dev: true + /p-finally/1.0.0: resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} engines: {node: '>=4'} @@ -13517,6 +14165,11 @@ packages: dependencies: p-limit: 3.1.0 + /p-map/2.1.0: + resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} + engines: {node: '>=6'} + dev: true + /p-map/3.0.0: resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==} engines: {node: '>=8'} @@ -14335,6 +14988,16 @@ packages: tunnel-agent: 0.6.0 dev: true + /preferred-pm/3.0.3: + resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} + engines: {node: '>=10'} + dependencies: + find-up: 5.0.0 + find-yarn-workspace-root2: 1.2.16 + path-exists: 4.0.0 + which-pm: 2.0.0 + dev: true + /prelude-ls/1.1.2: resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==} engines: {node: '>= 0.8.0'} @@ -14517,6 +15180,10 @@ packages: dev: true optional: true + /pseudomap/1.0.2: + resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} + dev: true + /psl/1.9.0: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} dev: true @@ -14797,6 +15464,16 @@ packages: type-fest: 0.6.0 dev: true + /read-yaml-file/1.1.0: + resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} + engines: {node: '>=6'} + dependencies: + graceful-fs: 4.2.10 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + dev: true + /read-yaml-file/2.1.0: resolution: {integrity: sha512-UkRNRIwnhG+y7hpqnycCL/xbTk7+ia9VuVTC0S+zVbwd65DI9eUpRMfsWIGrCWxTU/mi+JW8cHQCrv+zfCbEPQ==} engines: {node: '>=10.13'} @@ -14969,7 +15646,7 @@ packages: /regenerator-transform/0.15.1: resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} dependencies: - '@babel/runtime': 7.16.7 + '@babel/runtime': 7.21.0 dev: true /regex-parser/2.2.11: @@ -15135,6 +15812,12 @@ packages: lowercase-keys: 1.0.1 dev: true + /responselike/2.0.1: + resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} + dependencies: + lowercase-keys: 2.0.0 + dev: false + /responselike/3.0.0: resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} engines: {node: '>=14.16'} @@ -15246,6 +15929,14 @@ packages: /safe-buffer/5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + /safe-regex-test/1.0.0: + resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + is-regex: 1.1.4 + dev: true + /safe-regex/2.1.1: resolution: {integrity: sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==} dependencies: @@ -15530,12 +16221,24 @@ packages: tunnel-agent: 0.6.0 dev: true + /shebang-command/1.2.0: + resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} + engines: {node: '>=0.10.0'} + dependencies: + shebang-regex: 1.0.0 + dev: true + /shebang-command/2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 + /shebang-regex/1.0.0: + resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} + engines: {node: '>=0.10.0'} + dev: true + /shebang-regex/3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} @@ -15550,12 +16253,13 @@ packages: rechoir: 0.6.2 dev: false - /shiki/0.10.1: - resolution: {integrity: sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==} + /shiki/0.14.1: + resolution: {integrity: sha512-+Jz4nBkCBe0mEDqo1eKRcCdjRtrCjozmcbTUjbPTX7OOJfEbTZzlUWlZtGe3Gb5oV1/jnojhG//YZc3rs9zSEw==} dependencies: + ansi-sequence-parser: 1.1.0 jsonc-parser: 3.2.0 vscode-oniguruma: 1.7.0 - vscode-textmate: 5.2.0 + vscode-textmate: 8.0.0 dev: true /should-equal/2.0.0: @@ -15696,6 +16400,19 @@ packages: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + /smartwrap/2.0.2: + resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} + engines: {node: '>=6'} + hasBin: true + dependencies: + array.prototype.flat: 1.3.1 + breakword: 1.0.5 + grapheme-splitter: 1.0.4 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + yargs: 15.4.1 + dev: true + /socket.io-adapter/2.5.2: resolution: {integrity: sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==} dependencies: @@ -15861,6 +16578,13 @@ packages: which: 2.0.2 dev: true + /spawndamnit/2.0.0: + resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} + dependencies: + cross-spawn: 5.1.0 + signal-exit: 3.0.7 + dev: true + /spdx-compare/1.0.0: resolution: {integrity: sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==} dependencies: @@ -16078,6 +16802,12 @@ packages: xtend: 4.0.2 dev: true + /stream-transform/2.1.3: + resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} + dependencies: + mixme: 0.5.5 + dev: true + /streamroller/3.1.5: resolution: {integrity: sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==} engines: {node: '>=8.0'} @@ -16105,6 +16835,31 @@ packages: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + /string.prototype.trim/1.2.7: + resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + + /string.prototype.trimend/1.0.6: + resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + + /string.prototype.trimstart/1.0.6: + resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + /string_decoder/0.10.31: resolution: {integrity: sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==} dev: true @@ -16502,6 +17257,11 @@ packages: uuid: 3.4.0 dev: true + /term-size/2.2.1: + resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} + engines: {node: '>=8'} + dev: true + /terser-webpack-plugin/5.3.7_webpack@5.70.0: resolution: {integrity: sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==} engines: {node: '>= 10.13.0'} @@ -16734,7 +17494,7 @@ packages: code-block-writer: 11.0.3 dev: true - /ts-node/10.9.1_okmvbkxma23ofrfmlmxxsitqhe: + /ts-node/10.9.1_v4vfm2zcz4t2yckcvpdr2ktuie: resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -16753,7 +17513,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 - '@types/node': 18.15.3 + '@types/node': 14.18.38 acorn: 8.8.2 acorn-walk: 8.2.0 arg: 4.1.3 @@ -16765,7 +17525,7 @@ packages: yn: 3.1.1 dev: true - /ts-node/10.9.1_pqnndxpefpwnql3f7isisgilc4: + /ts-node/10.9.1_x7wmykdye3n75c4332b67wrzwm: resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -16791,7 +17551,7 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.4.4 + typescript: 4.8.4 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 @@ -16873,20 +17633,34 @@ packages: typescript: 3.8.3 dev: true - /tsutils/3.21.0_typescript@4.4.4: + /tsutils/3.21.0_typescript@4.8.4: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.4.4 + typescript: 4.8.4 dev: true /tty-browserify/0.0.0: resolution: {integrity: sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==} dev: true + /tty-table/4.1.6: + resolution: {integrity: sha512-kRj5CBzOrakV4VRRY5kUWbNYvo/FpOsz65DzI5op9P+cHov3+IqPbo1JE1ZnQGkHdZgNFDsrEjrfqqy/Ply9fw==} + engines: {node: '>=8.0.0'} + hasBin: true + dependencies: + chalk: 4.1.2 + csv: 5.5.3 + kleur: 4.1.5 + smartwrap: 2.0.2 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + yargs: 17.7.1 + dev: true + /tunnel-agent/0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: @@ -16974,6 +17748,11 @@ packages: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} engines: {node: '>=4'} + /type-fest/0.13.1: + resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} + engines: {node: '>=10'} + dev: true + /type-fest/0.18.1: resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} engines: {node: '>=10'} @@ -17013,6 +17792,14 @@ packages: resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} dev: true + /typed-array-length/1.0.4: + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + is-typed-array: 1.1.10 + dev: true + /typed-assert/1.0.9: resolution: {integrity: sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==} dev: true @@ -17054,19 +17841,18 @@ packages: typescript: 3.8.3 dev: false - /typedoc/0.22.18_typescript@4.4.4: - resolution: {integrity: sha512-NK9RlLhRUGMvc6Rw5USEYgT4DVAUFk7IF7Q6MYfpJ88KnTZP7EneEa4RcP+tX1auAcz7QT1Iy0bUSZBYYHdoyA==} - engines: {node: '>= 12.10.0'} + /typedoc/0.23.26_typescript@4.8.4: + resolution: {integrity: sha512-5m4KwR5tOLnk0OtMaRn9IdbeRM32uPemN9kur7YK9wFqx8U0CYrvO9aVq6ysdZSV1c824BTm+BuQl2Ze/k1HtA==} + engines: {node: '>= 14.14'} hasBin: true peerDependencies: - typescript: 4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x || 4.7.x + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x dependencies: - glob: 8.1.0 lunr: 2.3.9 marked: 4.2.12 - minimatch: 5.1.6 - shiki: 0.10.1 - typescript: 4.4.4 + minimatch: 7.4.2 + shiki: 0.14.1 + typescript: 4.8.4 dev: true /typescript/3.8.3: @@ -17074,8 +17860,8 @@ packages: engines: {node: '>=4.2.0'} hasBin: true - /typescript/4.4.4: - resolution: {integrity: sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==} + /typescript/4.8.4: + resolution: {integrity: sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==} engines: {node: '>=4.2.0'} hasBin: true @@ -17096,6 +17882,15 @@ packages: requiresBuild: true optional: true + /unbox-primitive/1.0.2: + resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + dependencies: + call-bind: 1.0.2 + has-bigints: 1.0.2 + has-symbols: 1.0.3 + which-boxed-primitive: 1.0.2 + dev: true + /unicode-canonical-property-names-ecmascript/2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -17341,8 +18136,8 @@ packages: resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} dev: true - /vscode-textmate/5.2.0: - resolution: {integrity: sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==} + /vscode-textmate/8.0.0: + resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} dev: true /wait-on/6.0.1: @@ -17624,10 +18419,40 @@ packages: webidl-conversions: 3.0.1 dev: true + /which-boxed-primitive/1.0.2: + resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + dependencies: + is-bigint: 1.0.4 + is-boolean-object: 1.1.2 + is-number-object: 1.0.7 + is-string: 1.0.7 + is-symbol: 1.0.4 + dev: true + /which-module/2.0.0: resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} dev: true + /which-pm/2.0.0: + resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} + engines: {node: '>=8.15'} + dependencies: + load-yaml-file: 0.2.0 + path-exists: 4.0.0 + dev: true + + /which-typed-array/1.1.9: + resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + gopd: 1.0.1 + has-tostringtag: 1.0.0 + is-typed-array: 1.1.10 + dev: true + /which/1.3.1: resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} hasBin: true @@ -17792,6 +18617,10 @@ packages: engines: {node: '>=10'} dev: true + /yallist/2.1.2: + resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} + dev: true + /yallist/3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} dev: true