diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..3f4d395 --- /dev/null +++ b/.babelrc @@ -0,0 +1,19 @@ +{ + "presets": [ + [ + "@babel/preset-env", + { + "targets": { + "node": "current" + }, + "modules": "commonjs" + } + ], + "@babel/preset-typescript" + ], + "plugins": [ + [ + "babel-plugin-add-import-extension", { "extension": "js" } + ] + ] +} diff --git a/.change-extension b/.change-extension new file mode 100644 index 0000000..a5c4a05 --- /dev/null +++ b/.change-extension @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +# The first parameter is the desired extension +extension=$1 +shift + +# The other parameters are the files to be renamed with the extension +for file in "$@"; do + mv "$file" "${file%%.*}.$extension" +done diff --git a/.eslintignore b/.eslintignore index a4fd9ee..cd85ddf 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,5 +1,7 @@ node_modules coverage +cjs +esm **/*.js **/*.d.ts diff --git a/.gitignore b/.gitignore index 36f23f9..7b18ab7 100644 --- a/.gitignore +++ b/.gitignore @@ -12,4 +12,7 @@ index.d.ts coverage .eslintcache components/*.json -.yarn/ \ No newline at end of file +.yarn/ +dist/ +esm/ +cjs/ diff --git a/bin/compile-config.ts b/bin/compile-config.ts index 85d4e7f..63f0e63 100644 --- a/bin/compile-config.ts +++ b/bin/compile-config.ts @@ -5,7 +5,7 @@ import * as Path from 'path'; import type { ParsedArgs } from 'minimist'; import minimist = require('minimist'); -import { compileConfig } from '..'; +import { compileConfig } from '../index.js'; const args: ParsedArgs = minimist(process.argv.slice(2)); if (args._.length !== 1 || args.h || args.help) { @@ -19,6 +19,7 @@ Options: -p The main module path, if not provided, this defaults to the working directory -e The instance by config URI that will be exported, by default this is the provided instance URI. -f If the exported instance should be exposed as a function, which accepts an optional hash of variables. + -m A flag to endicate that an ESM [m]odule should be generated instead of CommonJS. --help print this help message `); process.exit(1); @@ -32,6 +33,7 @@ if (args.e) { exportVariableName = args.e; } const asFunction = !!args.f; +const asEsm = !!args.m; compileConfig( mainModulePath, @@ -39,6 +41,7 @@ compileConfig( configResourceUri, exportVariableName, asFunction, + asEsm, ) .then((output: string) => process.stdout.write(`${output}\n`)) .catch(error => { diff --git a/index.ts b/index.ts index ff3279a..fc03770 100644 --- a/index.ts +++ b/index.ts @@ -1,40 +1,40 @@ -export * from './lib/construction/argument/ArgumentConstructorHandlerArray'; -export * from './lib/construction/argument/ArgumentConstructorHandlerHash'; -export * from './lib/construction/argument/ArgumentConstructorHandlerList'; -export * from './lib/construction/argument/ArgumentConstructorHandlerPrimitive'; -export * from './lib/construction/argument/ArgumentConstructorHandlerReference'; -export * from './lib/construction/argument/ArgumentConstructorHandlerUndefined'; -export * from './lib/construction/argument/ArgumentConstructorHandlerValue'; -export * from './lib/construction/argument/IArgumentConstructorHandler'; -export * from './lib/construction/argument/IArgumentsConstructor'; -export * from './lib/construction/strategy/ConstructionStrategyCommonJs'; -export * from './lib/construction/strategy/ConstructionStrategyCommonJsString'; -export * from './lib/construction/strategy/IConstructionStrategy'; -export * from './lib/construction/ConfigConstructor'; -export * from './lib/construction/IConstructionSettings'; -export * from './lib/construction/IConfigConstructorPool'; -export * from './lib/construction/ConfigConstructorPool'; -export * from './lib/loading/ComponentRegistry'; -export * from './lib/loading/ComponentRegistryFinalizer'; -export * from './lib/loading/ComponentsManagerBuilder'; -export * from './lib/loading/ConfigRegistry'; -export * from './lib/loading/ModuleStateBuilder'; -export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries'; -export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements'; -export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields'; -export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue'; -export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList'; -export * from './lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler'; -export * from './lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper'; -export * from './lib/preprocess/ConfigPreprocessorComponent'; -export * from './lib/preprocess/ConfigPreprocessorComponentMapped'; -export * from './lib/preprocess/IConfigPreprocessor'; -export * from './lib/preprocess/ParameterHandler'; -export * from './lib/rdf/Iris'; -export * from './lib/rdf/PrefetchedDocumentLoader'; -export * from './lib/rdf/RdfParser'; -export * from './lib/rdf/RdfStreamIncluder'; -export * from './lib/util/CompileUtil'; -export * from './lib/util/ErrorResourcesContext'; -export * from './lib/util/LogLevel'; -export * from './lib/ComponentsManager'; +export * from './lib/construction/argument/ArgumentConstructorHandlerArray.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerHash.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerList.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerPrimitive.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerReference.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerUndefined.js'; +export * from './lib/construction/argument/ArgumentConstructorHandlerValue.js'; +export * from './lib/construction/argument/IArgumentConstructorHandler.js'; +export * from './lib/construction/argument/IArgumentsConstructor.js'; +export * from './lib/construction/strategy/ConstructionStrategyCommonJs.js'; +export * from './lib/construction/strategy/ConstructionStrategyCommonJsString.js'; +export * from './lib/construction/strategy/IConstructionStrategy.js'; +export * from './lib/construction/ConfigConstructor.js'; +export * from './lib/construction/IConstructionSettings.js'; +export * from './lib/construction/IConfigConstructorPool.js'; +export * from './lib/construction/ConfigConstructorPool.js'; +export * from './lib/loading/ComponentRegistry.js'; +export * from './lib/loading/ComponentRegistryFinalizer.js'; +export * from './lib/loading/ComponentsManagerBuilder.js'; +export * from './lib/loading/ConfigRegistry.js'; +export * from './lib/loading/ModuleStateBuilder.js'; +export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.js'; +export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.js'; +export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.js'; +export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.js'; +export * from './lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.js'; +export * from './lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.js'; +export * from './lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper.js'; +export * from './lib/preprocess/ConfigPreprocessorComponent.js'; +export * from './lib/preprocess/ConfigPreprocessorComponentMapped.js'; +export * from './lib/preprocess/IConfigPreprocessor.js'; +export * from './lib/preprocess/ParameterHandler.js'; +export * from './lib/rdf/Iris.js'; +export * from './lib/rdf/PrefetchedDocumentLoader.js'; +export * from './lib/rdf/RdfParser.js'; +export * from './lib/rdf/RdfStreamIncluder.js'; +export * from './lib/util/CompileUtil.js'; +export * from './lib/util/ErrorResourcesContext.js'; +export * from './lib/util/LogLevel.js'; +export * from './lib/ComponentsManager.js'; diff --git a/lib/ComponentsManager.ts b/lib/ComponentsManager.ts index 83b94f5..8e8a6c6 100644 --- a/lib/ComponentsManager.ts +++ b/lib/ComponentsManager.ts @@ -2,13 +2,13 @@ import * as fs from 'fs'; import type { Resource, RdfObjectLoader } from 'rdf-object'; import { stringToTerm } from 'rdf-string'; import type { Logger } from 'winston'; -import type { IConfigConstructorPool } from './construction/IConfigConstructorPool'; -import type { IConstructionSettings } from './construction/IConstructionSettings'; -import type { IComponentsManagerBuilderOptions } from './loading/ComponentsManagerBuilder'; -import { ComponentsManagerBuilder } from './loading/ComponentsManagerBuilder'; -import type { ConfigRegistry } from './loading/ConfigRegistry'; -import type { IModuleState } from './loading/ModuleStateBuilder'; -import { ErrorResourcesContext } from './util/ErrorResourcesContext'; +import type { IConfigConstructorPool } from './construction/IConfigConstructorPool.js'; +import type { IConstructionSettings } from './construction/IConstructionSettings.js'; +import type { IComponentsManagerBuilderOptions } from './loading/ComponentsManagerBuilder.js'; +import { ComponentsManagerBuilder } from './loading/ComponentsManagerBuilder.js'; +import type { ConfigRegistry } from './loading/ConfigRegistry.js'; +import type { IModuleState } from './loading/ModuleStateBuilder.js'; +import { ErrorResourcesContext } from './util/ErrorResourcesContext.js'; /** * A components manager can instantiate components. @@ -38,7 +38,7 @@ export class ComponentsManager { * @see IComponentsManagerBuilderOptions * @param options Settings of the new manager. */ - public static build(options: IComponentsManagerBuilderOptions): Promise> { + public static build(options: IComponentsManagerBuilderOptions>): Promise> { return new ComponentsManagerBuilder(options).build(); } diff --git a/lib/construction/ConfigConstructor.ts b/lib/construction/ConfigConstructor.ts index 3703f4a..02e1a99 100644 --- a/lib/construction/ConfigConstructor.ts +++ b/lib/construction/ConfigConstructor.ts @@ -1,18 +1,18 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; -import type { IModuleState } from '../loading/ModuleStateBuilder'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import { ArgumentConstructorHandlerArray } from './argument/ArgumentConstructorHandlerArray'; -import { ArgumentConstructorHandlerHash } from './argument/ArgumentConstructorHandlerHash'; -import { ArgumentConstructorHandlerList } from './argument/ArgumentConstructorHandlerList'; -import { ArgumentConstructorHandlerPrimitive } from './argument/ArgumentConstructorHandlerPrimitive'; -import { ArgumentConstructorHandlerReference } from './argument/ArgumentConstructorHandlerReference'; -import { ArgumentConstructorHandlerUndefined } from './argument/ArgumentConstructorHandlerUndefined'; -import { ArgumentConstructorHandlerValue } from './argument/ArgumentConstructorHandlerValue'; -import type { IArgumentConstructorHandler } from './argument/IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './argument/IArgumentsConstructor'; -import type { IConfigConstructorPool } from './IConfigConstructorPool'; -import type { IConstructionSettings } from './IConstructionSettings'; -import type { IConstructionStrategy } from './strategy/IConstructionStrategy'; +import type { IModuleState } from '../loading/ModuleStateBuilder.js'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import { ArgumentConstructorHandlerArray } from './argument/ArgumentConstructorHandlerArray.js'; +import { ArgumentConstructorHandlerHash } from './argument/ArgumentConstructorHandlerHash.js'; +import { ArgumentConstructorHandlerList } from './argument/ArgumentConstructorHandlerList.js'; +import { ArgumentConstructorHandlerPrimitive } from './argument/ArgumentConstructorHandlerPrimitive.js'; +import { ArgumentConstructorHandlerReference } from './argument/ArgumentConstructorHandlerReference.js'; +import { ArgumentConstructorHandlerUndefined } from './argument/ArgumentConstructorHandlerUndefined.js'; +import { ArgumentConstructorHandlerValue } from './argument/ArgumentConstructorHandlerValue.js'; +import type { IArgumentConstructorHandler } from './argument/IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './argument/IArgumentsConstructor.js'; +import type { IConfigConstructorPool } from './IConfigConstructorPool.js'; +import type { IConstructionSettings } from './IConstructionSettings.js'; +import type { IConstructionStrategy } from './strategy/IConstructionStrategy.js'; /** * Creates instances of raw configs using the configured creation strategy. @@ -28,7 +28,7 @@ import type { IConstructionStrategy } from './strategy/IConstructionStrategy'; * If you want to make sure that instances are reused, * be sure to call {@link ConfigConstructorPool} instead. */ -export class ConfigConstructor implements IArgumentsConstructor { +export class ConfigConstructor implements IArgumentsConstructor { private static readonly ARGS_HANDLERS: IArgumentConstructorHandler[] = [ new ArgumentConstructorHandlerUndefined(), new ArgumentConstructorHandlerHash(), @@ -41,10 +41,10 @@ export class ConfigConstructor implements IArgumentsConstructor; - public readonly constructionStrategy: IConstructionStrategy; + public readonly constructionStrategy: IConstructionStrategy; private readonly moduleState: IModuleState; - public constructor(options: IConfigConstructorOptions) { + public constructor(options: IConfigConstructorOptions) { this.objectLoader = options.objectLoader; this.configConstructorPool = options.configConstructorPool; this.constructionStrategy = options.constructionStrategy; @@ -110,7 +110,7 @@ export class ConfigConstructor implements IArgumentsConstructor { + ): Promise { const args: Instance[] = await this.createArguments(config, settings); return this.constructionStrategy.createInstance({ settings, @@ -128,7 +128,7 @@ export class ConfigConstructor implements IArgumentsConstructor { +export interface IConfigConstructorOptions { /** * The RDF object loader. */ @@ -140,7 +140,7 @@ export interface IConfigConstructorOptions { /** * The strategy for construction. */ - constructionStrategy: IConstructionStrategy; + constructionStrategy: IConstructionStrategy; /** * The module state. */ diff --git a/lib/construction/ConfigConstructorPool.ts b/lib/construction/ConfigConstructorPool.ts index 81be9b0..b6faffa 100644 --- a/lib/construction/ConfigConstructorPool.ts +++ b/lib/construction/ConfigConstructorPool.ts @@ -1,12 +1,12 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; import { termToString } from 'rdf-string'; -import type { IModuleState } from '../loading/ModuleStateBuilder'; -import type { IConfigPreprocessor } from '../preprocess/IConfigPreprocessor'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import { ConfigConstructor } from './ConfigConstructor'; -import type { IConfigConstructorPool } from './IConfigConstructorPool'; -import type { IConstructionSettings } from './IConstructionSettings'; -import type { IConstructionStrategy } from './strategy/IConstructionStrategy'; +import type { IModuleState } from '../loading/ModuleStateBuilder.js'; +import type { IConfigPreprocessor } from '../preprocess/IConfigPreprocessor.js'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import { ConfigConstructor } from './ConfigConstructor.js'; +import type { IConfigConstructorPool } from './IConfigConstructorPool.js'; +import type { IConstructionSettings } from './IConstructionSettings.js'; +import type { IConstructionStrategy } from './strategy/IConstructionStrategy.js'; /** * Manages and creates instances of components based on a given config. @@ -16,16 +16,16 @@ import type { IConstructionStrategy } from './strategy/IConstructionStrategy'; * This will make sure that configs with the same id will only be instantiated once, * and multiple references to configs will always reuse the same instance. */ -export class ConfigConstructorPool implements IConfigConstructorPool { +export class ConfigConstructorPool implements IConfigConstructorPool { private readonly configPreprocessors: IConfigPreprocessor[]; - private readonly configConstructor: ConfigConstructor; - private readonly constructionStrategy: IConstructionStrategy; + private readonly configConstructor: ConfigConstructor; + private readonly constructionStrategy: IConstructionStrategy; private instances: Record> = {}; - public constructor(options: IInstancePoolOptions) { + public constructor(options: IInstancePoolOptions) { this.configPreprocessors = options.configPreprocessors; - this.configConstructor = new ConfigConstructor({ + this.configConstructor = new ConfigConstructor({ objectLoader: options.objectLoader, configConstructorPool: this, constructionStrategy: options.constructionStrategy, @@ -152,7 +152,7 @@ export class ConfigConstructorPool implements IConfigConstructorPool { +export interface IInstancePoolOptions { /** * The RDF object loader. */ @@ -164,7 +164,7 @@ export interface IInstancePoolOptions { /** * The strategy for construction. */ - constructionStrategy: IConstructionStrategy; + constructionStrategy: IConstructionStrategy; /** * The module state. */ diff --git a/lib/construction/IConfigConstructorPool.ts b/lib/construction/IConfigConstructorPool.ts index fd57ba6..8b1c61f 100644 --- a/lib/construction/IConfigConstructorPool.ts +++ b/lib/construction/IConfigConstructorPool.ts @@ -1,5 +1,5 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from './IConstructionSettings'; +import type { IConstructionSettings } from './IConstructionSettings.js'; /** * Manages and creates instances of components. diff --git a/lib/construction/IConstructionSettings.ts b/lib/construction/IConstructionSettings.ts index 58bc68f..4b65779 100644 --- a/lib/construction/IConstructionSettings.ts +++ b/lib/construction/IConstructionSettings.ts @@ -14,4 +14,8 @@ export interface IConstructionSettings { * Mapping of variable id's to values. */ variables?: Record; + /** + * Whether to use the ESM module format. + */ + esm?: boolean; } diff --git a/lib/construction/argument/ArgumentConstructorHandlerArray.ts b/lib/construction/argument/ArgumentConstructorHandlerArray.ts index b8397ee..4d32875 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerArray.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerArray.ts @@ -1,25 +1,25 @@ import type { Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles arguments with elements as array. */ export class ArgumentConstructorHandlerArray implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.property.elements); } - public async handle( + public async handle( argument: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { // Recursively handle all sub-args in the array const elements = await Promise.all(argument.properties.elements.map(async(entry: Resource) => { diff --git a/lib/construction/argument/ArgumentConstructorHandlerHash.ts b/lib/construction/argument/ArgumentConstructorHandlerHash.ts index 084ffa9..71a0ad4 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerHash.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerHash.ts @@ -1,25 +1,25 @@ import type { Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles arguments with fields as hashes. */ export class ArgumentConstructorHandlerHash implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.property.fields); } - public async handle( + public async handle( argument: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { const fields = argument.property.fields.list || []; diff --git a/lib/construction/argument/ArgumentConstructorHandlerList.ts b/lib/construction/argument/ArgumentConstructorHandlerList.ts index 6b6d421..adb3aae 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerList.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerList.ts @@ -1,24 +1,24 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles arguments with RDF list values. */ export class ArgumentConstructorHandlerList implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.list); } - public async handle( + public async handle( argument: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { // Recursively handle all sub-args in the list const elements = await Promise.all(argument.list! diff --git a/lib/construction/argument/ArgumentConstructorHandlerPrimitive.ts b/lib/construction/argument/ArgumentConstructorHandlerPrimitive.ts index 9cece09..c49ec8e 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerPrimitive.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerPrimitive.ts @@ -1,24 +1,24 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles primitive argument values. */ export class ArgumentConstructorHandlerPrimitive implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.type === 'Literal'); } - public async handle( + public async handle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { // ValueRaw can be set in Util.captureType // TODO: improve this, so that the hacked valueRaw is not needed diff --git a/lib/construction/argument/ArgumentConstructorHandlerReference.ts b/lib/construction/argument/ArgumentConstructorHandlerReference.ts index 212586c..7e30e67 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerReference.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerReference.ts @@ -1,24 +1,24 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles IRI and blank node arguments as reference to another argument or instance. */ export class ArgumentConstructorHandlerReference implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.type === 'NamedNode' || value.type === 'BlankNode'); } - public async handle( + public async handle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { // Don't instantiate if we ask for shallow construction if (settings.shallow) { diff --git a/lib/construction/argument/ArgumentConstructorHandlerUndefined.ts b/lib/construction/argument/ArgumentConstructorHandlerUndefined.ts index 58550be..864fba1 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerUndefined.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerUndefined.ts @@ -1,24 +1,24 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles undefined values. */ export class ArgumentConstructorHandlerUndefined implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.property.undefined); } - public async handle( + public async handle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { return argsCreator.constructionStrategy.createUndefined(); } diff --git a/lib/construction/argument/ArgumentConstructorHandlerValue.ts b/lib/construction/argument/ArgumentConstructorHandlerValue.ts index a29967f..43edfe8 100644 --- a/lib/construction/argument/ArgumentConstructorHandlerValue.ts +++ b/lib/construction/argument/ArgumentConstructorHandlerValue.ts @@ -1,24 +1,24 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentConstructorHandler } from './IArgumentConstructorHandler.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Handles value references, by recursively calling the args creator with the referred value. */ export class ArgumentConstructorHandlerValue implements IArgumentConstructorHandler { - public canHandle( + public canHandle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): boolean { return Boolean(value.property.value); } - public async handle( + public async handle( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ): Promise { return await argsCreator.getArgumentValues(value.properties.value, settings); } diff --git a/lib/construction/argument/IArgumentConstructorHandler.ts b/lib/construction/argument/IArgumentConstructorHandler.ts index 2292cb9..4fde04d 100644 --- a/lib/construction/argument/IArgumentConstructorHandler.ts +++ b/lib/construction/argument/IArgumentConstructorHandler.ts @@ -1,6 +1,6 @@ import type { Resource } from 'rdf-object'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IArgumentsConstructor } from './IArgumentsConstructor'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IArgumentsConstructor } from './IArgumentsConstructor.js'; /** * Creates instances for specific types of arguments. @@ -12,10 +12,10 @@ export interface IArgumentConstructorHandler { * @param settings Creation settings. * @param argsCreator Instance of the arguments creator that can be used to handle recursive args. */ - canHandle: ( + canHandle: ( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ) => boolean; /** @@ -24,9 +24,9 @@ export interface IArgumentConstructorHandler { * @param settings Creation settings. * @param argsCreator Instance of the arguments creator that can be used to handle recursive args. */ - handle: ( + handle: ( value: Resource, settings: IConstructionSettings, - argsCreator: IArgumentsConstructor, + argsCreator: IArgumentsConstructor, ) => Promise; } diff --git a/lib/construction/argument/IArgumentsConstructor.ts b/lib/construction/argument/IArgumentsConstructor.ts index dc863e3..5c4b5cc 100644 --- a/lib/construction/argument/IArgumentsConstructor.ts +++ b/lib/construction/argument/IArgumentsConstructor.ts @@ -1,16 +1,16 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; -import type { IConfigConstructorPool } from '../IConfigConstructorPool'; -import type { IConstructionSettings } from '../IConstructionSettings'; -import type { IConstructionStrategy } from '../strategy/IConstructionStrategy'; +import type { IConfigConstructorPool } from '../IConfigConstructorPool.js'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; +import type { IConstructionStrategy } from '../strategy/IConstructionStrategy.js'; /** * Instances of this interfaces can instantiate argument values. * This is mainly used by {@link IArgumentConstructorHandler}. */ -export interface IArgumentsConstructor { +export interface IArgumentsConstructor { readonly objectLoader: RdfObjectLoader; readonly configConstructorPool: IConfigConstructorPool; - readonly constructionStrategy: IConstructionStrategy; + readonly constructionStrategy: IConstructionStrategy; /** * Convert the given argument values resource into a JavaScript object or primitive. diff --git a/lib/construction/strategy/ConstructionStrategyAbstract.ts b/lib/construction/strategy/ConstructionStrategyAbstract.ts new file mode 100644 index 0000000..7f7de40 --- /dev/null +++ b/lib/construction/strategy/ConstructionStrategyAbstract.ts @@ -0,0 +1,78 @@ +import type { + IConstructionStrategy, + ICreationStrategyArrayOptions, + ICreationStrategyHashOptions, + ICreationStrategyInstanceOptions, + ICreationStrategyPrimitiveOptions, + ICreationStrategySupplierOptions, + ICreationStrategyVariableOptions, +} from './IConstructionStrategy.js'; + +/** + * A creation strategy for creating instances with CommonJS. + */ +export abstract class ConstructionStrategyAbstract implements IConstructionStrategy { + public abstract createInstance(options: ICreationStrategyInstanceOptions): any; + + public createHash(options: ICreationStrategyHashOptions): any { + return options.entries.reduce((data: Record, entry: { key: string; value: any } | undefined) => { + if (entry) { + data[entry.key] = entry.value; + } + return data; + }, {}); + } + + public createArray(options: ICreationStrategyArrayOptions): any { + return options.elements; + } + + public async createLazySupplier(options: ICreationStrategySupplierOptions): Promise { + return options.supplier; + } + + public createPrimitive(options: ICreationStrategyPrimitiveOptions): any { + return options.value; + } + + public getVariableValue(options: ICreationStrategyVariableOptions): any { + const value = options.settings.variables ? options.settings.variables[options.variableName] : undefined; + if (value === undefined) { + throw new Error(`Undefined variable: ${options.variableName}`); + } + return value; + } + + public createUndefined(): any { + // Return undefined + } + + public createObject(options: ICreationStrategyInstanceOptions, object: any): any { + // Determine the child of the require'd element + let subObject; + if (options.requireElement) { + const requireElementPath = options.requireElement.split('.'); + try { + subObject = requireElementPath.reduce((acc: any, subRequireElement: string) => acc[subRequireElement], object); + } catch { + throw new Error(`Failed to get module element ${options.requireElement} from module ${options.requireName}`); + } + } else { + subObject = object; + } + if (!subObject) { + throw new Error(`Failed to get module element ${options.requireElement} from module ${options.requireName}`); + } + + // Call the constructor of the element + object = subObject; + if (options.callConstructor) { + if (typeof object !== 'function') { + throw new Error(`Attempted to construct ${options.requireElement} from module ${options.requireName} that does not have a constructor`); + } + object = new (Function.prototype.bind.apply(object, <[any, ...any]>[{}].concat(options.args)))(); + } + + return object; + } +} diff --git a/lib/construction/strategy/ConstructionStrategyAbstractString.ts b/lib/construction/strategy/ConstructionStrategyAbstractString.ts new file mode 100644 index 0000000..03cbc21 --- /dev/null +++ b/lib/construction/strategy/ConstructionStrategyAbstractString.ts @@ -0,0 +1,168 @@ +import * as Path from 'path'; +import type { IModuleState } from '../../loading/ModuleStateBuilder.js'; +import type { + IConstructionStrategy, + ICreationStrategyArrayOptions, + ICreationStrategyHashOptions, + ICreationStrategyInstanceOptions, + ICreationStrategyPrimitiveOptions, + ICreationStrategySupplierOptions, + ICreationStrategyVariableOptions, +} from './IConstructionStrategy.js'; + +type Promiseish = T | Promise; + +/** + * A creation strategy for a string representation of CommonJS. + * + * When this strategy is plugged into a {@link ComponentsManager}, + * the manager will output a string that represents the name of the variable that has been instantiated. + * In order to retrieve a string representation of all Common JS logic to construct this variable, + * the {@link serializeDocument} method can be invoked with this variable string. + * + * A typical pattern for using this strategy looks as follows: + * ``` + const serializationVariableName = await manager.instantiate(configIri); + const document = constructionStrategy.serializeDocument(serializationVariableName); + * ``` + * + * @see compileConfig For a simplified abstraction for using this strategy. + */ +export abstract class ConstructionStrategyAbstractString implements IConstructionStrategy> { + protected readonly asFunction: boolean; + protected readonly lines: string[] = []; + protected readonly outerLines: string[] = []; + protected abstract readonly EXPORT_STRING: string; + protected abstract readonly ENTRY_KEY: string; + + // eslint-disable-next-line unicorn/no-object-as-default-parameter + public constructor(options: IConstructionStrategyAbstractStringOptions) { + this.asFunction = Boolean(options.asFunction); + } + + public abstract createInstance(options: ICreationStrategyInstanceOptions>): Promiseish; + + /** + * Get the path to the main module's main entrypoint. + * @param moduleState The module state. + * @return {string} The index module path of the current running module (`"main"` entry in package.json). + */ + public getCurrentRunningModuleMain(moduleState: IModuleState): string { + const pckg = moduleState.packageJsons[moduleState.mainModulePath]; + return Path.join(moduleState.mainModulePath, pckg[this.ENTRY_KEY]); + } + + public createHash(options: ICreationStrategyHashOptions): string { + const sb: string[] = [ '{' ]; + for (const entry of options.entries) { + if (entry) { + if (sb.length > 1) { + sb.push(','); + } + sb.push('\n'); + sb.push(' '); + sb.push(`${entry.key}`); + sb.push(': '); + sb.push(entry.value); + } + } + if (sb.length > 1) { + sb.push('\n'); + } + sb.push('}'); + return sb.join(''); + } + + public createArray(options: ICreationStrategyArrayOptions): string { + const sb: string[] = [ '[' ]; + for (const value of options.elements) { + if (sb.length > 1) { + sb.push(','); + } + sb.push('\n ', value); + } + if (sb.length > 1) { + sb.push('\n'); + } + sb.push(']'); + return sb.join(''); + } + + public async createLazySupplier(options: ICreationStrategySupplierOptions): Promise { + return `new function() { return Promise.resolve(${await options.supplier()}); }`; + } + + public createPrimitive(options: ICreationStrategyPrimitiveOptions): string { + if (typeof options.value === 'object') { + return JSON.stringify(options.value); + } + return typeof options.value === 'string' ? `'${options.value}'` : `${options.value}`; + } + + public getVariableValue(options: ICreationStrategyVariableOptions): string { + if (this.asFunction) { + return `getVariableValue('${options.variableName}')`; + } + throw new Error(`Detected a variable during config compilation: ${options.variableName}. Variables are not supported, but require the -f flag to expose the compiled config as function.`); + } + + public createUndefined(): string { + return 'undefined'; + } + + /** + * Deterministically converts a URI to a variable name that is safe for usage within JavaScript. + * @param {string} uri A URI. + * @return {string} A variable name. + */ + public static uriToVariableName(uri: string): string { + return uri.replace(/[#./:@\\^-]/gu, '_'); + } + + /** + * Serialize a full Common JS document to a string. + * @param serializationVariableName The resulting string when calling {@link ComponentsManager.instantiate}. + * @param exportVariableName An optional variable name that should be exported + * instead of the default (serializationVariableName). + */ + public serializeDocument(serializationVariableName: string, exportVariableName?: string): string { + // Join all lines in the document + const document: string = this.lines.join('\n'); + + // Join all lines that belong strictly at the top of the document + const documentTop: string = this.outerLines.length === 0 ? '' : `${this.outerLines.join('\n')}\n`; + + // Override main variable name if needed + exportVariableName = (exportVariableName ? + ConstructionStrategyAbstractString.uriToVariableName(exportVariableName) : + exportVariableName) || serializationVariableName; + + // Export as variable-based function + if (this.asFunction) { + return `${documentTop}${this.EXPORT_STRING} function(variables) { +function getVariableValue(name) { + if (!variables || !(name in variables)) { + throw new Error('Undefined variable: ' + name); + } + return variables[name]; +} +${document} +return ${exportVariableName}; +} +`; + } + + // Direct export of instantiated component + return `${documentTop}${document} +${this.EXPORT_STRING} ${exportVariableName}; +`; + } +} + +export interface IConstructionStrategyAbstractStringOptions { + /** + * If the exported instance should be exposed as a function, which accepts an optional hash of variables. + * If this is true, variables will be extracted from the `variables` hash. + */ + asFunction?: boolean; +} diff --git a/lib/construction/strategy/ConstructionStrategyCommonJs.ts b/lib/construction/strategy/ConstructionStrategyCommonJs.ts index c3a06dc..825df1f 100644 --- a/lib/construction/strategy/ConstructionStrategyCommonJs.ts +++ b/lib/construction/strategy/ConstructionStrategyCommonJs.ts @@ -1,23 +1,20 @@ import * as Path from 'path'; -import type { IModuleState } from '../../loading/ModuleStateBuilder'; +import type { IModuleState } from '../../loading/ModuleStateBuilder.js'; +import { ConstructionStrategyAbstract } from './ConstructionStrategyAbstract.js'; import type { ICreationStrategyInstanceOptions, - IConstructionStrategy, - ICreationStrategyHashOptions, - ICreationStrategyArrayOptions, - ICreationStrategySupplierOptions, - ICreationStrategyPrimitiveOptions, ICreationStrategyVariableOptions, -} from './IConstructionStrategy'; +} from './IConstructionStrategy.js'; /** * A creation strategy for creating instances with CommonJS. */ -export class ConstructionStrategyCommonJs implements IConstructionStrategy { +export class ConstructionStrategyCommonJs extends ConstructionStrategyAbstract { private readonly overrideRequireNames: Record; private readonly req: NodeJS.Require; // eslint-disable-next-line unicorn/no-object-as-default-parameter public constructor(options: ICreationStrategyCommonJsOptions = { req: require }) { + super(); this.overrideRequireNames = options.overrideRequireNames || {}; this.req = options.req; } @@ -27,40 +24,14 @@ export class ConstructionStrategyCommonJs implements IConstructionStrategy options.requireName = this.overrideRequireNames[options.requireName] || options.requireName; // First try requiring current module, and fallback to a plain require - let object: any; const currentResult = this.requireCurrentRunningModuleIfCurrent(options.moduleState, options.requireName); - object = currentResult !== false ? + const object = currentResult !== false ? currentResult.value : this.req(options.requireName.startsWith('.') ? Path.join(process.cwd(), options.requireName) : this.req.resolve(options.requireName, { paths: [ options.moduleState.mainModulePath ]})); - // Determine the child of the require'd element - let subObject; - if (options.requireElement) { - const requireElementPath = options.requireElement.split('.'); - try { - subObject = requireElementPath.reduce((acc: any, subRequireElement: string) => acc[subRequireElement], object); - } catch { - throw new Error(`Failed to get module element ${options.requireElement} from module ${options.requireName}`); - } - } else { - subObject = object; - } - if (!subObject) { - throw new Error(`Failed to get module element ${options.requireElement} from module ${options.requireName}`); - } - - // Call the constructor of the element - object = subObject; - if (options.callConstructor) { - if (typeof object !== 'function') { - throw new Error(`Attempted to construct ${options.requireElement} from module ${options.requireName} that does not have a constructor`); - } - object = new (Function.prototype.bind.apply(object, <[any, ...any]>[{}].concat(options.args)))(); - } - - return object; + return this.createObject(options, object); } /** @@ -83,39 +54,6 @@ export class ConstructionStrategyCommonJs implements IConstructionStrategy } return false; } - - public createHash(options: ICreationStrategyHashOptions): any { - return options.entries.reduce((data: Record, entry: { key: string; value: any } | undefined) => { - if (entry) { - data[entry.key] = entry.value; - } - return data; - }, {}); - } - - public createArray(options: ICreationStrategyArrayOptions): any { - return options.elements; - } - - public async createLazySupplier(options: ICreationStrategySupplierOptions): Promise { - return options.supplier; - } - - public createPrimitive(options: ICreationStrategyPrimitiveOptions): any { - return options.value; - } - - public getVariableValue(options: ICreationStrategyVariableOptions): any { - const value = options.settings.variables ? options.settings.variables[options.variableName] : undefined; - if (value === undefined) { - throw new Error(`Undefined variable: ${options.variableName}`); - } - return value; - } - - public createUndefined(): any { - // Return undefined - } } export interface ICreationStrategyCommonJsOptions { diff --git a/lib/construction/strategy/ConstructionStrategyCommonJsString.ts b/lib/construction/strategy/ConstructionStrategyCommonJsString.ts index 4d3e37b..bdcb592 100644 --- a/lib/construction/strategy/ConstructionStrategyCommonJsString.ts +++ b/lib/construction/strategy/ConstructionStrategyCommonJsString.ts @@ -1,16 +1,10 @@ import * as Path from 'path'; -import type { IModuleState } from '../../loading/ModuleStateBuilder'; -import type { ICreationStrategyCommonJsOptions } from './ConstructionStrategyCommonJs'; -import { ConstructionStrategyCommonJs } from './ConstructionStrategyCommonJs'; +import type { IConstructionStrategyAbstractStringOptions } from './ConstructionStrategyAbstractString.js'; +import { ConstructionStrategyAbstractString } from './ConstructionStrategyAbstractString.js'; +import { ConstructionStrategyCommonJs, type ICreationStrategyCommonJsOptions } from './ConstructionStrategyCommonJs.js'; import type { - IConstructionStrategy, - ICreationStrategyHashOptions, ICreationStrategyInstanceOptions, - ICreationStrategyArrayOptions, - ICreationStrategyPrimitiveOptions, - ICreationStrategySupplierOptions, - ICreationStrategyVariableOptions, -} from './IConstructionStrategy'; +} from './IConstructionStrategy.js'; /** * A creation strategy for a string representation of CommonJS. @@ -28,17 +22,17 @@ import type { * * @see compileConfig For a simplified abstraction for using this strategy. */ -export class ConstructionStrategyCommonJsString implements IConstructionStrategy { - private readonly overrideRequireNames: Record; - private readonly asFunction: boolean; +export class ConstructionStrategyCommonJsString extends ConstructionStrategyAbstractString { + protected EXPORT_STRING = 'module.exports ='; + protected ENTRY_KEY = 'main'; private readonly strategyCommonJs: ConstructionStrategyCommonJs; - private readonly lines: string[] = []; + private readonly overrideRequireNames: Record; // eslint-disable-next-line unicorn/no-object-as-default-parameter public constructor(options: ICreationStrategyCommonJsStringOptions = { req: require }) { - this.overrideRequireNames = options.overrideRequireNames || {}; - this.asFunction = Boolean(options.asFunction); + super(options); this.strategyCommonJs = new ConstructionStrategyCommonJs(options); + this.overrideRequireNames = options.overrideRequireNames || {}; } public createInstance(options: ICreationStrategyInstanceOptions): string { @@ -74,127 +68,9 @@ export class ConstructionStrategyCommonJsString implements IConstructionStrategy return serialization; } - - /** - * Get the path to the main module's main entrypoint. - * @param moduleState The module state. - * @return {string} The index module path of the current running module (`"main"` entry in package.json). - */ - public getCurrentRunningModuleMain(moduleState: IModuleState): string { - const pckg = moduleState.packageJsons[moduleState.mainModulePath]; - return Path.join(moduleState.mainModulePath, pckg.main); - } - - public createHash(options: ICreationStrategyHashOptions): string { - const sb: string[] = [ '{' ]; - for (const entry of options.entries) { - if (entry) { - if (sb.length > 1) { - sb.push(','); - } - sb.push('\n'); - sb.push(' '); - sb.push(`${entry.key}`); - sb.push(': '); - sb.push(entry.value); - } - } - if (sb.length > 1) { - sb.push('\n'); - } - sb.push('}'); - return sb.join(''); - } - - public createArray(options: ICreationStrategyArrayOptions): string { - const sb: string[] = [ '[' ]; - for (const value of options.elements) { - if (sb.length > 1) { - sb.push(','); - } - sb.push('\n'); - sb.push(' '); - sb.push(value); - } - if (sb.length > 1) { - sb.push('\n'); - } - sb.push(']'); - return sb.join(''); - } - - public async createLazySupplier(options: ICreationStrategySupplierOptions): Promise { - return `new function() { return Promise.resolve(${await options.supplier()}); }`; - } - - public createPrimitive(options: ICreationStrategyPrimitiveOptions): string { - if (typeof options.value === 'object') { - return JSON.stringify(options.value); - } - return typeof options.value === 'string' ? `'${options.value}'` : `${options.value}`; - } - - public getVariableValue(options: ICreationStrategyVariableOptions): string { - if (this.asFunction) { - return `getVariableValue('${options.variableName}')`; - } - throw new Error(`Detected a variable during config compilation: ${options.variableName}. Variables are not supported, but require the -f flag to expose the compiled config as function.`); - } - - public createUndefined(): string { - return 'undefined'; - } - - /** - * Deterministically converts a URI to a variable name that is safe for usage within JavaScript. - * @param {string} uri A URI. - * @return {string} A variable name. - */ - public static uriToVariableName(uri: string): string { - return uri.replace(/[#./:@\\^-]/gu, '_'); - } - - /** - * Serialize a full Common JS document to a string. - * @param serializationVariableName The resulting string when calling {@link ComponentsManager.instantiate}. - * @param exportVariableName An optional variable name that should be exported - * instead of the default (serializationVariableName). - */ - public serializeDocument(serializationVariableName: string, exportVariableName?: string): string { - // Join all lines in the document - const document: string = this.lines.join('\n'); - - // Override main variable name if needed - exportVariableName = (exportVariableName ? - ConstructionStrategyCommonJsString.uriToVariableName(exportVariableName) : - exportVariableName) || serializationVariableName; - - // Export as variable-based function - if (this.asFunction) { - return `module.exports = function(variables) { -function getVariableValue(name) { - if (!variables || !(name in variables)) { - throw new Error('Undefined variable: ' + name); - } - return variables[name]; -} -${document} -return ${exportVariableName}; -} -`; - } - - // Direct export of instantiated component - return `${document} -module.exports = ${exportVariableName}; -`; - } } -export interface ICreationStrategyCommonJsStringOptions extends ICreationStrategyCommonJsOptions { - /** - * If the exported instance should be exposed as a function, which accepts an optional hash of variables. - * If this is true, variables will be extracted from the `variables` hash. - */ - asFunction?: boolean; +export interface ICreationStrategyCommonJsStringOptions extends + ICreationStrategyCommonJsOptions, + IConstructionStrategyAbstractStringOptions { } diff --git a/lib/construction/strategy/ConstructionStrategyEsm.ts b/lib/construction/strategy/ConstructionStrategyEsm.ts new file mode 100644 index 0000000..6794169 --- /dev/null +++ b/lib/construction/strategy/ConstructionStrategyEsm.ts @@ -0,0 +1,69 @@ +import * as Path from 'path'; +import type { IModuleState } from '../../loading/ModuleStateBuilder.js'; +import { ConstructionStrategyAbstract } from './ConstructionStrategyAbstract.js'; +import type { + ICreationStrategyInstanceOptions, +} from './IConstructionStrategy.js'; + +/** + * A creation strategy for creating instances with CommonJS. + */ +export class ConstructionStrategyESM extends ConstructionStrategyAbstract { + private readonly overrideRequireNames: Record; + + // eslint-disable-next-line unicorn/no-object-as-default-parameter + public constructor(options: ICreationStrategyESMoptions) { + super(); + this.overrideRequireNames = options.overrideRequireNames || {}; + } + + public async createInstance(options: ICreationStrategyInstanceOptions): Promise { + // Call require() + options.requireName = this.overrideRequireNames[options.requireName] || options.requireName; + + // First try requiring current module, and fallback to a plain require + const currentResult = await this.requireCurrentRunningModuleIfCurrent(options.moduleState, options.requireName); + const object = currentResult !== false ? + currentResult.value : + await import( + options.requireName.startsWith('.') ? + Path.join(process.cwd(), options.requireName) : + // TODO See if we need to supply { paths: [ options.moduleState.mainModulePath ]} somehow + options.requireName + ); + + return this.createObject(options, object); + } + + /** + * Require the given module iff the module is the current main module. + * This is done by looking for the nearest package.json. + * @param moduleState The module state. + * @param requireName The module name that should be required. + * @returns {any} The require() result + */ + public async requireCurrentRunningModuleIfCurrent( + moduleState: IModuleState, + requireName: string, + ): Promise<{ value: any } | false> { + const pckg = moduleState.packageJsons[moduleState.mainModulePath]; + if (pckg) { + if (requireName === pckg.name) { + const mainPath: string = Path.posix.join(moduleState.mainModulePath, pckg.module); + const required = await import(mainPath); + if (required) { + return { value: required }; + } + } + } + return false; + } +} + +export interface ICreationStrategyESMoptions { + /** + * Overrides for `require()` calls. + * For example, an override entry `abc -> def` will map all calls from `require('abc')` to `require('def')`. + */ + overrideRequireNames?: Record; +} diff --git a/lib/construction/strategy/ConstructionStrategyEsmString.ts b/lib/construction/strategy/ConstructionStrategyEsmString.ts new file mode 100644 index 0000000..4d83e51 --- /dev/null +++ b/lib/construction/strategy/ConstructionStrategyEsmString.ts @@ -0,0 +1,85 @@ +import * as Path from 'path'; +import type { IConstructionStrategyAbstractStringOptions } from './ConstructionStrategyAbstractString.js'; +import { ConstructionStrategyAbstractString } from './ConstructionStrategyAbstractString.js'; +import { ConstructionStrategyESM, type ICreationStrategyESMoptions } from './ConstructionStrategyEsm.js'; +import type { + ICreationStrategyInstanceOptions, +} from './IConstructionStrategy.js'; + +/** + * A creation strategy for a string representation of CommonJS. + * + * When this strategy is plugged into a {@link ComponentsManager}, + * the manager will output a string that represents the name of the variable that has been instantiated. + * In order to retrieve a string representation of all Common JS logic to construct this variable, + * the {@link serializeDocument} method can be invoked with this variable string. + * + * A typical pattern for using this strategy looks as follows: + * ``` + const serializationVariableName = await manager.instantiate(configIri); + const document = constructionStrategy.serializeDocument(serializationVariableName); + * ``` + * + * @see compileConfig For a simplified abstraction for using this strategy. + */ +export class ConstructionStrategyESMString extends ConstructionStrategyAbstractString { + protected EXPORT_STRING = 'export default'; + protected ENTRY_KEY = 'module'; + private readonly CLASS_STRING = '_class'; + private readonly overrideRequireNames: Record; + private readonly strategyStrategyEsm: ConstructionStrategyESM; + + // eslint-disable-next-line unicorn/no-object-as-default-parameter + public constructor(options: ICreationStrategyCommonEsmStringOptions) { + super(options); + this.overrideRequireNames = options.overrideRequireNames || {}; + this.strategyStrategyEsm = new ConstructionStrategyESM(options); + } + + public async createInstance(options: ICreationStrategyInstanceOptions): Promise { + // Call require() + options.requireName = this.overrideRequireNames[options.requireName] || options.requireName; + + // First try requiring current module, and fallback to a plain require + const currentResult = await this.strategyStrategyEsm + .requireCurrentRunningModuleIfCurrent(options.moduleState, options.requireName); + const resultingRequirePath = currentResult !== false ? + `.${Path.sep}${Path.relative( + options.moduleState.mainModulePath, + this.getCurrentRunningModuleMain(options.moduleState), + )}` : + options.requireName; + + let serializationVariableName = ConstructionStrategyESMString.uriToVariableName(options.instanceId); + let serialization: string; + + if (options.callConstructor) { + serializationVariableName += this.CLASS_STRING; + } + + serialization = 'import '; + if (options.requireElement === serializationVariableName) { + serialization += `{ ${serializationVariableName} }`; + } else if (options.requireElement) { + serialization += `{ ${options.requireElement} as ${serializationVariableName} }`; + } else { + serialization += `* as ${serializationVariableName}`; + } + serialization += ` from '${resultingRequirePath.replace(/\\/gu, '/')}';`; + + this.outerLines.push(serialization); + + // Call the constructor of the element + if (options.callConstructor) { + this.lines.push(`const ${serializationVariableName.slice(0, -this.CLASS_STRING.length)} = new ${serializationVariableName}(${options.args.join(', ')});`); + return serializationVariableName.slice(0, -this.CLASS_STRING.length); + } + + return serializationVariableName; + } +} + +export interface ICreationStrategyCommonEsmStringOptions extends + ICreationStrategyESMoptions, + IConstructionStrategyAbstractStringOptions { +} diff --git a/lib/construction/strategy/IConstructionStrategy.ts b/lib/construction/strategy/IConstructionStrategy.ts index 7215065..86710d2 100644 --- a/lib/construction/strategy/IConstructionStrategy.ts +++ b/lib/construction/strategy/IConstructionStrategy.ts @@ -1,15 +1,15 @@ -import type { IModuleState } from '../../loading/ModuleStateBuilder'; -import type { IConstructionSettings } from '../IConstructionSettings'; +import type { IModuleState } from '../../loading/ModuleStateBuilder.js'; +import type { IConstructionSettings } from '../IConstructionSettings.js'; /** * Implementations of this interface represent a certain strategy for creating instances. */ -export interface IConstructionStrategy { +export interface IConstructionStrategy { /** * Create a new instance of the given referenced element. * @param options Options */ - createInstance: (options: ICreationStrategyInstanceOptions) => Instance; + createInstance: (options: ICreationStrategyInstanceOptions) => InstanceOut; /** * Create a hash object. * @param options Options diff --git a/lib/loading/ComponentRegistry.ts b/lib/loading/ComponentRegistry.ts index 385fbe5..2289ba9 100644 --- a/lib/loading/ComponentRegistry.ts +++ b/lib/loading/ComponentRegistry.ts @@ -2,8 +2,8 @@ import type { Readable } from 'stream'; import type * as RDF from '@rdfjs/types'; import type { Resource, RdfObjectLoader } from 'rdf-object'; import type { Logger } from 'winston'; -import { RdfParser } from '../rdf/RdfParser'; -import type { IModuleState } from './ModuleStateBuilder'; +import { RdfParser } from '../rdf/RdfParser.js'; +import type { IModuleState } from './ModuleStateBuilder.js'; /** * Accepts component registrations and modules containing zero or more components. diff --git a/lib/loading/ComponentRegistryFinalizer.ts b/lib/loading/ComponentRegistryFinalizer.ts index a2fff30..676ef60 100644 --- a/lib/loading/ComponentRegistryFinalizer.ts +++ b/lib/loading/ComponentRegistryFinalizer.ts @@ -1,8 +1,8 @@ import type { RdfObjectLoader, Resource } from 'rdf-object'; import type { Logger } from 'winston'; -import { IRIS_OO } from '../rdf/Iris'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import type { ComponentRegistry } from './ComponentRegistry'; +import { IRIS_OO } from '../rdf/Iris.js'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import type { ComponentRegistry } from './ComponentRegistry.js'; /** * Finalizes module registrations of a {@link ComponentRegistry}. diff --git a/lib/loading/ComponentsManagerBuilder.ts b/lib/loading/ComponentsManagerBuilder.ts index ed3407f..7ac99f2 100644 --- a/lib/loading/ComponentsManagerBuilder.ts +++ b/lib/loading/ComponentsManagerBuilder.ts @@ -2,21 +2,23 @@ import type { Resource } from 'rdf-object'; import { RdfObjectLoader } from 'rdf-object'; import type { Logger } from 'winston'; import { createLogger, format, transports } from 'winston'; -import { ComponentsManager } from '../ComponentsManager'; -import { ConfigConstructorPool } from '../construction/ConfigConstructorPool'; -import type { IConfigConstructorPool } from '../construction/IConfigConstructorPool'; -import { ConstructionStrategyCommonJs } from '../construction/strategy/ConstructionStrategyCommonJs'; -import type { IConstructionStrategy } from '../construction/strategy/IConstructionStrategy'; -import { ConfigPreprocessorComponent } from '../preprocess/ConfigPreprocessorComponent'; -import { ConfigPreprocessorComponentMapped } from '../preprocess/ConfigPreprocessorComponentMapped'; -import { ConfigPreprocessorOverride } from '../preprocess/ConfigPreprocessorOverride'; -import { ParameterHandler } from '../preprocess/ParameterHandler'; -import type { LogLevel } from '../util/LogLevel'; -import { ComponentRegistry } from './ComponentRegistry'; -import { ComponentRegistryFinalizer } from './ComponentRegistryFinalizer'; -import { ConfigRegistry } from './ConfigRegistry'; -import { ModuleStateBuilder } from './ModuleStateBuilder'; -import type { IModuleState } from './ModuleStateBuilder'; +import { ComponentsManager } from '../ComponentsManager.js'; +import { ConfigConstructorPool } from '../construction/ConfigConstructorPool.js'; +import type { IConfigConstructorPool } from '../construction/IConfigConstructorPool.js'; +import { ConstructionStrategyCommonJs } from '../construction/strategy/ConstructionStrategyCommonJs.js'; +import type { IConstructionStrategy } from '../construction/strategy/IConstructionStrategy.js'; +import { ConfigPreprocessorComponent } from '../preprocess/ConfigPreprocessorComponent.js'; +import { ConfigPreprocessorComponentMapped } from '../preprocess/ConfigPreprocessorComponentMapped.js'; +import { ConfigPreprocessorOverride } from '../preprocess/ConfigPreprocessorOverride.js'; +import { ParameterHandler } from '../preprocess/ParameterHandler.js'; +import type { LogLevel } from '../util/LogLevel.js'; +import { ComponentRegistry } from './ComponentRegistry.js'; +import { ComponentRegistryFinalizer } from './ComponentRegistryFinalizer.js'; +import { ConfigRegistry } from './ConfigRegistry.js'; +import { ModuleStateBuilder } from './ModuleStateBuilder.js'; +import type { IModuleState } from './ModuleStateBuilder.js'; + +type Promiseish = T | Promise; /** * Builds {@link ComponentsManager}'s based on given options. @@ -25,7 +27,7 @@ export class ComponentsManagerBuilder { private readonly mainModulePath: string; private readonly componentLoader: (registry: ComponentRegistry) => Promise; private readonly configLoader: (registry: ConfigRegistry) => Promise; - private readonly constructionStrategy: IConstructionStrategy; + private readonly constructionStrategy: IConstructionStrategy>; private readonly dumpErrorState: boolean; private readonly logger: Logger; private readonly moduleState?: IModuleState; @@ -33,7 +35,7 @@ export class ComponentsManagerBuilder { private readonly typeChecking: boolean; private readonly remoteContextLookups: boolean; - public constructor(options: IComponentsManagerBuilderOptions) { + public constructor(options: IComponentsManagerBuilderOptions>) { this.mainModulePath = options.mainModulePath; this.componentLoader = options.moduleLoader || (async registry => registry.registerAvailableModules()); this.configLoader = options.configLoader || (async() => { @@ -168,7 +170,7 @@ export class ComponentsManagerBuilder { } } -export interface IComponentsManagerBuilderOptions { +export interface IComponentsManagerBuilderOptions { /* ----- REQUIRED FIELDS ----- */ /** * Absolute path to the package root from which module resolution should start. @@ -192,7 +194,7 @@ export interface IComponentsManagerBuilderOptions { * A strategy for constructing instances. * Defaults to {@link ConstructionStrategyCommonJs}. */ - constructionStrategy?: IConstructionStrategy; + constructionStrategy?: IConstructionStrategy; /** * If the error state should be dumped into `componentsjs-error-state.json` * after failed instantiations. diff --git a/lib/loading/ConfigRegistry.ts b/lib/loading/ConfigRegistry.ts index 27cef6f..63df207 100644 --- a/lib/loading/ConfigRegistry.ts +++ b/lib/loading/ConfigRegistry.ts @@ -3,8 +3,8 @@ import type * as RDF from '@rdfjs/types'; import type { RdfObjectLoader, Resource } from 'rdf-object'; import { termToString } from 'rdf-string'; import type { Logger } from 'winston'; -import { RdfParser } from '../rdf/RdfParser'; -import type { IModuleState } from './ModuleStateBuilder'; +import { RdfParser } from '../rdf/RdfParser.js'; +import type { IModuleState } from './ModuleStateBuilder.js'; /** * Accepts registrations for configurations that contain instantiations of components. diff --git a/lib/preprocess/ConfigPreprocessorComponent.ts b/lib/preprocess/ConfigPreprocessorComponent.ts index d861b01..86908d0 100644 --- a/lib/preprocess/ConfigPreprocessorComponent.ts +++ b/lib/preprocess/ConfigPreprocessorComponent.ts @@ -1,11 +1,11 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; import type { Logger } from 'winston'; -import { IRIS_OWL } from '../rdf/Iris'; -import { uniqueTypes } from '../rdf/ResourceUtil'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import { GenericsContext } from './GenericsContext'; -import type { IConfigPreprocessorTransform, IConfigPreprocessor } from './IConfigPreprocessor'; -import type { ParameterHandler } from './ParameterHandler'; +import { IRIS_OWL } from '../rdf/Iris.js'; +import { uniqueTypes } from '../rdf/ResourceUtil.js'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import { GenericsContext } from './GenericsContext.js'; +import type { IConfigPreprocessorTransform, IConfigPreprocessor } from './IConfigPreprocessor.js'; +import type { ParameterHandler } from './ParameterHandler.js'; /** * Handles config that refer to a component as type. diff --git a/lib/preprocess/ConfigPreprocessorComponentMapped.ts b/lib/preprocess/ConfigPreprocessorComponentMapped.ts index 733d887..bbff26b 100644 --- a/lib/preprocess/ConfigPreprocessorComponentMapped.ts +++ b/lib/preprocess/ConfigPreprocessorComponentMapped.ts @@ -1,33 +1,33 @@ import type { Resource } from 'rdf-object'; -import { IRIS_RDF } from '../rdf/Iris'; +import { IRIS_RDF } from '../rdf/Iris.js'; import type { IComponentConfigPreprocessorHandleResponse, -} from './ConfigPreprocessorComponent'; +} from './ConfigPreprocessorComponent.js'; import { ConfigPreprocessorComponent, -} from './ConfigPreprocessorComponent'; +} from './ConfigPreprocessorComponent.js'; import { ConstructorArgumentsElementMappingHandlerCollectEntries, -} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries'; +} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.js'; import { ConstructorArgumentsElementMappingHandlerElements, -} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements'; +} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.js'; import { ConstructorArgumentsElementMappingHandlerFields, -} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields'; +} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.js'; import { ConstructorArgumentsElementMappingHandlerKeyValue, -} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue'; +} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.js'; import { ConstructorArgumentsElementMappingHandlerList, -} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList'; +} from './constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.js'; import type { IConstructorArgumentsElementMappingHandler, -} from './constructorargumentsmapping/IConstructorArgumentsElementMappingHandler'; +} from './constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.js'; import type { IConstructorArgumentsMapper, -} from './constructorargumentsmapping/IConstructorArgumentsMapper'; -import type { GenericsContext } from './GenericsContext'; +} from './constructorargumentsmapping/IConstructorArgumentsMapper.js'; +import type { GenericsContext } from './GenericsContext.js'; /** * Handles config that refer to a component as type. @@ -44,7 +44,7 @@ export class ConfigPreprocessorComponentMapped extends ConfigPreprocessorCompone new ConstructorArgumentsElementMappingHandlerList(), ]; - public canHandle(config: Resource): IComponentConfigPreprocessorHandleResponse | undefined { + public override canHandle(config: Resource): IComponentConfigPreprocessorHandleResponse | undefined { const handleResponse = super.canHandle(config); if (handleResponse && !handleResponse.component.property.constructorArguments) { return; @@ -52,7 +52,7 @@ export class ConfigPreprocessorComponentMapped extends ConfigPreprocessorCompone return handleResponse; } - public transformConstructorArguments( + public override transformConstructorArguments( config: Resource, handleResponse: IComponentConfigPreprocessorHandleResponse, ): Resource { diff --git a/lib/preprocess/ConfigPreprocessorOverride.ts b/lib/preprocess/ConfigPreprocessorOverride.ts index d74cb31..d4e45dd 100644 --- a/lib/preprocess/ConfigPreprocessorOverride.ts +++ b/lib/preprocess/ConfigPreprocessorOverride.ts @@ -1,17 +1,17 @@ import type { Resource } from 'rdf-object'; -import type { RdfObjectLoader } from 'rdf-object/lib/RdfObjectLoader'; +import type { RdfObjectLoader } from 'rdf-object/lib/RdfObjectLoader.js'; import type { Logger } from 'winston'; -import { IRIS_OO, PREFIX_OO } from '../rdf/Iris'; -import { uniqueTypes } from '../rdf/ResourceUtil'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import type { IConfigPreprocessor, IConfigPreprocessorTransform } from './IConfigPreprocessor'; -import type { IOverrideStep } from './overridesteps/IOverrideStep'; -import { OverrideListInsertAfter } from './overridesteps/OverrideListInsertAfter'; -import { OverrideListInsertAt } from './overridesteps/OverrideListInsertAt'; -import { OverrideListInsertBefore } from './overridesteps/OverrideListInsertBefore'; -import { OverrideListRemove } from './overridesteps/OverrideListRemove'; -import { OverrideMapEntry } from './overridesteps/OverrideMapEntry'; -import { OverrideParameters } from './overridesteps/OverrideParameters'; +import { IRIS_OO, PREFIX_OO } from '../rdf/Iris.js'; +import { uniqueTypes } from '../rdf/ResourceUtil.js'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import type { IConfigPreprocessor, IConfigPreprocessorTransform } from './IConfigPreprocessor.js'; +import type { IOverrideStep } from './overridesteps/IOverrideStep.js'; +import { OverrideListInsertAfter } from './overridesteps/OverrideListInsertAfter.js'; +import { OverrideListInsertAt } from './overridesteps/OverrideListInsertAt.js'; +import { OverrideListInsertBefore } from './overridesteps/OverrideListInsertBefore.js'; +import { OverrideListRemove } from './overridesteps/OverrideListRemove.js'; +import { OverrideMapEntry } from './overridesteps/OverrideMapEntry.js'; +import { OverrideParameters } from './overridesteps/OverrideParameters.js'; /** * An {@link IConfigPreprocessor} that handles the overriding of parameters. diff --git a/lib/preprocess/GenericsContext.ts b/lib/preprocess/GenericsContext.ts index 8b476ff..a23baaa 100644 --- a/lib/preprocess/GenericsContext.ts +++ b/lib/preprocess/GenericsContext.ts @@ -1,7 +1,7 @@ import type * as RDF from '@rdfjs/types'; import type { Resource, RdfObjectLoader } from 'rdf-object'; -import type { IParamValueConflict } from './parameterproperty/ParameterPropertyHandlerRange'; -import { ParameterPropertyHandlerRange } from './parameterproperty/ParameterPropertyHandlerRange'; +import type { IParamValueConflict } from './parameterproperty/ParameterPropertyHandlerRange.js'; +import { ParameterPropertyHandlerRange } from './parameterproperty/ParameterPropertyHandlerRange.js'; /** * Context for binding generic types to a concrete range value. diff --git a/lib/preprocess/ParameterHandler.ts b/lib/preprocess/ParameterHandler.ts index fabcf91..22fa16d 100644 --- a/lib/preprocess/ParameterHandler.ts +++ b/lib/preprocess/ParameterHandler.ts @@ -1,12 +1,12 @@ import type { RdfObjectLoader, Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../util/ErrorResourcesContext'; -import type { GenericsContext } from './GenericsContext'; -import type { IParameterPropertyHandler } from './parameterproperty/IParameterPropertyHandler'; -import { ParameterPropertyHandlerDefault } from './parameterproperty/ParameterPropertyHandlerDefault'; -import { ParameterPropertyHandlerDefaultScoped } from './parameterproperty/ParameterPropertyHandlerDefaultScoped'; -import { ParameterPropertyHandlerFixed } from './parameterproperty/ParameterPropertyHandlerFixed'; -import { ParameterPropertyHandlerLazy } from './parameterproperty/ParameterPropertyHandlerLazy'; -import { ParameterPropertyHandlerRange } from './parameterproperty/ParameterPropertyHandlerRange'; +import { ErrorResourcesContext } from '../util/ErrorResourcesContext.js'; +import type { GenericsContext } from './GenericsContext.js'; +import type { IParameterPropertyHandler } from './parameterproperty/IParameterPropertyHandler.js'; +import { ParameterPropertyHandlerDefault } from './parameterproperty/ParameterPropertyHandlerDefault.js'; +import { ParameterPropertyHandlerDefaultScoped } from './parameterproperty/ParameterPropertyHandlerDefaultScoped.js'; +import { ParameterPropertyHandlerFixed } from './parameterproperty/ParameterPropertyHandlerFixed.js'; +import { ParameterPropertyHandlerLazy } from './parameterproperty/ParameterPropertyHandlerLazy.js'; +import { ParameterPropertyHandlerRange } from './parameterproperty/ParameterPropertyHandlerRange.js'; /** * Handles component parameters in the context of a config. diff --git a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.ts b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.ts index a027123..3935fb6 100644 --- a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.ts +++ b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerCollectEntries.ts @@ -1,10 +1,10 @@ import type { Resource } from 'rdf-object'; -import { IRIS_RDF } from '../../rdf/Iris'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { GenericsContext } from '../GenericsContext'; -import type { ParameterHandler } from '../ParameterHandler'; -import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import { IRIS_RDF } from '../../rdf/Iris.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { ParameterHandler } from '../ParameterHandler.js'; +import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handler for dynamic key-value pairs via collectEntries. diff --git a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.ts b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.ts index 440900d..f29d7f2 100644 --- a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.ts +++ b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerElements.ts @@ -1,8 +1,8 @@ import type { Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { GenericsContext } from '../GenericsContext'; -import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handler for element definition that represents an array. diff --git a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.ts b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.ts index cc631ab..97d0435 100644 --- a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.ts +++ b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerFields.ts @@ -1,8 +1,8 @@ import type { Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { GenericsContext } from '../GenericsContext'; -import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handler for field definitions that contain key-value pairs to form a hash. diff --git a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.ts b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.ts index 24e6040..159502d 100644 --- a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.ts +++ b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerKeyValue.ts @@ -1,8 +1,8 @@ import type { Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { GenericsContext } from '../GenericsContext'; -import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handler for static key-value entries. diff --git a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.ts b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.ts index 4955f36..d69f266 100644 --- a/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.ts +++ b/lib/preprocess/constructorargumentsmapping/ConstructorArgumentsElementMappingHandlerList.ts @@ -1,7 +1,7 @@ import type { Resource } from 'rdf-object'; -import type { GenericsContext } from '../GenericsContext'; -import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { IConstructorArgumentsElementMappingHandler } from './IConstructorArgumentsElementMappingHandler.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handler for an RDF list. diff --git a/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.ts b/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.ts index 1e523aa..b2a4f40 100644 --- a/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.ts +++ b/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsElementMappingHandler.ts @@ -1,6 +1,6 @@ import type { Resource } from 'rdf-object'; -import type { GenericsContext } from '../GenericsContext'; -import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper'; +import type { GenericsContext } from '../GenericsContext.js'; +import type { IConstructorArgumentsMapper } from './IConstructorArgumentsMapper.js'; /** * Handles a specific type of a constructor argument element. diff --git a/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper.ts b/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper.ts index 14007e9..f134a99 100644 --- a/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper.ts +++ b/lib/preprocess/constructorargumentsmapping/IConstructorArgumentsMapper.ts @@ -1,5 +1,5 @@ import type { RdfObjectLoader, Resource } from 'rdf-object'; -import type { GenericsContext } from '../GenericsContext'; +import type { GenericsContext } from '../GenericsContext.js'; /** * Instances of this interfaces can apply constructor arguments on configs. diff --git a/lib/preprocess/overridesteps/OverrideListInsertAfter.ts b/lib/preprocess/overridesteps/OverrideListInsertAfter.ts index a0c0709..96ee059 100644 --- a/lib/preprocess/overridesteps/OverrideListInsertAfter.ts +++ b/lib/preprocess/overridesteps/OverrideListInsertAfter.ts @@ -1,7 +1,7 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil.js'; /** * Override step that inserts elements in a list after a specific element. diff --git a/lib/preprocess/overridesteps/OverrideListInsertAt.ts b/lib/preprocess/overridesteps/OverrideListInsertAt.ts index 152a154..3dd5786 100644 --- a/lib/preprocess/overridesteps/OverrideListInsertAt.ts +++ b/lib/preprocess/overridesteps/OverrideListInsertAt.ts @@ -1,8 +1,8 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields, getPropertyResourceList } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields, getPropertyResourceList } from './OverrideUtil.js'; /** * Override step that inserts elements in a list at a specific index. diff --git a/lib/preprocess/overridesteps/OverrideListInsertBefore.ts b/lib/preprocess/overridesteps/OverrideListInsertBefore.ts index 42d14f1..8beaceb 100644 --- a/lib/preprocess/overridesteps/OverrideListInsertBefore.ts +++ b/lib/preprocess/overridesteps/OverrideListInsertBefore.ts @@ -1,7 +1,7 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil.js'; /** * Override step that inserts elements in a list before a specific element. diff --git a/lib/preprocess/overridesteps/OverrideListRemove.ts b/lib/preprocess/overridesteps/OverrideListRemove.ts index ab4a94f..d7efb45 100644 --- a/lib/preprocess/overridesteps/OverrideListRemove.ts +++ b/lib/preprocess/overridesteps/OverrideListRemove.ts @@ -1,7 +1,7 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields, findResourceIndex, getPropertyResourceList } from './OverrideUtil.js'; /** * Override step that removes specified elements. diff --git a/lib/preprocess/overridesteps/OverrideMapEntry.ts b/lib/preprocess/overridesteps/OverrideMapEntry.ts index d5efbe2..26378e1 100644 --- a/lib/preprocess/overridesteps/OverrideMapEntry.ts +++ b/lib/preprocess/overridesteps/OverrideMapEntry.ts @@ -1,8 +1,8 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields, getPropertyResourceList } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields, getPropertyResourceList } from './OverrideUtil.js'; /** * Override step that updates an entry in a key/value map. diff --git a/lib/preprocess/overridesteps/OverrideParameters.ts b/lib/preprocess/overridesteps/OverrideParameters.ts index 7788550..58716ee 100644 --- a/lib/preprocess/overridesteps/OverrideParameters.ts +++ b/lib/preprocess/overridesteps/OverrideParameters.ts @@ -1,7 +1,7 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import type { IOverrideStep } from './IOverrideStep'; -import { extractOverrideStepFields } from './OverrideUtil'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import type { IOverrideStep } from './IOverrideStep.js'; +import { extractOverrideStepFields } from './OverrideUtil.js'; /** * Override step that replaces properties of the target object. diff --git a/lib/preprocess/overridesteps/OverrideUtil.ts b/lib/preprocess/overridesteps/OverrideUtil.ts index 0bbb86b..b3593a3 100644 --- a/lib/preprocess/overridesteps/OverrideUtil.ts +++ b/lib/preprocess/overridesteps/OverrideUtil.ts @@ -1,6 +1,6 @@ import type { Resource } from 'rdf-object'; -import { PREFIX_OO } from '../../rdf/Iris'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; +import { PREFIX_OO } from '../../rdf/Iris.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; export const OVERRIDE_STEP_FIELD_NAMES = [ 'parameter', 'target', 'value' ] as const; export type OverrideStepFieldName = `${typeof OVERRIDE_STEP_FIELD_NAMES[number]}s`; diff --git a/lib/preprocess/parameterproperty/IParameterPropertyHandler.ts b/lib/preprocess/parameterproperty/IParameterPropertyHandler.ts index 7344df7..3800fd0 100644 --- a/lib/preprocess/parameterproperty/IParameterPropertyHandler.ts +++ b/lib/preprocess/parameterproperty/IParameterPropertyHandler.ts @@ -1,5 +1,5 @@ import type { Resource } from 'rdf-object'; -import type { GenericsContext } from '../GenericsContext'; +import type { GenericsContext } from '../GenericsContext.js'; /** * Transforms a parameter value based on some kind of parameter property. diff --git a/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefault.ts b/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefault.ts index b7919ce..09d3abb 100644 --- a/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefault.ts +++ b/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefault.ts @@ -1,7 +1,7 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; -import { IRIS_RDF } from '../../rdf/Iris'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IParameterPropertyHandler } from './IParameterPropertyHandler'; +import { IRIS_RDF } from '../../rdf/Iris.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IParameterPropertyHandler } from './IParameterPropertyHandler.js'; /** * If no value has been set, its default value will be set. diff --git a/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefaultScoped.ts b/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefaultScoped.ts index 87ea6f0..469ae48 100644 --- a/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefaultScoped.ts +++ b/lib/preprocess/parameterproperty/ParameterPropertyHandlerDefaultScoped.ts @@ -1,6 +1,6 @@ import type { RdfObjectLoader, Resource } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IParameterPropertyHandler } from './IParameterPropertyHandler'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IParameterPropertyHandler } from './IParameterPropertyHandler.js'; /** * If no value has been set, and a given default-scope applies, its default value will be set. diff --git a/lib/preprocess/parameterproperty/ParameterPropertyHandlerFixed.ts b/lib/preprocess/parameterproperty/ParameterPropertyHandlerFixed.ts index 05fbdaa..2b6f16d 100644 --- a/lib/preprocess/parameterproperty/ParameterPropertyHandlerFixed.ts +++ b/lib/preprocess/parameterproperty/ParameterPropertyHandlerFixed.ts @@ -1,6 +1,6 @@ import type { Resource, RdfObjectLoader } from 'rdf-object'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import type { IParameterPropertyHandler } from './IParameterPropertyHandler'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import type { IParameterPropertyHandler } from './IParameterPropertyHandler.js'; /** * Irrespective of any set values, prepend the parameter's fixed values. diff --git a/lib/preprocess/parameterproperty/ParameterPropertyHandlerLazy.ts b/lib/preprocess/parameterproperty/ParameterPropertyHandlerLazy.ts index 7880b31..1e6232c 100644 --- a/lib/preprocess/parameterproperty/ParameterPropertyHandlerLazy.ts +++ b/lib/preprocess/parameterproperty/ParameterPropertyHandlerLazy.ts @@ -1,5 +1,5 @@ import type { Resource } from 'rdf-object'; -import type { IParameterPropertyHandler } from './IParameterPropertyHandler'; +import type { IParameterPropertyHandler } from './IParameterPropertyHandler.js'; /** * If the parameter is marked as lazy, diff --git a/lib/preprocess/parameterproperty/ParameterPropertyHandlerRange.ts b/lib/preprocess/parameterproperty/ParameterPropertyHandlerRange.ts index 570755b..54ca6de 100644 --- a/lib/preprocess/parameterproperty/ParameterPropertyHandlerRange.ts +++ b/lib/preprocess/parameterproperty/ParameterPropertyHandlerRange.ts @@ -1,10 +1,10 @@ import type { NamedNode } from '@rdfjs/types'; import type { RdfObjectLoader, Resource } from 'rdf-object'; -import { IRIS_RDF, IRIS_XSD } from '../../rdf/Iris'; -import type { IErrorContext } from '../../util/ErrorResourcesContext'; -import { ErrorResourcesContext } from '../../util/ErrorResourcesContext'; -import { GenericsContext } from '../GenericsContext'; -import type { IParameterPropertyHandler } from './IParameterPropertyHandler'; +import { IRIS_RDF, IRIS_XSD } from '../../rdf/Iris.js'; +import type { IErrorContext } from '../../util/ErrorResourcesContext.js'; +import { ErrorResourcesContext } from '../../util/ErrorResourcesContext.js'; +import { GenericsContext } from '../GenericsContext.js'; +import type { IParameterPropertyHandler } from './IParameterPropertyHandler.js'; /** * If a param range is defined, apply the type and validate the range. diff --git a/lib/rdf/PrefetchedDocumentLoader.ts b/lib/rdf/PrefetchedDocumentLoader.ts index 187cf18..86f4da0 100644 --- a/lib/rdf/PrefetchedDocumentLoader.ts +++ b/lib/rdf/PrefetchedDocumentLoader.ts @@ -1,5 +1,4 @@ -import type { IJsonLdContext } from 'jsonld-context-parser'; -import { FetchDocumentLoader } from 'jsonld-context-parser'; +import { FetchDocumentLoader, type IJsonLdContext } from 'jsonld-context-parser'; import semverMajor = require('semver/functions/major'); import type { Logger } from 'winston'; @@ -44,7 +43,7 @@ export class PrefetchedDocumentLoader extends FetchDocumentLoader { this.remoteContextLookups = options.remoteContextLookups; } - public async load(url: string): Promise { + public override async load(url: string): Promise { // Load prefetched contexts if (url in this.contexts) { return this.contexts[url]; diff --git a/lib/rdf/RdfParser.ts b/lib/rdf/RdfParser.ts index 7edc3af..46c6578 100644 --- a/lib/rdf/RdfParser.ts +++ b/lib/rdf/RdfParser.ts @@ -1,13 +1,10 @@ -import { createReadStream } from 'fs'; +import { createReadStream, promises as fs } from 'fs'; import type { Readable } from 'stream'; import type * as RDF from '@rdfjs/types'; -import type { ParseOptions } from 'rdf-parse'; -import rdfParser from 'rdf-parse'; +import { rdfParser, type ParseOptions } from 'rdf-parse'; import type { Logger } from 'winston'; -import { PrefetchedDocumentLoader } from './PrefetchedDocumentLoader'; -import { RdfStreamIncluder } from './RdfStreamIncluder'; -// Import syntax only works in Node > 12 -const fs = require('fs').promises; +import { PrefetchedDocumentLoader } from './PrefetchedDocumentLoader.js'; +import { RdfStreamIncluder } from './RdfStreamIncluder.js'; /** * Parses a data stream to a triple stream. diff --git a/lib/rdf/RdfStreamIncluder.ts b/lib/rdf/RdfStreamIncluder.ts index 067e1ff..ba05bf4 100644 --- a/lib/rdf/RdfStreamIncluder.ts +++ b/lib/rdf/RdfStreamIncluder.ts @@ -1,11 +1,11 @@ -import Path = require('path'); +import Path from 'path'; import type { Readable, TransformCallback } from 'stream'; import { Transform } from 'stream'; import type * as RDF from '@rdfjs/types'; import { getNamedNodes, getTerms } from 'rdf-terms'; -import { IRIS_RDFS } from './Iris'; -import { RdfParser } from './RdfParser'; -import type { RdfParserOptions } from './RdfParser'; +import { IRIS_RDFS } from './Iris.js'; +import { RdfParser } from './RdfParser.js'; +import type { RdfParserOptions } from './RdfParser.js'; /** * A RdfStreamIncluder takes a triple stream and detects owl:includes to automatically include other files. @@ -21,14 +21,14 @@ export class RdfStreamIncluder extends Transform { this.parserOptions = parserOptions; } - public _transform(quad: RDF.Quad, encoding: string, callback: TransformCallback): boolean { + public override _transform(quad: RDF.Quad, encoding: string, callback: TransformCallback): boolean { this.handleImports(quad); this.validateIris(quad); callback(null, quad); return true; } - public _flush(callback: TransformCallback): void { + public override _flush(callback: TransformCallback): void { if (--this.runningImporters === 0) { // eslint-disable-next-line callback-return callback(); diff --git a/lib/util/CompileUtil.ts b/lib/util/CompileUtil.ts index 249e2df..f87e2ad 100644 --- a/lib/util/CompileUtil.ts +++ b/lib/util/CompileUtil.ts @@ -1,5 +1,6 @@ -import { ComponentsManager } from '../ComponentsManager'; -import { ConstructionStrategyCommonJsString } from '../construction/strategy/ConstructionStrategyCommonJsString'; +import { ComponentsManager } from '../ComponentsManager.js'; +import { ConstructionStrategyCommonJsString } from '../construction/strategy/ConstructionStrategyCommonJsString.js'; +import { ConstructionStrategyESMString } from '../construction/strategy/ConstructionStrategyEsmString.js'; /** * Compile a configuration stream to a JavaScript source file. @@ -19,9 +20,12 @@ export async function compileConfig( exportVariableName?: string, asFunction?: boolean, skipContextValidation?: boolean, + asEsm?: boolean, ): Promise { // Set up the components manager - const constructionStrategy = new ConstructionStrategyCommonJsString({ asFunction, req: require }); + const constructionStrategy = asEsm ? + new ConstructionStrategyESMString({ asFunction }) : + new ConstructionStrategyCommonJsString({ asFunction, req: require }); const manager = await ComponentsManager.build({ mainModulePath, constructionStrategy, diff --git a/lib/util/ErrorResourcesContext.ts b/lib/util/ErrorResourcesContext.ts index e080918..e6dc2c1 100644 --- a/lib/util/ErrorResourcesContext.ts +++ b/lib/util/ErrorResourcesContext.ts @@ -1,5 +1,5 @@ import { Resource } from 'rdf-object'; -import type { IParamValueConflict } from '../preprocess/parameterproperty/ParameterPropertyHandlerRange'; +import type { IParamValueConflict } from '../preprocess/parameterproperty/ParameterPropertyHandlerRange.js'; /** * An error that can include a context containing resources for display. diff --git a/package.json b/package.json index 1420a7f..bc64494 100644 --- a/package.json +++ b/package.json @@ -5,9 +5,23 @@ "lsd:contexts": { "https://linkedsoftwaredependencies.org/bundles/npm/componentsjs/^5.0.0/components/context.jsonld": "components/context.jsonld" }, - "main": "index.js", + "main": "cjs/index.js", + "module": "esm/index.js", + "types": "esm/index.d.ts", + "exports": { + ".": { + "import": { + "default": "./esm/index.js", + "types": "./esm/index.d.ts" + }, + "require": { + "default": "./cjs/index.js", + "types": "./esm/index.d.ts" + } + } + }, "bin": { - "componentsjs-compile-config": "./bin/compile-config.js" + "componentsjs-compile-config": "./cjs/bin/compile-config.js" }, "typings": "index", "repository": "https://github.com/LinkedSoftwareDependencies/Components.js", @@ -21,14 +35,18 @@ "license": "MIT", "packageManager": "yarn@4.0.1", "scripts": { + "build:esm": "tsc", + "build:cjs": "babel lib --out-dir cjs/lib --extensions .ts --out-file-extension .cjs && tsc --emitDeclarationOnly --outDir cjs", + "build:ts": "yarn run build:esm and yarn run build:cjs", "test": "yarn test:jest", "test:jest": "jest", "test:webpack": "yarn test:webpack:node && yarn test:webpack:web", "test:webpack:node": "webpack -c test/webpack/webpack.config.js && node test/webpack/build/test.min.js", "test:webpack:web": "webpack -c test/webpack/webpack.config-web.js && node test/webpack/build-web/test.min.js", "test-watch": "jest --watch", - "build": "scopy ./components/context.jsonld ./components/context.json && tsc && chmod +x ./bin/compile-config.js", + "build": "scopy ./components/context.jsonld ./components/context.json && yarn run build:ts && chmod +x ./bin/compile-config.js", "build-watch": "tsc --watch", + "build:tsc": "tsc", "lint": "eslint . --ext .ts --cache", "validate": "yarn info", "prepare": "yarn build", @@ -43,7 +61,7 @@ "minimist": "^1.2.0", "rdf-data-factory": "^1.1.0", "rdf-object": "^1.14.0", - "rdf-parse": "^2.0.0", + "rdf-parse": "^3.0.0", "rdf-quad": "^1.5.0", "rdf-string": "^1.6.0", "rdf-terms": "^1.7.0", @@ -51,12 +69,19 @@ "winston": "^3.3.3" }, "devDependencies": { + "@babel/cli": "^7.25.6", + "@babel/core": "^7.25.2", + "@babel/preset-env": "^7.25.4", + "@babel/preset-typescript": "^7.24.7", "@rubensworks/eslint-config": "^1.0.1", + "@types/babel__core": "^7", + "@types/babel__preset-env": "^7", "@types/jest": "^29.0.0", "@types/stream-to-array": "^2.3.0", "@types/streamify-string": "^1.0.0", "@typescript-eslint/eslint-plugin": "^5.0.0", "@typescript-eslint/parser": "^5.0.0", + "babel-plugin-add-import-extension": "^1.6.0", "eslint": "^7.12.1", "eslint-config-es": "3.25.3", "eslint-import-resolver-typescript": "^2.3.0", @@ -76,8 +101,9 @@ "stream-to-array": "^2.3.0", "streamify-string": "^1.0.1", "ts-jest": "^29.1.0", + "ts-jest-resolver": "^2.0.1", "ts-loader": "^9.4.1", - "typescript": "^5.0.0", + "typescript": "^5.5.4", "webpack": "^5.75.0", "webpack-cli": "^5.0.0" }, @@ -120,6 +146,8 @@ "lines": 100, "statements": 100 } - } - } + }, + "resolver": "ts-jest-resolver" + }, + "type": "module" } diff --git a/test/unit/loading/ComponentsManager-test.ts b/test/unit/loading/ComponentsManager-test.ts index 0022aff..2b8102e 100644 --- a/test/unit/loading/ComponentsManager-test.ts +++ b/test/unit/loading/ComponentsManager-test.ts @@ -9,6 +9,10 @@ import { ConfigRegistry } from '../../../lib/loading/ConfigRegistry'; import type { IModuleState } from '../../../lib/loading/ModuleStateBuilder'; import { ErrorResourcesContext } from '../../../lib/util/ErrorResourcesContext'; +jest.mock('fs', () => ({ + __esModule: true, // this property makes it work + ...jest.requireActual('fs') +})); jest.spyOn(fs, 'writeFileSync'); mocked(fs.writeFileSync).mockReturnValue(); jest.mock('../../../lib/loading/ComponentsManagerBuilder', () => ({ diff --git a/tsconfig.json b/tsconfig.json index 49fee6d..cd3048c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,20 +1,26 @@ { "compilerOptions": { - "module": "commonjs", - "lib": [ - "es6", - "es2019", - "dom", - "esnext.asynciterable" - ], - "target": "es2017", - "noImplicitAny": true, - "removeComments": false, - "preserveConstEnums": true, + "target": "ESNext", + "outDir": "esm", + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "skipLibCheck": true, + "module": "NodeNext", + // "lib": [ + // "es6", + // "es2019", + // "dom", + // "esnext.asynciterable" + // ], + // "target": "es2017", + // "noImplicitAny": true, + // "removeComments": false, + // "preserveConstEnums": true, "sourceMap": true, "declaration": true, - "strict": true, - "resolveJsonModule": true + // "strict": true, + // "skipLibCheck": true }, "include": [ "index.ts", diff --git a/yarn.lock b/yarn.lock index c040a0d..90da75f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24,6 +24,33 @@ __metadata: languageName: node linkType: hard +"@babel/cli@npm:^7.25.6": + version: 7.25.6 + resolution: "@babel/cli@npm:7.25.6" + dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.25" + "@nicolo-ribaudo/chokidar-2": "npm:2.1.8-no-fsevents.3" + chokidar: "npm:^3.6.0" + commander: "npm:^6.2.0" + convert-source-map: "npm:^2.0.0" + fs-readdir-recursive: "npm:^1.1.0" + glob: "npm:^7.2.0" + make-dir: "npm:^2.1.0" + slash: "npm:^2.0.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + dependenciesMeta: + "@nicolo-ribaudo/chokidar-2": + optional: true + chokidar: + optional: true + bin: + babel: ./bin/babel.js + babel-external-helpers: ./bin/babel-external-helpers.js + checksum: 861d3c2ed6c47b25a322c2f6127f56783d8d333fc2d02d3815f86301fe1102eca5f61b8a5c8610a6a2872d1ccfce24fd6d4a91f4f73536e43b8e2f28f9dcf5ed + languageName: node + linkType: hard + "@babel/code-frame@npm:7.12.11": version: 7.12.11 resolution: "@babel/code-frame@npm:7.12.11" @@ -52,6 +79,16 @@ __metadata: languageName: node linkType: hard +"@babel/code-frame@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/code-frame@npm:7.24.7" + dependencies: + "@babel/highlight": "npm:^7.24.7" + picocolors: "npm:^1.0.0" + checksum: ab0af539473a9f5aeaac7047e377cb4f4edd255a81d84a76058595f8540784cc3fbe8acf73f1e073981104562490aabfb23008cd66dc677a456a4ed5390fdde6 + languageName: node + linkType: hard + "@babel/compat-data@npm:^7.16.4": version: 7.17.0 resolution: "@babel/compat-data@npm:7.17.0" @@ -59,6 +96,13 @@ __metadata: languageName: node linkType: hard +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.2, @babel/compat-data@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/compat-data@npm:7.25.4" + checksum: 50d79734d584a28c69d6f5b99adfaa064d0f41609a378aef04eb06accc5b44f8520e68549eba3a082478180957b7d5783f1bfb1672e4ae8574e797ce8bae79fa + languageName: node + linkType: hard + "@babel/compat-data@npm:^7.22.9": version: 7.23.5 resolution: "@babel/compat-data@npm:7.23.5" @@ -112,6 +156,29 @@ __metadata: languageName: node linkType: hard +"@babel/core@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/core@npm:7.25.2" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.24.7" + "@babel/generator": "npm:^7.25.0" + "@babel/helper-compilation-targets": "npm:^7.25.2" + "@babel/helper-module-transforms": "npm:^7.25.2" + "@babel/helpers": "npm:^7.25.0" + "@babel/parser": "npm:^7.25.0" + "@babel/template": "npm:^7.25.0" + "@babel/traverse": "npm:^7.25.2" + "@babel/types": "npm:^7.25.2" + convert-source-map: "npm:^2.0.0" + debug: "npm:^4.1.0" + gensync: "npm:^1.0.0-beta.2" + json5: "npm:^2.2.3" + semver: "npm:^6.3.1" + checksum: a425fa40e73cb72b6464063a57c478bc2de9dbcc19c280f1b55a3d88b35d572e87e8594e7d7b4880331addb6faef641bbeb701b91b41b8806cd4deae5d74f401 + languageName: node + linkType: hard + "@babel/eslint-parser@npm:^7.12.16": version: 7.17.0 resolution: "@babel/eslint-parser@npm:7.17.0" @@ -149,6 +216,37 @@ __metadata: languageName: node linkType: hard +"@babel/generator@npm:^7.25.0, @babel/generator@npm:^7.25.6": + version: 7.25.6 + resolution: "@babel/generator@npm:7.25.6" + dependencies: + "@babel/types": "npm:^7.25.6" + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + jsesc: "npm:^2.5.1" + checksum: f89282cce4ddc63654470b98086994d219407d025497f483eb03ba102086e11e2b685b27122f6ff2e1d93b5b5fa0c3a6b7e974fbf2e4a75b685041a746a4291e + languageName: node + linkType: hard + +"@babel/helper-annotate-as-pure@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-annotate-as-pure@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + checksum: 4679f7df4dffd5b3e26083ae65228116c3da34c3fff2c11ae11b259a61baec440f51e30fd236f7a0435b9d471acd93d0bc5a95df8213cbf02b1e083503d81b9a + languageName: node + linkType: hard + +"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 0ed84abf848c79fb1cd4c1ddac12c771d32c1904d87fc3087f33cfdeb0c2e0db4e7892b74b407d9d8d0c000044f3645a7391a781f788da8410c290bb123a1f13 + languageName: node + linkType: hard + "@babel/helper-compilation-targets@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-compilation-targets@npm:7.16.7" @@ -176,6 +274,64 @@ __metadata: languageName: node linkType: hard +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7, @babel/helper-compilation-targets@npm:^7.24.8, @babel/helper-compilation-targets@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/helper-compilation-targets@npm:7.25.2" + dependencies: + "@babel/compat-data": "npm:^7.25.2" + "@babel/helper-validator-option": "npm:^7.24.8" + browserslist: "npm:^4.23.1" + lru-cache: "npm:^5.1.1" + semver: "npm:^6.3.1" + checksum: de10e986b5322c9f807350467dc845ec59df9e596a5926a3b5edbb4710d8e3b8009d4396690e70b88c3844fe8ec4042d61436dd4b92d1f5f75655cf43ab07e99 + languageName: node + linkType: hard + +"@babel/helper-create-class-features-plugin@npm:^7.24.7, @babel/helper-create-class-features-plugin@npm:^7.25.0, @babel/helper-create-class-features-plugin@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/helper-create-class-features-plugin@npm:7.25.4" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + "@babel/helper-member-expression-to-functions": "npm:^7.24.8" + "@babel/helper-optimise-call-expression": "npm:^7.24.7" + "@babel/helper-replace-supers": "npm:^7.25.0" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" + "@babel/traverse": "npm:^7.25.4" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: a765d9e0482e13cf96642fa8aa28e6f7d4d7d39f37840d6246e5e10a7c47f47c52d52522edd3073f229449d17ec0db6f9b7b5e398bff6bb0b4994d65957a164c + languageName: node + linkType: hard + +"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.24.7, @babel/helper-create-regexp-features-plugin@npm:^7.25.0, @babel/helper-create-regexp-features-plugin@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.25.2" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + regexpu-core: "npm:^5.3.1" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 85a7e3639c118856fb1113f54fb7e3bf7698171ddfd0cd6fccccd5426b3727bc1434fe7f69090441dcde327feef9de917e00d35e47ab820047057518dd675317 + languageName: node + linkType: hard + +"@babel/helper-define-polyfill-provider@npm:^0.6.2": + version: 0.6.2 + resolution: "@babel/helper-define-polyfill-provider@npm:0.6.2" + dependencies: + "@babel/helper-compilation-targets": "npm:^7.22.6" + "@babel/helper-plugin-utils": "npm:^7.22.5" + debug: "npm:^4.1.1" + lodash.debounce: "npm:^4.0.8" + resolve: "npm:^1.14.2" + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: f777fe0ee1e467fdaaac059c39ed203bdc94ef2465fb873316e9e1acfc511a276263724b061e3b0af2f6d7ad3ff174f2bb368fde236a860e0f650fda43d7e022 + languageName: node + linkType: hard + "@babel/helper-environment-visitor@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-environment-visitor@npm:7.16.7" @@ -240,6 +396,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-member-expression-to-functions@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-member-expression-to-functions@npm:7.24.8" + dependencies: + "@babel/traverse": "npm:^7.24.8" + "@babel/types": "npm:^7.24.8" + checksum: 7e14a5acc91f6cd26305a4441b82eb6f616bd70b096a4d2099a968f16b26d50207eec0b9ebfc466fefd62bd91587ac3be878117cdfec819b7151911183cb0e5a + languageName: node + linkType: hard + "@babel/helper-module-imports@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-module-imports@npm:7.16.7" @@ -258,6 +424,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-imports@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-module-imports@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 97c57db6c3eeaea31564286e328a9fb52b0313c5cfcc7eee4bc226aebcf0418ea5b6fe78673c0e4a774512ec6c86e309d0f326e99d2b37bfc16a25a032498af0 + languageName: node + linkType: hard + "@babel/helper-module-transforms@npm:^7.16.7": version: 7.17.6 resolution: "@babel/helper-module-transforms@npm:7.17.6" @@ -289,6 +465,29 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-transforms@npm:^7.24.7, @babel/helper-module-transforms@npm:^7.24.8, @babel/helper-module-transforms@npm:^7.25.0, @babel/helper-module-transforms@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/helper-module-transforms@npm:7.25.2" + dependencies: + "@babel/helper-module-imports": "npm:^7.24.7" + "@babel/helper-simple-access": "npm:^7.24.7" + "@babel/helper-validator-identifier": "npm:^7.24.7" + "@babel/traverse": "npm:^7.25.2" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: adaa15970ace0aee5934b5a633789b5795b6229c6a9cf3e09a7e80aa33e478675eee807006a862aa9aa517935d81f88a6db8a9f5936e3a2a40ec75f8062bc329 + languageName: node + linkType: hard + +"@babel/helper-optimise-call-expression@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-optimise-call-expression@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + checksum: ca6a9884705dea5c95a8b3ce132d1e3f2ae951ff74987d400d1d9c215dae9c0f9e29924d8f8e131e116533d182675bc261927be72f6a9a2968eaeeaa51eb1d0f + languageName: node + linkType: hard + "@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.8.0": version: 7.16.7 resolution: "@babel/helper-plugin-utils@npm:7.16.7" @@ -296,6 +495,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.24.8 + resolution: "@babel/helper-plugin-utils@npm:7.24.8" + checksum: 0376037f94a3bfe6b820a39f81220ac04f243eaee7193774b983e956c1750883ff236b30785795abbcda43fac3ece74750566830c2daa4d6e3870bb0dff34c2d + languageName: node + linkType: hard + "@babel/helper-plugin-utils@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-plugin-utils@npm:7.22.5" @@ -303,6 +509,32 @@ __metadata: languageName: node linkType: hard +"@babel/helper-remap-async-to-generator@npm:^7.24.7, @babel/helper-remap-async-to-generator@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/helper-remap-async-to-generator@npm:7.25.0" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + "@babel/helper-wrap-function": "npm:^7.25.0" + "@babel/traverse": "npm:^7.25.0" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 0d17b5f7bb6a607edc9cc62fff8056dd9f341bf2f919884f97b99170d143022a5e7ae57922c4891e4fc360ad291e708d2f8cd8989f1d3cd7a17600159984f5a6 + languageName: node + linkType: hard + +"@babel/helper-replace-supers@npm:^7.24.7, @babel/helper-replace-supers@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/helper-replace-supers@npm:7.25.0" + dependencies: + "@babel/helper-member-expression-to-functions": "npm:^7.24.8" + "@babel/helper-optimise-call-expression": "npm:^7.24.7" + "@babel/traverse": "npm:^7.25.0" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: b4b6650ab3d56c39a259367cd97f8df2f21c9cebb3716fea7bca40a150f8847bfb82f481e98927c7c6579b48a977b5a8f77318a1c6aeb497f41ecd6dbc3fdfef + languageName: node + linkType: hard + "@babel/helper-simple-access@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-simple-access@npm:7.16.7" @@ -321,6 +553,26 @@ __metadata: languageName: node linkType: hard +"@babel/helper-simple-access@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-simple-access@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 7230e419d59a85f93153415100a5faff23c133d7442c19e0cd070da1784d13cd29096ee6c5a5761065c44e8164f9f80e3a518c41a0256df39e38f7ad6744fed7 + languageName: node + linkType: hard + +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: e3a9b8ac9c262ac976a1bcb5fe59694db5e6f0b4f9e7bdba5c7693b8b5e28113c23bdaa60fe8d3ec32a337091b67720b2053bcb3d5655f5406536c3d0584242b + languageName: node + linkType: hard + "@babel/helper-split-export-declaration@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-split-export-declaration@npm:7.16.7" @@ -346,6 +598,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-string-parser@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-string-parser@npm:7.24.8" + checksum: 6361f72076c17fabf305e252bf6d580106429014b3ab3c1f5c4eb3e6d465536ea6b670cc0e9a637a77a9ad40454d3e41361a2909e70e305116a23d68ce094c08 + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-validator-identifier@npm:7.16.7" @@ -360,6 +619,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-validator-identifier@npm:7.24.7" + checksum: 87ad608694c9477814093ed5b5c080c2e06d44cb1924ae8320474a74415241223cc2a725eea2640dd783ff1e3390e5f95eede978bc540e870053152e58f1d651 + languageName: node + linkType: hard + "@babel/helper-validator-option@npm:^7.16.7": version: 7.16.7 resolution: "@babel/helper-validator-option@npm:7.16.7" @@ -374,6 +640,24 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-option@npm:^7.24.7, @babel/helper-validator-option@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-validator-option@npm:7.24.8" + checksum: 73db93a34ae89201351288bee7623eed81a54000779462a986105b54ffe82069e764afd15171a428b82e7c7a9b5fec10b5d5603b216317a414062edf5c67a21f + languageName: node + linkType: hard + +"@babel/helper-wrap-function@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/helper-wrap-function@npm:7.25.0" + dependencies: + "@babel/template": "npm:^7.25.0" + "@babel/traverse": "npm:^7.25.0" + "@babel/types": "npm:^7.25.0" + checksum: d54601a98384c191cbc1ff07b03a19e288ef8d5c6bfafe270b2a303d96e7304eb296002921ed464cc1b105a547d1db146eb86b0be617924dee1ba1b379cdc216 + languageName: node + linkType: hard + "@babel/helpers@npm:^7.17.2": version: 7.17.2 resolution: "@babel/helpers@npm:7.17.2" @@ -385,208 +669,1150 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/helpers@npm:7.23.5" +"@babel/helpers@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/helpers@npm:7.23.5" + dependencies: + "@babel/template": "npm:^7.22.15" + "@babel/traverse": "npm:^7.23.5" + "@babel/types": "npm:^7.23.5" + checksum: a37e2728eb4378a4888e5d614e28de7dd79b55ac8acbecd0e5c761273e2a02a8f33b34b1932d9069db55417ace2937cbf8ec37c42f1030ce6d228857d7ccaa4f + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.25.0": + version: 7.25.6 + resolution: "@babel/helpers@npm:7.25.6" + dependencies: + "@babel/template": "npm:^7.25.0" + "@babel/types": "npm:^7.25.6" + checksum: 448c1cdabccca42fd97a252f73f1e4bcd93776dbf24044f3b4f49b756bf2ece73ee6df05177473bb74ea7456dddd18d6f481e4d96d2cc7839d078900d48c696c + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.16.7": + version: 7.16.10 + resolution: "@babel/highlight@npm:7.16.10" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.16.7" + chalk: "npm:^2.0.0" + js-tokens: "npm:^4.0.0" + checksum: 0ec2007a1fbd826f4433daded828a65b824fa653c65c57d7a45aea161636994099db8c071a7a4e0844c2a2cec3aeaea62359f4b8b907f9cae7e440693af65331 + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.23.4": + version: 7.23.4 + resolution: "@babel/highlight@npm:7.23.4" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.22.20" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + checksum: fbff9fcb2f5539289c3c097d130e852afd10d89a3a08ac0b5ebebbc055cc84a4bcc3dcfed463d488cde12dd0902ef1858279e31d7349b2e8cee43913744bda33 + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/highlight@npm:7.24.7" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.24.7" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 674334c571d2bb9d1c89bdd87566383f59231e16bcdcf5bb7835babdf03c9ae585ca0887a7b25bdf78f303984af028df52831c7989fecebb5101cc132da9393a + languageName: node + linkType: hard + +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.7, @babel/parser@npm:^7.17.3": + version: 7.17.3 + resolution: "@babel/parser@npm:7.17.3" + bin: + parser: ./bin/babel-parser.js + checksum: 677edc6607da457bbe2b4ea4622c667b521d80ae9bfb40314e99e96f235cd076e7ea721a781f330472fc39bc3cba871d00a701da691d35e1039d6b72d2d1e555 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.6": + version: 7.25.6 + resolution: "@babel/parser@npm:7.25.6" + dependencies: + "@babel/types": "npm:^7.25.6" + bin: + parser: ./bin/babel-parser.js + checksum: f88a0e895dbb096fd37c4527ea97d12b5fc013720602580a941ac3a339698872f0c911e318c292b184c36b5fbe23b612f05aff9d24071bc847c7b1c21552c41d + languageName: node + linkType: hard + +"@babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/parser@npm:7.23.5" + bin: + parser: ./bin/babel-parser.js + checksum: 3356aa90d7bafb4e2c7310e7c2c3d443c4be4db74913f088d3d577a1eb914ea4188e05fd50a47ce907a27b755c4400c4e3cbeee73dbeb37761f6ca85954f5a20 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.3": + version: 7.25.3 + resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/traverse": "npm:^7.25.3" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 814b4d3f102e7556a5053d1acf57ef601cfcff39a2c81b8cdc6a5c842e3cb9838f5925d1466a5f1e6416e74c9c83586a3c07fbd7fb8610a396c2becdf9ae5790 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 9645a1f47b3750acadb1353c02e71cc712d072aafe5ce115ed3a886bc14c5d9200cfb0b5b5e60e813baa549b800cf798f8714019fd246c699053cf68c428e426 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: ed1ce1c90cac46c01825339fd0f2a96fa071b016fb819d8dfaf8e96300eae30e74870cb47e4dc80d4ce2fb287869f102878b4f3b35bc927fec8b1d0d76bcf612 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" + "@babel/plugin-transform-optional-chaining": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.13.0 + checksum: aeb6e7aa363a47f815cf956ea1053c5dd8b786a17799f065c9688ba4b0051fe7565d258bbe9400bfcbfb3114cb9fda66983e10afe4d750bc70ff75403e15dd36 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/traverse": "npm:^7.25.0" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 45988025537a9d4a27b610fd696a18fd9ba9336621a69b4fb40560eeb10c79657f85c92a37f30c7c8fb29c22970eea0b373315795a891f1a05549a6cfe5a6bfe + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2": + version: 7.21.0-placeholder-for-preset-env.2 + resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e605e0070da087f6c35579499e65801179a521b6842c15181a1e305c04fded2393f11c1efd09b087be7f8b083d1b75e8f3efcbc1292b4f60d3369e14812cff63 + languageName: node + linkType: hard + +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 + languageName: node + linkType: hard + +"@babel/plugin-syntax-bigint@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.12.13, @babel/plugin-syntax-class-properties@npm:^7.8.3": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.12.13" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371 + languageName: node + linkType: hard + +"@babel/plugin-syntax-dynamic-import@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9c50927bf71adf63f60c75370e2335879402648f468d0172bc912e303c6a3876927d8eb35807331b57f415392732ed05ab9b42c68ac30a936813ab549e0246c5 + languageName: node + linkType: hard + +"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5100d658ba563829700cd8d001ddc09f4c0187b1a13de300d729c5b3e87503f75a6d6c99c1794182f7f1a9f546ee009df4f15a0ce36376e206ed0012fa7cdc24 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-assertions@npm:^7.24.7": + version: 7.25.6 + resolution: "@babel/plugin-syntax-import-assertions@npm:7.25.6" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 55afa63b1b1355bcc1d85a9ad9d2c78983e27beee38e232d5c1ab59eac39127ce3c3817d6686e3ab1d0aff5edd8e38a6852885c65d3e518accdd183a445ef411 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-attributes@npm:^7.24.7": + version: 7.25.6 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.25.6" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0e9359cf2d117476310961dfcfd7204ed692e933707da10d6194153d3996cd2ea5b7635fc90d720dce3612083af89966bb862561064a509c350320dc98644751 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-meta@npm:^7.10.4, @babel/plugin-syntax-import-meta@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e + languageName: node + linkType: hard + +"@babel/plugin-syntax-jsx@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f44d927a9ae8d5ef016ff5b450e1671e56629ddc12e56b938e41fd46e141170d9dfc9a53d6cb2b9a20a7dd266a938885e6a3981c60c052a2e1daed602ac80e51 + languageName: node + linkType: hard + +"@babel/plugin-syntax-jsx@npm:^7.7.2": + version: 7.23.3 + resolution: "@babel/plugin-syntax-jsx@npm:7.23.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.22.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 563bb7599b868773f1c7c1d441ecc9bc53aeb7832775da36752c926fc402a1fa5421505b39e724f71eb217c13e4b93117e081cac39723b0e11dac4c897f33c3e + languageName: node + linkType: hard + +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4, @babel/plugin-syntax-logical-assignment-operators@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4, @babel/plugin-syntax-numeric-separator@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 + languageName: node + linkType: hard + +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3 + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5, @babel/plugin-syntax-top-level-await@npm:^7.8.3": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.24.7": + version: 7.25.4 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 199919d44c73e5edee9ffd311cf638f88d26a810189e32d338c46c7600441fd5c4a2e431f9be377707cbf318410895304e90b83bf8d9011d205150fa7f260e63 + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.7.2": + version: 7.16.7 + resolution: "@babel/plugin-syntax-typescript@npm:7.16.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.16.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8eb1dbc06511035293d1af8172be5edec8d80e1a5c908258a1abd4fccb18879cdbae31e8ff813b310e4598a0a5484ebe0b686d50a0e820c17ed518bdca8c1af9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6" + dependencies: + "@babel/helper-create-regexp-features-plugin": "npm:^7.18.6" + "@babel/helper-plugin-utils": "npm:^7.18.6" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 9144e5b02a211a4fb9a0ce91063f94fbe1004e80bde3485a0910c9f14897cf83fabd8c21267907cff25db8e224858178df0517f14333cfcf3380ad9a4139cb50 + languageName: node + linkType: hard + +"@babel/plugin-transform-arrow-functions@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6ac05a54e5582f34ac6d5dc26499e227227ec1c7fa6fc8de1f3d40c275f140d3907f79bbbd49304da2d7008a5ecafb219d0b71d78ee3290ca22020d878041245 + languageName: node + linkType: hard + +"@babel/plugin-transform-async-generator-functions@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/plugin-transform-async-generator-functions@npm:7.25.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-remap-async-to-generator": "npm:^7.25.0" + "@babel/plugin-syntax-async-generators": "npm:^7.8.4" + "@babel/traverse": "npm:^7.25.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: efed6f6be90b25ad77c15a622a0dc0b22dbf5d45599c207ab8fbc4e959aef21f574fa467d9cf872e45de664a46c32334e78dee2332d82f5f27e26249a34a0920 + languageName: node + linkType: hard + +"@babel/plugin-transform-async-to-generator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.24.7" + dependencies: + "@babel/helper-module-imports": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-remap-async-to-generator": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 83c82e243898875af8457972a26ab29baf8a2078768ee9f35141eb3edff0f84b165582a2ff73e90a9e08f5922bf813dbf15a85c1213654385198f4591c0dc45d + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoped-functions@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 113e86de4612ae91773ff5cb6b980f01e1da7e26ae6f6012127415d7ae144e74987bc23feb97f63ba4bc699331490ddea36eac004d76a20d5369e4cc6a7f61cd + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoping@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-transform-block-scoping@npm:7.25.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 382931c75a5d0ea560387e76cb57b03461300527e4784efcb2fb62f36c1eb0ab331327b6034def256baa0cad9050925a61f9c0d56261b6afd6a29c3065fb0bd4 + languageName: node + linkType: hard + +"@babel/plugin-transform-class-properties@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/plugin-transform-class-properties@npm:7.25.4" + dependencies: + "@babel/helper-create-class-features-plugin": "npm:^7.25.4" + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0b41bc8a5920d3d17c7c06220b601cf43e0a32ac34f05f05cd0cdf08915e4521b1b707cb1e60942b4fc68a5dfac09f0444a8720e0c72ce76fb039e8ec5263115 + languageName: node + linkType: hard + +"@babel/plugin-transform-class-static-block@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-class-static-block@npm:7.24.7" + dependencies: + "@babel/helper-create-class-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.12.0 + checksum: b0ade39a3d09dce886f79dbd5907c3d99b48167eddb6b9bbde24a0598129654d7017e611c20494cdbea48b07ac14397cd97ea34e3754bbb2abae4e698128eccb + languageName: node + linkType: hard + +"@babel/plugin-transform-classes@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/plugin-transform-classes@npm:7.25.4" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + "@babel/helper-compilation-targets": "npm:^7.25.2" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-replace-supers": "npm:^7.25.0" + "@babel/traverse": "npm:^7.25.4" + globals: "npm:^11.1.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c68424d9dd64860825111aa4a4ed5caf29494b7a02ddb9c36351d768c41e8e05127d89274795cdfcade032d9d299e6c677418259df58c71e68f1741583dcf467 + languageName: node + linkType: hard + +"@babel/plugin-transform-computed-properties@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-computed-properties@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/template": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 25636dbc1f605c0b8bc60aa58628a916b689473d11551c9864a855142e36742fe62d4a70400ba3b74902338e77fb3d940376c0a0ba154b6b7ec5367175233b49 + languageName: node + linkType: hard + +"@babel/plugin-transform-destructuring@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-destructuring@npm:7.24.8" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 804968c1d5f5072c717505296c1e5d5ec33e90550423de66de82bbcb78157156e8470bbe77a04ab8c710a88a06360a30103cf223ac7eff4829adedd6150de5ce + languageName: node + linkType: hard + +"@babel/plugin-transform-dotall-regex@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.24.7" + dependencies: + "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 793f14c9494972d294b7e7b97b747f47874b6d57d7804d3443c701becf5db192c9311be6a1835c07664486df1f5c60d33196c36fb7e11a53015e476b4c145b33 + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-keys@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 75ff7ec1117ac500e77bf20a144411d39c0fdd038f108eec061724123ce6d1bb8d5bd27968e466573ee70014f8be0043361cdb0ef388f8a182d1d97ad67e51b9 + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.0" + dependencies: + "@babel/helper-create-regexp-features-plugin": "npm:^7.25.0" + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 1c9b57ddd9b33696e88911d0e7975e1573ebc46219c4b30eb1dc746cbb71aedfac6f6dab7fdfdec54dd58f31468bf6ab56b157661ea4ffe58f906d71f89544c8 + languageName: node + linkType: hard + +"@babel/plugin-transform-dynamic-import@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-dynamic-import@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: eeda48372efd0a5103cb22dadb13563c975bce18ae85daafbb47d57bb9665d187da9d4fe8d07ac0a6e1288afcfcb73e4e5618bf75ff63fddf9736bfbf225203b + languageName: node + linkType: hard + +"@babel/plugin-transform-exponentiation-operator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.24.7" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ace3e11c94041b88848552ba8feb39ae4d6cad3696d439ff51445bd2882d8b8775d85a26c2c0edb9b5e38c9e6013cc11b0dea89ec8f93c7d9d7ee95e3645078c + languageName: node + linkType: hard + +"@babel/plugin-transform-export-namespace-from@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-export-namespace-from@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-export-namespace-from": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4e144d7f1c57bc63b4899dbbbdfed0880f2daa75ea9c7251c7997f106e4b390dc362175ab7830f11358cb21f6b972ca10a43a2e56cd789065f7606b082674c0c + languageName: node + linkType: hard + +"@babel/plugin-transform-for-of@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-for-of@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 77629b1173e55d07416f05ba7353caa09d2c2149da2ca26721ab812209b63689d1be45116b68eadc011c49ced59daf5320835b15245eb7ae93ae0c5e8277cfc0 + languageName: node + linkType: hard + +"@babel/plugin-transform-function-name@npm:^7.25.1": + version: 7.25.1 + resolution: "@babel/plugin-transform-function-name@npm:7.25.1" + dependencies: + "@babel/helper-compilation-targets": "npm:^7.24.8" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/traverse": "npm:^7.25.1" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e74912174d5e33d1418b840443c2e226a7b76cc017c1ed20ee30a566e4f1794d4a123be03180da046241576e8b692731807ba1f52608922acf1cb2cb6957593f + languageName: node + linkType: hard + +"@babel/plugin-transform-json-strings@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-json-strings@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-json-strings": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 17c72cd5bf3e90e722aabd333559275f3309e3fa0b9cea8c2944ab83ae01502c71a2be05da5101edc02b3fc8df15a8dbb9b861cbfcc8a52bf5e797cf01d3a40a + languageName: node + linkType: hard + +"@babel/plugin-transform-literals@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/plugin-transform-literals@npm:7.25.2" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0796883217b0885d37e7f6d350773be349e469a812b6bf11ccf862a6edf65103d3e7c849529d65381b441685c12e756751d8c2489a0fd3f8139bb5ef93185f58 + languageName: node + linkType: hard + +"@babel/plugin-transform-logical-assignment-operators@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: dbe882eb9053931f2ab332c50fc7c2a10ef507d6421bd9831adbb4cb7c9f8e1e5fbac4fbd2e007f6a1bf1df1843547559434012f118084dc0bf42cda3b106272 + languageName: node + linkType: hard + +"@babel/plugin-transform-member-expression-literals@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e789ae359bdf2d20e90bedef18dfdbd965c9ebae1cee398474a0c349590fda7c8b874e1a2ceee62e47e5e6ec1730e76b0f24e502164357571854271fc12cc684 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-amd@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-modules-amd@npm:7.24.7" + dependencies: + "@babel/helper-module-transforms": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6df7de7fce34117ca4b2fa07949b12274c03668cbfe21481c4037b6300796d50ae40f4f170527b61b70a67f26db906747797e30dbd0d9809a441b6e220b5728f + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-commonjs@npm:^7.24.7, @babel/plugin-transform-modules-commonjs@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.8" + dependencies: + "@babel/helper-module-transforms": "npm:^7.24.8" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-simple-access": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f1cf552307ebfced20d3907c1dd8be941b277f0364aa655e2b5fee828c84c54065745183104dae86f1f93ea0406db970a463ef7ceaaed897623748e99640e5a7 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-systemjs@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.0" + dependencies: + "@babel/helper-module-transforms": "npm:^7.25.0" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-validator-identifier": "npm:^7.24.7" + "@babel/traverse": "npm:^7.25.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fca6198da71237e4bb1274b3b67a0c81d56013c9535361242b6bfa87d70a9597854aadb45d4d8203369be4a655e158be2a5d20af0040b1f8d1bfc47db3ad7b68 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-umd@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-modules-umd@npm:7.24.7" + dependencies: + "@babel/helper-module-transforms": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7791d290121db210e4338b94b4a069a1a79e4c7a8d7638d8159a97b281851bbed3048dac87a4ae718ad963005e6c14a5d28e6db2eeb2b04e031cee92fb312f85 + languageName: node + linkType: hard + +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.24.7" + dependencies: + "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 41a0b0f2d0886318237440aa3b489f6d0305361d8671121777d9ff89f9f6de9d0c02ce93625049061426c8994064ef64deae8b819d1b14c00374a6a2336fb5d9 + languageName: node + linkType: hard + +"@babel/plugin-transform-new-target@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-new-target@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2540808a35e1a978e537334c43dab439cf24c93e7beb213a2e71902f6710e60e0184316643790c0a6644e7a8021e52f7ab8165e6b3e2d6651be07bdf517b67df + languageName: node + linkType: hard + +"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7243c8ff734ed5ef759dd8768773c4b443c12e792727e759a1aec2c7fa2bfdd24f1ecb42e292a7b3d8bd3d7f7b861cf256a8eb4ba144fc9cc463892c303083d9 + languageName: node + linkType: hard + +"@babel/plugin-transform-numeric-separator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-numeric-separator@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e18e09ca5a6342645d00ede477731aa6e8714ff357efc9d7cda5934f1703b3b6fb7d3298dce3ce3ba53e9ff1158eab8f1aadc68874cc21a6099d33a1ca457789 + languageName: node + linkType: hard + +"@babel/plugin-transform-object-rest-spread@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-object-rest-spread@npm:7.24.7" + dependencies: + "@babel/helper-compilation-targets": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" + "@babel/plugin-transform-parameters": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9ad64bc003f583030f9da50614b485852f8edac93f8faf5d1cd855201a4852f37c5255ae4daf70dd4375bdd4874e16e39b91f680d4668ec219ba05441ce286eb + languageName: node + linkType: hard + +"@babel/plugin-transform-object-super@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-object-super@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-replace-supers": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 770cebb4b4e1872c216b17069db9a13b87dfee747d359dc56d9fcdd66e7544f92dc6ab1861a4e7e0528196aaff2444e4f17dc84efd8eaf162d542b4ba0943869 + languageName: node + linkType: hard + +"@babel/plugin-transform-optional-catch-binding@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1e2f10a018f7d03b3bde6c0b70d063df8d5dd5209861d4467726cf834f5e3d354e2276079dc226aa8e6ece35f5c9b264d64b8229a8bb232829c01e561bcfb07a + languageName: node + linkType: hard + +"@babel/plugin-transform-optional-chaining@npm:^7.24.7, @babel/plugin-transform-optional-chaining@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-optional-chaining@npm:7.24.8" dependencies: - "@babel/template": "npm:^7.22.15" - "@babel/traverse": "npm:^7.23.5" - "@babel/types": "npm:^7.23.5" - checksum: a37e2728eb4378a4888e5d614e28de7dd79b55ac8acbecd0e5c761273e2a02a8f33b34b1932d9069db55417ace2937cbf8ec37c42f1030ce6d228857d7ccaa4f + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4ffbe1aad7dec7c9aa2bf6ceb4b2f91f96815b2784f2879bde80e46934f59d64a12cb2c6262e40897c4754d77d2c35d8a5cfed63044fdebf94978b1ed3d14b17 languageName: node linkType: hard -"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.16.7": - version: 7.16.10 - resolution: "@babel/highlight@npm:7.16.10" +"@babel/plugin-transform-parameters@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-parameters@npm:7.24.7" dependencies: - "@babel/helper-validator-identifier": "npm:^7.16.7" - chalk: "npm:^2.0.0" - js-tokens: "npm:^4.0.0" - checksum: 0ec2007a1fbd826f4433daded828a65b824fa653c65c57d7a45aea161636994099db8c071a7a4e0844c2a2cec3aeaea62359f4b8b907f9cae7e440693af65331 + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 53bf190d6926771545d5184f1f5f3f5144d0f04f170799ad46a43f683a01fab8d5fe4d2196cf246774530990c31fe1f2b9f0def39f0a5ddbb2340b924f5edf01 languageName: node linkType: hard -"@babel/highlight@npm:^7.23.4": - version: 7.23.4 - resolution: "@babel/highlight@npm:7.23.4" +"@babel/plugin-transform-private-methods@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/plugin-transform-private-methods@npm:7.25.4" dependencies: - "@babel/helper-validator-identifier": "npm:^7.22.20" - chalk: "npm:^2.4.2" - js-tokens: "npm:^4.0.0" - checksum: fbff9fcb2f5539289c3c097d130e852afd10d89a3a08ac0b5ebebbc055cc84a4bcc3dcfed463d488cde12dd0902ef1858279e31d7349b2e8cee43913744bda33 + "@babel/helper-create-class-features-plugin": "npm:^7.25.4" + "@babel/helper-plugin-utils": "npm:^7.24.8" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7abdb427c3984a2c8a2e9d806297d8509b02f78a3501b7760e544be532446e9df328b876daa8fc38718f3dce7ccc45083016ee7aeaab169b81c142bc18700794 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.7, @babel/parser@npm:^7.17.3": - version: 7.17.3 - resolution: "@babel/parser@npm:7.17.3" - bin: - parser: ./bin/babel-parser.js - checksum: 677edc6607da457bbe2b4ea4622c667b521d80ae9bfb40314e99e96f235cd076e7ea721a781f330472fc39bc3cba871d00a701da691d35e1039d6b72d2d1e555 +"@babel/plugin-transform-private-property-in-object@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-private-property-in-object@npm:7.24.7" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + "@babel/helper-create-class-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c6fa7defb90b1b0ed46f24ff94ff2e77f44c1f478d1090e81712f33cf992dda5ba347016f030082a2f770138bac6f4a9c2c1565e9f767a125901c77dd9c239ba languageName: node linkType: hard -"@babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/parser@npm:7.23.5" - bin: - parser: ./bin/babel-parser.js - checksum: 3356aa90d7bafb4e2c7310e7c2c3d443c4be4db74913f088d3d577a1eb914ea4188e05fd50a47ce907a27b755c4400c4e3cbeee73dbeb37761f6ca85954f5a20 +"@babel/plugin-transform-property-literals@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-property-literals@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 52564b58f3d111dc02d241d5892a4b01512e98dfdf6ef11b0ed62f8b11b0acacccef0fc229b44114fe8d1a57a8b70780b11bdd18b807d3754a781a07d8f57433 languageName: node linkType: hard -"@babel/plugin-syntax-async-generators@npm:^7.8.4": - version: 7.8.4 - resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" +"@babel/plugin-transform-regenerator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-regenerator@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-plugin-utils": "npm:^7.24.7" + regenerator-transform: "npm:^0.15.2" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 + checksum: d2dc2c788fdae9d97217e70d46ba8ca9db0035c398dc3e161552b0c437113719a75c04f201f9c91ddc8d28a1da60d0b0853f616dead98a396abb9c845c44892b languageName: node linkType: hard -"@babel/plugin-syntax-bigint@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" +"@babel/plugin-transform-reserved-words@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-reserved-words@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde + checksum: 2229de2768615e7f5dc0bbc55bc121b5678fd6d2febd46c74a58e42bb894d74cd5955c805880f4e02d0e1cf94f6886270eda7fafc1be9305a1ec3b9fd1d063f5 languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.8.3": - version: 7.12.13 - resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" +"@babel/plugin-transform-shorthand-properties@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.12.13" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 + checksum: 41b155bdbb3be66618358488bf7731b3b2e8fff2de3dbfd541847720a9debfcec14db06a117abedd03c9cd786db20a79e2a86509a4f19513f6e1b610520905cf languageName: node linkType: hard -"@babel/plugin-syntax-import-meta@npm:^7.8.3": - version: 7.10.4 - resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" +"@babel/plugin-transform-spread@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-spread@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.10.4" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee + checksum: facba1553035f76b0d2930d4ada89a8cd0f45b79579afd35baefbfaf12e3b86096995f4b0c402cf9ee23b3f2ea0a4460c3b1ec0c192d340962c948bb223d4e66 languageName: node linkType: hard -"@babel/plugin-syntax-json-strings@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" +"@babel/plugin-transform-sticky-regex@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e + checksum: 5a74ed2ed0a3ab51c3d15fcaf09d9e2fe915823535c7a4d7b019813177d559b69677090e189ec3d5d08b619483eb5ad371fbcfbbff5ace2a76ba33ee566a1109 languageName: node linkType: hard -"@babel/plugin-syntax-jsx@npm:^7.7.2": - version: 7.23.3 - resolution: "@babel/plugin-syntax-jsx@npm:7.23.3" +"@babel/plugin-transform-template-literals@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-template-literals@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 563bb7599b868773f1c7c1d441ecc9bc53aeb7832775da36752c926fc402a1fa5421505b39e724f71eb217c13e4b93117e081cac39723b0e11dac4c897f33c3e + checksum: 3630f966257bcace122f04d3157416a09d40768c44c3a800855da81146b009187daa21859d1c3b7d13f4e19e8888e60613964b175b2275d451200fb6d8d6cfe6 languageName: node linkType: hard -"@babel/plugin-syntax-logical-assignment-operators@npm:^7.8.3": - version: 7.10.4 - resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" +"@babel/plugin-transform-typeof-symbol@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.24.8" dependencies: - "@babel/helper-plugin-utils": "npm:^7.10.4" + "@babel/helper-plugin-utils": "npm:^7.24.8" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b + checksum: 2f570a4fbbdc5fd85f48165a97452826560051e3b8efb48c3bb0a0a33ee8485633439e7b71bfe3ef705583a1df43f854f49125bd759abdedc195b2cf7e60012a languageName: node linkType: hard -"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" +"@babel/plugin-transform-typescript@npm:^7.24.7": + version: 7.25.2 + resolution: "@babel/plugin-transform-typescript@npm:7.25.2" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-annotate-as-pure": "npm:^7.24.7" + "@babel/helper-create-class-features-plugin": "npm:^7.25.0" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7" + "@babel/plugin-syntax-typescript": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce + checksum: b3c941da39ee7ecf72df1b78a01d4108160438245f2ab61befe182f51d17fd0034733c6d079b7efad81e03a66438aa3881a671cd68c5eb0fc775df86b88df996 languageName: node linkType: hard -"@babel/plugin-syntax-numeric-separator@npm:^7.8.3": - version: 7.10.4 - resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" +"@babel/plugin-transform-unicode-escapes@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.10.4" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 + checksum: 8b18e2e66af33471a6971289492beff5c240e56727331db1d34c4338a6a368a82a7ed6d57ec911001b6d65643aed76531e1e7cac93265fb3fb2717f54d845e69 languageName: node linkType: hard -"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" +"@babel/plugin-transform-unicode-property-regex@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 + checksum: bc57656eb94584d1b74a385d378818ac2b3fca642e3f649fead8da5fb3f9de22f8461185936915dfb33d5a9104e62e7a47828331248b09d28bb2d59e9276de3e languageName: node linkType: hard -"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" +"@babel/plugin-transform-unicode-regex@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-create-regexp-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af + checksum: 83f72a345b751566b601dc4d07e9f2c8f1bc0e0c6f7abb56ceb3095b3c9d304de73f85f2f477a09f8cc7edd5e65afd0ff9e376cdbcbea33bc0c28f3705b38fd9 languageName: node linkType: hard -"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" +"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.4" dependencies: - "@babel/helper-plugin-utils": "npm:^7.8.0" + "@babel/helper-create-regexp-features-plugin": "npm:^7.25.2" + "@babel/helper-plugin-utils": "npm:^7.24.8" peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 + "@babel/core": ^7.0.0 + checksum: f65749835a98d8d6242e961f9276bdcdb09020e791d151ccc145acaca9a66f025b2c7cb761104f139180d35eb066a429596ee6edece81f5fd9244e0edb97d7ec languageName: node linkType: hard -"@babel/plugin-syntax-top-level-await@npm:^7.8.3": - version: 7.14.5 - resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" +"@babel/preset-env@npm:^7.25.4": + version: 7.25.4 + resolution: "@babel/preset-env@npm:7.25.4" dependencies: - "@babel/helper-plugin-utils": "npm:^7.14.5" + "@babel/compat-data": "npm:^7.25.4" + "@babel/helper-compilation-targets": "npm:^7.25.2" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-validator-option": "npm:^7.24.8" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.25.3" + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.25.0" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.25.0" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.24.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "npm:^7.25.0" + "@babel/plugin-proposal-private-property-in-object": "npm:7.21.0-placeholder-for-preset-env.2" + "@babel/plugin-syntax-async-generators": "npm:^7.8.4" + "@babel/plugin-syntax-class-properties": "npm:^7.12.13" + "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" + "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3" + "@babel/plugin-syntax-export-namespace-from": "npm:^7.8.3" + "@babel/plugin-syntax-import-assertions": "npm:^7.24.7" + "@babel/plugin-syntax-import-attributes": "npm:^7.24.7" + "@babel/plugin-syntax-import-meta": "npm:^7.10.4" + "@babel/plugin-syntax-json-strings": "npm:^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" + "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" + "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" + "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" + "@babel/plugin-syntax-top-level-await": "npm:^7.14.5" + "@babel/plugin-syntax-unicode-sets-regex": "npm:^7.18.6" + "@babel/plugin-transform-arrow-functions": "npm:^7.24.7" + "@babel/plugin-transform-async-generator-functions": "npm:^7.25.4" + "@babel/plugin-transform-async-to-generator": "npm:^7.24.7" + "@babel/plugin-transform-block-scoped-functions": "npm:^7.24.7" + "@babel/plugin-transform-block-scoping": "npm:^7.25.0" + "@babel/plugin-transform-class-properties": "npm:^7.25.4" + "@babel/plugin-transform-class-static-block": "npm:^7.24.7" + "@babel/plugin-transform-classes": "npm:^7.25.4" + "@babel/plugin-transform-computed-properties": "npm:^7.24.7" + "@babel/plugin-transform-destructuring": "npm:^7.24.8" + "@babel/plugin-transform-dotall-regex": "npm:^7.24.7" + "@babel/plugin-transform-duplicate-keys": "npm:^7.24.7" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "npm:^7.25.0" + "@babel/plugin-transform-dynamic-import": "npm:^7.24.7" + "@babel/plugin-transform-exponentiation-operator": "npm:^7.24.7" + "@babel/plugin-transform-export-namespace-from": "npm:^7.24.7" + "@babel/plugin-transform-for-of": "npm:^7.24.7" + "@babel/plugin-transform-function-name": "npm:^7.25.1" + "@babel/plugin-transform-json-strings": "npm:^7.24.7" + "@babel/plugin-transform-literals": "npm:^7.25.2" + "@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7" + "@babel/plugin-transform-member-expression-literals": "npm:^7.24.7" + "@babel/plugin-transform-modules-amd": "npm:^7.24.7" + "@babel/plugin-transform-modules-commonjs": "npm:^7.24.8" + "@babel/plugin-transform-modules-systemjs": "npm:^7.25.0" + "@babel/plugin-transform-modules-umd": "npm:^7.24.7" + "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.24.7" + "@babel/plugin-transform-new-target": "npm:^7.24.7" + "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.24.7" + "@babel/plugin-transform-numeric-separator": "npm:^7.24.7" + "@babel/plugin-transform-object-rest-spread": "npm:^7.24.7" + "@babel/plugin-transform-object-super": "npm:^7.24.7" + "@babel/plugin-transform-optional-catch-binding": "npm:^7.24.7" + "@babel/plugin-transform-optional-chaining": "npm:^7.24.8" + "@babel/plugin-transform-parameters": "npm:^7.24.7" + "@babel/plugin-transform-private-methods": "npm:^7.25.4" + "@babel/plugin-transform-private-property-in-object": "npm:^7.24.7" + "@babel/plugin-transform-property-literals": "npm:^7.24.7" + "@babel/plugin-transform-regenerator": "npm:^7.24.7" + "@babel/plugin-transform-reserved-words": "npm:^7.24.7" + "@babel/plugin-transform-shorthand-properties": "npm:^7.24.7" + "@babel/plugin-transform-spread": "npm:^7.24.7" + "@babel/plugin-transform-sticky-regex": "npm:^7.24.7" + "@babel/plugin-transform-template-literals": "npm:^7.24.7" + "@babel/plugin-transform-typeof-symbol": "npm:^7.24.8" + "@babel/plugin-transform-unicode-escapes": "npm:^7.24.7" + "@babel/plugin-transform-unicode-property-regex": "npm:^7.24.7" + "@babel/plugin-transform-unicode-regex": "npm:^7.24.7" + "@babel/plugin-transform-unicode-sets-regex": "npm:^7.25.4" + "@babel/preset-modules": "npm:0.1.6-no-external-plugins" + babel-plugin-polyfill-corejs2: "npm:^0.4.10" + babel-plugin-polyfill-corejs3: "npm:^0.10.6" + babel-plugin-polyfill-regenerator: "npm:^0.6.1" + core-js-compat: "npm:^3.37.1" + semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f + checksum: ed210a1974b5a1e7f80a933c87253907ec869457cea900bc97892642fa9a690c47627a9bac08a7c9495deb992a2b15f308ffca2741e1876ba47172c96fa27e14 languageName: node linkType: hard -"@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.16.7 - resolution: "@babel/plugin-syntax-typescript@npm:7.16.7" +"@babel/preset-modules@npm:0.1.6-no-external-plugins": + version: 0.1.6-no-external-plugins + resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins" dependencies: - "@babel/helper-plugin-utils": "npm:^7.16.7" + "@babel/helper-plugin-utils": "npm:^7.0.0" + "@babel/types": "npm:^7.4.4" + esutils: "npm:^2.0.2" + peerDependencies: + "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0 + checksum: 9d02f70d7052446c5f3a4fb39e6b632695fb6801e46d31d7f7c5001f7c18d31d1ea8369212331ca7ad4e7877b73231f470b0d559162624128f1b80fe591409e6 + languageName: node + linkType: hard + +"@babel/preset-typescript@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/preset-typescript@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-validator-option": "npm:^7.24.7" + "@babel/plugin-syntax-jsx": "npm:^7.24.7" + "@babel/plugin-transform-modules-commonjs": "npm:^7.24.7" + "@babel/plugin-transform-typescript": "npm:^7.24.7" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8eb1dbc06511035293d1af8172be5edec8d80e1a5c908258a1abd4fccb18879cdbae31e8ff813b310e4598a0a5484ebe0b686d50a0e820c17ed518bdca8c1af9 + checksum: 986bc0978eedb4da33aba8e1e13a3426dd1829515313b7e8f4ba5d8c18aff1663b468939d471814e7acf4045d326ae6cff37239878d169ac3fe53a8fde71f8ee + languageName: node + linkType: hard + +"@babel/regjsgen@npm:^0.8.0": + version: 0.8.0 + resolution: "@babel/regjsgen@npm:0.8.0" + checksum: 4f3ddd8c7c96d447e05c8304c1d5ba3a83fcabd8a716bc1091c2f31595cdd43a3a055fff7cb5d3042b8cb7d402d78820fcb4e05d896c605a7d8bcf30f2424c4a + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.8.4": + version: 7.25.6 + resolution: "@babel/runtime@npm:7.25.6" + dependencies: + regenerator-runtime: "npm:^0.14.0" + checksum: d6143adf5aa1ce79ed374e33fdfd74fa975055a80bc6e479672ab1eadc4e4bfd7484444e17dd063a1d180e051f3ec62b357c7a2b817e7657687b47313158c3d2 languageName: node linkType: hard @@ -612,6 +1838,17 @@ __metadata: languageName: node linkType: hard +"@babel/template@npm:^7.24.7, @babel/template@npm:^7.25.0": + version: 7.25.0 + resolution: "@babel/template@npm:7.25.0" + dependencies: + "@babel/code-frame": "npm:^7.24.7" + "@babel/parser": "npm:^7.25.0" + "@babel/types": "npm:^7.25.0" + checksum: 4e31afd873215744c016e02b04f43b9fa23205d6d0766fb2e93eb4091c60c1b88897936adb895fb04e3c23de98dfdcbe31bc98daaa1a4e0133f78bb948e1209b + languageName: node + linkType: hard + "@babel/traverse@npm:^7.17.0, @babel/traverse@npm:^7.17.3": version: 7.17.3 resolution: "@babel/traverse@npm:7.17.3" @@ -648,6 +1885,21 @@ __metadata: languageName: node linkType: hard +"@babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8, @babel/traverse@npm:^7.25.0, @babel/traverse@npm:^7.25.1, @babel/traverse@npm:^7.25.2, @babel/traverse@npm:^7.25.3, @babel/traverse@npm:^7.25.4": + version: 7.25.6 + resolution: "@babel/traverse@npm:7.25.6" + dependencies: + "@babel/code-frame": "npm:^7.24.7" + "@babel/generator": "npm:^7.25.6" + "@babel/parser": "npm:^7.25.6" + "@babel/template": "npm:^7.25.0" + "@babel/types": "npm:^7.25.6" + debug: "npm:^4.3.1" + globals: "npm:^11.1.0" + checksum: 964304c6fa46bd705428ba380bf73177eeb481c3f26d82ea3d0661242b59e0dd4329d23886035e9ca9a4ceb565c03a76fd615109830687a27bcd350059d6377e + languageName: node + linkType: hard + "@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.7, @babel/types@npm:^7.17.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3": version: 7.17.0 resolution: "@babel/types@npm:7.17.0" @@ -658,6 +1910,17 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.20.7, @babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.25.0, @babel/types@npm:^7.25.2, @babel/types@npm:^7.25.6, @babel/types@npm:^7.4.4": + version: 7.25.6 + resolution: "@babel/types@npm:7.25.6" + dependencies: + "@babel/helper-string-parser": "npm:^7.24.8" + "@babel/helper-validator-identifier": "npm:^7.24.7" + to-fast-properties: "npm:^2.0.0" + checksum: 89d45fbee24e27a05dca2d08300a26b905bd384a480448823f6723c72d3a30327c517476389b7280ce8cb9a2c48ef8f47da7f9f6d326faf6f53fd6b68237bdc4 + languageName: node + linkType: hard + "@babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.5": version: 7.23.5 resolution: "@babel/types@npm:7.23.5" @@ -703,6 +1966,16 @@ __metadata: languageName: node linkType: hard +"@comunica/actor-abstract-mediatyped@npm:^2.10.0": + version: 2.10.0 + resolution: "@comunica/actor-abstract-mediatyped@npm:2.10.0" + dependencies: + "@comunica/core": "npm:^2.10.0" + "@comunica/types": "npm:^2.10.0" + checksum: 2e73b9f7ef1e24d36dcd8294b45dcffb4d97ed8862567131aa069e5734449d2d272fe4fb48b50dbd8cc1f0400538101bb152aa6eaf46d1aad8249fb5a1960cd5 + languageName: node + linkType: hard + "@comunica/actor-abstract-parse@npm:^2.0.1": version: 2.0.1 resolution: "@comunica/actor-abstract-parse@npm:2.0.1" @@ -713,6 +1986,16 @@ __metadata: languageName: node linkType: hard +"@comunica/actor-abstract-parse@npm:^2.10.0": + version: 2.10.0 + resolution: "@comunica/actor-abstract-parse@npm:2.10.0" + dependencies: + "@comunica/core": "npm:^2.10.0" + readable-stream: "npm:^4.4.2" + checksum: b308efb425e3839ed606a123cb17e2495b4aa12320bc46ad284aead4f1364b867ad5147099158f06a509b96af88cf08cc8c080deaabf49864aa1ba37feeb0a60 + languageName: node + linkType: hard + "@comunica/actor-http-fetch@npm:^2.0.1": version: 2.0.1 resolution: "@comunica/actor-http-fetch@npm:2.0.1" @@ -827,6 +2110,21 @@ __metadata: languageName: node linkType: hard +"@comunica/actor-rdf-parse-shaclc@npm:^2.6.2": + version: 2.10.0 + resolution: "@comunica/actor-rdf-parse-shaclc@npm:2.10.0" + dependencies: + "@comunica/bus-rdf-parse": "npm:^2.10.0" + "@comunica/types": "npm:^2.10.0" + "@rdfjs/types": "npm:*" + asynciterator: "npm:^3.8.1" + readable-stream: "npm:^4.4.2" + shaclc-parse: "npm:^1.4.0" + stream-to-string: "npm:^1.2.0" + checksum: 5a4105c06a0cfddae87509d44f8436036e02369456d29baa2f90cafcee9a6baf89f9fd4853ceeb2b2d572e49dac586ae049e95d3ef66b1f53c8e7f5c74b01951 + languageName: node + linkType: hard + "@comunica/actor-rdf-parse-xml-rdfa@npm:^2.0.1": version: 2.0.1 resolution: "@comunica/actor-rdf-parse-xml-rdfa@npm:2.0.1" @@ -883,6 +2181,18 @@ __metadata: languageName: node linkType: hard +"@comunica/bus-rdf-parse@npm:^2.10.0": + version: 2.10.0 + resolution: "@comunica/bus-rdf-parse@npm:2.10.0" + dependencies: + "@comunica/actor-abstract-mediatyped": "npm:^2.10.0" + "@comunica/actor-abstract-parse": "npm:^2.10.0" + "@comunica/core": "npm:^2.10.0" + "@rdfjs/types": "npm:*" + checksum: eb78249eb05a0a55551078bbc1471c98c59bf5c88bb35abe30fc5fd4bdc6128fd09f5acab9cc90edcf1dbec591ab92d1e362d43ef758cac05f4e930de020ce31 + languageName: node + linkType: hard + "@comunica/config-query-sparql@npm:^2.0.1": version: 2.0.1 resolution: "@comunica/config-query-sparql@npm:2.0.1" @@ -911,6 +2221,16 @@ __metadata: languageName: node linkType: hard +"@comunica/core@npm:^2.10.0": + version: 2.10.0 + resolution: "@comunica/core@npm:2.10.0" + dependencies: + "@comunica/types": "npm:^2.10.0" + immutable: "npm:^4.1.0" + checksum: ffb9926b591eaa47ae6ff56713d6769afed55c214e5124e0d92224acb3980fa36dd8f2deb503b5f913072b35a04e32e05bdc518dd4d73c2dea3521d4cfbcb7f2 + languageName: node + linkType: hard + "@comunica/mediator-combine-pipeline@npm:^2.0.1": version: 2.0.1 resolution: "@comunica/mediator-combine-pipeline@npm:2.0.1" @@ -968,6 +2288,18 @@ __metadata: languageName: node linkType: hard +"@comunica/types@npm:^2.10.0": + version: 2.10.0 + resolution: "@comunica/types@npm:2.10.0" + dependencies: + "@rdfjs/types": "npm:*" + "@types/yargs": "npm:^17.0.24" + asynciterator: "npm:^3.8.1" + sparqlalgebrajs: "npm:^4.2.0" + checksum: c322c54f93aa93d2bf3a97458286cd994e7c254b01b700f189f6602b7a20f4436ebc320f1f81519686aae16accf08b687d7b9673fc41932b7ed34c45a243e5c5 + languageName: node + linkType: hard + "@dabh/diagnostics@npm:^2.0.2": version: 2.0.3 resolution: "@dabh/diagnostics@npm:2.0.3" @@ -1314,6 +2646,17 @@ __metadata: languageName: node linkType: hard +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.5 + resolution: "@jridgewell/gen-mapping@npm:0.3.5" + dependencies: + "@jridgewell/set-array": "npm:^1.2.1" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 1be4fd4a6b0f41337c4f5fdf4afc3bd19e39c3691924817108b82ffcb9c9e609c273f936932b9fba4b3a298ce2eb06d9bff4eb1cc3bd81c4f4ee1b4917e25feb + languageName: node + linkType: hard + "@jridgewell/resolve-uri@npm:3.1.0": version: 3.1.0 resolution: "@jridgewell/resolve-uri@npm:3.1.0" @@ -1342,6 +2685,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4 + languageName: node + linkType: hard + "@jridgewell/source-map@npm:^0.3.2": version: 0.3.2 resolution: "@jridgewell/source-map@npm:0.3.2" @@ -1403,6 +2753,16 @@ __metadata: languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4 + languageName: node + linkType: hard + "@microsoft/tsdoc-config@npm:0.15.2": version: 0.15.2 resolution: "@microsoft/tsdoc-config@npm:0.15.2" @@ -1422,6 +2782,13 @@ __metadata: languageName: node linkType: hard +"@nicolo-ribaudo/chokidar-2@npm:2.1.8-no-fsevents.3": + version: 2.1.8-no-fsevents.3 + resolution: "@nicolo-ribaudo/chokidar-2@npm:2.1.8-no-fsevents.3" + checksum: 27dcabaa0c9a29b3a60217bd3fff87a22cb43ed77863da570c6828e4d0b8f1c6ee52582cd3d439275a2b1f2051005e648ed866b981f2a03b61c645b7e4806ba7 + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -1478,7 +2845,7 @@ __metadata: languageName: node linkType: hard -"@rdfjs/types@npm:*": +"@rdfjs/types@npm:*, @rdfjs/types@npm:^1.1.0": version: 1.1.0 resolution: "@rdfjs/types@npm:1.1.0" dependencies: @@ -1529,6 +2896,19 @@ __metadata: languageName: node linkType: hard +"@types/babel__core@npm:^7": + version: 7.20.5 + resolution: "@types/babel__core@npm:7.20.5" + dependencies: + "@babel/parser": "npm:^7.20.7" + "@babel/types": "npm:^7.20.7" + "@types/babel__generator": "npm:*" + "@types/babel__template": "npm:*" + "@types/babel__traverse": "npm:*" + checksum: bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff + languageName: node + linkType: hard + "@types/babel__core@npm:^7.1.14": version: 7.1.18 resolution: "@types/babel__core@npm:7.1.18" @@ -1551,6 +2931,13 @@ __metadata: languageName: node linkType: hard +"@types/babel__preset-env@npm:^7": + version: 7.9.7 + resolution: "@types/babel__preset-env@npm:7.9.7" + checksum: e1da078fee75841af512c7084e66f8a2b9136d72185d72c85c6fb41697358d330d195896d7d22834fca92fad1f16a8c0fb6269e890f9e6842c9a9972313b7baa + languageName: node + linkType: hard + "@types/babel__template@npm:*": version: 7.4.1 resolution: "@types/babel__template@npm:7.4.1" @@ -1790,6 +3177,15 @@ __metadata: languageName: node linkType: hard +"@types/yargs@npm:^17.0.24": + version: 17.0.33 + resolution: "@types/yargs@npm:17.0.33" + dependencies: + "@types/yargs-parser": "npm:*" + checksum: d16937d7ac30dff697801c3d6f235be2166df42e4a88bf730fa6dc09201de3727c0a9500c59a672122313341de5f24e45ee0ff579c08ce91928e519090b7906b + languageName: node + linkType: hard + "@types/yargs@npm:^17.0.8": version: 17.0.32 resolution: "@types/yargs@npm:17.0.32" @@ -2397,6 +3793,16 @@ __metadata: languageName: node linkType: hard +"anymatch@npm:~3.1.2": + version: 3.1.3 + resolution: "anymatch@npm:3.1.3" + dependencies: + normalize-path: "npm:^3.0.0" + picomatch: "npm:^2.0.4" + checksum: 57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac + languageName: node + linkType: hard + "argparse@npm:^1.0.7": version: 1.0.10 resolution: "argparse@npm:1.0.10" @@ -2515,6 +3921,13 @@ __metadata: languageName: node linkType: hard +"asynciterator@npm:^3.8.1": + version: 3.9.0 + resolution: "asynciterator@npm:3.9.0" + checksum: 62e4c76ca2f2bbc8f3eae6a685c9b5c8ed82afd969f24cfb9aff1347b50d5e92a7dae61d2a3c24e834f193b303082d855cf688720059d6236cc06650a4fe2c22 + languageName: node + linkType: hard + "available-typed-arrays@npm:^1.0.5": version: 1.0.5 resolution: "available-typed-arrays@npm:1.0.5" @@ -2539,6 +3952,17 @@ __metadata: languageName: node linkType: hard +"babel-plugin-add-import-extension@npm:^1.6.0": + version: 1.6.0 + resolution: "babel-plugin-add-import-extension@npm:1.6.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ">=7.0.0" + checksum: 0d3e53f114af0c3ffb67b04a41d09e1e5cd27218b007cb094d305b28b693bd32ed56c7be764878f778bab418c64d73059921001d942b9b9c83569b0e2adff15b + languageName: node + linkType: hard + "babel-plugin-istanbul@npm:^6.1.1": version: 6.1.1 resolution: "babel-plugin-istanbul@npm:6.1.1" @@ -2564,6 +3988,42 @@ __metadata: languageName: node linkType: hard +"babel-plugin-polyfill-corejs2@npm:^0.4.10": + version: 0.4.11 + resolution: "babel-plugin-polyfill-corejs2@npm:0.4.11" + dependencies: + "@babel/compat-data": "npm:^7.22.6" + "@babel/helper-define-polyfill-provider": "npm:^0.6.2" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: b2217bc8d5976cf8142453ed44daabf0b2e0e75518f24eac83b54a8892e87a88f1bd9089daa92fd25df979ecd0acfd29b6bc28c4182c1c46344cee15ef9bce84 + languageName: node + linkType: hard + +"babel-plugin-polyfill-corejs3@npm:^0.10.6": + version: 0.10.6 + resolution: "babel-plugin-polyfill-corejs3@npm:0.10.6" + dependencies: + "@babel/helper-define-polyfill-provider": "npm:^0.6.2" + core-js-compat: "npm:^3.38.0" + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: 3a69220471b07722c2ae6537310bf26b772514e12b601398082965459c838be70a0ca70b0662f0737070654ff6207673391221d48599abb4a2b27765206d9f79 + languageName: node + linkType: hard + +"babel-plugin-polyfill-regenerator@npm:^0.6.1": + version: 0.6.2 + resolution: "babel-plugin-polyfill-regenerator@npm:0.6.2" + dependencies: + "@babel/helper-define-polyfill-provider": "npm:^0.6.2" + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: bc541037cf7620bc84ddb75a1c0ce3288f90e7d2799c070a53f8a495c8c8ae0316447becb06f958dd25dcce2a2fce855d318ecfa48036a1ddb218d55aa38a744 + languageName: node + linkType: hard + "babel-preset-current-node-syntax@npm:^1.0.0": version: 1.0.1 resolution: "babel-preset-current-node-syntax@npm:1.0.1" @@ -2612,6 +4072,13 @@ __metadata: languageName: node linkType: hard +"binary-extensions@npm:^2.0.0": + version: 2.3.0 + resolution: "binary-extensions@npm:2.3.0" + checksum: 75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 + languageName: node + linkType: hard + "bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.11.9": version: 4.12.0 resolution: "bn.js@npm:4.12.0" @@ -2654,6 +4121,15 @@ __metadata: languageName: node linkType: hard +"braces@npm:~3.0.2": + version: 3.0.3 + resolution: "braces@npm:3.0.3" + dependencies: + fill-range: "npm:^7.1.1" + checksum: 7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 + languageName: node + linkType: hard + "brorand@npm:^1.0.1, brorand@npm:^1.1.0": version: 1.1.0 resolution: "brorand@npm:1.1.0" @@ -2777,6 +4253,20 @@ __metadata: languageName: node linkType: hard +"browserslist@npm:^4.23.1, browserslist@npm:^4.23.3": + version: 4.23.3 + resolution: "browserslist@npm:4.23.3" + dependencies: + caniuse-lite: "npm:^1.0.30001646" + electron-to-chromium: "npm:^1.5.4" + node-releases: "npm:^2.0.18" + update-browserslist-db: "npm:^1.1.0" + bin: + browserslist: cli.js + checksum: 3063bfdf812815346447f4796c8f04601bf5d62003374305fd323c2a463e42776475bcc5309264e39bcf9a8605851e53560695991a623be988138b3ff8c66642 + languageName: node + linkType: hard + "bs-logger@npm:0.x": version: 0.2.6 resolution: "bs-logger@npm:0.2.6" @@ -2938,6 +4428,13 @@ __metadata: languageName: node linkType: hard +"caniuse-lite@npm:^1.0.30001646": + version: 1.0.30001653 + resolution: "caniuse-lite@npm:1.0.30001653" + checksum: 7aedf037541c93744148f599daea93d46d1f93ab4347997189efa2d1f003af8eadd7e1e05347ef09261ac1dc635ce375b8c6c00796245fffb4120a124824a14f + languageName: node + linkType: hard + "canonicalize@npm:^1.0.1": version: 1.0.8 resolution: "canonicalize@npm:1.0.8" @@ -2973,6 +4470,25 @@ __metadata: languageName: node linkType: hard +"chokidar@npm:^3.6.0": + version: 3.6.0 + resolution: "chokidar@npm:3.6.0" + dependencies: + anymatch: "npm:~3.1.2" + braces: "npm:~3.0.2" + fsevents: "npm:~2.3.2" + glob-parent: "npm:~5.1.2" + is-binary-path: "npm:~2.1.0" + is-glob: "npm:~4.0.1" + normalize-path: "npm:~3.0.0" + readdirp: "npm:~3.6.0" + dependenciesMeta: + fsevents: + optional: true + checksum: 8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 + languageName: node + linkType: hard + "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -3167,6 +4683,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:^6.2.0": + version: 6.2.1 + resolution: "commander@npm:6.2.1" + checksum: 85748abd9d18c8bc88febed58b98f66b7c591d9b5017cad459565761d7b29ca13b7783ea2ee5ce84bf235897333706c4ce29adf1ce15c8252780e7000e2ce9ea + languageName: node + linkType: hard + "commander@npm:^9.4.1": version: 9.4.1 resolution: "commander@npm:9.4.1" @@ -3178,8 +4701,14 @@ __metadata: version: 0.0.0-use.local resolution: "componentsjs@workspace:." dependencies: + "@babel/cli": "npm:^7.25.6" + "@babel/core": "npm:^7.25.2" + "@babel/preset-env": "npm:^7.25.4" + "@babel/preset-typescript": "npm:^7.24.7" "@rdfjs/types": "npm:*" "@rubensworks/eslint-config": "npm:^1.0.1" + "@types/babel__core": "npm:^7" + "@types/babel__preset-env": "npm:^7" "@types/jest": "npm:^29.0.0" "@types/minimist": "npm:^1.2.0" "@types/node": "npm:^18.0.0" @@ -3188,6 +4717,7 @@ __metadata: "@types/streamify-string": "npm:^1.0.0" "@typescript-eslint/eslint-plugin": "npm:^5.0.0" "@typescript-eslint/parser": "npm:^5.0.0" + babel-plugin-add-import-extension: "npm:^1.6.0" eslint: "npm:^7.12.1" eslint-config-es: "npm:3.25.3" eslint-import-resolver-typescript: "npm:^2.3.0" @@ -3207,7 +4737,7 @@ __metadata: pre-commit: "npm:^1.2.2" rdf-data-factory: "npm:^1.1.0" rdf-object: "npm:^1.14.0" - rdf-parse: "npm:^2.0.0" + rdf-parse: "npm:^3.0.0" rdf-quad: "npm:^1.5.0" rdf-string: "npm:^1.6.0" rdf-terms: "npm:^1.7.0" @@ -3216,13 +4746,14 @@ __metadata: stream-to-array: "npm:^2.3.0" streamify-string: "npm:^1.0.1" ts-jest: "npm:^29.1.0" + ts-jest-resolver: "npm:^2.0.1" ts-loader: "npm:^9.4.1" - typescript: "npm:^5.0.0" + typescript: "npm:^5.5.4" webpack: "npm:^5.75.0" webpack-cli: "npm:^5.0.0" winston: "npm:^3.3.3" bin: - componentsjs-compile-config: ./bin/compile-config.js + componentsjs-compile-config: ./cjs/bin/compile-config.js languageName: unknown linkType: soft @@ -3284,6 +4815,15 @@ __metadata: languageName: node linkType: hard +"core-js-compat@npm:^3.37.1, core-js-compat@npm:^3.38.0": + version: 3.38.1 + resolution: "core-js-compat@npm:3.38.1" + dependencies: + browserslist: "npm:^4.23.3" + checksum: d8bc8a35591fc5fbf3e376d793f298ec41eb452619c7ef9de4ea59b74be06e9fda799e0dcbf9ba59880dae87e3b41fb191d744ffc988315642a1272bb9442b31 + languageName: node + linkType: hard + "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" @@ -3715,6 +5255,13 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.5.4": + version: 1.5.13 + resolution: "electron-to-chromium@npm:1.5.13" + checksum: 1d88ac39447e1d718c4296f92fe89836df4688daf2d362d6c49108136795f05a56dd9c950f1c6715e0395fa037c3b5f5ea686c543fdc90e6d74a005877c45022 + languageName: node + linkType: hard + "elliptic@npm:^6.5.3": version: 6.5.4 resolution: "elliptic@npm:6.5.4" @@ -3892,6 +5439,13 @@ __metadata: languageName: node linkType: hard +"escalade@npm:^3.1.2": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65 + languageName: node + linkType: hard + "escape-string-regexp@npm:^1.0.5": version: 1.0.5 resolution: "escape-string-regexp@npm:1.0.5" @@ -4439,6 +5993,15 @@ __metadata: languageName: node linkType: hard +"fill-range@npm:^7.1.1": + version: 7.1.1 + resolution: "fill-range@npm:7.1.1" + dependencies: + to-regex-range: "npm:^5.0.1" + checksum: b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 + languageName: node + linkType: hard + "find-up@npm:^2.0.0, find-up@npm:^2.1.0": version: 2.1.0 resolution: "find-up@npm:2.1.0" @@ -4519,6 +6082,13 @@ __metadata: languageName: node linkType: hard +"fs-readdir-recursive@npm:^1.1.0": + version: 1.1.0 + resolution: "fs-readdir-recursive@npm:1.1.0" + checksum: 7e190393952143e674b6d1ad4abcafa1b5d3e337fcc21b0cb051079a7140a54617a7df193d562ef9faf21bd7b2148a38601b3d5c16261fa76f278d88dc69989c + languageName: node + linkType: hard + "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" @@ -4536,6 +6106,16 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:~2.3.2": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: "npm:latest" + checksum: a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 + conditions: os=darwin + languageName: node + linkType: hard + "fsevents@patch:fsevents@npm%3A^2.3.2#optional!builtin": version: 2.3.2 resolution: "fsevents@patch:fsevents@npm%3A2.3.2#optional!builtin::version=2.3.2&hash=df0bf1" @@ -4545,6 +6125,15 @@ __metadata: languageName: node linkType: hard +"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: "npm:latest" + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.1": version: 1.1.1 resolution: "function-bind@npm:1.1.1" @@ -4679,7 +6268,7 @@ __metadata: languageName: node linkType: hard -"glob-parent@npm:^5.1.2": +"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" dependencies: @@ -4724,6 +6313,20 @@ __metadata: languageName: node linkType: hard +"glob@npm:^7.2.0": + version: 7.2.3 + resolution: "glob@npm:7.2.3" + dependencies: + fs.realpath: "npm:^1.0.0" + inflight: "npm:^1.0.4" + inherits: "npm:2" + minimatch: "npm:^3.1.1" + once: "npm:^1.3.0" + path-is-absolute: "npm:^1.0.0" + checksum: 65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe + languageName: node + linkType: hard + "globals@npm:^11.1.0": version: 11.12.0 resolution: "globals@npm:11.12.0" @@ -4883,6 +6486,15 @@ __metadata: languageName: node linkType: hard +"hasown@npm:^2.0.2": + version: 2.0.2 + resolution: "hasown@npm:2.0.2" + dependencies: + function-bind: "npm:^1.1.2" + checksum: 3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 + languageName: node + linkType: hard + "hmac-drbg@npm:^1.0.1": version: 1.0.1 resolution: "hmac-drbg@npm:1.0.1" @@ -5039,6 +6651,13 @@ __metadata: languageName: node linkType: hard +"immutable@npm:^4.1.0": + version: 4.3.7 + resolution: "immutable@npm:4.3.7" + checksum: 9b099197081b22f6433003e34929da8ecddbbdc1474cdc8aa3b7669dee4adda349c06143de22def36016d1b6de5322b043eccd7a11db1dad2ca85dad4fff5435 + languageName: node + linkType: hard + "import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" @@ -5164,6 +6783,15 @@ __metadata: languageName: node linkType: hard +"is-binary-path@npm:~2.1.0": + version: 2.1.0 + resolution: "is-binary-path@npm:2.1.0" + dependencies: + binary-extensions: "npm:^2.0.0" + checksum: a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 + languageName: node + linkType: hard + "is-boolean-object@npm:^1.1.0": version: 1.1.2 resolution: "is-boolean-object@npm:1.1.2" @@ -5197,6 +6825,15 @@ __metadata: languageName: node linkType: hard +"is-core-module@npm:^2.13.0": + version: 2.15.1 + resolution: "is-core-module@npm:2.15.1" + dependencies: + hasown: "npm:^2.0.2" + checksum: 53432f10c69c40bfd2fa8914133a68709ff9498c86c3bf5fca3cdf3145a56fd2168cbf4a43b29843a6202a120a5f9c5ffba0a4322e1e3441739bc0b641682612 + languageName: node + linkType: hard + "is-date-object@npm:^1.0.1": version: 1.0.5 resolution: "is-date-object@npm:1.0.5" @@ -5236,7 +6873,7 @@ __metadata: languageName: node linkType: hard -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3": +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": version: 4.0.3 resolution: "is-glob@npm:4.0.3" dependencies: @@ -5757,7 +7394,7 @@ __metadata: languageName: node linkType: hard -"jest-resolve@npm:^29.7.0": +"jest-resolve@npm:^29.5.0, jest-resolve@npm:^29.7.0": version: 29.7.0 resolution: "jest-resolve@npm:29.7.0" dependencies: @@ -5982,6 +7619,15 @@ __metadata: languageName: node linkType: hard +"jsesc@npm:~0.5.0": + version: 0.5.0 + resolution: "jsesc@npm:0.5.0" + bin: + jsesc: bin/jsesc + checksum: f93792440ae1d80f091b65f8ceddf8e55c4bb7f1a09dee5dcbdb0db5612c55c0f6045625aa6b7e8edb2e0a4feabd80ee48616dbe2d37055573a84db3d24f96d9 + languageName: node + linkType: hard + "jshint@npm:^2.1.10": version: 2.13.4 resolution: "jshint@npm:2.13.4" @@ -6196,6 +7842,13 @@ __metadata: languageName: node linkType: hard +"lodash.debounce@npm:^4.0.8": + version: 4.0.8 + resolution: "lodash.debounce@npm:4.0.8" + checksum: 762998a63e095412b6099b8290903e0a8ddcb353ac6e2e0f2d7e7d03abd4275fe3c689d88960eb90b0dde4f177554d51a690f22a343932ecbc50a5d111849987 + languageName: node + linkType: hard + "lodash.get@npm:^4.4.2": version: 4.4.2 resolution: "lodash.get@npm:4.4.2" @@ -6307,6 +7960,16 @@ __metadata: languageName: node linkType: hard +"make-dir@npm:^2.1.0": + version: 2.1.0 + resolution: "make-dir@npm:2.1.0" + dependencies: + pify: "npm:^4.0.1" + semver: "npm:^5.6.0" + checksum: ada869944d866229819735bee5548944caef560d7a8536ecbc6536edca28c72add47cc4f6fc39c54fb25d06b58da1f8994cf7d9df7dadea047064749efc085d8 + languageName: node + linkType: hard + "make-dir@npm:^3.0.0": version: 3.1.0 resolution: "make-dir@npm:3.1.0" @@ -6536,7 +8199,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.4": +"minimatch@npm:^3.0.4, minimatch@npm:^3.1.1": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -6591,6 +8254,13 @@ __metadata: languageName: node linkType: hard +"minimist@npm:^1.2.6": + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 + languageName: node + linkType: hard + "minipass-collect@npm:^1.0.2": version: 1.0.2 resolution: "minipass-collect@npm:1.0.2" @@ -6722,6 +8392,17 @@ __metadata: languageName: node linkType: hard +"n3@npm:^1.16.3": + version: 1.21.0 + resolution: "n3@npm:1.21.0" + dependencies: + buffer: "npm:^6.0.3" + queue-microtask: "npm:^1.1.2" + readable-stream: "npm:^4.0.0" + checksum: 2cfacd1d502e8dd9f68eac5203dc842ad11aeb49e8205e7aec7d294cc41b044f2dfe843e138ed6ae7b40cd8758991a6173c7976fcabb92e02f643236dbda3f74 + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -6825,6 +8506,13 @@ __metadata: languageName: node linkType: hard +"node-releases@npm:^2.0.18": + version: 2.0.18 + resolution: "node-releases@npm:2.0.18" + checksum: 786ac9db9d7226339e1dc84bbb42007cb054a346bd9257e6aa154d294f01bc6a6cddb1348fa099f079be6580acbb470e3c048effd5f719325abd0179e566fd27 + languageName: node + linkType: hard + "node-releases@npm:^2.0.2": version: 2.0.2 resolution: "node-releases@npm:2.0.2" @@ -6874,7 +8562,7 @@ __metadata: languageName: node linkType: hard -"normalize-path@npm:^3.0.0": +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": version: 3.0.0 resolution: "normalize-path@npm:3.0.0" checksum: e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 @@ -7240,7 +8928,14 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": +"picocolors@npm:^1.0.1": + version: 1.0.1 + resolution: "picocolors@npm:1.0.1" + checksum: c63cdad2bf812ef0d66c8db29583802355d4ca67b9285d846f390cc15c2f6ccb94e8cb7eb6a6e97fc5990a6d3ad4ae42d86c84d3146e667c739a4234ed50d400 + languageName: node + linkType: hard + +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be @@ -7254,6 +8949,13 @@ __metadata: languageName: node linkType: hard +"pify@npm:^4.0.1": + version: 4.0.1 + resolution: "pify@npm:4.0.1" + checksum: 6f9d404b0d47a965437403c9b90eca8bb2536407f03de165940e62e72c8c8b75adda5516c6b9b23675a5877cc0bcac6bdfb0ef0e39414cd2476d5495da40e7cf + languageName: node + linkType: hard + "pirates@npm:^4.0.4": version: 4.0.5 resolution: "pirates@npm:4.0.5" @@ -7493,6 +9195,15 @@ __metadata: languageName: node linkType: hard +"rdf-data-factory@npm:^1.1.2": + version: 1.1.2 + resolution: "rdf-data-factory@npm:1.1.2" + dependencies: + "@rdfjs/types": "npm:*" + checksum: 8b18f77d99fe5cbb4b4125f3c345752baf46f00e4d80e77e9541c194f4c225ba4c6e539f2f8a018e1ace32b50214102e5d556bd966f6d5e374f2548b454f9837 + languageName: node + linkType: hard + "rdf-isomorphic@npm:^1.3.0": version: 1.3.0 resolution: "rdf-isomorphic@npm:1.3.0" @@ -7537,9 +9248,9 @@ __metadata: languageName: node linkType: hard -"rdf-parse@npm:^2.0.0": - version: 2.0.0 - resolution: "rdf-parse@npm:2.0.0" +"rdf-parse@npm:^3.0.0": + version: 3.0.0 + resolution: "rdf-parse@npm:3.0.0" dependencies: "@comunica/actor-http-fetch": "npm:^2.0.1" "@comunica/actor-http-proxy": "npm:^2.0.1" @@ -7550,6 +9261,7 @@ __metadata: "@comunica/actor-rdf-parse-jsonld": "npm:^2.0.1" "@comunica/actor-rdf-parse-n3": "npm:^2.0.1" "@comunica/actor-rdf-parse-rdfxml": "npm:^2.0.1" + "@comunica/actor-rdf-parse-shaclc": "npm:^2.6.2" "@comunica/actor-rdf-parse-xml-rdfa": "npm:^2.0.1" "@comunica/bus-http": "npm:^2.0.1" "@comunica/bus-init": "npm:^2.0.1" @@ -7562,8 +9274,9 @@ __metadata: "@comunica/mediator-number": "npm:^2.0.1" "@comunica/mediator-race": "npm:^2.0.1" "@rdfjs/types": "npm:*" + readable-stream: "npm:^4.3.0" stream-to-string: "npm:^1.2.0" - checksum: 40007ec37cf013ae546b192b54cf9c2d1f85e745c6ac592bde3531716666a79b2085f20fcff619099e38c45a69ee776d9c3f1d0ff5434c9b79572cf4b7d54b0a + checksum: c85c1caed0772e69a3862ca6875c986ad44ab3d46744c6781e46395333f751b4f505ba490a983771d2eeddf791cae5fefb404fd1f3ff414a493962c009016335 languageName: node linkType: hard @@ -7588,25 +9301,25 @@ __metadata: languageName: node linkType: hard -"rdf-terms@npm:^1.7.0": - version: 1.7.1 - resolution: "rdf-terms@npm:1.7.1" +"rdf-terms@npm:^1.10.0, rdf-terms@npm:^1.9.1": + version: 1.11.0 + resolution: "rdf-terms@npm:1.11.0" dependencies: "@rdfjs/types": "npm:*" rdf-data-factory: "npm:^1.1.0" rdf-string: "npm:^1.6.0" - checksum: 5d3326174a067de88f9b90acc40591789897205a51a0e4d8ea8367c765ccf1785682a4acf961cd25b2f7f248ac197cf04495bbf54b39ba662aac1bd3667405ef + checksum: 9603eef8b05c8254f1d12a75db894de85eb291fd1cff167d5dd4a3854ff7677ad6baea9ebbb164bc0ad0cbe37ab4317e96de61e98297937ea9237956ac951fab languageName: node linkType: hard -"rdf-terms@npm:^1.9.1": - version: 1.11.0 - resolution: "rdf-terms@npm:1.11.0" +"rdf-terms@npm:^1.7.0": + version: 1.7.1 + resolution: "rdf-terms@npm:1.7.1" dependencies: "@rdfjs/types": "npm:*" rdf-data-factory: "npm:^1.1.0" rdf-string: "npm:^1.6.0" - checksum: 9603eef8b05c8254f1d12a75db894de85eb291fd1cff167d5dd4a3854ff7677ad6baea9ebbb164bc0ad0cbe37ab4317e96de61e98297937ea9237956ac951fab + checksum: 5d3326174a067de88f9b90acc40591789897205a51a0e4d8ea8367c765ccf1785682a4acf961cd25b2f7f248ac197cf04495bbf54b39ba662aac1bd3667405ef languageName: node linkType: hard @@ -7737,6 +9450,19 @@ __metadata: languageName: node linkType: hard +"readable-stream@npm:^4.0.0, readable-stream@npm:^4.3.0": + version: 4.5.2 + resolution: "readable-stream@npm:4.5.2" + dependencies: + abort-controller: "npm:^3.0.0" + buffer: "npm:^6.0.3" + events: "npm:^3.3.0" + process: "npm:^0.11.10" + string_decoder: "npm:^1.3.0" + checksum: a2c80e0e53aabd91d7df0330929e32d0a73219f9477dbbb18472f6fdd6a11a699fc5d172a1beff98d50eae4f1496c950ffa85b7cc2c4c196963f289a5f39275d + languageName: node + linkType: hard + "readable-stream@npm:^4.4.2": version: 4.4.2 resolution: "readable-stream@npm:4.4.2" @@ -7759,6 +9485,15 @@ __metadata: languageName: node linkType: hard +"readdirp@npm:~3.6.0": + version: 3.6.0 + resolution: "readdirp@npm:3.6.0" + dependencies: + picomatch: "npm:^2.2.1" + checksum: 6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b + languageName: node + linkType: hard + "rechoir@npm:^0.8.0": version: 0.8.0 resolution: "rechoir@npm:0.8.0" @@ -7788,6 +9523,38 @@ __metadata: languageName: node linkType: hard +"regenerate-unicode-properties@npm:^10.1.0": + version: 10.1.1 + resolution: "regenerate-unicode-properties@npm:10.1.1" + dependencies: + regenerate: "npm:^1.4.2" + checksum: 89adb5ee5ba081380c78f9057c02e156a8181969f6fcca72451efc45612e0c3df767b4333f8d8479c274d9c6fe52ec4854f0d8a22ef95dccbe87da8e5f2ac77d + languageName: node + linkType: hard + +"regenerate@npm:^1.4.2": + version: 1.4.2 + resolution: "regenerate@npm:1.4.2" + checksum: f73c9eba5d398c818edc71d1c6979eaa05af7a808682749dd079f8df2a6d91a9b913db216c2c9b03e0a8ba2bba8701244a93f45211afbff691c32c7b275db1b8 + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.14.0": + version: 0.14.1 + resolution: "regenerator-runtime@npm:0.14.1" + checksum: 1b16eb2c4bceb1665c89de70dcb64126a22bc8eb958feef3cd68fe11ac6d2a4899b5cd1b80b0774c7c03591dc57d16631a7f69d2daa2ec98100e2f29f7ec4cc4 + languageName: node + linkType: hard + +"regenerator-transform@npm:^0.15.2": + version: 0.15.2 + resolution: "regenerator-transform@npm:0.15.2" + dependencies: + "@babel/runtime": "npm:^7.8.4" + checksum: 7cfe6931ec793269701994a93bab89c0cc95379191fad866270a7fea2adfec67ea62bb5b374db77058b60ba4509319d9b608664d0d288bd9989ca8dbd08fae90 + languageName: node + linkType: hard + "regexp-tree@npm:^0.1.21, regexp-tree@npm:~0.1.1": version: 0.1.24 resolution: "regexp-tree@npm:0.1.24" @@ -7814,6 +9581,31 @@ __metadata: languageName: node linkType: hard +"regexpu-core@npm:^5.3.1": + version: 5.3.2 + resolution: "regexpu-core@npm:5.3.2" + dependencies: + "@babel/regjsgen": "npm:^0.8.0" + regenerate: "npm:^1.4.2" + regenerate-unicode-properties: "npm:^10.1.0" + regjsparser: "npm:^0.9.1" + unicode-match-property-ecmascript: "npm:^2.0.0" + unicode-match-property-value-ecmascript: "npm:^2.1.0" + checksum: 7945d5ab10c8bbed3ca383d4274687ea825aee4ab93a9c51c6e31e1365edd5ea807f6908f800ba017b66c462944ba68011164e7055207747ab651f8111ef3770 + languageName: node + linkType: hard + +"regjsparser@npm:^0.9.1": + version: 0.9.1 + resolution: "regjsparser@npm:0.9.1" + dependencies: + jsesc: "npm:~0.5.0" + bin: + regjsparser: bin/parser + checksum: fe44fcf19a99fe4f92809b0b6179530e5ef313ff7f87df143b08ce9a2eb3c4b6189b43735d645be6e8f4033bfb015ed1ca54f0583bc7561bed53fd379feb8225 + languageName: node + linkType: hard + "relative-to-absolute-iri@npm:^1.0.0, relative-to-absolute-iri@npm:^1.0.2, relative-to-absolute-iri@npm:^1.0.5": version: 1.0.6 resolution: "relative-to-absolute-iri@npm:1.0.6" @@ -7885,6 +9677,19 @@ __metadata: languageName: node linkType: hard +"resolve@npm:^1.14.2": + version: 1.22.8 + resolution: "resolve@npm:1.22.8" + dependencies: + is-core-module: "npm:^2.13.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a + languageName: node + linkType: hard + "resolve@npm:~1.19.0": version: 1.19.0 resolution: "resolve@npm:1.19.0" @@ -7908,6 +9713,19 @@ __metadata: languageName: node linkType: hard +"resolve@patch:resolve@npm%3A^1.14.2#optional!builtin": + version: 1.22.8 + resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" + dependencies: + is-core-module: "npm:^2.13.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729 + languageName: node + linkType: hard + "resolve@patch:resolve@npm%3A~1.19.0#optional!builtin": version: 1.19.0 resolution: "resolve@patch:resolve@npm%3A1.19.0#optional!builtin::version=1.19.0&hash=c3c19d" @@ -8026,6 +9844,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^5.6.0": + version: 5.7.2 + resolution: "semver@npm:5.7.2" + bin: + semver: bin/semver + checksum: e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 + languageName: node + linkType: hard + "semver@npm:^6.0.0, semver@npm:^6.3.0": version: 6.3.0 resolution: "semver@npm:6.3.0" @@ -8106,6 +9933,16 @@ __metadata: languageName: node linkType: hard +"shaclc-parse@npm:^1.4.0": + version: 1.4.0 + resolution: "shaclc-parse@npm:1.4.0" + dependencies: + "@rdfjs/types": "npm:^1.1.0" + n3: "npm:^1.16.3" + checksum: 4e04c606100ac16b3e266c12f907d768a9a956872d305ec492fb17cd4fed02a9ad62f5b2c8f96a44447ec5971bfe171d58098af889328564be4c527c90adfdd9 + languageName: node + linkType: hard + "shallow-clone@npm:^3.0.0": version: 3.0.1 resolution: "shallow-clone@npm:3.0.1" @@ -8202,6 +10039,13 @@ __metadata: languageName: node linkType: hard +"slash@npm:^2.0.0": + version: 2.0.0 + resolution: "slash@npm:2.0.0" + checksum: f83dbd3cb62c41bb8fcbbc6bf5473f3234b97fa1d008f571710a9d3757a28c7169e1811cad1554ccb1cc531460b3d221c9a7b37f549398d9a30707f0a5af9193 + languageName: node + linkType: hard + "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" @@ -8300,6 +10144,25 @@ __metadata: languageName: node linkType: hard +"sparqlalgebrajs@npm:^4.2.0": + version: 4.3.8 + resolution: "sparqlalgebrajs@npm:4.3.8" + dependencies: + "@rdfjs/types": "npm:*" + "@types/sparqljs": "npm:^3.1.3" + fast-deep-equal: "npm:^3.1.3" + minimist: "npm:^1.2.6" + rdf-data-factory: "npm:^1.1.0" + rdf-isomorphic: "npm:^1.3.0" + rdf-string: "npm:^1.6.0" + rdf-terms: "npm:^1.10.0" + sparqljs: "npm:^3.7.1" + bin: + sparqlalgebrajs: bin/sparqlalgebrajs.js + checksum: 79088b91cad4bf4d532b6b838956d66b28e19b7ac285510dc8a530292af51f9a7a0494d9923b308562a0abacc93341968bbdd6309eb7c00689900384bb424ef8 + languageName: node + linkType: hard + "sparqljs@npm:^3.5.1": version: 3.5.1 resolution: "sparqljs@npm:3.5.1" @@ -8311,6 +10174,17 @@ __metadata: languageName: node linkType: hard +"sparqljs@npm:^3.7.1": + version: 3.7.3 + resolution: "sparqljs@npm:3.7.3" + dependencies: + rdf-data-factory: "npm:^1.1.2" + bin: + sparqljs: bin/sparql-to-json + checksum: 733323136c490e6454ced4cdd02023054a8893c3bf9e739ccd39f526a96ef5edcf42352c4f0cf2c90847292a239dfe4c68bd35f044699e2f585601a0c56c1c70 + languageName: node + linkType: hard + "spawn-sync@npm:^1.0.15": version: 1.0.15 resolution: "spawn-sync@npm:1.0.15" @@ -8829,6 +10703,15 @@ __metadata: languageName: node linkType: hard +"ts-jest-resolver@npm:^2.0.1": + version: 2.0.1 + resolution: "ts-jest-resolver@npm:2.0.1" + dependencies: + jest-resolve: "npm:^29.5.0" + checksum: 260101bc1a3db4b3cd0596f07b8df1163caa7060acb2e354bce1c60c61bc447855458d3c7346f7d6b8fbe470410dedd387a2ca3d8a9964d54b95897caa50130a + languageName: node + linkType: hard + "ts-jest@npm:^29.1.0": version: 29.1.1 resolution: "ts-jest@npm:29.1.1" @@ -8979,23 +10862,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:^5.0.0": - version: 5.0.2 - resolution: "typescript@npm:5.0.2" +"typescript@npm:^5.5.4": + version: 5.5.4 + resolution: "typescript@npm:5.5.4" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: aa0e2a766412a0c9f609133681753cc88098aa44e079820d203dc0628a8fc3997d4e6b93c2c813c483f770698561c3225c5ab3e5c8896639cfc5d94528e3005f + checksum: 422be60f89e661eab29ac488c974b6cc0a660fb2228003b297c3d10c32c90f3bcffc1009b43876a082515a3c376b1eefcce823d6e78982e6878408b9a923199c languageName: node linkType: hard -"typescript@patch:typescript@npm%3A^5.0.0#optional!builtin": - version: 5.0.2 - resolution: "typescript@patch:typescript@npm%3A5.0.2#optional!builtin::version=5.0.2&hash=b5f058" +"typescript@patch:typescript@npm%3A^5.5.4#optional!builtin": + version: 5.5.4 + resolution: "typescript@patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=29ae49" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 7889472e5f13d6c6df993f8cc26ac5bd9d27ed5e5e865afc150ceffb5c02d944e27e5e92dfd730232a9180549c6b7d3f622deacd1d96c0457cba72e17ed6901f + checksum: 10dd9881baba22763de859e8050d6cb6e2db854197495c6f1929b08d1eb2b2b00d0b5d9b0bcee8472f1c3f4a7ef6a5d7ebe0cfd703f853aa5ae465b8404bc1ba languageName: node linkType: hard @@ -9011,6 +10894,37 @@ __metadata: languageName: node linkType: hard +"unicode-canonical-property-names-ecmascript@npm:^2.0.0": + version: 2.0.0 + resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.0" + checksum: 0fe812641bcfa3ae433025178a64afb5d9afebc21a922dafa7cba971deebb5e4a37350423890750132a85c936c290fb988146d0b1bd86838ad4897f4fc5bd0de + languageName: node + linkType: hard + +"unicode-match-property-ecmascript@npm:^2.0.0": + version: 2.0.0 + resolution: "unicode-match-property-ecmascript@npm:2.0.0" + dependencies: + unicode-canonical-property-names-ecmascript: "npm:^2.0.0" + unicode-property-aliases-ecmascript: "npm:^2.0.0" + checksum: 4d05252cecaf5c8e36d78dc5332e03b334c6242faf7cf16b3658525441386c0a03b5f603d42cbec0f09bb63b9fd25c9b3b09667aee75463cac3efadae2cd17ec + languageName: node + linkType: hard + +"unicode-match-property-value-ecmascript@npm:^2.1.0": + version: 2.1.0 + resolution: "unicode-match-property-value-ecmascript@npm:2.1.0" + checksum: f5b9499b9e0ffdc6027b744d528f17ec27dd7c15da03254ed06851feec47e0531f20d410910c8a49af4a6a190f4978413794c8d75ce112950b56d583b5d5c7f2 + languageName: node + linkType: hard + +"unicode-property-aliases-ecmascript@npm:^2.0.0": + version: 2.1.0 + resolution: "unicode-property-aliases-ecmascript@npm:2.1.0" + checksum: 50ded3f8c963c7785e48c510a3b7c6bc4e08a579551489aa0349680a35b1ceceec122e33b2b6c1b579d0be2250f34bb163ac35f5f8695fe10bbc67fb757f0af8 + languageName: node + linkType: hard + "unique-filename@npm:^3.0.0": version: 3.0.0 resolution: "unique-filename@npm:3.0.0" @@ -9057,6 +10971,20 @@ __metadata: languageName: node linkType: hard +"update-browserslist-db@npm:^1.1.0": + version: 1.1.0 + resolution: "update-browserslist-db@npm:1.1.0" + dependencies: + escalade: "npm:^3.1.2" + picocolors: "npm:^1.0.1" + peerDependencies: + browserslist: ">= 4.21.0" + bin: + update-browserslist-db: cli.js + checksum: a7452de47785842736fb71547651c5bbe5b4dc1e3722ccf48a704b7b34e4dcf633991eaa8e4a6a517ffb738b3252eede3773bef673ef9021baa26b056d63a5b9 + languageName: node + linkType: hard + "uri-js@npm:^4.2.2": version: 4.4.1 resolution: "uri-js@npm:4.4.1"