From d3bf2cec2af1947e4ac673971124c31e007bb23c Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 12:16:38 -0500 Subject: [PATCH 01/32] Fixed bugs around prepublish in generated code --- packages/cli/src/create.ts | 17 +++++------------ packages/cli/src/generateReadme.ts | 20 ++++++++++++++++++++ packages/cli/src/index.ts | 6 +++--- 3 files changed, 28 insertions(+), 15 deletions(-) diff --git a/packages/cli/src/create.ts b/packages/cli/src/create.ts index 8f04a1e..b959880 100644 --- a/packages/cli/src/create.ts +++ b/packages/cli/src/create.ts @@ -90,22 +90,11 @@ export async function create(directory: string) { packageJson.scripts.prepublish = "npm run build:ldo & npm run generate-readme"; packageJson.scripts[ - "genenerate-readme" + "generate-readme" ] = `ldo generate-readme --project ./ --shapes ./.shapes --ldo ./.ldo`; return packageJson; }); - // Create index.js - load.text = "Generating index.js"; - const ldoDir = await fs.readdir(path.join(directory, "./.ldo"), { - withFileTypes: true, - }); - const indexText = await renderFile( - path.join(__dirname, "./templates/readme/projectIndex.ejs"), - { fileNames: ldoDir.map((file) => file.name) }, - ); - await fs.writeFile(path.join(directory, "index.js"), indexText); - // Generate ReadMe load.text = "Generating README"; await generateReadme({ @@ -114,5 +103,9 @@ export async function create(directory: string) { ldo: path.join(directory, ".ldo"), }); + // Create .gitignore + load.text = "Create .gitignore"; + await fs.writeFile(path.join(directory, ".gitignore"), "node_modules"); + load.stop(); } diff --git a/packages/cli/src/generateReadme.ts b/packages/cli/src/generateReadme.ts index c0df82f..8987f38 100644 --- a/packages/cli/src/generateReadme.ts +++ b/packages/cli/src/generateReadme.ts @@ -66,6 +66,8 @@ export async function generateReadme(options: GenerateReadmeOptions) { ); // Save readme to document await fs.writeFile(path.join(options.project, "README.md"), finalContent); + + await generateIndex({ project: options.project }); } /** @@ -79,3 +81,21 @@ function listInterfaces(filePath: string): string[] { const interfaces = sourceFile.getInterfaces().map((iface) => iface.getName()); return interfaces; } + +/** + * Generate Index + */ +interface GenerateIndexOptions { + project: string; +} + +export async function generateIndex(options: GenerateIndexOptions) { + const ldoDir = await fs.readdir(path.join(options.project, "./.ldo"), { + withFileTypes: true, + }); + const indexText = await renderFile( + path.join(__dirname, "./templates/readme/projectIndex.ejs"), + { fileNames: ldoDir.map((file) => file.name) }, + ); + await fs.writeFile(path.join(options.project, "index.js"), indexText); +} diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index 31e96ae..ed0b35e 100644 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -33,9 +33,9 @@ program .command("generate-readme") .description("Create a ReadMe from the shapes and generated code.") .requiredOption( - "-r, --readme ", - "Provide the path to the readme", - "./.shapes", + "-p, --project ", + "Provide the path to the root project", + "./", ) .requiredOption( "-s, --shapes ", From 52b8601e48c71f044173c8be92e483b54da167d1 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 12:17:29 -0500 Subject: [PATCH 02/32] v0.0.1-alpha.30 --- lerna.json | 2 +- package-lock.json | 22 +++++++++++----------- packages/cli/package.json | 2 +- packages/demo-react/package.json | 6 +++--- packages/solid-react/package.json | 4 ++-- packages/solid-type-index/package.json | 6 +++--- packages/solid/package.json | 4 ++-- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lerna.json b/lerna.json index 73a414d..9436130 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.0.1-alpha.29" + "version": "0.0.1-alpha.30" } diff --git a/package-lock.json b/package-lock.json index 0e4d817..f0102c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28778,7 +28778,7 @@ }, "packages/cli": { "name": "@ldo/cli", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "license": "MIT", "dependencies": { "@ldo/ldo": "^0.0.1-alpha.29", @@ -29044,10 +29044,10 @@ }, "packages/demo-react": { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.29", + "@ldo/solid-react": "^0.0.1-alpha.30", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -29056,7 +29056,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.29", + "@ldo/cli": "^0.0.1-alpha.30", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", @@ -29623,7 +29623,7 @@ }, "packages/solid": { "name": "@ldo/solid", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "license": "MIT", "dependencies": { "@ldo/dataset": "^0.0.1-alpha.24", @@ -29636,7 +29636,7 @@ }, "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.29", + "@ldo/cli": "^0.0.1-alpha.30", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -29654,14 +29654,14 @@ }, "packages/solid-react": { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "license": "MIT", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.29", + "@ldo/solid": "^0.0.1-alpha.30", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" @@ -29734,11 +29734,11 @@ }, "packages/solid-type-index": { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "license": "MIT", "dependencies": { - "@ldo/solid": "^0.0.1-alpha.29", - "@ldo/solid-react": "^0.0.1-alpha.29" + "@ldo/solid": "^0.0.1-alpha.30", + "@ldo/solid-react": "^0.0.1-alpha.30" }, "devDependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", diff --git a/packages/cli/package.json b/packages/cli/package.json index b026069..b1f516c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/cli", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "description": "A Command Line Interface for Linked Data Objects", "main": "./dist/index.js", "bin": { diff --git a/packages/demo-react/package.json b/packages/demo-react/package.json index b730700..2ff6c44 100644 --- a/packages/demo-react/package.json +++ b/packages/demo-react/package.json @@ -1,9 +1,9 @@ { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.29", + "@ldo/solid-react": "^0.0.1-alpha.30", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -37,7 +37,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.29", + "@ldo/cli": "^0.0.1-alpha.30", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index 0b0c55e..9fd2afb 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "description": "A React library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -40,7 +40,7 @@ "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.29", + "@ldo/solid": "^0.0.1-alpha.30", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index e593deb..592856d 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "description": "Solid Type Index support for LDO", "main": "dist/index.js", "scripts": { @@ -36,8 +36,8 @@ "ts-node": "^10.9.2" }, "dependencies": { - "@ldo/solid": "^0.0.1-alpha.29", - "@ldo/solid-react": "^0.0.1-alpha.29" + "@ldo/solid": "^0.0.1-alpha.30", + "@ldo/solid-react": "^0.0.1-alpha.30" }, "files": [ "dist", diff --git a/packages/solid/package.json b/packages/solid/package.json index c28bd98..1cfa249 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid", - "version": "0.0.1-alpha.29", + "version": "0.0.1-alpha.30", "description": "A library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid#readme", "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.29", + "@ldo/cli": "^0.0.1-alpha.30", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", From cbb660a710bb4767d104dda85e9eda675bb1b4c7 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 13:28:45 -0500 Subject: [PATCH 03/32] Fixed bug around generate-readme triggering build --- packages/cli/src/create.ts | 2 +- packages/cli/src/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/cli/src/create.ts b/packages/cli/src/create.ts index b959880..3ed4a96 100644 --- a/packages/cli/src/create.ts +++ b/packages/cli/src/create.ts @@ -88,7 +88,7 @@ export async function create(directory: string) { await modifyPackageJson(directory, async (packageJson) => { if (!packageJson.scripts) packageJson.scripts = {}; packageJson.scripts.prepublish = - "npm run build:ldo & npm run generate-readme"; + "npm run build:ldo && npm run generate-readme"; packageJson.scripts[ "generate-readme" ] = `ldo generate-readme --project ./ --shapes ./.shapes --ldo ./.ldo`; diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index ed0b35e..f891df4 100644 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -4,6 +4,7 @@ import { program } from "commander"; import { build } from "./build"; import { init } from "./init"; import { create } from "./create"; +import { generateReadme } from "./generateReadme"; program .name("LDO-CLI") @@ -47,6 +48,6 @@ program "Provide the path to the ldo folder", "./.ldo", ) - .action(build); + .action(generateReadme); program.parse(); From 0287cd6371f06630763568dec5e41653f7b8583e Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 13:29:47 -0500 Subject: [PATCH 04/32] v0.0.1-alpha.31 --- lerna.json | 2 +- package-lock.json | 22 +++++++++++----------- packages/cli/package.json | 2 +- packages/demo-react/package.json | 6 +++--- packages/solid-react/package.json | 4 ++-- packages/solid-type-index/package.json | 6 +++--- packages/solid/package.json | 4 ++-- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lerna.json b/lerna.json index 9436130..44eb72f 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.0.1-alpha.30" + "version": "0.0.1-alpha.31" } diff --git a/package-lock.json b/package-lock.json index f0102c6..fedf70e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28778,7 +28778,7 @@ }, "packages/cli": { "name": "@ldo/cli", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "license": "MIT", "dependencies": { "@ldo/ldo": "^0.0.1-alpha.29", @@ -29044,10 +29044,10 @@ }, "packages/demo-react": { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.30", + "@ldo/solid-react": "^0.0.1-alpha.31", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -29056,7 +29056,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.30", + "@ldo/cli": "^0.0.1-alpha.31", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", @@ -29623,7 +29623,7 @@ }, "packages/solid": { "name": "@ldo/solid", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "license": "MIT", "dependencies": { "@ldo/dataset": "^0.0.1-alpha.24", @@ -29636,7 +29636,7 @@ }, "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.30", + "@ldo/cli": "^0.0.1-alpha.31", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -29654,14 +29654,14 @@ }, "packages/solid-react": { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "license": "MIT", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.30", + "@ldo/solid": "^0.0.1-alpha.31", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" @@ -29734,11 +29734,11 @@ }, "packages/solid-type-index": { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "license": "MIT", "dependencies": { - "@ldo/solid": "^0.0.1-alpha.30", - "@ldo/solid-react": "^0.0.1-alpha.30" + "@ldo/solid": "^0.0.1-alpha.31", + "@ldo/solid-react": "^0.0.1-alpha.31" }, "devDependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", diff --git a/packages/cli/package.json b/packages/cli/package.json index b1f516c..d9cae19 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/cli", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "description": "A Command Line Interface for Linked Data Objects", "main": "./dist/index.js", "bin": { diff --git a/packages/demo-react/package.json b/packages/demo-react/package.json index 2ff6c44..5693fb6 100644 --- a/packages/demo-react/package.json +++ b/packages/demo-react/package.json @@ -1,9 +1,9 @@ { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.30", + "@ldo/solid-react": "^0.0.1-alpha.31", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -37,7 +37,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.30", + "@ldo/cli": "^0.0.1-alpha.31", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index 9fd2afb..a1fc4af 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "description": "A React library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -40,7 +40,7 @@ "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.30", + "@ldo/solid": "^0.0.1-alpha.31", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index 592856d..a56f71e 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "description": "Solid Type Index support for LDO", "main": "dist/index.js", "scripts": { @@ -36,8 +36,8 @@ "ts-node": "^10.9.2" }, "dependencies": { - "@ldo/solid": "^0.0.1-alpha.30", - "@ldo/solid-react": "^0.0.1-alpha.30" + "@ldo/solid": "^0.0.1-alpha.31", + "@ldo/solid-react": "^0.0.1-alpha.31" }, "files": [ "dist", diff --git a/packages/solid/package.json b/packages/solid/package.json index 1cfa249..5fedb08 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid", - "version": "0.0.1-alpha.30", + "version": "0.0.1-alpha.31", "description": "A library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid#readme", "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.30", + "@ldo/cli": "^0.0.1-alpha.31", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", From db02f809de5c22fad1760eb45a09c602cbd1f3a6 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 13:32:45 -0500 Subject: [PATCH 05/32] Failed push to prod --- packages/cli/package.json | 2 +- packages/demo-react/package.json | 2 +- packages/solid-react/package.json | 2 +- packages/solid-type-index/package.json | 2 +- packages/solid/package.json | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index d9cae19..ef44bc4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -63,5 +63,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "c63f055aab22155b60a5fdee4172979b9c287dfa" + "gitHead": "0287cd6371f06630763568dec5e41653f7b8583e" } diff --git a/packages/demo-react/package.json b/packages/demo-react/package.json index 5693fb6..6ec6023 100644 --- a/packages/demo-react/package.json +++ b/packages/demo-react/package.json @@ -43,7 +43,7 @@ "@types/shexj": "^2.1.4", "tsconfig-paths-webpack-plugin": "^4.1.0" }, - "gitHead": "c63f055aab22155b60a5fdee4172979b9c287dfa", + "gitHead": "0287cd6371f06630763568dec5e41653f7b8583e", "publishConfig": { "access": "public" } diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index a1fc4af..3507af2 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -52,5 +52,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "c63f055aab22155b60a5fdee4172979b9c287dfa" + "gitHead": "0287cd6371f06630763568dec5e41653f7b8583e" } diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index a56f71e..1794688 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -46,5 +46,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "c63f055aab22155b60a5fdee4172979b9c287dfa" + "gitHead": "0287cd6371f06630763568dec5e41653f7b8583e" } diff --git a/packages/solid/package.json b/packages/solid/package.json index 5fedb08..4f79e22 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -57,5 +57,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "c63f055aab22155b60a5fdee4172979b9c287dfa" + "gitHead": "0287cd6371f06630763568dec5e41653f7b8583e" } From db1622a0660c8a7560726c5f7f9e8ddab6b122c5 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 10 Feb 2025 13:33:09 -0500 Subject: [PATCH 06/32] v0.0.1-alpha.32 --- lerna.json | 2 +- package-lock.json | 22 +++++++++++----------- packages/cli/package.json | 2 +- packages/demo-react/package.json | 6 +++--- packages/solid-react/package.json | 4 ++-- packages/solid-type-index/package.json | 6 +++--- packages/solid/package.json | 4 ++-- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lerna.json b/lerna.json index 44eb72f..8f4484b 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.0.1-alpha.31" + "version": "0.0.1-alpha.32" } diff --git a/package-lock.json b/package-lock.json index fedf70e..e254262 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28778,7 +28778,7 @@ }, "packages/cli": { "name": "@ldo/cli", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "license": "MIT", "dependencies": { "@ldo/ldo": "^0.0.1-alpha.29", @@ -29044,10 +29044,10 @@ }, "packages/demo-react": { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.31", + "@ldo/solid-react": "^0.0.1-alpha.32", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -29056,7 +29056,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.31", + "@ldo/cli": "^0.0.1-alpha.32", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", @@ -29623,7 +29623,7 @@ }, "packages/solid": { "name": "@ldo/solid", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "license": "MIT", "dependencies": { "@ldo/dataset": "^0.0.1-alpha.24", @@ -29636,7 +29636,7 @@ }, "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.31", + "@ldo/cli": "^0.0.1-alpha.32", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -29654,14 +29654,14 @@ }, "packages/solid-react": { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "license": "MIT", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.31", + "@ldo/solid": "^0.0.1-alpha.32", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" @@ -29734,11 +29734,11 @@ }, "packages/solid-type-index": { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "license": "MIT", "dependencies": { - "@ldo/solid": "^0.0.1-alpha.31", - "@ldo/solid-react": "^0.0.1-alpha.31" + "@ldo/solid": "^0.0.1-alpha.32", + "@ldo/solid-react": "^0.0.1-alpha.32" }, "devDependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", diff --git a/packages/cli/package.json b/packages/cli/package.json index ef44bc4..37dcf8f 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/cli", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "description": "A Command Line Interface for Linked Data Objects", "main": "./dist/index.js", "bin": { diff --git a/packages/demo-react/package.json b/packages/demo-react/package.json index 6ec6023..5116777 100644 --- a/packages/demo-react/package.json +++ b/packages/demo-react/package.json @@ -1,9 +1,9 @@ { "name": "@ldo/demo-react", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/solid-react": "^0.0.1-alpha.31", + "@ldo/solid-react": "^0.0.1-alpha.32", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0", @@ -37,7 +37,7 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@ldo/cli": "^0.0.1-alpha.31", + "@ldo/cli": "^0.0.1-alpha.32", "@types/jsonld": "^1.5.9", "@types/react": "^18.2.21", "@types/shexj": "^2.1.4", diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index 3507af2..273af19 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "description": "A React library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -40,7 +40,7 @@ "@ldo/dataset": "^0.0.1-alpha.24", "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.31", + "@ldo/solid": "^0.0.1-alpha.32", "@ldo/subscribable-dataset": "^0.0.1-alpha.24", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index 1794688..d69c148 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "description": "Solid Type Index support for LDO", "main": "dist/index.js", "scripts": { @@ -36,8 +36,8 @@ "ts-node": "^10.9.2" }, "dependencies": { - "@ldo/solid": "^0.0.1-alpha.31", - "@ldo/solid-react": "^0.0.1-alpha.31" + "@ldo/solid": "^0.0.1-alpha.32", + "@ldo/solid-react": "^0.0.1-alpha.32" }, "files": [ "dist", diff --git a/packages/solid/package.json b/packages/solid/package.json index 4f79e22..20c21e7 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid", - "version": "0.0.1-alpha.31", + "version": "0.0.1-alpha.32", "description": "A library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid#readme", "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.31", + "@ldo/cli": "^0.0.1-alpha.32", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", From 10ec863635011c5a7d6c5a297e496aad5123e49d Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 13 Feb 2025 16:28:14 -0500 Subject: [PATCH 07/32] Defined LD Set --- .../jsonld-dataset-proxy/src/ProxyContext.ts | 6 +- .../src/arrayProxy/ArrayProxy.ts | 20 -- .../src/arrayProxy/arrayMethods.ts | 219 ------------------ .../createArrayHandler.ts | 0 .../isSetProxy.ts} | 0 .../src/setProxy/ldSet/BasicLdSet.ts | 158 +++++++++++++ .../src/setProxy/ldSet/LdSet.ts | 178 ++++++++++++++ .../{arrayProxy => setProxy}/modifyArray.ts | 0 .../src/setProxy/setProxy.ts | 141 +++++++++++ .../src/subjectProxy/getValueForKey.ts | 2 +- .../jsonld-dataset-proxy/tsconfig.build.json | 2 +- 11 files changed, 482 insertions(+), 244 deletions(-) delete mode 100644 packages/jsonld-dataset-proxy/src/arrayProxy/ArrayProxy.ts delete mode 100644 packages/jsonld-dataset-proxy/src/arrayProxy/arrayMethods.ts rename packages/jsonld-dataset-proxy/src/{arrayProxy => setProxy}/createArrayHandler.ts (100%) rename packages/jsonld-dataset-proxy/src/{arrayProxy/isArrayProxy.ts => setProxy/isSetProxy.ts} (100%) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts rename packages/jsonld-dataset-proxy/src/{arrayProxy => setProxy}/modifyArray.ts (100%) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index 6220c5d..3f6dc45 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -1,10 +1,10 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; -import type { ArrayProxyTarget } from "./arrayProxy/createArrayHandler"; -import { createArrayHandler } from "./arrayProxy/createArrayHandler"; +import type { ArrayProxyTarget } from "./setProxy/createArrayHandler"; +import { createArrayHandler } from "./setProxy/createArrayHandler"; import { createSubjectHandler } from "./subjectProxy/createSubjectHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; -import type { ArrayProxy } from "./arrayProxy/ArrayProxy"; +import type { ArrayProxy } from "./setProxy/ldSet/LdSet"; import { _getUnderlyingArrayTarget } from "./types"; import type { ContextUtil } from "./ContextUtil"; import type { LanguageOrdering } from "./language/languageTypes"; diff --git a/packages/jsonld-dataset-proxy/src/arrayProxy/ArrayProxy.ts b/packages/jsonld-dataset-proxy/src/arrayProxy/ArrayProxy.ts deleted file mode 100644 index 789d7df..0000000 --- a/packages/jsonld-dataset-proxy/src/arrayProxy/ArrayProxy.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { Dataset } from "@rdfjs/types"; -import type { ObjectNode } from "@ldo/rdf-utils"; -import type { ArrayProxyTarget } from "./createArrayHandler"; -import type { - _getNodeAtIndex, - _getUnderlyingArrayTarget, - _getUnderlyingDataset, - _getUnderlyingMatch, - _proxyContext, -} from "../types"; -import { _getUnderlyingNode } from "../types"; -import type { ProxyContext } from "../ProxyContext"; - -export type ArrayProxy = Array & { - readonly [_getUnderlyingDataset]: Dataset; - readonly [_getUnderlyingMatch]: ArrayProxyTarget[0]; - readonly [_getNodeAtIndex]: (index: number) => ObjectNode | undefined; - readonly [_getUnderlyingArrayTarget]: ArrayProxyTarget; - [_proxyContext]: ProxyContext; -}; diff --git a/packages/jsonld-dataset-proxy/src/arrayProxy/arrayMethods.ts b/packages/jsonld-dataset-proxy/src/arrayProxy/arrayMethods.ts deleted file mode 100644 index d0bf671..0000000 --- a/packages/jsonld-dataset-proxy/src/arrayProxy/arrayMethods.ts +++ /dev/null @@ -1,219 +0,0 @@ -import type { ArrayProxyTarget } from "./createArrayHandler"; -import type { ObjectJsonRepresentation } from "../util/nodeToJsonldRepresentation"; -import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; -import { modifyArray } from "./modifyArray"; -import type { ProxyContext } from "../ProxyContext"; - -export type methodBuilder = ( - target: ArrayProxyTarget, - key: string, - proxyContext: ProxyContext, -) => Return; - -export interface ArrayMethodBuildersType { - copyWithin: methodBuilder["copyWithin"]>; - fill: methodBuilder["fill"]>; - pop: methodBuilder["pop"]>; - push: methodBuilder["push"]>; - reverse: methodBuilder["reverse"]>; - shift: methodBuilder["shift"]>; - sort: methodBuilder["sort"]>; - splice: methodBuilder["splice"]>; - unshift: methodBuilder["unshift"]>; -} - -export const methodNames: Set = new Set([ - "copyWithin", - "fill", - "pop", - "push", - "reverse", - "shift", - "sort", - "splice", - "unshift", -]); - -export const arrayMethodsBuilders: ArrayMethodBuildersType = { - copyWithin: (target, key, proxyContext) => { - return (targetIndex, start, end) => { - return modifyArray( - { - target, - key, - quadsToDelete: (quads) => { - const oldQuads = [...quads]; - const newQuadSet = new Set( - quads.copyWithin(targetIndex, start, end), - ); - return oldQuads.filter((oldQuad) => !newQuadSet.has(oldQuad)); - }, - modifyCoreArray: (coreArray) => { - coreArray.copyWithin(targetIndex, start, end); - return proxyContext.createArrayProxy( - target[0], - target[2], - ) as ObjectJsonRepresentation[]; - }, - }, - proxyContext, - ); - }; - }, - fill: (target, key, proxyContext) => { - return (value, start, end) => { - return modifyArray( - { - target, - key, - toAdd: [value], - quadsToDelete: (quads) => { - return quads.slice(start, end); - }, - modifyCoreArray: (coreArray, addedValues) => { - coreArray.fill(addedValues[0], start, end); - return proxyContext.createArrayProxy( - target[0], - target[2], - ) as ObjectJsonRepresentation[]; - }, - }, - proxyContext, - ); - }; - }, - pop: (target, key, proxyContext) => { - return () => { - return modifyArray( - { - target, - key, - quadsToDelete: (quads) => { - return quads[quads.length - 1] ? [quads[quads.length - 1]] : []; - }, - modifyCoreArray: (coreArray) => { - const popped = coreArray.pop(); - return popped - ? nodeToJsonldRepresentation(popped, proxyContext) - : undefined; - }, - }, - proxyContext, - ); - }; - }, - push: (target, key, proxyContext) => { - return (...args) => { - return modifyArray( - { - target, - key, - toAdd: args, - modifyCoreArray: (coreArray, addedValues) => { - coreArray.push(...addedValues); - return proxyContext.createArrayProxy(target[0], target[2]).length; - }, - }, - proxyContext, - ); - }; - }, - reverse: (target, _key, proxyContext) => { - return () => { - target[1].reverse(); - return proxyContext.createArrayProxy( - target[0], - target[2], - ) as ObjectJsonRepresentation[]; - }; - }, - shift: (target, key, proxyContext) => { - return () => { - return modifyArray( - { - target, - key, - quadsToDelete: (quads) => { - return quads[0] ? [quads[0]] : []; - }, - modifyCoreArray: (coreArray) => { - const shifted = coreArray.shift(); - return shifted - ? nodeToJsonldRepresentation(shifted, proxyContext) - : undefined; - }, - }, - proxyContext, - ); - }; - }, - sort: (target, _key, proxyContext) => { - return (compareFunction) => { - if (compareFunction) { - target[1].sort((a, b) => { - return compareFunction( - nodeToJsonldRepresentation(a, proxyContext), - nodeToJsonldRepresentation(b, proxyContext), - ); - }); - } else if (target) { - target[1].sort((a, b) => { - const aReal = nodeToJsonldRepresentation(a, proxyContext); - const bReal = nodeToJsonldRepresentation(b, proxyContext); - if (aReal > bReal) { - return 1; - } else if (bReal > aReal) { - return -1; - } else { - return 0; - } - }); - } - return proxyContext.createArrayProxy( - target[0], - target[2], - ) as ObjectJsonRepresentation[]; - }; - }, - splice: (target, key, proxyContext) => { - return (start, deleteCount, ...items: ObjectJsonRepresentation[]) => { - return modifyArray( - { - target, - key, - toAdd: items, - quadsToDelete: (quads) => { - return quads.splice(start, deleteCount); - }, - modifyCoreArray: (coreArray, addedValues) => { - const spliced = coreArray.splice( - start, - deleteCount || 0, - ...addedValues, - ); - return spliced.map((node) => { - return nodeToJsonldRepresentation(node, proxyContext); - }); - }, - }, - proxyContext, - ); - }; - }, - unshift: (target, key, proxyContext) => { - return (...args) => { - return modifyArray( - { - target, - key, - toAdd: args, - modifyCoreArray: (coreArray, addedValues) => { - coreArray.unshift(...addedValues); - return proxyContext.createArrayProxy(target[0], target[2]).length; - }, - }, - proxyContext, - ); - }; - }, -}; diff --git a/packages/jsonld-dataset-proxy/src/arrayProxy/createArrayHandler.ts b/packages/jsonld-dataset-proxy/src/setProxy/createArrayHandler.ts similarity index 100% rename from packages/jsonld-dataset-proxy/src/arrayProxy/createArrayHandler.ts rename to packages/jsonld-dataset-proxy/src/setProxy/createArrayHandler.ts diff --git a/packages/jsonld-dataset-proxy/src/arrayProxy/isArrayProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts similarity index 100% rename from packages/jsonld-dataset-proxy/src/arrayProxy/isArrayProxy.ts rename to packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts new file mode 100644 index 0000000..d9cd776 --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -0,0 +1,158 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +export class BasicLdSet extends Set implements LdSet { + every( + predicate: (value: T, set: LdSet) => value is S, + thisArg?: any, + ): this is LdSet; + every( + predicate: (value: T, set: LdSet) => unknown, + thisArg?: any, + ): boolean; + every(predicate: (value: T, set: LdSet) => any, thisArg?: any): boolean { + for (const value of this) { + if (!predicate.call(thisArg, value, this)) return false; + } + return true; + } + + some( + predicate: (value: T, set: LdSet) => unknown, + thisArg?: any, + ): boolean { + for (const value of this) { + if (predicate.call(thisArg, value, this)) return true; + } + return false; + } + + forEach( + callbackfn: (value: T, value2: T, set: LdSet) => void, + thisArg?: any, + ): void { + for (const value of this) { + callbackfn.call(thisArg, value, value, this); + } + } + + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet { + const newSet = new BasicLdSet(); + for (const value of this) { + newSet.add(callbackfn.call(thisArg, value, this)); + } + return newSet; + } + + filter( + predicate: (value: T, set: LdSet) => value is S, + thisArg?: any, + ): LdSet; + filter( + predicate: (value: T, set: LdSet) => unknown, + thisArg?: any, + ): LdSet; + filter( + predicate: (value: T, set: LdSet) => any, + thisArg?: unknown, + ): LdSet { + const newSet = new BasicLdSet(); + for (const value of this) { + if (predicate.call(thisArg, value, this)) newSet.add(value); + } + return newSet; + } + + reduce( + callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, + ): T; + reduce( + callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, + initialValue: T, + ): T; + reduce( + callbackfn: (previousValue: U, currentValue: T, set: LdSet) => U, + initialValue: U, + ): U; + reduce(callbackfn: any, initialValue?: any): any { + const iterator = this[Symbol.iterator](); + let accumulator; + + if (initialValue === undefined) { + const first = iterator.next(); + if (first.done) { + throw new TypeError("Reduce of empty collection with no initial value"); + } + accumulator = first.value; + } else { + accumulator = initialValue; + } + + let result = iterator.next(); + while (!result.done) { + accumulator = callbackfn(accumulator, result.value, this); + result = iterator.next(); + } + + return accumulator; + } + + difference(other: Set): LdSet { + return this.filter((value) => !other.has(value)); + } + + intersection(other: Set): LdSet { + const newSet = new BasicLdSet(); + const iteratingSet = this.size < other.size ? this : other; + const comparingSet = this.size < other.size ? other : this; + for (const value of iteratingSet) { + if (comparingSet.has(value)) { + newSet.add(value); + } + } + return newSet; + } + + isDisjointFrom(other: Set): boolean { + const iteratingSet = this.size < other.size ? this : other; + const comparingSet = this.size < other.size ? other : this; + for (const value of iteratingSet) { + if (comparingSet.has(value)) return false; + } + return true; + } + + isSubsetOf(other: Set): boolean { + if (this.size > other.size) return false; + for (const value of this) { + if (!other.has(value)) return false; + } + return true; + } + + isSupersetOf(other: Set): boolean { + if (this.size < other.size) return false; + for (const value of other) { + if (!this.has(value)) return false; + } + return true; + } + + symmetricDifference(other: Set): LdSet { + const newSet = new BasicLdSet(); + this.forEach((value) => newSet.add(value)); + other.forEach((value) => { + if (newSet.has(value)) { + newSet.delete(value); + } else { + newSet.add(value); + } + }); + return newSet; + } + + union(other: Set): LdSet { + const newSet = new BasicLdSet(); + this.forEach((value) => newSet.add(value)); + other.forEach((value) => newSet.add(value)); + return newSet; + } +} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts new file mode 100644 index 0000000..9938639 --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -0,0 +1,178 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +/** + * An abract representation for a set of Linked Data Objects + */ +interface LdSet extends Set { + /** + * =========================================================================== + * BASE METHODS + * =========================================================================== + */ + /** + * Appends a new element with a specified value to the end of the Set. + */ + add(value: T): this; + /** + * Clears the set of value + */ + clear(): void; + /** + * Removes a specified value from the Set. + * @returns Returns true if an element in the Set existed and has been removed, or false if the element does not exist. + */ + delete(value: T): boolean; + /** + * @returns a boolean indicating whether an element with the specified value exists in the Set or not. + */ + has(value: T): boolean; + /** + * @returns the number of (unique) elements in Set. + */ + readonly size: number; + /** Iterates over values in the set. */ + [Symbol.iterator](): SetIterator; + /** + * Returns an iterable of [v,v] pairs for every value `v` in the set. + */ + entries(): SetIterator<[T, T]>; + /** + * Despite its name, returns an iterable of the values in the set. + */ + keys(): SetIterator; + /** + * Returns an iterable of values in the set. + */ + values(): SetIterator; + /** + * =========================================================================== + * ITERATOR METHODS + * These methods mimic array methods + * =========================================================================== + */ + /** + * Determines whether all the members of an set satisfy the specified test. + * @param predicate A function that accepts up to two arguments. The every method calls + * the predicate function for each element in the set until the predicate returns a value + * which is coercible to the Boolean value false, or until the end of the set. + * @param thisArg An object to which the this keyword can refer in the predicate function. + * If thisArg is omitted, undefined is used as the this value. + */ + every( + predicate: (value: T, set: LdSet) => value is S, + thisArg?: any, + ): this is LdSet; + /** + * Determines whether all the members of an set satisfy the specified test. + * @param predicate A function that accepts up to two arguments. The every method calls + * the predicate function for each element in the set until the predicate returns a value + * which is coercible to the Boolean value false, or until the end of the set. + * @param thisArg An object to which the this keyword can refer in the predicate function. + * If thisArg is omitted, undefined is used as the this value. + */ + every( + predicate: (value: T, set: LdSet) => unknown, + thisArg?: any, + ): boolean; + /** + * Determines whether the specified callback function returns true for any element of a set. + * @param predicate A function that accepts up to two arguments. The some method calls + * the predicate function for each element in the set until the predicate returns a value + * which is coercible to the Boolean value true, or until the end of the set. + * @param thisArg An object to which the this keyword can refer in the predicate function. + * If thisArg is omitted, undefined is used as the this value. + */ + some(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean; + /** + * Performs the specified action for each element in an set. + * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the set. A "value2" is provided for parity with the base set. + * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value. + */ + forEach( + callbackfn: (value: T, value2: T, set: LdSet) => void, + thisArg?: any, + ): void; + /** + * Calls a defined callback function on each element of an set, and returns a set that contains the results. + * @param callbackfn A function that accepts up to two arguments. The map method calls the callbackfn function one time for each element in the set. + * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value. + */ + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet; + /** + * Returns the elements of a set that meet the condition specified in a callback function. + * @param predicate A function that accepts up to two arguments. The filter method calls the predicate function one time for each element in the set. + * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value. + */ + filter( + predicate: (value: T, set: LdSet) => value is S, + thisArg?: any, + ): LdSet; + /** + * Returns the elements of a set that meet the condition specified in a callback function. + * @param predicate A function that accepts up to two arguments. The filter method calls the predicate function one time for each element in the set. + * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value. + */ + filter( + predicate: (value: T, set: LdSet) => unknown, + thisArg?: any, + ): LdSet; + /** + * Calls the specified callback function for all the elements in a set. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function. + * @param callbackfn A function that accepts up to three arguments. The reduce method calls the callbackfn function one time for each element in the set. + * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value. + */ + reduce( + callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, + ): T; + /** + * Calls the specified callback function for all the elements in a set. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function. + * @param callbackfn A function that accepts up to three arguments. The reduce method calls the callbackfn function one time for each element in the set. + * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value. + */ + reduce( + callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, + initialValue: T, + ): T; + /** + * Calls the specified callback function for all the elements in a set. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function. + * @param callbackfn A function that accepts up to three arguments. The reduce method calls the callbackfn function one time for each element in the set. + * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value. + */ + reduce( + callbackfn: (previousValue: U, currentValue: T, array: LdSet) => U, + initialValue: U, + ): U; + + /** + * =========================================================================== + * EXTENDED SET METHODS + * =========================================================================== + */ + /** + * Returns a new set containing elements in this set but not in the given set. + */ + difference(other: Set): LdSet; + /** + * returns a new set containing elements in both this set and the given set. + */ + intersection(other: Set): LdSet; + /** + * Returns a boolean indicating if this set has no elements in common with the given set. + */ + isDisjointFrom(other: Set): boolean; + /** + * Returns a boolean indicating if all elements of this set are in the given set. + */ + isSubsetOf(other: Set): boolean; + /** + * Returns a boolean indicating if all elements of the given set are in this set. + */ + isSupersetOf(other: Set): boolean; + /** + * Returns a new set containing elements which are in either this set or the given set, but not in both. + */ + symmetricDifference(other: Set): LdSet; + /** + * Returns a new set containing elements which are in either or both of this set and the given set. + */ + union(other: Set): LdSet; +} diff --git a/packages/jsonld-dataset-proxy/src/arrayProxy/modifyArray.ts b/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts similarity index 100% rename from packages/jsonld-dataset-proxy/src/arrayProxy/modifyArray.ts rename to packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts diff --git a/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts new file mode 100644 index 0000000..c33031c --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts @@ -0,0 +1,141 @@ +/** + * This file handles the underlying functionality of a set, including hidden + * helper methods + */ +import type { Dataset } from "@rdfjs/types"; +import type { ObjectNode, QuadMatch } from "@ldo/rdf-utils"; +import type { ArrayProxyTarget } from "./createArrayHandler"; +import type { + _getNodeAtIndex, + _getUnderlyingArrayTarget, + _getUnderlyingDataset, + _getUnderlyingMatch, + _proxyContext, +} from "../types"; +import { _getUnderlyingNode } from "../types"; +import type { ProxyContext } from "../ProxyContext"; + +export class SetProxy implements LdSet { + context: ProxyContext; + quadMatch: QuadMatch; + isSubjectOriented?: boolean; + isLangStringSet?: boolean; + + constructor( + context: ProxyContext, + quadMatch: QuadMatch, + isSubjectOriented?: boolean, + isLangStringSet?: boolean, + ) { + this.context = context; + this.quadMatch = quadMatch; + this.isSubjectOriented = isSubjectOriented; + this.isLangStringSet = isLangStringSet; + } + + add(value: T): this { + throw new Error("Method not implemented."); + } + + clear(): void { + throw new Error("Method not implemented."); + } + + delete(value: T): boolean { + throw new Error("Method not implemented."); + } + + has(value: T): boolean { + throw new Error("Method not implemented."); + } + + get size(): number { + throw new Error("Method not implemented."); + } + + entries(): SetIterator<[T, T]> { + throw new Error("Method not implemented."); + } + + keys(): SetIterator { + throw new Error("Method not implemented."); + } + + values(): SetIterator { + throw new Error("Method not implemented."); + } + + every(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): this is LdSet; + + every(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean; + every(predicate: unknown, thisArg?: unknown): boolean { + throw new Error("Method not implemented."); + } + + some(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean { + throw new Error("Method not implemented."); + } + + forEach(callbackfn: (value: T, value2: T, set: LdSet) => void, thisArg?: any): void { + throw new Error("Method not implemented."); + } + + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet { + throw new Error("Method not implemented."); + } + + filter(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): LdSet; + filter(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): LdSet; + filter(predicate: unknown, thisArg?: unknown): LdSet | LdSet { + throw new Error("Method not implemented."); + } + + reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T): T; + reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, initialValue: T): T; + reduce(callbackfn: (previousValue: U, currentValue: T, array: LdSet) => U, initialValue: U): U; + reduce(callbackfn: unknown, initialValue?: unknown): T | U { + throw new Error("Method not implemented."); + } + + difference(other: Set): LdSet { + throw new Error("Method not implemented."); + } + + intersection(other: Set): LdSet { + throw new Error("Method not implemented."); + } + + isDisjointFrom(other: Set): boolean { + throw new Error("Method not implemented."); + } + + isSubsetOf(other: Set): boolean { + throw new Error("Method not implemented."); + } + + isSupersetOf(other: Set): boolean { + throw new Error("Method not implemented."); + } + + symmetricDifference(other: Set): LdSet { + throw new Error("Method not implemented."); + } + + union(other: Set): LdSet { + throw new Error("Method not implemented."); + } + + [Symbol.iterator](): SetIterator { + throw new Error("Method not implemented."); + } + + [Symbol.toStringTag]: string; +} + +export type ArrayProxy = Array & { + readonly [_getUnderlyingDataset]: Dataset; + readonly [_getUnderlyingMatch]: ArrayProxyTarget[0]; + readonly [_getNodeAtIndex]: (index: number) => ObjectNode | undefined; + readonly [_getUnderlyingArrayTarget]: ArrayProxyTarget; + [_proxyContext]: ProxyContext; +}; diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts index a22b9ec..06a6ab4 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts @@ -2,7 +2,7 @@ import type { SubjectProxyTarget } from "./createSubjectHandler"; import { namedNode } from "@rdfjs/data-model"; import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; import type { SubjectProxy } from "./SubjectProxy"; -import type { ArrayProxy } from "../arrayProxy/ArrayProxy"; +import type { ArrayProxy } from "../setProxy/ldSet/LdSet"; import type { ProxyContext } from "../ProxyContext"; import { filterQuadsByLanguageOrdering } from "../language/languageUtils"; diff --git a/packages/jsonld-dataset-proxy/tsconfig.build.json b/packages/jsonld-dataset-proxy/tsconfig.build.json index ce7be9c..4bd5a5e 100644 --- a/packages/jsonld-dataset-proxy/tsconfig.build.json +++ b/packages/jsonld-dataset-proxy/tsconfig.build.json @@ -1,7 +1,7 @@ { "extends": "../../tsconfig.base.json", "compilerOptions": { - "outDir": "./dist" + "outDir": "./dist", }, "include": ["./src"] } \ No newline at end of file From 7abe0fa58712d1d78e3e5b1018b3335af66e626b Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 13 Feb 2025 16:32:36 -0500 Subject: [PATCH 08/32] Fixed return value for map --- .../jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts | 8 ++++---- packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index d9cd776..5c11633 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -34,12 +34,12 @@ export class BasicLdSet extends Set implements LdSet { } } - map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet { - const newSet = new BasicLdSet(); + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): U[] { + const returnValues: U[] = []; for (const value of this) { - newSet.add(callbackfn.call(thisArg, value, this)); + returnValues.push(callbackfn.call(thisArg, value, this)); } - return newSet; + return returnValues; } filter( diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts index 9938639..1c76708 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -96,7 +96,7 @@ interface LdSet extends Set { * @param callbackfn A function that accepts up to two arguments. The map method calls the callbackfn function one time for each element in the set. * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value. */ - map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet; + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): U[]; /** * Returns the elements of a set that meet the condition specified in a callback function. * @param predicate A function that accepts up to two arguments. The filter method calls the predicate function one time for each element in the set. From 227c94b94ffcce0c6e0af6f2bea5e9f8d70f6c4b Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Tue, 18 Feb 2025 13:41:07 -0500 Subject: [PATCH 09/32] Created LdSet --- .../jsonld-dataset-proxy/src/ProxyContext.ts | 4 +- ...ateArrayHandler.ts => createSetHandler.ts} | 0 .../src/setProxy/isSetProxy.ts | 25 +-- .../src/setProxy/ldSet/BasicLdSet.ts | 78 ++++++- .../src/setProxy/ldSet/LdSet.ts | 2 +- .../src/setProxy/modifyArray.ts | 2 +- .../src/setProxy/setProxy.ts | 204 +++++++++++------- .../src/subjectProxy/SubjectProxy.ts | 2 +- packages/jsonld-dataset-proxy/src/types.ts | 2 - 9 files changed, 207 insertions(+), 112 deletions(-) rename packages/jsonld-dataset-proxy/src/setProxy/{createArrayHandler.ts => createSetHandler.ts} (100%) diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index 3f6dc45..f12817e 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -1,7 +1,7 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; -import type { ArrayProxyTarget } from "./setProxy/createArrayHandler"; -import { createArrayHandler } from "./setProxy/createArrayHandler"; +import type { ArrayProxyTarget } from "./setProxy/createSetHandler"; +import { createArrayHandler } from "./setProxy/createSetHandler"; import { createSubjectHandler } from "./subjectProxy/createSubjectHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; import type { ArrayProxy } from "./setProxy/ldSet/LdSet"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/createArrayHandler.ts b/packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts similarity index 100% rename from packages/jsonld-dataset-proxy/src/setProxy/createArrayHandler.ts rename to packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts diff --git a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts index 17ce027..60299c3 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts @@ -1,23 +1,10 @@ -import { - _getNodeAtIndex, - _getUnderlyingArrayTarget, - _getUnderlyingDataset, - _getUnderlyingMatch, - _getUnderlyingNode, - _proxyContext, - _writeGraphs, -} from "../types"; -import type { ArrayProxy } from "./ArrayProxy"; +import type { RawObject } from "../util/RawObject"; +import { SetProxy } from "./setProxy"; -export function isArrayProxy(someObject?: unknown): someObject is ArrayProxy { +export function isSetProxy( + someObject?: unknown, +): someObject is SetProxy { if (!someObject) return false; if (typeof someObject !== "object") return false; - const potentialArrayProxy = someObject as ArrayProxy; - - return !( - typeof potentialArrayProxy[_getUnderlyingDataset] !== "object" || - typeof potentialArrayProxy[_getUnderlyingMatch] !== "object" || - typeof potentialArrayProxy[_getNodeAtIndex] !== "function" || - typeof potentialArrayProxy[_getUnderlyingArrayTarget] !== "object" - ); + return someObject instanceof SetProxy; } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index 5c11633..65978bc 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -1,5 +1,67 @@ +import type { ProxyContext } from "../../ProxyContext"; +import type { SubjectProxy } from "../../subjectProxy/SubjectProxy"; +import { _getUnderlyingNode } from "../../types"; +import { getNodeFromRawObject } from "../../util/getNodeFromRaw"; +import { nodeToString } from "../../util/NodeSet"; +import type { RawObject } from "../../util/RawObject"; + /* eslint-disable @typescript-eslint/no-explicit-any */ -export class BasicLdSet extends Set implements LdSet { +export class BasicLdSet + extends Set + implements LdSet +{ + protected context: ProxyContext; + private hashMap = new Map(); + + constructor(proxyContext: ProxyContext) { + super(); + this.context = proxyContext; + } + + private hashFn(value: T) { + return nodeToString(getNodeFromRawObject(value, this.context.contextUtil)); + } + + /** + * =========================================================================== + * Base Set Functions + * =========================================================================== + */ + + add(value: T): this { + const key = this.hashFn(value); + if (!this.hashMap.has(key)) { + this.hashMap.set(key, value); + super.add(value); + } + return this; + } + + clear(): void { + this.hashMap.clear(); + super.clear(); + } + + delete(value: T): boolean { + const key = this.hashFn(value); + if (this.hashMap.has(key)) { + this.hashMap.delete(key); + return super.delete(value); + } + return false; + } + + has(value: T): boolean { + const key = this.hashFn(value); + return this.hashMap.has(key); + } + + /** + * =========================================================================== + * Array Functions + * =========================================================================== + */ + every( predicate: (value: T, set: LdSet) => value is S, thisArg?: any, @@ -54,7 +116,7 @@ export class BasicLdSet extends Set implements LdSet { predicate: (value: T, set: LdSet) => any, thisArg?: unknown, ): LdSet { - const newSet = new BasicLdSet(); + const newSet = new BasicLdSet(this.context); for (const value of this) { if (predicate.call(thisArg, value, this)) newSet.add(value); } @@ -95,12 +157,18 @@ export class BasicLdSet extends Set implements LdSet { return accumulator; } + /** + * =========================================================================== + * Set Methods + * =========================================================================== + */ + difference(other: Set): LdSet { return this.filter((value) => !other.has(value)); } intersection(other: Set): LdSet { - const newSet = new BasicLdSet(); + const newSet = new BasicLdSet(this.context); const iteratingSet = this.size < other.size ? this : other; const comparingSet = this.size < other.size ? other : this; for (const value of iteratingSet) { @@ -137,7 +205,7 @@ export class BasicLdSet extends Set implements LdSet { } symmetricDifference(other: Set): LdSet { - const newSet = new BasicLdSet(); + const newSet = new BasicLdSet(this.context); this.forEach((value) => newSet.add(value)); other.forEach((value) => { if (newSet.has(value)) { @@ -150,7 +218,7 @@ export class BasicLdSet extends Set implements LdSet { } union(other: Set): LdSet { - const newSet = new BasicLdSet(); + const newSet = new BasicLdSet(this.context); this.forEach((value) => newSet.add(value)); other.forEach((value) => newSet.add(value)); return newSet; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts index 1c76708..8d5a7d3 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -13,7 +13,7 @@ interface LdSet extends Set { */ add(value: T): this; /** - * Clears the set of value + * Clears this set of all values, but keeps the values in the datastore */ clear(): void; /** diff --git a/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts b/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts index f58758d..0281afd 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts @@ -15,7 +15,7 @@ import { import { nodeToString } from "../util/NodeSet"; import type { ObjectJsonRepresentation } from "../util/nodeToJsonldRepresentation"; import type { RawObject, RawValue } from "../util/RawObject"; -import type { ArrayProxyTarget } from "./createArrayHandler"; +import type { ArrayProxyTarget } from "./createSetHandler"; export function checkArrayModification( target: ArrayProxyTarget, diff --git a/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts index c33031c..754153c 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts @@ -3,139 +3,181 @@ * helper methods */ import type { Dataset } from "@rdfjs/types"; -import type { ObjectNode, QuadMatch } from "@ldo/rdf-utils"; -import type { ArrayProxyTarget } from "./createArrayHandler"; import type { - _getNodeAtIndex, - _getUnderlyingArrayTarget, + ObjectNode, + PredicateNode, + QuadMatch, + SubjectNode, +} from "@ldo/rdf-utils"; +import { + _isSubjectOriented, _getUnderlyingDataset, - _getUnderlyingMatch, _proxyContext, + _isLangString, + _getUnderlyingMatch, + _getUnderlyingNode, } from "../types"; -import { _getUnderlyingNode } from "../types"; import type { ProxyContext } from "../ProxyContext"; +import { addObjectToDataset } from "../util/addObjectToDataset"; +import type { RawObject } from "../util/RawObject"; +import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; +import { BasicLdSet } from "./ldSet/BasicLdSet"; +import { getNodeFromRawObject } from "../util/getNodeFromRaw"; -export class SetProxy implements LdSet { - context: ProxyContext; - quadMatch: QuadMatch; - isSubjectOriented?: boolean; - isLangStringSet?: boolean; +export class SetProxy extends BasicLdSet { + private quadMatch: QuadMatch; + private isLangStringSet?: boolean; constructor( context: ProxyContext, quadMatch: QuadMatch, - isSubjectOriented?: boolean, isLangStringSet?: boolean, ) { - this.context = context; + super(context); this.quadMatch = quadMatch; - this.isSubjectOriented = isSubjectOriented; this.isLangStringSet = isLangStringSet; } + /** + * Detects if this set is subject oriented. The set is subject oriented if the + * given quadMatch has a predicate and an object but no subject, meanting + */ + private isSubjectOriented(): boolean { + if (this.quadMatch[0] && this.quadMatch[1] && !this.quadMatch[2]) + return false; + if (this.quadMatch[1] && !this.quadMatch[0]) return true; + throw new Error( + `SetProxy has an invalid quad match: [${this.quadMatch[0]}, ${this.quadMatch[1]}, ${this.quadMatch[2]}, ${this.quadMatch[3]}]`, + ); + } + + /** + * Gets the subject, predicate and object for this set + */ + private getSPO(value?: T): { + subject?: SubjectNode; + predicate: PredicateNode; + object?: ObjectNode; + } { + const valueNode = value + ? getNodeFromRawObject(value, this.context.contextUtil) + : undefined; + const subject: SubjectNode | undefined = this.isSubjectOriented() + ? valueNode + : this.quadMatch[0]!; + const predicate = this.quadMatch[1]!; + const object: ObjectNode | undefined = this.isSubjectOriented() + ? this.quadMatch[2] ?? undefined + : valueNode; + return { subject, predicate, object }; + } + add(value: T): this { - throw new Error("Method not implemented."); + // Add value + const added = addObjectToDataset(value as RawObject, false, this.context); + // Add connecting edges + if (!this.isSubjectOriented) { + addObjectToDataset( + { + "@id": this.quadMatch[0], + [this.context.contextUtil.iriToKey( + this.quadMatch[1]!.value, + this.context.getRdfType(this.quadMatch[0]!), + )]: added, + } as RawObject, + false, + this.context, + ); + } else { + // Account for subject-oriented + added[ + this.context.contextUtil.iriToKey( + this.quadMatch[1]!.value, + this.context.getRdfType(added[_getUnderlyingNode]), + ) + ] = nodeToJsonldRepresentation(this.quadMatch[2]!, this.context); + } + return this; } clear(): void { - throw new Error("Method not implemented."); + for (const value of this) { + this.delete(value); + } } delete(value: T): boolean { - throw new Error("Method not implemented."); + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(value); + dataset.deleteMatches(subject, predicate, object); + return true; } has(value: T): boolean { - throw new Error("Method not implemented."); + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(value); + return dataset.match(subject, predicate, object).size > 0; } - get size(): number { - throw new Error("Method not implemented."); + get size() { + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(); + return dataset.match(subject, predicate, object).size; } entries(): SetIterator<[T, T]> { - throw new Error("Method not implemented."); + const iteratorSet = new Set<[T, T]>(); + for (const value of this) { + iteratorSet.add([value, value]); + } + return iteratorSet[Symbol.iterator](); } keys(): SetIterator { - throw new Error("Method not implemented."); + return this.values(); } values(): SetIterator { - throw new Error("Method not implemented."); - } - - every(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): this is LdSet; - - every(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean; - every(predicate: unknown, thisArg?: unknown): boolean { - throw new Error("Method not implemented."); - } - - some(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean { - throw new Error("Method not implemented."); - } - - forEach(callbackfn: (value: T, value2: T, set: LdSet) => void, thisArg?: any): void { - throw new Error("Method not implemented."); + return this[Symbol.iterator](); } - map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): LdSet { - throw new Error("Method not implemented."); - } - - filter(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): LdSet; - filter(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): LdSet; - filter(predicate: unknown, thisArg?: unknown): LdSet | LdSet { - throw new Error("Method not implemented."); - } - - reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T): T; - reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, initialValue: T): T; - reduce(callbackfn: (previousValue: U, currentValue: T, array: LdSet) => U, initialValue: U): U; - reduce(callbackfn: unknown, initialValue?: unknown): T | U { - throw new Error("Method not implemented."); - } - - difference(other: Set): LdSet { - throw new Error("Method not implemented."); + [Symbol.iterator](): SetIterator { + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(); + const quads = dataset.match(subject, predicate, object); + const collection: T[] = quads.toArray().map((quad) => { + const quadSubject = this.isSubjectOriented() ? quad.object : quad.subject; + return nodeToJsonldRepresentation(quadSubject, this.context) as T; + }); + return new Set(collection)[Symbol.iterator](); } - intersection(other: Set): LdSet { - throw new Error("Method not implemented."); + get [Symbol.toStringTag]() { + // TODO: Change this to be human readable. + return "LdSet"; } - isDisjointFrom(other: Set): boolean { - throw new Error("Method not implemented."); + get [_getUnderlyingDataset](): Dataset { + return this.context.dataset; } - isSubsetOf(other: Set): boolean { - throw new Error("Method not implemented."); + get [_getUnderlyingMatch](): QuadMatch { + return this.quadMatch; } - isSupersetOf(other: Set): boolean { - throw new Error("Method not implemented."); + get [_isSubjectOriented](): boolean { + return this.isSubjectOriented(); } - symmetricDifference(other: Set): LdSet { - throw new Error("Method not implemented."); + get [_isLangString](): boolean { + return !!this.isLangStringSet; } - union(other: Set): LdSet { - throw new Error("Method not implemented."); + get [_proxyContext](): ProxyContext { + return this.context; } - [Symbol.iterator](): SetIterator { - throw new Error("Method not implemented."); + set [_proxyContext](newContext: ProxyContext) { + this.context = newContext; } - - [Symbol.toStringTag]: string; } - -export type ArrayProxy = Array & { - readonly [_getUnderlyingDataset]: Dataset; - readonly [_getUnderlyingMatch]: ArrayProxyTarget[0]; - readonly [_getNodeAtIndex]: (index: number) => ObjectNode | undefined; - readonly [_getUnderlyingArrayTarget]: ArrayProxyTarget; - [_proxyContext]: ProxyContext; -}; diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/SubjectProxy.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/SubjectProxy.ts index 6f44e4c..efb4e91 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/SubjectProxy.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/SubjectProxy.ts @@ -12,7 +12,7 @@ import type { export type SubjectProxy = { "@id"?: string; "@context": ContextDefinition; - readonly [key: string | number | symbol]: unknown; + [key: string | number | symbol]: unknown; readonly [_getUnderlyingDataset]: Dataset; readonly [_getUnderlyingNode]: NamedNode | BlankNode; [_proxyContext]: ProxyContext; diff --git a/packages/jsonld-dataset-proxy/src/types.ts b/packages/jsonld-dataset-proxy/src/types.ts index 4f518b9..cfee416 100644 --- a/packages/jsonld-dataset-proxy/src/types.ts +++ b/packages/jsonld-dataset-proxy/src/types.ts @@ -1,9 +1,7 @@ export const _getUnderlyingNode = Symbol("_getUnderlyingNode"); export const _getUnderlyingMatch = Symbol("_getUnderlyingMatch"); export const _isSubjectOriented = Symbol("_isSubjectOriented"); -export const _getNodeAtIndex = Symbol("_getNodeAtIndex"); export const _getUnderlyingDataset = Symbol("_getUnderlyingDataset"); -export const _getUnderlyingArrayTarget = Symbol("_getUnderlyingArrayTarget"); export const _proxyContext = Symbol("_proxyContext"); export const _writeGraphs = Symbol("_writeGraphs"); From f799b155e297181202ec798353fdf619a54d49e6 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Wed, 19 Feb 2025 16:24:53 -0500 Subject: [PATCH 10/32] Completed Set Heirarchy --- .../src/JsonldDatasetProxyBuilder.ts | 13 +- .../jsonld-dataset-proxy/src/ProxyContext.ts | 46 ++--- packages/jsonld-dataset-proxy/src/graphOf.ts | 29 +-- packages/jsonld-dataset-proxy/src/index.ts | 9 +- .../src/setProxy/ObjectSetProxy.ts | 41 ++++ .../src/setProxy/{setProxy.ts => SetProxy.ts} | 108 ++++------- .../src/setProxy/SubjectSetProxy.ts | 39 ++++ .../src/setProxy/WildcardObjectSetProxy.ts | 117 ++++++++++++ .../src/setProxy/WildcardSubjectSetProxy.ts | 63 +++++++ .../src/setProxy/createSetHandler.ts | 177 ------------------ .../src/setProxy/isSetProxy.ts | 5 +- .../src/setProxy/ldSet/BasicLdSet.ts | 7 +- .../src/setProxy/ldSet/LdSet.ts | 2 +- .../src/setProxy/modifyArray.ts | 141 -------------- .../src/subjectProxy/getValueForKey.ts | 4 +- packages/jsonld-dataset-proxy/src/types.ts | 1 + .../src/util/getNodeFromRaw.ts | 10 +- 17 files changed, 335 insertions(+), 477 deletions(-) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts rename packages/jsonld-dataset-proxy/src/setProxy/{setProxy.ts => SetProxy.ts} (50%) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts delete mode 100644 packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts delete mode 100644 packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts diff --git a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts index 0bd5e5a..c799db1 100644 --- a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts +++ b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts @@ -4,6 +4,7 @@ import type { GraphNode, QuadMatch } from "@ldo/rdf-utils"; import type { LanguageOrdering } from "./language/languageTypes"; import type { ProxyContext } from "./ProxyContext"; import type { ObjectLike } from "./types"; +import type { LdSet } from "./setProxy/ldSet/LdSet"; /** * Helps build JSON LD Dataset Proxies for a specific dataset and context @@ -56,14 +57,14 @@ export class JsonldDatasetProxyBuilder { * @param graph The graph to match */ matchSubject( - predicate?: QuadMatch[1], + predicate: QuadMatch[1], object?: QuadMatch[2], graph?: QuadMatch[3], - ): T[] { - return this.proxyContext.createArrayProxy( + ): LdSet { + return this.proxyContext.createSetProxy( [null, predicate, object, graph], true, - ) as unknown as T[]; + ) as LdSet; } /** @@ -75,10 +76,10 @@ export class JsonldDatasetProxyBuilder { */ matchObject( subject?: QuadMatch[0], - predicate?: QuadMatch[1], + predicate: QuadMatch[1], graph?: QuadMatch[3], ): T[] { - return this.proxyContext.createArrayProxy([ + return this.proxyContext.createSetProxy([ subject, predicate, null, diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index f12817e..f0d4d95 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -1,21 +1,18 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; -import type { ArrayProxyTarget } from "./setProxy/createSetHandler"; -import { createArrayHandler } from "./setProxy/createSetHandler"; import { createSubjectHandler } from "./subjectProxy/createSubjectHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; -import type { ArrayProxy } from "./setProxy/ldSet/LdSet"; -import { _getUnderlyingArrayTarget } from "./types"; +import { SetProxy } from "./setProxy/setProxy"; import type { ContextUtil } from "./ContextUtil"; import type { LanguageOrdering } from "./language/languageTypes"; import { namedNode } from "@rdfjs/data-model"; +import type { RawObject } from "./util/RawObject"; export interface ProxyContextOptions { dataset: Dataset; contextUtil: ContextUtil; writeGraphs: GraphNode[]; languageOrdering: LanguageOrdering; - prefilledArrayTargets?: ArrayProxyTarget[]; state?: Record; } @@ -28,7 +25,7 @@ const rdfType = namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"); */ export class ProxyContext { private subjectMap: Map = new Map(); - private arrayMap: Map = new Map(); + private setMap: Map> = new Map(); readonly dataset: Dataset; readonly contextUtil: ContextUtil; @@ -42,11 +39,6 @@ export class ProxyContext { this.writeGraphs = options.writeGraphs; this.languageOrdering = options.languageOrdering; this.state = options.state || {}; - if (options.prefilledArrayTargets) { - options.prefilledArrayTargets.forEach((target) => { - this.createArrayProxy(target[0], target[2], target); - }); - } } public createSubjectProxy(node: NamedNode | BlankNode): SubjectProxy { @@ -64,7 +56,7 @@ export class ProxyContext { return createSubjectHandler(this); } - private getArrayKey(...quadMatch: QuadMatch) { + private getSetKey(...quadMatch: QuadMatch) { return `${quadMatch[0]?.value || "undefined"}|${ quadMatch[1]?.value || "undefined" }|${quadMatch[2]?.value || "undefined"}|${ @@ -72,39 +64,25 @@ export class ProxyContext { }`; } - public createArrayProxy( + public createSetProxy( quadMatch: QuadMatch, - isSubjectOriented = false, - initialTarget?: ArrayProxyTarget, - isLangStringArray?: boolean, - ): ArrayProxy { - const key = this.getArrayKey(...quadMatch); - if (!this.arrayMap.has(key)) { - const proxy = new Proxy( - initialTarget || [quadMatch, [], isSubjectOriented, isLangStringArray], - this.createArrayHandler(), - ) as unknown as ArrayProxy; - this.arrayMap.set(key, proxy); + isLangStringSet?: boolean, + ): SetProxy { + const key = this.getSetKey(...quadMatch); + if (!this.setMap.has(key)) { + const proxy = new SetProxy(this, quadMatch, isLangStringSet); + this.setMap.set(key, proxy); } - return this.arrayMap.get(key) as ArrayProxy; - } - - protected createArrayHandler() { - return createArrayHandler(this); + return this.setMap.get(key)!; } public duplicate(alternativeOptions: Partial) { - const prefilledArrayTargets: ArrayProxyTarget[] = []; - this.arrayMap.forEach((value) => { - prefilledArrayTargets.push(value[_getUnderlyingArrayTarget]); - }); const fullOptions: ProxyContextOptions = { ...{ dataset: this.dataset, contextUtil: this.contextUtil, writeGraphs: this.writeGraphs, languageOrdering: this.languageOrdering, - prefilledArrayTargets, }, ...alternativeOptions, }; diff --git a/packages/jsonld-dataset-proxy/src/graphOf.ts b/packages/jsonld-dataset-proxy/src/graphOf.ts index db50e68..ede4e0a 100644 --- a/packages/jsonld-dataset-proxy/src/graphOf.ts +++ b/packages/jsonld-dataset-proxy/src/graphOf.ts @@ -1,12 +1,8 @@ import type { ObjectNode, GraphNode } from "@ldo/rdf-utils"; import { namedNode } from "@rdfjs/data-model"; -import { - getSubjectProxyFromObject, - isSubjectProxy, -} from "./subjectProxy/isSubjectProxy"; +import { getSubjectProxyFromObject } from "./subjectProxy/isSubjectProxy"; import type { ObjectLike } from "./types"; import { - _getNodeAtIndex, _getUnderlyingDataset, _getUnderlyingMatch, _getUnderlyingNode, @@ -17,15 +13,16 @@ import { * Returns the graph for which a defined triple is a member * @param subject A JsonldDatasetProxy that represents the subject * @param predicate The key on the JsonldDatasetProxy - * @param object The direct object. This can be a JsonldDatasetProxy or the index + * @param object The direct object. This can be a JsonldDatasetProxy. This field + * is optional if this field does not have a "set" object. * @returns a list of graphs for which the triples are members */ export function graphOf( subject: Subject, predicate: Key, - object?: NonNullable extends Array - ? number | ObjectLike - : ObjectLike, + object: NonNullable extends Set + ? T + : Subject[Key] | undefined, ): GraphNode[] { const subjectProxy = getSubjectProxyFromObject(subject); const proxyContext = subjectProxy[_proxyContext]; @@ -39,20 +36,6 @@ export function graphOf( let objectNode: ObjectNode | null; if (object == null) { objectNode = null; - } else if (typeof object === "number") { - const proxyArray = subject[predicate]; - if (!proxyArray[_getUnderlyingMatch]) { - throw new Error( - `Key "${String(predicate)}" of ${subject} is not an array.`, - ); - } - if (!proxyArray[object]) { - throw new Error(`Index ${object} does not exist.`); - } - if (isSubjectProxy(proxyArray[object])) { - objectNode = proxyArray[object][1]; - } - objectNode = proxyArray[_getNodeAtIndex](object); } else { const objectProxy = getSubjectProxyFromObject(object); objectNode = objectProxy[_getUnderlyingNode]; diff --git a/packages/jsonld-dataset-proxy/src/index.ts b/packages/jsonld-dataset-proxy/src/index.ts index 1eedb26..9a43d16 100644 --- a/packages/jsonld-dataset-proxy/src/index.ts +++ b/packages/jsonld-dataset-proxy/src/index.ts @@ -17,11 +17,10 @@ export * from "./language/languageSet"; export * from "./language/languageTypes"; export * from "./language/languageUtils"; -export * from "./arrayProxy/createArrayHandler"; -export * from "./arrayProxy/arrayMethods"; -export * from "./arrayProxy/ArrayProxy"; -export * from "./arrayProxy/modifyArray"; -export * from "./arrayProxy/isArrayProxy"; +export * from "./setProxy/isSetProxy"; +export * from "./setProxy/setProxy"; +export * from "./setProxy/ldSet/LdSet"; +export * from "./setProxy/ldSet/BasicLdSet"; export * from "./subjectProxy/createSubjectHandler"; export * from "./subjectProxy/SubjectProxy"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts new file mode 100644 index 0000000..456fd3f --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts @@ -0,0 +1,41 @@ +import type { GraphNode, PredicateNode, SubjectNode } from "@ldo/rdf-utils"; +import type { RawObject, RawValue } from "../util/RawObject"; +import { WildcardObjectSetProxy } from "./WildcardObjectSetProxy"; +import { addObjectToDataset } from "../util/addObjectToDataset"; +import type { ProxyContext } from "../ProxyContext"; + +export type ObjectSetProxyQuadMatch = [ + SubjectNode, + PredicateNode, + undefined | null, + GraphNode | undefined | null, +]; + +export class ObjectSetProxy< + T extends NonNullable, +> extends WildcardObjectSetProxy { + protected quadMatch: ObjectSetProxyQuadMatch; + + constructor(context: ProxyContext, quadMatch: ObjectSetProxyQuadMatch) { + super(context, quadMatch); + this.quadMatch = quadMatch; + } + + /** + * Appends a new element with a specified value to the end of the Set. + */ + add(value: T): this { + addObjectToDataset( + { + "@id": this.quadMatch[0], + [this.context.contextUtil.iriToKey( + this.quadMatch[1].value, + this.context.getRdfType(this.quadMatch[0]), + )]: value, + } as RawObject, + false, + this.context, + ); + return this; + } +} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts similarity index 50% rename from packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts rename to packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts index 754153c..787b7c1 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/setProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts @@ -2,8 +2,9 @@ * This file handles the underlying functionality of a set, including hidden * helper methods */ -import type { Dataset } from "@rdfjs/types"; +import type { Dataset, Quad } from "@rdfjs/types"; import type { + GraphNode, ObjectNode, PredicateNode, QuadMatch, @@ -16,87 +17,46 @@ import { _isLangString, _getUnderlyingMatch, _getUnderlyingNode, + _writeGraphs, } from "../types"; import type { ProxyContext } from "../ProxyContext"; -import { addObjectToDataset } from "../util/addObjectToDataset"; -import type { RawObject } from "../util/RawObject"; +import type { RawValue } from "../util/RawObject"; import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; import { BasicLdSet } from "./ldSet/BasicLdSet"; -import { getNodeFromRawObject } from "../util/getNodeFromRaw"; -export class SetProxy extends BasicLdSet { - private quadMatch: QuadMatch; - private isLangStringSet?: boolean; +/** + * A Set Proxy represents a set of items in a dataset and is a proxy for + * accessing those items in the dataset. + */ +export abstract class SetProxy< + T extends NonNullable = NonNullable, +> extends BasicLdSet { + protected quadMatch: QuadMatch; - constructor( - context: ProxyContext, - quadMatch: QuadMatch, - isLangStringSet?: boolean, - ) { + constructor(context: ProxyContext, quadMatch: QuadMatch) { super(context); this.quadMatch = quadMatch; - this.isLangStringSet = isLangStringSet; - } - - /** - * Detects if this set is subject oriented. The set is subject oriented if the - * given quadMatch has a predicate and an object but no subject, meanting - */ - private isSubjectOriented(): boolean { - if (this.quadMatch[0] && this.quadMatch[1] && !this.quadMatch[2]) - return false; - if (this.quadMatch[1] && !this.quadMatch[0]) return true; - throw new Error( - `SetProxy has an invalid quad match: [${this.quadMatch[0]}, ${this.quadMatch[1]}, ${this.quadMatch[2]}, ${this.quadMatch[3]}]`, - ); } /** * Gets the subject, predicate and object for this set */ - private getSPO(value?: T): { + protected abstract getSPO(value?: T): { subject?: SubjectNode; - predicate: PredicateNode; + predicate?: PredicateNode; object?: ObjectNode; - } { - const valueNode = value - ? getNodeFromRawObject(value, this.context.contextUtil) - : undefined; - const subject: SubjectNode | undefined = this.isSubjectOriented() - ? valueNode - : this.quadMatch[0]!; - const predicate = this.quadMatch[1]!; - const object: ObjectNode | undefined = this.isSubjectOriented() - ? this.quadMatch[2] ?? undefined - : valueNode; - return { subject, predicate, object }; - } - - add(value: T): this { - // Add value - const added = addObjectToDataset(value as RawObject, false, this.context); - // Add connecting edges - if (!this.isSubjectOriented) { - addObjectToDataset( - { - "@id": this.quadMatch[0], - [this.context.contextUtil.iriToKey( - this.quadMatch[1]!.value, - this.context.getRdfType(this.quadMatch[0]!), - )]: added, - } as RawObject, - false, - this.context, - ); - } else { - // Account for subject-oriented - added[ - this.context.contextUtil.iriToKey( - this.quadMatch[1]!.value, - this.context.getRdfType(added[_getUnderlyingNode]), - ) - ] = nodeToJsonldRepresentation(this.quadMatch[2]!, this.context); - } + }; + + protected abstract getNodeOfFocus(quad: Quad): SubjectNode | ObjectNode; + + /** + * The add method on a wildcard set does nothing. + * @deprecated You cannot add data to a wildcard set as it is simply a proxy to an underlying dataset + */ + add(_value: T) { + console.warn( + 'You\'ve attempted to call "add" on a wildcard set. You cannot add data to a wildcard set as it is simply a proxy to an underlying dataset', + ); return this; } @@ -146,7 +106,7 @@ export class SetProxy extends BasicLdSet { const { subject, predicate, object } = this.getSPO(); const quads = dataset.match(subject, predicate, object); const collection: T[] = quads.toArray().map((quad) => { - const quadSubject = this.isSubjectOriented() ? quad.object : quad.subject; + const quadSubject = this.getNodeOfFocus(quad); return nodeToJsonldRepresentation(quadSubject, this.context) as T; }); return new Set(collection)[Symbol.iterator](); @@ -165,14 +125,6 @@ export class SetProxy extends BasicLdSet { return this.quadMatch; } - get [_isSubjectOriented](): boolean { - return this.isSubjectOriented(); - } - - get [_isLangString](): boolean { - return !!this.isLangStringSet; - } - get [_proxyContext](): ProxyContext { return this.context; } @@ -180,4 +132,8 @@ export class SetProxy extends BasicLdSet { set [_proxyContext](newContext: ProxyContext) { this.context = newContext; } + + get [_writeGraphs](): GraphNode[] { + return this.context.writeGraphs; + } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts new file mode 100644 index 0000000..f867c5f --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts @@ -0,0 +1,39 @@ +import type { GraphNode, ObjectNode, PredicateNode } from "@ldo/rdf-utils"; +import type { RawObject } from "../util/RawObject"; +import { addObjectToDataset } from "../util/addObjectToDataset"; +import type { ProxyContext } from "../ProxyContext"; +import { WildcardSubjectSetProxy } from "./WildcardSubjectSetProxy"; +import { _getUnderlyingNode } from "../types"; +import { quad } from "@rdfjs/data-model"; + +export type SubjectSetProxyQuadMatch = [ + undefined | null, + PredicateNode, + ObjectNode, + GraphNode | undefined | null, +]; + +export class SubjectSetProxy< + T extends RawObject, +> extends WildcardSubjectSetProxy { + protected quadMatch: SubjectSetProxyQuadMatch; + + constructor(context: ProxyContext, quadMatch: SubjectSetProxyQuadMatch) { + super(context, quadMatch); + this.quadMatch = quadMatch; + } + + /** + * Appends a new element with a specified value to the end of the Set. + */ + add(value: T): this { + const added = addObjectToDataset(value as RawObject, false, this.context); + const addedNode = added[_getUnderlyingNode]; + this.context.writeGraphs.forEach((graph) => { + this.context.dataset.add( + quad(addedNode, this.quadMatch[1], this.quadMatch[2], graph), + ); + }); + return this; + } +} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts new file mode 100644 index 0000000..f4913e1 --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts @@ -0,0 +1,117 @@ +import type { + SubjectNode, + PredicateNode, + ObjectNode, + GraphNode, +} from "@ldo/rdf-utils"; +import type { Dataset, Quad } from "@rdfjs/types"; +import type { RawValue } from "../util/RawObject"; +import { SetProxy } from "./setProxy"; +import type { ProxyContext } from "../ProxyContext"; +import { getNodeFromRawValue } from "../util/getNodeFromRaw"; + +export type WildcardObjectSetProxyQuadMatch = [ + SubjectNode | undefined | null, + PredicateNode | undefined | null, + undefined | null, + GraphNode | undefined | null, +]; + +/** + * A WildcardObjectProxy represents a set of nodes in a dataset that are all the + * object of a given subject and predicate. Because this is a wildcard, the + * subject and predicate don't necissarily need to be defined. + */ +export class WildcardObjectSetProxy< + T extends NonNullable, +> extends SetProxy { + protected quadMatch: WildcardObjectSetProxyQuadMatch; + + constructor( + context: ProxyContext, + quadMatch: WildcardObjectSetProxyQuadMatch, + ) { + super(context, quadMatch); + this.quadMatch = quadMatch; + } + + protected getSPO(value?: T | undefined): { + subject?: SubjectNode; + predicate?: PredicateNode; + object?: ObjectNode; + } { + // Get the RDF Node that represents the value, skip is no value + const subject = this.quadMatch[0] ?? undefined; + const predicate = this.quadMatch[1] ?? undefined; + if (value) { + // Get datatype if applicable + let datatype: string | undefined = undefined; + if (this.quadMatch[0] && predicate) { + const rdfType = this.context.getRdfType(this.quadMatch[0]); + const key = this.context.contextUtil.iriToKey(predicate.value, rdfType); + datatype = this.context.contextUtil.getDataType(key, rdfType); + } + const valueNode = getNodeFromRawValue(value, this.context, datatype); + return { + subject, + predicate, + object: valueNode, + }; + } + // SPO for no value + return { + subject, + predicate, + object: undefined, + }; + } + + protected getNodeOfFocus(quad: Quad): ObjectNode { + return quad.object as ObjectNode; + } + + private manuallyMatchWithUnknownObjectNode( + subject: SubjectNode | undefined, + predicate: PredicateNode | undefined, + value: T, + ): Dataset { + // If there's not an object, that means that we don't know the object node + // and need to find it manually. + const matchingQuads = this.context.dataset.match(subject, predicate, null); + return matchingQuads.filter( + (quad) => + quad.object.termType === "Literal" && quad.object.value === value, + ); + } + + delete(value: T): boolean { + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(value); + if (!object) { + const matchedQuads = this.manuallyMatchWithUnknownObjectNode( + subject, + predicate, + value, + ); + matchedQuads.forEach((quad) => dataset.delete(quad)); + return matchedQuads.size > 0; + } else { + const willDelete = dataset.match(subject, predicate, object).size > 0; + dataset.deleteMatches(subject, predicate, object); + return willDelete; + } + } + + has(value: T): boolean { + const { dataset } = this.context; + const { subject, predicate, object } = this.getSPO(value); + if (!object) { + return ( + this.manuallyMatchWithUnknownObjectNode(subject, predicate, value) + .size > 0 + ); + } else { + return dataset.match(subject, predicate, object).size > 0; + } + } +} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts new file mode 100644 index 0000000..9486aaa --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts @@ -0,0 +1,63 @@ +import type { + SubjectNode, + PredicateNode, + ObjectNode, + GraphNode, +} from "@ldo/rdf-utils"; +import type { Quad } from "@rdfjs/types"; +import type { RawObject } from "../util/RawObject"; +import { SetProxy } from "./setProxy"; +import type { ProxyContext } from "../ProxyContext"; +import { getNodeFromRawObject } from "../util/getNodeFromRaw"; + +export type WildcardSubjectSetProxyQuadMatch = [ + undefined | null, + PredicateNode | undefined | null, + ObjectNode | undefined | null, + GraphNode | undefined | null, +]; + +/** + * A WildcardObjectProxy represents a set of nodes in a dataset that are all the + * object of a given subject and predicate. Because this is a wildcard, the + * subject and predicate don't necissarily need to be defined. + */ +export class WildcardSubjectSetProxy extends SetProxy { + protected quadMatch: WildcardSubjectSetProxyQuadMatch; + + constructor( + context: ProxyContext, + quadMatch: WildcardSubjectSetProxyQuadMatch, + ) { + super(context, quadMatch); + this.quadMatch = quadMatch; + } + + protected getSPO(value?: T | undefined): { + subject?: SubjectNode; + predicate?: PredicateNode; + object?: ObjectNode; + } { + // Get the RDF Node that represents the value, skip is no value + const predicate = this.quadMatch[1] ?? undefined; + const object = this.quadMatch[2] ?? undefined; + if (value) { + const valueNode = getNodeFromRawObject(value, this.context.contextUtil); + return { + subject: valueNode, + predicate, + object, + }; + } + // SPO for no value + return { + subject: undefined, + predicate, + object, + }; + } + + protected getNodeOfFocus(quad: Quad): SubjectNode { + return quad.subject as SubjectNode; + } +} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts b/packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts deleted file mode 100644 index 07e3afc..0000000 --- a/packages/jsonld-dataset-proxy/src/setProxy/createSetHandler.ts +++ /dev/null @@ -1,177 +0,0 @@ -import { quad } from "@rdfjs/data-model"; -import type { NamedNode } from "@rdfjs/types"; -import type { ObjectNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; -import type { ObjectJsonRepresentation } from "../util/nodeToJsonldRepresentation"; -import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; -import type { ArrayMethodBuildersType } from "./arrayMethods"; -import { arrayMethodsBuilders, methodNames } from "./arrayMethods"; -import { - _getNodeAtIndex, - _getUnderlyingArrayTarget, - _getUnderlyingDataset, - _getUnderlyingMatch, - _isSubjectOriented, - _proxyContext, -} from "../types"; -import { modifyArray } from "./modifyArray"; -import type { ProxyContext } from "../ProxyContext"; -import { NodeSet } from "../util/NodeSet"; -import { filterQuadsByLanguageOrdering } from "../language/languageUtils"; - -export type ArrayProxyTarget = [ - quadMatch: QuadMatch, - curArray: ObjectNode[], - isSubjectOriented?: boolean, - isLangStringArray?: boolean, -]; - -function updateArrayOrder( - target: ArrayProxyTarget, - proxyContext: ProxyContext, -): void { - let quads = proxyContext.dataset.match(...target[0]); - if (target[3]) { - // Is lang string array - quads = filterQuadsByLanguageOrdering(quads, proxyContext.languageOrdering); - } - const datasetObjects = new NodeSet(); - quads.toArray().forEach((quad) => { - // If this this a subject-oriented document - if (target[2]) { - datasetObjects.add(quad.subject as SubjectNode); - } else { - datasetObjects.add(quad.object as ObjectNode); - } - }); - const processedObjects: ObjectNode[] = []; - target[1].forEach((arrItem) => { - if (datasetObjects.has(arrItem)) { - processedObjects.push(arrItem); - datasetObjects.delete(arrItem); - } - }); - datasetObjects.toArray().forEach((datasetObject) => { - processedObjects.push(datasetObject); - }); - target[1] = processedObjects; -} - -function getProcessedArray( - target: ArrayProxyTarget, - proxyContext: ProxyContext, -): ObjectJsonRepresentation[] { - return target[1].map((node) => { - return nodeToJsonldRepresentation(node, proxyContext); - }); -} - -export function createArrayHandler( - proxyContext: ProxyContext, -): ProxyHandler { - return { - get(target, key, ...rest) { - switch (key) { - case _getUnderlyingDataset: - return proxyContext.dataset; - case _getUnderlyingMatch: - return target[0]; - case _isSubjectOriented: - return target[2]; - case _getUnderlyingArrayTarget: - return target; - case _proxyContext: - return proxyContext; - case _getNodeAtIndex: - return (index: number): ObjectNode | undefined => { - updateArrayOrder(target, proxyContext); - return target[1][index]; - }; - } - - // TODO: Because of this, every get operation is O(n). Consider changing - // this - updateArrayOrder(target, proxyContext); - const processedArray = getProcessedArray(target, proxyContext); - if (methodNames.has(key as keyof ArrayMethodBuildersType)) { - return arrayMethodsBuilders[key as keyof ArrayMethodBuildersType]( - target, - key as string, - proxyContext, - ); - } - return Reflect.get(processedArray, key, ...rest); - }, - getOwnPropertyDescriptor(target, key, ...rest) { - updateArrayOrder(target, proxyContext); - const processedArray = getProcessedArray(target, proxyContext); - return Reflect.getOwnPropertyDescriptor(processedArray, key, ...rest); - }, - ownKeys(target, ...rest) { - updateArrayOrder(target, proxyContext); - const processedArray = getProcessedArray(target, proxyContext); - return Reflect.ownKeys(processedArray, ...rest); - }, - getPrototypeOf(target, ...rest) { - updateArrayOrder(target, proxyContext); - const processedObjects = getProcessedArray(target, proxyContext); - return Reflect.getPrototypeOf(processedObjects, ...rest); - }, - has(target, ...rest) { - updateArrayOrder(target, proxyContext); - const processedObjects = getProcessedArray(target, proxyContext); - return Reflect.has(processedObjects, ...rest); - }, - set(target, key, value, ...rest) { - if (key === _proxyContext) { - proxyContext = value; - return true; - } - updateArrayOrder(target, proxyContext); - if (typeof key !== "symbol" && !isNaN(parseInt(key as string))) { - const index = parseInt(key); - return modifyArray( - { - target, - key, - toAdd: [value], - quadsToDelete(allQuads) { - return allQuads[index] ? [allQuads[index]] : []; - }, - modifyCoreArray(coreArray, addedValues) { - coreArray[index] = addedValues[0]; - return true; - }, - }, - proxyContext, - ); - } - return Reflect.set(target[1], key, ...rest); - }, - deleteProperty(target, key) { - const { dataset } = proxyContext; - if (typeof key !== "symbol" && !isNaN(parseInt(key as string))) { - const objectQuad = dataset.match(...target[0]).toArray()[parseInt(key)]; - if (!objectQuad) { - return true; - } - const term = target[2] ? objectQuad.subject : objectQuad.object; - if (term.termType === "Literal") { - const subject = target[0][0] as NamedNode; - const predicate = target[0][1] as NamedNode; - if (subject && predicate) { - dataset.delete(quad(subject, predicate, term)); - } - return true; - } else if ( - term.termType === "NamedNode" || - term.termType === "BlankNode" - ) { - dataset.deleteMatches(term, undefined, undefined); - dataset.deleteMatches(undefined, undefined, term); - return true; - } - } - return true; - }, - }; -} diff --git a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts index 60299c3..9ec6383 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts @@ -1,9 +1,6 @@ -import type { RawObject } from "../util/RawObject"; import { SetProxy } from "./setProxy"; -export function isSetProxy( - someObject?: unknown, -): someObject is SetProxy { +export function isSetProxy(someObject?: unknown): someObject is SetProxy { if (!someObject) return false; if (typeof someObject !== "object") return false; return someObject instanceof SetProxy; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index 65978bc..b6015b4 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -1,12 +1,12 @@ import type { ProxyContext } from "../../ProxyContext"; -import type { SubjectProxy } from "../../subjectProxy/SubjectProxy"; import { _getUnderlyingNode } from "../../types"; import { getNodeFromRawObject } from "../../util/getNodeFromRaw"; import { nodeToString } from "../../util/NodeSet"; -import type { RawObject } from "../../util/RawObject"; +import type { RawValue } from "../../util/RawObject"; +import type { LdSet } from "./LdSet"; /* eslint-disable @typescript-eslint/no-explicit-any */ -export class BasicLdSet +export class BasicLdSet = NonNullable> extends Set implements LdSet { @@ -19,6 +19,7 @@ export class BasicLdSet } private hashFn(value: T) { + if (typeof value !== "object") return value.toString(); return nodeToString(getNodeFromRawObject(value, this.context.contextUtil)); } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts index 8d5a7d3..2c85d04 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -2,7 +2,7 @@ /** * An abract representation for a set of Linked Data Objects */ -interface LdSet extends Set { +export interface LdSet extends Set { /** * =========================================================================== * BASE METHODS diff --git a/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts b/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts deleted file mode 100644 index 0281afd..0000000 --- a/packages/jsonld-dataset-proxy/src/setProxy/modifyArray.ts +++ /dev/null @@ -1,141 +0,0 @@ -import { defaultGraph } from "@rdfjs/data-model"; -import type { Quad } from "@rdfjs/types"; -import type { ObjectNode } from "@ldo/rdf-utils"; -import { - TransactionDataset, - createTransactionDatasetFactory, -} from "@ldo/subscribable-dataset"; -import { createDatasetFactory } from "@ldo/dataset"; -import type { ProxyContext } from "../ProxyContext"; -import { addObjectToDataset } from "../util/addObjectToDataset"; -import { - getNodeFromRawObject, - getNodeFromRawValue, -} from "../util/getNodeFromRaw"; -import { nodeToString } from "../util/NodeSet"; -import type { ObjectJsonRepresentation } from "../util/nodeToJsonldRepresentation"; -import type { RawObject, RawValue } from "../util/RawObject"; -import type { ArrayProxyTarget } from "./createSetHandler"; - -export function checkArrayModification( - target: ArrayProxyTarget, - objectsToAdd: RawValue[], - proxyContext: ProxyContext, -) { - if (target[2]) { - for (const objectToAdd of objectsToAdd) { - // Undefined is fine no matter what - if (objectToAdd === undefined) { - return; - } - if (typeof objectToAdd !== "object") { - throw new Error( - `Cannot add a literal "${objectToAdd}"(${typeof objectToAdd}) to a subject-oriented collection.`, - ); - } - // Create a test dataset to see if the inputted data is valid - const testDataset = new TransactionDataset( - proxyContext.dataset, - createDatasetFactory(), - createTransactionDatasetFactory(), - ); - addObjectToDataset( - objectToAdd as RawObject, - false, - proxyContext.duplicate({ - writeGraphs: [defaultGraph()], - }), - ); - const isValidAddition = - testDataset.match( - getNodeFromRawObject(objectToAdd, proxyContext.contextUtil), - target[0][1], - target[0][2], - ).size !== 0; - if (!isValidAddition) { - throw new Error( - `Cannot add value to collection. This must contain a quad that matches (${nodeToString( - target[0][0], - )}, ${nodeToString(target[0][1])}, ${nodeToString( - target[0][2], - )}, ${nodeToString(target[0][3])})`, - ); - } - } - } else if (!target[0][0] || !target[0][1]) { - throw new Error( - "A collection that does not specify a match for both a subject or predicate cannot be modified directly.", - ); - } -} - -export function modifyArray( - config: { - target: ArrayProxyTarget; - key: string; - toAdd?: RawValue[]; - quadsToDelete?: (quads: Quad[]) => Quad[]; - modifyCoreArray: ( - coreArray: ArrayProxyTarget[1], - addedValues: ArrayProxyTarget[1], - ) => ReturnType; - }, - proxyContext: ProxyContext, -): ReturnType { - const { target, toAdd, quadsToDelete, modifyCoreArray, key } = config; - const { dataset, contextUtil } = proxyContext; - checkArrayModification(target, toAdd || [], proxyContext); - - // Remove appropriate Quads - if (quadsToDelete) { - const quadArr = dataset.match(...target[0]).toArray(); - const deleteQuadArr = quadsToDelete(quadArr); - // Filter out overlapping items - deleteQuadArr.forEach((delQuad) => { - if (target[2]) { - dataset.deleteMatches(delQuad.subject, undefined, undefined); - } else { - dataset.delete(delQuad); - } - }); - } - - // Add new items to the dataset - const added = toAdd - ?.map((item) => { - return typeof item === "object" - ? addObjectToDataset(item, false, proxyContext) - : item; - }) - .filter( - (val) => val != undefined, - ) as NonNullable[]; - if (!target[2] && target[0][0] && target[0][1] && added) { - addObjectToDataset( - { - "@id": target[0][0], - [contextUtil.iriToKey( - target[0][1].value, - proxyContext.getRdfType(target[0][0]), - )]: added, - } as RawObject, - false, - proxyContext, - ); - } - const addedNodes = added - ? (added - .map((addedValue) => { - return getNodeFromRawValue( - key, - addedValue, - target[0][0] ? proxyContext.getRdfType(target[0][0]) : [], - proxyContext, - ); - }) - .filter((val) => val != undefined) as ObjectNode[]) - : []; - - // Allow the base array to be modified - return modifyCoreArray(target[1], addedNodes); -} diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts index 06a6ab4..0e2bb93 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts @@ -2,7 +2,7 @@ import type { SubjectProxyTarget } from "./createSubjectHandler"; import { namedNode } from "@rdfjs/data-model"; import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; import type { SubjectProxy } from "./SubjectProxy"; -import type { ArrayProxy } from "../setProxy/ldSet/LdSet"; +import type { SetProxy } from "../setProxy/setProxy"; import type { ProxyContext } from "../ProxyContext"; import { filterQuadsByLanguageOrdering } from "../language/languageUtils"; @@ -13,7 +13,7 @@ export function getValueForKey( target: SubjectProxyTarget, key: string | symbol, proxyContext: ProxyContext, -): SubjectProxy | ArrayProxy | string | number | boolean | undefined { +): SubjectProxy | SetProxy | string | number | boolean | undefined { const { contextUtil, dataset } = proxyContext; if (key === "@id") { if (target["@id"].termType === "BlankNode") { diff --git a/packages/jsonld-dataset-proxy/src/types.ts b/packages/jsonld-dataset-proxy/src/types.ts index cfee416..a61d739 100644 --- a/packages/jsonld-dataset-proxy/src/types.ts +++ b/packages/jsonld-dataset-proxy/src/types.ts @@ -1,6 +1,7 @@ export const _getUnderlyingNode = Symbol("_getUnderlyingNode"); export const _getUnderlyingMatch = Symbol("_getUnderlyingMatch"); export const _isSubjectOriented = Symbol("_isSubjectOriented"); +export const _isLangString = Symbol("_isLangString"); export const _getUnderlyingDataset = Symbol("_getUnderlyingDataset"); export const _proxyContext = Symbol("_proxyContext"); export const _writeGraphs = Symbol("_writeGraphs"); diff --git a/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts b/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts index f66cd90..f24942f 100644 --- a/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts +++ b/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts @@ -23,10 +23,10 @@ export function getNodeFromRawObject( } export function getNodeFromRawValue( - key: string, value: RawValue, - rdfTypes: NamedNode[], proxyContext: ProxyContext, + // To get this run proxyContext.contextUtil.getDataType(key, proxyContext.getRdfType(subjectNode)) + datatype?: string, ): BlankNode | NamedNode | Literal | undefined { // Get the Object Node if (value == undefined) { @@ -36,9 +36,9 @@ export function getNodeFromRawValue( typeof value === "boolean" || typeof value === "number" ) { - // PICKUP: figure out how to handle looking for the RDF Types of a raw value - const datatype = proxyContext.contextUtil.getDataType(key, rdfTypes); - if (datatype === "@id") { + if (!datatype) { + return undefined; + } else if (datatype === "@id") { return namedNode(value.toString()); } else { return literal(value.toString(), datatype); From da6438c926c06d19ef6da7e14ba996dfe72d0674 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 20 Feb 2025 15:05:45 -0500 Subject: [PATCH 11/32] Complete setRefactor pre-test --- .../jsonld-dataset-proxy/src/ContextUtil.ts | 2 +- .../src/JsonldDatasetProxyBuilder.ts | 16 ++--- .../jsonld-dataset-proxy/src/ProxyContext.ts | 16 +++-- .../src/language/languagesOf.ts | 2 +- .../src/setProxy/createNewSetProxy.ts | 64 +++++++++++++++++++ .../src/subjectProxy/getValueForKey.ts | 7 +- .../src/util/addObjectToDataset.ts | 6 +- .../jsonld-dataset-proxy/src/util/isProxy.ts | 10 +-- 8 files changed, 98 insertions(+), 25 deletions(-) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts diff --git a/packages/jsonld-dataset-proxy/src/ContextUtil.ts b/packages/jsonld-dataset-proxy/src/ContextUtil.ts index 8bbb5de..7e4cf00 100644 --- a/packages/jsonld-dataset-proxy/src/ContextUtil.ts +++ b/packages/jsonld-dataset-proxy/src/ContextUtil.ts @@ -144,7 +144,7 @@ export class ContextUtil { /** * Returns true if the object is a collection */ - public isArray(key: string, typeName: NamedNode[]): boolean { + public isSet(key: string, typeName: NamedNode[]): boolean { const relevantContext = this.getRelevantContext(key, typeName); return !!( relevantContext[key] && diff --git a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts index c799db1..9ea2af9 100644 --- a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts +++ b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts @@ -57,14 +57,14 @@ export class JsonldDatasetProxyBuilder { * @param graph The graph to match */ matchSubject( - predicate: QuadMatch[1], - object?: QuadMatch[2], - graph?: QuadMatch[3], + predicate: QuadMatch[1] | undefined | null, + object: QuadMatch[2] | undefined | null, + graph: QuadMatch[3] | undefined | null, ): LdSet { return this.proxyContext.createSetProxy( [null, predicate, object, graph], true, - ) as LdSet; + ) as unknown as LdSet; } /** @@ -75,16 +75,16 @@ export class JsonldDatasetProxyBuilder { * @param graph The graph to match */ matchObject( - subject?: QuadMatch[0], + subject: QuadMatch[0] | undefined | null, predicate: QuadMatch[1], - graph?: QuadMatch[3], - ): T[] { + graph: QuadMatch[3] | undefined | null, + ): LdSet { return this.proxyContext.createSetProxy([ subject, predicate, null, graph, - ]) as unknown as T[]; + ]) as unknown as LdSet; } /** diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index f0d4d95..3856ef1 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -2,11 +2,12 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; import { createSubjectHandler } from "./subjectProxy/createSubjectHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; -import { SetProxy } from "./setProxy/setProxy"; +import type { SetProxy } from "./setProxy/setProxy"; import type { ContextUtil } from "./ContextUtil"; import type { LanguageOrdering } from "./language/languageTypes"; import { namedNode } from "@rdfjs/data-model"; -import type { RawObject } from "./util/RawObject"; +import type { RawValue } from "./util/RawObject"; +import { createNewSetProxy } from "./setProxy/createNewSetProxy"; export interface ProxyContextOptions { dataset: Dataset; @@ -25,7 +26,7 @@ const rdfType = namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"); */ export class ProxyContext { private subjectMap: Map = new Map(); - private setMap: Map> = new Map(); + private setMap: Map>> = new Map(); readonly dataset: Dataset; readonly contextUtil: ContextUtil; @@ -66,11 +67,16 @@ export class ProxyContext { public createSetProxy( quadMatch: QuadMatch, - isLangStringSet?: boolean, + isSubjectOriented?: boolean, + _isLangStringSet?: boolean, ): SetProxy { const key = this.getSetKey(...quadMatch); if (!this.setMap.has(key)) { - const proxy = new SetProxy(this, quadMatch, isLangStringSet); + const proxy = createNewSetProxy( + quadMatch, + isSubjectOriented ?? false, + this, + ); this.setMap.set(key, proxy); } return this.setMap.get(key)!; diff --git a/packages/jsonld-dataset-proxy/src/language/languagesOf.ts b/packages/jsonld-dataset-proxy/src/language/languagesOf.ts index 44c0174..f538f6c 100644 --- a/packages/jsonld-dataset-proxy/src/language/languagesOf.ts +++ b/packages/jsonld-dataset-proxy/src/language/languagesOf.ts @@ -59,6 +59,6 @@ export function languagesOf< subject, predicate, proxyContext, - proxyContext.contextUtil.isArray(key as string, rdfTypes), + proxyContext.contextUtil.isSet(key as string, rdfTypes), ) as LanguageOfConditionalReturn; } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts new file mode 100644 index 0000000..6f22a4f --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts @@ -0,0 +1,64 @@ +import type { QuadMatch } from "@ldo/rdf-utils"; +import type { ProxyContext } from "../ProxyContext"; +import type { RawObject, RawValue } from "../util/RawObject"; +import type { ObjectSetProxyQuadMatch } from "./ObjectSetProxy"; +import { ObjectSetProxy } from "./ObjectSetProxy"; +import type { SubjectSetProxyQuadMatch } from "./SubjectSetProxy"; +import { SubjectSetProxy } from "./SubjectSetProxy"; +import type { WildcardObjectSetProxyQuadMatch } from "./WildcardObjectSetProxy"; +import { WildcardObjectSetProxy } from "./WildcardObjectSetProxy"; +import type { WildcardSubjectSetProxyQuadMatch } from "./WildcardSubjectSetProxy"; +import { WildcardSubjectSetProxy } from "./WildcardSubjectSetProxy"; +import type { SetProxy } from "./setProxy"; + +// export function createNewSetProxy>( +// quadMatch: ObjectSetProxyQuadMatch, +// isSubjectOriented: false, +// proxyContext: ProxyContext, +// ): ObjectSetProxy; +// export function createNewSetProxy( +// quadMatch: SubjectSetProxyQuadMatch, +// isSubjectOriented: true, +// proxyContext: ProxyContext, +// ): SubjectSetProxy; +// export function createNewSetProxy>( +// quadMatch: WildcardObjectSetProxyQuadMatch, +// isSubjectOriented: false, +// proxyContext: ProxyContext, +// ): WildcardObjectSetProxy; +// export function createNewSetProxy( +// quadMatch: WildcardSubjectSetProxyQuadMatch, +// isSubjectOriented: true, +// proxyContext: ProxyContext, +// ): WildcardSubjectSetProxy; +export function createNewSetProxy>( + quadMatch: QuadMatch, + isSubjectOriented: boolean, + proxyContext: ProxyContext, +): SetProxy { + if (!isSubjectOriented) { + if (quadMatch[0] && quadMatch[1]) { + return new ObjectSetProxy( + proxyContext, + quadMatch as ObjectSetProxyQuadMatch, + ); + } else { + return new WildcardObjectSetProxy( + proxyContext, + quadMatch as WildcardObjectSetProxyQuadMatch, + ); + } + } else { + if (quadMatch[1] && quadMatch[2]) { + return new SubjectSetProxy( + proxyContext, + quadMatch as SubjectSetProxyQuadMatch, + ); + } else { + return new WildcardSubjectSetProxy( + proxyContext, + quadMatch as WildcardSubjectSetProxyQuadMatch, + ); + } + } +} diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts index 0e2bb93..4bebf3e 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts @@ -35,11 +35,10 @@ export function getValueForKey( const subject = target["@id"]; const rdfType = proxyContext.getRdfType(subject); const predicate = namedNode(contextUtil.keyToIri(key, rdfType)); - if (contextUtil.isArray(key, rdfType)) { - const arrayProxy = proxyContext.createArrayProxy( + if (contextUtil.isSet(key, rdfType)) { + const arrayProxy = proxyContext.createSetProxy( [subject, predicate, null, null], false, - undefined, contextUtil.isLangString(key, rdfType), ); return arrayProxy; @@ -60,6 +59,6 @@ export function getValueForKey( ); return thing; } else { - return proxyContext.createArrayProxy([subject, predicate, null, null]); + return proxyContext.createSetProxy([subject, predicate, null, null]); } } diff --git a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts index a0f2a97..96040ed 100644 --- a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts +++ b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts @@ -25,7 +25,11 @@ export function addRawValueToDatasetRecursive( const rdfType = proxyContext.getRdfType(subject); const predicate = namedNode(contextUtil.keyToIri(key, rdfType)); // Get the Object Node - const object = getNodeFromRawValue(key, value, rdfType, proxyContext); + const object = getNodeFromRawValue( + value, + proxyContext, + contextUtil.getDataType(key, rdfType), + ); if (object == undefined) { dataset.deleteMatches(subject, predicate); } else if (object.termType === "Literal") { diff --git a/packages/jsonld-dataset-proxy/src/util/isProxy.ts b/packages/jsonld-dataset-proxy/src/util/isProxy.ts index 776cbcb..94a8f3b 100644 --- a/packages/jsonld-dataset-proxy/src/util/isProxy.ts +++ b/packages/jsonld-dataset-proxy/src/util/isProxy.ts @@ -1,18 +1,18 @@ -import type { ArrayProxy } from "../arrayProxy/ArrayProxy"; -import { isArrayProxy } from "../arrayProxy/isArrayProxy"; +import { isSetProxy } from "../setProxy/isSetProxy"; +import type { SetProxy } from "../setProxy/setProxy"; import { isSubjectProxy } from "../subjectProxy/isSubjectProxy"; import type { SubjectProxy } from "../subjectProxy/SubjectProxy"; import type { ObjectLike } from "../types"; export function isProxy( someObject?: unknown, -): someObject is ArrayProxy | SubjectProxy { - return isSubjectProxy(someObject) || isArrayProxy(someObject); +): someObject is SetProxy | SubjectProxy { + return isSubjectProxy(someObject) || isSetProxy(someObject); } export function getProxyFromObject( object: ObjectLike | ObjectLike[], -): SubjectProxy | ArrayProxy { +): SubjectProxy | SetProxy { if (!isProxy(object)) { throw new Error(`${object} is not a Jsonld Dataset Proxy`); } From df839189cfd3767085a29a5a0807882ec4a0f5b0 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 20 Feb 2025 15:22:43 -0500 Subject: [PATCH 12/32] Corrected imports and SetIterator --- .../jsonld-dataset-proxy/src/ProxyContext.ts | 2 +- packages/jsonld-dataset-proxy/src/index.ts | 2 +- .../src/setProxy/SetProxy.ts | 8 +++---- .../src/setProxy/WildcardObjectSetProxy.ts | 2 +- .../src/setProxy/WildcardSubjectSetProxy.ts | 2 +- .../src/setProxy/createNewSetProxy.ts | 22 +------------------ .../src/setProxy/isSetProxy.ts | 2 +- .../src/setProxy/ldSet/LdSet.ts | 8 +++---- .../src/subjectProxy/getValueForKey.ts | 2 +- 9 files changed, 15 insertions(+), 35 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index 3856ef1..6d20e88 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -2,7 +2,7 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { BlankNode, Dataset, NamedNode } from "@rdfjs/types"; import { createSubjectHandler } from "./subjectProxy/createSubjectHandler"; import type { SubjectProxy } from "./subjectProxy/SubjectProxy"; -import type { SetProxy } from "./setProxy/setProxy"; +import type { SetProxy } from "./setProxy/SetProxy"; import type { ContextUtil } from "./ContextUtil"; import type { LanguageOrdering } from "./language/languageTypes"; import { namedNode } from "@rdfjs/data-model"; diff --git a/packages/jsonld-dataset-proxy/src/index.ts b/packages/jsonld-dataset-proxy/src/index.ts index 9a43d16..b160b41 100644 --- a/packages/jsonld-dataset-proxy/src/index.ts +++ b/packages/jsonld-dataset-proxy/src/index.ts @@ -18,7 +18,7 @@ export * from "./language/languageTypes"; export * from "./language/languageUtils"; export * from "./setProxy/isSetProxy"; -export * from "./setProxy/setProxy"; +export * from "./setProxy/SetProxy"; export * from "./setProxy/ldSet/LdSet"; export * from "./setProxy/ldSet/BasicLdSet"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts index 787b7c1..f45e6a8 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts @@ -85,7 +85,7 @@ export abstract class SetProxy< return dataset.match(subject, predicate, object).size; } - entries(): SetIterator<[T, T]> { + entries(): IterableIterator<[T, T]> { const iteratorSet = new Set<[T, T]>(); for (const value of this) { iteratorSet.add([value, value]); @@ -93,15 +93,15 @@ export abstract class SetProxy< return iteratorSet[Symbol.iterator](); } - keys(): SetIterator { + keys(): IterableIterator { return this.values(); } - values(): SetIterator { + values(): IterableIterator { return this[Symbol.iterator](); } - [Symbol.iterator](): SetIterator { + [Symbol.iterator](): IterableIterator { const { dataset } = this.context; const { subject, predicate, object } = this.getSPO(); const quads = dataset.match(subject, predicate, object); diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts index f4913e1..e30493f 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts @@ -6,7 +6,7 @@ import type { } from "@ldo/rdf-utils"; import type { Dataset, Quad } from "@rdfjs/types"; import type { RawValue } from "../util/RawObject"; -import { SetProxy } from "./setProxy"; +import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { getNodeFromRawValue } from "../util/getNodeFromRaw"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts index 9486aaa..415d794 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts @@ -6,7 +6,7 @@ import type { } from "@ldo/rdf-utils"; import type { Quad } from "@rdfjs/types"; import type { RawObject } from "../util/RawObject"; -import { SetProxy } from "./setProxy"; +import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { getNodeFromRawObject } from "../util/getNodeFromRaw"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts index 6f22a4f..99c06b6 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts @@ -9,28 +9,8 @@ import type { WildcardObjectSetProxyQuadMatch } from "./WildcardObjectSetProxy"; import { WildcardObjectSetProxy } from "./WildcardObjectSetProxy"; import type { WildcardSubjectSetProxyQuadMatch } from "./WildcardSubjectSetProxy"; import { WildcardSubjectSetProxy } from "./WildcardSubjectSetProxy"; -import type { SetProxy } from "./setProxy"; +import type { SetProxy } from "./SetProxy"; -// export function createNewSetProxy>( -// quadMatch: ObjectSetProxyQuadMatch, -// isSubjectOriented: false, -// proxyContext: ProxyContext, -// ): ObjectSetProxy; -// export function createNewSetProxy( -// quadMatch: SubjectSetProxyQuadMatch, -// isSubjectOriented: true, -// proxyContext: ProxyContext, -// ): SubjectSetProxy; -// export function createNewSetProxy>( -// quadMatch: WildcardObjectSetProxyQuadMatch, -// isSubjectOriented: false, -// proxyContext: ProxyContext, -// ): WildcardObjectSetProxy; -// export function createNewSetProxy( -// quadMatch: WildcardSubjectSetProxyQuadMatch, -// isSubjectOriented: true, -// proxyContext: ProxyContext, -// ): WildcardSubjectSetProxy; export function createNewSetProxy>( quadMatch: QuadMatch, isSubjectOriented: boolean, diff --git a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts index 9ec6383..36b19b7 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/isSetProxy.ts @@ -1,4 +1,4 @@ -import { SetProxy } from "./setProxy"; +import { SetProxy } from "./SetProxy"; export function isSetProxy(someObject?: unknown): someObject is SetProxy { if (!someObject) return false; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts index 2c85d04..b71c22d 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -30,19 +30,19 @@ export interface LdSet extends Set { */ readonly size: number; /** Iterates over values in the set. */ - [Symbol.iterator](): SetIterator; + [Symbol.iterator](): IterableIterator; /** * Returns an iterable of [v,v] pairs for every value `v` in the set. */ - entries(): SetIterator<[T, T]>; + entries(): IterableIterator<[T, T]>; /** * Despite its name, returns an iterable of the values in the set. */ - keys(): SetIterator; + keys(): IterableIterator; /** * Returns an iterable of values in the set. */ - values(): SetIterator; + values(): IterableIterator; /** * =========================================================================== * ITERATOR METHODS diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts index 4bebf3e..5244e30 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts @@ -2,7 +2,7 @@ import type { SubjectProxyTarget } from "./createSubjectHandler"; import { namedNode } from "@rdfjs/data-model"; import { nodeToJsonldRepresentation } from "../util/nodeToJsonldRepresentation"; import type { SubjectProxy } from "./SubjectProxy"; -import type { SetProxy } from "../setProxy/setProxy"; +import type { SetProxy } from "../setProxy/SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { filterQuadsByLanguageOrdering } from "../language/languageUtils"; From ffe5d3f0476eee5490d0994d134c7870e84b5043 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 20 Feb 2025 18:04:22 -0500 Subject: [PATCH 13/32] Updated array tests to use set() --- .../src/JsonldDatasetProxyBuilder.ts | 12 +- packages/jsonld-dataset-proxy/src/index.ts | 1 + .../src/setProxy/ldSet/BasicLdSet.ts | 25 +- .../jsonld-dataset-proxy/src/setProxy/set.ts | 14 + .../jsonld-dataset-proxy/src/util/isProxy.ts | 5 +- .../test/ContextUtil.test.ts | 6 +- .../jsonld-dataset-proxy/test/isProxy.test.ts | 8 +- .../test/jsonldDatasetProxy.test.ts | 897 +++++++++--------- .../test/patientExampleData.ts | 7 +- 9 files changed, 500 insertions(+), 475 deletions(-) create mode 100644 packages/jsonld-dataset-proxy/src/setProxy/set.ts diff --git a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts index 9ea2af9..dd61c78 100644 --- a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts +++ b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts @@ -57,9 +57,9 @@ export class JsonldDatasetProxyBuilder { * @param graph The graph to match */ matchSubject( - predicate: QuadMatch[1] | undefined | null, - object: QuadMatch[2] | undefined | null, - graph: QuadMatch[3] | undefined | null, + predicate?: QuadMatch[1] | undefined | null, + object?: QuadMatch[2] | undefined | null, + graph?: QuadMatch[3] | undefined | null, ): LdSet { return this.proxyContext.createSetProxy( [null, predicate, object, graph], @@ -75,9 +75,9 @@ export class JsonldDatasetProxyBuilder { * @param graph The graph to match */ matchObject( - subject: QuadMatch[0] | undefined | null, - predicate: QuadMatch[1], - graph: QuadMatch[3] | undefined | null, + subject?: QuadMatch[0] | undefined | null, + predicate?: QuadMatch[1], + graph?: QuadMatch[3] | undefined | null, ): LdSet { return this.proxyContext.createSetProxy([ subject, diff --git a/packages/jsonld-dataset-proxy/src/index.ts b/packages/jsonld-dataset-proxy/src/index.ts index b160b41..b006244 100644 --- a/packages/jsonld-dataset-proxy/src/index.ts +++ b/packages/jsonld-dataset-proxy/src/index.ts @@ -19,6 +19,7 @@ export * from "./language/languageUtils"; export * from "./setProxy/isSetProxy"; export * from "./setProxy/SetProxy"; +export * from "./setProxy/set"; export * from "./setProxy/ldSet/LdSet"; export * from "./setProxy/ldSet/BasicLdSet"; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index b6015b4..c3fcf80 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -1,9 +1,9 @@ +import type { BlankNode, NamedNode } from "@rdfjs/types"; import type { ProxyContext } from "../../ProxyContext"; import { _getUnderlyingNode } from "../../types"; -import { getNodeFromRawObject } from "../../util/getNodeFromRaw"; -import { nodeToString } from "../../util/NodeSet"; import type { RawValue } from "../../util/RawObject"; import type { LdSet } from "./LdSet"; +import { blankNode } from "@rdfjs/data-model"; /* eslint-disable @typescript-eslint/no-explicit-any */ export class BasicLdSet = NonNullable> @@ -13,14 +13,19 @@ export class BasicLdSet = NonNullable> protected context: ProxyContext; private hashMap = new Map(); - constructor(proxyContext: ProxyContext) { - super(); - this.context = proxyContext; + constructor(values?: Iterable | null) { + super(values); } private hashFn(value: T) { if (typeof value !== "object") return value.toString(); - return nodeToString(getNodeFromRawObject(value, this.context.contextUtil)); + if (value[_getUnderlyingNode]) { + return (value[_getUnderlyingNode] as NamedNode | BlankNode).value; + } else if (!value["@id"]) { + return blankNode().value; + } else { + return value["@id"]; + } } /** @@ -117,7 +122,7 @@ export class BasicLdSet = NonNullable> predicate: (value: T, set: LdSet) => any, thisArg?: unknown, ): LdSet { - const newSet = new BasicLdSet(this.context); + const newSet = new BasicLdSet(); for (const value of this) { if (predicate.call(thisArg, value, this)) newSet.add(value); } @@ -169,7 +174,7 @@ export class BasicLdSet = NonNullable> } intersection(other: Set): LdSet { - const newSet = new BasicLdSet(this.context); + const newSet = new BasicLdSet(); const iteratingSet = this.size < other.size ? this : other; const comparingSet = this.size < other.size ? other : this; for (const value of iteratingSet) { @@ -206,7 +211,7 @@ export class BasicLdSet = NonNullable> } symmetricDifference(other: Set): LdSet { - const newSet = new BasicLdSet(this.context); + const newSet = new BasicLdSet(); this.forEach((value) => newSet.add(value)); other.forEach((value) => { if (newSet.has(value)) { @@ -219,7 +224,7 @@ export class BasicLdSet = NonNullable> } union(other: Set): LdSet { - const newSet = new BasicLdSet(this.context); + const newSet = new BasicLdSet(); this.forEach((value) => newSet.add(value)); other.forEach((value) => newSet.add(value)); return newSet; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/set.ts b/packages/jsonld-dataset-proxy/src/setProxy/set.ts new file mode 100644 index 0000000..6603354 --- /dev/null +++ b/packages/jsonld-dataset-proxy/src/setProxy/set.ts @@ -0,0 +1,14 @@ +import type { RawValue } from "../util/RawObject"; +import { BasicLdSet } from "./ldSet/BasicLdSet"; +import type { LdSet } from "./ldSet/LdSet"; + +/** + * Creates an LdSet used by LDO as a list of items. + * @param values The list of items in the set + * @returns An LdSet + */ +export function set(...values: T[]): LdSet { + return new BasicLdSet( + values as Iterable>, + ) as unknown as LdSet; +} diff --git a/packages/jsonld-dataset-proxy/src/util/isProxy.ts b/packages/jsonld-dataset-proxy/src/util/isProxy.ts index 94a8f3b..91bd8cf 100644 --- a/packages/jsonld-dataset-proxy/src/util/isProxy.ts +++ b/packages/jsonld-dataset-proxy/src/util/isProxy.ts @@ -1,5 +1,6 @@ import { isSetProxy } from "../setProxy/isSetProxy"; -import type { SetProxy } from "../setProxy/setProxy"; +import type { LdSet } from "../setProxy/ldSet/LdSet"; +import type { SetProxy } from "../setProxy/SetProxy"; import { isSubjectProxy } from "../subjectProxy/isSubjectProxy"; import type { SubjectProxy } from "../subjectProxy/SubjectProxy"; import type { ObjectLike } from "../types"; @@ -11,7 +12,7 @@ export function isProxy( } export function getProxyFromObject( - object: ObjectLike | ObjectLike[], + object: ObjectLike | LdSet, ): SubjectProxy | SetProxy { if (!isProxy(object)) { throw new Error(`${object} is not a Jsonld Dataset Proxy`); diff --git a/packages/jsonld-dataset-proxy/test/ContextUtil.test.ts b/packages/jsonld-dataset-proxy/test/ContextUtil.test.ts index 5b8bb39..c26fd1e 100644 --- a/packages/jsonld-dataset-proxy/test/ContextUtil.test.ts +++ b/packages/jsonld-dataset-proxy/test/ContextUtil.test.ts @@ -53,13 +53,11 @@ describe("ContextUtil", () => { }); }); - describe("isArray", () => { + describe("isSet", () => { it("indicates that the special @isCollection field means array", () => { const contextUtil = new ContextUtil(scopedContext); expect( - contextUtil.isArray("element", [ - namedNode("http://example.com/Avatar"), - ]), + contextUtil.isSet("element", [namedNode("http://example.com/Avatar")]), ).toBe(true); }); }); diff --git a/packages/jsonld-dataset-proxy/test/isProxy.test.ts b/packages/jsonld-dataset-proxy/test/isProxy.test.ts index 133a2a0..e9c816f 100644 --- a/packages/jsonld-dataset-proxy/test/isProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/isProxy.test.ts @@ -1,7 +1,7 @@ import { getProxyFromObject, getSubjectProxyFromObject, - isArrayProxy, + isSetProxy, isSubjectProxy, } from "../src"; @@ -25,12 +25,12 @@ describe("isProxy", () => { }); }); -describe("isArrayProxy", () => { +describe("isSetProxy", () => { it("returns false if undefined is passed as a parameter", () => { - expect(isArrayProxy(undefined)).toBe(false); + expect(isSetProxy(undefined)).toBe(false); }); it("returns false if string is passed as a parameter", () => { - expect(isArrayProxy("hello")).toBe(false); + expect(isSetProxy("hello")).toBe(false); }); }); diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index 1109449..9cf331e 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -1,19 +1,19 @@ import { createDataset, serializedToDataset } from "@ldo/dataset"; -import type { JsonldDatasetProxyBuilder, LanguageSet } from "../src"; +import type { JsonldDatasetProxyBuilder, LanguageSet, LdSet } from "../src"; import { graphOf, jsonldDatasetProxy, languagesOf, setLanguagePreferences, write, - _getNodeAtIndex, - _getUnderlyingArrayTarget, _getUnderlyingDataset, _getUnderlyingMatch, _getUnderlyingNode, _isSubjectOriented, _proxyContext, _writeGraphs, + BasicLdSet, + set, } from "../src"; import type { ObservationShape, PatientShape } from "./patientExampleData"; import { @@ -218,100 +218,98 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("simulates the getter behavior of an array of primitives", async () => { const [, observation] = await getLoadedDataset(); - const arr = observation?.subject?.name as string[]; - expect(Array.isArray(arr)).toBe(true); - expect(arr.length).toBe(3); - expect(arr[0]).toBe("Garrett"); - expect(arr[1]).toBe("Bobby"); - expect(arr[2]).toBe("Ferguson"); - expect(arr.at(0)).toBe("Garrett"); - expect(arr.at(-1)).toBe("Ferguson"); - expect(arr.concat(["Mimoey"])).toEqual([ - "Garrett", - "Bobby", - "Ferguson", - "Mimoey", - ]); - const entriesIterator = arr.entries(); - expect(entriesIterator.next()).toEqual({ - value: [0, "Garrett"], - done: false, - }); - expect(entriesIterator.next()).toEqual({ - value: [1, "Bobby"], - done: false, - }); - expect(entriesIterator.next()).toEqual({ - value: [2, "Ferguson"], - done: false, - }); - expect(entriesIterator.next()).toEqual({ - value: undefined, - done: true, - }); - expect(arr.every((val) => val.length > 2)).toBe(true); - expect(arr.every((val) => val.length > 6)).toBe(false); - expect(arr.filter((val) => val.length > 6)).toEqual([ - "Garrett", - "Ferguson", - ]); - expect(arr.find((val) => val.length < 6)).toBe("Bobby"); - expect(arr.findIndex((val) => val.length < 6)).toBe(1); - // arr.flat (Not included because there should never be nested arrays) - let concatTest = ""; - arr.forEach((value) => (concatTest += value)); - expect(concatTest).toBe("GarrettBobbyFerguson"); - expect(arr.includes("Bobby")).toBe(true); - expect(arr.indexOf("Bobby")).toBe(1); - expect(arr.join("-")).toBe("Garrett-Bobby-Ferguson"); - const keysIterator = arr.keys(); - expect(keysIterator.next()).toEqual({ - value: 0, - done: false, - }); - expect(keysIterator.next()).toEqual({ - value: 1, - done: false, - }); - expect(keysIterator.next()).toEqual({ - value: 2, - done: false, - }); - expect(keysIterator.next()).toEqual({ - value: undefined, - done: true, - }); - expect(arr.lastIndexOf("Bobby")).toBe(1); - expect(arr.map((val) => val.toUpperCase())).toEqual([ - "GARRETT", - "BOBBY", - "FERGUSON", - ]); - expect(arr.reduce((agg, val) => agg + val, "")).toBe( - "GarrettBobbyFerguson", - ); - expect(arr.slice(2)).toEqual(["Ferguson"]); - expect(arr.some((val) => val.startsWith("G"))).toBe(true); - expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); - const valuesIterator = arr.values(); - expect(valuesIterator.next()).toEqual({ - value: "Garrett", - done: false, - }); - expect(valuesIterator.next()).toEqual({ - value: "Bobby", - done: false, - }); - expect(valuesIterator.next()).toEqual({ - value: "Ferguson", - done: false, - }); - expect(valuesIterator.next()).toEqual({ - value: undefined, - done: true, - }); - expect(JSON.stringify(arr)).toBe(`["Garrett","Bobby","Ferguson"]`); - expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); + const set = observation!.subject!.name!; + expect(set.size).toBe(3); + expect(set).toContain("Garrett"); + expect(set).toContain("Bobby"); + expect(set).toContain("Ferguson"); + // TODO + // expect(arr.concat(["Mimoey"])).toEqual([ + // "Garrett", + // "Bobby", + // "Ferguson", + // "Mimoey", + // ]); + // const entriesIterator = arr.entries(); + // expect(entriesIterator.next()).toEqual({ + // value: [0, "Garrett"], + // done: false, + // }); + // expect(entriesIterator.next()).toEqual({ + // value: [1, "Bobby"], + // done: false, + // }); + // expect(entriesIterator.next()).toEqual({ + // value: [2, "Ferguson"], + // done: false, + // }); + // expect(entriesIterator.next()).toEqual({ + // value: undefined, + // done: true, + // }); + // expect(arr.every((val) => val.length > 2)).toBe(true); + // expect(arr.every((val) => val.length > 6)).toBe(false); + // expect(arr.filter((val) => val.length > 6)).toEqual([ + // "Garrett", + // "Ferguson", + // ]); + // expect(arr.find((val) => val.length < 6)).toBe("Bobby"); + // expect(arr.findIndex((val) => val.length < 6)).toBe(1); + // // arr.flat (Not included because there should never be nested arrays) + // let concatTest = ""; + // arr.forEach((value) => (concatTest += value)); + // expect(concatTest).toBe("GarrettBobbyFerguson"); + // expect(arr.includes("Bobby")).toBe(true); + // expect(arr.indexOf("Bobby")).toBe(1); + // expect(arr.join("-")).toBe("Garrett-Bobby-Ferguson"); + // const keysIterator = arr.keys(); + // expect(keysIterator.next()).toEqual({ + // value: 0, + // done: false, + // }); + // expect(keysIterator.next()).toEqual({ + // value: 1, + // done: false, + // }); + // expect(keysIterator.next()).toEqual({ + // value: 2, + // done: false, + // }); + // expect(keysIterator.next()).toEqual({ + // value: undefined, + // done: true, + // }); + // expect(arr.lastIndexOf("Bobby")).toBe(1); + // expect(arr.map((val) => val.toUpperCase())).toEqual([ + // "GARRETT", + // "BOBBY", + // "FERGUSON", + // ]); + // expect(arr.reduce((agg, val) => agg + val, "")).toBe( + // "GarrettBobbyFerguson", + // ); + // expect(arr.slice(2)).toEqual(["Ferguson"]); + // expect(arr.some((val) => val.startsWith("G"))).toBe(true); + // expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); + // const valuesIterator = arr.values(); + // expect(valuesIterator.next()).toEqual({ + // value: "Garrett", + // done: false, + // }); + // expect(valuesIterator.next()).toEqual({ + // value: "Bobby", + // done: false, + // }); + // expect(valuesIterator.next()).toEqual({ + // value: "Ferguson", + // done: false, + // }); + // expect(valuesIterator.next()).toEqual({ + // value: undefined, + // done: true, + // }); + // expect(JSON.stringify(arr)).toBe(`["Garrett","Bobby","Ferguson"]`); + // expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); }); it("can traverse a circular graph", async () => { @@ -521,7 +519,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Creates a blank node if the id is blank during set", async () => { const [dataset, observation] = await getEmptyObservationDataset(); observation.type = { "@id": "Observation" }; - observation.subject = { type: { "@id": "Patient" }, name: ["Joe"] }; + observation.subject = { type: { "@id": "Patient" }, name: set("Joe") }; expect(observation.subject?.["@id"]).toBeUndefined(); expect(observation.subject.name).toEqual(["Joe"]); expect( @@ -540,7 +538,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { "@id": "http://example.com/Patient1", type: { "@id": "Patient" }, birthdate: "2001-01-01", - name: ["Jon", "Bon", "Jovi"], + name: set("Jon", "Bon", "Jovi"), }; observation.type = { "@id": "Observation" }; observation.subject = patient; @@ -554,15 +552,15 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const patient1: PatientShape = { "@id": "http://example.com/Patient1", type: { "@id": "Patient" }, - name: ["jon"], + name: set("jon"), }; const patient2: PatientShape = { "@id": "http://example.com/patient2", type: { "@id": "Patient" }, - name: ["jane"], - roommate: [patient1], + name: set("jane"), + roommate: set(patient1), }; - patient1.roommate = [patient2]; + patient1.roommate = set(patient2); observation.type = { "@id": "Observation" }; observation.subject = patient1; expect(dataset.toString()).toBe( @@ -579,38 +577,40 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const patient1: PatientShape = builder.fromSubject( namedNode("http://example.com/Patient1"), ); - patient3.roommate?.push(patient1); - }); - - it("sets a primitive on an array", async () => { - const [dataset, patient] = await getEmptyPatientDataset(); - patient.type = { "@id": "Patient" }; - (patient.name as string[])[0] = "jon"; - expect(dataset.toString()).toBe( - ' .\n "jon" .\n', - ); - }); - - it("sets a primitive on an array and overwrites one that already is there", async () => { - const [dataset, patient] = await getEmptyPatientDataset(); - patient.type = { "@id": "Patient" }; - dataset.add( - quad( - namedNode("http://example.com/Patient1"), - namedNode("http://hl7.org/fhir/name"), - literal("jon", "http://www.w3.org/2001/XMLSchema#string"), - ), - ); - (patient.name as string[])[0] = "not jon"; - expect(dataset.toString()).toBe( - ' .\n "not jon" .\n', - ); - }); + patient3.roommate?.add(patient1); + }); + + // TODO: Confirm commenting this out is fine + // it("sets a primitive on an array", async () => { + // const [dataset, patient] = await getEmptyPatientDataset(); + // patient.type = { "@id": "Patient" }; + // patient.name[0] = "jon"; + // expect(dataset.toString()).toBe( + // ' .\n "jon" .\n', + // ); + // }); + + // TODO: Confirm that commenting this out is fine + // it("sets a primitive on an array and overwrites one that already is there", async () => { + // const [dataset, patient] = await getEmptyPatientDataset(); + // patient.type = { "@id": "Patient" }; + // dataset.add( + // quad( + // namedNode("http://example.com/Patient1"), + // namedNode("http://hl7.org/fhir/name"), + // literal("jon", "http://www.w3.org/2001/XMLSchema#string"), + // ), + // ); + // (patient.name as string[])[0] = "not jon"; + // expect(dataset.toString()).toBe( + // ' .\n "not jon" .\n', + // ); + // }); it("sets an array", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name = ["Joe", "Mama"]; + patient.name = set("Joe", "Mama"); expect(dataset.toString()).toBe( ' .\n "Joe" .\n "Mama" .\n', ); @@ -621,7 +621,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const replacementPatient: PatientShape = { "@id": "http://example.com/ReplacementPatient", type: { "@id": "Patient" }, - name: ["Jackson"], + name: set("Jackson"), }; observation.subject = replacementPatient; expect(dataset.toString()).toBe( @@ -640,31 +640,33 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - it("Does not remove the full object when it is replaced on an array", async () => { - const [dataset, observation] = await getTinyLoadedDataset(); - const replacementPatient: PatientShape = { - "@id": "http://example.com/ReplacementPatient", - type: { "@id": "Patient" }, - name: ["Jackson"], - }; - const roommateArr = observation?.subject?.roommate as PatientShape[]; - roommateArr[0] = replacementPatient; - expect(dataset.toString()).toBe( - ' .\n .\n .\n "Garrett" .\n .\n .\n "Rob" .\n .\n .\n "Jackson" .\n', - ); - }); - - it("Keeps the correct array index when setting an index", async () => { - const [, observation] = await getLoadedDataset(); - const roommateArr = observation.subject?.roommate as PatientShape[]; - roommateArr[0] = { - "@id": "http://example.com/ReplacementPatient", - type: { "@id": "Patient" }, - name: ["Jackson"], - }; - expect(roommateArr.length).toBe(2); - expect(roommateArr[0].name?.[0]).toBe("Jackson"); - }); + // TODO: Check that commenting this out is fine + // it("Does not remove the full object when it is replaced on an array", async () => { + // const [dataset, observation] = await getTinyLoadedDataset(); + // const replacementPatient: PatientShape = { + // "@id": "http://example.com/ReplacementPatient", + // type: { "@id": "Patient" }, + // name: set("Jackson"), + // }; + // const roommateArr = observation!.subject!.roommate; + // roommateArr[0] = replacementPatient; + // expect(dataset.toString()).toBe( + // ' .\n .\n .\n "Garrett" .\n .\n .\n "Rob" .\n .\n .\n "Jackson" .\n', + // ); + // }); + + // TODO check + // it("Keeps the correct array index when setting an index", async () => { + // const [, observation] = await getLoadedDataset(); + // const roommateArr = observation.subject?.roommate as PatientShape[]; + // roommateArr[0] = { + // "@id": "http://example.com/ReplacementPatient", + // type: { "@id": "Patient" }, + // name: ["Jackson"], + // }; + // expect(roommateArr.length).toBe(2); + // expect(roommateArr[0].name?.[0]).toBe("Jackson"); + // }); it("Changes the subject name if the @id is changed", async () => { const [dataset, observation] = await getTinyLoadedDataset(); @@ -765,7 +767,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const replacementPatient: PatientShape = { "@id": "http://example.com/Patient1", type: { "@id": "Patient" }, - name: ["Mister Sneaky"], + name: set("Mister Sneaky"), }; observation.subject = replacementPatient; expect(dataset.toString()).toBe( @@ -787,7 +789,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Adds elements to the array even if they were modified by the datastore", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name = ["Joe", "Blow"]; + patient.name = set("Joe", "Blow"); dataset.add( quad( namedNode("http://example.com/Patient1"), @@ -801,7 +803,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Removes elements from the array even if they were modified by the datastore", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name = ["Joe", "Blow"]; + patient.name = set("Joe", "Blow"); dataset.delete( quad( namedNode("http://example.com/Patient1"), @@ -815,7 +817,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Removes and adds from the array even if they were modified by the datastore", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name = ["Joe", "Blow"]; + patient.name = set("Joe", "Blow"); dataset.delete( quad( namedNode("http://example.com/Patient1"), @@ -835,58 +837,62 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Prevents duplicates from being added to the array", async () => { const [, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr[3] = "Garrett"; + const arr = patient.name!; + arr.add("Garrett"); expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); }); - it("Prevents duplicates from being added when a value is overwritten", async () => { - const [, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr[1] = "Garrett"; - expect(arr).toEqual(["Garrett", "Ferguson"]); - }); + // TODO: Check if can delete + // it("Prevents duplicates from being added when a value is overwritten", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // const arr = patient.name!; + // arr[1] = "Garrett"; + // expect(arr).toEqual(["Garrett", "Ferguson"]); + // }); it("Prevents duplicates for Objects", async () => { const [, observation] = await getLoadedDataset(); - const roommates = observation.subject?.roommate as PatientShape[]; - roommates[0] = { + const roommates = observation.subject!.roommate!; + roommates.add({ "@id": "http://example.com/Patient3", type: { "@id": "Patient" }, - }; - expect(roommates.length).toBe(1); - expect(roommates[0].name?.[0]).toBe("Amy"); - }); - - it("Does nothing when you try to set a symbol on an array", async () => { - const [, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - expect(() => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - arr[Symbol.search] = "Cool"; - }).not.toThrowError(); - }); - - it("Does nothing when you try to delete a symbol on an array", async () => { - const [, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - expect(() => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - delete arr[Symbol.search]; - }).not.toThrowError(); - }); - - it("Does nothing when you try to delete an index of the array that doesn't exist", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - delete arr[5]; - expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - ); - }); + }); + expect(roommates.size).toBe(1); + expect(roommates.map((obj) => obj.name)).toContain("Amy"); + }); + + // TODO: check + // it("Does nothing when you try to set a symbol on an array", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // const arr = patient.name!; + // expect(() => { + // // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // // @ts-ignore + // arr[Symbol.search] = "Cool"; + // }).not.toThrowError(); + // }); + + // TODO: check + // it("Does nothing when you try to delete a symbol on an array", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // expect(() => { + // // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // // @ts-ignore + // delete arr[Symbol.search]; + // }).not.toThrowError(); + // }); + + // TODO check + // it("Does nothing when you try to delete an index of the array that doesn't exist", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // delete arr[5]; + // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); it("Can set a triple object named node with just a string", async () => { const [dataset, observation] = await getEmptyObservationDataset(); @@ -902,187 +908,188 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - describe("Array Methods", () => { - it("handles copyWithin", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.copyWithin(0, 2, 3); - expect(arr).toEqual(["Ferguson", "Bobby"]); - expect(dataset.toString()).toEqual( - ' .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("handles copyWithin with the optional end variable missing", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.copyWithin(0, 2); - expect(arr).toEqual(["Ferguson", "Bobby"]); - expect(dataset.toString()).toEqual( - ' .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("handles copyWithin with the optional start variable missing", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(() => arr.copyWithin(0, undefined, 2)).not.toThrowError(); - expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("handles fill", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.fill("Beepy", 2, 5); - expect(arr).toEqual(["Garrett", "Bobby", "Beepy"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Beepy" .\n', - ); - }); - - it("handles pop", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - expect(arr.pop()).toBe("Ferguson"); - expect(arr).toEqual(["Garrett", "Bobby"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n', - ); - }); - - it("returns undefined for pop on an empty collection", async () => { - const [, patient] = await getArrayLoadedDataset(); - patient.name = []; - expect(patient.name.pop()).toBe(undefined); - }); - - it("handles push", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.push("Beepy"); - expect(arr).toEqual(["Garrett", "Bobby", "Ferguson", "Beepy"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - ); - }); - - it("handles reverse", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - patient.name?.reverse(); - expect(patient.name).toEqual(["Ferguson", "Bobby", "Garrett"]); - expect(dataset.toString()).toBe( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("handles shift", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - expect(arr.shift()).toEqual("Garrett"); - expect(arr).toEqual(["Bobby", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("returns undefined for shift on an empty collection", async () => { - const [, patient] = await getArrayLoadedDataset(); - patient.name = []; - expect(patient.name.shift()).toBe(undefined); - }); - - it("handles sort", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - patient.name?.sort((a, b) => { - return a.length - b.length; - }); - expect(patient.name).toEqual(["Bobby", "Garrett", "Ferguson"]); - expect(dataset.toString()).toBe( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - ); - }); - - it("handles sort without a sort function", async () => { - const [, patient] = await getArrayLoadedDataset(); - patient.name?.sort(); - expect(patient.name).toEqual(["Bobby", "Ferguson", "Garrett"]); - }); - - it("handles sort without a sort function and there are two equal values", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - dataset.add( - quad( - namedNode("http://example.com/Patient1"), - namedNode("http://hl7.org/fhir/name"), - literal( - "Bobby", - namedNode("http://www.w3.org/2001/XMLSchema#token"), - ), - ), - ); - patient.name?.sort(); - expect(patient.name).toEqual(["Bobby", "Bobby", "Ferguson", "Garrett"]); - }); - - it("handles splice", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.splice(1, 0, "Beepy"); - expect(arr).toEqual(["Garrett", "Beepy", "Bobby", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - ); - }); - - it("handles splice with objects", async () => { - const [, observation] = await getLoadedDataset(); - const roommates = observation.subject?.roommate as PatientShape[]; - roommates.splice( - 0, - 1, - { - "@id": "http://example.com/Patient4", - type: { "@id": "Patient" }, - name: ["Dippy"], - age: 2, - }, - { - "@id": "http://example.com/Patient5", - type: { "@id": "Patient" }, - name: ["Licky"], - age: 3, - }, - ); - expect(roommates[0].name?.[0]).toBe("Dippy"); - expect(roommates[1].name?.[0]).toBe("Licky"); - expect(roommates[2].name?.[0]).toBe("Amy"); - }); - - it("handles splice with only two params", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.splice(1, 1); - expect(arr).toEqual(["Garrett", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Ferguson" .\n', - ); - }); - - it("handles unshift", async () => { - const [dataset, patient] = await getArrayLoadedDataset(); - const arr = patient.name as string[]; - arr.unshift("Beepy"); - expect(arr).toEqual(["Beepy", "Garrett", "Bobby", "Ferguson"]); - expect(dataset.toString()).toEqual( - ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - ); - }); - }); + // TODO check + // describe("Array Methods", () => { + // it("handles copyWithin", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name!; + // arr.copyWithin(0, 2, 3); + // expect(arr).toEqual(["Ferguson", "Bobby"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles copyWithin with the optional end variable missing", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.copyWithin(0, 2); + // expect(arr).toEqual(["Ferguson", "Bobby"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles copyWithin with the optional start variable missing", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // // @ts-ignore + // expect(() => arr.copyWithin(0, undefined, 2)).not.toThrowError(); + // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles fill", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.fill("Beepy", 2, 5); + // expect(arr).toEqual(["Garrett", "Bobby", "Beepy"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Beepy" .\n', + // ); + // }); + + // it("handles pop", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // expect(arr.pop()).toBe("Ferguson"); + // expect(arr).toEqual(["Garrett", "Bobby"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n', + // ); + // }); + + // it("returns undefined for pop on an empty collection", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // patient.name = []; + // expect(patient.name.pop()).toBe(undefined); + // }); + + // it("handles push", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.push("Beepy"); + // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson", "Beepy"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', + // ); + // }); + + // it("handles reverse", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // patient.name?.reverse(); + // expect(patient.name).toEqual(["Ferguson", "Bobby", "Garrett"]); + // expect(dataset.toString()).toBe( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles shift", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // expect(arr.shift()).toEqual("Garrett"); + // expect(arr).toEqual(["Bobby", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("returns undefined for shift on an empty collection", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // patient.name = []; + // expect(patient.name.shift()).toBe(undefined); + // }); + + // it("handles sort", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // patient.name?.sort((a, b) => { + // return a.length - b.length; + // }); + // expect(patient.name).toEqual(["Bobby", "Garrett", "Ferguson"]); + // expect(dataset.toString()).toBe( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles sort without a sort function", async () => { + // const [, patient] = await getArrayLoadedDataset(); + // patient.name?.sort(); + // expect(patient.name).toEqual(["Bobby", "Ferguson", "Garrett"]); + // }); + + // it("handles sort without a sort function and there are two equal values", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // dataset.add( + // quad( + // namedNode("http://example.com/Patient1"), + // namedNode("http://hl7.org/fhir/name"), + // literal( + // "Bobby", + // namedNode("http://www.w3.org/2001/XMLSchema#token"), + // ), + // ), + // ); + // patient.name?.sort(); + // expect(patient.name).toEqual(["Bobby", "Bobby", "Ferguson", "Garrett"]); + // }); + + // it("handles splice", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.splice(1, 0, "Beepy"); + // expect(arr).toEqual(["Garrett", "Beepy", "Bobby", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', + // ); + // }); + + // it("handles splice with objects", async () => { + // const [, observation] = await getLoadedDataset(); + // const roommates = observation.subject?.roommate as PatientShape[]; + // roommates.splice( + // 0, + // 1, + // { + // "@id": "http://example.com/Patient4", + // type: { "@id": "Patient" }, + // name: ["Dippy"], + // age: 2, + // }, + // { + // "@id": "http://example.com/Patient5", + // type: { "@id": "Patient" }, + // name: ["Licky"], + // age: 3, + // }, + // ); + // expect(roommates[0].name?.[0]).toBe("Dippy"); + // expect(roommates[1].name?.[0]).toBe("Licky"); + // expect(roommates[2].name?.[0]).toBe("Amy"); + // }); + + // it("handles splice with only two params", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.splice(1, 1); + // expect(arr).toEqual(["Garrett", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Ferguson" .\n', + // ); + // }); + + // it("handles unshift", async () => { + // const [dataset, patient] = await getArrayLoadedDataset(); + // const arr = patient.name as string[]; + // arr.unshift("Beepy"); + // expect(arr).toEqual(["Beepy", "Garrett", "Bobby", "Ferguson"]); + // expect(dataset.toString()).toEqual( + // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', + // ); + // }); + // }); }); describe("underlying data", () => { @@ -1107,22 +1114,23 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const match = roommateArr[_getUnderlyingMatch]; expect(match[0].value).toBe("http://example.com/Patient1"); expect(match[1].value).toBe("http://hl7.org/fhir/roommate"); - expect(roommateArr[_getNodeAtIndex](0).value).toBe( - "http://example.com/Patient2", - ); - expect(roommateArr[_getNodeAtIndex](10)).toBe(undefined); - expect(observation.subject.name[_getNodeAtIndex](0).value).toBe( - "Garrett", - ); - const underlyingArrayTarget = roommateArr[_getUnderlyingArrayTarget]; - expect(underlyingArrayTarget[1][0].value).toBe( + // TODO: Alt tests + // expect(roommateArr[_getNodeAtIndex](0).value).toBe( + // "http://example.com/Patient2", + // ); + // expect(roommateArr[_getNodeAtIndex](10)).toBe(undefined); + // expect(observation.subject.name[_getNodeAtIndex](0).value).toBe( + // "Garrett", + // ); + const underlyingArrayTarget = roommateArr[_getUnderlyingMatch]; + expect(underlyingArrayTarget[0].value).toBe( "http://example.com/Patient2", ); }); }); describe("matchSubject", () => { - let patients: PatientShape[]; + let patients: LdSet; let dataset: Dataset; beforeEach(async () => { @@ -1141,10 +1149,10 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { }); it("Successfully adds a node to the list", async () => { - patients.push({ + patients.add({ "@id": "http://example.com/Patient4", type: { "@id": "Patient" }, - name: ["Dippy"], + name: set("Dippy"), age: 2, }); expect( @@ -1227,38 +1235,37 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { }); it("Removes an object and replaces it upon splice", async () => { - patients.splice( - 1, - 1, - { - "@id": "http://example.com/Patient4", - type: { "@id": "Patient" }, - name: ["Dippy"], - age: 2, - }, - { - "@id": "http://example.com/Patient5", - type: { "@id": "Patient" }, - name: ["Licky"], - age: 3, - }, - ); - - expect(dataset.match(namedNode("http://example.com/Patient2")).size).toBe( - 0, - ); - expect(patients[1].name?.[0]).toBe("Dippy"); - expect(patients[2].name?.[0]).toBe("Licky"); + // TODO adjust test + // patients.splice( + // 1, + // 1, + // { + // "@id": "http://example.com/Patient4", + // type: { "@id": "Patient" }, + // name: ["Dippy"], + // age: 2, + // }, + // { + // "@id": "http://example.com/Patient5", + // type: { "@id": "Patient" }, + // name: ["Licky"], + // age: 3, + // }, + // ); + // expect(dataset.match(namedNode("http://example.com/Patient2")).size).toBe( + // 0, + // ); + // expect(patients[1].name?.[0]).toBe("Dippy"); + // expect(patients[2].name?.[0]).toBe("Licky"); }); it("Removes an object completely when assigning it to undefined", async () => { - // @ts-expect-error This violates the typings - patients[0] = undefined; - - expect(dataset.match(namedNode("http://example.com/Patient1")).size).toBe( - 0, - ); - expect(patients[0].name?.[0]).toBe("Rob"); + // TODO adjust + // patients[0] = undefined; + // expect(dataset.match(namedNode("http://example.com/Patient1")).size).toBe( + // 0, + // ); + // expect(patients[0].name?.[0]).toBe("Rob"); }); it("Removes an object completely when using the delete parameter", async () => { @@ -1277,13 +1284,15 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { namedNode("http://hl7.org/fhir/Patient"), namedNode("http://example.com/Patient1Doc"), ); - expect(patients.length).toBe(1); - expect(patients[0]["@id"]).toBe("http://example.com/Patient1"); + expect(patients.size).toBe(1); + expect(patients.map((o) => o["@id"])).toContain( + "http://example.com/Patient1", + ); }); }); describe("matchObject", () => { - let patients: PatientShape[]; + let patients: LdSet; let builder: JsonldDatasetProxyBuilder; beforeEach(async () => { @@ -1321,7 +1330,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { null, null, ); - expect(hodgePodge.length).toBe(5); + expect(hodgePodge.size).toBe(5); expect(hodgePodge[0]["@id"]).toBe("Patient"); expect(hodgePodge[1]).toBe("Amy"); expect(hodgePodge[2]).toBe("1988-01-01"); @@ -1335,15 +1344,13 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const [, , builder] = await getEmptyPatientDataset(); const patient = builder.fromJson({ type: { "@id": "Patient" }, - name: ["Jack", "Horner"], + name: set("Jack", "Horner"), birthdate: "1725/11/03", age: 298, - roommate: [ - { - type: { "@id": "Patient" }, - name: ["Ethical", "Bug"], - }, - ], + roommate: set({ + type: { "@id": "Patient" }, + name: set("Ethical", "Bug"), + }), }); expect(patient.name?.[0]).toBe("Jack"); expect(patient.name?.[1]).toBe("Horner"); @@ -1358,15 +1365,13 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const patient = builder.fromJson({ "@id": "http://example.com/Patient13", type: { "@id": "Patient" }, - name: ["Jack", "Horner"], + name: set("Jack", "Horner"), birthdate: "1725/11/03", age: 298, - roommate: [ - { - type: { "@id": "Patient" }, - name: ["Ethical", "Bug"], - }, - ], + roommate: set({ + type: { "@id": "Patient" }, + name: set("Ethical", "Bug"), + }), }); expect(patient["@id"]).toBe("http://example.com/Patient13"); expect(patient.name?.[0]).toBe("Jack"); @@ -1386,7 +1391,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { .write(namedNode("http://example.com/Patient4Doc")) .fromSubject(namedNode("https://example.com/Patient4")); patient4.type = { "@id": "Patient" }; - patient4.name = ["Jackson"]; + patient4.name = set("Jackson"); expect(dataset.toString()).toBe( ' .\n "Jackson" .\n', ); diff --git a/packages/jsonld-dataset-proxy/test/patientExampleData.ts b/packages/jsonld-dataset-proxy/test/patientExampleData.ts index 3ac8ac3..d8ab9f4 100644 --- a/packages/jsonld-dataset-proxy/test/patientExampleData.ts +++ b/packages/jsonld-dataset-proxy/test/patientExampleData.ts @@ -1,6 +1,7 @@ import type { ContextDefinition } from "jsonld"; import type { Schema } from "shexj"; import type { LdoJsonldContext } from "../src/LdoJsonldContext"; +import type { LdSet } from "../src"; export interface ObservationShape { "@id"?: string; @@ -15,12 +16,12 @@ export type PatientShape = { "@id"?: string; "@context"?: ContextDefinition; type: { "@id": "Patient" }; - name?: string[]; - langName?: string[]; + name?: LdSet; + langName?: LdSet; birthdate?: string; age?: number; isHappy?: boolean; - roommate?: PatientShape[]; + roommate?: LdSet; }; // No need to fully define the schema because this library doesn't use it From 068f82a9ef7e22a2bfa9cb80e009f4880480ac16 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 20 Feb 2025 18:31:49 -0500 Subject: [PATCH 14/32] Types now passing in tests. --- packages/jsonld-dataset-proxy/src/graphOf.ts | 7 +- .../src/language/languagesOf.ts | 3 +- .../test/jsonldDatasetProxy.test.ts | 75 +++++++++---------- 3 files changed, 41 insertions(+), 44 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/graphOf.ts b/packages/jsonld-dataset-proxy/src/graphOf.ts index ede4e0a..22de920 100644 --- a/packages/jsonld-dataset-proxy/src/graphOf.ts +++ b/packages/jsonld-dataset-proxy/src/graphOf.ts @@ -8,21 +8,20 @@ import { _getUnderlyingNode, _proxyContext, } from "./types"; +import type { LdSet } from "./setProxy/ldSet/LdSet"; /** * Returns the graph for which a defined triple is a member * @param subject A JsonldDatasetProxy that represents the subject * @param predicate The key on the JsonldDatasetProxy * @param object The direct object. This can be a JsonldDatasetProxy. This field - * is optional if this field does not have a "set" object. + * is optional. * @returns a list of graphs for which the triples are members */ export function graphOf( subject: Subject, predicate: Key, - object: NonNullable extends Set - ? T - : Subject[Key] | undefined, + object?: NonNullable extends LdSet ? T : Subject[Key], ): GraphNode[] { const subjectProxy = getSubjectProxyFromObject(subject); const proxyContext = subjectProxy[_proxyContext]; diff --git a/packages/jsonld-dataset-proxy/src/language/languagesOf.ts b/packages/jsonld-dataset-proxy/src/language/languagesOf.ts index f538f6c..88d58c1 100644 --- a/packages/jsonld-dataset-proxy/src/language/languagesOf.ts +++ b/packages/jsonld-dataset-proxy/src/language/languagesOf.ts @@ -3,6 +3,7 @@ import { getSubjectProxyFromObject } from "../subjectProxy/isSubjectProxy"; import type { ObjectLike } from "../types"; import { _getUnderlyingNode, _proxyContext } from "../types"; import { createLanguageMapProxy } from "./languageMapProxy"; +import type { LdSet } from "../setProxy/ldSet/LdSet"; /** * ----------------------------------------------------------------------------- @@ -25,7 +26,7 @@ export type LanguageSet = Set; export type LanguageOfConditionalReturn< SubjectObject extends ObjectLike, Key extends keyof SubjectObject, -> = NonNullable extends Array +> = NonNullable extends LdSet ? LanguageSetMap : LanguageMap; diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index 9cf331e..8afd6db 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -12,7 +12,6 @@ import { _isSubjectOriented, _proxyContext, _writeGraphs, - BasicLdSet, set, } from "../src"; import type { ObservationShape, PatientShape } from "./patientExampleData"; @@ -1401,7 +1400,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { describe("graphOf", () => { it("detects the graph of a single value", async () => { const [, observation] = await getGraphLoadedDataset(); - expect(graphOf(observation, "subject")[0].value).toBe( + expect(graphOf(observation, "subject").map((n) => n.value)).toContain( "http://example.com/Observation1Doc", ); expect( @@ -1415,15 +1414,14 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("detects the graph of an array value", async () => { const [, observation] = await getGraphLoadedDataset(); const patient1 = observation.subject as PatientShape; - expect(graphOf(patient1, "name", 0)[0].value).toBe( - "http://example.com/Patient1Doc", - ); - expect(graphOf(patient1, "roommate", 0)[0].value).toBe( - "http://example.com/Patient1Doc", - ); expect( - graphOf(patient1, "roommate", patient1.roommate?.[1])[0].value, - ).toBe("http://example.com/Patient1Doc"); + graphOf(patient1, "name", "Garrett").map((n) => n.value), + ).toContain("http://example.com/Patient1Doc"); + expect( + graphOf(patient1, "roommate", { + "@id": "http://example.com/Patient2", + } as PatientShape).map((n) => n.value), + ).toContain("http://example.com/Patient1Doc"); }); it("detects the graph of a value in multiple graphs", async () => { @@ -1451,13 +1449,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { `Key "subject" of [object Object] is not an array.`, ); }); - - it("throws an error if the index is out of bounds", async () => { - const [, observation] = await getGraphLoadedDataset(); - expect(() => - graphOf(observation.subject as PatientShape, "name", 10), - ).toThrowError(`Index 10 does not exist.`); - }); }); describe("write method", () => { @@ -1477,27 +1468,31 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const [, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name?.push("default"); + patient.name?.add("default"); const end1 = write(doc1).using(patient); - patient.name?.push("1"); + patient.name?.add("1"); const end2 = write(doc2).using(patient); - patient.name?.push("2"); + patient.name?.add("2"); const end3 = write(doc3).using(patient); - patient.name?.push("3"); + patient.name?.add("3"); end3(); - patient.name?.push("2 again"); + patient.name?.add("2 again"); end2(); - patient.name?.push("1 again"); + patient.name?.add("1 again"); end1(); - patient.name?.push("default again"); - - expect(graphOf(patient, "name", 0)[0].value).toBe(defaultGraph().value); - expect(graphOf(patient, "name", 1)[0].value).toBe(doc1.value); - expect(graphOf(patient, "name", 2)[0].value).toBe(doc2.value); - expect(graphOf(patient, "name", 3)[0].value).toBe(doc3.value); - expect(graphOf(patient, "name", 4)[0].value).toBe(doc2.value); - expect(graphOf(patient, "name", 5)[0].value).toBe(doc1.value); - expect(graphOf(patient, "name", 6)[0].value).toBe(defaultGraph().value); + patient.name?.add("default again"); + + expect(graphOf(patient, "name", "default")[0].value).toBe( + defaultGraph().value, + ); + expect(graphOf(patient, "name", "1")[0].value).toBe(doc1.value); + expect(graphOf(patient, "name", "2")[0].value).toBe(doc2.value); + expect(graphOf(patient, "name", "3")[0].value).toBe(doc3.value); + expect(graphOf(patient, "name", "4")[0].value).toBe(doc2.value); + expect(graphOf(patient, "name", "5")[0].value).toBe(doc1.value); + expect(graphOf(patient, "name", "default again")[0].value).toBe( + defaultGraph().value, + ); }); it("copies the proxy and changes the write graphs without modifying the original", async () => { @@ -1505,11 +1500,13 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const [, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; - patient.name?.push("Default"); + patient.name?.add("Default"); const [patientOnDoc1] = write(doc1).usingCopy(patient); - patientOnDoc1.name?.push("Doc1"); - expect(graphOf(patient, "name", 0)[0].value).toBe(defaultGraph().value); - expect(graphOf(patient, "name", 1)[0].value).toBe(doc1.value); + patientOnDoc1.name?.add("Doc1"); + expect(graphOf(patient, "name", "Default")[0].value).toBe( + defaultGraph().value, + ); + expect(graphOf(patient, "name", "Doc1")[0].value).toBe(doc1.value); }); it("works with array proxies", async () => { @@ -1548,7 +1545,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { setLanguagePreferences("ru", "zh").using(observation, patient); expect(observation.langNotes).toBeUndefined(); - expect(patient.langName?.length).toBe(0); + expect(patient.langName?.size).toBe(0); setLanguagePreferences("@other", "fr").using(observation, patient); expect(observation.langNotes).not.toBe("Notes Sympas"); @@ -1556,7 +1553,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { setLanguagePreferences().using(observation, patient); expect(observation.langNotes).toBe(undefined); - expect(patient.langName?.length).toBe(0); + expect(patient.langName?.size).toBe(0); }); it("sets language strings based on the default language", async () => { @@ -1574,7 +1571,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { es: "Notas Geniales", }); const patient = observation.subject as PatientShape; - patient.langName?.push("Luc"); + patient.langName?.add("Luc"); expect(languagesOf(patient, "langName").fr?.has("Jean")).toBe(true); expect(languagesOf(patient, "langName").fr?.has("Luc")).toBe(true); expect(languagesOf(patient, "langName")["@none"]?.has("Jon")).toBe(true); From e1a277043ba1a22bd9f9d697c59cfd426aacdb04 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Fri, 21 Feb 2025 14:59:24 -0500 Subject: [PATCH 15/32] Fix more tests --- .../src/setProxy/SetProxy.ts | 4 +- .../src/setProxy/ldSet/BasicLdSet.ts | 12 ++- .../src/setProxy/ldSet/LdSet.ts | 11 +++ .../test/jsonldDatasetProxy.test.ts | 76 +++++++++++++------ 4 files changed, 75 insertions(+), 28 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts index f45e6a8..45e3a32 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts @@ -32,9 +32,11 @@ export abstract class SetProxy< T extends NonNullable = NonNullable, > extends BasicLdSet { protected quadMatch: QuadMatch; + protected context: ProxyContext; constructor(context: ProxyContext, quadMatch: QuadMatch) { - super(context); + super(); + this.context = context; this.quadMatch = quadMatch; } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index c3fcf80..2d77fe1 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -1,5 +1,4 @@ import type { BlankNode, NamedNode } from "@rdfjs/types"; -import type { ProxyContext } from "../../ProxyContext"; import { _getUnderlyingNode } from "../../types"; import type { RawValue } from "../../util/RawObject"; import type { LdSet } from "./LdSet"; @@ -10,7 +9,6 @@ export class BasicLdSet = NonNullable> extends Set implements LdSet { - protected context: ProxyContext; private hashMap = new Map(); constructor(values?: Iterable | null) { @@ -163,6 +161,16 @@ export class BasicLdSet = NonNullable> return accumulator; } + toArray(): T[] { + const arr: T[] = []; + this.forEach((value) => arr.push(value)); + return arr; + } + + toJSON(): T[] { + return this.toArray(); + } + /** * =========================================================================== * Set Methods diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts index b71c22d..f0be486 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/LdSet.ts @@ -1,4 +1,5 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ + /** * An abract representation for a set of Linked Data Objects */ @@ -142,6 +143,16 @@ export interface LdSet extends Set { initialValue: U, ): U; + /** + * Converts the current LdSet to an array. + */ + toArray(): T[]; + + /** + * Converts to JSON + */ + toJSON(): T[]; + /** * =========================================================================== * EXTENDED SET METHODS diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index 8afd6db..a39aa19 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -13,6 +13,7 @@ import { _proxyContext, _writeGraphs, set, + SetProxy, } from "../src"; import type { ObservationShape, PatientShape } from "./patientExampleData"; import { @@ -207,7 +208,9 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("retrieves a nested primitive with a blank node", async () => { const [, observation] = await getLoadedDatasetWithBlankNodes(); - expect(observation?.subject?.roommate?.[0].age).toBe(34); + expect(observation?.subject?.roommate?.map((obj) => obj.age)).toContain( + 34, + ); }); it("retreives a @type value as rdf:type", async () => { @@ -313,9 +316,12 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("can traverse a circular graph", async () => { const [, observation] = await getLoadedDataset(); - expect(observation.subject?.roommate?.[0].roommate?.[0]?.name?.[0]).toBe( - "Garrett", - ); + expect( + observation.subject?.roommate + ?.toArray()[0] + .roommate?.toArray()[0] + ?.name?.toArray()[0], + ).toBe("Garrett"); }); it("simulates getter object properties", async () => { @@ -324,17 +330,27 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(obj["@id"]).toEqual("http://example.com/Patient1"); expect(obj.type).toEqual({ "@id": "Patient" }); - expect(obj.name).toEqual(["Garrett", "Bobby", "Ferguson"]); + expect(obj.name).toContain("Garrett"); + expect(obj.name).toContain("Bobby"); + expect(obj.name).toContain("Ferguson"); expect(obj.birthdate).toEqual("1986-01-01"); expect(obj.age).toEqual(35); expect(obj.isHappy).toEqual(true); const entries = Object.entries(obj); - expect(entries[0]).toEqual(["@id", "http://example.com/Patient1"]); - expect(entries[1]).toEqual(["type", { "@id": "Patient" }]); - expect(entries[2]).toEqual(["name", ["Garrett", "Bobby", "Ferguson"]]); - expect(entries[3]).toEqual(["birthdate", "1986-01-01"]); - expect(entries[4]).toEqual(["age", 35]); - expect(entries[5]).toEqual(["isHappy", true]); + expect(entries[0][0]).toBe("@id"); + expect(entries[0][1]).toBe("http://example.com/Patient1"); + expect(entries[1][0]).toBe("type"); + expect(entries[1][1]).toEqual({ "@id": "Patient" }); + expect(entries[2][0]).toBe("name"); + expect(entries[2][1]).toContain("Garrett"); + expect(entries[2][1]).toContain("Bobby"); + expect(entries[2][1]).toContain("Ferguson"); + expect(entries[3][0]).toBe("birthdate"); + expect(entries[3][1]).toBe("1986-01-01"); + expect(entries[4][0]).toBe("age"); + expect(entries[4][1]).toBe(35); + expect(entries[5][0]).toBe("isHappy"); + expect(entries[5][1]).toBe(true); expect(entries[6][0]).toEqual("roommate"); expect(Object.keys(obj)).toEqual([ "@id", @@ -348,7 +364,9 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const values = Object.values(obj); expect(values[0]).toEqual("http://example.com/Patient1"); expect(values[1]).toEqual({ "@id": "Patient" }); - expect(values[2]).toEqual(["Garrett", "Bobby", "Ferguson"]); + expect(values[2]).toContain("Garrett"); + expect(values[2]).toContain("Bobby"); + expect(values[2]).toContain("Ferguson"); expect(values[3]).toEqual("1986-01-01"); expect(values[4]).toEqual(35); expect(values[5]).toEqual(true); @@ -356,7 +374,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("handles stringification of a non circular object", async () => { const [, observation] = await getLoadedDataset(); - const obj = observation.subject?.roommate?.[1] as PatientShape; + const obj = observation.subject!.roommate!.toArray()[1]; expect(obj.toString()).toBe("[object Object]"); expect(JSON.stringify(obj)).toBe( `{"@id":"http://example.com/Patient3","type":{"@id":"Patient"},"name":["Amy"],"birthdate":"1988-01-01","age":33,"isHappy":true}`, @@ -365,8 +383,9 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Returns an array for required array fields even if no data is in the dataset", async () => { const [, observation] = await getLoadedDataset(); - const obj = observation.subject?.roommate?.[1] as PatientShape; - expect(obj.roommate).toEqual([]); + const obj = observation.subject!.roommate!.toArray()[1]; + expect(obj.roommate).toBeInstanceOf(SetProxy); + expect(obj.roommate?.size).toBe(0); }); it("updates when the dataset is updated", async () => { @@ -406,7 +425,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(observation[Symbol.toPrimitive]).toBe(undefined); }); - it("returns an array object if multiple triples exist, even if @container is not @set", async () => { + it("If a container is not a set, but multiple triples exist, it should still return only 1.", async () => { const dataset = await serializedToDataset(patientData); const fakePatientSContext: ContextDefinition = { name: { @@ -418,7 +437,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const patient = builder.fromSubject( namedNode("http://example.com/Patient1"), ); - expect(patient.name).toEqual(["Garrett", "Bobby", "Ferguson"]); + expect(patient.name).toBe("Garrett"); }); it("returns context when the @context key is called", async () => { @@ -428,8 +447,12 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("reads an array for collections, but a var for non collections", async () => { const [, bender, avatar] = await getScopedDataset(); - expect(avatar.element[0]["@id"]).toBe("http://example.com/Air"); - expect(avatar.element[1]["@id"]).toBe("http://example.com/Water"); + expect(avatar.element.map((obj) => obj["@id"])).toContain( + "http://example.com/Air", + ); + expect(avatar.element.map((obj) => obj["@id"])).toContain( + "http://example.com/Water", + ); expect(bender.element["@id"]).toBe("http://example.com/Water"); }); }); @@ -498,13 +521,16 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("sets a retrieved blank node object", async () => { const [, observation] = await getTinyLoadedDatasetWithBlankNodes(); - const patient2 = observation.subject?.roommate?.[0] as PatientShape; + const patient2 = observation.subject?.roommate?.toArray()[0]; observation.subject = patient2; - expect(observation.subject.name).toEqual(["Rob"]); - expect(observation.subject.roommate?.[0]?.name).toEqual(["Garrett"]); - expect(observation.subject.roommate?.[0]?.roommate?.[0].name).toEqual([ - "Rob", - ]); + expect(observation.subject?.name).toContain("Rob"); + expect(observation.subject?.roommate?.toArray()[0].name).toContain( + "Garrett", + ); + expect( + observation.subject?.roommate?.toArray()[0]?.roommate?.toArray()[0] + .name, + ).toContain("Rob"); }); it("only removes the connection when a value is set to undefined", async () => { From 94dae83c4a57919da428471507bc100470d2690a Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Fri, 21 Feb 2025 15:18:12 -0500 Subject: [PATCH 16/32] Will not create a set when not described by the context --- .../jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts | 4 +--- .../jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts | 6 +++++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts index 5244e30..ecf23ec 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/getValueForKey.ts @@ -52,13 +52,11 @@ export function getValueForKey( } if (objectDataset.size === 0) { return undefined; - } else if (objectDataset.size === 1) { + } else { const thing = nodeToJsonldRepresentation( objectDataset.toArray()[0].object, proxyContext, ); return thing; - } else { - return proxyContext.createSetProxy([subject, predicate, null, null]); } } diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index a39aa19..f60e79e 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -544,9 +544,13 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Creates a blank node if the id is blank during set", async () => { const [dataset, observation] = await getEmptyObservationDataset(); observation.type = { "@id": "Observation" }; + console.log("1"); observation.subject = { type: { "@id": "Patient" }, name: set("Joe") }; + console.log("2"); expect(observation.subject?.["@id"]).toBeUndefined(); - expect(observation.subject.name).toEqual(["Joe"]); + console.log("here"); + expect(observation.subject.name).toContain("Joe"); + console.log("there"); expect( dataset .match( From 503e69687a87c8cc8b9dc0bd8cf1f8a1420b5981 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 24 Feb 2025 13:32:00 -0500 Subject: [PATCH 17/32] Completed tests other than language --- packages/jsonld-dataset-proxy/package.json | 2 +- packages/jsonld-dataset-proxy/src/graphOf.ts | 8 +- .../src/setProxy/ObjectSetProxy.ts | 22 ++ .../src/setProxy/SetProxy.ts | 42 ++-- .../src/setProxy/SubjectSetProxy.ts | 54 +++- .../src/setProxy/WildcardObjectSetProxy.ts | 39 ++- .../src/setProxy/WildcardSubjectSetProxy.ts | 11 +- .../src/setProxy/ldSet/BasicLdSet.ts | 16 +- .../src/util/addObjectToDataset.ts | 3 +- .../test/jsonldDatasetProxy.test.ts | 235 +++++++----------- 10 files changed, 255 insertions(+), 177 deletions(-) diff --git a/packages/jsonld-dataset-proxy/package.json b/packages/jsonld-dataset-proxy/package.json index 65e4029..d4e0a49 100644 --- a/packages/jsonld-dataset-proxy/package.json +++ b/packages/jsonld-dataset-proxy/package.json @@ -6,7 +6,7 @@ "scripts": { "build": "tsc --project tsconfig.build.json", "build:watch": "tsc-watch", - "test": "jest --coverage", + "test": "NODE_NO_WARNINGS=1 jest --coverage", "prepublishOnly": "npm run test && npm run build", "start": "ts-node ./example/example.ts", "start:lang": "ts-node ./example/languageExample.ts", diff --git a/packages/jsonld-dataset-proxy/src/graphOf.ts b/packages/jsonld-dataset-proxy/src/graphOf.ts index 22de920..806a3dd 100644 --- a/packages/jsonld-dataset-proxy/src/graphOf.ts +++ b/packages/jsonld-dataset-proxy/src/graphOf.ts @@ -9,6 +9,7 @@ import { _proxyContext, } from "./types"; import type { LdSet } from "./setProxy/ldSet/LdSet"; +import { getNodeFromRawValue } from "./util/getNodeFromRaw"; /** * Returns the graph for which a defined triple is a member @@ -36,8 +37,11 @@ export function graphOf( if (object == null) { objectNode = null; } else { - const objectProxy = getSubjectProxyFromObject(object); - objectNode = objectProxy[_getUnderlyingNode]; + const datatype = proxyContext.contextUtil.getDataType( + predicate as string, + proxyContext.getRdfType(subjectNode), + ); + objectNode = getNodeFromRawValue(object, proxyContext, datatype) ?? null; } const quads = subjectProxy[_getUnderlyingDataset].match( subjectNode, diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts index 456fd3f..9af9f4b 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts @@ -38,4 +38,26 @@ export class ObjectSetProxy< ); return this; } + + /** + * Clears the set of all values + */ + clear(): void { + for (const value of this) { + this.delete(value); + } + } + + /** + * Deletes an item for the set + * @param value the item to delete + * @returns true if the item was present before deletion + */ + delete(value: T): boolean { + const { dataset } = this.context; + const { subject, predicate, object, graph } = this.getSPOG(value); + const didDelete = dataset.match(subject, predicate, object, graph).size > 0; + dataset.deleteMatches(subject, predicate, object, graph); + return didDelete; + } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts index 45e3a32..4eb4950 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts @@ -43,10 +43,11 @@ export abstract class SetProxy< /** * Gets the subject, predicate and object for this set */ - protected abstract getSPO(value?: T): { + protected abstract getSPOG(value?: T): { subject?: SubjectNode; predicate?: PredicateNode; object?: ObjectNode; + graph?: GraphNode; }; protected abstract getNodeOfFocus(quad: Quad): SubjectNode | ObjectNode; @@ -62,29 +63,38 @@ export abstract class SetProxy< return this; } + /** + * The clear method on an abstract set does nothing. + * @deprecated You cannot clear data from an abstract set as it is simply a proxy to an underlying dataset + */ clear(): void { - for (const value of this) { - this.delete(value); - } + console.warn( + 'You\'ve attempted to call "clear" on an abstract set. You cannot clear data from an abstract set as it is simply a proxy to an underlying dataset', + ); + return; } - delete(value: T): boolean { - const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(value); - dataset.deleteMatches(subject, predicate, object); - return true; + /** + * The delete method on an abstract set does nothing. + * @deprecated You cannot delete data from an abstract set as it is simply a proxy to an underlying dataset + */ + delete(_value: T): boolean { + console.warn( + 'You\'ve attempted to call "clear" on an abstract set. You cannot delete data from an abstract set as it is simply a proxy to an underlying dataset', + ); + return false; } has(value: T): boolean { const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(value); - return dataset.match(subject, predicate, object).size > 0; + const { subject, predicate, object, graph } = this.getSPOG(value); + return dataset.match(subject, predicate, object, graph).size > 0; } get size() { const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(); - return dataset.match(subject, predicate, object).size; + const { subject, predicate, object, graph } = this.getSPOG(); + return dataset.match(subject, predicate, object, graph).size; } entries(): IterableIterator<[T, T]> { @@ -105,8 +115,8 @@ export abstract class SetProxy< [Symbol.iterator](): IterableIterator { const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(); - const quads = dataset.match(subject, predicate, object); + const { subject, predicate, object, graph } = this.getSPOG(); + const quads = dataset.match(subject, predicate, object, graph); const collection: T[] = quads.toArray().map((quad) => { const quadSubject = this.getNodeOfFocus(quad); return nodeToJsonldRepresentation(quadSubject, this.context) as T; @@ -138,4 +148,6 @@ export abstract class SetProxy< get [_writeGraphs](): GraphNode[] { return this.context.writeGraphs; } + + abstract get [_isSubjectOriented](): boolean; } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts index f867c5f..9e18035 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts @@ -1,10 +1,21 @@ -import type { GraphNode, ObjectNode, PredicateNode } from "@ldo/rdf-utils"; +import { + type GraphNode, + type ObjectNode, + type PredicateNode, +} from "@ldo/rdf-utils"; import type { RawObject } from "../util/RawObject"; import { addObjectToDataset } from "../util/addObjectToDataset"; import type { ProxyContext } from "../ProxyContext"; import { WildcardSubjectSetProxy } from "./WildcardSubjectSetProxy"; import { _getUnderlyingNode } from "../types"; -import { quad } from "@rdfjs/data-model"; +import { defaultGraph, quad } from "@rdfjs/data-model"; +import { + createTransactionDatasetFactory, + TransactionDataset, +} from "@ldo/subscribable-dataset"; +import { createDatasetFactory } from "@ldo/dataset"; +import { getNodeFromRawObject } from "../util/getNodeFromRaw"; +import { nodeToString } from "../util/NodeSet"; export type SubjectSetProxyQuadMatch = [ undefined | null, @@ -27,6 +38,45 @@ export class SubjectSetProxy< * Appends a new element with a specified value to the end of the Set. */ add(value: T): this { + // Undefined is fine no matter what + if (value === undefined) { + return this; + } + if (typeof value !== "object") { + throw new Error( + `Cannot add a literal "${value}"(${typeof value}) to a subject-oriented collection.`, + ); + } + // Create a test dataset to see if the inputted data is valid + const testDataset = new TransactionDataset( + this.context.dataset, + createDatasetFactory(), + createTransactionDatasetFactory(), + ); + addObjectToDataset( + value, + false, + this.context.duplicate({ + writeGraphs: [defaultGraph()], + }), + ); + const isValidAddition = + testDataset.match( + getNodeFromRawObject(value, this.context.contextUtil), + this.quadMatch[1], + this.quadMatch[2], + ).size !== 0; + if (!isValidAddition) { + throw new Error( + `Cannot add value to collection. This must contain a quad that matches (${nodeToString( + this.quadMatch[0], + )}, ${nodeToString(this.quadMatch[1])}, ${nodeToString( + this.quadMatch[2], + )}, ${nodeToString(this.quadMatch[3])})`, + ); + } + + // Add the object if everything's okay const added = addObjectToDataset(value as RawObject, false, this.context); const addedNode = added[_getUnderlyingNode]; this.context.writeGraphs.forEach((graph) => { diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts index e30493f..beb23ab 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts @@ -9,6 +9,7 @@ import type { RawValue } from "../util/RawObject"; import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { getNodeFromRawValue } from "../util/getNodeFromRaw"; +import { _isSubjectOriented } from "../types"; export type WildcardObjectSetProxyQuadMatch = [ SubjectNode | undefined | null, @@ -35,14 +36,16 @@ export class WildcardObjectSetProxy< this.quadMatch = quadMatch; } - protected getSPO(value?: T | undefined): { + protected getSPOG(value?: T | undefined): { subject?: SubjectNode; predicate?: PredicateNode; object?: ObjectNode; + graph?: GraphNode; } { // Get the RDF Node that represents the value, skip is no value const subject = this.quadMatch[0] ?? undefined; const predicate = this.quadMatch[1] ?? undefined; + const graph = this.quadMatch[3] ?? undefined; if (value) { // Get datatype if applicable let datatype: string | undefined = undefined; @@ -56,6 +59,7 @@ export class WildcardObjectSetProxy< subject, predicate, object: valueNode, + graph, }; } // SPO for no value @@ -63,6 +67,7 @@ export class WildcardObjectSetProxy< subject, predicate, object: undefined, + graph, }; } @@ -73,11 +78,17 @@ export class WildcardObjectSetProxy< private manuallyMatchWithUnknownObjectNode( subject: SubjectNode | undefined, predicate: PredicateNode | undefined, + graph: GraphNode | undefined, value: T, ): Dataset { // If there's not an object, that means that we don't know the object node // and need to find it manually. - const matchingQuads = this.context.dataset.match(subject, predicate, null); + const matchingQuads = this.context.dataset.match( + subject, + predicate, + null, + graph, + ); return matchingQuads.filter( (quad) => quad.object.termType === "Literal" && quad.object.value === value, @@ -86,32 +97,42 @@ export class WildcardObjectSetProxy< delete(value: T): boolean { const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(value); + const { subject, predicate, object, graph } = this.getSPOG(value); if (!object) { const matchedQuads = this.manuallyMatchWithUnknownObjectNode( subject, predicate, + graph, value, ); matchedQuads.forEach((quad) => dataset.delete(quad)); return matchedQuads.size > 0; } else { - const willDelete = dataset.match(subject, predicate, object).size > 0; - dataset.deleteMatches(subject, predicate, object); + const willDelete = + dataset.match(subject, predicate, object, graph).size > 0; + dataset.deleteMatches(subject, predicate, object, graph); return willDelete; } } has(value: T): boolean { const { dataset } = this.context; - const { subject, predicate, object } = this.getSPO(value); + const { subject, predicate, object, graph } = this.getSPOG(value); if (!object) { return ( - this.manuallyMatchWithUnknownObjectNode(subject, predicate, value) - .size > 0 + this.manuallyMatchWithUnknownObjectNode( + subject, + predicate, + graph, + value, + ).size > 0 ); } else { - return dataset.match(subject, predicate, object).size > 0; + return dataset.match(subject, predicate, object, graph).size > 0; } } + + get [_isSubjectOriented](): false { + return false; + } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts index 415d794..43a97a2 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts @@ -9,6 +9,7 @@ import type { RawObject } from "../util/RawObject"; import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { getNodeFromRawObject } from "../util/getNodeFromRaw"; +import { _isSubjectOriented } from "../types"; export type WildcardSubjectSetProxyQuadMatch = [ undefined | null, @@ -33,20 +34,23 @@ export class WildcardSubjectSetProxy extends SetProxy { this.quadMatch = quadMatch; } - protected getSPO(value?: T | undefined): { + protected getSPOG(value?: T | undefined): { subject?: SubjectNode; predicate?: PredicateNode; object?: ObjectNode; + graph?: GraphNode; } { // Get the RDF Node that represents the value, skip is no value const predicate = this.quadMatch[1] ?? undefined; const object = this.quadMatch[2] ?? undefined; + const graph = this.quadMatch[3] ?? undefined; if (value) { const valueNode = getNodeFromRawObject(value, this.context.contextUtil); return { subject: valueNode, predicate, object, + graph, }; } // SPO for no value @@ -54,10 +58,15 @@ export class WildcardSubjectSetProxy extends SetProxy { subject: undefined, predicate, object, + graph, }; } protected getNodeOfFocus(quad: Quad): SubjectNode { return quad.subject as SubjectNode; } + + get [_isSubjectOriented](): true { + return true; + } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index 2d77fe1..c3ef348 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -9,20 +9,28 @@ export class BasicLdSet = NonNullable> extends Set implements LdSet { - private hashMap = new Map(); + private hashMap: Map; constructor(values?: Iterable | null) { - super(values); + super(); + this.hashMap = new Map(); + if (values) { + for (const value of values) { + this.add(value); + } + } } - private hashFn(value: T) { + private hashFn(value: T): string { if (typeof value !== "object") return value.toString(); if (value[_getUnderlyingNode]) { return (value[_getUnderlyingNode] as NamedNode | BlankNode).value; } else if (!value["@id"]) { return blankNode().value; - } else { + } else if (typeof value["@id"] === "string") { return value["@id"]; + } else { + return value["@id"].value; } } diff --git a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts index 96040ed..37a876c 100644 --- a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts +++ b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts @@ -12,6 +12,7 @@ import { languageDeleteMatch, languageKeyToLiteralLanguage, } from "../language/languageUtils"; +import { BasicLdSet } from "../setProxy/ldSet/BasicLdSet"; export function addRawValueToDatasetRecursive( subject: NamedNode | BlankNode, @@ -110,7 +111,7 @@ export function addRawObjectToDatasetRecursive( dataset.deleteMatches(subject, predicate); } } - if (Array.isArray(value)) { + if (value instanceof BasicLdSet) { value.forEach((valueItem) => { addRawValueToDatasetRecursive( subject, diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index f60e79e..4168682 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -37,6 +37,8 @@ import { type Bender, } from "./scopedExampleData"; +global.console.warn = () => {}; + const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { async function getLoadedDataset(): Promise< [Dataset, ObservationShape, JsonldDatasetProxyBuilder] @@ -544,13 +546,9 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Creates a blank node if the id is blank during set", async () => { const [dataset, observation] = await getEmptyObservationDataset(); observation.type = { "@id": "Observation" }; - console.log("1"); observation.subject = { type: { "@id": "Patient" }, name: set("Joe") }; - console.log("2"); expect(observation.subject?.["@id"]).toBeUndefined(); - console.log("here"); expect(observation.subject.name).toContain("Joe"); - console.log("there"); expect( dataset .match( @@ -707,6 +705,10 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); + // TODO changes to blank node when set undefined on ID + + // TODO deletes the object if delete on an ID + it("Removes all adjoining triples when garbage collection is indicated via the delete operator on an object", async () => { const [dataset, observation] = await getTinyLoadedDataset(); delete observation.subject; @@ -723,25 +725,33 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - it("Removes all adjoining triples when garbage collection is indicated via the delete operator on an array", async () => { + it("Removes connecting triples when the delete method is called on a set", async () => { const [dataset, observation] = await getTinyLoadedDataset(); - delete observation.subject?.roommate?.[0]; + const firstRoommate = observation.subject!.roommate!.toArray()[0]; + observation.subject!.roommate!.delete(firstRoommate); expect(dataset.toString()).toBe( - ' .\n .\n .\n "Garrett" .\n', + ' .\n .\n .\n "Garrett" .\n .\n "Rob" .\n .\n', ); }); - it("Removes all adjoining triples when garbage collection is indicated via the delete operator on an array with blank nodes", async () => { + it("Removes connecting triples when the delete method is called on a set with blank nodes", async () => { const [dataset, observation] = await getTinyLoadedDatasetWithBlankNodes(); - const deletedBlankNode = - observation.subject?.roommate?.[0][_getUnderlyingNode]; - delete observation.subject?.roommate?.[0]; - expect(dataset.match(deletedBlankNode).size).toBe(0); + const originalDatasetSize = dataset.size; + const roommate1 = observation.subject!.roommate!.toArray()[0]; + observation.subject!.roommate!.delete(roommate1); + expect(dataset.size).toBe(originalDatasetSize - 1); + expect( + dataset.match( + observation.subject![_getUnderlyingNode], + null, + roommate1[_getUnderlyingNode], + ).size, + ).toBe(0); }); - it("Removes a literal in an array when using the delete operator", async () => { + it("Removes a literal in an array when using the delete method", async () => { const [dataset, observation] = await getTinyLoadedDataset(); - delete observation.subject?.name?.[0]; + observation.subject!.name!.delete("Garrett"); expect(dataset.toString()).toBe( ' .\n .\n .\n .\n .\n "Rob" .\n .\n', ); @@ -826,10 +836,13 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { literal("Tow"), ), ); - expect(patient.name).toEqual(["Joe", "Blow", "Tow"]); + expect(patient.name.size).toBe(3); + expect(patient.name).toContain("Joe"); + expect(patient.name).toContain("Blow"); + expect(patient.name).toContain("Tow"); }); - it("Removes elements from the array even if they were modified by the datastore", async () => { + it("Removes elements from the set even if they were modified by the datastore", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; patient.name = set("Joe", "Blow"); @@ -840,7 +853,8 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { literal("Blow"), ), ); - expect(patient.name).toEqual(["Joe"]); + expect(patient.name.size).toBe(1); + expect(patient.name).toContain("Joe"); }); it("Removes and adds from the array even if they were modified by the datastore", async () => { @@ -861,14 +875,19 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { literal("Tow"), ), ); - expect(patient.name).toEqual(["Joe", "Tow"]); + expect(patient.name.size).toBe(2); + expect(patient.name).toContain("Joe"); + expect(patient.name).toContain("Tow"); }); it("Prevents duplicates from being added to the array", async () => { const [, patient] = await getArrayLoadedDataset(); const arr = patient.name!; arr.add("Garrett"); - expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); + expect(arr.size).toBe(3); + expect(arr).toContain("Garrett"); + expect(arr).toContain("Bobby"); + expect(arr).toContain("Ferguson"); }); // TODO: Check if can delete @@ -886,8 +905,12 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { "@id": "http://example.com/Patient3", type: { "@id": "Patient" }, }); - expect(roommates.size).toBe(1); - expect(roommates.map((obj) => obj.name)).toContain("Amy"); + expect(roommates.size).toBe(2); + const roommateNames = roommates.reduce((s, obj) => { + obj.name?.forEach((n) => s.add(n)); + return s; + }, set()); + expect(roommateNames).toContain("Amy"); }); // TODO: check @@ -1143,18 +1166,8 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const match = roommateArr[_getUnderlyingMatch]; expect(match[0].value).toBe("http://example.com/Patient1"); expect(match[1].value).toBe("http://hl7.org/fhir/roommate"); - // TODO: Alt tests - // expect(roommateArr[_getNodeAtIndex](0).value).toBe( - // "http://example.com/Patient2", - // ); - // expect(roommateArr[_getNodeAtIndex](10)).toBe(undefined); - // expect(observation.subject.name[_getNodeAtIndex](0).value).toBe( - // "Garrett", - // ); - const underlyingArrayTarget = roommateArr[_getUnderlyingMatch]; - expect(underlyingArrayTarget[0].value).toBe( - "http://example.com/Patient2", - ); + expect(match[2]).toBe(null); + expect(match[3]).toBe(null); }); }); @@ -1172,9 +1185,9 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { }); it("creates a list of subjects that match a certain pattern", async () => { - expect(patients[0].name?.[0]).toBe("Garrett"); - expect(patients[1].name?.[0]).toBe("Rob"); - expect(patients[2].name?.[0]).toBe("Amy"); + expect(patients.toArray()[0].name?.toArray()[0]).toBe("Garrett"); + expect(patients.toArray()[1].name?.toArray()[0]).toBe("Rob"); + expect(patients.toArray()[2].name?.toArray()[0]).toBe("Amy"); }); it("Successfully adds a node to the list", async () => { @@ -1195,7 +1208,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { return quad.subject.value === "http://example.com/Patient4"; }), ).toBe(true); - expect(patients[3].name?.[0]).toBe("Dippy"); + expect(patients.toArray()[3].name?.toArray()[0]).toBe("Dippy"); }); it("will read a new object if something has been added to the dataset after object creation", async () => { @@ -1225,15 +1238,14 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { return quad.subject.value === "http://example.com/Patient4"; }), ).toBe(true); - expect(patients[3].name?.[0]).toBe("Dippy"); + expect(patients.toArray()[3].name?.toArray()[0]).toBe("Dippy"); }); it("errors if an object is added without the correct parameters", async () => { expect(() => - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - patients.push({ + patients.add({ "@id": "http://example.com/Patient4", + // @ts-expect-error This object is purposely wrong name: ["Dippy"], age: 2, }), @@ -1244,66 +1256,15 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("errors if a literal is added to the collection", async () => { // @ts-expect-error Purposely pushing an incorrect value to trigger an error - expect(() => patients.push("some string")).toThrowError( + expect(() => patients.add("some string")).toThrowError( `Cannot add a literal "some string"(string) to a subject-oriented collection.`, ); }); - it("Removes all an object and replaces in upon set", async () => { - patients[0] = { - "@id": "http://example.com/Patient4", - type: { "@id": "Patient" }, - name: ["Dippy"], - age: 2, - }; - - expect(dataset.match(namedNode("http://example.com/Patient1")).size).toBe( - 0, - ); - expect(patients[0].name?.[0]).toBe("Dippy"); - }); - - it("Removes an object and replaces it upon splice", async () => { - // TODO adjust test - // patients.splice( - // 1, - // 1, - // { - // "@id": "http://example.com/Patient4", - // type: { "@id": "Patient" }, - // name: ["Dippy"], - // age: 2, - // }, - // { - // "@id": "http://example.com/Patient5", - // type: { "@id": "Patient" }, - // name: ["Licky"], - // age: 3, - // }, - // ); - // expect(dataset.match(namedNode("http://example.com/Patient2")).size).toBe( - // 0, - // ); - // expect(patients[1].name?.[0]).toBe("Dippy"); - // expect(patients[2].name?.[0]).toBe("Licky"); - }); - - it("Removes an object completely when assigning it to undefined", async () => { - // TODO adjust - // patients[0] = undefined; - // expect(dataset.match(namedNode("http://example.com/Patient1")).size).toBe( - // 0, - // ); - // expect(patients[0].name?.[0]).toBe("Rob"); - }); - - it("Removes an object completely when using the delete parameter", async () => { - delete patients[0]; - - expect(dataset.match(namedNode("http://example.com/Patient1")).size).toBe( - 0, - ); - expect(patients[0].name?.[0]).toBe("Rob"); + it("Removes an object completely when using the delete method", async () => { + const firstPatient = patients.toArray()[0]; + patients.delete(firstPatient); + expect(patients.has(firstPatient)).toBe(true); }); it("creates a collection that matches only collections in a certain graph", async () => { @@ -1323,9 +1284,11 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { describe("matchObject", () => { let patients: LdSet; let builder: JsonldDatasetProxyBuilder; + let dataset: Dataset; beforeEach(async () => { - const [, , receivedBuilder] = await getLoadedDataset(); + const [recievedDataset, , receivedBuilder] = await getLoadedDataset(); + dataset = recievedDataset; builder = receivedBuilder; patients = builder.matchObject( null, @@ -1335,20 +1298,18 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { }); it("create a collection that matches the null, predicate, null pattern", async () => { - expect(patients[0].name?.[0]).toBe("Garrett"); - expect(patients[1].name?.[0]).toBe("Amy"); - expect(patients[2].name?.[0]).toBe("Rob"); + expect(patients.toArray()[0].name?.toArray()[0]).toBe("Garrett"); + expect(patients.toArray()[1].name?.toArray()[0]).toBe("Amy"); + expect(patients.toArray()[2].name?.toArray()[0]).toBe("Rob"); }); it("cannot write to a collection that matches the null, predicate, null pattern", () => { - expect( - () => - (patients[1] = { - "@id": "http://example.com/Patient4", - type: { "@id": "Patient" }, - }), - ).toThrow( - "A collection that does not specify a match for both a subject or predicate cannot be modified directly.", + patients.add({ + "@id": "http://example.com/Patient4", + type: { "@id": "Patient" }, + }); + expect(dataset.match(namedNode("http://example.com/Patient4")).size).toBe( + 0, ); }); @@ -1360,11 +1321,11 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { null, ); expect(hodgePodge.size).toBe(5); - expect(hodgePodge[0]["@id"]).toBe("Patient"); - expect(hodgePodge[1]).toBe("Amy"); - expect(hodgePodge[2]).toBe("1988-01-01"); - expect(hodgePodge[3]).toBe(33); - expect(hodgePodge[4]).toBe(true); + expect(hodgePodge.toArray()[0]["@id"]).toBe("Patient"); + expect(hodgePodge.toArray()[1]).toBe("Amy"); + expect(hodgePodge.toArray()[2]).toBe("1988-01-01"); + expect(hodgePodge.toArray()[3]).toBe(33); + expect(hodgePodge.toArray()[4]).toBe(true); }); }); @@ -1381,12 +1342,12 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { name: set("Ethical", "Bug"), }), }); - expect(patient.name?.[0]).toBe("Jack"); - expect(patient.name?.[1]).toBe("Horner"); + expect(patient.name).toContain("Jack"); + expect(patient.name).toContain("Horner"); expect(patient.birthdate).toBe("1725/11/03"); expect(patient.age).toBe(298); - expect(patient.roommate?.[0].name?.[0]).toBe("Ethical"); - expect(patient.roommate?.[0].name?.[1]).toBe("Bug"); + expect(patient.roommate?.toArray()[0].name).toContain("Ethical"); + expect(patient.roommate?.toArray()[0].name).toContain("Bug"); }); it("initializes a patient using the fromJSON method with a named node", async () => { @@ -1403,12 +1364,12 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { }), }); expect(patient["@id"]).toBe("http://example.com/Patient13"); - expect(patient.name?.[0]).toBe("Jack"); - expect(patient.name?.[1]).toBe("Horner"); + expect(patient.name).toContain("Jack"); + expect(patient.name).toContain("Horner"); expect(patient.birthdate).toBe("1725/11/03"); expect(patient.age).toBe(298); - expect(patient.roommate?.[0].name?.[0]).toBe("Ethical"); - expect(patient.roommate?.[0].name?.[1]).toBe("Bug"); + expect(patient.roommate?.toArray()[0].name).toContain("Ethical"); + expect(patient.roommate?.toArray()[0].name).toContain("Bug"); }); }); @@ -1443,7 +1404,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("detects the graph of an array value", async () => { const [, observation] = await getGraphLoadedDataset(); - const patient1 = observation.subject as PatientShape; + const patient1 = observation.subject!; expect( graphOf(patient1, "name", "Garrett").map((n) => n.value), ).toContain("http://example.com/Patient1Doc"); @@ -1471,14 +1432,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { "http://example.com/SomeOtherDoc", ); }); - - it("throws an error if a number is provided as an object and the object is not an array", async () => { - const [, observation] = await getGraphLoadedDataset(); - // @ts-expect-error this should not be allowed - expect(() => graphOf(observation, "subject", 0)).toThrowError( - `Key "subject" of [object Object] is not an array.`, - ); - }); }); describe("write method", () => { @@ -1518,8 +1471,8 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(graphOf(patient, "name", "1")[0].value).toBe(doc1.value); expect(graphOf(patient, "name", "2")[0].value).toBe(doc2.value); expect(graphOf(patient, "name", "3")[0].value).toBe(doc3.value); - expect(graphOf(patient, "name", "4")[0].value).toBe(doc2.value); - expect(graphOf(patient, "name", "5")[0].value).toBe(doc1.value); + expect(graphOf(patient, "name", "2 again")[0].value).toBe(doc2.value); + expect(graphOf(patient, "name", "1 again")[0].value).toBe(doc1.value); expect(graphOf(patient, "name", "default again")[0].value).toBe( defaultGraph().value, ); @@ -1539,18 +1492,16 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(graphOf(patient, "name", "Doc1")[0].value).toBe(doc1.value); }); - it("works with array proxies", async () => { + it("works with set proxies", async () => { const [, , builder] = await getTinyLoadedDataset(); const allRoommates = builder.matchObject( namedNode("http://example.com/Patient1"), namedNode("http://hl7.org/fhir/roommate"), ); - write(namedNode("http://example.com/SomeGraph")).using( - allRoommates, - allRoommates, - ); - allRoommates[0].age = 20; - expect(graphOf(allRoommates[0], "age")[0].value).toBe( + write(namedNode("http://example.com/SomeGraph")).using(allRoommates); + const firstRoommate = allRoommates.toArray()[0]; + firstRoommate.age = 20; + expect(graphOf(firstRoommate, "age")[0].value).toBe( "http://example.com/SomeGraph", ); }); @@ -1570,7 +1521,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { const patient = observation.subject as PatientShape; expect(observation.langNotes).toBe("Notes Sympas"); - expect(patient.langName?.[0]).toBe("Jean"); + expect(patient.langName?.toArray()[0]).toBe("Jean"); setLanguagePreferences("ru", "zh").using(observation, patient); @@ -1579,7 +1530,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { setLanguagePreferences("@other", "fr").using(observation, patient); expect(observation.langNotes).not.toBe("Notes Sympas"); - expect(patient.langName?.[0]).not.toBe("Jean"); + expect(patient.langName?.toArray()[0]).not.toBe("Jean"); setLanguagePreferences().using(observation, patient); expect(observation.langNotes).toBe(undefined); From 563a0976ad011f32fb626ce507dc2cc26dd7dd08 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 24 Feb 2025 13:57:58 -0500 Subject: [PATCH 18/32] Added language options to Sets --- .../jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts | 8 ++++++-- .../src/setProxy/WildcardObjectSetProxy.ts | 3 +++ .../src/setProxy/createNewSetProxy.ts | 3 +++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts index 9af9f4b..6b99135 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts @@ -16,8 +16,12 @@ export class ObjectSetProxy< > extends WildcardObjectSetProxy { protected quadMatch: ObjectSetProxyQuadMatch; - constructor(context: ProxyContext, quadMatch: ObjectSetProxyQuadMatch) { - super(context, quadMatch); + constructor( + context: ProxyContext, + quadMatch: ObjectSetProxyQuadMatch, + isLangSet?: boolean, + ) { + super(context, quadMatch, isLangSet); this.quadMatch = quadMatch; } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts index beb23ab..7e4034b 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts @@ -27,13 +27,16 @@ export class WildcardObjectSetProxy< T extends NonNullable, > extends SetProxy { protected quadMatch: WildcardObjectSetProxyQuadMatch; + protected isLangSet: boolean; constructor( context: ProxyContext, quadMatch: WildcardObjectSetProxyQuadMatch, + isLangSet?: boolean, ) { super(context, quadMatch); this.quadMatch = quadMatch; + this.isLangSet = isLangSet ?? false; } protected getSPOG(value?: T | undefined): { diff --git a/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts index 99c06b6..0a4c300 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/createNewSetProxy.ts @@ -15,17 +15,20 @@ export function createNewSetProxy>( quadMatch: QuadMatch, isSubjectOriented: boolean, proxyContext: ProxyContext, + isLangSet?: boolean, ): SetProxy { if (!isSubjectOriented) { if (quadMatch[0] && quadMatch[1]) { return new ObjectSetProxy( proxyContext, quadMatch as ObjectSetProxyQuadMatch, + isLangSet, ); } else { return new WildcardObjectSetProxy( proxyContext, quadMatch as WildcardObjectSetProxyQuadMatch, + isLangSet, ); } } else { From 2655acd8937e42ed8175187ad1131cebf1aa0b74 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 24 Feb 2025 14:42:29 -0500 Subject: [PATCH 19/32] All original tests working --- .../jsonld-dataset-proxy/src/ProxyContext.ts | 3 +- .../src/setProxy/ObjectSetProxy.ts | 7 +- .../src/setProxy/SetProxy.ts | 20 +--- .../src/setProxy/SubjectSetProxy.ts | 21 ++++ .../src/setProxy/WildcardObjectSetProxy.ts | 108 +++++------------- .../src/setProxy/WildcardSubjectSetProxy.ts | 24 +--- .../test/jsonldDatasetProxy.test.ts | 2 +- 7 files changed, 64 insertions(+), 121 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index 6d20e88..344c0d5 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -68,7 +68,7 @@ export class ProxyContext { public createSetProxy( quadMatch: QuadMatch, isSubjectOriented?: boolean, - _isLangStringSet?: boolean, + isLangStringSet?: boolean, ): SetProxy { const key = this.getSetKey(...quadMatch); if (!this.setMap.has(key)) { @@ -76,6 +76,7 @@ export class ProxyContext { quadMatch, isSubjectOriented ?? false, this, + isLangStringSet, ); this.setMap.set(key, proxy); } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts index 6b99135..5be1c4b 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ObjectSetProxy.ts @@ -59,9 +59,8 @@ export class ObjectSetProxy< */ delete(value: T): boolean { const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(value); - const didDelete = dataset.match(subject, predicate, object, graph).size > 0; - dataset.deleteMatches(subject, predicate, object, graph); - return didDelete; + const quads = this.getQuads(value); + quads.forEach((quad) => dataset.delete(quad)); + return quads.size > 0; } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts index 4eb4950..f161eb6 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SetProxy.ts @@ -6,7 +6,6 @@ import type { Dataset, Quad } from "@rdfjs/types"; import type { GraphNode, ObjectNode, - PredicateNode, QuadMatch, SubjectNode, } from "@ldo/rdf-utils"; @@ -43,12 +42,7 @@ export abstract class SetProxy< /** * Gets the subject, predicate and object for this set */ - protected abstract getSPOG(value?: T): { - subject?: SubjectNode; - predicate?: PredicateNode; - object?: ObjectNode; - graph?: GraphNode; - }; + protected abstract getQuads(value?: T): Dataset; protected abstract getNodeOfFocus(quad: Quad): SubjectNode | ObjectNode; @@ -86,15 +80,11 @@ export abstract class SetProxy< } has(value: T): boolean { - const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(value); - return dataset.match(subject, predicate, object, graph).size > 0; + return this.getQuads(value).size > 0; } get size() { - const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(); - return dataset.match(subject, predicate, object, graph).size; + return this.getQuads().size; } entries(): IterableIterator<[T, T]> { @@ -114,9 +104,7 @@ export abstract class SetProxy< } [Symbol.iterator](): IterableIterator { - const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(); - const quads = dataset.match(subject, predicate, object, graph); + const quads = this.getQuads(); const collection: T[] = quads.toArray().map((quad) => { const quadSubject = this.getNodeOfFocus(quad); return nodeToJsonldRepresentation(quadSubject, this.context) as T; diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts index 9e18035..f6059f7 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts @@ -86,4 +86,25 @@ export class SubjectSetProxy< }); return this; } + + /** + * Clears the set of all values + */ + clear(): void { + for (const value of this) { + this.delete(value); + } + } + + /** + * Deletes an item for the set + * @param value the item to delete + * @returns true if the item was present before deletion + */ + delete(value: T): boolean { + const { dataset } = this.context; + const quads = this.getQuads(value); + quads.forEach((quad) => dataset.delete(quad)); + return quads.size > 0; + } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts index 7e4034b..4ea3538 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardObjectSetProxy.ts @@ -10,6 +10,7 @@ import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; import { getNodeFromRawValue } from "../util/getNodeFromRaw"; import { _isSubjectOriented } from "../types"; +import { filterQuadsByLanguageOrdering } from "../language/languageUtils"; export type WildcardObjectSetProxyQuadMatch = [ SubjectNode | undefined | null, @@ -27,25 +28,22 @@ export class WildcardObjectSetProxy< T extends NonNullable, > extends SetProxy { protected quadMatch: WildcardObjectSetProxyQuadMatch; - protected isLangSet: boolean; + protected isLangStringSet: boolean; constructor( context: ProxyContext, quadMatch: WildcardObjectSetProxyQuadMatch, - isLangSet?: boolean, + isLangStringSet?: boolean, ) { super(context, quadMatch); this.quadMatch = quadMatch; - this.isLangSet = isLangSet ?? false; + this.isLangStringSet = isLangStringSet ?? false; } - protected getSPOG(value?: T | undefined): { - subject?: SubjectNode; - predicate?: PredicateNode; - object?: ObjectNode; - graph?: GraphNode; - } { - // Get the RDF Node that represents the value, skip is no value + protected getQuads(value?: T | undefined): Dataset { + const { dataset } = this.context; + let quads: Dataset; + // Get the RDF Node that represents the value, skip if no value const subject = this.quadMatch[0] ?? undefined; const predicate = this.quadMatch[1] ?? undefined; const graph = this.quadMatch[3] ?? undefined; @@ -58,81 +56,31 @@ export class WildcardObjectSetProxy< datatype = this.context.contextUtil.getDataType(key, rdfType); } const valueNode = getNodeFromRawValue(value, this.context, datatype); - return { - subject, - predicate, - object: valueNode, - graph, - }; + quads = dataset.match(subject, predicate, valueNode, graph); + // If there is no valueNode, we must filter by value manually as we + // weren't able to deduce the datatype. + if (!valueNode) { + quads = quads.filter( + (quad) => + quad.object.termType === "Literal" && quad.object.value === value, + ); + } + } else { + // SPO for no value + quads = dataset.match(subject, predicate, undefined, graph); } - // SPO for no value - return { - subject, - predicate, - object: undefined, - graph, - }; - } - - protected getNodeOfFocus(quad: Quad): ObjectNode { - return quad.object as ObjectNode; - } - - private manuallyMatchWithUnknownObjectNode( - subject: SubjectNode | undefined, - predicate: PredicateNode | undefined, - graph: GraphNode | undefined, - value: T, - ): Dataset { - // If there's not an object, that means that we don't know the object node - // and need to find it manually. - const matchingQuads = this.context.dataset.match( - subject, - predicate, - null, - graph, - ); - return matchingQuads.filter( - (quad) => - quad.object.termType === "Literal" && quad.object.value === value, - ); - } - - delete(value: T): boolean { - const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(value); - if (!object) { - const matchedQuads = this.manuallyMatchWithUnknownObjectNode( - subject, - predicate, - graph, - value, + // If this is a langStringSet, filter by language preferences + if (this.isLangStringSet) { + return filterQuadsByLanguageOrdering( + quads, + this.context.languageOrdering, ); - matchedQuads.forEach((quad) => dataset.delete(quad)); - return matchedQuads.size > 0; - } else { - const willDelete = - dataset.match(subject, predicate, object, graph).size > 0; - dataset.deleteMatches(subject, predicate, object, graph); - return willDelete; } + return quads; } - has(value: T): boolean { - const { dataset } = this.context; - const { subject, predicate, object, graph } = this.getSPOG(value); - if (!object) { - return ( - this.manuallyMatchWithUnknownObjectNode( - subject, - predicate, - graph, - value, - ).size > 0 - ); - } else { - return dataset.match(subject, predicate, object, graph).size > 0; - } + protected getNodeOfFocus(quad: Quad): ObjectNode { + return quad.object as ObjectNode; } get [_isSubjectOriented](): false { diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts index 43a97a2..02b06a2 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts @@ -4,7 +4,7 @@ import type { ObjectNode, GraphNode, } from "@ldo/rdf-utils"; -import type { Quad } from "@rdfjs/types"; +import type { Dataset, Quad } from "@rdfjs/types"; import type { RawObject } from "../util/RawObject"; import { SetProxy } from "./SetProxy"; import type { ProxyContext } from "../ProxyContext"; @@ -34,32 +34,18 @@ export class WildcardSubjectSetProxy extends SetProxy { this.quadMatch = quadMatch; } - protected getSPOG(value?: T | undefined): { - subject?: SubjectNode; - predicate?: PredicateNode; - object?: ObjectNode; - graph?: GraphNode; - } { + protected getQuads(value?: T | undefined): Dataset { + const { dataset } = this.context; // Get the RDF Node that represents the value, skip is no value const predicate = this.quadMatch[1] ?? undefined; const object = this.quadMatch[2] ?? undefined; const graph = this.quadMatch[3] ?? undefined; if (value) { const valueNode = getNodeFromRawObject(value, this.context.contextUtil); - return { - subject: valueNode, - predicate, - object, - graph, - }; + return dataset.match(valueNode, predicate, object, graph); } // SPO for no value - return { - subject: undefined, - predicate, - object, - graph, - }; + return dataset.match(undefined, predicate, object, graph); } protected getNodeOfFocus(quad: Quad): SubjectNode { diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index 4168682..0dff9fd 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -1264,7 +1264,7 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { it("Removes an object completely when using the delete method", async () => { const firstPatient = patients.toArray()[0]; patients.delete(firstPatient); - expect(patients.has(firstPatient)).toBe(true); + expect(patients.has(firstPatient)).toBe(false); }); it("creates a collection that matches only collections in a certain graph", async () => { From 2deae89b3728dc01c90dbeba685c87750fd65a8e Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Tue, 25 Feb 2025 14:56:58 -0500 Subject: [PATCH 20/32] BasicLdSet tests --- .../src/setProxy/ldSet/BasicLdSet.ts | 36 +- .../src/util/RawObject.ts | 12 +- .../src/util/getNodeFromRaw.ts | 7 +- .../test/BasicLdSet.test.ts | 325 ++++++++++++++++++ 4 files changed, 368 insertions(+), 12 deletions(-) create mode 100644 packages/jsonld-dataset-proxy/test/BasicLdSet.test.ts diff --git a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts index c3ef348..9c8066e 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/ldSet/BasicLdSet.ts @@ -6,13 +6,11 @@ import { blankNode } from "@rdfjs/data-model"; /* eslint-disable @typescript-eslint/no-explicit-any */ export class BasicLdSet = NonNullable> - extends Set implements LdSet { private hashMap: Map; constructor(values?: Iterable | null) { - super(); this.hashMap = new Map(); if (values) { for (const value of values) { @@ -44,23 +42,17 @@ export class BasicLdSet = NonNullable> const key = this.hashFn(value); if (!this.hashMap.has(key)) { this.hashMap.set(key, value); - super.add(value); } return this; } clear(): void { this.hashMap.clear(); - super.clear(); } delete(value: T): boolean { const key = this.hashFn(value); - if (this.hashMap.has(key)) { - this.hashMap.delete(key); - return super.delete(value); - } - return false; + return this.hashMap.delete(key); } has(value: T): boolean { @@ -68,6 +60,32 @@ export class BasicLdSet = NonNullable> return this.hashMap.has(key); } + get size(): number { + return this.hashMap.size; + } + + *entries(): IterableIterator<[T, T]> { + for (const [, value] of this.hashMap.entries()) { + yield [value, value]; + } + } + + keys(): IterableIterator { + return this.hashMap.values(); + } + + values(): IterableIterator { + return this.hashMap.values(); + } + [Symbol.iterator](): IterableIterator { + return this.hashMap.values(); + } + + get [Symbol.toStringTag]() { + // TODO: Change this to be human readable. + return "BasicLdSet"; + } + /** * =========================================================================== * Array Functions diff --git a/packages/jsonld-dataset-proxy/src/util/RawObject.ts b/packages/jsonld-dataset-proxy/src/util/RawObject.ts index 2d710b4..0ea579c 100644 --- a/packages/jsonld-dataset-proxy/src/util/RawObject.ts +++ b/packages/jsonld-dataset-proxy/src/util/RawObject.ts @@ -1,13 +1,21 @@ import type { BlankNode, NamedNode } from "@rdfjs/types"; import { _getUnderlyingNode } from "../types"; +import type { LdSet } from "../setProxy/ldSet/LdSet"; import type { SubjectProxy } from "../subjectProxy/SubjectProxy"; export type RawObject = | ({ "@id"?: string | NamedNode | BlankNode; } & { - [key: string | symbol | number]: RawValue | RawValue[]; + [key: string | symbol | number]: RawValue | LdSet; }) | SubjectProxy; -export type RawValue = string | boolean | number | RawObject | undefined; +export type RawValue = + | string + | boolean + | number + | RawObject + | NamedNode + | BlankNode + | undefined; diff --git a/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts b/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts index f24942f..58b483b 100644 --- a/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts +++ b/packages/jsonld-dataset-proxy/src/util/getNodeFromRaw.ts @@ -43,7 +43,12 @@ export function getNodeFromRawValue( } else { return literal(value.toString(), datatype); } + } else if ( + typeof value.termType === "string" && + (value.termType === "NamedNode" || value.termType === "BlankNode") + ) { + return value as NamedNode | BlankNode; } else { - return getNodeFromRawObject(value, proxyContext.contextUtil); + return getNodeFromRawObject(value as RawObject, proxyContext.contextUtil); } } diff --git a/packages/jsonld-dataset-proxy/test/BasicLdSet.test.ts b/packages/jsonld-dataset-proxy/test/BasicLdSet.test.ts new file mode 100644 index 0000000..8f9abd9 --- /dev/null +++ b/packages/jsonld-dataset-proxy/test/BasicLdSet.test.ts @@ -0,0 +1,325 @@ +import { namedNode } from "@rdfjs/data-model"; +import jsonldDatasetProxy, { BasicLdSet, _getUnderlyingNode } from "../src"; +import { createDataset } from "@ldo/dataset"; + +describe("BasicLdSet", () => { + describe("constructor and add", () => { + test("should add primitive values correctly", () => { + const set = new BasicLdSet(); + expect(set.size).toBe(0); + set.add(1); + expect(set.size).toBe(1); + expect(set.has(1)).toBe(true); + // Duplicate primitives should not increase size. + set.add(1); + expect(set.size).toBe(1); + }); + + test('should add objects with "@id" as string correctly', () => { + const obj1 = { "@id": "testId" }; + const set = new BasicLdSet(); + set.add(obj1); + expect(set.has(obj1)).toBe(true); + expect(set.size).toBe(1); + // A different object with the same "@id" should be considered a duplicate. + const obj2 = { "@id": "testId" }; + set.add(obj2); + expect(set.size).toBe(1); + }); + + test('should add objects with "@id" as an object correctly', () => { + // In this case the object’s "@id" is a string already. + const obj1 = { "@id": "testIdObj" }; + const set = new BasicLdSet(); + set.add(obj1); + expect(set.has(obj1)).toBe(true); + expect(set.size).toBe(1); + // A different object with an equivalent "@id" should not increase the size. + const obj2 = { "@id": "testIdObj" }; + set.add(obj2); + expect(set.size).toBe(1); + }); + + test("should add LinkedDataObject", () => { + // In this case the object’s "@id" is a string already. + const obj1 = jsonldDatasetProxy(createDataset(), {}).fromSubject( + namedNode("testIdObj"), + ); + const set = new BasicLdSet(); + set.add(obj1); + expect(set.has(obj1)).toBe(true); + expect(set.size).toBe(1); + // A different object with an equivalent "@id" should not increase the size. + const obj2 = { "@id": "testIdObj" }; + set.add(obj2); + expect(set.size).toBe(1); + }); + + test("should add objects with underlying nodes correctly", () => { + // Here we simulate a case where the object has a NamedNode stored as its "@id" + // which in turn yields its .value. + const obj1 = { "@id": namedNode("testIdObj") }; + const set = new BasicLdSet(); + set.add(obj1); + expect(set.has(obj1)).toBe(true); + expect(set.size).toBe(1); + // A different object with an equivalent "@id".value should not increase the size. + const obj2 = { "@id": "testIdObj" }; + set.add(obj2); + expect(set.size).toBe(1); + }); + + test('should treat objects with no "@id" as unique even if same reference', () => { + // When an object does not have "@id" (or _getUnderlyingNode), + // the hashFn falls back to generating a new blank node each time. + const obj = {}; + const set = new BasicLdSet(); + set.add(obj); + // Adding the same object twice produces two different hash keys. + set.add(obj); + expect(set.size).toBe(2); + }); + + test("should initialize with iterable values", () => { + const set = new BasicLdSet([1, 2, 3, 3]); + expect(set.size).toBe(3); + expect([...set]).toEqual([1, 2, 3]); + }); + }); + + describe("clear", () => { + test("should clear all elements", () => { + const set = new BasicLdSet([1, 2, 3]); + expect(set.size).toBe(3); + set.clear(); + expect(set.size).toBe(0); + expect([...set]).toEqual([]); + }); + }); + + describe("delete", () => { + test("should delete an existing element and return true", () => { + const set = new BasicLdSet([1, 2, 3]); + expect(set.delete(2)).toBe(true); + expect(set.has(2)).toBe(false); + expect(set.size).toBe(2); + }); + + test("should return false when deleting a non-existent element", () => { + const set = new BasicLdSet([1, 2, 3]); + expect(set.delete(4)).toBe(false); + expect(set.size).toBe(3); + }); + }); + + describe("has", () => { + test("should correctly identify the presence of elements", () => { + const set = new BasicLdSet([1, 2, 3]); + expect(set.has(1)).toBe(true); + expect(set.has(4)).toBe(false); + }); + }); + + describe("iteration functions", () => { + test("every should return true if all elements satisfy the predicate", () => { + const set = new BasicLdSet([2, 4, 6]); + const result = set.every((num) => num % 2 === 0); + expect(result).toBe(true); + }); + + test("every should return false if any element fails the predicate", () => { + const set = new BasicLdSet([2, 3, 6]); + const result = set.every((num) => num % 2 === 0); + expect(result).toBe(false); + }); + + test("some should return true if any element satisfies the predicate", () => { + const set = new BasicLdSet([1, 3, 4]); + const result = set.some((num) => num % 2 === 0); + expect(result).toBe(true); + }); + + test("some should return false if no element satisfies the predicate", () => { + const set = new BasicLdSet([1, 3, 5]); + const result = set.some((num) => num % 2 === 0); + expect(result).toBe(false); + }); + + test("forEach should call the callback for each element", () => { + const set = new BasicLdSet([1, 2, 3]); + const mockFn = jest.fn(); + set.forEach((value, value2, collection) => { + expect(collection).toBe(set); + expect(value).toBe(value2); + mockFn(value); + }); + expect(mockFn).toHaveBeenCalledTimes(3); + expect(mockFn).toHaveBeenCalledWith(1); + expect(mockFn).toHaveBeenCalledWith(2); + expect(mockFn).toHaveBeenCalledWith(3); + }); + + test("map should return an array with mapped values", () => { + const set = new BasicLdSet([1, 2, 3]); + const result = set.map((num) => num * 2); + expect(result).toEqual([2, 4, 6]); + }); + + test("filter should return a new set with filtered elements", () => { + const set = new BasicLdSet([1, 2, 3, 4]); + const filtered = set.filter((num) => num % 2 === 0); + expect(filtered.size).toBe(2); + expect(filtered.has(2)).toBe(true); + expect(filtered.has(4)).toBe(true); + }); + + test("reduce should work without an initial value", () => { + const set = new BasicLdSet([1, 2, 3, 4]); + const result = set.reduce((acc, curr) => acc + curr); + expect(result).toBe(10); + }); + + test("reduce should work with an initial value", () => { + const set = new BasicLdSet([1, 2, 3, 4]); + const result = set.reduce((acc, curr) => acc + curr, 10); + expect(result).toBe(20); + }); + + test("reduce should throw an error for an empty set without an initial value", () => { + const set = new BasicLdSet(); + expect(() => { + set.reduce((acc, curr) => acc + curr); + }).toThrow("Reduce of empty collection with no initial value"); + }); + + test("toArray and toJSON should return an array of elements", () => { + const elements = [1, 2, 3]; + const set = new BasicLdSet(elements); + expect(set.toArray()).toEqual(elements); + expect(set.toJSON()).toEqual(elements); + }); + }); + + describe("set operations", () => { + test("difference should return elements in the first set not present in the second", () => { + const set1 = new BasicLdSet([1, 2, 3, 4]); + const set2 = new Set([3, 4, 5]); + const diff = set1.difference(set2); + expect(diff.size).toBe(2); + expect(diff.has(1)).toBe(true); + expect(diff.has(2)).toBe(true); + }); + + test("intersection should return only the common elements", () => { + const set1 = new BasicLdSet([1, 2, 3, 4]); + const set2 = new BasicLdSet([3, 4, 5]); + const inter = set1.intersection(set2); + expect(inter.size).toBe(2); + expect(inter.has(3)).toBe(true); + expect(inter.has(4)).toBe(true); + const inter2 = set2.intersection(set1); + expect(inter2.size).toBe(2); + expect(inter2.has(3)).toBe(true); + expect(inter2.has(4)).toBe(true); + }); + + test("isDisjointFrom should return true if the sets have no common elements", () => { + const set1 = new BasicLdSet([1, 2]); + const set2 = new BasicLdSet([3, 4, 5]); + expect(set1.isDisjointFrom(set2)).toBe(true); + expect(set2.isDisjointFrom(set1)).toBe(true); + }); + + test("isDisjointFrom should return false if the sets share elements", () => { + const set1 = new BasicLdSet([1, 2]); + const set2 = new Set([2, 3]); + expect(set1.isDisjointFrom(set2)).toBe(false); + }); + + test("isSubsetOf should return true when the set is a subset of another", () => { + const set1 = new BasicLdSet([1, 2]); + const set2 = new BasicLdSet([1, 2, 3]); + expect(set1.isSubsetOf(set2)).toBe(true); + expect(set2.isSubsetOf(set1)).toBe(false); + }); + + test("isSubsetOf should return false when the set is not a subset of another", () => { + const set1 = new BasicLdSet([1, 2, 4]); + const set2 = new Set([1, 2, 3]); + expect(set1.isSubsetOf(set2)).toBe(false); + }); + + test("isSupersetOf should return true when the set is a superset of another", () => { + const set1 = new BasicLdSet([1, 2, 3]); + const set2 = new Set([1, 2]); + expect(set1.isSupersetOf(set2)).toBe(true); + }); + + test("isSupersetOf should return false when the set is larger", () => { + const set1 = new BasicLdSet([1, 2]); + const set2 = new BasicLdSet([1, 2, 3]); + expect(set1.isSupersetOf(set2)).toBe(false); + }); + + test("isSupersetOf should return false when the set is not a superset of another", () => { + const set1 = new BasicLdSet([1, 2, 5]); + const set2 = new BasicLdSet([1, 2, 3]); + expect(set1.isSupersetOf(set2)).toBe(false); + }); + + test("symmetricDifference should return the symmetric difference of two sets", () => { + const set1 = new BasicLdSet([1, 2, 3]); + const set2 = new Set([2, 3, 4]); + const symDiff = set1.symmetricDifference(set2); + expect(symDiff.size).toBe(2); + expect(symDiff.has(1)).toBe(true); + expect(symDiff.has(4)).toBe(true); + }); + + test("union should return the union of two sets", () => { + const set1 = new BasicLdSet([1, 2]); + const set2 = new Set([2, 3]); + const union = set1.union(set2); + expect(union.size).toBe(3); + expect(union.has(1)).toBe(true); + expect(union.has(2)).toBe(true); + expect(union.has(3)).toBe(true); + }); + }); + + describe("iterator methods", () => { + test("entries returns pairs [value, value]", () => { + const set = new BasicLdSet([1, 2, 3]); + const entries = Array.from(set.entries()); + expect(entries).toEqual([ + [1, 1], + [2, 2], + [3, 3], + ]); + }); + + test("keys returns all values", () => { + const set = new BasicLdSet([1, 2, 3]); + const keys = Array.from(set.keys()); + expect(keys).toEqual([1, 2, 3]); + }); + + test("values returns all values", () => { + const set = new BasicLdSet([1, 2, 3]); + const values = Array.from(set.values()); + expect(values).toEqual([1, 2, 3]); + }); + + test("iterator returns all values", () => { + const set = new BasicLdSet([1, 2, 3]); + const iterated = [...set]; + expect(iterated).toEqual([1, 2, 3]); + }); + + test("toStringTag returns 'BasicLdSet'", () => { + const set = new BasicLdSet(); + expect(Object.prototype.toString.call(set)).toBe("[object BasicLdSet]"); + expect(set[Symbol.toStringTag]).toBe("BasicLdSet"); + }); + }); +}); From e86b552f2460194c60ac708dfd52da75e0fca253 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Wed, 26 Feb 2025 14:34:01 -0500 Subject: [PATCH 21/32] Full test coverage for set refactor --- .../src/JsonldDatasetProxyBuilder.ts | 4 +- packages/jsonld-dataset-proxy/src/graphOf.ts | 4 +- .../src/setProxy/SubjectSetProxy.ts | 25 - .../src/setProxy/WildcardSubjectSetProxy.ts | 6 +- .../src/subjectProxy/createSubjectHandler.ts | 14 +- .../src/subjectProxy/deleteFromDataset.ts | 37 +- packages/jsonld-dataset-proxy/src/types.ts | 1 + .../jsonld-dataset-proxy/src/util/NodeSet.ts | 12 - .../src/util/addObjectToDataset.ts | 3 - .../src/util/nodeToJsonldRepresentation.ts | 5 +- .../test/jsonldDatasetProxy.test.ts | 567 ++++++------------ 11 files changed, 220 insertions(+), 458 deletions(-) diff --git a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts index dd61c78..a8297b5 100644 --- a/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts +++ b/packages/jsonld-dataset-proxy/src/JsonldDatasetProxyBuilder.ts @@ -3,7 +3,7 @@ import type { BlankNode, NamedNode } from "@rdfjs/types"; import type { GraphNode, QuadMatch } from "@ldo/rdf-utils"; import type { LanguageOrdering } from "./language/languageTypes"; import type { ProxyContext } from "./ProxyContext"; -import type { ObjectLike } from "./types"; +import type { LiteralLike, ObjectLike } from "./types"; import type { LdSet } from "./setProxy/ldSet/LdSet"; /** @@ -74,7 +74,7 @@ export class JsonldDatasetProxyBuilder { * @param predicate The predicate to match * @param graph The graph to match */ - matchObject( + matchObject( subject?: QuadMatch[0] | undefined | null, predicate?: QuadMatch[1], graph?: QuadMatch[3] | undefined | null, diff --git a/packages/jsonld-dataset-proxy/src/graphOf.ts b/packages/jsonld-dataset-proxy/src/graphOf.ts index 806a3dd..96644d5 100644 --- a/packages/jsonld-dataset-proxy/src/graphOf.ts +++ b/packages/jsonld-dataset-proxy/src/graphOf.ts @@ -33,7 +33,7 @@ export function graphOf( proxyContext.getRdfType(subjectNode), ), ); - let objectNode: ObjectNode | null; + let objectNode: ObjectNode | undefined | null; if (object == null) { objectNode = null; } else { @@ -41,7 +41,7 @@ export function graphOf( predicate as string, proxyContext.getRdfType(subjectNode), ); - objectNode = getNodeFromRawValue(object, proxyContext, datatype) ?? null; + objectNode = getNodeFromRawValue(object, proxyContext, datatype); } const quads = subjectProxy[_getUnderlyingDataset].match( subjectNode, diff --git a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts index f6059f7..4afea57 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/SubjectSetProxy.ts @@ -38,10 +38,6 @@ export class SubjectSetProxy< * Appends a new element with a specified value to the end of the Set. */ add(value: T): this { - // Undefined is fine no matter what - if (value === undefined) { - return this; - } if (typeof value !== "object") { throw new Error( `Cannot add a literal "${value}"(${typeof value}) to a subject-oriented collection.`, @@ -86,25 +82,4 @@ export class SubjectSetProxy< }); return this; } - - /** - * Clears the set of all values - */ - clear(): void { - for (const value of this) { - this.delete(value); - } - } - - /** - * Deletes an item for the set - * @param value the item to delete - * @returns true if the item was present before deletion - */ - delete(value: T): boolean { - const { dataset } = this.context; - const quads = this.getQuads(value); - quads.forEach((quad) => dataset.delete(quad)); - return quads.size > 0; - } } diff --git a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts index 02b06a2..918b018 100644 --- a/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts +++ b/packages/jsonld-dataset-proxy/src/setProxy/WildcardSubjectSetProxy.ts @@ -37,9 +37,9 @@ export class WildcardSubjectSetProxy extends SetProxy { protected getQuads(value?: T | undefined): Dataset { const { dataset } = this.context; // Get the RDF Node that represents the value, skip is no value - const predicate = this.quadMatch[1] ?? undefined; - const object = this.quadMatch[2] ?? undefined; - const graph = this.quadMatch[3] ?? undefined; + const predicate = this.quadMatch[1]; + const object = this.quadMatch[2]; + const graph = this.quadMatch[3]; if (value) { const valueNode = getNodeFromRawObject(value, this.context.contextUtil); return dataset.match(valueNode, predicate, object, graph); diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/createSubjectHandler.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/createSubjectHandler.ts index 15a41c7..a5b64ce 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/createSubjectHandler.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/createSubjectHandler.ts @@ -1,4 +1,4 @@ -import { namedNode, quad } from "@rdfjs/data-model"; +import { blankNode, namedNode, quad } from "@rdfjs/data-model"; import type { BlankNode, NamedNode } from "@rdfjs/types"; import { addObjectToDataset } from "../util/addObjectToDataset"; import { deleteValueFromDataset } from "./deleteFromDataset"; @@ -62,14 +62,18 @@ export function createSubjectHandler( proxyContext = value; return true; } - if (key === "@id" && typeof value === "string") { + if ( + key === "@id" && + (typeof value === "string" || typeof value == "undefined") + ) { + const newSubjectNode = value ? namedNode(value) : blankNode(); // Replace Subject Quads const currentSubjectQuads = proxyContext.dataset .match(target["@id"]) .toArray(); const newSubjectQuads = currentSubjectQuads.map((curQuad) => quad( - namedNode(value), + newSubjectNode, curQuad.predicate, curQuad.object, curQuad.graph, @@ -87,7 +91,7 @@ export function createSubjectHandler( quad( curQuad.subject, curQuad.predicate, - namedNode(value), + newSubjectNode, curQuad.graph, ), ); @@ -95,7 +99,7 @@ export function createSubjectHandler( proxyContext.dataset.delete(curQuad), ); proxyContext.dataset.addAll(newObjectQuads); - target["@id"] = namedNode(value); + target["@id"] = newSubjectNode; } addObjectToDataset( { "@id": target["@id"], [key]: value }, diff --git a/packages/jsonld-dataset-proxy/src/subjectProxy/deleteFromDataset.ts b/packages/jsonld-dataset-proxy/src/subjectProxy/deleteFromDataset.ts index fabe85e..4efb25b 100644 --- a/packages/jsonld-dataset-proxy/src/subjectProxy/deleteFromDataset.ts +++ b/packages/jsonld-dataset-proxy/src/subjectProxy/deleteFromDataset.ts @@ -1,14 +1,12 @@ -import { namedNode, quad } from "@rdfjs/data-model"; -import type { Term } from "@rdfjs/types"; import type { SubjectProxyTarget } from "./createSubjectHandler"; import type { ProxyContext } from "../ProxyContext"; +import { addObjectToDataset } from "../util/addObjectToDataset"; export function deleteValueFromDataset( target: SubjectProxyTarget, key: string | symbol, proxyContext: ProxyContext, ) { - const nodesToRemove: Term[] = []; if (key === "@context") { return true; } @@ -18,29 +16,18 @@ export function deleteValueFromDataset( if (typeof key === "symbol") { return true; } - const subject = target["@id"]; - const predicate = namedNode( - proxyContext.contextUtil.keyToIri(key, proxyContext.getRdfType(subject)), - ); + // Remove this node completely if delete on ID if (key === "@id") { - nodesToRemove.push(target["@id"]); - } else { - const objectDataset = proxyContext.dataset.match(subject, predicate); - if (objectDataset.size === 0) { - return true; - } else { - nodesToRemove.push(...objectDataset.toArray().map((quad) => quad.object)); - } + const thisNode = target["@id"]; + proxyContext.dataset.deleteMatches(thisNode, undefined, undefined); + proxyContext.dataset.deleteMatches(undefined, undefined, thisNode); + return true; } - nodesToRemove.forEach((term) => { - if (term.termType === "Literal") { - proxyContext.dataset.delete(quad(subject, predicate, term)); - return true; - } else if (term.termType === "NamedNode") { - proxyContext.dataset.deleteMatches(term, undefined, undefined); - proxyContext.dataset.deleteMatches(undefined, undefined, term); - return true; - } - }); + // Otherwise, this is essentially treated like setting a key to undefined. + addObjectToDataset( + { "@id": target["@id"], [key]: undefined }, + true, + proxyContext, + ); return true; } diff --git a/packages/jsonld-dataset-proxy/src/types.ts b/packages/jsonld-dataset-proxy/src/types.ts index a61d739..ea50d52 100644 --- a/packages/jsonld-dataset-proxy/src/types.ts +++ b/packages/jsonld-dataset-proxy/src/types.ts @@ -8,3 +8,4 @@ export const _writeGraphs = Symbol("_writeGraphs"); // eslint-disable-next-line @typescript-eslint/no-explicit-any export type ObjectLike = Record; +export type LiteralLike = string | number | boolean; diff --git a/packages/jsonld-dataset-proxy/src/util/NodeSet.ts b/packages/jsonld-dataset-proxy/src/util/NodeSet.ts index fd00f0a..b9e6bfc 100644 --- a/packages/jsonld-dataset-proxy/src/util/NodeSet.ts +++ b/packages/jsonld-dataset-proxy/src/util/NodeSet.ts @@ -32,16 +32,4 @@ export class NodeSet { has(node: ObjectNode): boolean { return this.set.has(nodeToString(node)); } - - delete(node: ObjectNode) { - const key = nodeToString(node); - delete this.map[key]; - return this.set.delete(nodeToString(node)); - } - - toArray() { - return Array.from(this.set).map((stringVal) => { - return this.map[stringVal]; - }); - } } diff --git a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts index 37a876c..8e7d899 100644 --- a/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts +++ b/packages/jsonld-dataset-proxy/src/util/addObjectToDataset.ts @@ -82,9 +82,6 @@ export function addRawObjectToDatasetRecursive( shouldDeleteOldTriples: boolean, proxyContext: ProxyContext, ): SubjectProxy { - if (isSubjectProxy(item)) { - return item as SubjectProxy; - } const { dataset } = proxyContext; const subject = getNodeFromRawObject(item, proxyContext.contextUtil); const rdfType = proxyContext.getRdfType(subject); diff --git a/packages/jsonld-dataset-proxy/src/util/nodeToJsonldRepresentation.ts b/packages/jsonld-dataset-proxy/src/util/nodeToJsonldRepresentation.ts index 62a3093..0cea548 100644 --- a/packages/jsonld-dataset-proxy/src/util/nodeToJsonldRepresentation.ts +++ b/packages/jsonld-dataset-proxy/src/util/nodeToJsonldRepresentation.ts @@ -1,8 +1,9 @@ import type { Literal, Quad_Object } from "@rdfjs/types"; import type { ProxyContext } from "../ProxyContext"; import type { SubjectProxy } from "../subjectProxy/SubjectProxy"; +import type { LiteralLike } from "../types"; -export type ObjectJsonRepresentation = string | number | boolean | SubjectProxy; +export type ObjectJsonRepresentation = LiteralLike | SubjectProxy; export function literalToJsonldRepresentation(literal: Literal) { switch (literal.datatype.value) { @@ -66,7 +67,7 @@ export function literalToJsonldRepresentation(literal: Literal) { export function nodeToJsonldRepresentation( node: Quad_Object, proxyContext: ProxyContext, -): string | number | boolean | SubjectProxy { +): ObjectJsonRepresentation { if (node.termType === "Literal") { return literalToJsonldRepresentation(node); } else if (node.termType === "NamedNode" || node.termType === "BlankNode") { diff --git a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts index 0dff9fd..55f28ad 100644 --- a/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts +++ b/packages/jsonld-dataset-proxy/test/jsonldDatasetProxy.test.ts @@ -26,7 +26,13 @@ import { patientUnnestedContext, patientNestedContext, } from "./patientExampleData"; -import { namedNode, quad, literal, defaultGraph } from "@rdfjs/data-model"; +import { + namedNode, + quad, + literal, + defaultGraph, + blankNode, +} from "@rdfjs/data-model"; import type { Dataset, NamedNode } from "@rdfjs/types"; import type { ContextDefinition } from "jsonld"; import type { LdoJsonldContext } from "../src/LdoJsonldContext"; @@ -36,6 +42,7 @@ import { type Avatar, type Bender, } from "./scopedExampleData"; +import { WildcardSubjectSetProxy } from "../src/setProxy/WildcardSubjectSetProxy"; global.console.warn = () => {}; @@ -227,93 +234,78 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(set).toContain("Garrett"); expect(set).toContain("Bobby"); expect(set).toContain("Ferguson"); - // TODO - // expect(arr.concat(["Mimoey"])).toEqual([ - // "Garrett", - // "Bobby", - // "Ferguson", - // "Mimoey", - // ]); - // const entriesIterator = arr.entries(); - // expect(entriesIterator.next()).toEqual({ - // value: [0, "Garrett"], - // done: false, - // }); - // expect(entriesIterator.next()).toEqual({ - // value: [1, "Bobby"], - // done: false, - // }); - // expect(entriesIterator.next()).toEqual({ - // value: [2, "Ferguson"], - // done: false, - // }); - // expect(entriesIterator.next()).toEqual({ - // value: undefined, - // done: true, - // }); - // expect(arr.every((val) => val.length > 2)).toBe(true); - // expect(arr.every((val) => val.length > 6)).toBe(false); - // expect(arr.filter((val) => val.length > 6)).toEqual([ - // "Garrett", - // "Ferguson", - // ]); - // expect(arr.find((val) => val.length < 6)).toBe("Bobby"); - // expect(arr.findIndex((val) => val.length < 6)).toBe(1); - // // arr.flat (Not included because there should never be nested arrays) - // let concatTest = ""; - // arr.forEach((value) => (concatTest += value)); - // expect(concatTest).toBe("GarrettBobbyFerguson"); - // expect(arr.includes("Bobby")).toBe(true); - // expect(arr.indexOf("Bobby")).toBe(1); - // expect(arr.join("-")).toBe("Garrett-Bobby-Ferguson"); - // const keysIterator = arr.keys(); - // expect(keysIterator.next()).toEqual({ - // value: 0, - // done: false, - // }); - // expect(keysIterator.next()).toEqual({ - // value: 1, - // done: false, - // }); - // expect(keysIterator.next()).toEqual({ - // value: 2, - // done: false, - // }); - // expect(keysIterator.next()).toEqual({ - // value: undefined, - // done: true, - // }); - // expect(arr.lastIndexOf("Bobby")).toBe(1); - // expect(arr.map((val) => val.toUpperCase())).toEqual([ - // "GARRETT", - // "BOBBY", - // "FERGUSON", - // ]); - // expect(arr.reduce((agg, val) => agg + val, "")).toBe( - // "GarrettBobbyFerguson", - // ); - // expect(arr.slice(2)).toEqual(["Ferguson"]); - // expect(arr.some((val) => val.startsWith("G"))).toBe(true); - // expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); - // const valuesIterator = arr.values(); - // expect(valuesIterator.next()).toEqual({ - // value: "Garrett", - // done: false, - // }); - // expect(valuesIterator.next()).toEqual({ - // value: "Bobby", - // done: false, - // }); - // expect(valuesIterator.next()).toEqual({ - // value: "Ferguson", - // done: false, - // }); - // expect(valuesIterator.next()).toEqual({ - // value: undefined, - // done: true, - // }); - // expect(JSON.stringify(arr)).toBe(`["Garrett","Bobby","Ferguson"]`); - // expect(arr.toString()).toBe("Garrett,Bobby,Ferguson"); + const entriesIterator = set.entries(); + expect(entriesIterator.next()).toEqual({ + value: ["Garrett", "Garrett"], + done: false, + }); + expect(entriesIterator.next()).toEqual({ + value: ["Bobby", "Bobby"], + done: false, + }); + expect(entriesIterator.next()).toEqual({ + value: ["Ferguson", "Ferguson"], + done: false, + }); + expect(entriesIterator.next()).toEqual({ + value: undefined, + done: true, + }); + expect(set.every((val) => val.length > 2)).toBe(true); + expect(set.every((val) => val.length > 6)).toBe(false); + const filteredSet = set.filter((val) => val.length > 6); + expect(filteredSet.size).toBe(2); + expect(filteredSet).toContain("Garrett"); + expect(filteredSet).toContain("Ferguson"); + let concatTest = ""; + set.forEach((value) => (concatTest += value)); + expect(concatTest).toBe("GarrettBobbyFerguson"); + expect(set.has("Bobby")).toBe(true); + const keysIterator = set.keys(); + expect(keysIterator.next()).toEqual({ + value: "Garrett", + done: false, + }); + expect(keysIterator.next()).toEqual({ + value: "Bobby", + done: false, + }); + expect(keysIterator.next()).toEqual({ + value: "Ferguson", + done: false, + }); + expect(keysIterator.next()).toEqual({ + value: undefined, + done: true, + }); + expect(set.map((val) => val.toUpperCase())).toEqual([ + "GARRETT", + "BOBBY", + "FERGUSON", + ]); + expect(set.reduce((agg, val) => agg + val, "")).toBe( + "GarrettBobbyFerguson", + ); + expect(set.some((val) => val.startsWith("G"))).toBe(true); + const valuesIterator = set.values(); + expect(valuesIterator.next()).toEqual({ + value: "Garrett", + done: false, + }); + expect(valuesIterator.next()).toEqual({ + value: "Bobby", + done: false, + }); + expect(valuesIterator.next()).toEqual({ + value: "Ferguson", + done: false, + }); + expect(valuesIterator.next()).toEqual({ + value: undefined, + done: true, + }); + expect(JSON.stringify(set)).toBe(`["Garrett","Bobby","Ferguson"]`); + expect(set.toString()).toBe("[object LdSet]"); }); it("can traverse a circular graph", async () => { @@ -607,33 +599,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { patient3.roommate?.add(patient1); }); - // TODO: Confirm commenting this out is fine - // it("sets a primitive on an array", async () => { - // const [dataset, patient] = await getEmptyPatientDataset(); - // patient.type = { "@id": "Patient" }; - // patient.name[0] = "jon"; - // expect(dataset.toString()).toBe( - // ' .\n "jon" .\n', - // ); - // }); - - // TODO: Confirm that commenting this out is fine - // it("sets a primitive on an array and overwrites one that already is there", async () => { - // const [dataset, patient] = await getEmptyPatientDataset(); - // patient.type = { "@id": "Patient" }; - // dataset.add( - // quad( - // namedNode("http://example.com/Patient1"), - // namedNode("http://hl7.org/fhir/name"), - // literal("jon", "http://www.w3.org/2001/XMLSchema#string"), - // ), - // ); - // (patient.name as string[])[0] = "not jon"; - // expect(dataset.toString()).toBe( - // ' .\n "not jon" .\n', - // ); - // }); - it("sets an array", async () => { const [dataset, patient] = await getEmptyPatientDataset(); patient.type = { "@id": "Patient" }; @@ -667,33 +632,14 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - // TODO: Check that commenting this out is fine - // it("Does not remove the full object when it is replaced on an array", async () => { - // const [dataset, observation] = await getTinyLoadedDataset(); - // const replacementPatient: PatientShape = { - // "@id": "http://example.com/ReplacementPatient", - // type: { "@id": "Patient" }, - // name: set("Jackson"), - // }; - // const roommateArr = observation!.subject!.roommate; - // roommateArr[0] = replacementPatient; - // expect(dataset.toString()).toBe( - // ' .\n .\n .\n "Garrett" .\n .\n .\n "Rob" .\n .\n .\n "Jackson" .\n', - // ); - // }); - - // TODO check - // it("Keeps the correct array index when setting an index", async () => { - // const [, observation] = await getLoadedDataset(); - // const roommateArr = observation.subject?.roommate as PatientShape[]; - // roommateArr[0] = { - // "@id": "http://example.com/ReplacementPatient", - // type: { "@id": "Patient" }, - // name: ["Jackson"], - // }; - // expect(roommateArr.length).toBe(2); - // expect(roommateArr[0].name?.[0]).toBe("Jackson"); - // }); + it("allows instances of proxies to be set", async () => { + const [dataset, observation] = await getTinyLoadedDataset(); + const patient2 = observation.subject!.roommate!.toArray()[0]; + observation.subject = patient2; + expect(dataset.toString()).toBe( + ' .\n .\n .\n "Garrett" .\n .\n .\n "Rob" .\n .\n', + ); + }); it("Changes the subject name if the @id is changed", async () => { const [dataset, observation] = await getTinyLoadedDataset(); @@ -705,19 +651,35 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - // TODO changes to blank node when set undefined on ID - - // TODO deletes the object if delete on an ID + it("converts a node to a blank node when @id is set to undefined", async () => { + const [dataset, observation] = await getTinyLoadedDataset(); + const patient1 = observation.subject!; + patient1["@id"] = undefined; + const underlyingNode = patient1[_getUnderlyingNode]; + expect(underlyingNode.termType).toBe("BlankNode"); + expect(dataset.match(underlyingNode).size).toBe(3); + expect(patient1.name).toContain("Garrett"); + expect(patient1.roommate?.toArray()[0].name).toContain("Rob"); + const roommatesRoommate = patient1 + .roommate!.toArray()[0]! + .roommate!.toArray()[0]; + expect(roommatesRoommate.name).toContain("Garrett"); + expect(roommatesRoommate[_getUnderlyingNode].termType).toBe("BlankNode"); + expect(roommatesRoommate[_getUnderlyingNode].equals(underlyingNode)).toBe( + true, + ); + }); - it("Removes all adjoining triples when garbage collection is indicated via the delete operator on an object", async () => { + it("treats deleting a field as setting that field to undefined", async () => { const [dataset, observation] = await getTinyLoadedDataset(); delete observation.subject; + expect(dataset.toString()).toBe( - ' .\n .\n "Rob" .\n', + ' .\n .\n "Garrett" .\n .\n .\n "Rob" .\n .\n', ); }); - it("Removes all adjoining triples in an array when garbage collection is indicated via the delete operator on an object", async () => { + it("treats deleting a field to a collection as setting that field to undefined", async () => { const [dataset, observation] = await getTinyLoadedDataset(); delete observation.subject?.name; expect(dataset.toString()).toBe( @@ -757,10 +719,16 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); + it("removes all literals in a set using the clear method", async () => { + const [dataset, observation] = await getTinyLoadedDataset(); + observation.subject!.name!.clear(); + expect(dataset.toString()).toBe( + ' .\n .\n .\n .\n .\n "Rob" .\n .\n', + ); + }); + it("Deletes itself if @id is deleted", async () => { const [dataset, observation] = await getTinyLoadedDataset(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore delete observation["@id"]; expect(observation).toEqual({ "@id": "http://example.com/Observation1" }); expect(dataset.toString()).toBe( @@ -890,14 +858,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(arr).toContain("Ferguson"); }); - // TODO: Check if can delete - // it("Prevents duplicates from being added when a value is overwritten", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // const arr = patient.name!; - // arr[1] = "Garrett"; - // expect(arr).toEqual(["Garrett", "Ferguson"]); - // }); - it("Prevents duplicates for Objects", async () => { const [, observation] = await getLoadedDataset(); const roommates = observation.subject!.roommate!; @@ -913,38 +873,28 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(roommateNames).toContain("Amy"); }); - // TODO: check - // it("Does nothing when you try to set a symbol on an array", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // const arr = patient.name!; - // expect(() => { - // // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // // @ts-ignore - // arr[Symbol.search] = "Cool"; - // }).not.toThrowError(); - // }); - - // TODO: check - // it("Does nothing when you try to delete a symbol on an array", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // expect(() => { - // // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // // @ts-ignore - // delete arr[Symbol.search]; - // }).not.toThrowError(); - // }); - - // TODO check - // it("Does nothing when you try to delete an index of the array that doesn't exist", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // delete arr[5]; - // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); + it("allows rdf namedNodes to be added to a set", async () => { + const [, observation] = await getTinyLoadedDataset(); + observation.subject?.roommate?.add( + // @ts-expect-error This isn't technically allowed by the generated types + namedNode("http://example.com/Patient3"), + ); + expect(observation.subject?.roommate?.map((r) => r["@id"])).toContain( + "http://example.com/Patient3", + ); + }); + + it("allows rdf bankNodes to be added to a set", async () => { + const [, observation] = await getTinyLoadedDataset(); + const blank = blankNode(); + observation.subject?.roommate?.add( + // @ts-expect-error This isn't technically allowed by the generated types + blank, + ); + expect( + observation.subject?.roommate?.map((r) => r[_getUnderlyingNode]), + ).toContain(blank); + }); it("Can set a triple object named node with just a string", async () => { const [dataset, observation] = await getEmptyObservationDataset(); @@ -959,189 +909,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { " .\n .\n", ); }); - - // TODO check - // describe("Array Methods", () => { - // it("handles copyWithin", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name!; - // arr.copyWithin(0, 2, 3); - // expect(arr).toEqual(["Ferguson", "Bobby"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles copyWithin with the optional end variable missing", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.copyWithin(0, 2); - // expect(arr).toEqual(["Ferguson", "Bobby"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles copyWithin with the optional start variable missing", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // // @ts-ignore - // expect(() => arr.copyWithin(0, undefined, 2)).not.toThrowError(); - // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles fill", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.fill("Beepy", 2, 5); - // expect(arr).toEqual(["Garrett", "Bobby", "Beepy"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Beepy" .\n', - // ); - // }); - - // it("handles pop", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // expect(arr.pop()).toBe("Ferguson"); - // expect(arr).toEqual(["Garrett", "Bobby"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n', - // ); - // }); - - // it("returns undefined for pop on an empty collection", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // patient.name = []; - // expect(patient.name.pop()).toBe(undefined); - // }); - - // it("handles push", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.push("Beepy"); - // expect(arr).toEqual(["Garrett", "Bobby", "Ferguson", "Beepy"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - // ); - // }); - - // it("handles reverse", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // patient.name?.reverse(); - // expect(patient.name).toEqual(["Ferguson", "Bobby", "Garrett"]); - // expect(dataset.toString()).toBe( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles shift", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // expect(arr.shift()).toEqual("Garrett"); - // expect(arr).toEqual(["Bobby", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("returns undefined for shift on an empty collection", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // patient.name = []; - // expect(patient.name.shift()).toBe(undefined); - // }); - - // it("handles sort", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // patient.name?.sort((a, b) => { - // return a.length - b.length; - // }); - // expect(patient.name).toEqual(["Bobby", "Garrett", "Ferguson"]); - // expect(dataset.toString()).toBe( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles sort without a sort function", async () => { - // const [, patient] = await getArrayLoadedDataset(); - // patient.name?.sort(); - // expect(patient.name).toEqual(["Bobby", "Ferguson", "Garrett"]); - // }); - - // it("handles sort without a sort function and there are two equal values", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // dataset.add( - // quad( - // namedNode("http://example.com/Patient1"), - // namedNode("http://hl7.org/fhir/name"), - // literal( - // "Bobby", - // namedNode("http://www.w3.org/2001/XMLSchema#token"), - // ), - // ), - // ); - // patient.name?.sort(); - // expect(patient.name).toEqual(["Bobby", "Bobby", "Ferguson", "Garrett"]); - // }); - - // it("handles splice", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.splice(1, 0, "Beepy"); - // expect(arr).toEqual(["Garrett", "Beepy", "Bobby", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - // ); - // }); - - // it("handles splice with objects", async () => { - // const [, observation] = await getLoadedDataset(); - // const roommates = observation.subject?.roommate as PatientShape[]; - // roommates.splice( - // 0, - // 1, - // { - // "@id": "http://example.com/Patient4", - // type: { "@id": "Patient" }, - // name: ["Dippy"], - // age: 2, - // }, - // { - // "@id": "http://example.com/Patient5", - // type: { "@id": "Patient" }, - // name: ["Licky"], - // age: 3, - // }, - // ); - // expect(roommates[0].name?.[0]).toBe("Dippy"); - // expect(roommates[1].name?.[0]).toBe("Licky"); - // expect(roommates[2].name?.[0]).toBe("Amy"); - // }); - - // it("handles splice with only two params", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.splice(1, 1); - // expect(arr).toEqual(["Garrett", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Ferguson" .\n', - // ); - // }); - - // it("handles unshift", async () => { - // const [dataset, patient] = await getArrayLoadedDataset(); - // const arr = patient.name as string[]; - // arr.unshift("Beepy"); - // expect(arr).toEqual(["Beepy", "Garrett", "Bobby", "Ferguson"]); - // expect(dataset.toString()).toEqual( - // ' .\n "Garrett" .\n "Bobby" .\n "Ferguson" .\n "Beepy" .\n', - // ); - // }); - // }); }); describe("underlying data", () => { @@ -1261,12 +1028,6 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { ); }); - it("Removes an object completely when using the delete method", async () => { - const firstPatient = patients.toArray()[0]; - patients.delete(firstPatient); - expect(patients.has(firstPatient)).toBe(false); - }); - it("creates a collection that matches only collections in a certain graph", async () => { const [, , builder] = await getGraphLoadedDataset(); patients = builder.matchSubject( @@ -1279,6 +1040,38 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { "http://example.com/Patient1", ); }); + + it("creates a WildcardSubjectSetProxy when providing wildcard subject matches", async () => { + const [, , builder] = await getLoadedDataset(); + patients = builder.matchSubject( + namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), + ); + expect(patients).toBeInstanceOf(WildcardSubjectSetProxy); + expect(patients[_isSubjectOriented]).toBe(true); + expect( + patients.has({ + "@id": "http://example.com/Patient1", + type: { "@id": "Patient" }, + }), + ).toBe(true); + }); + + it("does nothing when attempting to modify an abstract set", async () => { + const [dataset, , builder] = await getLoadedDataset(); + patients = builder.matchSubject( + namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), + ); + const unmodifiedDataset = dataset.toString(); + patients.add({ "@id": "dontaddthisguy", type: { "@id": "Patient" } }); + expect(dataset.toString()).toBe(unmodifiedDataset); + patients.delete({ + "@id": "http://example.com/Patient1", + type: { "@id": "Patient" }, + }); + expect(dataset.toString()).toBe(unmodifiedDataset); + patients.clear(); + expect(dataset.toString()).toBe(unmodifiedDataset); + }); }); describe("matchObject", () => { @@ -1327,6 +1120,22 @@ const testJsonldDatasetProxy = (patientContext: LdoJsonldContext) => () => { expect(hodgePodge.toArray()[3]).toBe(33); expect(hodgePodge.toArray()[4]).toBe(true); }); + + it("can match object when the object is a literal.", () => { + const allNames = builder.matchObject( + null, + namedNode("http://hl7.org/fhir/name"), + null, + ); + expect(allNames.size).toBe(5); + expect(allNames).toContain("Garrett"); + expect(allNames).toContain("Bobby"); + expect(allNames).toContain("Ferguson"); + expect(allNames).toContain("Rob"); + expect(allNames).toContain("Amy"); + expect(allNames.has("Bobby")).toBe(true); + expect(allNames.has("WrongName")).toBe(false); + }); }); describe("fromJson", () => { From 9392014e8c5a99d82fc80cb232e31e108fc91c0b Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 15:17:38 -0500 Subject: [PATCH 22/32] Complete set refactor for schema-converter-shex --- packages/ldo/src/index.ts | 1 + .../src/typing/ShexJTypingTransformer.ts | 10 +++- .../src/typing/shexjToTyping.ts | 2 +- .../typing/util/dedupeObjectTypeMembers.ts | 33 ++++++++----- .../test/testData/activityPub.ts | 2 +- .../test/testData/andSimple.ts | 2 +- .../test/testData/circular.ts | 2 +- .../test/testData/eachOfAndSimple.ts | 49 +++++++++++++++++++ .../test/testData/extendsSimple.ts | 2 +- .../test/testData/oldExtends.ts | 2 +- .../test/testData/orSimple.ts | 2 +- .../test/testData/profile.ts | 2 +- .../test/testData/reducedProfile.ts | 2 +- .../test/testData/reusedPredicates.ts | 2 +- .../test/testData/simple.ts | 2 +- .../test/testData/testData.ts | 2 + 16 files changed, 91 insertions(+), 26 deletions(-) create mode 100644 packages/schema-converter-shex/test/testData/eachOfAndSimple.ts diff --git a/packages/ldo/src/index.ts b/packages/ldo/src/index.ts index a951c44..372327d 100644 --- a/packages/ldo/src/index.ts +++ b/packages/ldo/src/index.ts @@ -8,3 +8,4 @@ export * from "./createLdoDataset"; import type { LdoBase as LdoBaseImport } from "./util"; export type LdoBase = LdoBaseImport; export * from "./types"; +export { LdSet, LdoJsonldContext, set } from "@ldo/jsonld-dataset-proxy"; diff --git a/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts b/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts index 445107c..37d14ca 100644 --- a/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts +++ b/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts @@ -222,7 +222,7 @@ export const ShexJTypingTransformer = ShexJTraverser.createTransformer< tripleConstraint.predicate, rdfTypes[0], ); - const isArray = + const isSet = tripleConstraint.max !== undefined && tripleConstraint.max !== 1; const isOptional = tripleConstraint.min === 0; let type: dom.Type = dom.type.any; @@ -232,7 +232,13 @@ export const ShexJTypingTransformer = ShexJTraverser.createTransformer< const propertyDeclaration = dom.create.property( propertyName, - isArray ? dom.type.array(type) : type, + isSet + ? { + kind: "name", + name: "LdSet", + typeArguments: [type], + } + : type, isOptional ? dom.DeclarationFlags.Optional : dom.DeclarationFlags.None, ); diff --git a/packages/schema-converter-shex/src/typing/shexjToTyping.ts b/packages/schema-converter-shex/src/typing/shexjToTyping.ts index 1cdc2ad..7bb63f6 100644 --- a/packages/schema-converter-shex/src/typing/shexjToTyping.ts +++ b/packages/schema-converter-shex/src/typing/shexjToTyping.ts @@ -47,7 +47,7 @@ export async function shexjToTyping( }; }); const typingsString = - `import {ContextDefinition} from "jsonld"\n\n` + + `import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\n` + typings.map((typing) => `export ${typing.typingString}`).join(""); const typeingReturn: TypeingReturn = { diff --git a/packages/schema-converter-shex/src/typing/util/dedupeObjectTypeMembers.ts b/packages/schema-converter-shex/src/typing/util/dedupeObjectTypeMembers.ts index 3ef09b9..b8f5caf 100644 --- a/packages/schema-converter-shex/src/typing/util/dedupeObjectTypeMembers.ts +++ b/packages/schema-converter-shex/src/typing/util/dedupeObjectTypeMembers.ts @@ -10,24 +10,22 @@ export function dedupeObjectTypeMembers( // Combine properties if they're duplicates if (properties[propertyDeclaration.name]) { const oldPropertyDeclaration = properties[propertyDeclaration.name]; - const oldPropertyTypeAsArray = - oldPropertyDeclaration.type as dom.ArrayTypeReference; - const oldProeprtyType = - oldPropertyTypeAsArray.kind === "array" - ? oldPropertyTypeAsArray.type - : oldPropertyDeclaration.type; - const propertyTypeAsArray = - propertyDeclaration.type as dom.ArrayTypeReference; - const propertyType = - propertyTypeAsArray.kind === "array" - ? propertyTypeAsArray.type - : propertyDeclaration.type; + const oldPropertyType = isLdSetType(oldPropertyDeclaration.type) + ? oldPropertyDeclaration.type.typeArguments[0] + : oldPropertyDeclaration.type; + const propertyType = isLdSetType(propertyDeclaration.type) + ? propertyDeclaration.type.typeArguments[0] + : propertyDeclaration.type; const isOptional = propertyDeclaration.flags === dom.DeclarationFlags.Optional || oldPropertyDeclaration.flags === dom.DeclarationFlags.Optional; properties[propertyDeclaration.name] = dom.create.property( propertyDeclaration.name, - dom.type.array(dom.create.union([oldProeprtyType, propertyType])), + { + kind: "name", + name: "LdSet", + typeArguments: [dom.create.union([oldPropertyType, propertyType])], + }, isOptional ? dom.DeclarationFlags.Optional : dom.DeclarationFlags.None, ); // Set JS Comment @@ -42,3 +40,12 @@ export function dedupeObjectTypeMembers( }); return Object.values(properties); } + +function isLdSetType( + potentialLdSet: dom.Type, +): potentialLdSet is dom.NamedTypeReference { + return ( + (potentialLdSet as dom.NamedTypeReference).kind === "name" && + (potentialLdSet as dom.NamedTypeReference).name === "LdSet" + ); +} diff --git a/packages/schema-converter-shex/test/testData/activityPub.ts b/packages/schema-converter-shex/test/testData/activityPub.ts index 08cd63e..7c270c5 100644 --- a/packages/schema-converter-shex/test/testData/activityPub.ts +++ b/packages/schema-converter-shex/test/testData/activityPub.ts @@ -9419,5 +9419,5 @@ export const activityPub: TestData = { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface ActivityPubObject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.\n */\n type: {\n "@id": "Object";\n };\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Link {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource.\n */\n type: {\n "@id": "Link";\n };\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: string[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: (string | string)[];\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: (ActivityPubObject | Link)[];\n}\n\nexport interface Activity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface InstransitiveActivity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Collection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. \n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Collection";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: (ActivityPubObject | Link)[];\n}\n\nexport interface OrderedCollection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: (ActivityPubObject | Link)[];\n}\n\nexport interface CollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | Used to represent distinct subsets of items from a Collection. Refer to the Activity Streams 2.0 Core for a complete description of the CollectionPage object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "CollectionPage";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: (ActivityPubObject | Link)[];\n}\n\nexport interface OrderedCollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered. | Used to represent ordered subsets of items from an OrderedCollection. Refer to the Activity Streams 2.0 Core for a complete description of the OrderedCollectionPage object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n } | {\n "@id": "OrderedCollectionPage";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: (ActivityPubObject | Link)[];\n /**\n * A non-negative integer value identifying the relative position within the logical view of a strictly ordered collection.\n */\n startIndex?: number;\n}\n\nexport interface Accept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface TentativeAccept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted. | A specialization of Accept indicating that the acceptance is tentative.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n } | {\n "@id": "TentativeAccept";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Add {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has added the object to the target. If the target property is not explicitly specified, the target would need to be determined implicitly by context. The origin can be used to identify the context from which the object originated. \n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Add";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Arrive {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | An IntransitiveActivity that indicates that the actor has arrived at the location. The origin can be used to identify the context from which the actor originated. The target typically has no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Arrive";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Create {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has created the object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Create";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Delete {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has deleted the object. If specified, the origin indicates the context from which the object was deleted.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Delete";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Follow {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "following" the object. Following is defined in the sense typically used within Social systems in which the actor is interested in any activity performed by or on the object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Follow";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Ignore {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Join {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has joined the object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Join";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Leave {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has left the object. The target and origin typically have no meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Leave";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Like {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor likes, recommends or endorses the object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Like";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Offer {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Invite {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered. | A specialization of Offer in which the actor is extending an invitation for the object to the target.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n } | {\n "@id": "Invite";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Reject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface TentativeReject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning. | A specialization of Reject in which the rejection is considered tentative.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n } | {\n "@id": "TentativeReject";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Remove {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is removing the object. If specified, the origin indicates the context from which the object is being removed.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Remove";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Undo {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is undoing the object. In most cases, the object will be an Activity describing some previously performed action (for instance, a person may have previously "liked" an article but, for whatever reason, might choose to undo that like at some later point in time). The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Undo";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Update {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has updated the object. Note, however, that this vocabulary does not define a mechanism for describing the actual set of modifications made to object. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Update";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface View {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has viewed the object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "View";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Listen {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has listened to the object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Listen";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Read {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has read the object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Read";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Move {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has moved object from origin to target. If the origin or target are not specified, either can be determined by context.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Move";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Travel {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Indicates that the actor is traveling to target from origin. Travel is an IntransitiveObject whose actor specifies the direct object. If the target or origin are not specified, either can be determined by context.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Travel";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Announce {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is calling the target\'s attention the object. The origin typically has no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Announce";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Block {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning. | Indicates that the actor is blocking the object. Blocking is a stronger form of Ignore. The typical use is to support social systems that allow one user to block activities or content of other users. The target and origin typically have no defined meaning.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n } | {\n "@id": "Block";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Flag {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "flagging" the object. Flagging is defined in the sense common to many social platforms as reporting content as being inappropriate for any number of reasons.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Flag";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Dislike {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor dislikes the object.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Dislike";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n}\n\nexport interface Question {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Represents a question being asked. Question objects are an extension of IntransitiveActivity. That is, the Question object is an Activity, but the direct object is the question itself and therefore it would not contain an object property. Either of the anyOf and oneOf properties MAY be used to express possible answers, but a Question object MUST NOT have both properties. \n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Question";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: (ActivityPubObject | Link)[];\n object?: (ActivityPubObject | Link)[];\n target?: (ActivityPubObject | Link)[];\n result?: (ActivityPubObject | Link)[];\n origin?: (ActivityPubObject | Link)[];\n instrument?: (ActivityPubObject | Link)[];\n closed?: (ActivityPubObject | Link | string | boolean)[];\n}\n\nexport interface Application {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a software application.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Application";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Group {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a formal or informal collective of Actors.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Group";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Organization {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an organization.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Organization";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Person {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an individual person.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Person";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Service {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a service of any kind.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Service";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Relationship {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a relationship between two individuals. The subject and object properties are used to identify the connected individuals. See 5.2 Representing Relationships Between Entities for additional information. \n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Relationship";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Relationship object, the relationship property identifies the kind of relationship that exists between subject and object.\n */\n relationship?: (ActivityPubObject)[];\n}\n\nexport interface Article {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of multi-paragraph written work.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Article";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Document {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Document";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Audio {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents an audio document of any kind.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Audio";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Image {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | An image document of any kind\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Image";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Video {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a video document of any kind. \n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Video";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Note {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a short written work typically less than a single paragraph in length.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Note";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Page {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a Web Page.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Page";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Event {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of event.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Event";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Place {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a logical or physical location. See 5.3 Representing Places for additional information.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Place";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * Indicates the accuracy of position coordinates on a Place objects. Expressed in properties of percentage. e.g. "94.0" means "94.0% accurate".\n */\n accuracy?: string;\n /**\n * Indicates the altitude of a place. The measurement units is indicated using the units property. If units is not specified, the default is assumed to be "m" indicating meters. \n */\n altitude?: string;\n /**\n * The latitude of a place | The longitude of a place\n */\n latitude?: (string | string)[];\n /**\n * The radius from the given latitude and longitude for a Place. The units is expressed by the units property. If units is not specified, the default is assumed to be "m" indicating "meters".\n */\n radius?: string;\n}\n\nexport interface Mention {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource. | A specialized Link that represents an @mention.\n */\n type: ({\n "@id": "Link";\n } | {\n "@id": "Mention";\n })[];\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: string[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: (string | string)[];\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: (ActivityPubObject | Link)[];\n}\n\nexport interface Profile {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The describes property is used to reference the object being described by the profile.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Profile";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Profile object, the describes property identifies the object described by the Profile.\n */\n describes?: ActivityPubObject;\n}\n\nexport interface Tombstone {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Tombstone represents a content object that has been deleted. It can be used in Collections to signify that there used to be an object at this position, but it has been deleted.\n */\n type: ({\n "@id": "Object";\n } | {\n "@id": "Tombstone";\n })[];\n attachment?: (ActivityPubObject | Link)[];\n attributedTo?: (ActivityPubObject | Link)[];\n audience?: (ActivityPubObject | Link)[];\n content?: (string | string)[];\n context?: (ActivityPubObject | Link)[];\n name?: (string | string)[];\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: (ActivityPubObject | Link)[];\n icon?: (Image | Link)[];\n image?: (Image | Link)[];\n inReplyTo?: (ActivityPubObject | Link)[];\n location?: (ActivityPubObject | Link)[];\n preview?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: (string | string)[];\n tag?: (ActivityPubObject | Link)[];\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: (string | Link)[];\n to?: (ActivityPubObject | Link)[];\n bto?: (ActivityPubObject | Link)[];\n cc?: (ActivityPubObject | Link)[];\n bcc?: (ActivityPubObject | Link)[];\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Tombstone object, the formerType property identifies the type of the object that was deleted.\n */\n formerType?: (ActivityPubObject)[];\n /**\n * On a Tombstone object, the deleted property is a timestamp for when the object was deleted.\n */\n deleted?: string;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ActivityPubObject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.\n */\n type: {\n "@id": "Object";\n };\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Link {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource.\n */\n type: {\n "@id": "Link";\n };\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Activity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface InstransitiveActivity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Collection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface CollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | Used to represent distinct subsets of items from a Collection. Refer to the Activity Streams 2.0 Core for a complete description of the CollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "CollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered. | Used to represent ordered subsets of items from an OrderedCollection. Refer to the Activity Streams 2.0 Core for a complete description of the OrderedCollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n } | {\n "@id": "OrderedCollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n /**\n * A non-negative integer value identifying the relative position within the logical view of a strictly ordered collection.\n */\n startIndex?: number;\n}\n\nexport interface Accept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeAccept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted. | A specialization of Accept indicating that the acceptance is tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n } | {\n "@id": "TentativeAccept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Add {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has added the object to the target. If the target property is not explicitly specified, the target would need to be determined implicitly by context. The origin can be used to identify the context from which the object originated. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Add";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Arrive {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | An IntransitiveActivity that indicates that the actor has arrived at the location. The origin can be used to identify the context from which the actor originated. The target typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Arrive";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Create {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has created the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Create";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Delete {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has deleted the object. If specified, the origin indicates the context from which the object was deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Delete";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Follow {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "following" the object. Following is defined in the sense typically used within Social systems in which the actor is interested in any activity performed by or on the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Follow";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Ignore {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Join {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has joined the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Join";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Leave {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has left the object. The target and origin typically have no meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Leave";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Like {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor likes, recommends or endorses the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Like";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Offer {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Invite {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered. | A specialization of Offer in which the actor is extending an invitation for the object to the target.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n } | {\n "@id": "Invite";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Reject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeReject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning. | A specialization of Reject in which the rejection is considered tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n } | {\n "@id": "TentativeReject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Remove {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is removing the object. If specified, the origin indicates the context from which the object is being removed.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Remove";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Undo {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is undoing the object. In most cases, the object will be an Activity describing some previously performed action (for instance, a person may have previously "liked" an article but, for whatever reason, might choose to undo that like at some later point in time). The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Undo";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Update {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has updated the object. Note, however, that this vocabulary does not define a mechanism for describing the actual set of modifications made to object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Update";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface View {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has viewed the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "View";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Listen {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has listened to the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Listen";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Read {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has read the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Read";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Move {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has moved object from origin to target. If the origin or target are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Move";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Travel {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Indicates that the actor is traveling to target from origin. Travel is an IntransitiveObject whose actor specifies the direct object. If the target or origin are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Travel";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Announce {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is calling the target\'s attention the object. The origin typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Announce";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Block {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning. | Indicates that the actor is blocking the object. Blocking is a stronger form of Ignore. The typical use is to support social systems that allow one user to block activities or content of other users. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n } | {\n "@id": "Block";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Flag {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "flagging" the object. Flagging is defined in the sense common to many social platforms as reporting content as being inappropriate for any number of reasons.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Flag";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Dislike {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor dislikes the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Dislike";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Question {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Represents a question being asked. Question objects are an extension of IntransitiveActivity. That is, the Question object is an Activity, but the direct object is the question itself and therefore it would not contain an object property. Either of the anyOf and oneOf properties MAY be used to express possible answers, but a Question object MUST NOT have both properties. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Question";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n closed?: LdSet;\n}\n\nexport interface Application {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a software application.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Application";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Group {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a formal or informal collective of Actors.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Group";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Organization {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an organization.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Organization";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Person {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an individual person.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Person";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Service {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a service of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Service";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Relationship {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a relationship between two individuals. The subject and object properties are used to identify the connected individuals. See 5.2 Representing Relationships Between Entities for additional information. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Relationship";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Relationship object, the relationship property identifies the kind of relationship that exists between subject and object.\n */\n relationship?: LdSet;\n}\n\nexport interface Article {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of multi-paragraph written work.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Article";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Document {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Audio {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents an audio document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Audio";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Image {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | An image document of any kind\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Image";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Video {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a video document of any kind. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Video";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Note {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a short written work typically less than a single paragraph in length.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Note";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Page {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a Web Page.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Page";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Event {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of event.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Event";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Place {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a logical or physical location. See 5.3 Representing Places for additional information.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Place";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * Indicates the accuracy of position coordinates on a Place objects. Expressed in properties of percentage. e.g. "94.0" means "94.0% accurate".\n */\n accuracy?: string;\n /**\n * Indicates the altitude of a place. The measurement units is indicated using the units property. If units is not specified, the default is assumed to be "m" indicating meters. \n */\n altitude?: string;\n /**\n * The latitude of a place | The longitude of a place\n */\n latitude?: LdSet;\n /**\n * The radius from the given latitude and longitude for a Place. The units is expressed by the units property. If units is not specified, the default is assumed to be "m" indicating "meters".\n */\n radius?: string;\n}\n\nexport interface Mention {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource. | A specialized Link that represents an @mention.\n */\n type: LdSet<{\n "@id": "Link";\n } | {\n "@id": "Mention";\n }>;\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Profile {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The describes property is used to reference the object being described by the profile.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Profile";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Profile object, the describes property identifies the object described by the Profile.\n */\n describes?: ActivityPubObject;\n}\n\nexport interface Tombstone {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Tombstone represents a content object that has been deleted. It can be used in Collections to signify that there used to be an object at this position, but it has been deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Tombstone";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Tombstone object, the formerType property identifies the type of the object that was deleted.\n */\n formerType?: LdSet;\n /**\n * On a Tombstone object, the deleted property is a timestamp for when the object was deleted.\n */\n deleted?: string;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/andSimple.ts b/packages/schema-converter-shex/test/testData/andSimple.ts index 54010cf..dc71c26 100644 --- a/packages/schema-converter-shex/test/testData/andSimple.ts +++ b/packages/schema-converter-shex/test/testData/andSimple.ts @@ -43,5 +43,5 @@ export const andSimple: TestData = { Image: "https://example.com/Image", }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n videoImage: VideoShape & ImageShape;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n videoImage: VideoShape & ImageShape;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/circular.ts b/packages/schema-converter-shex/test/testData/circular.ts index fdcd45e..c0ffc92 100644 --- a/packages/schema-converter-shex/test/testData/circular.ts +++ b/packages/schema-converter-shex/test/testData/circular.ts @@ -47,5 +47,5 @@ export const circular: TestData = { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface ParentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Parent";\n };\n hasChild: ChildShape;\n}\n\nexport interface ChildShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Child";\n };\n hasParent: ParentShape;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ParentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Parent";\n };\n hasChild: ChildShape;\n}\n\nexport interface ChildShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Child";\n };\n hasParent: ParentShape;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts b/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts new file mode 100644 index 0000000..07fe6ba --- /dev/null +++ b/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts @@ -0,0 +1,49 @@ +import type { TestData } from "./testData"; + +/** + * EACH OF AND SIMPLE + */ +export const eachOfAndSimple: TestData = { + name: "eachOfAndSimple", + shexc: ` + PREFIX ex: + + ex:MediaContainerShape { + a [ ex:MediaContainer ]; + ex:videoImage @ex:VideoShape * ; + ex:videoImage @ex:ImageShape * ; + } + + ex:VideoShape { + a [ ex:Video ]; + } + + ex:ImageShape { + a [ ex:Image ]; + } + `, + sampleTurtle: "", + baseNode: "", + successfulContext: { + MediaContainer: { + "@id": "https://example.com/MediaContainer", + "@context": { + type: { + "@id": "@type", + }, + videoImage: { + "@id": "https://example.com/videoImage", + "@type": "@id", + "@isCollection": true, + }, + }, + }, + type: { + "@id": "@type", + }, + Video: "https://example.com/Video", + Image: "https://example.com/Image", + }, + successfulTypings: + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n videoImage?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', +}; diff --git a/packages/schema-converter-shex/test/testData/extendsSimple.ts b/packages/schema-converter-shex/test/testData/extendsSimple.ts index 1ba79a5..6a562ca 100644 --- a/packages/schema-converter-shex/test/testData/extendsSimple.ts +++ b/packages/schema-converter-shex/test/testData/extendsSimple.ts @@ -69,5 +69,5 @@ export const extendsSimple: TestData = { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: (string | string)[];\n "@context"?: (ContextDefinition | ContextDefinition)[];\n type: ({\n "@id": "Entity";\n } | {\n "@id": "Person";\n })[];\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: (string | string | string)[];\n "@context"?: (ContextDefinition | ContextDefinition | ContextDefinition)[];\n type: ({\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n })[];\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/oldExtends.ts b/packages/schema-converter-shex/test/testData/oldExtends.ts index 5ad7b53..544eaf6 100644 --- a/packages/schema-converter-shex/test/testData/oldExtends.ts +++ b/packages/schema-converter-shex/test/testData/oldExtends.ts @@ -74,5 +74,5 @@ export const oldExtends: TestData = { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: ({\n "@id": "Entity";\n } | {\n "@id": "Person";\n })[];\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: ({\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n })[];\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/orSimple.ts b/packages/schema-converter-shex/test/testData/orSimple.ts index b23ac84..c46b291 100644 --- a/packages/schema-converter-shex/test/testData/orSimple.ts +++ b/packages/schema-converter-shex/test/testData/orSimple.ts @@ -49,5 +49,5 @@ export const orSimple: TestData = { Image: "https://example.com/Image", }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n primaryMedia: VideoShape | ImageShape;\n media?: (VideoShape | ImageShape)[];\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n primaryMedia: VideoShape | ImageShape;\n media?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/profile.ts b/packages/schema-converter-shex/test/testData/profile.ts index 05c427c..09dd5b4 100644 --- a/packages/schema-converter-shex/test/testData/profile.ts +++ b/packages/schema-converter-shex/test/testData/profile.ts @@ -726,5 +726,5 @@ srs:RSAPublicKeyShape { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf)\n */\n type: ({\n "@id": "Person";\n } | {\n "@id": "Person2";\n })[];\n /**\n * The formatted name of a person. Example: John Smith\n */\n fn?: string;\n /**\n * An alternate way to define a person\'s name.\n */\n name?: string;\n /**\n * The person\'s street address.\n */\n hasAddress?: (AddressShape)[];\n /**\n * The person\'s email.\n */\n hasEmail?: (EmailShape)[];\n /**\n * A link to the person\'s photo\n */\n hasPhoto?: {\n "@id": string;\n };\n /**\n * Photo link but in string form\n */\n img?: string;\n /**\n * Person\'s telephone number\n */\n hasTelephone?: (PhoneNumberShape)[];\n /**\n * An alternative way to define a person\'s telephone number using a string\n */\n phone?: string;\n /**\n * The name of the organization with which the person is affiliated\n */\n organizationName?: string;\n /**\n * The name of the person\'s role in their organization\n */\n role?: string;\n /**\n * A list of app origins that are trusted by this user\n */\n trustedApp?: (TrustedAppShape)[];\n /**\n * A list of RSA public keys that are associated with private keys the user holds.\n */\n key?: (RSAPublicKeyShape)[];\n /**\n * The user\'s LDP inbox to which apps can post notifications\n */\n inbox: {\n "@id": string;\n };\n /**\n * The user\'s preferences\n */\n preferencesFile?: {\n "@id": string;\n };\n /**\n * The location of a Solid storage server related to this WebId\n */\n storage?: {\n "@id": string;\n }[];\n /**\n * The user\'s account\n */\n account?: {\n "@id": string;\n };\n /**\n * A registry of all types used on the user\'s Pod (for private access only)\n */\n privateTypeIndex?: {\n "@id": string;\n }[];\n /**\n * A registry of all types used on the user\'s Pod (for public access)\n */\n publicTypeIndex?: {\n "@id": string;\n }[];\n /**\n * A list of WebIds for all the people this user knows.\n */\n knows?: {\n "@id": string;\n }[];\n}\n\nexport interface AddressShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The name of the user\'s country of residence\n */\n countryName?: string;\n /**\n * The name of the user\'s locality (City, Town etc.) of residence\n */\n locality?: string;\n /**\n * The user\'s postal code\n */\n postalCode?: string;\n /**\n * The name of the user\'s region (State, Province etc.) of residence\n */\n region?: string;\n /**\n * The user\'s street address\n */\n streetAddress?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface PhoneNumberShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * They type of Phone Number\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of a phone number as a tel link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface TrustedAppShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The level of access provided to this origin\n */\n mode: ({\n "@id": "Append";\n } | {\n "@id": "Control";\n } | {\n "@id": "Read";\n } | {\n "@id": "Write";\n })[];\n /**\n * The app origin the user trusts\n */\n origin: {\n "@id": string;\n };\n}\n\nexport interface RSAPublicKeyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * RSA Modulus\n */\n modulus: string;\n /**\n * RSA Exponent\n */\n exponent: number;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf)\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The formatted name of a person. Example: John Smith\n */\n fn?: string;\n /**\n * An alternate way to define a person\'s name.\n */\n name?: string;\n /**\n * The person\'s street address.\n */\n hasAddress?: LdSet;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * A link to the person\'s photo\n */\n hasPhoto?: {\n "@id": string;\n };\n /**\n * Photo link but in string form\n */\n img?: string;\n /**\n * Person\'s telephone number\n */\n hasTelephone?: LdSet;\n /**\n * An alternative way to define a person\'s telephone number using a string\n */\n phone?: string;\n /**\n * The name of the organization with which the person is affiliated\n */\n organizationName?: string;\n /**\n * The name of the person\'s role in their organization\n */\n role?: string;\n /**\n * A list of app origins that are trusted by this user\n */\n trustedApp?: LdSet;\n /**\n * A list of RSA public keys that are associated with private keys the user holds.\n */\n key?: LdSet;\n /**\n * The user\'s LDP inbox to which apps can post notifications\n */\n inbox: {\n "@id": string;\n };\n /**\n * The user\'s preferences\n */\n preferencesFile?: {\n "@id": string;\n };\n /**\n * The location of a Solid storage server related to this WebId\n */\n storage?: LdSet<{\n "@id": string;\n }>;\n /**\n * The user\'s account\n */\n account?: {\n "@id": string;\n };\n /**\n * A registry of all types used on the user\'s Pod (for private access only)\n */\n privateTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A registry of all types used on the user\'s Pod (for public access)\n */\n publicTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A list of WebIds for all the people this user knows.\n */\n knows?: LdSet<{\n "@id": string;\n }>;\n}\n\nexport interface AddressShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The name of the user\'s country of residence\n */\n countryName?: string;\n /**\n * The name of the user\'s locality (City, Town etc.) of residence\n */\n locality?: string;\n /**\n * The user\'s postal code\n */\n postalCode?: string;\n /**\n * The name of the user\'s region (State, Province etc.) of residence\n */\n region?: string;\n /**\n * The user\'s street address\n */\n streetAddress?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface PhoneNumberShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * They type of Phone Number\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of a phone number as a tel link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface TrustedAppShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The level of access provided to this origin\n */\n mode: LdSet<{\n "@id": "Append";\n } | {\n "@id": "Control";\n } | {\n "@id": "Read";\n } | {\n "@id": "Write";\n }>;\n /**\n * The app origin the user trusts\n */\n origin: {\n "@id": string;\n };\n}\n\nexport interface RSAPublicKeyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * RSA Modulus\n */\n modulus: string;\n /**\n * RSA Exponent\n */\n exponent: number;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/reducedProfile.ts b/packages/schema-converter-shex/test/testData/reducedProfile.ts index b94387c..a8a5402 100644 --- a/packages/schema-converter-shex/test/testData/reducedProfile.ts +++ b/packages/schema-converter-shex/test/testData/reducedProfile.ts @@ -219,5 +219,5 @@ srs:EmailShape EXTRA a { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person | Defines the node as a Person\n */\n type: ({\n "@id": "Person";\n } | {\n "@id": "Person2";\n })[];\n /**\n * The person\'s email.\n */\n hasEmail?: (EmailShape)[];\n /**\n * An alternate way to define a person\'s name\n */\n name?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person | Defines the node as a Person\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * An alternate way to define a person\'s name\n */\n name?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/reusedPredicates.ts b/packages/schema-converter-shex/test/testData/reusedPredicates.ts index 87a9141..faf9a4b 100644 --- a/packages/schema-converter-shex/test/testData/reusedPredicates.ts +++ b/packages/schema-converter-shex/test/testData/reusedPredicates.ts @@ -86,5 +86,5 @@ export const reusedPredicates: TestData = { }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface DocumentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Document";\n };\n vocabulary?: (VocabularyShape)[];\n law: LawShape;\n}\n\nexport interface LawShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Law";\n };\n name?: string[];\n path: {\n "@id": string;\n };\n}\n\nexport interface VocabularyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Vocabulary";\n };\n name: string;\n path?: {\n "@id": string;\n }[];\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface DocumentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Document";\n };\n vocabulary?: LdSet;\n law: LawShape;\n}\n\nexport interface LawShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Law";\n };\n name?: LdSet;\n path: {\n "@id": string;\n };\n}\n\nexport interface VocabularyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Vocabulary";\n };\n name: string;\n path?: LdSet<{\n "@id": string;\n }>;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/simple.ts b/packages/schema-converter-shex/test/testData/simple.ts index 3d863e0..211c4f6 100644 --- a/packages/schema-converter-shex/test/testData/simple.ts +++ b/packages/schema-converter-shex/test/testData/simple.ts @@ -46,5 +46,5 @@ export const simple: TestData = { mbox: { "@id": "http://xmlns.com/foaf/0.1/mbox", "@type": "@id" }, }, successfulTypings: - 'import {ContextDefinition} from "jsonld"\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n givenName: string[];\n familyName: string;\n phone?: {\n "@id": string;\n }[];\n mbox: {\n "@id": string;\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n givenName: LdSet;\n familyName: string;\n phone?: LdSet<{\n "@id": string;\n }>;\n mbox: {\n "@id": string;\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/testData.ts b/packages/schema-converter-shex/test/testData/testData.ts index 04dac04..cfc562f 100644 --- a/packages/schema-converter-shex/test/testData/testData.ts +++ b/packages/schema-converter-shex/test/testData/testData.ts @@ -9,6 +9,7 @@ import { reusedPredicates } from "./reusedPredicates"; import { oldExtends } from "./oldExtends"; import { orSimple } from "./orSimple"; import { andSimple } from "./andSimple"; +import { eachOfAndSimple } from "./eachOfAndSimple"; export interface TestData { name: string; @@ -30,4 +31,5 @@ export const testData: TestData[] = [ reusedPredicates, orSimple, andSimple, + eachOfAndSimple, ]; From 4905197d2335791ed68bb3ecb7291de85a2cd8c1 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 15:44:27 -0500 Subject: [PATCH 23/32] Set Refactor for @ldo/ldo --- packages/ldo/src/LdoBuilder.ts | 5 +++-- packages/ldo/src/util.ts | 4 ++-- packages/ldo/test/LdoDataset.test.ts | 14 +++++++------- packages/ldo/test/profileData.ts | 26 +++++++++++++------------- 4 files changed, 25 insertions(+), 24 deletions(-) diff --git a/packages/ldo/src/LdoBuilder.ts b/packages/ldo/src/LdoBuilder.ts index 06fd09c..b20fa0a 100644 --- a/packages/ldo/src/LdoBuilder.ts +++ b/packages/ldo/src/LdoBuilder.ts @@ -2,6 +2,7 @@ import type { GraphNode, QuadMatch, SubjectNode } from "@ldo/rdf-utils"; import type { LanguageOrdering, JsonldDatasetProxyBuilder, + LdSet, } from "@ldo/jsonld-dataset-proxy"; import type { ShapeType } from "./ShapeType"; import type { LdoBase } from "./util"; @@ -93,7 +94,7 @@ export class LdoBuilder { predicate: QuadMatch[1] | string, object?: QuadMatch[2] | string, graph?: QuadMatch[3] | string, - ): Type[] { + ): LdSet { return this.jsonldDatasetProxyBuilder.matchSubject( predicate != undefined ? normalizeNodeName(predicate) : undefined, object != undefined ? normalizeNodeName(object) : undefined, @@ -123,7 +124,7 @@ export class LdoBuilder { subject?: QuadMatch[0] | string, predicate?: QuadMatch[1] | string, graph?: QuadMatch[3] | string, - ): Type[] { + ): LdSet { return this.jsonldDatasetProxyBuilder.matchObject( subject != undefined ? normalizeNodeName(subject) : undefined, predicate != undefined ? normalizeNodeName(predicate) : undefined, diff --git a/packages/ldo/src/util.ts b/packages/ldo/src/util.ts index 322a3b7..8dfa3cb 100644 --- a/packages/ldo/src/util.ts +++ b/packages/ldo/src/util.ts @@ -1,6 +1,6 @@ import { namedNode } from "@rdfjs/data-model"; import type { Dataset, Quad } from "@rdfjs/types"; -import type { ArrayProxy, SubjectProxy } from "@ldo/jsonld-dataset-proxy"; +import type { SetProxy, SubjectProxy } from "@ldo/jsonld-dataset-proxy"; import { getProxyFromObject, _getUnderlyingDataset, @@ -57,7 +57,7 @@ export function isTransactionalDataset( export function getTransactionalDatasetFromLdo( ldo: LdoBase, -): [ITransactionDataset, SubjectProxy | ArrayProxy] { +): [ITransactionDataset, SubjectProxy | SetProxy] { const proxy = getProxyFromObject(ldo); const dataset = proxy[_getUnderlyingDataset]; if ( diff --git a/packages/ldo/test/LdoDataset.test.ts b/packages/ldo/test/LdoDataset.test.ts index 56e7671..8a54fc2 100644 --- a/packages/ldo/test/LdoDataset.test.ts +++ b/packages/ldo/test/LdoDataset.test.ts @@ -3,7 +3,7 @@ import { createDataset } from "@ldo/dataset"; import type { SolidProfileShape } from "./profileData"; import { ProfileShapeType } from "./profileData"; import type { LdoBuilder, LdoDataset } from "../src"; -import { createLdoDataset, graphOf, parseRdf, toTurtle } from "../src"; +import { createLdoDataset, graphOf, parseRdf, toTurtle, set } from "../src"; import { sampleJsonld, sampleTurtle } from "./sampleData"; import type { SubjectProxy } from "@ldo/jsonld-dataset-proxy"; import { _proxyContext } from "@ldo/jsonld-dataset-proxy"; @@ -33,7 +33,7 @@ describe("LdoDataset", () => { it("initializes a profile using the fromJson method", () => { const profile = profileBuilder.fromJson({ - type: [{ "@id": "Person" }, { "@id": "Person2" }], + type: set({ "@id": "Person" }, { "@id": "Person2" }), inbox: { "@id": "https://inbox.com" }, fn: "Diplo", }); @@ -45,7 +45,7 @@ describe("LdoDataset", () => { it("initializes a profile with an id using the fromJson method", () => { const profile = profileBuilder.fromJson({ "@id": "https://example.com/person1", - type: [{ "@id": "Person" }, { "@id": "Person2" }], + type: set({ "@id": "Person" }, { "@id": "Person2" }), inbox: { "@id": "https://inbox.com" }, fn: "Diplo", }); @@ -128,7 +128,7 @@ describe("LdoDataset", () => { "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://xmlns.com/foaf/0.1/Person", ); - expect(profiles[0].fn).toBe("Jackson Morgan"); + expect(profiles.toArray()[0].fn).toBe("Jackson Morgan"); }); it("Handles alternate optionality for subject match", () => { @@ -137,7 +137,7 @@ describe("LdoDataset", () => { undefined, "https://someGraph.com", ); - expect(profiles.length).toBe(0); + expect(profiles.size).toBe(0); }); it("Lets a match query retrieve objects", () => { @@ -145,7 +145,7 @@ describe("LdoDataset", () => { null, "http://xmlns.com/foaf/0.1/primaryTopic", ); - expect(profiles[0].fn).toBe("Jackson Morgan"); + expect(profiles.toArray()[0].fn).toBe("Jackson Morgan"); }); it("Handles alternate optionality for object match", () => { @@ -154,7 +154,7 @@ describe("LdoDataset", () => { undefined, "https://someGraph.com", ); - expect(profiles.length).toBe(0); + expect(profiles.size).toBe(0); }); it("Sets language preferences", () => { diff --git a/packages/ldo/test/profileData.ts b/packages/ldo/test/profileData.ts index a537eb3..74d823d 100644 --- a/packages/ldo/test/profileData.ts +++ b/packages/ldo/test/profileData.ts @@ -1,6 +1,6 @@ import type { Schema } from "shexj"; import type { ContextDefinition } from "jsonld"; -import type { ShapeType } from "../src"; +import type { LdSet, ShapeType } from "../src"; export const profileShex: Schema = { type: "Schema", @@ -978,7 +978,7 @@ export interface SolidProfileShape { /** * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf) */ - type: ({ "@id": "Person" } | { "@id": "Person2" })[]; + type: LdSet<{ "@id": "Person" } | { "@id": "Person2" }>; /** * The formatted name of a person. Example: John Smith */ @@ -990,11 +990,11 @@ export interface SolidProfileShape { /** * The person's street address. */ - hasAddress?: AddressShape[]; + hasAddress?: LdSet; /** * The person's email. */ - hasEmail?: EmailShape[]; + hasEmail?: LdSet; /** * A link to the person's photo */ @@ -1006,7 +1006,7 @@ export interface SolidProfileShape { /** * Person's telephone number */ - hasTelephone?: PhoneNumberShape[]; + hasTelephone?: LdSet; /** * An alternative way to define a person's telephone number using a string */ @@ -1022,11 +1022,11 @@ export interface SolidProfileShape { /** * A list of app origins that are trusted by this user */ - trustedApp?: TrustedAppShape[]; + trustedApp?: LdSet; /** * A list of RSA public keys that are associated with private keys the user holds. */ - key?: RSAPublicKeyShape[]; + key?: LdSet; /** * The user's LDP inbox to which apps can post notifications */ @@ -1038,7 +1038,7 @@ export interface SolidProfileShape { /** * The location of a Solid storage server related to this WebId */ - storage?: string[]; + storage?: LdSet; /** * The user's account */ @@ -1046,15 +1046,15 @@ export interface SolidProfileShape { /** * A registry of all types used on the user's Pod (for private access only) */ - privateTypeIndex?: string[]; + privateTypeIndex?: LdSet; /** * A registry of all types used on the user's Pod (for public access) */ - publicTypeIndex?: string[]; + publicTypeIndex?: LdSet; /** * A list of WebIds for all the people this user knows. */ - knows?: SolidProfileShape[]; + knows?: LdSet; } export interface TrustedAppShape { @@ -1063,12 +1063,12 @@ export interface TrustedAppShape { /** * The level of access provided to this origin */ - mode: ( + mode: LdSet< | { "@id": "Append" } | { "@id": "Control" } | { "@id": "Read" } | { "@id": "Write" } - )[]; + >; /** * The app origin the user trusts */ From 2b92fb47a9de908c0d331fe332a22ea2809648c8 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 17:40:35 -0500 Subject: [PATCH 24/32] Before JsonLdContextBuilder redo --- packages/cli/src/templates/context.ejs | 2 +- packages/cli/src/templates/typings.ejs | 2 +- .../src/typing/ShexJTypingTransformer.ts | 2 +- packages/solid/package.json | 2 +- packages/solid/src/.ldo/solid.context.ts | 97 ++++++++++++++----- packages/solid/src/.ldo/solid.typings.ts | 22 ++--- packages/solid/src/.ldo/wac.context.ts | 63 ++++++------ packages/solid/src/.ldo/wac.typings.ts | 20 ++-- packages/solid/src/SolidLdoDataset.ts | 2 +- packages/solid/src/resource/wac/setWacRule.ts | 17 ++-- 10 files changed, 143 insertions(+), 86 deletions(-) diff --git a/packages/cli/src/templates/context.ejs b/packages/cli/src/templates/context.ejs index e70eb97..4f9ccf2 100644 --- a/packages/cli/src/templates/context.ejs +++ b/packages/cli/src/templates/context.ejs @@ -1,4 +1,4 @@ -import { LdoJsonldContext } from "@ldo/jsonld-dataset-proxy"; +import { LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= diff --git a/packages/cli/src/templates/typings.ejs b/packages/cli/src/templates/typings.ejs index fe71323..2ec78c8 100644 --- a/packages/cli/src/templates/typings.ejs +++ b/packages/cli/src/templates/typings.ejs @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/ldo"; /** * ============================================================================= diff --git a/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts b/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts index 37d14ca..05cff51 100644 --- a/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts +++ b/packages/schema-converter-shex/src/typing/ShexJTypingTransformer.ts @@ -115,7 +115,7 @@ export const ShexJTypingTransformer = ShexJTraverser.createTransformer< newInterface.members.push( dom.create.property( "@context", - dom.create.namedTypeReference("ContextDefinition"), + dom.create.namedTypeReference("LdoJsonldContext"), dom.DeclarationFlags.Optional, ), ); diff --git a/packages/solid/package.json b/packages/solid/package.json index 20c21e7..31ccfc8 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -7,7 +7,7 @@ "example": "ts-node ./example/example.ts", "build": "tsc --project tsconfig.build.json", "watch": "tsc --watch", - "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage", + "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage -t \"sets wac rules for a resource that\"", "test:watch": "jest --watch", "prepublishOnly": "npm run test && npm run build", "build:ldo": "ldo build --input src/.shapes --output src/.ldo", diff --git a/packages/solid/src/.ldo/solid.context.ts b/packages/solid/src/.ldo/solid.context.ts index 8244ade..6fb1a73 100644 --- a/packages/solid/src/.ldo/solid.context.ts +++ b/packages/solid/src/.ldo/solid.context.ts @@ -1,38 +1,87 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= * solidContext: JSONLD Context for solid * ============================================================================= */ -export const solidContext: ContextDefinition = { - type: { - "@id": "@type", - "@container": "@set", +export const solidContext: LdoJsonldContext = { + Container: { + "@id": "http://www.w3.org/ns/ldp#Container", + "@context": { + type: { + "@id": "@type", + "@isCollection": true, + }, + modified: { + "@id": "http://purl.org/dc/terms/modified", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + contains: { + "@id": "http://www.w3.org/ns/ldp#contains", + "@type": "@id", + "@isCollection": true, + }, + mtime: { + "@id": "http://www.w3.org/ns/posix/stat#mtime", + "@type": "http://www.w3.org/2001/XMLSchema#decimal", + }, + size: { + "@id": "http://www.w3.org/ns/posix/stat#size", + "@type": "http://www.w3.org/2001/XMLSchema#integer", + }, + }, }, - Container: "http://www.w3.org/ns/ldp#Container", - Resource: "http://www.w3.org/ns/ldp#Resource", - modified: { - "@id": "http://purl.org/dc/terms/modified", - "@type": "http://www.w3.org/2001/XMLSchema#string", + Resource: { + "@id": "http://www.w3.org/ns/ldp#Resource", + "@context": { + type: { + "@id": "@type", + "@isCollection": true, + }, + modified: { + "@id": "http://purl.org/dc/terms/modified", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + contains: { + "@id": "http://www.w3.org/ns/ldp#contains", + "@type": "@id", + "@isCollection": true, + }, + mtime: { + "@id": "http://www.w3.org/ns/posix/stat#mtime", + "@type": "http://www.w3.org/2001/XMLSchema#decimal", + }, + size: { + "@id": "http://www.w3.org/ns/posix/stat#size", + "@type": "http://www.w3.org/2001/XMLSchema#integer", + }, + }, }, - contains: { - "@id": "http://www.w3.org/ns/ldp#contains", - "@type": "@id", - "@container": "@set", - }, - Resource2: "http://www.w3.org/ns/iana/media-types/text/turtle#Resource", - mtime: { - "@id": "http://www.w3.org/ns/posix/stat#mtime", - "@type": "http://www.w3.org/2001/XMLSchema#decimal", - }, - size: { - "@id": "http://www.w3.org/ns/posix/stat#size", - "@type": "http://www.w3.org/2001/XMLSchema#integer", + Resource2: { + "@id": "http://www.w3.org/ns/iana/media-types/text/turtle#Resource", + "@context": { + type: { + "@id": "@type", + "@isCollection": true, + }, + modified: { + "@id": "http://purl.org/dc/terms/modified", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + mtime: { + "@id": "http://www.w3.org/ns/posix/stat#mtime", + "@type": "http://www.w3.org/2001/XMLSchema#decimal", + }, + size: { + "@id": "http://www.w3.org/ns/posix/stat#size", + "@type": "http://www.w3.org/2001/XMLSchema#integer", + }, + }, }, storage: { "@id": "http://www.w3.org/ns/pim/space#storage", "@type": "@id", - "@container": "@set", + "@isCollection": true, }, }; diff --git a/packages/solid/src/.ldo/solid.typings.ts b/packages/solid/src/.ldo/solid.typings.ts index b5e6276..0405e75 100644 --- a/packages/solid/src/.ldo/solid.typings.ts +++ b/packages/solid/src/.ldo/solid.typings.ts @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/ldo"; /** * ============================================================================= @@ -11,18 +11,18 @@ import { ContextDefinition } from "jsonld"; */ export interface Container { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * A container on a Solid server */ - type?: ( + type?: LdSet< | { "@id": "Container"; } | { "@id": "Resource"; } - )[]; + >; /** * Date modified */ @@ -30,7 +30,7 @@ export interface Container { /** * Defines a Solid Resource */ - contains?: Resource[]; + contains?: LdSet; /** * ? */ @@ -46,18 +46,18 @@ export interface Container { */ export interface Resource { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * Any resource on a Solid server */ - type?: ( + type?: LdSet< | { "@id": "Resource"; } | { "@id": "Resource2"; } - )[]; + >; /** * Date modified */ @@ -77,8 +77,8 @@ export interface Resource { */ export interface ProfileWithStorage { "@id"?: string; - "@context"?: ContextDefinition; - storage?: { + "@context"?: LdoJsonldContext; + storage?: LdSet<{ "@id": string; - }[]; + }>; } diff --git a/packages/solid/src/.ldo/wac.context.ts b/packages/solid/src/.ldo/wac.context.ts index 22df8b2..6f19691 100644 --- a/packages/solid/src/.ldo/wac.context.ts +++ b/packages/solid/src/.ldo/wac.context.ts @@ -1,43 +1,50 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= * wacContext: JSONLD Context for wac * ============================================================================= */ -export const wacContext: ContextDefinition = { +export const wacContext: LdoJsonldContext = { type: { "@id": "@type", }, - Authorization: "http://www.w3.org/ns/auth/acl#Authorization", - accessTo: { - "@id": "http://www.w3.org/ns/auth/acl#accessTo", - "@type": "@id", - }, - default: { - "@id": "http://www.w3.org/ns/auth/acl#default", - "@type": "@id", - }, - agent: { - "@id": "http://www.w3.org/ns/auth/acl#agent", - "@type": "@id", - "@container": "@set", - }, - agentGroup: { - "@id": "http://www.w3.org/ns/auth/acl#agentGroup", - "@type": "@id", - "@container": "@set", - }, - agentClass: { - "@id": "http://www.w3.org/ns/auth/acl#agentClass", - "@container": "@set", + Authorization: { + "@id": "http://www.w3.org/ns/auth/acl#Authorization", + "@context": { + type: { + "@id": "@type", + }, + accessTo: { + "@id": "http://www.w3.org/ns/auth/acl#accessTo", + "@type": "@id", + }, + default: { + "@id": "http://www.w3.org/ns/auth/acl#default", + "@type": "@id", + }, + agent: { + "@id": "http://www.w3.org/ns/auth/acl#agent", + "@type": "@id", + "@isCollection": true, + }, + agentGroup: { + "@id": "http://www.w3.org/ns/auth/acl#agentGroup", + "@type": "@id", + "@isCollection": true, + }, + agentClass: { + "@id": "http://www.w3.org/ns/auth/acl#agentClass", + "@isCollection": true, + }, + mode: { + "@id": "http://www.w3.org/ns/auth/acl#mode", + "@isCollection": true, + }, + }, }, AuthenticatedAgent: "http://www.w3.org/ns/auth/acl#AuthenticatedAgent", Agent: "http://xmlns.com/foaf/0.1/Agent", - mode: { - "@id": "http://www.w3.org/ns/auth/acl#mode", - "@container": "@set", - }, Read: "http://www.w3.org/ns/auth/acl#Read", Write: "http://www.w3.org/ns/auth/acl#Write", Append: "http://www.w3.org/ns/auth/acl#Append", diff --git a/packages/solid/src/.ldo/wac.typings.ts b/packages/solid/src/.ldo/wac.typings.ts index 456c5ed..40860e0 100644 --- a/packages/solid/src/.ldo/wac.typings.ts +++ b/packages/solid/src/.ldo/wac.typings.ts @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/ldo"; /** * ============================================================================= @@ -11,7 +11,7 @@ import { ContextDefinition } from "jsonld"; */ export interface Authorization { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * Denotes this as an acl:Authorization */ @@ -33,30 +33,30 @@ export interface Authorization { /** * An agent is a person, social entity or software identified by a URI, e.g., a WebID denotes an agent */ - agent?: { + agent?: LdSet<{ "@id": string; - }[]; + }>; /** * Denotes a group of agents being given the access permission */ - agentGroup?: { + agentGroup?: LdSet<{ "@id": string; - }[]; + }>; /** * An agent class is a class of persons or entities identified by a URI. */ - agentClass?: ( + agentClass?: LdSet< | { "@id": "AuthenticatedAgent"; } | { "@id": "Agent"; } - )[]; + >; /** * Denotes a class of operations that the agents can perform on a resource. */ - mode?: ( + mode?: LdSet< | { "@id": "Read"; } @@ -69,5 +69,5 @@ export interface Authorization { | { "@id": "Control"; } - )[]; + >; } diff --git a/packages/solid/src/SolidLdoDataset.ts b/packages/solid/src/SolidLdoDataset.ts index d95bf44..cfd46f4 100644 --- a/packages/solid/src/SolidLdoDataset.ts +++ b/packages/solid/src/SolidLdoDataset.ts @@ -148,7 +148,7 @@ export class SolidLdoDataset extends LdoDataset implements ISolidLdoDataset { const profile = this.usingType(ProfileWithStorageShapeType).fromSubject( webId, ); - if (profile.storage && profile.storage.length > 0) { + if (profile.storage && profile.storage.size > 0) { const containers = profile.storage.map((storageNode) => this.getResource(storageNode["@id"] as ContainerUri), ); diff --git a/packages/solid/src/resource/wac/setWacRule.ts b/packages/solid/src/resource/wac/setWacRule.ts index adbac93..70a0c30 100644 --- a/packages/solid/src/resource/wac/setWacRule.ts +++ b/packages/solid/src/resource/wac/setWacRule.ts @@ -52,11 +52,10 @@ export async function setWacRuleForAclUri( .usingType(AuthorizationShapeType) .fromSubject(`${aclUri}#${v4()}`); authorization.type = { "@id": "Authorization" }; - if (accessModeList.read) authorization.mode?.push({ "@id": "Read" }); - if (accessModeList.write) authorization.mode?.push({ "@id": "Write" }); - if (accessModeList.append) authorization.mode?.push({ "@id": "Append" }); - if (accessModeList.control) - authorization.mode?.push({ "@id": "Control" }); + if (accessModeList.read) authorization.mode?.add({ "@id": "Read" }); + if (accessModeList.write) authorization.mode?.add({ "@id": "Write" }); + if (accessModeList.append) authorization.mode?.add({ "@id": "Append" }); + if (accessModeList.control) authorization.mode?.add({ "@id": "Control" }); authorization.accessTo = { "@id": accessTo }; if (isContainerUri(accessTo)) { authorization.default = { "@id": accessTo }; @@ -66,11 +65,11 @@ export async function setWacRuleForAclUri( const authorization = ruleMap[accessModeListHash]; // Add agents to the rule if (type === "public") { - authorization.agentClass?.push({ "@id": "Agent" }); + authorization.agentClass?.add({ "@id": "Agent" }); } else if (type === "authenticated") { - authorization.agentClass?.push({ "@id": "AuthenticatedAgent" }); + authorization.agentClass?.add({ "@id": "AuthenticatedAgent" }); } else if (type === "agent" && agentId) { - authorization.agent?.push({ "@id": agentId }); + authorization.agent?.add({ "@id": agentId }); } } @@ -81,6 +80,8 @@ export async function setWacRuleForAclUri( addRuleToDataset("agent", accessModeList, agentUri); }); + console.log(dataset.toString()); + // Save to Pod const response = await fetch(aclUri, { method: "PUT", From d8a68fa8292623d71cdfd8d724e26ed8ab120a9b Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 20:53:32 -0500 Subject: [PATCH 25/32] Fixed problems with the generator --- .../src/context/JsonLdContextBuilder.ts | 76 +- .../test/context.test.ts | 2 + .../test/testData/activityPub.ts | 1342 ++++++----------- .../test/testData/andSimple.ts | 10 +- .../test/testData/circular.ts | 31 +- .../test/testData/eachOfAndSimple.ts | 11 +- .../test/testData/extendsSimple.ts | 8 +- .../test/testData/oldExtends.ts | 8 +- .../test/testData/orSimple.ts | 15 +- .../test/testData/profile.ts | 94 +- .../test/testData/reducedProfile.ts | 18 +- .../test/testData/reusedPredicates.ts | 26 +- .../test/testData/simple.ts | 7 +- .../schema-converter-shex/test/typing.test.ts | 2 + packages/solid/package.json | 2 +- packages/solid/src/.ldo/solid.context.ts | 21 + packages/solid/src/.ldo/wac.context.ts | 26 + packages/solid/src/resource/wac/setWacRule.ts | 2 - 18 files changed, 734 insertions(+), 967 deletions(-) diff --git a/packages/schema-converter-shex/src/context/JsonLdContextBuilder.ts b/packages/schema-converter-shex/src/context/JsonLdContextBuilder.ts index 1c67445..bd7ff66 100644 --- a/packages/schema-converter-shex/src/context/JsonLdContextBuilder.ts +++ b/packages/schema-converter-shex/src/context/JsonLdContextBuilder.ts @@ -76,14 +76,21 @@ export class JsonLdContextBuilder { return this.iriTypes[rdfType] as JsonLdContextBuilder; } - addSubject(iri: string, rdfType?: string, annotations?: Annotation[]) { + private getRelevantBuilders(rdfType?: string): JsonLdContextBuilder[] { const relevantBuilder = this.getRelevantBuilder(rdfType); - if (!relevantBuilder.iriAnnotations[iri]) { - relevantBuilder.iriAnnotations[iri] = []; - } - if (annotations && annotations.length > 0) { - relevantBuilder.iriAnnotations[iri].push(...annotations); - } + return relevantBuilder === this ? [this] : [this, relevantBuilder]; + } + + addSubject(iri: string, rdfType?: string, annotations?: Annotation[]) { + const relevantBuilders = this.getRelevantBuilders(rdfType); + relevantBuilders.forEach((relevantBuilder) => { + if (!relevantBuilder.iriAnnotations[iri]) { + relevantBuilder.iriAnnotations[iri] = []; + } + if (annotations && annotations.length > 0) { + relevantBuilder.iriAnnotations[iri].push(...annotations); + } + }); } addPredicate( @@ -93,41 +100,30 @@ export class JsonLdContextBuilder { rdfType?: string, annotations?: Annotation[], ) { - const relevantBuilder = this.getRelevantBuilder(rdfType); - relevantBuilder.addSubject(iri, undefined, annotations); - if (!relevantBuilder.iriTypes[iri]) { - relevantBuilder.iriTypes[iri] = expandedTermDefinition; - if (isContainer) { - relevantBuilder.iriTypes[iri]["@isCollection"] = true; - } - } else { - const curDef = relevantBuilder.iriTypes[iri]; - const newDef = expandedTermDefinition; - // TODO: if you reuse the same predicate with a different cardinality, - // it will overwrite the past cardinality. Perhapse we might want to - // split contexts in the various shapes. - if (isContainer) { - curDef["@isCollection"] = true; - } - // If the old and new versions both have types - if (curDef["@type"] && newDef["@type"]) { - if ( - Array.isArray(curDef["@type"]) && - !(curDef["@type"] as string[]).includes(newDef["@type"]) - ) { - curDef["@type"].push(newDef["@type"]); - } else if ( - typeof curDef["@type"] === "string" && - curDef["@type"] !== newDef["@type"] - ) { - // The typings are incorrect. String arrays are allowed on @type - // see https://w3c.github.io/json-ld-syntax/#example-specifying-multiple-types-for-a-node - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - curDef["@type"] = [curDef["@type"], newDef["@type"]]; + const relevantBuilders = this.getRelevantBuilders(rdfType); + relevantBuilders.forEach((relevantBuilder) => { + relevantBuilder.addSubject(iri, undefined, annotations); + if (!relevantBuilder.iriTypes[iri]) { + relevantBuilder.iriTypes[iri] = expandedTermDefinition; + if (isContainer) { + relevantBuilder.iriTypes[iri]["@isCollection"] = true; + } + } else { + const curDef = relevantBuilder.iriTypes[iri]; + const newDef = expandedTermDefinition; + if (isContainer) { + curDef["@isCollection"] = true; + } + // If the old and new versions both have types + if (curDef["@type"] && newDef["@type"]) { + if (curDef["@type"] !== newDef["@type"]) { + console.warn( + `You've specified that a specific field "${iri}" can have an object of multiple literal types (${curDef["@type"]} or ${newDef["@type"]}). This is not expressable in JSON-LD context, and we will randomly select one type to use.`, + ); + } } } - } + }); } generateNames(): Record { diff --git a/packages/schema-converter-shex/test/context.test.ts b/packages/schema-converter-shex/test/context.test.ts index 152eb4a..72e6c82 100644 --- a/packages/schema-converter-shex/test/context.test.ts +++ b/packages/schema-converter-shex/test/context.test.ts @@ -3,6 +3,8 @@ import { shexjToContext } from "../src/context/shexjToContext"; import parser from "@shexjs/parser"; import type { Schema } from "shexj"; +console.warn = () => {}; + describe("context", () => { testData.forEach(({ name, shexc, successfulContext }) => { it(`Creates a context for ${name}`, async () => { diff --git a/packages/schema-converter-shex/test/testData/activityPub.ts b/packages/schema-converter-shex/test/testData/activityPub.ts index 7c270c5..05aa0ae 100644 --- a/packages/schema-converter-shex/test/testData/activityPub.ts +++ b/packages/schema-converter-shex/test/testData/activityPub.ts @@ -806,6 +806,9 @@ export const activityPub: TestData = { sampleTurtle: "", baseNode: "", successfulContext: { + type: { + "@id": "@type", + }, Object: { "@id": "https://www.w3.org/ns/activitystreams#Object", "@context": { @@ -829,11 +832,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -843,11 +842,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -898,11 +893,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -916,8 +907,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -950,6 +940,11 @@ export const activityPub: TestData = { }, }, }, + attachment: { + "@id": "https://www.w3.org/ns/activitystreams#attachment", + "@type": "@id", + "@isCollection": true, + }, Link: { "@id": "https://www.w3.org/ns/activitystreams#Link", "@context": { @@ -971,11 +966,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, hreflang: { @@ -997,6 +988,75 @@ export const activityPub: TestData = { }, }, }, + href: { + "@id": "https://www.w3.org/ns/activitystreams#href", + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", + }, + rel: { + "@id": "https://www.w3.org/ns/activitystreams#rel", + "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, + }, + mediaType: { + "@id": "https://www.w3.org/ns/activitystreams#mediaType", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + name: { + "@id": "https://www.w3.org/ns/activitystreams#name", + "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, + }, + hreflang: { + "@id": "https://www.w3.org/ns/activitystreams#hreflang", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + height: { + "@id": "https://www.w3.org/ns/activitystreams#height", + "@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", + }, + width: { + "@id": "https://www.w3.org/ns/activitystreams#width", + "@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", + }, + preview: { + "@id": "https://www.w3.org/ns/activitystreams#preview", + "@type": "@id", + "@isCollection": true, + }, + attributedTo: { + "@id": "https://www.w3.org/ns/activitystreams#attributedTo", + "@type": "@id", + "@isCollection": true, + }, + audience: { + "@id": "https://www.w3.org/ns/activitystreams#audience", + "@type": "@id", + "@isCollection": true, + }, + content: { + "@id": "https://www.w3.org/ns/activitystreams#content", + "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, + }, + context: { + "@id": "https://www.w3.org/ns/activitystreams#context", + "@type": "@id", + "@isCollection": true, + }, + endTime: { + "@id": "https://www.w3.org/ns/activitystreams#endTime", + "@type": "http://www.w3.org/2001/XMLSchema#dateTime", + }, + generator: { + "@id": "https://www.w3.org/ns/activitystreams#generator", + "@type": "@id", + "@isCollection": true, + }, + icon: { + "@id": "https://www.w3.org/ns/activitystreams#icon", + "@type": "@id", + "@isCollection": true, + }, Document: { "@id": "https://www.w3.org/ns/activitystreams#Document", "@context": { @@ -1020,11 +1080,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1034,11 +1090,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1089,11 +1141,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1107,8 +1155,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1164,11 +1211,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1178,11 +1221,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1233,11 +1272,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1251,8 +1286,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1285,6 +1319,29 @@ export const activityPub: TestData = { }, }, }, + image: { + "@id": "https://www.w3.org/ns/activitystreams#image", + "@type": "@id", + "@isCollection": true, + }, + inReplyTo: { + "@id": "https://www.w3.org/ns/activitystreams#inReplyTo", + "@type": "@id", + "@isCollection": true, + }, + location: { + "@id": "https://www.w3.org/ns/activitystreams#location", + "@type": "@id", + "@isCollection": true, + }, + published: { + "@id": "https://www.w3.org/ns/activitystreams#published", + "@type": "http://www.w3.org/2001/XMLSchema#dateTime", + }, + replies: { + "@id": "https://www.w3.org/ns/activitystreams#replies", + "@type": "@id", + }, Collection: { "@id": "https://www.w3.org/ns/activitystreams#Collection", "@context": { @@ -1308,11 +1365,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1322,11 +1375,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1386,11 +1435,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1404,8 +1449,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1438,6 +1482,10 @@ export const activityPub: TestData = { }, }, }, + totalItems: { + "@id": "https://www.w3.org/ns/activitystreams#totalItems", + "@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", + }, current: { "@id": "https://www.w3.org/ns/activitystreams#current", "@type": "@id", @@ -1465,11 +1513,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1479,11 +1523,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1543,11 +1583,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1561,8 +1597,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1615,6 +1650,58 @@ export const activityPub: TestData = { "@id": "https://www.w3.org/ns/activitystreams#last", "@type": "@id", }, + items: { + "@id": "https://www.w3.org/ns/activitystreams#items", + "@type": "@id", + "@isCollection": true, + }, + startTime: { + "@id": "https://www.w3.org/ns/activitystreams#startTime", + "@type": "http://www.w3.org/2001/XMLSchema#dateTime", + }, + summary: { + "@id": "https://www.w3.org/ns/activitystreams#summary", + "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, + }, + tag: { + "@id": "https://www.w3.org/ns/activitystreams#tag", + "@type": "@id", + "@isCollection": true, + }, + updated: { + "@id": "https://www.w3.org/ns/activitystreams#updated", + "@type": "http://www.w3.org/2001/XMLSchema#dateTime", + }, + url: { + "@id": "https://www.w3.org/ns/activitystreams#url", + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", + "@isCollection": true, + }, + to: { + "@id": "https://www.w3.org/ns/activitystreams#to", + "@type": "@id", + "@isCollection": true, + }, + bto: { + "@id": "https://www.w3.org/ns/activitystreams#bto", + "@type": "@id", + "@isCollection": true, + }, + cc: { + "@id": "https://www.w3.org/ns/activitystreams#cc", + "@type": "@id", + "@isCollection": true, + }, + bcc: { + "@id": "https://www.w3.org/ns/activitystreams#bcc", + "@type": "@id", + "@isCollection": true, + }, + duration: { + "@id": "https://www.w3.org/ns/activitystreams#duration", + "@type": "http://www.w3.org/2001/XMLSchema#duration", + }, Activity: { "@id": "https://www.w3.org/ns/activitystreams#Activity", "@context": { @@ -1638,11 +1725,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1652,11 +1735,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1707,11 +1786,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1725,8 +1800,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1789,6 +1863,36 @@ export const activityPub: TestData = { }, }, }, + actor: { + "@id": "https://www.w3.org/ns/activitystreams#actor", + "@type": "@id", + "@isCollection": true, + }, + object: { + "@id": "https://www.w3.org/ns/activitystreams#object", + "@type": "@id", + "@isCollection": true, + }, + target: { + "@id": "https://www.w3.org/ns/activitystreams#target", + "@type": "@id", + "@isCollection": true, + }, + result: { + "@id": "https://www.w3.org/ns/activitystreams#result", + "@type": "@id", + "@isCollection": true, + }, + origin: { + "@id": "https://www.w3.org/ns/activitystreams#origin", + "@type": "@id", + "@isCollection": true, + }, + instrument: { + "@id": "https://www.w3.org/ns/activitystreams#instrument", + "@type": "@id", + "@isCollection": true, + }, IntransitiveActivity: { "@id": "https://www.w3.org/ns/activitystreams#IntransitiveActivity", "@context": { @@ -1812,11 +1916,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -1826,11 +1926,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -1881,11 +1977,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -1899,8 +1991,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -1986,11 +2077,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2000,11 +2087,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2064,11 +2147,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2082,8 +2161,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2139,11 +2217,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2153,11 +2227,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2217,11 +2287,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2235,8 +2301,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2273,6 +2338,10 @@ export const activityPub: TestData = { }, }, }, + startIndex: { + "@id": "https://www.w3.org/ns/activitystreams#startIndex", + "@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger", + }, Accept: { "@id": "https://www.w3.org/ns/activitystreams#Accept", "@context": { @@ -2296,11 +2365,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2310,11 +2375,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2365,11 +2426,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2383,8 +2440,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2470,11 +2526,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2484,11 +2536,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2539,11 +2587,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2557,8 +2601,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2644,11 +2687,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2658,11 +2697,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2713,11 +2748,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2731,8 +2762,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2818,11 +2848,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -2832,11 +2858,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -2887,11 +2909,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -2905,8 +2923,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -2992,11 +3009,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3006,11 +3019,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3061,11 +3070,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3079,8 +3084,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -3166,11 +3170,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3180,11 +3180,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3235,11 +3231,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3253,8 +3245,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -3340,11 +3331,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3354,11 +3341,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3409,11 +3392,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3427,8 +3406,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -3514,11 +3492,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3528,11 +3502,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3583,11 +3553,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3601,8 +3567,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -3688,11 +3653,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3702,11 +3663,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3757,11 +3714,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3775,8 +3728,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -3862,11 +3814,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -3876,11 +3824,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -3931,11 +3875,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -3949,8 +3889,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4036,11 +3975,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4050,11 +3985,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4105,11 +4036,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4123,8 +4050,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4210,11 +4136,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4224,11 +4146,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4279,11 +4197,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4297,8 +4211,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4384,11 +4297,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4398,11 +4307,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4453,11 +4358,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4471,8 +4372,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4558,11 +4458,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4572,11 +4468,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4627,11 +4519,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4645,8 +4533,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4732,11 +4619,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4746,11 +4629,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4801,11 +4680,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4819,8 +4694,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -4906,11 +4780,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -4920,11 +4790,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -4975,11 +4841,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -4993,8 +4855,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5080,11 +4941,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5094,11 +4951,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -5149,11 +5002,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -5167,8 +5016,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5254,11 +5102,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5268,11 +5112,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -5323,11 +5163,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -5341,8 +5177,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5428,11 +5263,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5442,11 +5273,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -5497,11 +5324,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -5515,8 +5338,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5602,11 +5424,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5616,11 +5434,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -5671,11 +5485,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -5689,8 +5499,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5776,11 +5585,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5790,11 +5595,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -5845,11 +5646,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -5863,8 +5660,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -5950,11 +5746,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -5964,11 +5756,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6019,11 +5807,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6037,8 +5821,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6124,11 +5907,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -6138,11 +5917,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6193,11 +5968,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6211,8 +5982,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6298,11 +6068,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -6312,11 +6078,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6367,11 +6129,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6385,8 +6143,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6472,11 +6229,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -6486,11 +6239,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6541,11 +6290,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6559,8 +6304,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6646,11 +6390,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -6660,11 +6400,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6715,11 +6451,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6733,8 +6465,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6820,11 +6551,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -6834,11 +6561,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -6889,11 +6612,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -6907,8 +6626,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -6994,11 +6712,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7008,11 +6722,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7063,11 +6773,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7081,8 +6787,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7145,12 +6850,7 @@ export const activityPub: TestData = { }, closed: { "@id": "https://www.w3.org/ns/activitystreams#closed", - // @ts-ignore - "@type": [ - "@id", - "http://www.w3.org/2001/XMLSchema#dateTime", - "http://www.w3.org/2001/XMLSchema#boolean", - ], + "@type": "@id", "@isCollection": true, }, }, @@ -7165,6 +6865,11 @@ export const activityPub: TestData = { "@type": "@id", "@isCollection": true, }, + closed: { + "@id": "https://www.w3.org/ns/activitystreams#closed", + "@type": "@id", + "@isCollection": true, + }, Application: { "@id": "https://www.w3.org/ns/activitystreams#Application", "@context": { @@ -7188,11 +6893,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7202,11 +6903,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7257,11 +6954,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7275,8 +6968,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7332,11 +7024,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7346,11 +7034,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7401,11 +7085,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7419,8 +7099,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7476,11 +7155,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7490,11 +7165,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7545,11 +7216,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7563,8 +7230,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7620,11 +7286,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7634,11 +7296,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7689,11 +7347,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7707,8 +7361,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7764,11 +7417,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7778,11 +7427,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7833,11 +7478,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7851,8 +7492,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -7908,11 +7548,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -7922,11 +7558,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -7977,11 +7609,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -7995,8 +7623,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8038,9 +7665,10 @@ export const activityPub: TestData = { "@id": "https://www.w3.org/ns/activitystreams#subject", "@type": "@id", }, - object: { - "@id": "https://www.w3.org/ns/activitystreams#object", + relationship: { + "@id": "https://www.w3.org/ns/activitystreams#relationship", "@type": "@id", + "@isCollection": true, }, Article: { "@id": "https://www.w3.org/ns/activitystreams#Article", @@ -8065,11 +7693,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8079,11 +7703,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8134,11 +7754,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8152,8 +7768,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8209,11 +7824,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8223,11 +7834,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8278,11 +7885,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8296,8 +7899,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8353,11 +7955,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8367,11 +7965,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8422,11 +8016,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8440,8 +8030,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8497,11 +8086,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8511,11 +8096,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8566,11 +8147,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8584,8 +8161,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8641,11 +8217,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8655,11 +8227,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8710,11 +8278,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8728,8 +8292,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8785,11 +8348,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8799,11 +8358,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8854,11 +8409,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -8872,8 +8423,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -8929,11 +8479,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -8943,11 +8489,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -8998,11 +8540,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -9016,8 +8554,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -9066,6 +8603,22 @@ export const activityPub: TestData = { }, }, }, + accuracy: { + "@id": "https://www.w3.org/ns/activitystreams#accuracy", + "@type": "http://www.w3.org/2001/XMLSchema#float", + }, + altitude: { + "@id": "https://www.w3.org/ns/activitystreams#altitude", + "@type": "http://www.w3.org/2001/XMLSchema#float", + }, + latitude: { + "@id": "https://www.w3.org/ns/activitystreams#latitude", + "@type": "http://www.w3.org/2001/XMLSchema#float", + }, + radius: { + "@id": "https://www.w3.org/ns/activitystreams#radius", + "@type": "http://www.w3.org/2001/XMLSchema#float", + }, unit: { "@id": "https://www.w3.org/ns/activitystreams#unit", }, @@ -9090,11 +8643,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, hreflang: { @@ -9139,11 +8688,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -9153,11 +8698,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -9208,11 +8749,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -9226,8 +8763,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -9264,6 +8800,10 @@ export const activityPub: TestData = { }, }, }, + describes: { + "@id": "https://www.w3.org/ns/activitystreams#describes", + "@type": "@id", + }, Tombstone: { "@id": "https://www.w3.org/ns/activitystreams#Tombstone", "@context": { @@ -9287,11 +8827,7 @@ export const activityPub: TestData = { }, content: { "@id": "https://www.w3.org/ns/activitystreams#content", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, context: { @@ -9301,11 +8837,7 @@ export const activityPub: TestData = { }, name: { "@id": "https://www.w3.org/ns/activitystreams#name", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, endTime: { @@ -9356,11 +8888,7 @@ export const activityPub: TestData = { }, summary: { "@id": "https://www.w3.org/ns/activitystreams#summary", - // @ts-ignore - "@type": [ - "http://www.w3.org/2001/XMLSchema#string", - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString", - ], + "@type": "http://www.w3.org/2001/XMLSchema#string", "@isCollection": true, }, tag: { @@ -9374,8 +8902,7 @@ export const activityPub: TestData = { }, url: { "@id": "https://www.w3.org/ns/activitystreams#url", - // @ts-ignore - "@type": ["http://www.w3.org/2001/XMLSchema#anyURI", "@id"], + "@type": "http://www.w3.org/2001/XMLSchema#anyURI", "@isCollection": true, }, to: { @@ -9417,7 +8944,16 @@ export const activityPub: TestData = { }, }, }, + formerType: { + "@id": "https://www.w3.org/ns/activitystreams#formerType", + "@type": "@id", + "@isCollection": true, + }, + deleted: { + "@id": "https://www.w3.org/ns/activitystreams#deleted", + "@type": "http://www.w3.org/2001/XMLSchema#dateTime", + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ActivityPubObject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.\n */\n type: {\n "@id": "Object";\n };\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Link {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource.\n */\n type: {\n "@id": "Link";\n };\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Activity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface InstransitiveActivity {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Collection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollection {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface CollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | Used to represent distinct subsets of items from a Collection. Refer to the Activity Streams 2.0 Core for a complete description of the CollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "CollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollectionPage {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered. | Used to represent ordered subsets of items from an OrderedCollection. Refer to the Activity Streams 2.0 Core for a complete description of the OrderedCollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n } | {\n "@id": "OrderedCollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n /**\n * A non-negative integer value identifying the relative position within the logical view of a strictly ordered collection.\n */\n startIndex?: number;\n}\n\nexport interface Accept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeAccept {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted. | A specialization of Accept indicating that the acceptance is tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n } | {\n "@id": "TentativeAccept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Add {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has added the object to the target. If the target property is not explicitly specified, the target would need to be determined implicitly by context. The origin can be used to identify the context from which the object originated. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Add";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Arrive {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | An IntransitiveActivity that indicates that the actor has arrived at the location. The origin can be used to identify the context from which the actor originated. The target typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Arrive";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Create {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has created the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Create";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Delete {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has deleted the object. If specified, the origin indicates the context from which the object was deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Delete";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Follow {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "following" the object. Following is defined in the sense typically used within Social systems in which the actor is interested in any activity performed by or on the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Follow";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Ignore {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Join {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has joined the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Join";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Leave {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has left the object. The target and origin typically have no meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Leave";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Like {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor likes, recommends or endorses the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Like";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Offer {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Invite {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered. | A specialization of Offer in which the actor is extending an invitation for the object to the target.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n } | {\n "@id": "Invite";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Reject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeReject {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning. | A specialization of Reject in which the rejection is considered tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n } | {\n "@id": "TentativeReject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Remove {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is removing the object. If specified, the origin indicates the context from which the object is being removed.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Remove";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Undo {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is undoing the object. In most cases, the object will be an Activity describing some previously performed action (for instance, a person may have previously "liked" an article but, for whatever reason, might choose to undo that like at some later point in time). The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Undo";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Update {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has updated the object. Note, however, that this vocabulary does not define a mechanism for describing the actual set of modifications made to object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Update";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface View {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has viewed the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "View";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Listen {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has listened to the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Listen";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Read {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has read the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Read";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Move {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has moved object from origin to target. If the origin or target are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Move";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Travel {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Indicates that the actor is traveling to target from origin. Travel is an IntransitiveObject whose actor specifies the direct object. If the target or origin are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Travel";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Announce {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is calling the target\'s attention the object. The origin typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Announce";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Block {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning. | Indicates that the actor is blocking the object. Blocking is a stronger form of Ignore. The typical use is to support social systems that allow one user to block activities or content of other users. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n } | {\n "@id": "Block";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Flag {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "flagging" the object. Flagging is defined in the sense common to many social platforms as reporting content as being inappropriate for any number of reasons.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Flag";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Dislike {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor dislikes the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Dislike";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Question {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Represents a question being asked. Question objects are an extension of IntransitiveActivity. That is, the Question object is an Activity, but the direct object is the question itself and therefore it would not contain an object property. Either of the anyOf and oneOf properties MAY be used to express possible answers, but a Question object MUST NOT have both properties. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Question";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n closed?: LdSet;\n}\n\nexport interface Application {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a software application.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Application";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Group {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a formal or informal collective of Actors.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Group";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Organization {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an organization.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Organization";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Person {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an individual person.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Person";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Service {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a service of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Service";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Relationship {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a relationship between two individuals. The subject and object properties are used to identify the connected individuals. See 5.2 Representing Relationships Between Entities for additional information. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Relationship";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Relationship object, the relationship property identifies the kind of relationship that exists between subject and object.\n */\n relationship?: LdSet;\n}\n\nexport interface Article {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of multi-paragraph written work.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Article";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Document {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Audio {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents an audio document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Audio";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Image {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | An image document of any kind\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Image";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Video {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a video document of any kind. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Video";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Note {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a short written work typically less than a single paragraph in length.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Note";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Page {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a Web Page.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Page";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Event {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of event.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Event";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Place {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a logical or physical location. See 5.3 Representing Places for additional information.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Place";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * Indicates the accuracy of position coordinates on a Place objects. Expressed in properties of percentage. e.g. "94.0" means "94.0% accurate".\n */\n accuracy?: string;\n /**\n * Indicates the altitude of a place. The measurement units is indicated using the units property. If units is not specified, the default is assumed to be "m" indicating meters. \n */\n altitude?: string;\n /**\n * The latitude of a place | The longitude of a place\n */\n latitude?: LdSet;\n /**\n * The radius from the given latitude and longitude for a Place. The units is expressed by the units property. If units is not specified, the default is assumed to be "m" indicating "meters".\n */\n radius?: string;\n}\n\nexport interface Mention {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource. | A specialized Link that represents an @mention.\n */\n type: LdSet<{\n "@id": "Link";\n } | {\n "@id": "Mention";\n }>;\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Profile {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The describes property is used to reference the object being described by the profile.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Profile";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Profile object, the describes property identifies the object described by the Profile.\n */\n describes?: ActivityPubObject;\n}\n\nexport interface Tombstone {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Tombstone represents a content object that has been deleted. It can be used in Collections to signify that there used to be an object at this position, but it has been deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Tombstone";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Tombstone object, the formerType property identifies the type of the object that was deleted.\n */\n formerType?: LdSet;\n /**\n * On a Tombstone object, the deleted property is a timestamp for when the object was deleted.\n */\n deleted?: string;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ActivityPubObject {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.\n */\n type: {\n "@id": "Object";\n };\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Link {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource.\n */\n type: {\n "@id": "Link";\n };\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Activity {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface InstransitiveActivity {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Collection {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollection {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface CollectionPage {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | Used to represent distinct subsets of items from a Collection. Refer to the Activity Streams 2.0 Core for a complete description of the CollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "CollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n}\n\nexport interface OrderedCollectionPage {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Collection is a subtype of Object that represents ordered or unordered sets of Object or Link instances. Refer to the Activity Streams 2.0 Core specification for a complete description of the Collection type. | A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered. | Used to represent ordered subsets of items from an OrderedCollection. Refer to the Activity Streams 2.0 Core for a complete description of the OrderedCollectionPage object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Collection";\n } | {\n "@id": "OrderedCollection";\n } | {\n "@id": "OrderedCollectionPage";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * A non-negative integer specifying the total number of objects contained by the logical view of the collection. This number might not reflect the actual number of items serialized within the Collection object instance.\n */\n totalItems?: number;\n items?: LdSet;\n /**\n * A non-negative integer value identifying the relative position within the logical view of a strictly ordered collection.\n */\n startIndex?: number;\n}\n\nexport interface Accept {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeAccept {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate the context into which the object has been accepted. | A specialization of Accept indicating that the acceptance is tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Accept";\n } | {\n "@id": "TentativeAccept";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Add {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has added the object to the target. If the target property is not explicitly specified, the target would need to be determined implicitly by context. The origin can be used to identify the context from which the object originated. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Add";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Arrive {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | An IntransitiveActivity that indicates that the actor has arrived at the location. The origin can be used to identify the context from which the actor originated. The target typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Arrive";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Create {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has created the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Create";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Delete {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has deleted the object. If specified, the origin indicates the context from which the object was deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Delete";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Follow {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "following" the object. Following is defined in the sense typically used within Social systems in which the actor is interested in any activity performed by or on the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Follow";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Ignore {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Join {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has joined the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Join";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Leave {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has left the object. The target and origin typically have no meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Leave";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Like {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor likes, recommends or endorses the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Like";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Offer {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Invite {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered. | A specialization of Offer in which the actor is extending an invitation for the object to the target.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Offer";\n } | {\n "@id": "Invite";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Reject {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface TentativeReject {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is rejecting the object. The target and origin typically have no defined meaning. | A specialization of Reject in which the rejection is considered tentative.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Reject";\n } | {\n "@id": "TentativeReject";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Remove {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is removing the object. If specified, the origin indicates the context from which the object is being removed.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Remove";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Undo {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is undoing the object. In most cases, the object will be an Activity describing some previously performed action (for instance, a person may have previously "liked" an article but, for whatever reason, might choose to undo that like at some later point in time). The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Undo";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Update {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has updated the object. Note, however, that this vocabulary does not define a mechanism for describing the actual set of modifications made to object. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Update";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface View {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has viewed the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "View";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Listen {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has listened to the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Listen";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Read {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has read the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Read";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Move {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor has moved object from origin to target. If the origin or target are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Move";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Travel {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Indicates that the actor is traveling to target from origin. Travel is an IntransitiveObject whose actor specifies the direct object. If the target or origin are not specified, either can be determined by context.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Travel";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Announce {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is calling the target\'s attention the object. The origin typically has no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Announce";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Block {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is ignoring the object. The target and origin typically have no defined meaning. | Indicates that the actor is blocking the object. Blocking is a stronger form of Ignore. The typical use is to support social systems that allow one user to block activities or content of other users. The target and origin typically have no defined meaning.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Ignore";\n } | {\n "@id": "Block";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Flag {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor is "flagging" the object. Flagging is defined in the sense common to many social platforms as reporting content as being inappropriate for any number of reasons.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Flag";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Dislike {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Indicates that the actor dislikes the object.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "Dislike";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n}\n\nexport interface Question {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken. | Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. The object property is therefore inappropriate for these activities. | Represents a question being asked. Question objects are an extension of IntransitiveActivity. That is, the Question object is an Activity, but the direct object is the question itself and therefore it would not contain an object property. Either of the anyOf and oneOf properties MAY be used to express possible answers, but a Question object MUST NOT have both properties. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Activity";\n } | {\n "@id": "IntransitiveActivity";\n } | {\n "@id": "Question";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n actor?: LdSet;\n object?: LdSet;\n target?: LdSet;\n result?: LdSet;\n origin?: LdSet;\n instrument?: LdSet;\n closed?: LdSet;\n}\n\nexport interface Application {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a software application.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Application";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Group {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a formal or informal collective of Actors.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Group";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Organization {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an organization.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Organization";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Person {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents an individual person.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Person";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Service {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a service of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Service";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Relationship {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Describes a relationship between two individuals. The subject and object properties are used to identify the connected individuals. See 5.2 Representing Relationships Between Entities for additional information. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Relationship";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Relationship object, the relationship property identifies the kind of relationship that exists between subject and object.\n */\n relationship?: LdSet;\n}\n\nexport interface Article {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of multi-paragraph written work.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Article";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Document {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Audio {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents an audio document of any kind.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Audio";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Image {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | An image document of any kind\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Image";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Video {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a video document of any kind. \n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Video";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Note {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a short written work typically less than a single paragraph in length.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Note";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Page {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a document of any kind. | Represents a Web Page.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Document";\n } | {\n "@id": "Page";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Event {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents any kind of event.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Event";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n}\n\nexport interface Place {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | Represents a logical or physical location. See 5.3 Representing Places for additional information.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Place";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * Indicates the accuracy of position coordinates on a Place objects. Expressed in properties of percentage. e.g. "94.0" means "94.0% accurate".\n */\n accuracy?: string;\n /**\n * Indicates the altitude of a place. The measurement units is indicated using the units property. If units is not specified, the default is assumed to be "m" indicating meters. \n */\n altitude?: string;\n /**\n * The latitude of a place | The longitude of a place\n */\n latitude?: LdSet;\n /**\n * The radius from the given latitude and longitude for a Place. The units is expressed by the units property. If units is not specified, the default is assumed to be "m" indicating "meters".\n */\n radius?: string;\n}\n\nexport interface Mention {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * A Link is an indirect, qualified reference to a resource identified by a URL. The fundamental model for links is established by [ RFC5988]. Many of the properties defined by the Activity Vocabulary allow values that are either instances of Object or Link. When a Link is used, it establishes a qualified relation connecting the subject (the containing object) to the resource identified by the href. Properties of the Link are properties of the reference as opposed to properties of the resource. | A specialized Link that represents an @mention.\n */\n type: LdSet<{\n "@id": "Link";\n } | {\n "@id": "Mention";\n }>;\n /**\n * The target resource pointed to by a Link.\n */\n href?: string;\n /**\n * A link relation associated with a Link. The value MUST conform to both the [HTML5] and [RFC5988] "link relation" definitions. In the [HTML5], any string not containing the "space" U+0020, "tab" (U+0009), "LF" (U+000A), "FF" (U+000C), "CR" (U+000D) or "," (U+002C) characters can be used as a valid link relation.\n */\n rel?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n name?: LdSet;\n /**\n * Hints as to the language used by the target resource. Value MUST be a [BCP47] Language-Tag.\n */\n hreflang?: string;\n /**\n * On a Link, specifies a hint as to the rendering height in device-independent pixels of the linked resource.\n */\n height?: number;\n /**\n * On a Link, specifies a hint as to the rendering width in device-independent pixels of the linked resource.\n */\n width?: number;\n preview?: LdSet;\n}\n\nexport interface Profile {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The describes property is used to reference the object being described by the profile.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Profile";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Profile object, the describes property identifies the object described by the Profile.\n */\n describes?: ActivityPubObject;\n}\n\nexport interface Tombstone {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection. | A Tombstone represents a content object that has been deleted. It can be used in Collections to signify that there used to be an object at this position, but it has been deleted.\n */\n type: LdSet<{\n "@id": "Object";\n } | {\n "@id": "Tombstone";\n }>;\n attachment?: LdSet;\n attributedTo?: LdSet;\n audience?: LdSet;\n content?: LdSet;\n context?: LdSet;\n name?: LdSet;\n /**\n * The date and time describing the actual or expected ending time of the object. When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.\n */\n endTime?: string;\n generator?: LdSet;\n icon?: LdSet;\n image?: LdSet;\n inReplyTo?: LdSet;\n location?: LdSet;\n preview?: LdSet;\n /**\n * The date and time at which the object was published\n */\n published?: string;\n /**\n * Identifies a Collection containing objects considered to be responses to this object.\n */\n replies?: Collection;\n /**\n * The date and time describing the actual or expected starting time of the object. When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.\n */\n startTime?: string;\n summary?: LdSet;\n tag?: LdSet;\n /**\n * The date and time at which the object was updated\n */\n updated?: string;\n url?: LdSet;\n to?: LdSet;\n bto?: LdSet;\n cc?: LdSet;\n bcc?: LdSet;\n /**\n * When used on a Link, identifies the MIME media type of the referenced resource. When used on an Object, identifies the MIME media type of the value of the content property. If not specified, the content property is assumed to contain text/html content.\n */\n mediaType?: string;\n /**\n * When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object\'s approximate duration. The value MUST be expressed as an xsd:duration as defined by [ xmlschema11-2], section 3.3.6 (e.g. a period of 5 seconds is represented as "PT5S").\n */\n duration?: string;\n /**\n * On a Tombstone object, the formerType property identifies the type of the object that was deleted.\n */\n formerType?: LdSet;\n /**\n * On a Tombstone object, the deleted property is a timestamp for when the object was deleted.\n */\n deleted?: string;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/andSimple.ts b/packages/schema-converter-shex/test/testData/andSimple.ts index dc71c26..55f0c9e 100644 --- a/packages/schema-converter-shex/test/testData/andSimple.ts +++ b/packages/schema-converter-shex/test/testData/andSimple.ts @@ -24,6 +24,9 @@ export const andSimple: TestData = { sampleTurtle: "", baseNode: "", successfulContext: { + type: { + "@id": "@type", + }, MediaContainer: { "@id": "https://example.com/MediaContainer", "@context": { @@ -36,12 +39,13 @@ export const andSimple: TestData = { }, }, }, - type: { - "@id": "@type", + videoImage: { + "@id": "https://example.com/videoImage", + "@type": "@id", }, Video: "https://example.com/Video", Image: "https://example.com/Image", }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n videoImage: VideoShape & ImageShape;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "MediaContainer";\n };\n videoImage: VideoShape & ImageShape;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Image";\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/circular.ts b/packages/schema-converter-shex/test/testData/circular.ts index c0ffc92..fe6deac 100644 --- a/packages/schema-converter-shex/test/testData/circular.ts +++ b/packages/schema-converter-shex/test/testData/circular.ts @@ -31,21 +31,42 @@ export const circular: TestData = { `, baseNode: "http://example.com/SampleParent", successfulContext: { + type: { + "@id": "@type", + }, Parent: { "@id": "http://example.com/Parent", "@context": { - type: { "@id": "@type" }, - hasChild: { "@id": "http://example.com/hasChild", "@type": "@id" }, + type: { + "@id": "@type", + }, + hasChild: { + "@id": "http://example.com/hasChild", + "@type": "@id", + }, }, }, + hasChild: { + "@id": "http://example.com/hasChild", + "@type": "@id", + }, Child: { "@id": "http://example.com/Child", "@context": { - type: { "@id": "@type" }, - hasParent: { "@id": "http://example.com/hasParent", "@type": "@id" }, + type: { + "@id": "@type", + }, + hasParent: { + "@id": "http://example.com/hasParent", + "@type": "@id", + }, }, }, + hasParent: { + "@id": "http://example.com/hasParent", + "@type": "@id", + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ParentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Parent";\n };\n hasChild: ChildShape;\n}\n\nexport interface ChildShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type?: {\n "@id": "Child";\n };\n hasParent: ParentShape;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface ParentShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type?: {\n "@id": "Parent";\n };\n hasChild: ChildShape;\n}\n\nexport interface ChildShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type?: {\n "@id": "Child";\n };\n hasParent: ParentShape;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts b/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts index 07fe6ba..ad3d6a3 100644 --- a/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts +++ b/packages/schema-converter-shex/test/testData/eachOfAndSimple.ts @@ -25,6 +25,9 @@ export const eachOfAndSimple: TestData = { sampleTurtle: "", baseNode: "", successfulContext: { + type: { + "@id": "@type", + }, MediaContainer: { "@id": "https://example.com/MediaContainer", "@context": { @@ -38,12 +41,14 @@ export const eachOfAndSimple: TestData = { }, }, }, - type: { - "@id": "@type", + videoImage: { + "@id": "https://example.com/videoImage", + "@type": "@id", + "@isCollection": true, }, Video: "https://example.com/Video", Image: "https://example.com/Image", }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n videoImage?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "MediaContainer";\n };\n videoImage?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Image";\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/extendsSimple.ts b/packages/schema-converter-shex/test/testData/extendsSimple.ts index 6a562ca..4de3af4 100644 --- a/packages/schema-converter-shex/test/testData/extendsSimple.ts +++ b/packages/schema-converter-shex/test/testData/extendsSimple.ts @@ -37,6 +37,9 @@ export const extendsSimple: TestData = { `, baseNode: "http://example.com/SampleParent", successfulContext: { + type: { + "@id": "@type", + }, Entity: { "@id": "https://example.com/Entity", "@context": { @@ -46,6 +49,7 @@ export const extendsSimple: TestData = { entityId: "https://example.com/entityId", }, }, + entityId: "https://example.com/entityId", Person: { "@id": "https://example.com/Person", "@context": { @@ -56,6 +60,7 @@ export const extendsSimple: TestData = { name: "http://xmlns.com/foaf/0.1/name", }, }, + name: "http://xmlns.com/foaf/0.1/name", Employee: { "@id": "https://example.com/Employee", "@context": { @@ -67,7 +72,8 @@ export const extendsSimple: TestData = { employeeNumber: "https://example.com/employeeNumber", }, }, + employeeNumber: "https://example.com/employeeNumber", }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: LdSet;\n "@context"?: LdSet;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/oldExtends.ts b/packages/schema-converter-shex/test/testData/oldExtends.ts index 544eaf6..6f1faa5 100644 --- a/packages/schema-converter-shex/test/testData/oldExtends.ts +++ b/packages/schema-converter-shex/test/testData/oldExtends.ts @@ -42,6 +42,9 @@ export const oldExtends: TestData = { `, baseNode: "http://example.com/SampleParent", successfulContext: { + type: { + "@id": "@type", + }, Entity: { "@id": "https://example.com/Entity", "@context": { @@ -51,6 +54,7 @@ export const oldExtends: TestData = { entityId: "https://example.com/entityId", }, }, + entityId: "https://example.com/entityId", Person: { "@id": "https://example.com/Person", "@context": { @@ -61,6 +65,7 @@ export const oldExtends: TestData = { name: "http://xmlns.com/foaf/0.1/name", }, }, + name: "http://xmlns.com/foaf/0.1/name", Employee: { "@id": "https://example.com/Employee", "@context": { @@ -72,7 +77,8 @@ export const oldExtends: TestData = { employeeNumber: "https://example.com/employeeNumber", }, }, + employeeNumber: "https://example.com/employeeNumber", }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EntityShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Entity";\n };\n entityId: any;\n}\n\nexport interface PersonShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n }>;\n entityId: any;\n name: any;\n}\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: LdSet<{\n "@id": "Entity";\n } | {\n "@id": "Person";\n } | {\n "@id": "Employee";\n }>;\n entityId: any;\n name: any;\n employeeNumber: any;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/orSimple.ts b/packages/schema-converter-shex/test/testData/orSimple.ts index c46b291..fe35614 100644 --- a/packages/schema-converter-shex/test/testData/orSimple.ts +++ b/packages/schema-converter-shex/test/testData/orSimple.ts @@ -25,6 +25,9 @@ export const orSimple: TestData = { sampleTurtle: "", baseNode: "", successfulContext: { + type: { + "@id": "@type", + }, MediaContainer: { "@id": "https://example.com/MediaContainer", "@context": { @@ -42,12 +45,18 @@ export const orSimple: TestData = { }, }, }, - type: { - "@id": "@type", + primaryMedia: { + "@id": "https://example.com/primaryMedia", + "@type": "@id", }, Video: "https://example.com/Video", Image: "https://example.com/Image", + media: { + "@id": "https://example.com/media", + "@type": "@id", + "@isCollection": true, + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "MediaContainer";\n };\n primaryMedia: VideoShape | ImageShape;\n media?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Image";\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface MediaContainerShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "MediaContainer";\n };\n primaryMedia: VideoShape | ImageShape;\n media?: LdSet;\n}\n\nexport interface VideoShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Video";\n };\n}\n\nexport interface ImageShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Image";\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/profile.ts b/packages/schema-converter-shex/test/testData/profile.ts index 09dd5b4..e1d6270 100644 --- a/packages/schema-converter-shex/test/testData/profile.ts +++ b/packages/schema-converter-shex/test/testData/profile.ts @@ -366,6 +366,9 @@ srs:RSAPublicKeyShape { `, baseNode: "https://jackson.solidcommunity.net/profile/card#me", successfulContext: { + type: { + "@id": "@type", + }, Person: { "@id": "http://schema.org/Person", "@context": { @@ -552,6 +555,19 @@ srs:RSAPublicKeyShape { }, }, }, + fn: { + "@id": "http://www.w3.org/2006/vcard/ns#fn", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + name: { + "@id": "http://xmlns.com/foaf/0.1/name", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + hasAddress: { + "@id": "http://www.w3.org/2006/vcard/ns#hasAddress", + "@type": "@id", + "@isCollection": true, + }, countryName: { "@id": "http://www.w3.org/2006/vcard/ns#country-name", "@type": "http://www.w3.org/2001/XMLSchema#string", @@ -572,6 +588,11 @@ srs:RSAPublicKeyShape { "@id": "http://www.w3.org/2006/vcard/ns#street-address", "@type": "http://www.w3.org/2001/XMLSchema#string", }, + hasEmail: { + "@id": "http://www.w3.org/2006/vcard/ns#hasEmail", + "@type": "@id", + "@isCollection": true, + }, Dom: { "@id": "http://www.w3.org/2006/vcard/ns#Dom", "@context": { @@ -704,6 +725,40 @@ srs:RSAPublicKeyShape { }, }, }, + value: { + "@id": "http://www.w3.org/2006/vcard/ns#value", + "@type": "@id", + }, + hasPhoto: { + "@id": "http://www.w3.org/2006/vcard/ns#hasPhoto", + "@type": "@id", + }, + img: { + "@id": "http://xmlns.com/foaf/0.1/img", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + hasTelephone: { + "@id": "http://www.w3.org/2006/vcard/ns#hasTelephone", + "@type": "@id", + "@isCollection": true, + }, + phone: { + "@id": "http://www.w3.org/2006/vcard/ns#phone", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + organizationName: { + "@id": "http://www.w3.org/2006/vcard/ns#organization-name", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + role: { + "@id": "http://www.w3.org/2006/vcard/ns#role", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + trustedApp: { + "@id": "http://www.w3.org/ns/auth/acl#trustedApp", + "@type": "@id", + "@isCollection": true, + }, mode: { "@id": "http://www.w3.org/ns/auth/acl#mode", "@isCollection": true, @@ -716,6 +771,11 @@ srs:RSAPublicKeyShape { "@id": "http://www.w3.org/ns/auth/acl#origin", "@type": "@id", }, + key: { + "@id": "http://www.w3.org/ns/auth/cert#key", + "@type": "@id", + "@isCollection": true, + }, modulus: { "@id": "http://www.w3.org/ns/auth/cert#modulus", "@type": "http://www.w3.org/2001/XMLSchema#string", @@ -724,7 +784,39 @@ srs:RSAPublicKeyShape { "@id": "http://www.w3.org/ns/auth/cert#exponent", "@type": "http://www.w3.org/2001/XMLSchema#integer", }, + inbox: { + "@id": "http://www.w3.org/ns/ldp#inbox", + "@type": "@id", + }, + preferencesFile: { + "@id": "http://www.w3.org/ns/pim/space#preferencesFile", + "@type": "@id", + }, + storage: { + "@id": "http://www.w3.org/ns/pim/space#storage", + "@type": "@id", + "@isCollection": true, + }, + account: { + "@id": "http://www.w3.org/ns/solid/terms#account", + "@type": "@id", + }, + privateTypeIndex: { + "@id": "http://www.w3.org/ns/solid/terms#privateTypeIndex", + "@type": "@id", + "@isCollection": true, + }, + publicTypeIndex: { + "@id": "http://www.w3.org/ns/solid/terms#publicTypeIndex", + "@type": "@id", + "@isCollection": true, + }, + knows: { + "@id": "http://xmlns.com/foaf/0.1/knows", + "@type": "@id", + "@isCollection": true, + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf)\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The formatted name of a person. Example: John Smith\n */\n fn?: string;\n /**\n * An alternate way to define a person\'s name.\n */\n name?: string;\n /**\n * The person\'s street address.\n */\n hasAddress?: LdSet;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * A link to the person\'s photo\n */\n hasPhoto?: {\n "@id": string;\n };\n /**\n * Photo link but in string form\n */\n img?: string;\n /**\n * Person\'s telephone number\n */\n hasTelephone?: LdSet;\n /**\n * An alternative way to define a person\'s telephone number using a string\n */\n phone?: string;\n /**\n * The name of the organization with which the person is affiliated\n */\n organizationName?: string;\n /**\n * The name of the person\'s role in their organization\n */\n role?: string;\n /**\n * A list of app origins that are trusted by this user\n */\n trustedApp?: LdSet;\n /**\n * A list of RSA public keys that are associated with private keys the user holds.\n */\n key?: LdSet;\n /**\n * The user\'s LDP inbox to which apps can post notifications\n */\n inbox: {\n "@id": string;\n };\n /**\n * The user\'s preferences\n */\n preferencesFile?: {\n "@id": string;\n };\n /**\n * The location of a Solid storage server related to this WebId\n */\n storage?: LdSet<{\n "@id": string;\n }>;\n /**\n * The user\'s account\n */\n account?: {\n "@id": string;\n };\n /**\n * A registry of all types used on the user\'s Pod (for private access only)\n */\n privateTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A registry of all types used on the user\'s Pod (for public access)\n */\n publicTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A list of WebIds for all the people this user knows.\n */\n knows?: LdSet<{\n "@id": string;\n }>;\n}\n\nexport interface AddressShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The name of the user\'s country of residence\n */\n countryName?: string;\n /**\n * The name of the user\'s locality (City, Town etc.) of residence\n */\n locality?: string;\n /**\n * The user\'s postal code\n */\n postalCode?: string;\n /**\n * The name of the user\'s region (State, Province etc.) of residence\n */\n region?: string;\n /**\n * The user\'s street address\n */\n streetAddress?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface PhoneNumberShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * They type of Phone Number\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of a phone number as a tel link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface TrustedAppShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The level of access provided to this origin\n */\n mode: LdSet<{\n "@id": "Append";\n } | {\n "@id": "Control";\n } | {\n "@id": "Read";\n } | {\n "@id": "Write";\n }>;\n /**\n * The app origin the user trusts\n */\n origin: {\n "@id": string;\n };\n}\n\nexport interface RSAPublicKeyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * RSA Modulus\n */\n modulus: string;\n /**\n * RSA Exponent\n */\n exponent: number;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf)\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The formatted name of a person. Example: John Smith\n */\n fn?: string;\n /**\n * An alternate way to define a person\'s name.\n */\n name?: string;\n /**\n * The person\'s street address.\n */\n hasAddress?: LdSet;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * A link to the person\'s photo\n */\n hasPhoto?: {\n "@id": string;\n };\n /**\n * Photo link but in string form\n */\n img?: string;\n /**\n * Person\'s telephone number\n */\n hasTelephone?: LdSet;\n /**\n * An alternative way to define a person\'s telephone number using a string\n */\n phone?: string;\n /**\n * The name of the organization with which the person is affiliated\n */\n organizationName?: string;\n /**\n * The name of the person\'s role in their organization\n */\n role?: string;\n /**\n * A list of app origins that are trusted by this user\n */\n trustedApp?: LdSet;\n /**\n * A list of RSA public keys that are associated with private keys the user holds.\n */\n key?: LdSet;\n /**\n * The user\'s LDP inbox to which apps can post notifications\n */\n inbox: {\n "@id": string;\n };\n /**\n * The user\'s preferences\n */\n preferencesFile?: {\n "@id": string;\n };\n /**\n * The location of a Solid storage server related to this WebId\n */\n storage?: LdSet<{\n "@id": string;\n }>;\n /**\n * The user\'s account\n */\n account?: {\n "@id": string;\n };\n /**\n * A registry of all types used on the user\'s Pod (for private access only)\n */\n privateTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A registry of all types used on the user\'s Pod (for public access)\n */\n publicTypeIndex?: LdSet<{\n "@id": string;\n }>;\n /**\n * A list of WebIds for all the people this user knows.\n */\n knows?: LdSet<{\n "@id": string;\n }>;\n}\n\nexport interface AddressShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * The name of the user\'s country of residence\n */\n countryName?: string;\n /**\n * The name of the user\'s locality (City, Town etc.) of residence\n */\n locality?: string;\n /**\n * The user\'s postal code\n */\n postalCode?: string;\n /**\n * The name of the user\'s region (State, Province etc.) of residence\n */\n region?: string;\n /**\n * The user\'s street address\n */\n streetAddress?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface PhoneNumberShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * They type of Phone Number\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of a phone number as a tel link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\nexport interface TrustedAppShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * The level of access provided to this origin\n */\n mode: LdSet<{\n "@id": "Append";\n } | {\n "@id": "Control";\n } | {\n "@id": "Read";\n } | {\n "@id": "Write";\n }>;\n /**\n * The app origin the user trusts\n */\n origin: {\n "@id": string;\n };\n}\n\nexport interface RSAPublicKeyShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * RSA Modulus\n */\n modulus: string;\n /**\n * RSA Exponent\n */\n exponent: number;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/reducedProfile.ts b/packages/schema-converter-shex/test/testData/reducedProfile.ts index a8a5402..164c81a 100644 --- a/packages/schema-converter-shex/test/testData/reducedProfile.ts +++ b/packages/schema-converter-shex/test/testData/reducedProfile.ts @@ -51,6 +51,9 @@ srs:EmailShape EXTRA a { sampleTurtle: ``, baseNode: "", successfulContext: { + type: { + "@id": "@type", + }, Person: { "@id": "http://schema.org/Person", "@context": { @@ -85,6 +88,11 @@ srs:EmailShape EXTRA a { }, }, }, + hasEmail: { + "@id": "http://www.w3.org/2006/vcard/ns#hasEmail", + "@type": "@id", + "@isCollection": true, + }, Dom: { "@id": "http://www.w3.org/2006/vcard/ns#Dom", "@context": { @@ -217,7 +225,15 @@ srs:EmailShape EXTRA a { }, }, }, + value: { + "@id": "http://www.w3.org/2006/vcard/ns#value", + "@type": "@id", + }, + name: { + "@id": "http://xmlns.com/foaf/0.1/name", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * Defines the node as a Person | Defines the node as a Person\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * An alternate way to define a person\'s name\n */\n name?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface SolidProfileShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * Defines the node as a Person | Defines the node as a Person\n */\n type: LdSet<{\n "@id": "Person";\n } | {\n "@id": "Person2";\n }>;\n /**\n * The person\'s email.\n */\n hasEmail?: LdSet;\n /**\n * An alternate way to define a person\'s name\n */\n name?: string;\n}\n\nexport interface EmailShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n /**\n * The type of email.\n */\n type?: {\n "@id": "Dom";\n } | {\n "@id": "Home";\n } | {\n "@id": "ISDN";\n } | {\n "@id": "Internet";\n } | {\n "@id": "Intl";\n } | {\n "@id": "Label";\n } | {\n "@id": "Parcel";\n } | {\n "@id": "Postal";\n } | {\n "@id": "Pref";\n } | {\n "@id": "Work";\n } | {\n "@id": "X400";\n };\n /**\n * The value of an email as a mailto link (Example )\n */\n value: {\n "@id": string;\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/reusedPredicates.ts b/packages/schema-converter-shex/test/testData/reusedPredicates.ts index faf9a4b..80801a6 100644 --- a/packages/schema-converter-shex/test/testData/reusedPredicates.ts +++ b/packages/schema-converter-shex/test/testData/reusedPredicates.ts @@ -31,6 +31,9 @@ export const reusedPredicates: TestData = { sampleTurtle: ``, baseNode: "http://example.com/SampleParent", successfulContext: { + type: { + "@id": "@type", + }, Document: { "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#Document", "@context": { @@ -49,6 +52,12 @@ export const reusedPredicates: TestData = { }, }, }, + vocabulary: { + "@id": + "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#vocabulary", + "@type": "@id", + "@isCollection": true, + }, Vocabulary: { "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#Vocabulary", @@ -59,6 +68,7 @@ export const reusedPredicates: TestData = { name: { "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#name", "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, }, path: { "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#path", @@ -67,6 +77,20 @@ export const reusedPredicates: TestData = { }, }, }, + name: { + "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#name", + "@type": "http://www.w3.org/2001/XMLSchema#string", + "@isCollection": true, + }, + path: { + "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#path", + "@type": "@id", + "@isCollection": true, + }, + law: { + "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#law", + "@type": "@id", + }, Law: { "@id": "https://www.forsakringskassan.se/vocabs/fk-sem-poc.ttl#Law", "@context": { @@ -86,5 +110,5 @@ export const reusedPredicates: TestData = { }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface DocumentShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Document";\n };\n vocabulary?: LdSet;\n law: LawShape;\n}\n\nexport interface LawShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Law";\n };\n name?: LdSet;\n path: {\n "@id": string;\n };\n}\n\nexport interface VocabularyShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n type: {\n "@id": "Vocabulary";\n };\n name: string;\n path?: LdSet<{\n "@id": string;\n }>;\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface DocumentShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Document";\n };\n vocabulary?: LdSet;\n law: LawShape;\n}\n\nexport interface LawShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Law";\n };\n name?: LdSet;\n path: {\n "@id": string;\n };\n}\n\nexport interface VocabularyShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n type: {\n "@id": "Vocabulary";\n };\n name: string;\n path?: LdSet<{\n "@id": string;\n }>;\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/testData/simple.ts b/packages/schema-converter-shex/test/testData/simple.ts index 211c4f6..61472f0 100644 --- a/packages/schema-converter-shex/test/testData/simple.ts +++ b/packages/schema-converter-shex/test/testData/simple.ts @@ -43,8 +43,11 @@ export const simple: TestData = { "@type": "@id", "@isCollection": true, }, - mbox: { "@id": "http://xmlns.com/foaf/0.1/mbox", "@type": "@id" }, + mbox: { + "@id": "http://xmlns.com/foaf/0.1/mbox", + "@type": "@id", + }, }, successfulTypings: - 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: ContextDefinition;\n givenName: LdSet;\n familyName: string;\n phone?: LdSet<{\n "@id": string;\n }>;\n mbox: {\n "@id": string;\n };\n}\n\n', + 'import { LdSet, LdoJsonldContext } from "@ldo/ldo"\n\nexport interface EmployeeShape {\n "@id"?: string;\n "@context"?: LdoJsonldContext;\n givenName: LdSet;\n familyName: string;\n phone?: LdSet<{\n "@id": string;\n }>;\n mbox: {\n "@id": string;\n };\n}\n\n', }; diff --git a/packages/schema-converter-shex/test/typing.test.ts b/packages/schema-converter-shex/test/typing.test.ts index f9a828e..caf50bf 100644 --- a/packages/schema-converter-shex/test/typing.test.ts +++ b/packages/schema-converter-shex/test/typing.test.ts @@ -3,6 +3,8 @@ import { testData } from "./testData/testData"; import { shexjToTyping } from "../src/typing/shexjToTyping"; import type { Schema } from "shexj"; +console.warn = () => {}; + describe("typing", () => { testData.forEach(({ name, shexc, successfulTypings }) => { it(`Creates a typings for ${name}`, async () => { diff --git a/packages/solid/package.json b/packages/solid/package.json index 31ccfc8..20c21e7 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -7,7 +7,7 @@ "example": "ts-node ./example/example.ts", "build": "tsc --project tsconfig.build.json", "watch": "tsc --watch", - "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage -t \"sets wac rules for a resource that\"", + "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage", "test:watch": "jest --watch", "prepublishOnly": "npm run test && npm run build", "build:ldo": "ldo build --input src/.shapes --output src/.ldo", diff --git a/packages/solid/src/.ldo/solid.context.ts b/packages/solid/src/.ldo/solid.context.ts index 6fb1a73..7f50b27 100644 --- a/packages/solid/src/.ldo/solid.context.ts +++ b/packages/solid/src/.ldo/solid.context.ts @@ -6,6 +6,10 @@ import { LdoJsonldContext } from "@ldo/ldo"; * ============================================================================= */ export const solidContext: LdoJsonldContext = { + type: { + "@id": "@type", + "@isCollection": true, + }, Container: { "@id": "http://www.w3.org/ns/ldp#Container", "@context": { @@ -58,6 +62,15 @@ export const solidContext: LdoJsonldContext = { }, }, }, + modified: { + "@id": "http://purl.org/dc/terms/modified", + "@type": "http://www.w3.org/2001/XMLSchema#string", + }, + contains: { + "@id": "http://www.w3.org/ns/ldp#contains", + "@type": "@id", + "@isCollection": true, + }, Resource2: { "@id": "http://www.w3.org/ns/iana/media-types/text/turtle#Resource", "@context": { @@ -79,6 +92,14 @@ export const solidContext: LdoJsonldContext = { }, }, }, + mtime: { + "@id": "http://www.w3.org/ns/posix/stat#mtime", + "@type": "http://www.w3.org/2001/XMLSchema#decimal", + }, + size: { + "@id": "http://www.w3.org/ns/posix/stat#size", + "@type": "http://www.w3.org/2001/XMLSchema#integer", + }, storage: { "@id": "http://www.w3.org/ns/pim/space#storage", "@type": "@id", diff --git a/packages/solid/src/.ldo/wac.context.ts b/packages/solid/src/.ldo/wac.context.ts index 6f19691..6f6c9fd 100644 --- a/packages/solid/src/.ldo/wac.context.ts +++ b/packages/solid/src/.ldo/wac.context.ts @@ -43,8 +43,34 @@ export const wacContext: LdoJsonldContext = { }, }, }, + accessTo: { + "@id": "http://www.w3.org/ns/auth/acl#accessTo", + "@type": "@id", + }, + default: { + "@id": "http://www.w3.org/ns/auth/acl#default", + "@type": "@id", + }, + agent: { + "@id": "http://www.w3.org/ns/auth/acl#agent", + "@type": "@id", + "@isCollection": true, + }, + agentGroup: { + "@id": "http://www.w3.org/ns/auth/acl#agentGroup", + "@type": "@id", + "@isCollection": true, + }, + agentClass: { + "@id": "http://www.w3.org/ns/auth/acl#agentClass", + "@isCollection": true, + }, AuthenticatedAgent: "http://www.w3.org/ns/auth/acl#AuthenticatedAgent", Agent: "http://xmlns.com/foaf/0.1/Agent", + mode: { + "@id": "http://www.w3.org/ns/auth/acl#mode", + "@isCollection": true, + }, Read: "http://www.w3.org/ns/auth/acl#Read", Write: "http://www.w3.org/ns/auth/acl#Write", Append: "http://www.w3.org/ns/auth/acl#Append", diff --git a/packages/solid/src/resource/wac/setWacRule.ts b/packages/solid/src/resource/wac/setWacRule.ts index 70a0c30..1569cb7 100644 --- a/packages/solid/src/resource/wac/setWacRule.ts +++ b/packages/solid/src/resource/wac/setWacRule.ts @@ -80,8 +80,6 @@ export async function setWacRuleForAclUri( addRuleToDataset("agent", accessModeList, agentUri); }); - console.log(dataset.toString()); - // Save to Pod const response = await fetch(aclUri, { method: "PUT", From a659b88d7f547b0f78c7b1e3259d2398c3173007 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 21:15:13 -0500 Subject: [PATCH 26/32] Complete tests for Solid library --- packages/solid/test/Integration.test.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/solid/test/Integration.test.ts b/packages/solid/test/Integration.test.ts index e0c4433..4c63a19 100644 --- a/packages/solid/test/Integration.test.ts +++ b/packages/solid/test/Integration.test.ts @@ -7,7 +7,12 @@ import type { SolidLdoDataset, UpdateResultError, } from "../src"; -import { changeData, commitData, createSolidLdoDataset } from "../src"; +import { + changeData, + commitData, + createSolidLdoDataset, + SolidLdoTransactionDataset, +} from "../src"; import { ROOT_CONTAINER, WEB_ID, createApp } from "./solidServer.helper"; import { namedNode, @@ -1295,6 +1300,12 @@ describe("Integration", () => { }); }); + it("allows a transaction on a transaction", () => { + const transaction = solidLdoDataset.startTransaction(); + const transaction2 = transaction.startTransaction(); + expect(transaction2).toBeInstanceOf(SolidLdoTransactionDataset); + }); + /** * =========================================================================== * Upload From de5d056f7a6bfbfb9eb008fa695302d502276176 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Thu, 27 Feb 2025 22:58:31 -0500 Subject: [PATCH 27/32] Set Refactor for Solid-react complete --- .../jsonld-dataset-proxy/src/ProxyContext.ts | 30 +++++-- packages/jsonld-dataset-proxy/src/index.ts | 1 + packages/solid-react/src/useMatchObject.ts | 4 +- packages/solid-react/src/useMatchSubject.ts | 4 +- .../src/util/TrackingProxyContext.ts | 87 ++++--------------- .../solid-react/src/util/TrackingSetProxy.ts | 56 ++++++++++++ .../src/util/TrackingSubjectProxy.ts | 43 +++++++++ .../solid-react/test/.ldo/post.typings.ts | 8 +- .../solid-react/test/Integration.test.tsx | 14 ++- 9 files changed, 159 insertions(+), 88 deletions(-) create mode 100644 packages/solid-react/src/util/TrackingSetProxy.ts create mode 100644 packages/solid-react/src/util/TrackingSubjectProxy.ts diff --git a/packages/jsonld-dataset-proxy/src/ProxyContext.ts b/packages/jsonld-dataset-proxy/src/ProxyContext.ts index 344c0d5..24ccfd5 100644 --- a/packages/jsonld-dataset-proxy/src/ProxyContext.ts +++ b/packages/jsonld-dataset-proxy/src/ProxyContext.ts @@ -44,17 +44,17 @@ export class ProxyContext { public createSubjectProxy(node: NamedNode | BlankNode): SubjectProxy { if (!this.subjectMap.has(node.value)) { - const proxy = new Proxy( - { "@id": node }, - this.createSubjectHandler(), - ) as unknown as SubjectProxy; + const proxy = this.createNewSubjectProxy(node); this.subjectMap.set(node.value, proxy); } return this.subjectMap.get(node.value) as SubjectProxy; } - protected createSubjectHandler() { - return createSubjectHandler(this); + protected createNewSubjectProxy(node: NamedNode | BlankNode): SubjectProxy { + return new Proxy( + { "@id": node }, + createSubjectHandler(this), + ) as unknown as SubjectProxy; } private getSetKey(...quadMatch: QuadMatch) { @@ -72,10 +72,9 @@ export class ProxyContext { ): SetProxy { const key = this.getSetKey(...quadMatch); if (!this.setMap.has(key)) { - const proxy = createNewSetProxy( + const proxy = this.createNewSetProxy( quadMatch, - isSubjectOriented ?? false, - this, + isSubjectOriented, isLangStringSet, ); this.setMap.set(key, proxy); @@ -83,6 +82,19 @@ export class ProxyContext { return this.setMap.get(key)!; } + protected createNewSetProxy( + quadMatch: QuadMatch, + isSubjectOriented?: boolean, + isLangStringSet?: boolean, + ) { + return createNewSetProxy( + quadMatch, + isSubjectOriented ?? false, + this, + isLangStringSet, + ); + } + public duplicate(alternativeOptions: Partial) { const fullOptions: ProxyContextOptions = { ...{ diff --git a/packages/jsonld-dataset-proxy/src/index.ts b/packages/jsonld-dataset-proxy/src/index.ts index b006244..b75f426 100644 --- a/packages/jsonld-dataset-proxy/src/index.ts +++ b/packages/jsonld-dataset-proxy/src/index.ts @@ -17,6 +17,7 @@ export * from "./language/languageSet"; export * from "./language/languageTypes"; export * from "./language/languageUtils"; +export * from "./setProxy/createNewSetProxy"; export * from "./setProxy/isSetProxy"; export * from "./setProxy/SetProxy"; export * from "./setProxy/set"; diff --git a/packages/solid-react/src/useMatchObject.ts b/packages/solid-react/src/useMatchObject.ts index 53d7980..c338646 100644 --- a/packages/solid-react/src/useMatchObject.ts +++ b/packages/solid-react/src/useMatchObject.ts @@ -1,4 +1,4 @@ -import type { LdoBase, ShapeType } from "@ldo/ldo"; +import type { LdoBase, LdSet, ShapeType } from "@ldo/ldo"; import type { QuadMatch } from "@ldo/rdf-utils"; import type { LdoBuilder } from "@ldo/ldo"; import { useCallback } from "react"; @@ -9,7 +9,7 @@ export function useMatchObject( subject?: QuadMatch[0] | string, predicate?: QuadMatch[1] | string, graph?: QuadMatch[3] | string, -): Type[] { +): LdSet { const matchObject = useCallback( (builder: LdoBuilder) => { return builder.matchObject(subject, predicate, graph); diff --git a/packages/solid-react/src/useMatchSubject.ts b/packages/solid-react/src/useMatchSubject.ts index 80c1d81..494afc8 100644 --- a/packages/solid-react/src/useMatchSubject.ts +++ b/packages/solid-react/src/useMatchSubject.ts @@ -1,4 +1,4 @@ -import type { LdoBase, ShapeType } from "@ldo/ldo"; +import type { LdoBase, LdSet, ShapeType } from "@ldo/ldo"; import type { QuadMatch } from "@ldo/rdf-utils"; import type { LdoBuilder } from "@ldo/ldo"; import { useCallback } from "react"; @@ -9,7 +9,7 @@ export function useMatchSubject( predicate?: QuadMatch[1] | string, object?: QuadMatch[2] | string, graph?: QuadMatch[3] | string, -): Type[] { +): LdSet { const matchSubject = useCallback( (builder: LdoBuilder) => { return builder.matchSubject(predicate, object, graph); diff --git a/packages/solid-react/src/util/TrackingProxyContext.ts b/packages/solid-react/src/util/TrackingProxyContext.ts index 1b97717..3bbd84a 100644 --- a/packages/solid-react/src/util/TrackingProxyContext.ts +++ b/packages/solid-react/src/util/TrackingProxyContext.ts @@ -1,13 +1,14 @@ import type { - ArrayProxyTarget, - SubjectProxyTarget, ProxyContextOptions, + SubjectProxy, + SetProxy, } from "@ldo/jsonld-dataset-proxy"; import { ProxyContext } from "@ldo/jsonld-dataset-proxy"; import type { QuadMatch } from "@ldo/rdf-utils"; import type { SubscribableDataset } from "@ldo/subscribable-dataset"; -import { namedNode } from "@rdfjs/data-model"; -import type { Quad } from "@rdfjs/types"; +import type { BlankNode, NamedNode, Quad } from "@rdfjs/types"; +import { createTrackingSubjectProxy } from "./TrackingSubjectProxy"; +import { createTrackingSetProxy } from "./TrackingSetProxy"; /** * @internal @@ -34,77 +35,27 @@ export class TrackingProxyContext extends ProxyContext { } // Adds the listener to the subscribable dataset while ensuring deduping of the listener - private addListener(eventName: QuadMatch) { + public addListener(eventName: QuadMatch) { const listeners = this.subscribableDataset.listeners(eventName); if (!listeners.includes(this.listener)) { this.subscribableDataset.on(eventName, this.listener); } } - protected createSubjectHandler(): ProxyHandler { - const baseHandler = super.createSubjectHandler(); - const oldGetFunction = baseHandler.get; - const newGetFunction: ProxyHandler["get"] = ( - target: SubjectProxyTarget, - key: string | symbol, - receiver, - ) => { - const subject = target["@id"]; - const rdfTypes = this.getRdfType(subject); - if (typeof key === "symbol") { - // Do Nothing - } else if (key === "@id") { - this.addListener([subject, null, null, null]); - } else if (!this.contextUtil.isArray(key, rdfTypes)) { - const predicate = namedNode(this.contextUtil.keyToIri(key, rdfTypes)); - this.addListener([subject, predicate, null, null]); - } - return oldGetFunction && oldGetFunction(target, key, receiver); - }; - baseHandler.get = newGetFunction; - baseHandler.set = () => { - console.warn( - "You've attempted to set a value on a Linked Data Object from the useSubject, useMatchingSubject, or useMatchingObject hooks. These linked data objects should only be used to render data, not modify it. To modify data, use the `changeData` function.", - ); - return true; - }; - return baseHandler; + protected createNewSubjectProxy(node: NamedNode | BlankNode): SubjectProxy { + return createTrackingSubjectProxy(this, node); } - protected createArrayHandler(): ProxyHandler { - const baseHandler = super.createArrayHandler(); - const oldGetFunction = baseHandler.get; - const newGetFunction: ProxyHandler["get"] = ( - target: ArrayProxyTarget, - key: string | symbol, - receiver, - ) => { - if (qualifiedArrayMethods.has(key)) { - this.addListener([target[0][0], target[0][1], target[0][2], null]); - } - return oldGetFunction && oldGetFunction(target, key, receiver); - }; - baseHandler.get = newGetFunction; - return baseHandler; + protected createNewSetProxy( + quadMatch: QuadMatch, + isSubjectOriented?: boolean, + isLangStringSet?: boolean, + ): SetProxy { + return createTrackingSetProxy( + this, + quadMatch, + isSubjectOriented, + isLangStringSet, + ); } } - -const qualifiedArrayMethods = new Set([ - "forEach", - "map", - "reduce", - Symbol.iterator, - "entries", - "every", - "filter", - "find", - "findIndex", - "findLast", - "findLastIndex", - "includes, indexOf", - "keys", - "lastIndexOf", - "reduceRight", - "some", - "values", -]); diff --git a/packages/solid-react/src/util/TrackingSetProxy.ts b/packages/solid-react/src/util/TrackingSetProxy.ts new file mode 100644 index 0000000..9c34347 --- /dev/null +++ b/packages/solid-react/src/util/TrackingSetProxy.ts @@ -0,0 +1,56 @@ +import { createNewSetProxy, type SetProxy } from "@ldo/jsonld-dataset-proxy"; +import type { TrackingProxyContext } from "./TrackingProxyContext"; +import type { QuadMatch } from "@ldo/rdf-utils"; + +export function createTrackingSetProxy( + proxyContext: TrackingProxyContext, + quadMatch: QuadMatch, + isSubjectOriented?: boolean, + isLangStringSet?: boolean, +): SetProxy { + const baseSetProxy = createNewSetProxy( + quadMatch, + isSubjectOriented ?? false, + proxyContext, + isLangStringSet, + ); + + return new Proxy(baseSetProxy, { + get: (target: SetProxy, key: string | symbol, receiver) => { + if (trackingMethods.has(key)) { + proxyContext.addListener(quadMatch); + } else if (disallowedMethods.has(key)) { + console.warn( + "You've attempted to modify a value on a Linked Data Object from the useSubject, useMatchingSubject, or useMatchingObject hooks. These linked data objects should only be used to render data, not modify it. To modify data, use the `changeData` function.", + ); + } + return Reflect.get(target, key, receiver); + }, + }); +} + +const trackingMethods = new Set([ + "has", + "size", + "entries", + "keys", + "values", + Symbol.iterator, + "every", + "every", + "some", + "forEach", + "map", + "reduce", + "toArray", + "toJSON", + "difference", + "intersection", + "isDisjointFrom", + "isSubsetOf", + "isSupersetOf", + "symmetricDifference", + "union", +]); + +const disallowedMethods = new Set(["add", "clear", "delete"]); diff --git a/packages/solid-react/src/util/TrackingSubjectProxy.ts b/packages/solid-react/src/util/TrackingSubjectProxy.ts new file mode 100644 index 0000000..54fa5fe --- /dev/null +++ b/packages/solid-react/src/util/TrackingSubjectProxy.ts @@ -0,0 +1,43 @@ +import type { SubjectProxyTarget } from "@ldo/jsonld-dataset-proxy"; +import { + createSubjectHandler, + type SubjectProxy, +} from "@ldo/jsonld-dataset-proxy"; +import type { BlankNode, NamedNode } from "@rdfjs/types"; +import type { TrackingProxyContext } from "./TrackingProxyContext"; +import { namedNode } from "@rdfjs/data-model"; + +export function createTrackingSubjectProxy( + proxyContext: TrackingProxyContext, + node: NamedNode | BlankNode, +): SubjectProxy { + const baseHandler = createSubjectHandler(proxyContext); + const oldGetFunction = baseHandler.get; + const newGetFunction: ProxyHandler["get"] = ( + target: SubjectProxyTarget, + key: string | symbol, + receiver, + ) => { + const subject = target["@id"]; + const rdfTypes = proxyContext.getRdfType(subject); + if (typeof key === "symbol") { + // Do Nothing + } else if (key === "@id") { + proxyContext.addListener([subject, null, null, null]); + } else if (!proxyContext.contextUtil.isSet(key, rdfTypes)) { + const predicate = namedNode( + proxyContext.contextUtil.keyToIri(key, rdfTypes), + ); + proxyContext.addListener([subject, predicate, null, null]); + } + return oldGetFunction && oldGetFunction(target, key, receiver); + }; + baseHandler.get = newGetFunction; + baseHandler.set = () => { + console.warn( + "You've attempted to set a value on a Linked Data Object from the useSubject, useMatchingSubject, or useMatchingObject hooks. These linked data objects should only be used to render data, not modify it. To modify data, use the `changeData` function.", + ); + return true; + }; + return new Proxy({ "@id": node }, baseHandler) as unknown as SubjectProxy; +} diff --git a/packages/solid-react/test/.ldo/post.typings.ts b/packages/solid-react/test/.ldo/post.typings.ts index 1425a9a..bf9ac17 100644 --- a/packages/solid-react/test/.ldo/post.typings.ts +++ b/packages/solid-react/test/.ldo/post.typings.ts @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdSet, LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= @@ -11,7 +11,7 @@ import { ContextDefinition } from "jsonld"; */ export interface PostSh { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; type: | { "@id": "SocialMediaPosting"; @@ -39,7 +39,7 @@ export interface PostSh { /** * The publisher of the creative work. */ - publisher: { + publisher: LdSet<{ "@id": string; - }[]; + }>; } diff --git a/packages/solid-react/test/Integration.test.tsx b/packages/solid-react/test/Integration.test.tsx index 38ff66e..5dd3f1c 100644 --- a/packages/solid-react/test/Integration.test.tsx +++ b/packages/solid-react/test/Integration.test.tsx @@ -252,7 +252,7 @@ describe("Integration Tests", () => { await screen.findByText("test"); }); - it("renders the array value from the useSubject value", async () => { + it("renders the set value from the useSubject value", async () => { const UseSubjectTest: FunctionComponent = () => { const resource = useResource(SAMPLE_DATA_URI); const post = useSubject(PostShShapeType, `${SAMPLE_DATA_URI}#Post1`); @@ -260,7 +260,7 @@ describe("Integration Tests", () => { return (
-

{post.publisher[0]["@id"]}

+

{post.publisher.toArray()[0]["@id"]}

    {post.publisher.map((publisher) => { return
  • {publisher["@id"]}
  • ; @@ -349,7 +349,12 @@ describe("Integration Tests", () => { return (

    {post.articleBody}

    -
    @@ -368,6 +373,9 @@ describe("Integration Tests", () => { expect(warn).toHaveBeenCalledWith( "You've attempted to set a value on a Linked Data Object from the useSubject, useMatchingSubject, or useMatchingObject hooks. These linked data objects should only be used to render data, not modify it. To modify data, use the `changeData` function.", ); + expect(warn).toHaveBeenCalledWith( + "You've attempted to modify a value on a Linked Data Object from the useSubject, useMatchingSubject, or useMatchingObject hooks. These linked data objects should only be used to render data, not modify it. To modify data, use the `changeData` function.", + ); warn.mockReset(); }); From a913d577de8ddcb6fb229f3eb3a2b86e73bb68f0 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Fri, 28 Feb 2025 15:29:11 -0500 Subject: [PATCH 28/32] Updated Readmes for Set Refactor --- packages/cli/README.md | 8 +- packages/dataset/Readme.md | 6 +- packages/jsonld-dataset-proxy/README.md | 157 ++++++++++-------- .../readme-images/Intellisense.png | Bin 275221 -> 234829 bytes packages/ldo/README.md | 24 ++- packages/schema-converter-shex/README.md | 18 +- packages/solid-react/README.md | 130 ++++++++++++++- packages/solid/README.md | 6 +- 8 files changed, 252 insertions(+), 97 deletions(-) diff --git a/packages/cli/README.md b/packages/cli/README.md index e88f798..648aff0 100644 --- a/packages/cli/README.md +++ b/packages/cli/README.md @@ -12,7 +12,10 @@ cd my-typescript-project npx @ldo/cli init ``` -### Manual Setup +
    + +Manual Setup + The following is handled by the __automatic setup__: Install the LDO dependencies. @@ -38,6 +41,7 @@ Create a script to build ShEx shapes and convert them into Linked Data Objects. ... } ``` +
    ## Generating a ShapeType @@ -67,7 +71,7 @@ This script will generate a project with a place to put your shapes. Running `np - [`init` command](https://ldo.js.org/api/cli/init/) - [`build` command](https://ldo.js.org/api/cli/build/) - [`create` command](https://ldo.js.org/api/cli/create/) -``` + ## Sponsorship This project was made possible by a grant from NGI Zero Entrust via nlnet. Learn more on the [NLnet project page](https://nlnet.nl/project/SolidUsableApps/). diff --git a/packages/dataset/Readme.md b/packages/dataset/Readme.md index 6769e81..e485aea 100644 --- a/packages/dataset/Readme.md +++ b/packages/dataset/Readme.md @@ -11,7 +11,7 @@ npm i @ldo/dataset ## Simple Example ```typescript -import { createDataset } from "o-dataset-pack"; +import { createDataset } from "@ldo/dataset"; import { quad, namedNode } from "@rdfjs/data-model"; const dataset = createDataset(); dataset.add( @@ -38,8 +38,8 @@ import { createDataset } from "@ldo/dataset"; import { quad, namedNode, literal } from "@rdfjs/data-model"; // Required for advanced features: import { dataset as initializeDatasetCore } from "@rdfjs/dataset"; -import { ExtendedDatasetFactory } from "o-dataset-pack"; -import { Dataset, Quad, DatasetCoreFactory, DatasetCore } from "rdf-js"; +import { ExtendedDatasetFactory } from "@ldo/dataset"; +import { Dataset, Quad, DatasetCoreFactory, DatasetCore } from "@rdfjs/types"; /** * Create a dataset with default settings diff --git a/packages/jsonld-dataset-proxy/README.md b/packages/jsonld-dataset-proxy/README.md index 5527f81..55840d9 100644 --- a/packages/jsonld-dataset-proxy/README.md +++ b/packages/jsonld-dataset-proxy/README.md @@ -10,7 +10,7 @@ const person = jsonldDatasetProxy( PersonContext ).fromSubject(namedNode("http://example.com/Person1")); person.age = 23; -person.name.push("John"); +person.name.add("John"); ``` are equivalent to: @@ -47,9 +47,9 @@ npm install @ldo/jsonld-dataset-proxy ## Simple Example ```typescript -import jsonldDatasetProxy, { write } from "jsonld-dataset-proxy"; +import jsonldDatasetProxy, { write, LdSet } from "jsonld-dataset-proxy"; import { ContextDefinition } from "jsonld"; -import { serializedToDataset } from "o-dataset-pack"; +import { serializedToDataset } from "@ldo/dataset"; import { namedNode } from "@rdfjs/data-model"; async function start() { @@ -72,9 +72,9 @@ async function start() { ).fromSubject(namedNode("http://example.com/Person1")); // Make Modifications person.age = 23; - person.name.push("John"); + person.name.add("John"); write(namedNode("http://example.com/otherGraph")).using(person); - person.name.push("Smith"); + person.name.add("Smith"); console.log(dataset.toString()); // Logs: @@ -86,7 +86,7 @@ async function start() { // Person Typescript Typing interface IPerson { - name: string[]; + name: LdSet; age: number; } @@ -117,7 +117,7 @@ start(); - [Getting Field Values and Traversing](#getting-field-values-and-traversing) - [Setting a Primitive](#setting-a-primitive) - [Setting an Object](#setting-an-object) - - [Array Methods](#array-methods) + - [Set Methods](#set-methods) - [Overwriting an Object](#overwriting-an-object) - [Changing an Object's Id](#changing-an-objects-id) - [Removing an Object Connection](#removing-an-object-connection) @@ -129,23 +129,23 @@ start(); - [`write(...graphs).usingCopy(...jsonldDatasetProxies)`](#writegraphsusingcopyjsonlddatasetproxies) - [Detecting a the graph of specific information](#detecting-a-the-graph-of-specific-information) -For the most part, a JSONLD Dataset Proxy has parity with JavaScript Object Literals. However, there are a few differences to highlight. This section details how you would do different tasks. +For the most part, you can think of a JSONLD Dataset Proxy as a JavaScript Object Literal with "Sets" instead of arrays. ### Defining a Context and Type -The first step to getting a JSONLD Dataset Proxy is defining the JSONLD Context and TypeScript Typings. This can either be done through a [generator](https://github.com/o-development/shexj2typeandcontext) or defining them manually. +The first step to getting a JSONLD Dataset Proxy is defining the JSONLD Context and TypeScript Typings. This can either be done through a [generator](https://ldo.js.org/api/cli/build/) or defining them manually. In this example typescript typing `IPerson` is an interface that represents a person. Notice the `@id` and `@context` fields. Be sure to include them in your interfaces if you wish to use those properties. ```typescript -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/jsonld-dataset-proxy"; interface IPerson { "@id"?: string; - "@context"?: ContextDefinition; - name?: string[]; + "@context"?: LdoJsonldContext; + name?: LdSet; age?: number; bestFriend?: IPerson; - knows?: IPerson[]; + knows?: LdSet; } ``` @@ -250,12 +250,14 @@ friendsOfPerson1.forEach((person) => { `fromJson` will take any regular Json, add the information to the dataset, and return a Jsonld Dataset Proxy representing the given data. ```typescript +import { jsonldDatasetProxy, set } from "@ldo/jsonld-dataset-proxy"; + const person2 = jsonldDatasetProxy( dataset, PersonContext ).fromJson({ "@id": "http://example.com/Person2", - name: ["Jane", "Doe"], + name: set("Jane", "Doe"), birthdate: "1990/11/03", age: 33, }); @@ -300,7 +302,7 @@ console.log(person.name?.reduce((agg, cur) => agg + cur, "")); // JonathanJohn // But this isn't recommened. The library will do its best to maintain the // ordering in the array, but as datasets have no concept of order, this is // not always accurate. -console.log(person.name?.[1]); // John +console.log(person.name?.toArray()[0]); // John // Get the id of the object // (If the node is a blankNode the @id will be undefined) console.log(person.bestFriend?.["@id"]); // "http://example.com/Person2" @@ -328,6 +330,8 @@ console.log(dataset.toString()); Setting a field to a JavaScript object literal will recursively add all parts of the object literal to the dataset. ```typescript +import { set } from "@ldo/jsonld-dataset-pack"; + const dataset = createDataset(); const person = jsonldDatasetProxy( dataset, @@ -335,10 +339,10 @@ const person = jsonldDatasetProxy( ).fromSubject(namedNode("http://example.com/Person1")); person.bestFriend = { "@id": "http://example.com/Person2", - name: ["Alice"], + name: set("Alice"), bestFriend: { "@id": "http://example.com/Person3", - name: ["Bob"], + name: set("Bob"), }, }; console.log(dataset.toString()); @@ -348,8 +352,9 @@ console.log(dataset.toString()); // "Bob" . ``` -### Array Methods -Any methods that modify arrays work as expected. +### Set Methods +Any methods that on a [JavaScript Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) are available. + ```typescript const dataset = await serializedToDataset(` @@ -364,13 +369,48 @@ const person = jsonldDatasetProxy( dataset, PersonContext ).fromSubject(namedNode("http://example.com/Person1")); -person.name?.push("Ferguson"); +person.name?.add("Ferguson"); console.log(dataset.toString()); // "Garrett" . // "Bobby" . // "Ferguson" . ``` +For convenience, some methods commonly used on arrays have been added. The methods available on Sets are defined as follows: + +```typescript +LdSet { + add(value: T): this; + clear(): void; + delete(value: T): boolean; + has(value: T): boolean; + readonly size: number; + [Symbol.iterator](): IterableIterator; + entries(): IterableIterator<[T, T]>; + keys(): IterableIterator; + values(): IterableIterator; + every(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): this is LdSet; + every(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean; + some(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): boolean; + forEach(callbackfn: (value: T, value2: T, set: LdSet) => void, thisArg?: any): void; + map(callbackfn: (value: T, set: LdSet) => U, thisArg?: any): U[]; + filter(predicate: (value: T, set: LdSet) => value is S, thisArg?: any): LdSet; + filter(predicate: (value: T, set: LdSet) => unknown, thisArg?: any): LdSet; + reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T): T; + reduce(callbackfn: (previousValue: T, currentValue: T, set: LdSet) => T, initialValue: T): T; + reduce(callbackfn: (previousValue: U, currentValue: T, array: LdSet) => U, initialValue: U): U; + toArray(): T[]; + toJSON(): T[]; + difference(other: Set): LdSet; + intersection(other: Set): LdSet; + isDisjointFrom(other: Set): boolean; + isSubsetOf(other: Set): boolean; + isSupersetOf(other: Set): boolean; + symmetricDifference(other: Set): LdSet; + union(other: Set): LdSet; +} +``` + ### Overwriting an Object If an object literal is set and the id is equivalent to an existing id, that node will be overwritten. All triples from the previous object are removed and replaced with triples from the new object. @@ -390,7 +430,7 @@ const person = jsonldDatasetProxy( ).fromSubject(namedNode("http://example.com/Person1")); person.bestFriend = { "@id": "http://example.com/Person2", - name: ["Jane"], + name: set("Jane"), }; console.log(dataset.toString()); // "Jane" . @@ -398,7 +438,7 @@ console.log(dataset.toString()); ``` ### Changing an Object's Id -You can rename an object by setting its `@id` field. This will update all triples that reference the id to the new id. +You can rename an object by setting its `@id` field. This will update all triples that reference the id to the new id. Setting the `@id` field to `undefined` will turn it into a blank node. ```typescript const dataset = await serializedToDataset(` @@ -425,7 +465,7 @@ console.log(dataset.toString()); ``` ### Removing an Object Connection -Removing one triple can be done by setting a property to `undefined`; +Removing a connection between nodes can be done by setting a field to `undefined` or using the `delete` operator. Values can be removed from a set by using the `delete` method or the `clear` method to remove all connections. ```typescript const dataset = await serializedToDataset(` @@ -445,41 +485,16 @@ const person = jsonldDatasetProxy( dataset, PersonContext ).fromSubject(namedNode("http://example.com/Person1")); +perons.bestFriend.name.delete("Bob"); person.bestFriend = undefined; console.log(dataset.toString()); // "Alice" . -// "Bob" . // . ``` ### Deleting an Entire Object -If you want to delete all triples represented by an object, there are two ways using the `delete` operator. - -First, you can call `delete` on a specific property: -```typescript -const dataset = await serializedToDataset(` - @prefix example: . - @prefix foaf: . - @prefix xsd: . - - example:Person1 - foaf:name "Alice"^^xsd:string; - foaf:bestFriend example:Person2. - - example:Person2 - foaf:name "Bob"^^xsd:string; - foaf:bestFriend example:Person1. -`); -const person = jsonldDatasetProxy( - dataset, - PersonContext -).fromSubject(namedNode("http://example.com/Person1")); -delete person.bestFriend; -console.log(dataset.toString()); -// "Alice" . -``` +If you want to delete all triples represented by an object you can call `delete` on the `@id` property. -And secondly, you can call `delete` on the `@id` property. ```typescript const dataset = await serializedToDataset(` @prefix example: . @@ -512,7 +527,7 @@ const person = jsonldDatasetProxy( PersonContext ).fromSubject(namedNode("http://example.com/Person1")); person.bestFriend = { - name: ["Charlie"], + name: set("Charlie"), }; console.log(dataset.toString()); // _:b1 . @@ -536,7 +551,7 @@ const person = jsonldDatasetProxy( PersonContext, ).fromSubject(namedNode("http://example.com/Person1")); -const alice = person.knows?.[0]; +const alice = person.knows?.toArray()[0]; person.bestFriend = alice; console.log(dataset.toString()); // _:n3-0 "Alice" . @@ -556,7 +571,7 @@ The write graph can be set upon creating a jsonld dataset proxy by using the `wr const person1 = jsonldDatasetProxy(dataset, PersonContext) .write(namedNode("http://example.com/ExampleGraph")) .fromSubject(namedNode("http://example.com/Person1")); -person1.name.push("Jack"); +person1.name.add("Jack"); console.log(dataset.toString()); // Logs: // "Jack" . @@ -574,10 +589,10 @@ const person1 = jsonldDatasetProxy( ).fromSubject(namedNode("http://example.com/Person1")); // Now all additions with person1 will be on ExampleGraph1 write(namedNode("http://example.com/ExampleGraph1")).using(person1); -person1.name.push("Jack"); +person1.name.add("Jack"); // Now all additions with person1 will be on ExampleGraph2 write(namedNode("http://example.com/ExampleGraph2")).using(person1); -person1.name.push("Spicer"); +person1.name.add("Spicer"); console.log(dataset.toString()); // Logs: @@ -592,19 +607,19 @@ const person1 = jsonldDatasetProxy( dataset, PersonContext ).fromSubject(namedNode("http://example.com/Person1")); -person1.name.push("default"); +person1.name.add("default"); const end1 = write(namedNode("http://example.com/Graph1")).using(person1); -person1.name.push("1"); +person1.name.add("1"); const end2 = write(namedNode("http://example.com/Graph2")).using(person1); -person1.name.push("2"); +person1.name.add("2"); const end3 = write(namedNode("http://example.com/Graph3")).using(person1); -person1.name.push("3"); +person1.name.add("3"); end3(); -person1.name.push("2 again"); +person1.name.add("2 again"); end2(); -person1.name.push("1 again"); +person1.name.add("1 again"); end1(); -person1.name.push("default again"); +person1.name.add("default again"); console.log(dataset.toString()); // Logs: // "default" . @@ -627,8 +642,8 @@ const person1 = jsonldDatasetProxy( const [person1WritingToNewGraph] = write( namedNode("http://example.com/NewGraph") ).usingCopy(person1); -person1WritingToNewGraph.name.push("Brandon"); -person1.name.push("Sanderson"); +person1WritingToNewGraph.name.add("Brandon"); +person1.name.add("Sanderson"); console.log(dataset.toString()); // Logs: // "Brandon" . @@ -641,10 +656,10 @@ The graph of specific information can be detected using the `graphOf(subject, pr - `subject`: A Jsonld Dataset Proxy that represents the subject of a quad. - `predicate`: A string key - - `object?`: An optional parameter that represents the direct object of a statement. This could be a Jsonld Dataset Proxy or a number to indicate the location in an array. This argument can be left blank if the given field is not an array. + - `object?`: A representation of the direct object of the triple in question. This could be a jsonld-dataset-proxy or simply and object with an `@id` field. ```typescript -graphOf(person, "name", 0); // returns defaultGraph() +graphOf(person, "name", "Bob"); // returns defaultGraph() graphOf(person, "age"); // returns defaultGraph() ``` @@ -723,17 +738,17 @@ const hospitalInfo = jsonldDatasetProxy(dataset, PersonContext) .fromSubject(namedNode("http://example.com/Hospital")); console.log(hospitalInfo.label); // Logs "병원" -console.log(hospitalInfo.description.length); // Logs "2" for the 2 korean entries -console.log(hospitalInfo.description[0]); // Logs "환자를 치료하다" -console.log(hospitalInfo.description[1]); // Logs "의사 있음" +console.log(hospitalInfo.description.size); // Logs "2" for the 2 korean entries +console.log(hospitalInfo.description.toArray()[0]); // Logs "환자를 치료하다" +console.log(hospitalInfo.description.toArray()[1]); // Logs "의사 있음" // Adds a string to the description in spanish, because spanish if the first // language in the language preference -hospitalInfo.description.push("Cura a las pacientes"); +hospitalInfo.description.add("Cura a las pacientes"); // Now that a spanish entry exists, JSON-LD dataset proxy focuses on that console.log(hospitalInfo.description.length); // Logs "1" for the 1 spanish entry -console.log(hospitalInfo.description[0]); // Logs "Cura a las pacientes" +console.log(hospitalInfo.description.toArray()[0]); // Logs "Cura a las pacientes" ``` ### `setLanguagePreferences(...languagePreferences).using(...jsonldDatasetProxies)` diff --git a/packages/jsonld-dataset-proxy/readme-images/Intellisense.png b/packages/jsonld-dataset-proxy/readme-images/Intellisense.png index 9c25bec24e23fa0b6b896ba5f57ba8cf8f0ba57d..6a9f53ba8d3bd906a0a7bd50c0178819026fbfc3 100644 GIT binary patch literal 234829 zcmeFYbySqy{x=M$ba!_uF#|)VqzDKINXIY?A>CbqfTV&7k_rk+Bi$uk(nyCg(#-$^ z%zJsCbL)N9`>gj}zqOuct>=$(xddkKeSP=dpZ)Fqoo6}^)QIru@i8zkh}7>XKg7Ve zwT6Ll;~EzmXo>N^IR*Th3eY$5dIb*TwipE$jBg7dviH&O(4b^F_!txK^x_@|SqjcW zPWwgbN3VX&cg!B(yNADf^yQ79gIP<~k@fgo>{X|77Db+e?E#kGJxrGr2t`HQv!mmW z8y#wQ#GZ$Gc2vCiNG+JLY-zRJ7=sank;Z0IO1iw}fq{V;;h?0Xqpqa%_YQ%5Wd^^H zz1OM0*k!3#%}y2VL%Q+&ozyoK6-Gy@SRJ+r{1T}&vx{3=gzB+zdCMkl`>=}5<<;V% zh$2?pkgz&}2eE<=SJBCeakM0fsDs_bwOuAwh@)m@Kyq0AoUK?E`O#A<@G(9nSeaBY zXOJKEC|P))$r6dXeH!1d^8nUJe0u#hqx(xEe&33*u43!QU-Z7X8;tW=_68PvEUp$$ZWae?Uw63a zT3W114bhGnwXt)?=;)|XiO$^nT9{(Zrh(#PLC0*R_I`L?gs+=GVsP*!^?_kbmg(fd_BCNXh%g)qGAys5FZu{Lz1 z3WdUyj`etc|0!i0z=#130K*w+X-dIdoduybuGVltKW8_96EQGkBFh{r-t2Nxt z!9|vRud$V#)xk!V-B45uq~)drw|BS~-~rbQc%TmpaD++Pu*=Kg%lJtF1f1bsP*y)@ zCl^mCKUwy_=t=>9|7sRuXZ>r4m!mAZk(LgtlB)-t6(R@`1PQ44Irs>(%i*)ic-YuV zJycfxHwoaAEW5pzmz$K3kgu<=ps$FatB0KsSW;3_2qY{dEGz(w5b*SO@q+pZxOj5> zBJnR8%5YDZhl87!gR2YcFPczmS8p#_c6Okj_3!mLyJ>0tChy|;ZxjGLg#4gxLSR9V zkh8PUKi}~5Qt<(Z{Ch$F%Qrmr0l5`=2={dL_JF}veBdr#9RDPtrmm&)o5HUx**Q47 z{k16oy#JWY2KIZLo41G4Ut?@wLU1RzGeFc6SReR5#(O!~{sHSh*7mFCukHMEA;5IM z>Ho**zxV#vU|^J%mXxw9%=_1*>dLb0zt$^d;|g=Ik^1XTNf9W-T2c%y0D?j!1R!8h z5djHNI8;Db7-kI>6SfhD!NvYTO5MfN3+e)c{~`qt7jyvVfNgA`A`oja0b22@8Nltzp(SVj?yW2>c%;v^^XEu7o=Mb5*}c*#M-VP%*Hzh`5*lL>OQW2uvI< zAOVHg3c!UyAW^V5NE9Rj`-{}CbC9~Lqb|!XEC~A3qT>YhvUT-vmSxw1!dSKS{`BZO zIK%b4pubQ9i$g%-Vv^#LV2C6bB>s=rAHh950gn4c6bup+k@)L%8<>czs~%ggC{V* z|6fi25-B~n`@cT@>!XvyU$Vr?`j=ElL1F*ef+y4mZu8eV0b2j+g4sh|?BIa<_&2}) z-R|(e-~|{M0)xXO#RNnoz>r_3C@NqL60re3LSb-gTU#4zN$dZl?&)glXu`hS5U^VfiX zs2SkBf3*SX3($r_zt!QtLHnh6{trI?K8*i^GXSLjJIVhD-~Yn(U%3892>g!*|ChV| z3)lY$f&bCq|8m#=Hn{Nr1XOSrzzy;R!ll9{&ri_99_3v$SK?=}<=XTH7 z69YrI?bm-yUK^7+pb^JQT}uUL1B;OYPh@8`6KG<^P*=XI?>D=>V4Py67O;Na+L$B2 zF3j%B`oair_oh)%Vb#lk`>+z`$|?J9Crw)sG4Z37i_hNUQ?P|`n$6exo5_V-kEo1o z+%fNxI+pgzPF2>8bUnl6R0s=vqC9ydqA{S%ACee&b9GhHwTYPh&*PCh_&w>>t5-jG zV=cy$WBxor-cz$XbG5Fm1f*Inn#tcs!a~b_ko|eiO)f?EL$QoXp8k2Kx9=gX&_8H* zPCFT^J^0hf&Z7x!`qSBqr}ux~tK~n>jMN zRr${irrYtMNvN@C9W?3Y9HG@<1giDx*ERQ!GurN;z6xf^p0(O&Pz&k|yp51=-7q_U zj5zygWa*d5Gk9=T*PYmN>4VG0Xezej$ohL-BiTPUn1^N7bJl0%2d5z|=lCNe+RW28 zaV=MAQ=+ktdK1>~WUf!k_LNEO;qLs%h-*&_E2$mkKWviw17! zQ@vDrQidyrwUup_#U!Io#jS6}*sZcm9s_Gr07tU(MC#ZLbcgs<`{L5>y}3CF4PsoA zHHvf)R&EDo%WEm(TPb+2Fq2REfYok#zBVA25< zt%$ie%se>J;BIg9@|`CYRym+)_sPaL`fb`pLp@aJVd!dcwk4R8QmJhMAx3w^hsUNF znz&>e-%cA*y;;in2Z7fV#A|doV{7zod+!FfbR?avGnm})q7-OP_M>m~s*&P6sg|kn z2qND#RJo$~koG>@p$1%H42p7d%Xyx(Zy-rLz$Brxz%DOyU^66fNz5p(YMhiK2L49K zeIK`-qCxshw>2bal{vGptkaWwgov4J7AH2@HDoMHw$&6hN(`U92V4 zsI2o$;)EjS!P5X-%)P6E#j?l#zq!=^b*3gQOAwQw_}o_~J-9&7*hkn3w2U}RS|jZn zTr<-uh?Ow#tkYRyw(IoNz0-n;R-U|p9>#kAlT@7kkg;Z-InKcl@!;Sj=E+L%%u@F; zae0Jb{Ka#UEu9Rt+h2R2RjyTiG{dB0+%6M6gebqZ9z4iw+BYuEJR)~|0~LvxCkvv3 zqs+E$k$kEreu7V&sK>YsG9PmB4GzK(k2VpeH&hb$b|{GVV2M7@5>G+rVar7ul2F2K zlXCDoQMJ)cQWMXaQ}+CCpYH4=w38(62QsAXGM6rOtzTW3VzxZdnLMf{rs#>RQvYVr zW+$Kt?nu122|IAW9x~qE=8MtmxTc2s63xkf`Ef%N%&z~V;_*canPQuXM&2mvfN=T{ z_mFLhL?XBwM4vD-HwOz1%>m?|?T_4##Fxp(lVJ8^B@@0DTFybsoo~XieQF3&=)vgLjc_WUFI-5m@<*HF}jg!vMDpAV38-?!A=6ns@;dvQn z2Xer7$Rqw3t`lFb)(Dw$`Py(UxVtENIU616Qs%-((KS9U+R{O6gDyldnC9fWC8bD zm%JE2@JYv|sS>PKwGitV_*vfFi|IbG1RoW(vRR-=+_u;iAS zL#`hq?0 z4mx%*32m6>8WH*xo5zY(L?^r+C8O^6uJn=oeE9Wf#gKl_B;uWm_S#$=Vc8}4+;ORE zu_2=I3bV6*{CK!o)1KQqF7-e%eT*U@DzeM7uAOXUwpGDkYR6}cJLKe6e^F@v&#^7S z2bN##uk?o>WBI;I*;8^_MmLwro9 zJ2AuzqwQ@M%>F z%QdeLlW2(om4V}IK4Q)f#bwj+rlvDH*NZYl^IVi&vJF;ONJ7NrxfhorJ5lQmPgVlf|>S4wISS5#pOK? z=UJehf7XXxl0syiP|}HdiXE}fu8R(v>UQ2PkE1*JlpEPzpUOvV z2Z+Ygh|#bK)%VfT%7F~t46MGNT^Sq&bScSt!0O4*Iq}>X0jzZ?S2Fc5{-Hfyrl=e6 z-2GI>$^wlF-hQh_RlOOkfKscH3rHDml;`mP|9C_5Gbi*}?B4TQ1aEd@|5vH8AcfB% zOs3zh1VU`H7hlPLKt_k+dD4CVYJ`sY=8JxIJd8@)nWJ=9M7{!a%1Kh6VNPD)DY?NS zN8^>?sate;CH7TB0~I03?ItY)YaBJulUxVhR6{)Ytw5BGJ=aVGRl~U{!qb=n7+k>)? z>-3DxXB>x67UZHl8ETV4_OjI_#YfaXTZEB#<0QbV(R@`Re`!zeHCH$7KOC?_&1c#D zy78axti>sOZdCC>-T2Jly5iCj@di~so$9I%1^W7YWZ$j~hsbz)oEe08B1 z?n#n^un8R_RD@PIimNZ7ZY9j^k+}xNOEx9(5hzl&?_yW2<4QZGH6=ZJXkYd2Tf4Y) znQ|pv@@MhgqqhQ;7z2iD+j)v%VAqxW5c6GOn~A1a#14P^yhC9<*S+@L zz_Fo>FD$K31JR*Y#5EOy+6^RpysQCr_t^?Ot4LP z&zPi!_YC6h;)`DvLuf>PS|hY!!!ps$$5JhlBs;WA**stRyejA1tX)&2tb_)VSKRJp zBmDNZ2&mXJ(Wi@Bp{2jQQyIPN`?M@h3x(Z8fmQO?L?yo0WT?>${khtMgP|pfuwJ@iDZjKcgGncJdCaJh*{T{ zMSh%3-j{A^8zhCkogb*s?7B7nK&IEV|h~#k9T4-6BguM{CD&JS%@Utl`Giak1~>bP{!oW*c@eSQo`cM;UvdtBch+> zA46U^C~P7}0`Qk=2ItLqWKQwE+#^wD??6szvzBhak!G)(Xr}fisWi4yljm^4zsPU#I8G0Uc_~}I- z=(@I+RxLH$!ZAJDWzOe+I}NxBT(a|@gjj8~V&*%qPPAjHUz1{8h2)f!2*_RhpZ`Y@4m+Y_Ci+m#$ z#O$+oxEhZ74vc^>BNO^|-gc1*m5V8C^MqD?=; z+b+`pN{Ky$lK9r?xgOFhnlG@(&_)#D)1Ex*A4Ry3$~!Q4HU$qJ6rPOewY$W#MYg#~ zykFY$L|+FN7N#dU#Iq&Ba(N%B{K;*|=;ao8zg1s;uW*Z{r%Me7wKi9=tk~adT_)KC0mszjVoGq6bL^~gx8N%`hOe&4$;HmLA~KY9Z^f$ z31e2{X64iN)~`WZd+x~6mBzr621d&a^_&39G6s^9`{Lu?o!Vj!Ps2Xlxnc<%UIWR+ z2Tq_4SJo2L@PZC?v@-*7^$k>XDfJD!og}v&`yv>1DWUQ^*4-RU$d~Xwdq{es-)ySZ*9CkbKXJJd(l*1i!Y9II5#EmNhVL`P z9a>LBa;vxWo0Sy7nKhsMfBNYlJxL6hW}@+nxzf&Fq~w(vm;?tJ4LQSrlFzHbUdb! zDd~xgU{ul7p}ZB*9tP-Am-)JOKrOUUpqise%cqh#@k$=W0g-^`>9(=0tu3hg>yA&o z_ZGG9-Xa`CORC5k`S$jobiw&lpcM47ZU|pj)5wS|vqhQK2l}<-&RRkj4_)UsIJRd2 z>#YE*STg9m+Tyk=l%xjK$=q%fWcTdx4@rsHcbhvDL15xFSpEw7{SMKZm~i*R$7cbI3SYKB5EIBZ9{+%u_{c9pli3-5YDh1IRjFY2qkUWtr$ zePwv_mFe~(wyoPeAUSbN(w=%&rC#s%+WH);RMfO~o6c}M+BTy+DBNum>)j|e3n)Tq zdz9G6P2cc^Jh)g)oBsmcbWj71f@m3=oBt?~zv7d>Tp>|Ujtps)-$7juOYfC8HV&+> zbMK#lLLMIMW^xP&zfMi94>-9ke|?Z7>A6lgWg;dfcGlR6l0HQu`;IaT3-b*Q@xT8z z>EGwJHzE%fVTI&5VzimTcp^VvoZ%Z%r`bk-&Fr#lQmn4RAEMSLJt1-LY!J?blKAYB z?=Ep2C$)9hpUX7Uv}ijKPN~f7%*|Xw7lyI*YQ5jQDR3IXT#iypyIUJ_{n65rwLB+T zS-W##1lONu$2#|B%8VPGRZWxV@_zj>8JqjT*5b*lo{0qLrh=rO z;$B#J?cJZdlRL`{iS37y5z92V<$>g|9C!h+FbGC?>h9k3@ZCZKNNjWFqSe< zZ@dknjU7+LO)YKPI3lIX4NGwde54q1}w;4mC7sBr0TvR8ZT6_C0?Gv(g~zcbjwOjYEO%_UB-}d55RFnp zu~_7^{QS#DsqQ$Y@4LyFoG9YqUMr%+mMDq~8Vim=H8)Zaa<8LgspE7EGcbKU;NwJP1oRWYOdt23)q&ELon4FGfSM! zSAvs=DzTFTFDsd_M;+@VxV+XYDhXz;O5AB%dw+Hq93GXCpPW8BVq3RjFoTq~g?xRT zZ;L0!F42~Fr*G(eg2vfI{iMMuaY{ArQ2`%-X2>S{=`p=QQNp*m;<+7&^cjI6(5xsL zNH2anW_PKxG&ttlC9TLN8KIvg8Mb-uPNPljBAoUr?5hLF!~}jk@9X9eab}-HiWMO; zA|iptf5)Um^SOHK%a*v6E7L_ZDUTIDR3>McQDU?3QoCy7UCYqSMF?eHw-jcRfGrUT1zWGPucV~!Yx+m+I+>$Txno_S&mx{R*rqUU8+ zeBLqs)hmLu)RrVVqD_!w-$$u}gM^peS*DPnkEo&4TS-LkvN+yr*(=i9@9MV5?h z)wgTGad94MRUVqt$#ThXxxu|KP$n$pO|2J?!E17Kc8=Td^?Z4{Y7r$lx`Sk8S!MAj z>af{9V2p@kF7B$}4`~?P@skaj{iqa#b@M3gll+Wd^*5*F{EaG{%lEMhCaC(k2~KrI zAg8IGjAJKHd~zgHFuet)Ptd3OM=~P5fTBA?3YQz1Hqzw>)AE?W!hNO>81B@ed{^A;=1mtv1L9Kqf?L=L1HI$k>@xp&t6^XL ziTV*U<4968!*L(6?>!)GbbiJ(*i3>a?HDOhf}k(35*Xc;>T8tmxrhzgr3^kY4vX|HSH30>h=>_a8Aq6u&~^?(l{UrmsP$y?bS7 zdfWB=0Xw!t@M5R^y`N0hzEjU!TM}5jdNT43-zqKy1_2qv$04Yt4MwMxIf67uCuH{P zw!%w=H=XujBWj?ZdfQ7bvuoNm)m8Z7O(00Rs?NPg4@M+ zjVEXbv-P=L`AOgM@8it5Z842CX(RFi61hvn9lInIjY$)Um+h1M+?3}RdYl&`uc6JV zYo6)HpGmr6+`L!<*QOx@ncr*WBOWoN*m$GfSmAcz2H+?+Zq)&i^G@U0;@#i}f>@4t z2H|@&so$*4Y;?G<+E?Y`YhYH^Xcg(ddc7Spnw zyfSB8ATF7mr4L2bh7JVoHAj0U=JMt@uhrJpew&-)h|RwA$FAJre_n^ZPL^@WDV<_Um zk)vT>7q|#fq*#lzF{{y0c-=a5IOosL*5|&|E@IL^b1BE2V6$;)5**)e(0Uz2D0M7< zB+dYn%+_cYt+E+uU~KQw4_RKeYTns;V@5z5J*zFe(PcpunP>iU_r=0_*r3XZMfFW+D(|I1xN7>OK6P?w8r%Xw3oK*E^Z{OtmmNrESGm? zX2#0X(=%WxPryMDR{|k-;w=0rJ}2^kfPmnO`=FbIjjwNNAaeItp!X|PGnxNS8#}5e zos8Mk^ZkaCFN-5TGia@C=B59_I(*Dj_5sThGxtqgX1(>a&u#Hab|MlT$4RXBH!BV? zeITsgZ#)4E$&W{<=UGWGs}JqK||J#atk*-37ADTq1X%Vb9B+4 z@D*KiKtCt*>OaaocsX(REKhc_0QNe~T7Lx0VikbntsO}C{e~GjY+0izZcEZcocMx= zh8pV(qvZ>wWd3bD!NO^q3nS@}y0TUx9jdg#;@0ZrO^c&(&^7pOpn<{o<1_Vpa_7%- zV=uTp?jKN(~doaC=$58$N%NH@P zbQc8#tUU$;p{oMI#0TS$4+}0LA|gu0uNj${4^QV@kGdIL%WG?+!BG;42LGYNQ;61v z>cku4@W9?VN9wMJq;CuJ-S@n1=x!re0?B!!6>zCu{^-njVVym{byeAYdE2uT{c&U< zRWrh+vrc#^0BQ43K5!#DWgO7F;UB|18bOeJC(3E0W5*oU#zUC zXm<@cVwjqm;*ERaI9+zMc(OJBZT>yKMlLTqEr@NoyT^e4k9}FP<)P@-zVlXK=A(;r z3WoY4*EA`28JlY}wgU=AlD45W7j%@&Zd1#qq}FtwOu*VR0tIF)f4`44%n|K$_ioI% zgP2?PA5Kyoz>N>5OkLd(!%SnG?Wnf9Wdm6|0vGKR#qV%Kq_$=h@Rd_!F^)q`e*2d# zPakl{*RC;dbqd-dnSt9hYn=JkxGg4`k7;O=PLIyo&oUQ|t-v=Uj*fdQJ7A$WZ?UYG zGvnTXsqOL?ejZ>(`4KnSfm%q{=E9Z{5hyVs^9m>?AnvlEZq!xuI%(-J9BBZ*9?6_wHt$j9p!34h~Ou2 zEq+DRl4L1ntv9109e!q8=ePUNVMUM{d6S{J9S`gr;*1^n6yIVryjyJ+MxYr^{X|$+ z!xAfkW@~Cw)~MU;=ZkrXNT2FVUoj{_3Aw@tbO$Y~ZOMEBhC}G%7S{!Wr zJ-%>KmG`>JR5HX8sbc4qwi)vMCMS}phA8y&*r;l=I|Rf{JxN7}@;h~Zuv&_Y?l>cD z$q!fsu3lO?^l#}?ofQ(hrNond>%%<359+-C7C-z*cd&KXq_`nXJQh=)h3MzS<9U~S z;?23KWO}6^vdBWR*4t54@jpIDti*d?8i;igh^^-w%DJv91uUk>K|Lok!`j`r?w?f_ zt2hy&L4|j=qS;7waWT$l1g#7ob}uiYWbSJujO zSf6wm|H0Y(p8N&z*67UDcnh zdJG4R2avfhCwX%TE~l+~84QM54*iKzFeU&Vj_o6MZ~zI zE%Km?%=NXTc;S;ff-56=*rxARml6Uli)lS>D!UKLF1J#0M0J1OW@iL>yykomrr=b3 zd+kp!Z@Tub|LiUEZmX{~7PrC@{o?7Zgt5cNl%A3gdNVmZ6K}2gwR0USE?ZgSu;x#9$03I;C)gKUUln$dw;+ zAS5iK{pbZArLJ;Dqyp2ScKYoE#pQ^D)3#wF@}1z{g-S`dY@|VLfn{CKT?ZlYBS&V2 zQ6buNZ;Rz${iHj4MZ&l)xdU7PQ-L_k5whY%PsXNcT>4=nNQJv?I5F{T^h?ZgKW>n= zec-Dsp%!!A51|~dB_o36BPK|)o%eXhV?OAF8Z{iu#E+B^hPOqm9rE>1{hMW9ECsK> z2&IDGEt`fxXvq|Hh;M7}HT!Kh=lA=)x!=<&≀Bd>KztfdjpaWJ1gAwy0^9D%u)% zdsM0vjjnQsGvw4sIef}kQ1&_||2r$+OJfz^ZZcpGu?7+Zuel5iRwm5vwqTN+#7|?F zw)U`SrXVq%-%!CFrxr;;F?yFFM+yVbGK#oXn=MDfQcdA`x(~{FSsJ7q!tCcW7NISN z?te4!cVA0Zg)oWO-Z4VQt&jt@n^<=xKgx(EmBfc06Q9cldt%^uTb}YPpzB&&k2Ahb zv^NQ9^sj{FF5zHx%gkIkY5#dh8{n>ljgvtlBvIH?l#xz)pNq!L*EZQjjW#6q{Yh&?_2y^PsHtr+2>W zs5}9`RFgj5YtlduyKcY^R35w{*}NYBGhjt)Hg8Au)<<7oHOd$w=6PIDxiBNg0+?(= zYR5s3R`(;)zirlG7hinp5>q?H6CQnUAwPzKI@M@<+ibsG$i_U~=O1zJ35t|UB#Sln z0X00s`@#RzAi19Evxtz$e2Yp;?F08Z;5PEZHq&w(Cav`D9oMbr*IU^gbz|QGwQ-^I zW7jX-CTO=MB(iS4$5-2`uACZsTx~C!5lQ-!1pB+cocZ|DoBG619{0h)K|*y#k$z7g z+J+k^-dX4@2xVZsSx)Up=e^)LWk`pSPIvnm?LuAk}hsybeuZ>$cK+<^rqH@nK!3h*aYd|29acQLJpZk7 z&_`;UWxKMvS*vyqF2RV|5|SZj+meDbh7hmP(9rmwyh`;y`H^aDV)lO2KA98TO&gU* z78n>33{R)8Gijmg13EMY#=IG@%B=+qS0;C{Q zc~7Rc-`+Q&uvPmN@?%u6BA7jL^A0jaevz6p5k^f-{nKlfQ$3aexxtLszlmjFJi3RJ z+++qb67$6#5p{(x-LNhXWXS0HSD@?_0g-4pp+4BgPk1!|d6dm#E;BGlAaA|?ltq_u(asMo79rjGArvVamBAu1 zYuZC2DW(n|g*LddN{-^eZZ^rW4!?|3i=FCNS#=FHh;P3Ivlz$-s!Ohl@6TLk?s_$YZeYNb~A_PYb%FvTDxR!tYvG zsP&jUBg6EI`V(aM)qz<8IOz)eDKh&rzk^tYng5AF$bQ70=k>hgx~;VStAfCZ4=h;f z>7*)TK+WT%NRgNAY^Jf~kn3VdMqVDr>FKGP?t9SRRnXr(0nI$}8nlaYW)xEg`CwCU z0SaU6!x7|xWxn^y?S#qHn7KGB#;z5yydBeHmsTz0l!`c(n9joA=28^iUAStt{_TS9&LtAnna$&YoiD6?Ki%d;7bY8HqHCZx5;3qkFKw zCnb7bUa!e+@w}SqL4D59Hcnc@yoC74O`$^qT-Gf1a;T0OU?2rbl`3hb;o{=w`Fv_> z=DSNvY#No(2&=)WqongHZ-$Xh+6ZrA>D}qQ9>l4!qt9iH8sfrXYrsz~N6gYuAb}s| z?(kxA(jYUguC=lg$a48KkvXOfo}4*)Y@20zdd)i9N;5SfotBo~P49eeYy__3In_0b zCaoPDo;@h&bZQ)$pJ$AYj&3?%H$9P2{EGOyz`qyq7G#mlw5UgQ0~d4Jo}xDOUaHWT zS@1JJ)RVi8luPOx$gl0AuNRPXJBu7k<~&QLc@i_6@-yr&CHLKoWE`$njxam3q|ZEh z?NMS246W>MEV<0hO6Dd9v-8J|bKS4;JBN}s7J^d&MVPWz0*mibK0u`RbNVIZ#y|!( zAMZ|EtW6qPtaLmj;1}fAdC8SAH|O1YRLK4e_8>>93s^RdkOikYxycZ9#C2GnMH2f+ z0gQ#Dci=OS4#1#K;7(9g1=7!2u-M%1`#;^94(yr_N<3ZYXS9bs$*XAK3p`CPMD4{g z-aEv`F~W`A{rq~%m&)e4;&agN+vGGYA10M;641Fbrf}jpB$IcYs6@8|-_)S|;;u=l zGG2JvClkD{|EecGaNE$pAQZ+Pd7;7-Jq$O{jh}93EV38xUS=+FBZ1P_Ap8^QkOr>r z`AQBlqa!c_QK)!T4lJu4n)}>GS*519k)Z6#P*R|js?9pS9i?FWS|4uU`gM!B1y^tH z8R^H{Xq~r~BjPfLOJDR}p9FP&Zx(AQv?|G}k@FbV{Vuu1z|eFw>`IpywY|GDx^+T# zjG|P*WGgSPYeTl6WG#Y!P`ys2c7V_W0t#HV+Cwt**O0GIL8SjSWanPLv=&rAY`9!k zQ6?~b`xtJ5DEsPvP15^7KH5=ex#-Etg*P@*?rq?a_%ERfDOdk^pLN1ucxp0uF-ek{ z?NPJrMYAlnBa3zJOE2iFHyTUO^;KU7^J}?{4Mdm%>_o*37Bzb6eAw)*xSta!J*|Gr zKbezXNXY&C5FTz`^7@3%Se@bJ) zdb2JVK`h_)TRMBlVwxb-~7!(#4S8J42svNa?neU*+~Cmg*kdu^%2HYPi*Buk@oN(2I%$9B zJYIH<%{W|ak!H|C#F;L-r+`9&n{OF&V9g=V;biWN(+FynsyPuOSUyZu zSGjW1+9f1Wfi;$+xPnsUU|FW8>}mCD-E2?fuK6hm@h=1}y0P`1FB(D#m8rr9Ww=wUzIg9?${MRRmA<1xf)(%EtZ58xa@e@fv*s|8(rv&+oP9;R8B zv%G?!<72*^E-~cp4(N^M%+eB~aGZ^>(`j|F=97LQB!g(`k)eI<+&75lJLOMi@2%#5 zaNR~23ZixM^i)Dzqz@ZJXSmQTAuCB2zk;>mOse}YE~FT?93h)T_dk$7eUebRbu_(! z#PKSXHnT7v-8-R6s#LK};e4mVTi(<(cri<#U>kA2UXihfFv_^qzjE~LsJ%`(fqi<% zk<3K|X4Zq~yfs*9snk)ha6+*h+~5CMptLlcyJ+|-ee0%SWEuW%WB)gU6+`NJYtw3$w=0Qt5vF!Lyu^bs3 zot$lHO!|M2uk}SnbaJ@3eC{$LsObVcF6p^B$~cuV$cJzCUmsWBJBp(-&0wI!za=Iv zwjWH=3Btq5*~$GQf@Z^j*; zyDb7Y{u$r{we`8np`Kj3n@g&Q%NF^sA4@<*-$C5F)W`b1p&DxuXhrCTV4)6o`mwuq z&Pui%%;QpWcT%oGnma*hOoCmD+^gs;ulC(btcAgRgdW4wC|jz#dYrln+levUFi2jk z%a+kA?x_xT+v+zbJvc66Y-KH>cL%<4o&c2t+KZusID4(ypN!sn1`n}ZpCnx_EM18U zmX*5f7}dDmCDq|Gyf+>xZR%@e^syosDOkETwuh{5YG99L_cAXq;{V*x(0_&W0az|+ z=37ggL;BIamqmE4m2kFOKtTUiv#cEIGVVOLyi%w2QBg&8eV;4(Q0Uj_&xr>R|Drjw zaR_72%E`4{PUyj{GRxL(lA!$Yji8FJlao|(*Jm6xwYA2NYk?w?fd|x|g=*%iOiTQ~ zGW6ixUG@Y{4}BIL+U9PaYvDttH0@pZ3g35ce#Q0r0y*D`Uc9^<%x}S@PryD2$O6v& zy@Qneb>)#~cB^0eQL50J_#VP&rB#XH0<>0P^(`M?-}AZFbB4vag?32Ewn$p^iE*`N zhn2+lv+t49WtK;M1$+^gO%Ca*AI#R97t9w!FVjv=ydhc#la+R9`F(&wHq0U}-6D@- zn|%BVnC|k#5={jx=iQ?cj{u*jhxG1@Yf{A3k6)22hIZ_QqNgF7-cMNl?%)bh6BL(~ zRW{V9riU(p2vyg>K)@msc<@9bb_0nz;=ACDr6t5ZTC32!F}NK{5LFuSP~Xwu_N#5{ zNSB{S7tA9^ixbC}F@<_)?E=pDhR+9z1-TP-8eV9%Z*gxv8abOQ%Q5`)UcChu9y_KLzlvr1A<@FcO5fCo zKx3xFd+;gOm_&E0oT`IqTEgxA+i#6;LB_9DPljq;g^Ql^QO5xy^60gpk+DVoL&5R- zmi6;Enx>%h*0ZR{kJTU8v(U1a5;!%Mk72i8jQDeCIP zLHb{wks*C*jLpnAaf7fs$s$&sZ+OL)ZcS`?zXY}}N#bG*gTsZ!2ZVODOy&il4I8tBmb|%Gug&-o3Ipvj=T8+&y2!BBG zFCI)$SeED;n>kfF&G{1%0d@4HWo6Hfh=ZoR>zkV1FFdZSXc-;!>Jc6)ZuxnLKkbf}SFF+csKgrKD|wck z%2bAU!EG!$YLlLo*X|aRVfb}^_kg7HIYbK)9^k{qnXiAlqQ1VbIg4r6$yt}5+Kn+f zq;;5h32#(4y&pd!a2Cl?o;PmkQqQtd`^jNe&F?>T0vnGY z{j1UG<42zO{z=!s`4s_`Q}?-i_I8rFjooC5{OAaAfV|3DonTJLspO|8*6-R-Nh}A) z5hNhO2*5G{x`>!0sczHE4xu(qo6s}w!HN)iRmjNFwA0)C!N{m|=45w;1c0IM+|h`|}DEXXa zRrv(=q75(8CQa?2K_4F4dc&V~b*TWngg^ma)aTmTq%{eC0m09Wfk|pf%z&+P5$j^K ziwns=R}M|)j)Y2Bl2UzMD_&pN^{uIyF|sVMC<1540|LCdf0ovKb%U6gL_)r`4MNnt zh6mJ&PS8B&R0p&Rw>tS?kYaO-j-9jftLkb|!p^tTTkhG@O@QCD(!gB(n5wfkf8OwQ zs)HDPajC5yI_trdo}BdcoF$ZUr9trj;p#uYss8`}alCDhN(hmXm5dUyDe5S@?7fe@ zvo(yev$qhE?Cg~t;>3wVR-9zd6UX+ypV#mEdDr#7uC6ZEh2wc1=kd7TZ};2ncE3Lw z>=RzL-h~|)ShV<&=SHcwLvWx@xK~5p#(&tfWI*_a_%4QU8 zT*b{bzuZqfMZSAdNm^ZaMjKvOZ_|9JrOJk9*UQ$#ujCaBy&l`yZyZW?$9A$Z_T8o&DeL+Ad`aqg$;Me}Hj4 zpCgzxPv5&Fn`%Z@J(Q5&aFp>njn!b5dexZ)KYhVq_L-IF)~ zb2HBQB3h87^%c$UP0pU49zsULyRWKpo0C0XVPV=>*t9Wd@amoFXFWJHYNWURNtBwF zW~@!SmW!{~Dg5>xqivv_tH%wce8jDp+|ik}wO1&qqZc@w3p8x?TN&xn#v`*-cz7%G zH9punINVB7B59?b#6Q>|BTdfDv|)%?boB6uT^+qnNkz3T9*MNFFp?+52OG8v@zVL|vzq_%u(3 zMHNrXW%BK%P`kb%4kTo&(f6(8#ob|Qx{v6uA=Av zz-d`hzEF`tE})h2@aK#9=BBAs$<{mma{Se7&OwPY^0a?A5S51e)%-V8EKn^Tqm^Ls zeXGWMa$cN&OFS|#@bpR(o>^BnWjMFXO2p*o=QCU=nX7)bhOUvRFNL?ut%B?Q$JD0T z?+W9*whAzZHS0U{@&?HfCvgUcU%Zv%uJ3sQ)ic->cum;$Sg+B1_eK6%SxRb4s|E}Ra>tRzo4;Wv zfzObM5=Y`B*Psdpk?>aRRo5GJrY$!Wr`djQ|DwmZK;ZdUTnM&kPsby_p=`sF=QJ36 zP3^*(mqTR3fiEvF9~UiYV(y*2V`pbNlYh^eRlZtW!d8zI{wX|C|tSiudF zPW}3nt7BmDM(38)hdF1h=Qe8YZ+jcN6>%h9JB zDLNGjIciV-CrpfGsI&nIMLHZ?#Xf|ExKMNrS zP0I8^Bl=_tXXVZcH!yQpTH4xvjA;|7v{NnAc>kmzF?WZ3jVLzvTWrwk4xy&@aRmUI zs+sf7^9%EtA2zypO(;BK1U`ZtVZ!()umNosb@R=IaSOtjrkcn ztmXWTdc5UOxo&LSth7U~;yrgZuK90cSw!wgq-b94x>x_dQmRe)s&T!?)80|T4aqG* z*4I~~9bdTYh8@x!Q6cBltsGSKYVPm!5z$~+)U+CcwQbIOpWiRITOW#f6xqb)F0WNc z5n_YqDq1$-o0LJGnW_%<_x<|kr+O-u&xy|vi|<365YF%+deC2ZuFXlvv-qNv`{lzM z%gqKE!b=r`Ibt zG)CPob8wf(xIIF*2r3FHa**EjI$%yyBAUdNY#8k?l6mw67{BT^grZ%I=fbS+4ryi?z&nZ=Z_<=f&LvH^CZHh-gJ0%nw80*l6%cq^TJDx*R zw73C>*#9s=3RtO^XJ|s(9ZpS@FZWIeZ&qM?BW{avR5kf^TcRt=yVG?lNJ%?lNQj7n zeRc+KF?D8Y@tBNO?)#nl3kF^T7-*vA<|9@9ec|?NVOD2(9Pc(8DRHO%{sfnX>FHkH zY&Cwyg2&5OkW9w03v)RPNT#W@CiYaywK~gf%zY2dy=_eAsh8KYkQsunRfAp+xW?w5 z>~q zD5CN>wRh4q^4d8M>H9K@=S7n(8y!tnTvLpqpPt#qYN{y4{qUilpULvvfAd9-mUxpw2|GVT3 zTJ0YzIeF~Ve|X$8_6+XsyFb@XTDp3UT(o+Y&q=AVWs&LUW?$KwM92fQNQz%o$k&&e za$B?bz(^@m1%uvzlW%+DgSN-8HvB?qbXZv=MJCjcW zZ%Pe)d}@esgS?mFdw8eVpuvKl>1W-@>6Z>Eg32)goCxApYK+^uI8{$sStu*Q{Sd0r z5nE?`-zA`7H|nmGQNwTlC}f9<;c_5=bUHa48TZlX`zk)cQ^wMX_!-^!+lFjfFFgK_ z`jdT?K_LHnVuG;>NNELz;CD{<&IKQ{s+AF0q82la{&s)<%uMfI;wEYT4*lxFv-$M| zk9_vX9!KyWA^L^Cdp;kJN->6uh7@=fhE4g(XTNP(2C59j$ggJcU#UDt zuAiq-&~GbP#uY9gHz<910A^E_50;x&#T zY4kYWwoHon1XCv~aXCsgI(NGfWhCc{b(P26QFF5OvG$t}d?DW`6H5)}x;PWrBe18aC~-O;)6*xflET z*yGDdR@g|_iXw^SG4BxfHYe`W$DK~a(UCXqdjm6)WgI-5@+>!dG-t^z)=Nx4NqvBg zH9UK%A};7APb~6SKG(>8 zT~*o)+VJ9QI*)DXB zzhqC(L(Uwh!TGm@x`Zp?;gYR`dV$94m;f|dJt$lC@T`ybaSb{5%*zpzV{TF72S!HP zw8=%iRfR}~U-{Hw27BIKD^Sk$>`M;cuc;%3ZO>>Mm5)@qfqN6a9bspZEi`q@`iJ1y(40(+%jIU*{Ll^EAg4)#-zhHd|~MxPI2~`cVTr^HL_`@NML*r>ZiPT3tnE( z(2UpC)isCifs_ z(RRbF7l;HwQWpL;NbuQervpg${y7?1+A;@f2_TdfgZ+{fQU|P%{JZI!q1+c2K0-<@!ufp0i3I2JK4}LWziro5AF)DXRd##TU&PTi7>zyo~JuGSbm)bG1tOkAYJz zZLB0rD=?-JNP6@tix}hLq#ya2>H(T(tPujlHFHbLU^WDZ#bY%tL}uhxz^OyPA@EkTqf>!dkK3LNY0I^7!KQy#o6$C-6K)Bh{|aQ2~<3xonj=4Uz_}R!$5e>zJajOfR>!1?mZBukxBc)?=fUS~_}WpkCTnbxuvOg1VEIW(VY1p$1U4 z$G+}if?HXE#@myG@Ga7{U;zwR@z&OR%%Zr5V@5~Ii9(B$J+Ss=h;{42?sde_lSbcJ zULX%2bDN8!T5-M+5s^+3bbM?7Ung(}R$x#eP$8$KV^>s_zO1b5#iADw&MV7frf}}n z@&SbbhYU5$)Y3k=<$_AV-~=hwpa0tvsoj(jPegf_D{2!y&3mdbYWZy&1Lr_w=@-0F z$Jp!!0+Xw^FT8#c_S`ASm9}e$bG&?fHS_NIkGa2tE$Bw5LXK>~V3tOqldI1o`XG2d zklf+WvqGbko?8*1$Iot;ii*YPb7ji=%}h-RLhIPb4=6;6L@!ZBMtE#4TLkQ zZtHPyL(R;XFKmh`OYKL|0E0l#XV?yZwA3LL&RNp2)a8T-mo=jn66j2YB&wh>- zeZ+pgwgDPf2wKppC!o#RO@nu4#`X5}pLB1eO9Ig>ru*npFi3SS&R(Q^24CqMFZ^$V zP)nr|!bVP+qd1BFev0WIlMCMSlsWBnR_@1hY^v#s*J>^A#qgG94EDW6a*ltc)jwcH zCc8D~At$Pe1YHYWX&dH#n`pDQQ_~u2`A}@~Sa(k2wWI6HrxlS;eZyR~nD867`#)va zsn1J!JOGX})&#_A503}gse%*%?1d5#tnOs&{D$`)lS;+&@ z*G<2L|4P`EERib_R{(8d(iUwM#1V;M@<8-$w9^?zwF&6z>Vj`$Nml52)2B~g4)7D8 zc*fHvl-Mz%@YU7zJ}$fELQmOaxKIZ5kW-z(PN$(k2*0hBc7UYF?><7Cn0qEEQ~)PE zJ-3~R@%H}X)$s8*+iRShECmlbONCR7JC2i$IqBuglZP`@{y)o6l9qzZF!n2^D;DTe@O6FU;VbuEWe%5*!B33N zJZ;*!QK|oPZtj(R)kCIET)XjYML0zSj=7<#(?T-S-_quK-K}P)S6Q6J5~5SE3^6h1 zi;9W>#vcr&F_Z^dA<(wnjT$*XnrM&c)5n|p&U*fhGt^QMu#M7kV&xSSmg=f8!B*~X zet0*v+ry4vfUl7*;ZuwL%?*$F7oxY(`!&`Eh8q&P9_2;_7H^YiY5((X|;&G}sSIEhJjROaTf6yMTA8TrnmE-@+Kw zY$pDDo0BYL@8$6do$z+|6gbANH-VWtD=&aZwurmxX^x;ig=5BXhRo@?ZT~4pt@*Mj zqK79YIs_GA@?yAGnwce$BAQ?Ee5aGh9WiiJ2skkf2)6T+yXtr1#M7nxpRW>ezSZf? z#ijs#?d9v&XxG!?rVn9g2VTu%XW;^NosDc0Cw4wsgf;9+%Vjp=6D^!q5HU+FJ%xA$ zuG<-|RA9POrD;f_K8nxZ9SMwBv`;8*^on=Ow+R98m)v`Xj0`l8%MqqPkTY}-g+wyH(jQ8C(iSo{>Jh8L^OY*a#tSW5kufRC*pT=?c5f2XA2s`o)|V;e>AD8 zDoL@KYiF363mTScSxuiZSjMJHbT$lMr8hWt=jwo<{4Fxh-k*6qGRbV(oa4(|(B_*5 zd{$*`_wSA~gqYf8)-u(9R(PB@yPuQndtA_>hzJx!?eE@=eDY+j?Q3ySM1!ZR%e7^G ze#A$YBhNBcVdP3_r5*5p$YdbSTc=)y_K+#{^;OsO$r|co{wpHp+`W$t$F~D(WKax0 z7-XDf!+xuH&eKUg>4h&fIF|%Z$ z3qj9MoO#JgD5gPdy^8@A0GMMKnPMS%N%H6&XI#S>ZC}*Hp=A0j7^A^di$gl21wkwU zr!UlG2L=v)XHB<2H=lPE9gdgF*ZQ@w5p9zB3Yioea?N(M+giUR>M}V=YgDt*XK-Wy z7JHOO`EF#9iHW(-ux^rNZQe4&#m}$LOk7@=TrlU2^@z9Q;QUuUKRq{5Kx{_*zcv;? zR-Z+$RYhW`PVn;b!aB{ncF*tJ$uV&{bh#_+sFx5LN(TNINTh7Y-J#vn<(QPfeND|v zhw~XnNe3@a`bhoUSO`(di)j$96J7A_0vs zvk9Ml|F9Q1Qr6M;h4)tUdNaqP2q_MC4z}kBH@=7#d_+WlOb@bk0uPPC%*uU&t}x-n zQddK%aQ4pK`o6R1nBp~F{F;3P$$bpl^OPIRjQ6c_<&s|vSj=omO-YHjN-L|g$B-EM zZC(I&Z%z~liEU6<;0*E^HvBF}NzH=I10N7xQ76aY2?C!t^#OK?`%%H@#kV^Vs27KS-|DBn#M*8L56im zTPlSb`9sz;WPv+uhejes{PaI-nf-pAKLdPLFP;x^4iM_x#28d|wZ_yztk`vWvP}tBRG8s0ja?Nk8`_A<_7(4{Fi}rC(Ti?^7n$o4a&y z`7-f~owSp<$V($AR38egGhoi*>4CJSQp~4P_!!ZZJD3*{v-wT=lKAA+FC2$)YI=r~ zYyL;${@F&Bi^M=+V9gFzy!@Pgx^qf0k(Y_lC@Gg7%^0dEoSkV{D_ZP3iL08#MuBiY zWz_~?FW$W2!f^IucL8?d-<{rd3%`ZXf~v_vO~ht!ilV6lSb=a*vpzKVKafiO|G1r% zhvk0wwv1^*ma~exZJ=$xeh@=!K1ZL!AYUWnN|W$#;H%kP_i1Qx1XcTZZ^9~wD70$mE>o^<87-jY;~Kb|Do*_KiX|sS|!W#f51PL3v_bfAm^~V z#zA!OI=1VS+C;51f6AN^E|dxsD7FaP2bxQxmA_eCl5=-z5Kj8SlLjZ=;S?^R1!pC2 zRlTy){N$iHvK6l;-SF7k#1$`!CKqKdLXkhQ3r1RiePHE_GMVepC7aJhzF4fqi6(re z`sN0|-!FJcQN6mT(^2qBL>cY_fqdQQ^l@R;Md6cbd7Ws^&hC9gGVEe_tG`BgZ!y;u z^?;#=Ww9zPVPw6p@%z*7`|pt59^!qw^D(F5{H5y1T0Cs_{$j@IJOXX77c2WFFaeoN zy{8V!P5_oM_kM=)peBT9n)u3c1b+PJ-e$AIdflvtWih|PldlRVV_U3?RK2&o!(;PbG5%+{rT;jMqI;pH;Fp2tCJ`;1cbfq zMyef?Vkf3-^-wjg%a6!c^pwqNBW%-V*cfCCA;X1 z4=OvyB>g9UFV2o9F1O-s|JBhv&UJ(u26;Y9itac*_2nA9LFPQISLTcHA8&o0O7GY| z%GZ19C&T)GUVwJ%qO8#ip{7%D&-(iX zWK2tM1?;ms1EWs54(a{6TZg-@_OvM?_ zo|)Re-Q?gc^(T>~Zqh#lvm@ub;rBa`@_z(5F{?BXc?~soepb=i0VfUSCr4cf^ z&13xhS8KA~PYCRPNKDz04^Mn1AplJv1YA#o0|fc@lT@qmJDA%;BiH66zUmhV6E9w0 zjO-Xb&4~6Wf0n;k`{#_W&twMQWA5jr|E$F-Gh}YQ3^h*kw~u@eR}l(zha|gjp!#Qvrymi@3_3TC7Ws}ob)JBDb3-LC8~B5Eg08+`>#JUz$2Jo zE0D0~+el^`iS=Q6!!E!^!nMVM^?>FWA^G6C(x$o5(KvE|%67 zJq!%__qjyixr(E@%iI)+axx#3KhbjFYZs*|9u&LK=D*m_8JLT-S__}YAH5o1{u|e1 z_sWbEWa3N?c zpV!A1U*c@bcmul)wbaYk!WQv5n=>T>1F!JUUq^lPWfj2jGj}DoWx#lr>GAE;JHLg^ zx5(72t^Xn{c!rsWp1;`yVm$6YfcJ4j!Q5q|tUBoLl5N)v&^(^#y!`)u;;{ALiW07m zf8f`01{a0O2={2yM(FW!Myf+iCJV2{qBGj1dVe4KRT%tbsVE@gAH>i{CkjR&aMA`` z6oQv>7DqBX`Hu?3P8t>*A<$BGMv{xB57DlNwdcN&{j+n8>$e9}Hecp&(hy7|C(X62 zYDvliO=1GrC=uCFf|Lj>@q_J(ag?hVeFh9{)kYP^%A!B*xDV{45l?RPjqM&{Sa6%i z3{Uv}ebM!Y9PqN6-FZLJB3E9Y0G=~0zC@RiCZUQ8tZq-ye9*Z$y)Jp$?T_Oq-okGJ#3@d?tx6nwxelqDK;f= zx10~^0731|f7WB)nXr!pIsNIPZ_&+`*ob!U8-;!Z>zik z#T}Hnmx<@_dm<5cY1(&UecV~4F}GdE8=sh;tm32e@wJvzG#_#KXEA!%VKLkuluLRH z1hA1lr)f~>_*hx8&;#CO(q#(L92jGb4tr`M=^D^p3Fx?_lUmDyw_wK0%fVbKDHjMd$1_h8~)ba%<-I+K}5l|USjO3^P0|qj1S!Ps3{yh=0aK;AD zHBl;Ls=Tw(?ybwsPN3!FaZsP|YH3+<;4Ewkeqtz(6t$my)zzPH4}F|7@QIyj4KASN zx9Na4Xs`7hcl^74ZL%aW`8LDGJ0YC%O(TRS;7A>xcs=$6)Q9TdJ~?C%YbuN{Sj-aP zuckbs5+HvWOvSQcc(iyVSD}-GS=^Y<%W!gc@0*{$sF0s=p`+6&tY{I`oErZl34(Wj zWqfpIdiq4C6MzPfbPz4toWhLfp!tMZ!s`og(~OLZf+>p7cX7;^UVz|M6a~S=1uzXw zgVD{TD7M!=L;u7VzGygo3G+j2KFMvI@}GHT5pk zlgDlK^Foagy3RlTUC zm?r(^EF@`98B&Pxlgt+TFc5N*B%5zijDE+N!x^Ul zZ{Wiqw=sQRmB461M(t#I-_v6~WsuoGMTLoG5m+@I+S%hxYNTjEpfkYezrMY0>i%@K z-?kF;7tS2uz*ImyYiN`%)W}gONqW=)h?l7|&B2h??H~TKiH(4f-qQ@kLa4w}kMr{v zC@K`Js!sSR%z*nOe#J;*^quOfr!FmjHeFI<_#9D&=g5m+kC7l~j=fD1!fGA`JTc4! zCSqe~4;Qj1#h9IO6x2|!V9z}NR%Ix#BW!&gyIK`Sid-jy16Vutw5$u2Zkxn5ykedWbyth{| zi?apiqlaN7KN-?~WyU#Bqd=}u12{~t21%eLl)$Vm(&pr|c;)ZT2%ugia4>ui6q1#V zEo0WMJwnTuhiX;G5!xOKSJc3O2MsjxnX(KXVBP>i|51b_q4{BD=K2)}()T>teFkSw zdtf;3^+kz*&zS0%jq%xr$Jr&H(j*2-zLA;#F*)7jkN6e#Kvt@td*}7}jpSTo`ZGXF zwzms`=0!l};(q&y@PJgcmg=jOcIV~J&Zv=`wn~mzwY$5dN z2N0}k6l~P=olf6Atxm2M^JQ7ngIf-~KIyZWvB?hC7weQaimSX=-SqEc$_>S2sG%$% zNC11jxo8qq8r6I=86R-84_cR2R(ACD3Bgcr&h8h7YzRNcjDOa}BLR}2p8yEY>-uVH zU#-vA)yO-!C2aiO)4tR@&F+;ie{OgC;Gw)QhX-BpdR^YBR?4aBhaxM{_s%NJgP&)a zLi*f}N7~gZPs6--!;F1N>MCT6&FKnig0$_**F0Wtq;Ys?5{2QVjMoMyvF?G$(oB&hOl^q7GATBD%7ql4W&Q#w=2 zOprlD=6>T;1_ zP|+!b$*3^D?WG!YbrWueSQq9c|Jni_Gf7I9l$4ZqT3HTXsfA=`n?l0{$%|w9n2q@z z+DK-JU&6o?0}%<m5Mafz1HL$JiY5pBkUh$XxQ3y z0f9Yhycl+PIQu94@bzKe{d>Kpt_+r^f5Zo>(RQyJtltc(ev0@mVfmh>5<7*#a81~% z)^DoUFPx}pr-(gW6L=$b`J2@Ki~gNMVVz_|y9f0tkoTZ_@{;8K+Ffvnh7KizI~bN| zWO5Q5D=^-;=JMMS+p^NeW@yQinlp9 zI#Ex0IS{*XnU!j!C>+@AI!n7|oFU}V(j|No&3Vk7<<`Bl#IxhWjB(2=etJ862_>iq zLNdq$Fe8&bTwdI}vIkP74&;UVnJPwpjY^UkvuRH!jNRRXbP7AVyKlxRc#7Ly{PIs* zO1(Z{LI-hELH2N`jX@rtNskO8Co%{3iyVe$X86VZ6oy6F>&4l`r7qVGbBIf^t)ymS z`N@LfWG|jB{+ibNr^5A|O!8Y0SW)MnGQK-t7iGvg#&OKXg0iXd5r36}hu;IyB@@@^ zipHH}_uGhbpylrPq(7Z(Kt=lfxjKZw@OP}OP2Kgw*G-l-`G207xpr`PtWaGKlewn) z1|(6xLtF-~!0;d%W?8O`)$}@wTt=LOdkKIZy-W<(?fjx^+P(wkZu*l>Ov<`21p=BQ zQ&Usdem36)8m#POO9kl;Lds(jpOlnj?B|yb4RHUpwWef0<~AY!@A8cf+}QlFqIh%t zMULXckAD!lDYiAckUg3vJLwgfIF5lB2-$SUXXT;98V4OkW3yKIzlh;1Vg2}T*$Ef% zFjfgZ+*v73-0SjJRx!MPhgWs>#l*zyA9tzDy~xYx*hVOuA^{P4%by7u*pp-D;H ztMx9CV78w21lzFX{(7YUG|SQY(e$4`wm(ATxNh6s0G+vO)&)AeB`hp0!P)|?5iYK- zUneHuHV0^asL)9>JlseaYw~9)+;n|ABslmEDO-%eW=Bf?20IW8QHWJT1+K?z2{x{l z*MIuj;Qe&xXDd~;%d8N5bRw_wR+S0Z60EYZ3UWL>R}_msVB%^Q#8^5(_dqXhb~LGD zLw12~0Y#S3y--~p08S>SM|I=Bfmd!eI%alqfb<`9DMTQIO21aeg)YxJUB69AaCS~! zttyF_@d{Xec;jp-8B*kcCeucB|*Z`A( z`SD`4&XlCi6z!G_-RA3q$6DW)hL({ZE|JGCS{gTDpEES|X+E}7KEr$iIJll`U~5Xs z$N-HdA~JGksT}3`XYMQ=UBWNt<1nnl!rq<|g)89+?Y9b89)@NrlTo1#de{kZ3a2Mo z45jIV@sJ@J8hk+qR6J)pYGFL)Vvvs@PG?k}?YSjMf^w<(*nN0_pTu^A-vBfNJ2n*e za6phXp$DXELbirG74;a`HrtVYo<`a^G$5LwX5T;l0IkT*M~7l#^`0-SD-`I1mX?;* zx;QeRnIK?DXSe-t>GP_JAe{A@mpzwWeoN>j%VCsauPS-I?0qkd{h&d4UVP_jT4$5F z$Nnja1(OllVHw&E%hxzeeNfGUr^(2$%o`)W(1G8aZZ7)0c_pGciH?F!sOWh&b ze>ZZh(Kqxmac-d@```k2Y=c{~~&C!{@9PR^$XWP)9X zuU>S2aNpOJNmjJTi-l6+Ud3Y*J8A z01lF1xF)l-rc~y`ZA5g~$vK{1eJ_?yjk-HBSu%8h#j!AKa(uki?NSzJmPQH;6AcyY z{eiFl;N|Pwe3{q>a2|lmuY6xYSP|EMFQ8y zNscD3$o&od{hAA@dL+-@Vcs1rp+;OInQvMzolR$X%aii9F-Xa@B+a&D2=hLyiL{B8 z*!gQ;p9*gRjNj=)p=zqD&77RxP=PwPho8Jyg?tS@jhu07tcXyJPlQS7gVM)sPI}R7 zzJ7M$*HKszXoCLlijfoFR;fA;77Wv(m0Pw=O528p&IsGv!j^l51u)zLA{U64;y&9^ zX!I?fho!Z(@}*jY;U}`0j?1?VRnVS&XOyHqA zovbQ#pl`{=)g!>1t2^!{;1dWvZ+d17E`9_?JDLqT?Tq-}s?bxnue&mLT*t@Z5_?Yb z@bExHPox-T;D9O(TAS{OibC!Q1Ia&{O~$4bHVe!lP{`S+urp()V`u7QPv}uC7=%$m zrZD};NAiBQQy)4{%x8C=1JvVZoFRD)GyiTYMgmnvsqnmij_t}qAUP%TH}5Th_~mHb z+CZtg7wY*_y*$+4H4;5nS6`1($XnKh^=;9ouS5l%talE7+o)7hBE#SGCUD!}c=qk= za*637lI#xNsgYY*LtLu(=xT2n(YdUWvSy=BJ7l9`=LX^%bXx_=re9v`7lr2JX%U;d z>iMzIB>hg07sf~35fS+rBjw-H8XQTS9R*FFD8JqFz@XGzrY}y{)XY@oo-wTI^b(3B z?R4UzeF#VaAT|Bng2CzSZL_gDeXNLPa1^Ml?d{iY-6{uv56|MDo%N?7`jd?;u!>)P z|32g5Qhp2o3&D;8pyeb(xQl!?wGmU>!;HW7W#V=BXvmSL%ifOAzw9RwW#Sj{dVq^L z3X72c_1huZu;$@T6nFgdz@#w z?^-L`@{hY@R@EL!>q|aj#=3X?jz5CrGt0WY`C6Rod18Yx%++ot8;+xu>j%d=oe=7P zfvgHkc|xIEq(Y||@B3q!($dmWe0*dI$0wOLx_lD`{@U3`WE|K&E7ET`3~k1ep75Ju?L&?oX(&Zy?u}yX?46U#o?WnYa_ysS*Kmm4DL(k_% zY8O}cn90c8;1Ua90$>k+=Qt{-&+<(c*32Or84-qg5>#zz(m<-4y zy!Sk1HBi#|zO={4fx_RNq)Ox^gqs2~k(w(VR!e#$qo|m$-Fu@fXDb-P81_a`JCgk~ ztg4H#Y)hsCH0IJHLLFu0S|jvf{YI`rQZb)*Dqc?Wh*$BDbvl75$dp_sk3MG8`Y999 zBtGvr-iY5wgy|+zIH(>T>77=BR}kmIg!n$C?Hrof8T0V;q@S5WL_-ORi1wRzs~Ey& zU{*66Mk&D|4C%Cc=Hm$|#5wSVrYR+eM0Db=jQ*37Jn9H1fm=afWpBll==4B|GD9RW z9~JylQI=SG8=zSjW7v2Xx!C&A+7BnG)cEM;(k)S`EdRA<6MY#MnI%nz0ZQsC5nZ}1 zZ|dn;_H$o{)Rx`9>BF{0hgswv?S&2P%LiqX7e5WXL(6Wd`%4lG)+3!e1)26(<@w$H`uO8{Cy+oZm-~X z)b6JgJ_#k8Ta*ViTl8|txnc5CpGd(Tzp*0@lP2_dBLysK$q~^2vcWwJfM(grz^(9e z*~fVtWB9Ggs*DpMU=zx|9|=utz}dZF>k?jg`cEm^mZAW9O1!$Zlv7WK*2wRVu`O+9 zThZ`diRJ{eeD*l1bF|L{M_T!9pvWUx&Q~ZSg7ssUjb;_F$cA?_Uq#l4R3b7eYS*2$ z;?thwrm*eFG!5;aXmh&PGYQ@JThcjVH0;0`xuE~;?O+;Zbc?gY583BZ%TfAj1_T40*uCz^$ zj`)$tCVz)lL7(D_wX4SQ3`KOu25#8zIEP_Jm*(26#+P1)teAjmZ^VF2G-VySd%xJ) zQF3R{tOPyf_)Lv-lIqJW*>$I#G5pTth3B0IH($#)W7~_Lp-s10|J|zij0D2`{p`4Tec zvW4#)Zifi~mlN){qWwfYBLA_8w>M)B`Q9GUCmp+>*8Xj~IR1Yu9`y}`Fv1hq!Wr1l zCAt(7 z5GfdPvSP1fpwtTn6O)plgA#&>F})i1g`|{}_R8|QW9;a$VXX{}+>=1epM;kG>gsBO zyArS_+`I^>p{7P#NNDIa_Eo>ty&63Nc>|t7(eQ$wdJV2_kK$W#KEG$_sy%V+_|?e_ zUhK*WZ$g4%?f6QyX45sXzo{|6qkxb>^tcy^GJ;N?;ZQDpab+j)2BDbQkh7IiKKgn5 zCE70QH%Zsqm#=5^69WIw3()#8xE^ahCGPlS*YCy!A*_rNn%-1ULEGq#NX<<@-|+o` z8_s09zi5TlKZJ?|a%)j$hu*DKK5AS0#nteVh+H}S9G1-f&mO+JyJ2N!V}T3Mn%DcDb644p=~og5efw1?DF!DT7CT7HJo61%RDK2U=fX z$ktu1c3`fckduT62ctQlU-LoqsZOWdLNj(dBim8%%E0s_;Kw;b{wqr7vLijVmM+fD z(!uyT5JetU=uB-bj{=VdbQ2J2(9^-2(2DnkZC}O%2Nr*T)Mc_6FqnhZykyDB$J|f{ z1uS1_^kps-Kqxa@tT=ZBPm;E+1&rc6n2KmAB zNn%k2JNaE8=X)(e*${9E3bt{x>yu{vr}uy7L{K}3K~2rbLuRa)97X;kAYA_k)!}ve zmzqiU?=bHS)>Y4FD+o)n*)H9(UbynAuS4QFV<|fBL`4Y zKJsfF+lh`B1bT4)Po5NOh%CX;4vt4~w?esc3?3gC95%%9TXx2#quO6vUc7fZjKdnGUW&=-K{K63x9u>NjwnQ z@I{7F-oxbFa~=P1J1nONgoMqx&kW(O?*es@z;ZN69>J`xs}OQsGH+6OBX97^|tzu($DRzsi5j?baU5v z*lQ+^+fh?pLaK}8Y4X~kjASiJ1KdzPbNJj!V5|a;n>32VV3gz z+R5Sz)iW6m$FMS*#fSD`QxL!8vjqG->Rg%yeXeXN2Cjk=@nIxK9 z_xx9H!H&9@a33wBbEA`}hkj-M*{E_iW)4ZOUDKnK7$1~^%eDM!n|X%F25 z{q~k8D_g4DBf8TkZ7ZSFhJLSU5epHffyK>lI@uL|$YVzXgQ?-hVwb+Uo%^l)0ee5Y z|Ig;$0ds>rUC!IV73h2+Zv7b9FvQL%g(-8=pUt5=U1qKVH!Jn*FxU$4mczHC_#`$b#HY40aJ(}yBS=_IGj zFxtBVR4M10&GpBV2i~cANqTmtdr+ofS5|J%+xoZtoIBf!-M{}a5d7=z6ofUs;RckdM1K+_Az1K ztkEE~ui(VyqMb84ZdVj_{vU8@M;IC)_DFY#-jyjj!t36$y6o(+y+0SH+Rq|I+TICt zSC-fm0RQ&6!&%R^>6IF-LCu+ADEkaDq2>2p0tb0S)x6}v`GyANi|MxKtCYSW!e(}{ zG6o>)_(g`s-1z@!ZSdd9--SuvMT=84k`+1>oxLC0dSJlwG7yU?l1-1fr)pPRmh~D} zhj{tUV0CPQTBlr^Qci77#(v8DC-@!F5IXrsae|!>Vm&qPDEFVKI+Sc$eC~uU2j&3R&FY9+#`A3x5#?F`!$+i+&6k6In%=7iTtR-;tx1Pk_k{ z1^}gj<}OMJTu(@#!}2#O(zN?m80qPJ`I}LR*Lw+4>M?S93LR5d1?ydUmmoD-(Iud? znDSJboyEU#&A(S37Pt65eAPO`JZ??2S7*wKV(95A$x&fK+uXcS?&m+srsT`+j3`{E z#L$hft}~8yRk~sFtU7tv{09$s|AL{m6nQ}3Tk1pAYKPV?Lddo`pNzHXW3jjG988ae z8K3*fXsS{fn&xt}6)I2^?O%$o9SU-UJ#G@VbnoKRW>F;HhH5b`S8Ig{of$QI-v*D z1q*YIN;k9SS1~-+@LuDQ}VvSE0_}b4c0k z|8L`2+CR23EOG-Y5D4MXVeD2mkLJ;lb)5TOA76?AF~ZZ_Kl4)jw#Ge(6s3^34ufvWf0>ONRP;*NjC7Ry zdT>eg|89i8!fbG9B$15PQ`SFAFd&$MXWB!21lt+NyNha3JkyId-lxdx>9u^*YyJNY zE}{Wzun30GNlX<3G(+{-n8O3J4)4P$JY29QIIk z*SC${0g*0D3Z-=X+Q{U*_FA=RV;4W(rR5}}vxPs3_s8pbiRHXfH@{=_dkhwKC0Zwp z#qYm(i~PIa?OCdJqRzE=@}^kg#iy+MC0s}FCi|P4Ggh3pGKrrOv|=S3Xw}&9##ql|BEjUi2UoFiFx zAD$jcOE@a&?HY*$_Mx)~ov?sAMi5SuCCFrZRseMB+W1~hqFbyz^J~P}%_jzE`1LkV zv=%Z(^Mx6+%>Eda26tc|JeVl8q@m5MLfE)^kFAtUlBNJQFUyOfg`0vmn+8iJ8 zIEvY@P$5jS^;UbvsbV0<7Z>TbRaTyy%!?Eg11Aha!)Rg@Px_>B>#H8JQ3|A+Zt2Kx z_2T6QkX*X!EcNf8>7PhS3pZQ+pxN~{qp3R&IK(?}hpqbMOcCt%<^oEEWk$ z(j3A$JfjvQuE#%B&uoxte-$kVIepgkaT-eK^zh%)?NaJ_Ru&QkE>{3Uhhv?}4hZ(0 z4p*jM*w-2xv&_jgylr&J#nFz<+gK!>7++E;j+8?*wpW&RP8Ac?q|B5>dT3i&k zDEBCW1iwdNkkqB1FHUcjtQ3551lPyz$Zt(Q)-7DSVs06C)(@#`9k_A4YBSmrzO0)x zFlk0&vMZ)yJ$_9ijOfZrzh%cCa^dfr^o3j%# ze3yCMuadmm{c?Z*h{9NS^NxnqgmHpzX+rcr3IP~fBB`s1Bjm`5sISwrE;XW)U7`p1uYVDiDx07r{UE{VGq_%dKp478ae83KX=p_61>@#=ppC32nEwoMwuC5gBSQ zU8{Z{y3s)v4bmwak}8#IG3szLtmd(Se1u9;hDbs6XY`qgLRKQIsy>tpSa4%M{H29G zIGhNyF}Bp5sSV8|!hZZ!wijp%4-{tIa_5LWB@YAY3(cxAPNbSId*Sw8wSu6~^bxz# z&V?i&pwdp|8t?a&b}w5YEzv6U4PdnWM&@gVSw&Zg{A11NmVx~wg$DBfi$LNRAF6%prS3z<<|i-CAeq*Q&i<{bsoCS<_I>r(cY8 zH(t9;wu4i<6$zI&oX5=nG}j?T!AAxb=I$fKuf_|2t1S-|loM**8Qndpa;wq|y6=9m z%5{=y1x6YzA15H~Z~kszhnI4;1^Bm*`9uXeeSGmIs39lTMIrsYJx!KDybj4+d%0t& zI?F~Mv0EHYrDsyY zFX~1uNeHd2bdX;&k&>C$*9gLwTAE}^)&JB$M47HDdc3~=k&`E5a>sg|$**_gv!B=^ z8)fA5QM52W36w6?eAug~z+!+f<=n3_V5u}J9wnElZ%y0ng4sjLEwV^fl^B3yX!={c zj5rmW{|wz1o@B)YrP$5ur=hLuv@T7|Kl$c8NM8M$(-m_21hhok3$_8#OiJi^rHjJH~* zmlqNVx)nsV*5>-U{86AV<|*yEBxP}pw%U}R-vdp5Q)9u^ZQj|3d{^F{!>VpPD}CQ$ zCJybtv-U48vt*%SYqAtj=4VtgUMT;M&0B3!o%M-#rQS+2m&P29w50Msl-ClA5vr~%PcpsOu-(Qr$P3x!IZ}^AtjI9m* zZ37IP+FZc~=DLwJzM-^B2HEb@7S|=+G6f^=pgmsF&itz7zEj(Q-Tti(G)%YS95|(T zOhcU6(v$KY6rti~jsE~kJb->Bt%QF~w2}N`m z71@TVfgZR5lTMwgAl5^1YG_nup?fs4ROu2+(vx9JX z!bIz^@8vYIN1FH zs56g)0~xC69wTk53ruX$?U|J;(ecAv%?X^> zBm@x*|9}_vxY<=_Wbhu-jaHC2r{mGyA z4>Y!#d-Imfor+<1QzfZ?k{5p!tbww6s_;Ld;q zN#qMt(ygIcDMo3T{NgFFY88JM-{ho>CZ!E~*S(Z2?U4}vJz7WWW1#(+tD@0)1NRPF z{)!IsHrp`isWO0LoeCcg2;%LjINVsKrwtB`IXVfyD)G|v;! zUPfmJ1Ga5S+Fm)W_qm$2_|zhPL5%x_)7qcDL4r1^v^qfL>T!&b zN6)m`R4wgQA$DBd7gu(gyJf1PV$2+thH4Qm`e_VGLJp@FLuYj1L!4DUSySI%Y}a5b zR9Q~j5vxY#Y;$iB*c#RLdL_=3w?TBYrtt@^jtrT%kPehFcx4%oeT!YcR3e5=?a-*` zb7K3(5mA9xWvyp7q~}BEL-N+LUC`E*7$vsZ@R~+p_r2Ktr4pcuj=uIn40mOiF}P| zBE#(YJ#)jHW9c^Br6!}zol@bXxHl;^u&quFW&Xp*r6r$h#~y)|5?J9edGYc>#|EyHYlyHq}Cb!(B`*~ulSIh+(%kO48H^3K- zN`Uu&3vxZW#col~!paaQ$jk`d=5FHdl9)#>x3$y_xA}P`G!=VrN1lU7Sl0b%sQD|o z?~v&pETQXy%-W{@v?Ff6Mv`?)z^QEO%$PI_+&x0}F5a^;1Rn%lJ}YayFgFV1%qJR9 zCqwoOTxv!Nfk@H6l8yb~ER_2hH|lPFgrM1$ z8%5Qr=$FNYl!YS0f06F1HlL--{kAI$4NBfNxh&U-K@VrN-834D8&|91>kI(>2MUUB z?I=>wh+c*r&Du`a8*~qL%YaFyaV?NO1yQXH1#+L-ySzE4q=K!HWDsYLC_7G*veeg9 zRu3DbEWLcTTnIcAOfMJRd=`LFeT~XIf%m2M1k)&^-I3Dof^XjBAZf?82v~?8IdTk| z*bW_Tz8S&4yz}dgmHw+~PeW^baFO#CuiDXx)1}xb&uGwPjPl?D0KPj}hhr;3F4l3F z3v$>lpN|ZqdENu&+B)EjfOGEVn6yb$TrgK}@Nmx+x&nQ3^yx#X!Se7b73-9LtJ`3d zHn))%k{h)PZ?;Ietwn}4oV|m4sLCt7Z6SR;hu$!+TrybFrl!oR3|_i|LHv&z0g+*u z#6b?h&+7WCT94`v4O<^SPBzaqK-(>}ti^mMjioe(#SHARRtB8s^+s`tEvC9C2ST!Z z9g(U_j!5rKzv8l%Ag)<~Hgtfp5PotBCIz0RfefRJ z`JDP{ju_6lbdM|C&Yfhn-r9x+KKRf&1^kpXR++Q%p<#K@s{aBnkfx_rOrl!|u5VID z_pGwl$bV9&`@n*JUXR};xbo}mkFm{{1g{%2#Dn}jJA-^&gEvn)YO4-z=eG6A;JfP- zZOv6Z8S50McHaz^vp)qAxs7d&)$jbM$xkF0eKIT(fX_AOK$~&Av&O5RX|FvJl_x5( zXt4G{Ut!W(e(gv+$vOs41!N`hbctR9@FO+0NnbX_VU2=vthAViclH;H2y{ex@ zFek6Zwm$O<{JosWg*uH{*{0^YTEC@O0{N z*mqu|NsO!_z_))`?rqa+H}!0xvO(=yCC&q#a_xp1Zk!%x=P|nImn20pc1e#up?(B2 z%WcNc56_8ZQX4xj?maZYqAC98tPk?)53VQ{EqwyM_bfcU=9+I#Y&cD9RqZLG-{RE` z?)EX*f27+c#9V*YRS-0MVZf%uf6KkPoHNvwizBY(~d|^uFHcQE?&7wYF36DRYFFwB6Z@_cY8XE@7*rx~cybpQqYcNDx0FxwoOBEf_ z6!15;tjNcBT(>j2E`%ZahsY0pTpw(rfRv+)vguIQZ?1IhTo{Dj6OlT|+Nyo#B>J>d z*5jlUC(7^?LyA(G-MhH4zi^~%gZlE_6+LjJteiep38Xqw`Yd%f)k02W>0*Ir5w(fK zl~%>(LRWF?=NobGY7eOOV_lSml(P2-D34OhP#Jj&w(gAY;Qu9%{mamVoN=L!3=N)j z{j~o5#qktRw{`*fsQ}LXQ6`*Oxqb&v z$mv|L_3tQcbS3rfHCeC8JPbTbQoF6nhHhx#>-BGV=S2n}7-kF_w>+v$^8`C-FCv%m z9oM;?u`Rs61k6^-LL8`>)RIu*Za1@*1Sgj;#NE0CZ;N!j1{w~K7!luQ?&bfu!; z_)yQ-D9@~RH*af5=4q&|0g`^ocP@>TA>V(Z45vBk4M}JFy9kSoQWb{mg(|jGCesNU_rW zMZ~h<@88=|S%vdMu892obKp|YP-VQ`IVnFPhP;!cqg5@o*hee!grnz9KFk`bwT^3Bb*7AKrs&pLep_{xZV?TSS7{!&~2{f*bYt5=>f-GPn!)s4$_ z+>*G^+P%;3-hylEFSpMfVe!gWDOigsK!M2_Io>Q*u!1LL3CKiu%}u;4uafIS3msHB zEAKmRrukcA4sHo;t1`XSoZ0?IJBVi}B~PTza#P7<@y+U@@cjhW;!0aXo#e96Pd)3Y zClg2|I>i^`@7>&I*MqLPvW{e`6x_HevW%mhZYzmv(YylstJ?dHM{Re##s^jUY%|#E z2?2ctbE8`X4Li8bI}YSI4C@^$LT!Hj?Gkq@bm34fPyOH9CJmfM!`6VhyI)B;zcjwv z6VuulAnQ}6=wbSptPV)LN(|RUSAz82W&&hbf;EP~B)CN&FAZyTqpm zBmwI2j98V*w-~(BB{5CshE*>CV~`Cp!lC+_L~i2yP8^3FP)pHXNqgyGuRbi!R@Cww zNY5JF%~Xnie>p*oFZ_6wxs{}yf`}y9Jb`P&+uH5x{Yi%s`*JKY+&zrWOUrIv50?Aa zkL+;>cm5dlLH8ZY?qb}r7O6qFUCp1Cp*KKnvC_0Xu>%sO1r(a6-bR69V}>vN&lB&s z8EB$kDOIp%mFDT*-L+6^MhT5;qJ%)9?XM50L`AOcQh;fC9dZBYHPBO`z1Xr-rr}|Y z$0NDo8mo(2qHV2BJ-gkyj}Sw{`wlYcj5`^1mp14xSl4)-F%+nFk9lo>gBC-Mjf+!} zG(g?1&FUsB$R_Bqj6g$$tgs(uZky<1!?n_D{NBrTPM{Qux~bZHtwX$~fq5`E3cB^R z(1-G$dT(oldnS9#&+Jwi)~jbN$+~yajjZ-JH+a3Ywl$+3?%o9l-Q=3?mxL;tI}cVv zq?VhS>uUaR?LmNTglc6044K>9*7!bdrPi~V3D0M_f-5;9CZ^mu@dSObT&y?Upk4GG zx(M&13Ex@0ENJ`2g4BwX-c4Sn-7Mb1dBg3XmW+%>GC;8VxnwuK> z9CQ1tsuqM)&IzsY+a$3wW574Fq>M=tKFAyzF>P!VA;VPBhvFEvl;uT6Wzbmb90=coq(`L|>VlKd?p9yH*V~j9HE&SFqdf>v*MN0h zK5o$vzI}eX$gTf1`L<=(c0j!zV1sUO@ApFVo165|C9|mI9Kc@m%C<<+9gLCewg5t`xEKAYBxo5B3EuQOAZKQR#kFN>M=lopr+-a zlu=cQuHt~j0O()6!uDzZBvc^rHS{f?iV~@H3%iXgL zH&P>W2ro3Tg{&e0@6432M^waqoLu&coYbP5ZV^dg($U(nxRyejzjYz+MgNTjlLuN$@K92U;U%)j})Az z;~yK}dgXH<$C8HRvsQ)n7W$Xj++LPe4SKYLEC zggfmXYSYfIluOjZGlobWNG5Wp_mh_7Jl#8i)hBm!-O|8{xC!XRCCIrCrG!{o_AU(& zXB74&6+OVq;pxnPRPBm3Bmr6^-OUOSijTI~#JXc#nw2W*-7XulDh{*%JI*Nc^r+H9 z;v+8+-LD3c#xmC+`{Ag&M02{Q&2j9?S_uL&YTSI#NJyocN1=|eX*%zzG-!(xmcPox zBAFP!E(FUr;{s1f{jO0%`#J3%v~+RcH!86vcQ`*M%p=F^{kfXD6Zs@EhmeV!6eU#k z>XC%hgEHGui00pEw(-5?FigorOJ2SH$=O=m9-}|{`alwfCFuBLj?Su0>JW`)iTrFel^nS`Zr2t2a@bn@%!ZMJkRJ*yQX1mzKT4M&e3{Q;3VWWfUW&}} zRm}CaOd(9lAf)6^DT0iaH2lg}Zk>PsP?cD7!X#JC(kWM&(Aq!|n9&kse#a)oD#v8h zM;~Wc9>&tilmx0eovGgcbJCdFf+GL;%Lo2g5{`sae&gm zR0>Q(*ckDDMh2V>WYm5MGh*o_BpjwQX}^xCie`vlj(0enzpr{~L6>!{)!hNY{VZtt zyvN%`UQ)8_TiW9cSQI@`yz6}GhiAHEufMbxHaVQm`Tt%*{YK>IdZb>`1*Z3%{xbiO z6o?K?UuJjTkc`gTUVrlZN73Xqu`Z>bA$}ts72IU+gW~Pe-tj^q#$6b^$GTs%Maoez~-LN-Yw8V6(U`+U=t(F6b5=_hIa2m2MV(?HH#>dae1-^cWrpvtnHt zmR`9g1MA|*A8MIx4;V8`?$P@bQBsMpt(+?2!80RLa;4I> z-PNqY^+bX@8D0-yGX}mdHk&A!o6nYsng1n5tNcCI5{jdgH(oMoKjrOi9aZNg>;NiW zv$TE(BVHrY1-(l?c?QJ*bdu>G9AIG@aUQbi`H-Vlc)(i5b@}IW+JI&nP*Qw z(K0=i>8Mb|HPk=ew=e0x;Ge!Y*7KG-^&SHG)VKAkECJQmx12+f-BT7FL02bl?$Nzm z7fa&4gU2Yg12{;-uu1EIKR9@px83qmx>2?qv08BMb#Zu09q8;7z5o@DDXe;G9(a5b zZ7eGOW&~%BAVd944Xh~$H7iN@CLOQ9=8?Gg-Z8C2K>wk04}0{?FX5YuMbMJO{MuNy zL-_TgWNgrV)%mOk$K4t2UHilsZYSA_&du^L$^G4ue;>i#zB-RbB|G}~m~MnqmdX&S z`-NwJ&*QQv+XHZa*(Y*-+4VSKVdS-PUujMx_U3j5y-Hp2GzN z0W?{7fVc;p|K*hMLkB})T_G9xT@53&F`VBoo-^I@;Be^_o+EV3q5RYTURpW7(-Z21 z$xiWb^Cj`YKPEr)j=UJ}PklhtKFNPnVnXr7K$#@EC0LixbhB~rRgv)gF6eSBgM$iu za0yq~Fs;54!&Y}mw-l00A9Yv62k36eKa&JLuEJ|(l_rAcJRVTx1@ba#RIxekRym^!DqI>ll%XuGSANnPeG_LJU)uZ?^GEUc_^Sx@ zvV5E{oUE^;@#~o33yfX@`VRcX{@%a8KJh=gNk7iZ%ds8ZuDyuzI%`<62PTmh-yQ zcUK-*6~=S?dc*X6a?(Ok7Dl{xs+U?c09=Gj zswG7M4go@)X<3(I5Q*fUON)+)6Xv=6}_x^@&XW3WCF-p3p9%s0^))4u=lZ zF`dfQOQV<#GT1;1RG7HSWHt1Ui|_78F6)ukq~YS?_R(LHm&nmn_D7k9F&8H#vF3mM zz3aP`i+eL@h+lIPGS87Rnne8HK~D|l8hXq)f^D^_?UKLd*^=P0IM($W zi_V~ThblomZv*dF=@ZOnTDvS{kIY1n@D9%PFV9zJ>%}`EGHj~sQ zvO0vg{0W}Ferzh?xMN|kV1L8}QSYQpBZ&%EufMNw`y`lV&tt|;3pjEfzR=>a#3eDY zP(?@C0c$oUxEtY*!g!OQjNv$4haBcnqEGn-=r2T=KW%&HqlKuIobR2t{#&bNP&@@8`ARkP2e^XUBME-^S)#SsV&j8_&!(F((HFS^uT=cs06yXk1T@2D zPE<3X1b{o`sn2gP5tsQ@O^T2SxEX;3pXgtmz8+_`B6-iA^M!tB?K2(PGyWWk;WWfs zh*S@?s0Wo=B@uXv_y+|gc-0Eb*iLctCmo6||B_hIR#EoxU4HVpy!SG@jv4gS+uZC53dZ4WNm)ZV>A}U#lJPg z@b`4>-URGGgpH;HtW0L2#s=)LcLp0I5$75XLttCDC~Z6~lScD_>4w~t!{26R5(rTb z0pe1dT{Tq#*t5WRQ$0rgQi|}5C&chIGg0(kyTO89Z388-CkaATp(EGVVtelT4s~`^ z?)uRipKuE}&^D2A1Bzf~#rR;-l-HTYF=T@Qg$KmHfqzFKjFlmrN$ct_o|w`LvZ>yt za!=cFnzU^s0n}v*+r3dN`$(Y(2^els0JbjHwQK?x%>Clc^2;;X5Zr*b|r zGJ@8V4Mj}sfXI#M<=Pjk@ERQV`kR?drz)vpm$FUo$hl-!BiQ{|WhH zS{_Q<158+~+Bz6E3eWJQ?&W)$^QD4x87r?Q%2L${F)(K{S~Qa$lW(AGT#AaWRsB7K8lT1|gE6t?5I2tn93fJi4WgG6@~wiAyZ62sY>_%OWu zI6U?Efge3^cvJ&{oF0t`b7cM5^Yhn$x%QsT;y#rIEV`$3eC=*g*PU#}rIaT&hR@;1 zxd@kAhwR%}ChNyJ>}YRbGqKon$P^IHco|_3K$otklu-~p%KPy(f>kqw=#1P!=IJO0WW{G9ro>n#t7+TdjDLCzO;uGUa!w19*z9FIed z=0iMMF(fWwNjS*qCRCBfg<*@qYqrYaDi+tIF-7hJVjxv7u_qQ0e3M5jly>oy=p2I=1;+Dq6SNU7~o|Hf32F5OfNipA$8}H3B$44VH<@&DGq=GgMZ|we{dmqc1YXU+%ZfQi7Y@$1l}7)A8mBMj6eCYQd9qV0fuH7n5gcN8crGJl z>XMd58u?1eRr!NP;N`3Wpn*PCrtf-Y+eq2t0*&p$H{ z)u(fM`--n=15HaV{>JMPCQqnz%uYq%9*igYPIb6AV0=ELUp}0TQ;8`T6sC0+hq<|X zc1ImQlrj1^{->tCZMO4Ry6oyDqgz%9v(}Pv#ODgqgKJW>|H(cLAbZ9lR0vXV$rA-8+UAW1%r5pH-3cVXjXwt=u6z!!hIo zmRM#6UOknPww#4Bn+NIY{?ZB;wwir z;{`+2mBa|lt)k*)=Tj)3D-?IBhtkUMkcK>?1gAC7=6Ix0c~aaQn7n+WeChuD$2J8) z9a3~|zXDtyM+&IZ=4LV%-FV|VqK#t0g=kws9s>G!zOGTQBC@?~=0dktJ?XANmuqpx zPYO&_tH*zL)phNEzldLyqgsIn{0=y&l{w31^a3G0d7X`j_za@`GnkH^E@iF|X)b0Y z;4kNJpGt+jr7h3+QOxQkj7PJ3?i~nPcI8X>a#acm&8hZ~ySS+yS-Rb0;VSPbo&zdc z{uT|mKkrli63@`~=8mhhw2JRFj`@LUX?QflAHRE)d6@#(qr?)jji z?ClF;kbmn5+G=h?yq;06P|6sx3Wb03gH);C9QTOGk4>T`#0x@Lo^y}5v3Hp??Tr@; z&oqY7_Ij%+##@pVb;@?-NTTq(_QcCqS!V zlHYb^vP|fY?SKg{dc8aN)-#D)jxcgQ&J#BPd>%Cmb~k`HKe!%7~Gpwkg>Ifr-B(lGEZIAt$-v?~Y^$P01-rVMCs(*=7sB zxf@U8lSowLk`FJ;{*-5B9j^NKb(=(LJLV7Am#8MY!3sl>O^mc`wY`1B# zTK3YfRhTf!M^f!70v&pSk%dLqd&_e>@$kr=6ohN+dK~Q_JCezFz!3l{?dD5MD!Nshs%U>AXSJTAl;k4L&BkD zG#G!Nu3E#Jz*%mw(1K zx#oGn1@JVMlMV^_euk8`$qJG&`SRP*o*DgvC_7POp8&1}_aiA!-e|F`l-p;tw1$MZ zORALXVp{U!V$m-E4Hf-zGB3!lrSmsAw>mhH{WaXRlYwr;RaYfas(Vt%Mr+ndt1$J6 zY5Y-+#0miyr->+*Oy5!(>Dr^cbG;KgPJXyav6?A&=GzRP_y}W1#x)_+cwU$vm0^so z0d98ir+nViN1qwGC;2I2IC}BGD>z7|$TR^3f6OIzfyU3SsESd3KKKva8ljnARfgq# zs_IIHm*H$usuj3fwO_Lfzes&cOAS*tB090ADd-|kNf0_d#J!0?zm2V{1x3WW*Bq)P zjy#kqtD-%D?eMeylA<%1lD+eV06tE z?t^YT`YUkJ?G;Xxe#4+Zki~cX)zD`l-?<*cLZuceA||5w5)5BgeeazokgLQs1doB& zwPHeJ5%v7`kjjZS+@*s(q8@4cVt%26m#-0T^SQ+Nqjz)2`utC2ML%^v zCimm@HNIY=&CfTZq;N@2u=2S?3rLkZ?MSh+8G$X94-ZWSK8y?tHc-6u%_fqM)NcGn zba<6jTG0cG1|(C0RLW?NDqL;=K)UFHfV+cLDrrQ08`8AcFn4o?${hyyMK^U4{_X2F zJ;zl5r4}YCPPrP&(-NjBPvux6H17x>RYyt@|8r<00s;r&#m|8E03a$Iw*Ua8#na2{ z`uX0Wn)i)qXT|t+&2cY#eM8%Pz57)5_eaZ`bn+#qcq}PvS&gk~>G~nL{)dH@#rkyG zPnYMYYPa24hqu=Kh0|Sx(<^j*zp%P`^6LQ}A;_W)vD)j@TWvpFRHN((z|Q<0&*A~k zs>nikcFvyOKVoBLPE>gQPt@wTiYiTRo;~oV4v?j)Zo$^?iK3O{`+Las9k2!eUm)XN zLQ3rgkOiI$KTtK)(57iO-XrIdD;1PG?EJ#5>{QrP)oeoY1t3Z&JyMD+SIM44x=ND= zJ&vqoK)sB4qLFD3L!PqMbNasAVkq>7<97!^5P0I<^Utx?kmm+VLB9TpvvIOQTNix<#Gh8ptw zR=|u0%Z2yPvPmTq{c{`c+fG8%iQ)zIzdVoPW`yUVFQx_)G67kd#hb%u{-0ccd27LA zvSI%(gqjW^jrOIF!abC-5x-0*c}>)&Wywiw;r#OIM%G~PPpR{1u@}Ys^L%kNJe*Ve zP9;!Rj`%k$Q4J&BmCI(L)>XQB8+!jputnLB{e@YxjnMZlQbCQ&sH%q_v|oNya8(2U z(i!*C*C6f`{FdEn%FzE#`gJTYYDI{&wu3%`@R5T?fup{rqIuq&A&q&Wg}0<4VIG@l zqUa8QHa?CMX=wBCVM@2~FfNp=bigUgo% zN%(tnY|~~MtM6HYwPYfTBXi!pJn|uKe9{7z8beQ8n7JcgxZ07~Xr0ZIs+AQY$`qalYK_@1Q4 z!Y2l@wNq<%B7(zN;MUB|$OZ8trfX_ot?gKp&49uHU%wKU8j(oXKh71@P!ja=D<@%O z9Nq7z;Nq2N=Z&C_8p5TDbp(a|&7~OtWDd(8m`$;g7LZG(A0Vx*Z+3&OUI!9YRZVTQ zgwRO%`DM{AEv<)y&>(jyG`Q9hP;7V3?s6@zoijKMb+fAg>rF%Lcyu=W1V&#^227^6 zXkQBQ{lg_Lv4ToTX>O+aCUXeEjDhs^CzK6feycyjzHJ=1m_ln3D~7bRa0VS$onK}J zoy86Lh60tV{!Cw8YtvE^5HRx!4L93l8aK&AXZ};N;egA4e6=U@MPKAPFD-_|xc3_AeI4%5op+}zVDHo^ za&!7Er$DeF$_0eJZZ{usMFVk*pPJ(3i3d)wLF~drZAb6AsP$9BEAH}$X6?yDm^=(U z9%IU#ZI(7^7$w`?1Hv_c|1k6b;&8Wxy=p-NHqZOqCMOYcKPv+j4RcpulNs^O%5PV> z84so9deW}43L-V;jqJVE{`8v+%zDSr%1i873drt+TGnbkbosnD_ZJrF*~Mn?+*pk= zP?z#JtwwFW2rsV$+CV#&4aU&r6mU68v!5TwF<|TcmeYJ+ zTUZWaUo@a}5psNA35wjd7KgiT1oq7nG~66@?|Gg5DgiyuO+EH`N7M5Pqo^p3SV%4T z+Xfameg+q`2k>b0sA@pZ50j{A-dWxg~VClX5@t zP3$+cO+&T*xMotA{dm#LOmYYPP#=6-HPMg|#+v1qyHl$Z=$3A!cpLFbc~eF7Mlc}2 zpw%VLM~zUHXOTWwkVWL%^a+Z>p1mTFV)_E{`>gTMjI~co{>Re|@q(hy%-E6d_kIU? zPFojD{IJrud2}X>R}>?YjOJqn;UVZFUIyNtBz8=qy1V0;tfj?;Hjmf*`!-GFYjG*3 z_%7-7i@psQZmxnu&k-4HiIH)>#hv5r5KjD!7#YR$PdkUzW`}t{`|F86*CQVI|*mP%xrz zVh8%ND~CD4O>U1N&&)s@Y#`k=#?MRl@#s-yG<{N$rc%<+hIHeWvPMl}A0Q*5&&M{o zyz(27jLFs<-gcz_RJu;$PavQU%i%V{xY@WA;<|pR**-o=TnB{PY%^cVKC60V*8DVe zFhFjOUF3;8Xa0{@$_%FDZ)RDK&$bogQ~unk`+P6on0Hd0OnIp)p?rDb`aa*D&z^V@ zSvdm%QhJ6-@DMrr<#A}tktZ5~KK}h<;}iaJ2TQGL56EEhQ^{JmMXV9426}%j1c-)~ zFjc%Y#9GvQjP4E9K0a4&#gzlMUA#L2;DU^(`0nwgZ5H=%1l&Kwd#@w@W0T9G0+LD1 zS3I^QIM&GE;K(leNFKr-!qp{cx&faf8@W|yaIXUW@qoO4<`Td7YNu_PKG~S}7>Lt0 zn(T!;Od7z5)2zT7ud0jiON)lIs(P-k4ddBS1Tw?j>!}QIIIOK~q?$PkZ5i>4Fg_UM zo;a>9JNI&3eZ`O_xBd{9>lqwzIwXJyE03#GNPDf+&F!v7oMvQr<%UCd(3x7*kqEEA z)sq2hfk0AVRaVe~7IZ;5q|}O-4uh+#2iKZr;(M=XMCu!IDQ%zniS@1)&c>pTY+#nA zFusDmJc;@;R>82C(rsoqziqrE>$3pxH}io~ywKG~5Ybva&!N=6uthG{FDT#0Gsmg0 z4@L&DV{qsrC5;M?hC-NykYs#(KDmz&{++@rxZCWlo3v>15=D>>^>Nydr{sE#b9@{U zFCY3e7?Dc(pQgHKptNtkuJxTFvRSZe%S<;Z)NGxaL<^$da2YSlutagw#b~^TcA6Gc=y{jzOldKAOR2LG@X2(5_#C7; zS+zMF`wU%r`F`UCbFV&-?J#w@>$fh=SIK@=Z7r@~Ph0C*R71#`9%?d6v%^ zE1SH}r)Xg33Pz0RkJ2N{N_Ti8oEFkE+K86`}Xs}qo^(>r^zoz>9 z+d{r=rlAwIKiUJo{5r|MW5j=jHYL)SYpn{!7I?gtn8VD?S99`!bi6!3_pOZHiw%}V z=v?acbBQ4TPKiL@lLCZnU@qv-P@al1Y{NqLa7uwyCU_J`R%Bud$jl;uOHXg|6;qwe zHCG|lfs7y+zgr3!D7YbmiciU^dm3pda*i|Y#KfADug_U-)MNA~)ER=andw_c zA&<8i3B~TcQ@E*t9q!w@kX~#TbI(39v&c$8F>`~w12DFH&CSFm6FN5XiinzuN)_Vz z9o#l!s+i|%WNNCINVNn)d-=h0O-GqzJn_dagZVl@DY=c`DG8kHCaKSzap~uo$EfO3 zJJ`zr5@JfCnvt%IFEY#`YE4p%;Z4`pe4x{w|2*}ivJ6}1O>&Omnp)tgYw`>kzR2M2 zVN1as#E&f2cbVN5WJ~Xm2b>^M`a-$4$yQNRMR`qbpZfwvD`M1Z2`}k8?BCUMWRg%Brg_4_ zgwl)Jf;s4zdpN%i?@{O6RvKbg)Z?l(okXFI2B^7 zK^J@>d>CImRo!W%<2(l2Y0d<1*H;5ab7DaExy;3R(mC#}@fU8UFRnOP?ohVm^JRf! zZE0hMs6&1)NWbm!x$|xzkl#2m(>ZmCeDcj@=jK{?#S5+1CMCH$5fLmx23m4HAJQY@ z&370TplpNZPtJkz6tJWR`y=mJ!1bIhx*RZ?#N4Mc@ozju{ihE-;aPmcfzXtt6*pT^!(rJi}Y|FAlm;x z_AZ%JeTAEL5Bd=<%IB?u^+T|N`qTgjC(9~Aig&NZL^^AFb)!LKAx2NjGTEGEjzfSN zfXE3serdx%{w9#sEJt7g$j5UACG1ZxE*}z6zsMMHz{Q6 zEfkN<+TH(1=PsT(VGpo3YaI(MC_qe4HgDqGRE=ePmAzCL*kpWMn>Jsy^Zazwnco)# z5`hz5ARBY#>1L63N>A#SjOGC2o#pmkZ8jHOWf37KyXTT%1%8clBFjB5nnv~2>T1F2 z=s?Gu>*k)ub4nx=FKqS8lvx+c3TqH{&1g_9z`=ms+O*J4eMoW0tKF%5=6AoR}SV<_`^Yu z{yJQJW41!v@~U@m(jM_~g~l~C{~?pSkSl#-O@MY-#rw;v3;TR)p5k^@H}B}!$xQ;o zjk_R_24r9QwbDu}l1-v?7W$Juz_KQ=k@>2Y5nPPIpYOrOkdC(H{7?gF=x2 zUCQe6fwbcB)G);Y~ z(Tc{3xIBqD7%zX&%~fpU6r%YrfoWDyI0KxmmfHL|=tGgO{p`{7E`y4$yAjo_VEF=* zT&gETq@PatD***Qw982+{n1l!xwvUX776|Df%L+@WSh~Ar6tb&=ut64D$w#r9X`u=D*GS;dOI~EBv9ij`s6-EA z-@xu`Ve_3xEvF=xrNLdn`DHu8Vv*74(Iu0ZRv*#yOhp~6HqHTQ{b{J1HWih2Bry5` zeqi)_u~Utbpmp0nnec#48nzZzN6U`q_`?e$pdpcaO|H~?6K!4Bs9qYx^J0R(Yz}hh7DKnPWYepEzbI!uuj1|H#X+kE zg{iOd@`4Lr+}d#tk%w*NK=92B=i#9jU^>XYJuGJ?$(;IDn#=juYhw>eI|c z#5Ok`(by$}!p^R!!9X#htYNkypY$QuSY$RHlZR8#=!=6+O3c9GE#j*3y`S~H zw6yBF*`c+^WkUU($JAGZ!Rg1402!=6Yan^|FfRw+&s~6?fI*?bvEu4#^rKl&ca#P$ zNvj2Njw#yy$3FkuAwN!%*2M|Oy({h)DxR20j3xzY?PT-@#03y`^vgNlQO6hzmH;&N zn;Z^&QM~p#KkvRIvQLc4-S6AE3|nb5OAqw+ns&wK_J3cwB~6Hb0qRcywxI<0{)_tp z?kb^GZKra^SOnnwra#~y5sS6(Jzq+v*2=EnAC|ml`k;FznW8`tJkym~VMZmIN*|fZ zG88qb#TK2q9BgrI@qZ+To-x^XiK}3BZnSjrQTFNxgEA37H0d<9b?x}I&zQ6EOZ;Ag zhF-f@OLMWfafFIxaXgm$kpW_PAL^16!SHb%IT4ErWsPCMdj8wG3me^#&R`0UAk_i;;1i(KwDEm^-_5)45TphR{w$p`>ym;Uh>nKlk;b&fDNlQ zmd7@)zquVuRn0jGvH{+Kr>OC7t=V^zxG&j%hkODPDu{h69({NB#c2B2eNHA%T;oEA zENuGphfhN@-Vn;pu4M{=$+!jt@bG5q?b-w@D%=3axl77=Ewa_&$k6KK`MA1PxN2d) zO)33=H#($q38-9tVY>(82f#keKBAyJJ8sh`C6yL~CvBo`wdJh-{fWn@2#cLEeAHmU?L6yMilt zi9MQSKx>fA>sYBaoUp7S+A_;4Q~OkiQm;Z0(JbQQY~vow&A%W(1^=Ow^%5Y%O+8OE z&9cEQp+yx^0BJ>^!hZSDjnHda^W0~T?Sz>Cpjq7J|3Mr+(T{Qf7|!Ug3D3u04%Hex z!eNj0TM{w?WeL;-`;ctv8`VyGX}cT)5xnCLQ1U8Kxb@jrkuCXTsZIJ4)b%NYYz>A} zQqq8^QK)<;^QJ6>ZV^Z^o1|6ClNf6ry`Yd~Bc_ngB>RzfDc(+9xJ@ZG%9b_C=6d+H zA5ys4(5nvA9puy>D6ol(VjFGw*u*lHJ)fHE5mm=_ z!OsSMdd#2H30f_S0nsOhJrdpE)BNCli~`4?5JpP3{_l3-d17 zUTGVxoLOM5*nvU>1?RmBz65~P=`*5@ z*&}s^`2%^&^hL9Id&Zb{&u8d~oi5-&(JlS7=dS>WNIsO>1uUuK!|zih5Y64`;$za7 z5N_mOpZ%ZgLOfLqYexmZ#ku!7lZ^MP02>Ksg@5Ogm-Q{H*-40D%b($|?Apm3Uut`v z5C5)8X)v7P-XQ^Kx9b6sSzQ5jL#sYn*Kt73|5p-HNtF|(%=F}~Qp$NAuM8I%fkG-D znjw*2W>#ybW@yzW>CIV-NO`Al#F$CzP{PVG5;%u+yyb>INn03h;(xJAy)^=eE9mn!UY&V7N<1jAHt)JAGhKC1U zS?h-+O-2A2I|WEPtRs=^7kqS@n%h6Afhq9=Ag=1W2(2>MU1ak}ArHQ)%ohLCJ8Jje zEFw0h;61km&$E$D$sls%0@LB44B&B@_dXpy6elVTlrikgwU1f z8^Fr(Xj6y%&^A%syt>+WI6n5q&%NPT#KfH^`s)t?YE4*lYVQ6Z89SXdI|DfN2q=$} zjgNub@;qA+zpj@!fqXo{3qdwP=h^-r0wIhW5OL(ZeqLId%<*$+PY#8ed-l0Wn!gN0 z>GsarTIZoLM8_{|JN1jz>(7C*tE=h-8-=LcdeTuXT@arOdj-51jIW zRZNJp<7}u;m`6hFyy=$77b~#2z4s?UpG-W(c?GL?`(9@*!ixl34N0y$)0Jb2Ls zelOL2!Chag6I-c+9FY}Oc#i=l`Z8h{IM@W7s;HiIu-pqb@|Og%gAWRR@{!Cw$S-yj zPK~$Ts)R&xt)pBXsOx}2b9CYkSLQ8h^#`6vLxEfY{Aq=BrGw`WdqP{0Ua5UF{4W8T zJjM8-$ZEeWccv$Adfj~44_2WbO6{z(Q&GJREgM9KJiviGhkOSIOFxBra6~OyO?u-Y ze)8baOud`n-&jcKZt|EAAVK`B$IB5OD)K#N&#+8X*8U-2k6zUi?WnMzSa6iC)NXS& zc}4z=;~rDvLrbnN+Y48}4g?8&M3qCMvO{zRON_nilxbu%kB|>!(pm&3eM)|9Plv6c zE&B_;sQbiU{pq8Pc@Aaag90SzQou4jqIZ9(KaSF{nR-~NYpG9luZ0qroc+m~_Ny(o z7{<|eA2OXM9ktTW>C;TU#@vtx>r-unC%xb#kL36klW*7$8hE*epjLf^@2`t`?p z=XXJY0_B;L+uxzBILPGcjwWtJbT)iDB<3hqSaltfs>4TTiktEH{4?G0EWzoP&c<9o zEyC*HO_+N~Nx5EXy=X4-h8*#uMl70zF#6RLF-V41t$@wiIVSjX+uzj0Ka|vJ&W<93 z#Tbh&mV9jzE$1Yi>3q%FA6zN>1zJBBFRBXOtBTOGJu%Vd_5!w$A>weOE(@;`HWoNp zWKDj%;92X!)%jB3&2hEFUs`9iPF&w2QV5VR8%@$2yRdBUtYR@^3C=w3yrPg&6z<6U zedRH7T}@h3j-FAC?1lJ6#@wcLi#aADhl#FkdV8R>?XGY4p6fF@m~%{VG-oV0b-dwK zFxBGXP0EGxGsOLz7BKEsNveABk>jKC^RtmTAp+CG>CgaKn~>)?E^_a^gXBM%*@Q)Q z!cMTykf_`#I^>*S>ns^2D{l#C1SoW5e5o`Jssa@*(V>5rg&%f;W{0Z;9IptZxY#rA*@9T*;-id`I2-i0oxBBk5lelqgri zR~ZjEr|gx3g;$G&)*^P@9E)-Ep=cy&=Z;1wC0ZI1(-rSiBG58?KPc`+sAzEPYLn1f zV-hDpf|zpWfH=4A1Bqj-lL!zzU72BF;Qcbo_fRTR?T|0ueIyU?F$0ayk~Or9B2R2m z0xCzvS*6PhY}LNcn~gL!cHzDI~LXovdM94PEc*!oqPkM zQ8nxq|M2iRU(r-l2S)dIK|K9xsQA~9v0e%S>vV(ma%*Hk=Up5 zq$}IwG5vvQhOqRc<6$ZeD^q5trS{|eyyl=9q`B7hdK^HL%8w-M?rY#soaWtSS4kyvIImH0 zr2f5LG*B9eN>>oBygpt^*ni>ZQ*W?#s+hFlpTe#By@@_{txNVP_>OD7hDE-{i)hW< zoKxXbV-O5Vu0r_o4^(qFH-?q6jmiFW`tB&0j#H(AVN6U0=pKjC-x;=WEFS|ZHuBdy zb9E%K1K3n`P4e4h(1;maCi?2Wuw~&ke!(7(NHYqz6uD_{z4Ekqy|Tm_jxqQ;6>j+q zwJ#Q=As8Atu1b!_M5dBl7}jUkf1{rk?(mU+s!FJ`>L(mDJ&eAdr+BzW?d#{~2DR_Z zOVePr5S@62EoM}r& zf!%dpG3SkwoOP8Y8w$RDaT&;uGhr`y3rd)ZEj;)%sh*X2sDU=7B+1Kjs`*qzfn>2E zmPgkw(>#nV1rCypvrQWC;Q}M&8Fkte7pPSU6xEehv7qUnv;yz+VdDqReJl@b_zw3S|mF zQiKRsj2zsYHwxZ-OoFU#HnBofv$WWNE4_a~*;XQvUof zkF<3uB_t8Hxp42$x!NtjF+9tV-Kmy;-a)4v!+E)Xmu@fTcwRk5>VO9Ab{jj!{k``` z&sdtWdR7nLA*a?Q1a;U?{D#Ug+;Pot&f9kRNbMBY5;g}B&j)2bBowp*D}`JItcE8mE_w@0DO zvRF6Q;|FfH3y+mfhOeOC3}TJKGY(XhCs@QwE6f*pA z!Xk$ai)9+s$#u>#_KCb1@(;{M?07fYmd2IHOfpAB*j4hj#j)oo9*T?YP7z2C_e36c zGP?KM5!cP`Ol3Y?Q+Y}a8a~5?(dW_R@{vCh7jtRUs?{hz_sfmZi58yP;+K1a)4dv& zGlh>-f0bH7J_0GRbQRw?l$zfFdaHF$BqI+#&6s6BVsPFi;Wb1%p_LuSE-iTjrAwvO zhHhA!6NR`K@{=v7<@cyt(Gj2GB@j;unTzDWVHJlO9PM(yy@n6$BVmtFf8_g$Z{Bfz z=WjXmaJBrHw}RMYHe}aJ9b}0jCtyxjzXQN%T@PZH=4<^>)8FhHC~akK%r)TM+qKA7JB+4S($SnPDT2s z$Mx!6LDZ#Q7Ysh!vgY4HQKee!lJQBlYLND2nsp>6VkVutbufS@HUv*oh1S~SG4=z@=jCe+S znDeDSy;+`Q+5|IQ!9`_O_1#*~*wbmfJ(nmpUpSw&i)gOv?M5;r|I1Ji5SfKOcPuKjE8 zHE@}yFt+>1YrZByaY?6*Gnf%oIXzd{13+hmI98V%-;$QL)g4ZIJ9T;1*4^{fp-_6r zb6!vX>x~teGi%4vQ+;=#^8)uRc<5JjrfXx82LcP0-=v3HLKt2}UbddYTWipb2r4Zl z+I@?Qwcxsfl%%U7?XE5!`a zkq*wsNfqwGz4eP_$#qp%54f`gTHR@4Kjffn_q-x-`_r@FDmoR`ia|X=FURxOMW{*U zNvy{=mUbP5TfzZlpDBz&84m`>T;2C~@0EL6=uH@Cs!9u9#iiv=okivNWD#h(Eu_|Q zMM4$Elk@u1tXJIBA#>+H`bNR>sE85xvs?mZNSkl;ZpWg&;Wt3VYlC^Ag?>|awFhiR`ps+&Lyn~#PG>ip$Fzume z98Z|KEYJ?EZ;3K0&s3g0C6>qnZ( z*|y&^E$Bw>N6K;E^aeGE4{2dMEh2&1l5R2 zosHcOZ`rNW;%cndv&`3#*9Ui>U!x^UZM&~*!Yq3k`DnQ*5gJY$Kf$h!;Tr}Suepn- zsh+Cz#~l4p6e8>CJBi=@WRnRrWIx`%nNLaM?t3H8n(Sia6lxvr8`hK+DKcMg<1 z=Zxq(JR=J;ml^gn*w23i*2#?4kc6g-GtA|jz!br4!DGnK8OW*XP0to4=zHi9eINf? zk;E^8nZY^1b^W!pGepYu>YUxLGKpVBVzTpsZTQ2ZwZ?sBB|Nf6DbQ)OcTS3n_py9c z_ra&&9enlF@P=cPyZ)5<;*Ssw=Y#tkxY3O_VFNzyn)z+!Va{Zhh2!pyU+KPQ?dv#_ zTseFsmP;>TROb;aNQ;eI>&}Sa5sO4Ye13LlMBZ9tZyoxODjrdaP5}_@P7HLoD%85k zD2VIXVzR;-&h^*xyCn(#ha zfEop<9aG8OUY(2VeC#0C9DFV5_%>S?`#TK!x^mpzR`@W77om11v@c!FCjs>_YS^=` z(i${Nuf*q-y&m{7kvM02oGw^LGOKEZ=J;|M+uG1>w(o?7w8FX~7tXJ^rBd=uJwy?m z*fa0cMY5uXsrpn2v=JWM72y>yi6T<~oT+6pqxBPkQY33+sl?6Al!Ri1k?N+y+0ewqrOO35r*yMG=aV5)&{yYC6}a7MSRbx9$}W;$K^z3W_Nis7wxc- zVMzy{qz-7OK<(K+kE*x?S<)n&5KLpdA>20HxY!{q1pbDYCTW-skO*)84=QY)s=`#|=H<_CiRYhx1qC;-Tkmtvm;Ax%;Z(6TTaY14X=mXqxpapH_ z`g!Y5vE@KR&&B3@AQ(ld_&3vQMzg58F_{D**;Uc{?1LxN@!GMYF+q1Kuq$@>Wp>4X zWa^W4vkWJsDWm3pxO;rg)~-TSsdh|6fa1^@BIsOq92sONm@7wz?QGbKKuliGa@>+22vO?k{P2eJ=tzHtjWk9WyyBLjrYW7<*BgO zlC>O(>x^pMd_6Pdi)9_j-4-e8f|o6cWyy9G>S^XT>hq)4h)KdQw#u1-n7Lmse&r16 z-{|{-u}<~^{pLX*4xCB|tCmn}n6%;YR_bR~JC%nWZJ*gh_Y5X-{{YU_>d5MsiVN^^i^y zMVGhNNEb%<(yCGHtI<#SH+ORfhId{Bd*6}J~GMvU6X8T@Tp@IWOCN1J@3L{!TOz!<&luzUD zCvxZdTC`S)vpZ0tn(1q;Haqd{2IlP}Z})F6-`_T-+t}!nx@ViQ4#qXh1qB7f0I#G3 z9UJaWK0&KOu2yJ4XYAtUh%J9N_;v!HPI4J`Y^*$FS+27>W04ba$Qx_npTs(#{?(3r zeX0tX%%TwEpMvh<|GRplT)l(J_*8`P=I5nQ=UoZK#7O%;?N#UcP3EM94O+D6XE|N8 zCvREbPKy7wW&Pca2^}Ttz7cP;Fin>7o7SXO+IW3xk;*u@Yx*Ffs?Ii_3HTc1Ts%o^Zy}$nT$IQY9>r{K2Nj z{FiBT@SX5pVm=Gb)74_3{o&DyHB>5I&&jdgP>c|zt)-<2(&R%!`(*ePdqRqI_PY0h zZT$!Kyl^gRuEudZNh#8ogk0ZHe|N5%XsF@@|K@qoD8@~i8akK31lNcSDfSPSZypgt zR9ZdGJRu^`&7{sf^$Q3{Q5=$C)vHJa&M<}-%cp3}BgYnA++OE!EO)o`D|Sm~I*bJ{ z0ET{Ub{4iGCHV`8|8jh!#<|%jJ1t1a6jzSL`|Lt_D9nkUoyvQ~uIg7yx2wNqPZ84l zXpwI1GSUO$%4;Iaz%l|}K-6rYK z>rL=&x5P)tY9%sG=%+!P>!IWzgY0B5=jAjJ^AiDwT)1%b_9OZUzsE`TL91Ksn4BB% z8JJ@1Z}5MPZx=U)JH=wYKu3m>Bg?2xQzCMx##sw9C){Xu4vpeg8DHsU`k_ zDM1PBcwD&TnuDLVy)z|`;$?DW6V8N^r_9pl$|~e$lphCL*x-qo3Ty!!Vy)~nlaI|^ z!#+W2C_k>6Db!j2Ad)&uvH07jN7DZE!<`f&ptH~<&GC8Npe>Ap$^1_WYOir*%#4T# zmzm2d&ve-BrU&+?btwUTgqG+ckoq>)CLYn;gS{2F^!4UR9+ge%>nk?ckZwFo7c#PO zhSH|Jv_`1&TX#3em~`ZE$va_LwG?Qb>YF;eJ23|CHYHrFep;R^ELS=;Oa@T+$V`o(e)pB;;YHIQiPF*MO^IEquJnKcbkby#=&ks5c&P` z*Jv6#F6pSNWNn`he*4Cpu7I0HUf&q3*ekS7M<-$HT|88MA{W%s4edU8d2@Y@xEk+; z#Ms&z-_!;4TQrX-Hb#f9onE}S-K||N&<8T7o*(7sVd~L0!t1^SXJE)ri?g!P#zuV9 zHBYxfx~=}}T#&SXQ5 z)~Q$OOyFK0h$QT^>yF|=X#ml%F-(yX8^n`@$ji*v(d zSzY(yb45OUgZn^6<9w+UkY-4d@kua@^)Kuq%}1H=hkEB6x*~qcrTNDWQTZD8q&7I8 zH|SRm?%jR(b69d#hxB}K$?`)VJTvIEE8QfP10{g}cI#9e{YNQoo zrWqT%*ULCebyASI|rnB8keKobe=6i9^FlvmH6dhe*!90 zC`=zS8}U@)!MDUm+y}Bjd(_R}L%5}w1E;Y{5?>u(#K*aMCT(BpjXC;&AghNd{hx$z zC3X|+lf`uuCDq9_PpKzCg%Y^Jb_9N2i}gYZ9N&w4)B= zWJkVHL5{So;v#ua)wH)o0?a6h8+X+E{gan99D;KOW$pph%JaVJiuFD3#&_SI!XSS@ zu0Q_#X&YVEPrKI1OIl7>C*16FhIc>!rOd-5rKvTeS({@0jhj(#9V(LL_7-Vh;$I?y zC(+|j3%nKYsK(gf%f0lKpaz)jBa|E~HG^r-Uj+0+>pxarwzNHK8wD~oY5pHIp;J*_ zGvbHdQseA97zbzJZQOKup5cbKld;cZ(R+tdSsw2PeQYv8vD;0LAfIgZ&S~8?KAc24E_&Ve9i!j0!F&sdA z@Zc(7`Q?>Hg&%R)UTotxR#Z~*5q~eYQX}qcOIvf#*U{!p$Z#gxPN}3{ z5H$GW7f$cBRYGWzYLF-3NG}J_lZpH@evWY}v}XmNS+$L8QdVztHSI4mW(j)YjGMC> zHfDB(*+2Ibq05>rpV@lL7e$2CJ%L*BRr>HUtwXvd#}*dzk$;ILA3@P|^`Y^KPpFqR zH64)Rg9NYR%5`C)i8zWV7+FOXwo51yKu?6=em;{n&HBab?L`?SQn|-}n&1Niq;K|v zXrmIQx;O*e>(Nl-A0zNZ@(U!Z8veMtyyr4aUC+<29yH4JD*Bn`4Y9(CenHE~P@sRZ z&!jmw{&H1}#y`%PuB7fy3})@BOQGBUUjHuR6xk?dvl#zYIf=n$_DNvt*)Mk`6 z(@$sePgxnDni*-bTxW5&1k4P{?=MY+ty&F_^-h&7mHngPdajZbpQJe;Tn59@GMfP}&gGS? zfOq;IQO9p*Zvh;G*$Pgpl6*MDfW!yHEu;c)uk7yqK#yvX3J>Bv8aFqY4Q$DYzfN4C z|KRs`^8WL`fK($Ou4xin^HSGjMsJ$DrfId_O0@R>J`W=dRs^nC8~@P3FY}7%SNOl5 zoF^rjb@|1yFlt;$9Gd*scYY&~2A)SC|3@m`@Izv9)1}3n8yB zINb25v*h2AOGh0>1Cd+a)9?nGzdtnP=&R*QpH_OxxSPIaJUuSL@Tx*0^~ z@3guMOY37<5~u3+8!i_4?=$~&xz65+yKFnL{`x6iR2iR^SH$nDtp1jtBI!eLJ7qEF z&d`4ggnkox-sg9OH0OufDW~4Wf^)2DWeHC|T)g1DS;N|h>rB>hT@}==S887SNb1x6 z`UD!-6)rIBD1@V$OLV5DAa6YBp1@E3X;AakM#k|l+s^R+_vN~PU7ovhV_D+b#SK~D z{`yIJr0epo`-U@4thb=yg!JZE08}gcQ^MN+BAK83gGSr*LpH;+vZX7E3ueuN1Dw7i zeB=^A2DP}A|5cciX#cBR)>R_fPd?Pzvi+q~ zZP>A*a0=GVu;9jMYq`^6A#h(4Pm)-AitJ~(LC|vyGh-pGBI_b_SiI&yYsW8!iUkgB zpvm5O;S%_;*>kHpzj}9Ew?IzsZEkdQZrH9$Y211{rb%_ zHB~B`BjZJ6-u^Oq|JdTwg`@L$%B!YK*s03rBdN=7jmNu=$*`fktd*wpYvb~m4TyH# z<>0SNCkiqt&2{S&5`$g#T`;D%wjq~G@^+U~=HDd~HJkCbGGR?x)$E+SVUE#Gc3z!H zWvN}s*WkCUcIu6p)q6cJIP^v3=Ys9kUP7$TZQQRdbrTQh`w3CgT)jz4xo}mmiRow}1TJniaBAs#B@SndVOYs9FGdl-_6didc?3NovfU zni`hD#cbN@l#A!8k8!-{ks`=`qpsX5^<3rI&Ix6T;=^hIbMnt6IQE(5xWe%g1nX3m z-y352RZxfnFm3a~JwQg>5?7s=H{(Gp%rcR2(3{3+wmXsMFIVP2FZ^59Uzm%_2Ze96 zvA_lljY>WCogIXNRj-#_fpt{!|tarurgw=y->180xXl z10R|RZ0kR>%S?!t z-{J(Yden#C+_6yw*yCtB{vEAKZD2r97K3V11IJ1JZlb8j7-dgH3o6)Xw%DY$zN162 zaN?`CL<6W0v2TG81f~fD-<&_?;w;rVM!oiexwE9fwJJ#NI!&bcX*!P%{-ZLuHSdHA*ON~Qqz?+?86pQ;eH%XP0l*kJy65jl|3=&cOa(VYOW+}iaRG4_hxHd8-ZarW;}w!kWU9z(-n(HhKC=Y_~Wgd4e^ee zaetY1aECxfj*fT=C(2kvl5Dd&Yv4OOY*|@UAWqInCqX;GEPhHAwiMo$99w9DJVVD4 z?ZE1%AuHup1afQZlTM{dBBNg}?D&|d)pf-J45k=I{}xYBES4@$ezbNMio~hb0cKCn z*x20N{b{v8(omRB=fK3o(`ub8z(xrl$f}1~>jSrHXl@K4lun@Gk(=#1vGQ;;3U`08^v9r`m4v= zUL$|3(td666m}=1=Ze$Qobdqh_`ohP{DdnNEsgi5l2}pSOiXY1UZHww+=l=AK1TX^ zueYSib=_>KwQjpH=SqftPpBBL`5N4e9z^#-JUK&-yq5zGje#EtK_Q`Xol0D+`=UAc z8y?{&C*Bp)kKNRJN>&ch6L08_E>~`IudkE0`59G^V8TF0$E4u1!=Qm2F<(7X(^8XK z({c$Z_SZ=ztbh@!mJS>oaNhnV=q;VvCX{>H;@sHO^vyL0O|=Y0(Ks|Oq#X0VQjce{ z5~nR}E-|UqtemcM&JvCn5f@+U3w&%(D4P>_K@`ssnzy zESLHqjrSbF`O_0|$0!bi`~A*jn8u~(oenK0v90x4;PUgF!wr7+cY$Rp-0G?n#pi99J98%Be)&@pXH{0$sc2YRjZEQ$ znYDFzTpZrciT~$`WkxtJNa-nzr)GEUQgXv1L%vYmD!28=f}5Y;Tk;6>o#0{(b8E15 zuDuK5v}>koh7!?Y&%Xl#fkql9Q#9mA11jylKaNK>)YW~3%I8{38IHLLe>)4z9AyGl z@;7&B>Nm=z^sfnj*zxO`m_S>c6B(JJU&JRQpuH<~^bL(SW~vRlPG$@jJAKnOHb?;M zSUKdQ#;$hB?UJ3%(ASNPBylL}=!QXFO{(a2`w%;x_Oq)0r&dR>O5`Vsth-)&vrLtesk9q0g^Fxlu0ZC zz{*RMV+SS%;Gn9i>Kp>WfGa~vMy6+AU=tXaV^9r+La};*Ga^d)bT%QAqLh z+!BnaBw%-?YEqWo-YI!Ee@a0d9IG9iuL*yz58*R2!<<}AQA@tTAtr%&9f+xItg zfngfa(miwH~_SE;rw;jP31N_HZFi=dJabjZ(u>~yof)kyxHQ1p2Gb` zwX-!I=E!ade=EX~FC{O0Jw6O&!NpRh#f3H0FA)u&)L%c=DUU|z6*rvVH}4**FSo_? zcEoL@OsK!&-6N!yU~-}}Yp0!dbp2pGAcT+2{*_o@g|7j`pn|5l4=mfMDNR~Q$agbt zGjsC~)zyxAsdCK**1+$(v$az$t*j}E7@x#PYp_C|H!xUi1Ve!^01oxNx7n(#p<}!b z&6Mtmzc7+e@|KnsJAO(hXXlA+A7K%Z;%SE@YkhT2rU7ypVmWGR>fbP_ppiH#p}FPd zk_o$Cmy-6G9&T=5Lmv@f4@8ZQ;?2y?0w4`Q=$bH?^b)}C!!9(w@4=$Awe`bdViXD` z9^5mIgeANrE?0%EAx;ZHEuiQLIR7fcE{`%*NVhTx9f*OAdGxnkmnPEZPh4)*rl7}|X zIQ51gjQ%>x8>5}cf(O62fV1~pmI2mYL_8A9^gA@DQ8UD)vYIcCespV{d@7Tf*vbp? z;Eetj=U5&uQJT}!Q@``y^lG_#KU{nPs+r?#&4e9)n>!LKMKRo?J@zoIZoezyvZ{P% zb>b=V=z%qB0n3YchJNmEy_SLPA=Wzzi6fzxaq^)X#n!-7rxtJCy_paA%!sq^ z6SK4=0fHB-(ABk&0v78|?djtKoht3rVoSl`Jya-I|CB-_niUHYTDsw zHInZ5_bP)ywT`+XjGKDXdy9;eG-m%#3|52n@CH#XYSfnOtq+hq`ClK{@7doi|1L2L zJ6A6+O=v?OK!$==Z{TUgO(>7&t#VeGgRSdm)(&{|xxe2(CjWxHJa+G>`Q>nyZ~0PC z-cFn^t7~`Mtlr>Otk)cq!y(_ob=1%ebL^Sa%N^=Zv6n!olW0y=$oI2#IJS4kgZt(P z2@?l506QzszE2i6ZiX^b*X_-vm41XXLO9;DSS!YQ55U_MdvC+TG!M_eJ9rJc+erDH zR*Mvvwd=X2TDzf8-vzu!<)0!iVq_Kz=qr0Y;sB3)F&uC4;_>i_LIh3!l*HOH&jiM^ zVC<>+S$bK3G_O-Wl7%Zc$(p>dSE2lzYgx9qZeKiodEaLq@z;qd`))U`G+$&7U<{)| z^aQx1-5G&?^{0xp3e~Q~Mlv%q^VjwOuLPiz1H;(xpcp@^PY$AVQ>Et*a}0;6nj^gRi-dE|74*4$FSDCnSiB<_3q1Y z11pn~!Wt_QMK^W*TdHs>{rJL|ZFV`|f7e#4WhEc*zZWm=`HR~4pT=$<*~aDtD^lXJ zR-62F%-OPhk7ixII3;-TGCI-mfN$O~UFH!|OEQWE%TuZz$3k%JH2K{}>x}5E#lVJo zmghAE$Bkc3%(&OLwg6uxRHLE{$MqQGNo=2(Xs!QrOJ}5Eu6Zn2u#)+9DsLGz+j}Em zXgIt1Aqd{U*==$Ifj2}U$wT{E_A!F!Xv6{K6FhLRSL z9O)QBx^w6uhqHax?~U)Af6iI!{PV5#&2lXlGtWG;_x;@a-q&^A_ugCeE|1N}i1z@| zt*uF4Qz4sB^oTMeo*M``oIp%4Loj|K>B8&$g0oq@1=3#qr|g>R zysmy9A*(OqCJ;;d?E&~Kfko|fMAy z{q_GLruW^Gs)JV&%dZ}a-5%7C0nC0>ywm60PGpRIwoNQCvf))(i;~3-dt?LBB>ADK z$`ig#Qd%SltpuxxJD?g7rlX1+j};3(33MLxCc{d@{Vo!>cNUSABIW0{H8vF8{jkPu z_!@)LhIA#P(>`y>q3!{q)L<#OOE!0OfuU)nYKHu z^}VS5UGI$FN5T-r$1-z3_E0S61CP8>Nf2m^rwdj`g0&+w{vjyk}c!C85<`V7)L7~J9?*Z~`nZqT($H#wK zFmg|I)+=0ig>8Dj?pV;+skynv>~Y#NceGc=bLlH`zxQ>&zE!ECz4(c{2Q0@2Y~z#} z|05%t@`NW@{shez@*SJ~{;gYphq_QV>2*SVPuLO|Q+%{U zRFMZE1=YHS9O&65PyH63!1rgKM4gXTTaPVx0a^!<;v>y1K>&;^MJhaiR_oyQJVY6-%-nzM~+W=leOi8Kl0wsDb+6*V=T#=L-*)YJ&MZgnNL3RDW(VHtKH=A?lix5WQC<(XmI+$4f=29Kv~IH?wl@DcyvO4#})yAIf$w?{@IRLfkOBJ4+Z3dJ=cu0(efCT_^`4sl= zr2xtPCrj{`0le=LYF4_bPE2)yod*n?70s@+=wpOZ=G{UIT~+yZv)l2+A`c^6y105L z^da*dMuhGZjn5uK0Fvjzg_i-jW?#GJ0hduul?R>g2KDSP#j`wFYJv|9T~GBcB2E~1 zMctJ7EZ4Ta8cMSGjDLCc03YFeKk;C`>M_oMBc`C8ev0&LCi(YLwK{!p&>jZP9IE15 zIHHeFy$oUE>&pOyETL3uTiXM;QS$)k6c8BzvC@2)2%tKr+Jodr6E5_eC~th>I0S{rkD8XKnvhq zsnv)z_lpv(2g&en-#Gax32wEQpI*QI!xi=QO?fHjFMJ;Fw|4LUYdWUc`(U`2l`+dn zhTjMnDbVrxyxL^+(y$=}q0?C;L?wN}5}4-8CgStt+aVc$GQ}Pny!i{%5PPwS&(0LmdzkJegpm9p zu~cDG@5%Euvx7t3Ju!H9l_E{#1JyH;sBp6fQ#(Y_4AQMI&fS>?rOL@=5C(EBKE6yi zry>dk3_@bS#KwjY;T*0hIGHDd8gquj!sq%@ir+%ehwuS-t?a!4`1P;N30ES_&8&f+l~V>=`jB+1}G`{H+QNK!>h%YgJXyrq25noN_V zlGcPEUgbxBKLB7a$`F*1onO9uc@qHz_E{e?VUNeF){V5SRcc5p^KF@1140xKKP{^t z0>bGemX`hD5w`4)o}LH5=}aZkfppW|*2eq?Iyov z&;D0IQD*`;_gwQ@+S7HMRw*ST{HjN?Qfr%0IR-mbExxJ$=&4oi&^m38Lz@fj%tZ5n z`94a76pbOZAg-iCG}qmgB$)IzS7YF)Id@|dQFXA1Tq z>SPc|UE}AoMmw|-p`XxKDu%OLuJmtEBiH!tO0^mWP5!-gTlQ-M+4UZT5Zcx`pRm?* zE+?c{$Ziu439dJ*kKHRfDZ0dOJ;SEtKh3EG;Qss#0aGi{FIrBeEZ54~KkNCw)d>s4 z3`ldXV(u-SFxcLWVs}6GW`HEM!W8G2)L#On)wVXA6Fz8Jz1J{zMeln)Qou`q zr4pApW4p%k+xKGnnz(f92QPuVMub-JO$@iAbyD;K1KLQWe;wJzD_=Yo0HrJ(`#R`M zm-YSDfXPXS0Ci+z5K!8F%+AsSkr=RX`*onRgXwpoMp7$1H0*y~ z>#w_b(+#~LA)M+l1mcv|zn@IZ$V#j;N3xh&V9&seJ)A`x&9gSxjn@b1h~HL!Fuq{= z9eg-wa}UG#`)iRybLa%U)3iT-%g3oaVhu>$4RfEHAv=tl)$`KL;plecVAItD92(&T zJ4u<}cCsVKSD-4hD*09*n<;Ss#+8q6%P73CT_(V}o%djvC+B<@FI~bt;P{x(6mnaA z#F!F?6W(i8XAS{zc?gLjRUnOH^UJ{>}nNc7Ka>t{pM%R~aogD-){y0BB zN7tJTI&&EbZ(vh$nH;&+*t83%gP~BRThjO~vXth6Wwx)e{Re6cnf3$5`RmuO%t`B2 z=e^K&CKp!}FXa(w2q}y+&_cI-XWvFn{(oLaV#buu%cKb1_tMx%7ia0uQ7ww29uc!? z&li5B1y+{dwzD8S`Nc=A?en2?C1Z_crBC;ci#PqC05H(w!+xW-a>?(G=EiR7>n=Af zXtPoCdZ&8Cz(SD=@eN_R(WJ+^VWBpr76dae6e#6#|AZbkQXk3O%2`pNUF{s3?W>9rKZsV0nf?B`VnWX=_U-D&lLiUfSUzqFlDY99)T-RYUjB`07iab21%P-H{C}jph+oA8B-o^6G@neg4N;om&&a4SA?y z%w$3cx;1lSqrcAuv^d{`kp20|YqYlgJuRpp1yt*;v37E%`0I5dW8owWO67B#D&NyP zZ8L-f40HZ1&J5@iIqVXpFi-LB#dp`0iVTIaSXBrop!1>eV|)mA5)HMP;+rk0iM^Ts z=jGA#IHCX%o}f8ovqH@Ovq|#ji~+%TOW?v7bl{8Z@g<=^=_Of;S^KwNjB3ToIk$?W zWqg+?#H7)rfuVD6PS=%w&ddyDJJEGx%63oUoRZ|#>0D&bIW#}sG}vYq0Q6n#Yc z_e+Dc-OZyfa`uKrVn1AuV95Fr&`QC2E@@&?zfOSY0={T*u8(g zAn=-CX`?`CBvV!iY{r;rpgP%YgpAG)&5yQBsC*{+chgAKsoLGnEqXbyyu}vNV#WV? zKaFC1mGN&&FqaY|`u?s3U{2u++5hKv@}~do31MOHdMP{a{BxJTZvW3+n6n?4 zP(J_ns{&^1!kA5}FiyDdKi_C7nS+zsD%mszEZMQKphh!-{Q%LPEo2MAu!0OMG6ia zHdu&&PP?GZ|7i)&6IDjNq?=t8K>8HEohBBt@AP$;vyVou%fT2zA$-GJZSx#RmJ4cG*aAF9V{{BS$ z&LM}G4Z+fff8QbtvkR$~R zsWo<{e@*A%USDe0gFNIl91+0(5&B!=AE%L*=i!0FQV%?nivDx`|1tGn?(weo>9I77 zbBW?VrV+zQ$zN#^=D51~ucMOEMN32o69no7{_9omZXfW@*4X?nW)))x847}SFi`%r zzral~Va$JTHRQCyvJ}s{F#d1YVonKYH13<4nzF+LS{&YguC17W!?t~!U6Hfb3DFS) zFt8RL|Gyu9zG;tV+~@YMA7mH(-$K{_mw^zU>K7KYRagGhYI^__rcj3b7Wt@d0A_Cz|my+)gPSVs0SeU)T z&f-Ldjje4PFM%!X-;K>q{*m(kK0reZ`K3NG+Y)9A>n9~%L;oLb`^%ypOJ;1oaTVVG znASsu^W{G{OkQ5V?0+@KuVr>dW{<;nDMBaLkR+x@X#&Ov1I5zCXlZr3jG}3S!i(M4 zbGRw_vWVjf6Aty4^y2beze^da)$iA=NZj)kb212pQl2%d#|2#^BPu@3DU1l@TJ&1+ zfgpqT#|Mr=q%uLk9-%eB0nih9p_IZPGa?`og*9Dsm=U=|3DQ+Q{tqNMX+ki&91gtM zi3e2T7*)ssxaTD>I_pU?Kq%x4`PobZl-|BT64(kBjADRjy0*3;LL{Ir*D|N{7e|qJ2K+nUopALpyR6p}A)JAL=%;ZDl%N3CK-+c4_t}$6 z%j(;pxuKUnEdz|`PgEh8(=||t7FsPp$eBFVDFig1@fHa-=AwuX8$&K(yWg67xeZMS zl<^O3Ir{a^m)S!qCBM~qrZMMLz^RH&rPG0Xda@C2u3WUu+4Dd%Na3r8XU#h<4Ffad zoApF+*g-#v6Fz@|_DA7`R@jJ3ua2%Xam&_Nq}UtWtFc)_KP)vov zOGz-e;{wTF&YIUmFqV z6Gz0ex@SG35X~R8iX6@I{cM$L1~KVkj1~uD(IcK0%)uU548uzziX_;SM4`a^pnvIW zOa$$XUSZUwYAV2A7u@MVA5!vfwUdCdl;(Bv?w^(zoxMZKR3AVmv{%NwSWGSDFX7m0oAS$+N?=%!4y6Wxxp;`C7v+tSb6&z1TWkgaBH8+} zhe;lxlfi)6NFkeMt~?>u+!BWwyXlS2`yUTv6cjs&aj-<9;t|)$)HQqy#R;WM%-Ow967i+@c`1jWM~9!_n6vs8eZf+@J2Rk>(1LlRmegieo+5Z~hWgjp>ral4cxmwcpf@ZcOa~RJnxxJnjQu#Z zwrng139veUKitj}{KOy5`;~u?^WLB{qk4=YCSObR_hZVTUG{7a*BFIX|2YFx3a=%9 zdB48DU?p~wCPN9apVNfG@QlLIGW}wcl5+j@on(_=C2gXvg!OvC`5U+BXB4L<12i%i zyb+(-)@=y~olRRYhWf?YLg$z_c9@PmIb8M(PS?v`7>QuD3k*%qw5`_qKJnh5-NZM4 zp(lb>pc%L!64p-QQxLr4Sv%+si<%wp44V1YS~QR?)DpD%`LM8$tM%X^ug$%B3ud*K ztPVl%Cb}}K! - - - React App - - - -
    - - - diff --git a/packages/demo-react/public/manifest.json b/packages/demo-react/public/manifest.json deleted file mode 100644 index 080d6c7..0000000 --- a/packages/demo-react/public/manifest.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - }, - { - "src": "logo192.png", - "type": "image/png", - "sizes": "192x192" - }, - { - "src": "logo512.png", - "type": "image/png", - "sizes": "512x512" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/packages/demo-react/public/robots.txt b/packages/demo-react/public/robots.txt deleted file mode 100644 index e9e57dc..0000000 --- a/packages/demo-react/public/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# https://www.robotstxt.org/robotstxt.html -User-agent: * -Disallow: diff --git a/packages/demo-react/src/.ldo/post.context.ts b/packages/demo-react/src/.ldo/post.context.ts deleted file mode 100644 index dafbe33..0000000 --- a/packages/demo-react/src/.ldo/post.context.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { ContextDefinition } from "jsonld"; - -/** - * ============================================================================= - * postContext: JSONLD Context for post - * ============================================================================= - */ -export const postContext: ContextDefinition = { - type: { - "@id": "@type", - }, - SocialMediaPosting: "http://schema.org/SocialMediaPosting", - CreativeWork: "http://schema.org/CreativeWork", - Thing: "http://schema.org/Thing", - articleBody: { - "@id": "http://schema.org/articleBody", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - uploadDate: { - "@id": "http://schema.org/uploadDate", - "@type": "http://www.w3.org/2001/XMLSchema#date", - }, - image: { - "@id": "http://schema.org/image", - "@type": "@id", - }, - publisher: { - "@id": "http://schema.org/publisher", - "@type": "@id", - }, -}; diff --git a/packages/demo-react/src/.ldo/post.schema.ts b/packages/demo-react/src/.ldo/post.schema.ts deleted file mode 100644 index 39e8b63..0000000 --- a/packages/demo-react/src/.ldo/post.schema.ts +++ /dev/null @@ -1,155 +0,0 @@ -import { Schema } from "shexj"; - -/** - * ============================================================================= - * postSchema: ShexJ Schema for post - * ============================================================================= - */ -export const postSchema: Schema = { - type: "Schema", - shapes: [ - { - id: "https://example.com/PostSh", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", - valueExpr: { - type: "NodeConstraint", - values: [ - "http://schema.org/SocialMediaPosting", - "http://schema.org/CreativeWork", - "http://schema.org/Thing", - ], - }, - }, - { - type: "TripleConstraint", - predicate: "http://schema.org/articleBody", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#label", - object: { - value: "articleBody", - }, - }, - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The actual body of the article. ", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://schema.org/uploadDate", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#date", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#label", - object: { - value: "uploadDate", - }, - }, - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "Date when this media object was uploaded to this site.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://schema.org/image", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#label", - object: { - value: "image", - }, - }, - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A media object that encodes this CreativeWork. This property is a synonym for encoding.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://schema.org/publisher", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#label", - object: { - value: "publisher", - }, - }, - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The publisher of the creative work.", - }, - }, - ], - }, - ], - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#label", - object: { - value: "SocialMediaPost", - }, - }, - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A post to a social media platform, including blog posts, tweets, Facebook posts, etc.", - }, - }, - ], - }, - }, - ], -}; diff --git a/packages/demo-react/src/.ldo/post.shapeTypes.ts b/packages/demo-react/src/.ldo/post.shapeTypes.ts deleted file mode 100644 index 4c50683..0000000 --- a/packages/demo-react/src/.ldo/post.shapeTypes.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { ShapeType } from "@ldo/ldo"; -import { postSchema } from "./post.schema"; -import { postContext } from "./post.context"; -import { PostSh } from "./post.typings"; - -/** - * ============================================================================= - * LDO ShapeTypes post - * ============================================================================= - */ - -/** - * PostSh ShapeType - */ -export const PostShShapeType: ShapeType = { - schema: postSchema, - shape: "https://example.com/PostSh", - context: postContext, -}; diff --git a/packages/demo-react/src/.ldo/post.typings.ts b/packages/demo-react/src/.ldo/post.typings.ts deleted file mode 100644 index 9ebaf71..0000000 --- a/packages/demo-react/src/.ldo/post.typings.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ContextDefinition } from "jsonld"; - -/** - * ============================================================================= - * Typescript Typings for post - * ============================================================================= - */ - -/** - * PostSh Type - */ -export interface PostSh { - "@id"?: string; - "@context"?: ContextDefinition; - type: - | { - "@id": "SocialMediaPosting"; - } - | { - "@id": "CreativeWork"; - } - | { - "@id": "Thing"; - }; - /** - * The actual body of the article. - */ - articleBody?: string; - /** - * Date when this media object was uploaded to this site. - */ - uploadDate: string; - /** - * A media object that encodes this CreativeWork. This property is a synonym for encoding. - */ - image?: { - "@id": string; - }; - /** - * The publisher of the creative work. - */ - publisher: { - "@id": string; - }; -} diff --git a/packages/demo-react/src/.ldo/solidProfile.context.ts b/packages/demo-react/src/.ldo/solidProfile.context.ts deleted file mode 100644 index 82a8edf..0000000 --- a/packages/demo-react/src/.ldo/solidProfile.context.ts +++ /dev/null @@ -1,154 +0,0 @@ -import { ContextDefinition } from "jsonld"; - -/** - * ============================================================================= - * solidProfileContext: JSONLD Context for solidProfile - * ============================================================================= - */ -export const solidProfileContext: ContextDefinition = { - type: { - "@id": "@type", - }, - Person: "http://schema.org/Person", - Person2: "http://xmlns.com/foaf/0.1/Person", - fn: { - "@id": "http://www.w3.org/2006/vcard/ns#fn", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - name: { - "@id": "http://xmlns.com/foaf/0.1/name", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - hasAddress: { - "@id": "http://www.w3.org/2006/vcard/ns#hasAddress", - "@type": "@id", - "@container": "@set", - }, - countryName: { - "@id": "http://www.w3.org/2006/vcard/ns#country-name", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - locality: { - "@id": "http://www.w3.org/2006/vcard/ns#locality", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - postalCode: { - "@id": "http://www.w3.org/2006/vcard/ns#postal-code", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - region: { - "@id": "http://www.w3.org/2006/vcard/ns#region", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - streetAddress: { - "@id": "http://www.w3.org/2006/vcard/ns#street-address", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - hasEmail: { - "@id": "http://www.w3.org/2006/vcard/ns#hasEmail", - "@type": "@id", - "@container": "@set", - }, - Dom: "http://www.w3.org/2006/vcard/ns#Dom", - Home: "http://www.w3.org/2006/vcard/ns#Home", - ISDN: "http://www.w3.org/2006/vcard/ns#ISDN", - Internet: "http://www.w3.org/2006/vcard/ns#Internet", - Intl: "http://www.w3.org/2006/vcard/ns#Intl", - Label: "http://www.w3.org/2006/vcard/ns#Label", - Parcel: "http://www.w3.org/2006/vcard/ns#Parcel", - Postal: "http://www.w3.org/2006/vcard/ns#Postal", - Pref: "http://www.w3.org/2006/vcard/ns#Pref", - Work: "http://www.w3.org/2006/vcard/ns#Work", - X400: "http://www.w3.org/2006/vcard/ns#X400", - value: { - "@id": "http://www.w3.org/2006/vcard/ns#value", - "@type": "@id", - }, - hasPhoto: { - "@id": "http://www.w3.org/2006/vcard/ns#hasPhoto", - "@type": "@id", - }, - img: { - "@id": "http://xmlns.com/foaf/0.1/img", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - hasTelephone: { - "@id": "http://www.w3.org/2006/vcard/ns#hasTelephone", - "@type": "@id", - "@container": "@set", - }, - phone: { - "@id": "http://www.w3.org/2006/vcard/ns#phone", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - organizationName: { - "@id": "http://www.w3.org/2006/vcard/ns#organization-name", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - role: { - "@id": "http://www.w3.org/2006/vcard/ns#role", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - trustedApp: { - "@id": "http://www.w3.org/ns/auth/acl#trustedApp", - "@type": "@id", - "@container": "@set", - }, - mode: { - "@id": "http://www.w3.org/ns/auth/acl#mode", - "@container": "@set", - }, - Append: "http://www.w3.org/ns/auth/acl#Append", - Control: "http://www.w3.org/ns/auth/acl#Control", - Read: "http://www.w3.org/ns/auth/acl#Read", - Write: "http://www.w3.org/ns/auth/acl#Write", - origin: { - "@id": "http://www.w3.org/ns/auth/acl#origin", - "@type": "@id", - }, - key: { - "@id": "http://www.w3.org/ns/auth/cert#key", - "@type": "@id", - "@container": "@set", - }, - modulus: { - "@id": "http://www.w3.org/ns/auth/cert#modulus", - "@type": "http://www.w3.org/2001/XMLSchema#string", - }, - exponent: { - "@id": "http://www.w3.org/ns/auth/cert#exponent", - "@type": "http://www.w3.org/2001/XMLSchema#integer", - }, - inbox: { - "@id": "http://www.w3.org/ns/ldp#inbox", - "@type": "@id", - }, - preferencesFile: { - "@id": "http://www.w3.org/ns/pim/space#preferencesFile", - "@type": "@id", - }, - storage: { - "@id": "http://www.w3.org/ns/pim/space#storage", - "@type": "@id", - "@container": "@set", - }, - account: { - "@id": "http://www.w3.org/ns/solid/terms#account", - "@type": "@id", - }, - privateTypeIndex: { - "@id": "http://www.w3.org/ns/solid/terms#privateTypeIndex", - "@type": "@id", - "@container": "@set", - }, - publicTypeIndex: { - "@id": "http://www.w3.org/ns/solid/terms#publicTypeIndex", - "@type": "@id", - "@container": "@set", - }, - knows: { - "@id": "http://xmlns.com/foaf/0.1/knows", - "@type": "@id", - "@container": "@set", - }, -}; diff --git a/packages/demo-react/src/.ldo/solidProfile.schema.ts b/packages/demo-react/src/.ldo/solidProfile.schema.ts deleted file mode 100644 index 69466fc..0000000 --- a/packages/demo-react/src/.ldo/solidProfile.schema.ts +++ /dev/null @@ -1,749 +0,0 @@ -import { Schema } from "shexj"; - -/** - * ============================================================================= - * solidProfileSchema: ShexJ Schema for solidProfile - * ============================================================================= - */ -export const solidProfileSchema: Schema = { - type: "Schema", - shapes: [ - { - id: "https://shaperepo.com/schemas/solidProfile#SolidProfileShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", - valueExpr: { - type: "NodeConstraint", - values: ["http://schema.org/Person"], - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "Defines the node as a Person (from Schema.org)", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", - valueExpr: { - type: "NodeConstraint", - values: ["http://xmlns.com/foaf/0.1/Person"], - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "Defines the node as a Person (from foaf)", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#fn", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The formatted name of a person. Example: John Smith", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://xmlns.com/foaf/0.1/name", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "An alternate way to define a person's name.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#hasAddress", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#AddressShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The person's street address.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#hasEmail", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#EmailShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The person's email.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#hasPhoto", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "A link to the person's photo", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://xmlns.com/foaf/0.1/img", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "Photo link but in string form", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#hasTelephone", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#PhoneNumberShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "Person's telephone number", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#phone", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "An alternative way to define a person's telephone number using a string", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#organization-name", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The name of the organization with which the person is affiliated", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#role", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The name of the person's role in their organization", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/acl#trustedApp", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#TrustedAppShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A list of app origins that are trusted by this user", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/cert#key", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#RSAPublicKeyShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A list of RSA public keys that are associated with private keys the user holds.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/ldp#inbox", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The user's LDP inbox to which apps can post notifications", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/pim/space#preferencesFile", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The user's preferences", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/pim/space#storage", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The location of a Solid storage server related to this WebId", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/solid/terms#account", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The user's account", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/solid/terms#privateTypeIndex", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A registry of all types used on the user's Pod (for private access only)", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/solid/terms#publicTypeIndex", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A registry of all types used on the user's Pod (for public access)", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://xmlns.com/foaf/0.1/knows", - valueExpr: - "https://shaperepo.com/schemas/solidProfile#SolidProfileShape", - min: 0, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "A list of WebIds for all the people this user knows.", - }, - }, - ], - }, - ], - }, - extra: ["http://www.w3.org/1999/02/22-rdf-syntax-ns#type"], - }, - }, - { - id: "https://shaperepo.com/schemas/solidProfile#AddressShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#country-name", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The name of the user's country of residence", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#locality", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The name of the user's locality (City, Town etc.) of residence", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#postal-code", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The user's postal code", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#region", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The name of the user's region (State, Province etc.) of residence", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#street-address", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The user's street address", - }, - }, - ], - }, - ], - }, - }, - }, - { - id: "https://shaperepo.com/schemas/solidProfile#EmailShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", - valueExpr: { - type: "NodeConstraint", - values: [ - "http://www.w3.org/2006/vcard/ns#Dom", - "http://www.w3.org/2006/vcard/ns#Home", - "http://www.w3.org/2006/vcard/ns#ISDN", - "http://www.w3.org/2006/vcard/ns#Internet", - "http://www.w3.org/2006/vcard/ns#Intl", - "http://www.w3.org/2006/vcard/ns#Label", - "http://www.w3.org/2006/vcard/ns#Parcel", - "http://www.w3.org/2006/vcard/ns#Postal", - "http://www.w3.org/2006/vcard/ns#Pref", - "http://www.w3.org/2006/vcard/ns#Work", - "http://www.w3.org/2006/vcard/ns#X400", - ], - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The type of email.", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#value", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The value of an email as a mailto link (Example )", - }, - }, - ], - }, - ], - }, - extra: ["http://www.w3.org/1999/02/22-rdf-syntax-ns#type"], - }, - }, - { - id: "https://shaperepo.com/schemas/solidProfile#PhoneNumberShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", - valueExpr: { - type: "NodeConstraint", - values: [ - "http://www.w3.org/2006/vcard/ns#Dom", - "http://www.w3.org/2006/vcard/ns#Home", - "http://www.w3.org/2006/vcard/ns#ISDN", - "http://www.w3.org/2006/vcard/ns#Internet", - "http://www.w3.org/2006/vcard/ns#Intl", - "http://www.w3.org/2006/vcard/ns#Label", - "http://www.w3.org/2006/vcard/ns#Parcel", - "http://www.w3.org/2006/vcard/ns#Postal", - "http://www.w3.org/2006/vcard/ns#Pref", - "http://www.w3.org/2006/vcard/ns#Work", - "http://www.w3.org/2006/vcard/ns#X400", - ], - }, - min: 0, - max: 1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "They type of Phone Number", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/2006/vcard/ns#value", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: - "The value of a phone number as a tel link (Example )", - }, - }, - ], - }, - ], - }, - extra: ["http://www.w3.org/1999/02/22-rdf-syntax-ns#type"], - }, - }, - { - id: "https://shaperepo.com/schemas/solidProfile#TrustedAppShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/acl#mode", - valueExpr: { - type: "NodeConstraint", - values: [ - "http://www.w3.org/ns/auth/acl#Append", - "http://www.w3.org/ns/auth/acl#Control", - "http://www.w3.org/ns/auth/acl#Read", - "http://www.w3.org/ns/auth/acl#Write", - ], - }, - min: 1, - max: -1, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The level of access provided to this origin", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/acl#origin", - valueExpr: { - type: "NodeConstraint", - nodeKind: "iri", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "The app origin the user trusts", - }, - }, - ], - }, - ], - }, - }, - }, - { - id: "https://shaperepo.com/schemas/solidProfile#RSAPublicKeyShape", - type: "ShapeDecl", - shapeExpr: { - type: "Shape", - expression: { - type: "EachOf", - expressions: [ - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/cert#modulus", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#string", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "RSA Modulus", - }, - }, - ], - }, - { - type: "TripleConstraint", - predicate: "http://www.w3.org/ns/auth/cert#exponent", - valueExpr: { - type: "NodeConstraint", - datatype: "http://www.w3.org/2001/XMLSchema#integer", - }, - annotations: [ - { - type: "Annotation", - predicate: "http://www.w3.org/2000/01/rdf-schema#comment", - object: { - value: "RSA Exponent", - }, - }, - ], - }, - ], - }, - }, - }, - ], -}; diff --git a/packages/demo-react/src/.ldo/solidProfile.shapeTypes.ts b/packages/demo-react/src/.ldo/solidProfile.shapeTypes.ts deleted file mode 100644 index 71426e4..0000000 --- a/packages/demo-react/src/.ldo/solidProfile.shapeTypes.ts +++ /dev/null @@ -1,71 +0,0 @@ -import { ShapeType } from "@ldo/ldo"; -import { solidProfileSchema } from "./solidProfile.schema"; -import { solidProfileContext } from "./solidProfile.context"; -import { - SolidProfileShape, - AddressShape, - EmailShape, - PhoneNumberShape, - TrustedAppShape, - RSAPublicKeyShape, -} from "./solidProfile.typings"; - -/** - * ============================================================================= - * LDO ShapeTypes solidProfile - * ============================================================================= - */ - -/** - * SolidProfileShape ShapeType - */ -export const SolidProfileShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#SolidProfileShape", - context: solidProfileContext, -}; - -/** - * AddressShape ShapeType - */ -export const AddressShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#AddressShape", - context: solidProfileContext, -}; - -/** - * EmailShape ShapeType - */ -export const EmailShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#EmailShape", - context: solidProfileContext, -}; - -/** - * PhoneNumberShape ShapeType - */ -export const PhoneNumberShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#PhoneNumberShape", - context: solidProfileContext, -}; - -/** - * TrustedAppShape ShapeType - */ -export const TrustedAppShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#TrustedAppShape", - context: solidProfileContext, -}; - -/** - * RSAPublicKeyShape ShapeType - */ -export const RSAPublicKeyShapeShapeType: ShapeType = { - schema: solidProfileSchema, - shape: "https://shaperepo.com/schemas/solidProfile#RSAPublicKeyShape", - context: solidProfileContext, -}; diff --git a/packages/demo-react/src/.ldo/solidProfile.typings.ts b/packages/demo-react/src/.ldo/solidProfile.typings.ts deleted file mode 100644 index 535111b..0000000 --- a/packages/demo-react/src/.ldo/solidProfile.typings.ts +++ /dev/null @@ -1,293 +0,0 @@ -import { ContextDefinition } from "jsonld"; - -/** - * ============================================================================= - * Typescript Typings for solidProfile - * ============================================================================= - */ - -/** - * SolidProfileShape Type - */ -export interface SolidProfileShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * Defines the node as a Person (from Schema.org) | Defines the node as a Person (from foaf) - */ - type: ( - | { - "@id": "Person"; - } - | { - "@id": "Person2"; - } - )[]; - /** - * The formatted name of a person. Example: John Smith - */ - fn?: string; - /** - * An alternate way to define a person's name. - */ - name?: string; - /** - * The person's street address. - */ - hasAddress?: AddressShape[]; - /** - * The person's email. - */ - hasEmail?: EmailShape[]; - /** - * A link to the person's photo - */ - hasPhoto?: { - "@id": string; - }; - /** - * Photo link but in string form - */ - img?: string; - /** - * Person's telephone number - */ - hasTelephone?: PhoneNumberShape[]; - /** - * An alternative way to define a person's telephone number using a string - */ - phone?: string; - /** - * The name of the organization with which the person is affiliated - */ - organizationName?: string; - /** - * The name of the person's role in their organization - */ - role?: string; - /** - * A list of app origins that are trusted by this user - */ - trustedApp?: TrustedAppShape[]; - /** - * A list of RSA public keys that are associated with private keys the user holds. - */ - key?: RSAPublicKeyShape[]; - /** - * The user's LDP inbox to which apps can post notifications - */ - inbox: { - "@id": string; - }; - /** - * The user's preferences - */ - preferencesFile?: { - "@id": string; - }; - /** - * The location of a Solid storage server related to this WebId - */ - storage?: { - "@id": string; - }[]; - /** - * The user's account - */ - account?: { - "@id": string; - }; - /** - * A registry of all types used on the user's Pod (for private access only) - */ - privateTypeIndex?: { - "@id": string; - }[]; - /** - * A registry of all types used on the user's Pod (for public access) - */ - publicTypeIndex?: { - "@id": string; - }[]; - /** - * A list of WebIds for all the people this user knows. - */ - knows?: SolidProfileShape[]; -} - -/** - * AddressShape Type - */ -export interface AddressShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * The name of the user's country of residence - */ - countryName?: string; - /** - * The name of the user's locality (City, Town etc.) of residence - */ - locality?: string; - /** - * The user's postal code - */ - postalCode?: string; - /** - * The name of the user's region (State, Province etc.) of residence - */ - region?: string; - /** - * The user's street address - */ - streetAddress?: string; -} - -/** - * EmailShape Type - */ -export interface EmailShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * The type of email. - */ - type?: - | { - "@id": "Dom"; - } - | { - "@id": "Home"; - } - | { - "@id": "ISDN"; - } - | { - "@id": "Internet"; - } - | { - "@id": "Intl"; - } - | { - "@id": "Label"; - } - | { - "@id": "Parcel"; - } - | { - "@id": "Postal"; - } - | { - "@id": "Pref"; - } - | { - "@id": "Work"; - } - | { - "@id": "X400"; - }; - /** - * The value of an email as a mailto link (Example ) - */ - value: { - "@id": string; - }; -} - -/** - * PhoneNumberShape Type - */ -export interface PhoneNumberShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * They type of Phone Number - */ - type?: - | { - "@id": "Dom"; - } - | { - "@id": "Home"; - } - | { - "@id": "ISDN"; - } - | { - "@id": "Internet"; - } - | { - "@id": "Intl"; - } - | { - "@id": "Label"; - } - | { - "@id": "Parcel"; - } - | { - "@id": "Postal"; - } - | { - "@id": "Pref"; - } - | { - "@id": "Work"; - } - | { - "@id": "X400"; - }; - /** - * The value of a phone number as a tel link (Example ) - */ - value: { - "@id": string; - }; -} - -/** - * TrustedAppShape Type - */ -export interface TrustedAppShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * The level of access provided to this origin - */ - mode: ( - | { - "@id": "Append"; - } - | { - "@id": "Control"; - } - | { - "@id": "Read"; - } - | { - "@id": "Write"; - } - )[]; - /** - * The app origin the user trusts - */ - origin: { - "@id": string; - }; -} - -/** - * RSAPublicKeyShape Type - */ -export interface RSAPublicKeyShape { - "@id"?: string; - "@context"?: ContextDefinition; - /** - * RSA Modulus - */ - modulus: string; - /** - * RSA Exponent - */ - exponent: number; -} diff --git a/packages/demo-react/src/.shapes/post.shex b/packages/demo-react/src/.shapes/post.shex deleted file mode 100644 index ae75425..0000000 --- a/packages/demo-react/src/.shapes/post.shex +++ /dev/null @@ -1,23 +0,0 @@ -PREFIX rdf: -PREFIX rdfs: -PREFIX xsd: -PREFIX ex: -BASE - -ex:PostSh { - a [ ] ; - xsd:string? - // rdfs:label '''articleBody''' - // rdfs:comment '''The actual body of the article. ''' ; - xsd:date - // rdfs:label '''uploadDate''' - // rdfs:comment '''Date when this media object was uploaded to this site.''' ; - IRI ? - // rdfs:label '''image''' - // rdfs:comment '''A media object that encodes this CreativeWork. This property is a synonym for encoding.''' ; - IRI - // rdfs:label '''publisher''' - // rdfs:comment '''The publisher of the creative work.''' ; -} -// rdfs:label '''SocialMediaPost''' -// rdfs:comment '''A post to a social media platform, including blog posts, tweets, Facebook posts, etc.''' diff --git a/packages/demo-react/src/.shapes/solidProfile.shex b/packages/demo-react/src/.shapes/solidProfile.shex deleted file mode 100644 index cbc068c..0000000 --- a/packages/demo-react/src/.shapes/solidProfile.shex +++ /dev/null @@ -1,121 +0,0 @@ -PREFIX srs: -PREFIX foaf: -PREFIX rdfs: -PREFIX schem: -PREFIX vcard: -PREFIX xsd: -PREFIX acl: -PREFIX cert: -PREFIX ldp: -PREFIX sp: -PREFIX solid: - -srs:SolidProfileShape EXTRA a { - a [ schem:Person ] - // rdfs:comment "Defines the node as a Person (from Schema.org)" ; - a [ foaf:Person ] - // rdfs:comment "Defines the node as a Person (from foaf)" ; - vcard:fn xsd:string ? - // rdfs:comment "The formatted name of a person. Example: John Smith" ; - foaf:name xsd:string ? - // rdfs:comment "An alternate way to define a person's name." ; - vcard:hasAddress @srs:AddressShape * - // rdfs:comment "The person's street address." ; - vcard:hasEmail @srs:EmailShape * - // rdfs:comment "The person's email." ; - vcard:hasPhoto IRI ? - // rdfs:comment "A link to the person's photo" ; - foaf:img xsd:string ? - // rdfs:comment "Photo link but in string form" ; - vcard:hasTelephone @srs:PhoneNumberShape * - // rdfs:comment "Person's telephone number" ; - vcard:phone xsd:string ? - // rdfs:comment "An alternative way to define a person's telephone number using a string" ; - vcard:organization-name xsd:string ? - // rdfs:comment "The name of the organization with which the person is affiliated" ; - vcard:role xsd:string ? - // rdfs:comment "The name of the person's role in their organization" ; - acl:trustedApp @srs:TrustedAppShape * - // rdfs:comment "A list of app origins that are trusted by this user" ; - cert:key @srs:RSAPublicKeyShape * - // rdfs:comment "A list of RSA public keys that are associated with private keys the user holds." ; - ldp:inbox IRI - // rdfs:comment "The user's LDP inbox to which apps can post notifications" ; - sp:preferencesFile IRI ? - // rdfs:comment "The user's preferences" ; - sp:storage IRI * - // rdfs:comment "The location of a Solid storage server related to this WebId" ; - solid:account IRI ? - // rdfs:comment "The user's account" ; - solid:privateTypeIndex IRI * - // rdfs:comment "A registry of all types used on the user's Pod (for private access only)" ; - solid:publicTypeIndex IRI * - // rdfs:comment "A registry of all types used on the user's Pod (for public access)" ; - foaf:knows @srs:SolidProfileShape * - // rdfs:comment "A list of WebIds for all the people this user knows." ; -} - -srs:AddressShape { - vcard:country-name xsd:string ? - // rdfs:comment "The name of the user's country of residence" ; - vcard:locality xsd:string ? - // rdfs:comment "The name of the user's locality (City, Town etc.) of residence" ; - vcard:postal-code xsd:string ? - // rdfs:comment "The user's postal code" ; - vcard:region xsd:string ? - // rdfs:comment "The name of the user's region (State, Province etc.) of residence" ; - vcard:street-address xsd:string ? - // rdfs:comment "The user's street address" ; -} - -srs:EmailShape EXTRA a { - a [ - vcard:Dom - vcard:Home - vcard:ISDN - vcard:Internet - vcard:Intl - vcard:Label - vcard:Parcel - vcard:Postal - vcard:Pref - vcard:Work - vcard:X400 - ] ? - // rdfs:comment "The type of email." ; - vcard:value IRI - // rdfs:comment "The value of an email as a mailto link (Example )" ; -} - -srs:PhoneNumberShape EXTRA a { - a [ - vcard:Dom - vcard:Home - vcard:ISDN - vcard:Internet - vcard:Intl - vcard:Label - vcard:Parcel - vcard:Postal - vcard:Pref - vcard:Work - vcard:X400 - ] ? - // rdfs:comment "They type of Phone Number" ; - vcard:value IRI - // rdfs:comment "The value of a phone number as a tel link (Example )" ; -} - -srs:TrustedAppShape { - acl:mode [acl:Append acl:Control acl:Read acl:Write] + - // rdfs:comment "The level of access provided to this origin" ; - acl:origin IRI - // rdfs:comment "The app origin the user trusts" -} - -srs:RSAPublicKeyShape { - cert:modulus xsd:string - // rdfs:comment "RSA Modulus" ; - cert:exponent xsd:integer - // rdfs:comment "RSA Exponent" ; -} \ No newline at end of file diff --git a/packages/demo-react/src/App-old.tsx b/packages/demo-react/src/App-old.tsx deleted file mode 100644 index 721b93e..0000000 --- a/packages/demo-react/src/App-old.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import type { FunctionComponent } from "react"; -import React from "react"; -import { Router } from "./Layout"; -import { BrowserSolidLdoProvider } from "@ldo/solid-react"; - -const ProfileApp: FunctionComponent = () => { - return ( - - - - ); -}; -export default ProfileApp; diff --git a/packages/demo-react/src/App.tsx b/packages/demo-react/src/App.tsx deleted file mode 100644 index 4d00635..0000000 --- a/packages/demo-react/src/App.tsx +++ /dev/null @@ -1,65 +0,0 @@ -import type { FunctionComponent } from "react"; -import React, { useCallback } from "react"; -import { - BrowserSolidLdoProvider, - useResource, - useSolidAuth, - useSubject, -} from "@ldo/solid-react"; -import { SolidProfileShapeShapeType } from "./.ldo/solidProfile.shapeTypes"; -import { changeData, commitData } from "@ldo/solid"; - -// The base component for the app -const App: FunctionComponent = () => { - return ( - /* The application should be surrounded with the BrowserSolidLdoProvider - this will set up all the underlying infrastructure for the application */ - - - - ); -}; - -// A component that handles login -const Login: FunctionComponent = () => { - // Get login information using the "useSolidAuth" hook - const { login, logout, session } = useSolidAuth(); - - const onLogin = useCallback(() => { - const issuer = prompt("What is your Solid IDP?"); - // Call the "login" function to initiate login - if (issuer) login(issuer); - }, []); - - // You can use session.isLoggedIn to check if the user is logged in - if (session.isLoggedIn) { - return ( -
    - {/* Get the user's webId from session.webId */} -

    Logged in as {session.webId}

    - {/* Use the logout function to log out */} - - -
    - ); - } - return ; -}; - -const Profile: FunctionComponent = () => { - const { session } = useSolidAuth(); - const resource = useResource(session.webId); - const profile = useSubject(SolidProfileShapeShapeType, session.webId); - - const onNameChange = useCallback(async (e) => { - // Ensure that the - if (!profile || !resource) return; - const cProfile = changeData(profile, resource); - cProfile.name = e.target.value; - await commitData(cProfile); - }, []); - - return ; -}; - -export default App; diff --git a/packages/demo-react/src/Header.tsx b/packages/demo-react/src/Header.tsx deleted file mode 100644 index 49f751d..0000000 --- a/packages/demo-react/src/Header.tsx +++ /dev/null @@ -1,54 +0,0 @@ -import { useState } from "react"; -import type { FunctionComponent } from "react"; -import React from "react"; -import { useResource, useSolidAuth, useSubject } from "@ldo/solid-react"; -import { SolidProfileShapeShapeType } from "./.ldo/solidProfile.shapeTypes"; -import { Link } from "react-router-dom"; - -const DEFAULT_ISSUER = "https://solidweb.me"; - -export const LoggedInHeader: FunctionComponent<{ webId: string }> = ({ - webId, -}) => { - const webIdResource = useResource(webId); - const profile = useSubject(SolidProfileShapeShapeType, webId); - const { logout } = useSolidAuth(); - return ( - <> - - Logged in as {webId}. Welcome{" "} - {webIdResource.isReading() ? "LOADING NAME" : profile.fn} - - - - ); -}; - -export const Header: FunctionComponent = () => { - const [issuer, setIssuer] = useState(DEFAULT_ISSUER); - const { login, signUp, session } = useSolidAuth(); - return ( -
    -
    - {session.isLoggedIn ? ( - - ) : ( - <> - setIssuer(e.target.value)} - /> - - - - )} -
    -

    - Blog - {" "} - Profile -

    -
    - ); -}; diff --git a/packages/demo-react/src/Layout.tsx b/packages/demo-react/src/Layout.tsx deleted file mode 100644 index 0521d3f..0000000 --- a/packages/demo-react/src/Layout.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { useSolidAuth } from "@ldo/solid-react"; -import React, { Fragment } from "react"; -import type { FunctionComponent } from "react"; -import { createBrowserRouter, Outlet, RouterProvider } from "react-router-dom"; -import { Blog } from "./blog/Blog"; -import { PostPage } from "./post/PostPage"; -import { Header } from "./Header"; -import { MainContainerProvider } from "./MainContainerProvider"; -import { Profile } from "./profile/Profile"; - -export const Layout: FunctionComponent = () => { - const { session } = useSolidAuth(); - return ( -
    -
    -
    - - {session.isLoggedIn ? : } - -
    - ); -}; - -const router = createBrowserRouter([ - { - element: , - children: [ - { - path: "/", - element: , - }, - { - path: "/media/:uri", - element: , - }, - { - path: "/profile", - element: , - }, - ], - }, -]); - -export const Router: FunctionComponent = () => { - const { ranInitialAuthCheck } = useSolidAuth(); - if (!ranInitialAuthCheck) { - return

    Loading

    ; - } - return ; -}; diff --git a/packages/demo-react/src/MainContainerProvider.tsx b/packages/demo-react/src/MainContainerProvider.tsx deleted file mode 100644 index 5ebe2bf..0000000 --- a/packages/demo-react/src/MainContainerProvider.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import React, { useState, useEffect, createContext } from "react"; -import type { FunctionComponent, PropsWithChildren } from "react"; -import type { Container, LeafUri } from "@ldo/solid"; -import { useSolidAuth, useLdo, useResource } from "@ldo/solid-react"; - -export const MainContainerContext = createContext( - undefined, -); - -const MainContainerSubProvider: FunctionComponent< - PropsWithChildren<{ uri?: string }> -> = ({ uri, children }) => { - const mainContainer = useResource(uri); - return ( - - {children} - - ); -}; - -export const MainContainerProvider: FunctionComponent = ({ - children, -}) => { - const [mainContainer, setMainContainer] = useState(); - const { session } = useSolidAuth(); - const { getResource } = useLdo(); - - useEffect(() => { - if (session.webId) { - const webIdResource = getResource(session.webId as LeafUri); - webIdResource.getRootContainer().then(async (rootContainer) => { - if (rootContainer.isError) { - alert(rootContainer.message); - return; - } - const mainContainer = getResource(`${rootContainer.uri}demo-react/`); - setMainContainer(mainContainer); - const createResult = await mainContainer.createIfAbsent(); - // Only set the access rules if the create was a success. - if (createResult.type === "createSuccess") { - await mainContainer.setWac({ - public: { - read: true, - write: false, - append: false, - control: false, - }, - authenticated: { - read: true, - write: false, - append: false, - control: false, - }, - agent: { - [session.webId!]: { - read: true, - write: true, - append: true, - control: true, - }, - }, - }); - } - }); - } - }, [session.webId]); - - return ( - - {children} - - ); -}; diff --git a/packages/demo-react/src/blog/Blog.tsx b/packages/demo-react/src/blog/Blog.tsx deleted file mode 100644 index d9f1009..0000000 --- a/packages/demo-react/src/blog/Blog.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import React, { Fragment, useContext } from "react"; -import type { FunctionComponent } from "react"; -import { MainContainerContext } from "../MainContainerProvider"; -import { Post } from "../post/Post"; -import { MakePost } from "./MakePost"; - -export const Blog: FunctionComponent = () => { - const mainContainer = useContext(MainContainerContext); - if (mainContainer === undefined) { - return

    Loading...

    ; - } - if (mainContainer.isDoingInitialFetch()) { - return

    Loading Blob

    ; - } - - return ( -
    -
    - -
    -
    - {mainContainer.children().map((child) => ( - - -
    -
    - ))} -
    - ); -}; diff --git a/packages/demo-react/src/blog/MakePost.tsx b/packages/demo-react/src/blog/MakePost.tsx deleted file mode 100644 index f782b95..0000000 --- a/packages/demo-react/src/blog/MakePost.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import React, { useCallback, useState, useRef } from "react"; -import type { FunctionComponent, FormEvent } from "react"; -import type { Container, Leaf, LeafUri } from "@ldo/solid"; -import { v4 } from "uuid"; -import { useLdo, useSolidAuth } from "@ldo/solid-react"; -import { PostShShapeType } from "../.ldo/post.shapeTypes"; - -export const MakePost: FunctionComponent<{ mainContainer: Container }> = ({ - mainContainer, -}) => { - const [message, setMessage] = useState(""); - const [selectedFile, setSelectedFile] = useState(); - const fileInputRef = useRef(null); - const { createData, commitData } = useLdo(); - const { session } = useSolidAuth(); - const onSubmit = useCallback( - async (e: FormEvent) => { - e.preventDefault(); - - // Create the container file - const mediaContainerResult = await mainContainer.createChildAndOverwrite( - `${v4()}/`, - ); - if (mediaContainerResult.isError) { - alert(mediaContainerResult.message); - return; - } - const mediaContainer = mediaContainerResult.resource; - - // Upload Image - let uploadedImage: Leaf | undefined; - if (selectedFile) { - const result = await mediaContainer.uploadChildAndOverwrite( - selectedFile.name as LeafUri, - selectedFile, - selectedFile.type, - ); - if (result.isError) { - alert(result.message); - await mediaContainer.delete(); - return; - } - uploadedImage = result.resource; - } - - // Create Post - const indexResource = mediaContainer.child("index.ttl"); - const post = createData( - PostShShapeType, - indexResource.uri, - indexResource, - ); - post.articleBody = message; - if (uploadedImage) { - post.image = { "@id": uploadedImage.uri }; - } - if (session.webId) { - post.publisher = { "@id": session.webId }; - } - post.type = { "@id": "SocialMediaPosting" }; - post.uploadDate = new Date().toISOString(); - const result = await commitData(post); - if (result.isError) { - alert(result.message); - } - - // Clear the UI after Upload - setMessage(""); - setSelectedFile(undefined); - if (fileInputRef.current) fileInputRef.current.value = ""; - }, - [message, selectedFile, session.webId], - ); - - return ( -
    - setMessage(e.target.value)} - /> - setSelectedFile(e.target.files?.[0])} - /> - -
    - ); -}; diff --git a/packages/demo-react/src/index.tsx b/packages/demo-react/src/index.tsx deleted file mode 100644 index d701043..0000000 --- a/packages/demo-react/src/index.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom/client"; -import App from "./App"; - -const root = ReactDOM.createRoot( - document.getElementById("root") as HTMLElement, -); -root.render(); diff --git a/packages/demo-react/src/post/Post.tsx b/packages/demo-react/src/post/Post.tsx deleted file mode 100644 index 53b3af4..0000000 --- a/packages/demo-react/src/post/Post.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import React, { useCallback } from "react"; -import type { FunctionComponent } from "react"; -import { useLdo, useResource, useSubject } from "@ldo/solid-react"; -import { PostShShapeType } from "../.ldo/post.shapeTypes"; -import { useNavigate } from "react-router-dom"; -import { PostedBy } from "./PostedBy"; - -export const Post: FunctionComponent<{ uri: string }> = ({ uri }) => { - const navigate = useNavigate(); - const mediaResource = useResource(`${uri}index.ttl`); - const post = useSubject(PostShShapeType, mediaResource.uri); - const { getResource } = useLdo(); - const deletePost = useCallback(async () => { - const postContainer = getResource(uri); - const result = await postContainer.delete(); - if (result.isError) { - alert(result.message); - } - }, [uri]); - - if (mediaResource.isReading()) { - return

    Loading Post...

    ; - } else if (mediaResource.status.isError) { - return

    Error: {mediaResource.status.message}

    ; - } else if (mediaResource.isAbsent()) { - return

    Post does not exist.

    ; - } - - return ( -
    - {post.publisher?.["@id"] && } -
    navigate(`/media/${encodeURIComponent(uri)}`)} - style={{ cursor: "pointer" }} - > - {post.articleBody &&

    {post.articleBody}

    } - {post.image && } -
    - -
    - ); -}; diff --git a/packages/demo-react/src/post/PostPage.tsx b/packages/demo-react/src/post/PostPage.tsx deleted file mode 100644 index bc5e144..0000000 --- a/packages/demo-react/src/post/PostPage.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import React from "react"; -import type { FunctionComponent } from "react"; -import { useNavigate, useParams } from "react-router-dom"; -import { Post } from "./Post"; - -export const PostPage: FunctionComponent = () => { - const navigate = useNavigate(); - const { uri } = useParams(); - - return ( -
    - - {uri ? :

    No URI Present

    } -
    - ); -}; diff --git a/packages/demo-react/src/post/PostedBy.tsx b/packages/demo-react/src/post/PostedBy.tsx deleted file mode 100644 index e11fda1..0000000 --- a/packages/demo-react/src/post/PostedBy.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import type { FunctionComponent } from "react"; -import React from "react"; -import { useResource, useSubject } from "@ldo/solid-react"; -import { SolidProfileShapeShapeType } from "../.ldo/solidProfile.shapeTypes"; - -export const PostedBy: FunctionComponent<{ webId: string }> = ({ webId }) => { - const webIdResource = useResource(webId); - const profile = useSubject(SolidProfileShapeShapeType, webId); - - if (webIdResource.isReading()) { - return

    Loading Profile...

    ; - } else if (webIdResource.status.isError) { - return

    Error: {webIdResource.status.message}

    ; - } - return

    Posted By: {profile.fn}

    ; -}; diff --git a/packages/demo-react/src/profile/Profile.tsx b/packages/demo-react/src/profile/Profile.tsx deleted file mode 100644 index ae57f90..0000000 --- a/packages/demo-react/src/profile/Profile.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { - useLdo, - useResource, - useSolidAuth, - useSubject, -} from "@ldo/solid-react"; -import type { ChangeEvent } from "react"; -import React, { useCallback, type FunctionComponent } from "react"; -import { SolidProfileShapeShapeType } from "../.ldo/solidProfile.shapeTypes"; - -export const Profile: FunctionComponent = () => { - const { session } = useSolidAuth(); - const profile = useSubject(SolidProfileShapeShapeType, session.webId); - const webIdResource = useResource(session.webId); - const { changeData, commitData } = useLdo(); - - const onNameChange = useCallback( - async (e: ChangeEvent) => { - if (profile && webIdResource) { - const cProfile = changeData(profile, webIdResource); - cProfile.fn = e.target.value; - await commitData(cProfile); - } - }, - [profile, webIdResource], - ); - - return ( - <> - - - - ); -}; diff --git a/packages/demo-react/tsconfig.json b/packages/demo-react/tsconfig.json deleted file mode 100644 index 0b7eb4f..0000000 --- a/packages/demo-react/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "outDir": "./dist", - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": true, - "skipLibCheck": true, - "allowSyntheticDefaultImports": true, - "forceConsistentCasingInFileNames": true, - "noFallthroughCasesInSwitch": true, - "moduleResolution": "node", - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": true, - "jsx": "react-jsx" - }, - "include": [ - "./src" - ] -} \ No newline at end of file diff --git a/packages/solid-type-index/src/.ldo/profile.context.ts b/packages/solid-type-index/src/.ldo/profile.context.ts index e1e31a2..0d4014c 100644 --- a/packages/solid-type-index/src/.ldo/profile.context.ts +++ b/packages/solid-type-index/src/.ldo/profile.context.ts @@ -1,4 +1,4 @@ -import { LdoJsonldContext } from "@ldo/jsonld-dataset-proxy"; +import { LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= diff --git a/packages/solid-type-index/src/.ldo/profile.typings.ts b/packages/solid-type-index/src/.ldo/profile.typings.ts index bca3f3b..85335b2 100644 --- a/packages/solid-type-index/src/.ldo/profile.typings.ts +++ b/packages/solid-type-index/src/.ldo/profile.typings.ts @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/ldo"; /** * ============================================================================= @@ -11,17 +11,17 @@ import { ContextDefinition } from "jsonld"; */ export interface TypeIndexProfile { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * A registry of all types used on the user's Pod (for private access only) */ - privateTypeIndex?: { + privateTypeIndex?: LdSet<{ "@id": string; - }[]; + }>; /** * A registry of all types used on the user's Pod (for public access) */ - publicTypeIndex?: { + publicTypeIndex?: LdSet<{ "@id": string; - }[]; + }>; } diff --git a/packages/solid-type-index/src/.ldo/typeIndex.context.ts b/packages/solid-type-index/src/.ldo/typeIndex.context.ts index e469629..c048a91 100644 --- a/packages/solid-type-index/src/.ldo/typeIndex.context.ts +++ b/packages/solid-type-index/src/.ldo/typeIndex.context.ts @@ -1,4 +1,4 @@ -import { LdoJsonldContext } from "@ldo/jsonld-dataset-proxy"; +import { LdoJsonldContext } from "@ldo/ldo"; /** * ============================================================================= @@ -7,7 +7,7 @@ import { LdoJsonldContext } from "@ldo/jsonld-dataset-proxy"; */ export const typeIndexContext: LdoJsonldContext = { type: { - "@id": "@type" + "@id": "@type", }, TypeIndex: { "@id": "http://www.w3.org/ns/solid/terms#TypeIndex", @@ -47,4 +47,18 @@ export const typeIndexContext: LdoJsonldContext = { }, }, }, + forClass: { + "@id": "http://www.w3.org/ns/solid/terms#forClass", + "@type": "@id", + }, + instance: { + "@id": "http://www.w3.org/ns/solid/terms#instance", + "@type": "@id", + "@isCollection": true, + }, + instanceContainer: { + "@id": "http://www.w3.org/ns/solid/terms#instanceContainer", + "@type": "@id", + "@isCollection": true, + }, }; diff --git a/packages/solid-type-index/src/.ldo/typeIndex.typings.ts b/packages/solid-type-index/src/.ldo/typeIndex.typings.ts index 53064ef..ba31a45 100644 --- a/packages/solid-type-index/src/.ldo/typeIndex.typings.ts +++ b/packages/solid-type-index/src/.ldo/typeIndex.typings.ts @@ -1,4 +1,4 @@ -import { ContextDefinition } from "jsonld"; +import { LdoJsonldContext, LdSet } from "@ldo/ldo"; /** * ============================================================================= @@ -11,18 +11,18 @@ import { ContextDefinition } from "jsonld"; */ export interface TypeIndexDocument { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * Defines the node as a TypeIndex | Defines the node as a Listed Document */ - type: ( + type: LdSet< | { "@id": "TypeIndex"; } | { "@id": "ListedDocument"; } - )[]; + >; } /** @@ -30,7 +30,7 @@ export interface TypeIndexDocument { */ export interface TypeRegistration { "@id"?: string; - "@context"?: ContextDefinition; + "@context"?: LdoJsonldContext; /** * Defines this node as a Type Registration */ @@ -46,13 +46,13 @@ export interface TypeRegistration { /** * A specific resource that contains the class. */ - instance?: { + instance?: LdSet<{ "@id": string; - }[]; + }>; /** * Containers that contain resources with the class. */ - instanceContainer?: { + instanceContainer?: LdSet<{ "@id": string; - }[]; + }>; } diff --git a/packages/solid-type-index/src/getTypeIndex.ts b/packages/solid-type-index/src/getTypeIndex.ts index e34981e..0dc3346 100644 --- a/packages/solid-type-index/src/getTypeIndex.ts +++ b/packages/solid-type-index/src/getTypeIndex.ts @@ -6,11 +6,12 @@ import { TypeRegistrationShapeType } from "./.ldo/typeIndex.shapeTypes"; import { RDF_TYPE, TYPE_REGISTRATION } from "./constants"; import type { Options } from "./util/Options"; import { guaranteeOptions } from "./util/Options"; +import type { LdSet } from "@ldo/ldo"; export async function getTypeRegistrations( webId: string, options?: Options, -): Promise { +): Promise> { const { dataset } = guaranteeOptions(options); // Get Profile diff --git a/packages/solid-type-index/src/react/useInstanceUris.ts b/packages/solid-type-index/src/react/useInstanceUris.ts index 59717bc..68fa251 100644 --- a/packages/solid-type-index/src/react/useInstanceUris.ts +++ b/packages/solid-type-index/src/react/useInstanceUris.ts @@ -36,7 +36,7 @@ export function useInstanceUris(classUri: string): LeafUri[] { ); useEffect(() => { - getInstanceUris(classUri, typeRegistrations, { + getInstanceUris(classUri, typeRegistrations.toArray(), { solidLdoDataset: dataset, }).then(setLeafUris); }, [typeRegistrations]); diff --git a/packages/solid-type-index/src/setTypeIndex.ts b/packages/solid-type-index/src/setTypeIndex.ts index 1c784dc..c7dd714 100644 --- a/packages/solid-type-index/src/setTypeIndex.ts +++ b/packages/solid-type-index/src/setTypeIndex.ts @@ -12,6 +12,7 @@ import { TypeIndexProfileShapeType } from "./.ldo/profile.shapeTypes"; import type { Container } from "@ldo/solid"; import type { ISolidLdoDataset } from "@ldo/solid"; import type { NamedNode } from "@rdfjs/types"; +import { set } from "@ldo/ldo"; /** * ============================================================================= @@ -24,15 +25,15 @@ export async function initTypeIndex( ): Promise { const { dataset } = guaranteeOptions(options); const profile = await getProfile(webId, options); - if (!profile.privateTypeIndex?.length || !profile.publicTypeIndex?.length) { + if (!profile.privateTypeIndex?.size || !profile.publicTypeIndex?.size) { const profileFolder = await dataset.getResource(webId).getParentContainer(); if (profileFolder?.isError) throw profileFolder; if (!profileFolder) throw new Error("No folder to save the type indexes to."); - if (!profile.privateTypeIndex?.length) { + if (!profile.privateTypeIndex?.size) { await createIndex(webId, profileFolder, dataset, true); } - if (!profile.publicTypeIndex?.length) { + if (!profile.publicTypeIndex?.size) { await createIndex(webId, profileFolder, dataset, false); } } @@ -80,16 +81,16 @@ export async function createIndex( .write(dataset.getResource(webId).uri) .fromSubject(webId); if (isPrivate) { - cProfile.privateTypeIndex?.push({ "@id": indexResource.uri }); + cProfile.privateTypeIndex?.add({ "@id": indexResource.uri }); } else { - cProfile.publicTypeIndex?.push({ "@id": indexResource.uri }); + cProfile.publicTypeIndex?.add({ "@id": indexResource.uri }); } const cTypeIndex = transaction .usingType(TypeIndexDocumentShapeType) .write(indexResource.uri) .fromSubject(indexResource.uri); - cTypeIndex.type = [{ "@id": "ListedDocument" }, { "@id": "TypeIndex" }]; + cTypeIndex.type = set({ "@id": "ListedDocument" }, { "@id": "TypeIndex" }); const commitResult = await transaction.commitToPod(); if (commitResult.isError) throw commitResult; } @@ -104,6 +105,13 @@ interface Instances { instanceContainer?: string[]; } +/** + * Adds an instance to a TypeRegistration + * @param indexUri The URI of the TypeIndex + * @param classUri The URI for the class the instance should be added to + * @param instances Objects representing the instances to add + * @param options Options + */ export function addRegistration( indexUri: string, classUri: string, @@ -119,13 +127,20 @@ export function addRegistration( // Add instances to type registration instances.instance?.forEach((instance) => { - typeRegistration.instance?.push({ "@id": instance }); + typeRegistration.instance?.add({ "@id": instance }); }); instances.instanceContainer?.forEach((instanceContainer) => { - typeRegistration.instanceContainer?.push({ "@id": instanceContainer }); + typeRegistration.instanceContainer?.add({ "@id": instanceContainer }); }); } +/** + * Removes instances from a TypeRegistration + * @param indexUri The URI of the TypeIndex + * @param classUri The URI for the class the instance should be removed from + * @param instances Objects representing the instances to remove + * @param options Options + */ export async function removeRegistration( indexUri: string, classUri: string, @@ -139,31 +154,28 @@ export async function removeRegistration( options, ); - console.log(typeRegistration["@id"]); - // Add instances to type registration - instances.instance?.forEach((instance) => { - typeRegistration.instance?.splice( - typeRegistration.instance.findIndex((val) => val["@id"] === instance), - 1, - ); + instances.instance?.forEach((instanceUri) => { + typeRegistration.instance?.delete({ "@id": instanceUri }); }); - instances.instanceContainer?.forEach((instanceContainer) => { - console.log("Splicing instanceContainers", instanceContainer); - typeRegistration.instanceContainer?.splice( - typeRegistration.instanceContainer.findIndex( - (val) => val["@id"] === instanceContainer, - ), - 1, - ); + instances.instanceContainer?.forEach((instanceContainerUri) => { + typeRegistration.instanceContainer?.delete({ "@id": instanceContainerUri }); }); } +/** + * Finds a TypeRegistration inside of a type index. If it doesn't exist, it + * creates one. + * @param indexUri The URI of the typeIndex + * @param classUri The URI of the class in question for the TypeRegistration + * @param options + * @returns The Type Index + */ export function findAppropriateTypeRegistration( indexUri: string, classUri: string, options?: Options, -) { +): TypeRegistration { const { dataset } = guaranteeOptions(options); // Check to see if its already in the index const existingRegistrationsUris: NamedNode[] = dataset diff --git a/packages/solid-type-index/test/General.test.tsx b/packages/solid-type-index/test/General.test.tsx index 7cf8380..48f6573 100644 --- a/packages/solid-type-index/test/General.test.tsx +++ b/packages/solid-type-index/test/General.test.tsx @@ -39,7 +39,7 @@ describe("General Tests", () => { }); const addressBookUris = await getInstanceUris( ADDRESS_BOOK, - typeRegistrations, + typeRegistrations.toArray(), { solidLdoDataset }, ); expect(addressBookUris).toEqual( @@ -48,9 +48,13 @@ describe("General Tests", () => { "https://example.com/myPublicAddressBook.ttl", ]), ); - const bookmarkUris = await getInstanceUris(BOOKMARK, typeRegistrations, { - solidLdoDataset, - }); + const bookmarkUris = await getInstanceUris( + BOOKMARK, + typeRegistrations.toArray(), + { + solidLdoDataset, + }, + ); expect(bookmarkUris).toEqual( expect.arrayContaining([MY_BOOKMARKS_1_URI, MY_BOOKMARKS_2_URI]), ); @@ -67,8 +71,8 @@ describe("General Tests", () => { .usingType(TypeIndexProfileShapeType) .fromSubject(WEB_ID); - expect(profile.privateTypeIndex?.[0]?.["@id"]).toBeDefined(); - expect(profile.publicTypeIndex?.[0]?.["@id"]).toBeDefined(); + expect(profile.privateTypeIndex?.toArray()[0]?.["@id"]).toBeDefined(); + expect(profile.publicTypeIndex?.toArray()[0]?.["@id"]).toBeDefined(); }); it("Adds to the typeIndex", async () => { From d7b2ebdb3c49c15615dd6c1f6bd170c867191bd3 Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 3 Mar 2025 09:53:54 -0500 Subject: [PATCH 31/32] v0.0.1-1.0.0-alpha.1.0 --- lerna.json | 2 +- package-lock.json | 29198 +++++++----------- packages/cli/package.json | 6 +- packages/dataset/package.json | 2 +- packages/jsonld-dataset-proxy/package.json | 4 +- packages/ldo/package.json | 8 +- packages/schema-converter-shex/package.json | 4 +- packages/solid-react/package.json | 12 +- packages/solid-type-index/package.json | 6 +- packages/solid/package.json | 8 +- packages/subscribable-dataset/package.json | 4 +- 11 files changed, 10475 insertions(+), 18779 deletions(-) diff --git a/lerna.json b/lerna.json index 8f4484b..11608b7 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.0.1-alpha.32" + "version": "0.0.1-1.0.0-alpha.1.0" } diff --git a/package-lock.json b/package-lock.json index e254262..d8ae840 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,23 +23,15 @@ }, "node_modules/@aashutoshrathi/word-wrap": { "version": "1.2.6", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/@alloc/quick-lru": { - "version": "5.2.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@ampproject/remapping": { "version": "2.2.1", + "dev": true, "license": "Apache-2.0", "dependencies": { "@jridgewell/gen-mapping": "^0.3.0", @@ -51,6 +43,7 @@ }, "node_modules/@babel/code-frame": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/highlight": "^7.25.7", @@ -62,6 +55,7 @@ }, "node_modules/@babel/compat-data": { "version": "7.25.8", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -69,6 +63,7 @@ }, "node_modules/@babel/core": { "version": "7.23.9", + "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -97,40 +92,12 @@ }, "node_modules/@babel/core/node_modules/convert-source-map": { "version": "2.0.0", + "dev": true, "license": "MIT" }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/eslint-parser": { - "version": "7.23.10", - "license": "MIT", - "dependencies": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || >=14.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" - } - }, - "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "license": "Apache-2.0", - "engines": { - "node": ">=10" - } - }, - "node_modules/@babel/eslint-parser/node_modules/semver": { - "version": "6.3.1", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -138,6 +105,7 @@ }, "node_modules/@babel/generator": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.25.7", @@ -149,29 +117,9 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-compilation-targets": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/compat-data": "^7.25.7", @@ -186,6 +134,7 @@ }, "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { "version": "5.1.1", + "dev": true, "license": "ISC", "dependencies": { "yallist": "^3.0.2" @@ -193,6 +142,7 @@ }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.1", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -200,98 +150,12 @@ }, "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { "version": "3.1.1", + "dev": true, "license": "ISC" }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.7", - "@babel/helper-member-expression-to-functions": "^7.25.7", - "@babel/helper-optimise-call-expression": "^7.25.7", - "@babel/helper-replace-supers": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7", - "@babel/traverse": "^7.25.7", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.7", - "regexpu-core": "^6.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.5.0", - "license": "MIT", - "dependencies": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { - "version": "1.22.8", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-module-imports": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/traverse": "^7.25.7", @@ -303,6 +167,7 @@ }, "node_modules/@babel/helper-module-transforms": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.25.7", @@ -317,66 +182,17 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-plugin-utils": { "version": "7.25.7", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.7", - "@babel/helper-wrap-function": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.25.7", - "@babel/helper-optimise-call-expression": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, "node_modules/@babel/helper-simple-access": { "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/traverse": "^7.25.7", @@ -388,6 +204,7 @@ }, "node_modules/@babel/helper-string-parser": { "version": "7.25.7", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -395,6 +212,7 @@ }, "node_modules/@babel/helper-validator-identifier": { "version": "7.25.7", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -402,25 +220,15 @@ }, "node_modules/@babel/helper-validator-option": { "version": "7.25.7", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.25.7", - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helpers": { "version": "7.23.9", + "dev": true, "license": "MIT", "dependencies": { "@babel/template": "^7.23.9", @@ -433,6 +241,7 @@ }, "node_modules/@babel/highlight": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.25.7", @@ -446,6 +255,7 @@ }, "node_modules/@babel/highlight/node_modules/ansi-styles": { "version": "3.2.1", + "dev": true, "license": "MIT", "dependencies": { "color-convert": "^1.9.0" @@ -456,6 +266,7 @@ }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", @@ -468,6 +279,7 @@ }, "node_modules/@babel/highlight/node_modules/color-convert": { "version": "1.9.3", + "dev": true, "license": "MIT", "dependencies": { "color-name": "1.1.3" @@ -475,10 +287,12 @@ }, "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", + "dev": true, "license": "MIT" }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", + "dev": true, "license": "MIT", "engines": { "node": ">=0.8.0" @@ -486,6 +300,7 @@ }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -493,6 +308,7 @@ }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^3.0.0" @@ -503,6 +319,7 @@ }, "node_modules/@babel/parser": { "version": "7.25.8", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.25.8" @@ -514,173 +331,97 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { - "version": "7.25.7", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { - "version": "7.25.7", + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.25.7", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.12.13" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.25.7", + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7", - "@babel/plugin-transform-optional-chaining": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { - "@babel/core": "^7.13.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { - "version": "7.25.7", + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-decorators": { - "version": "7.24.0", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.24.0", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/plugin-syntax-decorators": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "license": "MIT", - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" @@ -689,8 +430,9 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-bigint": { + "node_modules/@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" @@ -699,21 +441,23 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-decorators": { - "version": "7.24.0", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { "node": ">=6.9.0" @@ -722,8 +466,9 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-flow": { + "node_modules/@babel/plugin-syntax-typescript": { "version": "7.23.3", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -735,1229 +480,1129 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.25.7", + "node_modules/@babel/runtime": { + "version": "7.23.9", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-attributes": { + "node_modules/@babel/template": { "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", + "node_modules/@babel/traverse": { + "version": "7.25.7", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", + "debug": "^4.3.1", + "globals": "^11.1.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=4" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.23.3", + "node_modules/@babel/types": { + "version": "7.25.8", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "to-fast-properties": "^2.0.0" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@bergos/jsonparse": { + "version": "1.4.1", + "engines": [ + "node >= 0.2.0" + ], "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "buffer": "^6.0.3" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", + "node_modules/@bergos/jsonparse/node_modules/buffer": { + "version": "6.0.3", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", + "node_modules/@colors/colors": { + "version": "1.6.0", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=0.1.90" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", + "node_modules/@comunica/actor-abstract-mediatyped": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", + "node_modules/@comunica/actor-abstract-parse": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/core": "^2.10.0", + "readable-stream": "^4.4.2" } }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", + "node_modules/@comunica/actor-abstract-parse/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", + "node_modules/@comunica/actor-abstract-parse/node_modules/readable-stream": { + "version": "4.5.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.23.3", + "node_modules/@comunica/actor-abstract-path": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", + "node_modules/@comunica/actor-context-preprocess-source-to-destination": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@comunica/bus-context-preprocess": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.25.7", + "node_modules/@comunica/actor-dereference-fallback": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-dereference": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.25.8", + "node_modules/@comunica/actor-dereference-file": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-remap-async-to-generator": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-dereference": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.25.7", + "node_modules/@comunica/actor-dereference-http": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-remap-async-to-generator": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-dereference": "^2.10.0", + "@comunica/bus-http": "^2.10.2", + "@comunica/core": "^2.10.0", + "cross-fetch": "^4.0.0", + "relative-to-absolute-iri": "^1.0.7", + "stream-to-string": "^1.2.0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.25.7", + "node_modules/@comunica/actor-dereference-http/node_modules/cross-fetch": { + "version": "4.0.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node-fetch": "^2.6.12" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.25.7", + "node_modules/@comunica/actor-dereference-http/node_modules/node-fetch": { + "version": "2.7.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.25.7", + "node_modules/@comunica/actor-dereference-rdf-parse": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-dereference": "^2.10.0", + "@comunica/bus-dereference-rdf": "^2.10.0", + "@comunica/bus-rdf-parse": "^2.10.0" } }, - "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.25.8", + "node_modules/@comunica/actor-hash-bindings-sha1": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" + "@comunica/bus-hash-bindings": "^2.10.0", + "@comunica/core": "^2.10.0", + "canonicalize": "^2.0.0", + "hash.js": "^1.1.7", + "rdf-string": "^1.6.1" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-fetch": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.7", - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-replace-supers": "^7.25.7", - "@babel/traverse": "^7.25.7", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-http": "^2.10.2", + "@comunica/context-entries": "^2.10.0", + "@comunica/mediatortype-time": "^2.10.0", + "abort-controller": "^3.0.0", + "cross-fetch": "^4.0.0" } }, - "node_modules/@babel/plugin-transform-classes/node_modules/globals": { - "version": "11.12.0", + "node_modules/@comunica/actor-http-fetch/node_modules/cross-fetch": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "node-fetch": "^2.6.12" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-fetch/node_modules/node-fetch": { + "version": "2.7.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/template": "^7.25.7" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-proxy": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-http": "^2.10.2", + "@comunica/context-entries": "^2.10.0", + "@comunica/mediatortype-time": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-wayback": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-http": "^2.10.2", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "cross-fetch": "^4.0.0", + "stream-to-string": "^1.2.0" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-wayback/node_modules/cross-fetch": { + "version": "4.0.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node-fetch": "^2.6.12" } }, - "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-http-wayback/node_modules/node-fetch": { + "version": "2.7.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "4.x || >=6.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.25.8", + "node_modules/@comunica/actor-init-query": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@comunica/actor-http-proxy": "^2.10.2", + "@comunica/bus-context-preprocess": "^2.10.0", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-init": "^2.10.0", + "@comunica/bus-optimize-query-operation": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-query-parse": "^2.10.0", + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/logger-pretty": "^2.10.0", + "@comunica/runner": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "@types/yargs": "^17.0.24", + "asynciterator": "^3.8.1", + "negotiate": "^1.0.1", + "rdf-quad": "^1.5.0", + "rdf-string": "^1.6.1", + "sparqlalgebrajs": "^4.2.0", + "streamify-string": "^1.0.1", + "yargs": "^17.7.2" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "optionalDependencies": { + "process": "^0.11.10" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.25.7", + "node_modules/@comunica/actor-init-query/node_modules/yargs": { + "version": "17.7.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.25.8", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12" } }, - "node_modules/@babel/plugin-transform-flow-strip-types": { - "version": "7.23.3", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-flow": "^7.23.3" - }, + "node_modules/@comunica/actor-init-query/node_modules/yargs-parser": { + "version": "21.1.1", + "dev": true, + "license": "ISC", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.25.7", + "node_modules/@comunica/actor-optimize-query-operation-bgp-to-join": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-optimize-query-operation": "^2.10.0", + "@comunica/core": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.25.7", + "node_modules/@comunica/actor-optimize-query-operation-join-bgp": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-optimize-query-operation": "^2.10.0", + "@comunica/core": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.25.8", + "node_modules/@comunica/actor-optimize-query-operation-join-connected": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-optimize-query-operation": "^2.10.0", + "@comunica/core": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-ask": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-bgp-join": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-construct": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-describe-subject": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-query-operation-union": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-distinct-hash": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-simple-access": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-hash-bindings": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-extend": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "@babel/traverse": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/expression-evaluator": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-filter-sparqlee": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/expression-evaluator": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-from-quad": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-group": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-hash-bindings": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/expression-evaluator": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-join": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-leftjoin": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/expression-evaluator": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-minus": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/plugin-transform-parameters": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-nop": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-replace-supers": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-orderby-sparqlee": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/expression-evaluator": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-path-alt": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/actor-query-operation-union": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-path-inv": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-path-link": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-path-nps": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.7", - "@babel/helper-create-class-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-path-one-or-more": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.23.3", + "node_modules/@comunica/actor-query-operation-path-seq": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-react-display-name": { - "version": "7.23.3", + "node_modules/@comunica/actor-query-operation-path-zero-or-more": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "rdf-string": "^1.6.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.23.4", + "node_modules/@comunica/actor-query-operation-path-zero-or-one": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/types": "^7.23.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-abstract-path": "^2.10.1", + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-react-jsx-development": { - "version": "7.22.5", + "node_modules/@comunica/actor-query-operation-project": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/plugin-transform-react-jsx": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/data-factory": "^2.7.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-react-pure-annotations": { - "version": "7.23.3", + "node_modules/@comunica/actor-query-operation-quadpattern": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.3", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-reduced-hash": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "regenerator-transform": "^0.15.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-hash-bindings": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "lru-cache": "^10.0.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.25.7", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, + "node_modules/@comunica/actor-query-operation-reduced-hash/node_modules/lru-cache": { + "version": "10.2.0", + "dev": true, + "license": "ISC", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "14 || >=16.14" } }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.24.0", + "node_modules/@comunica/actor-query-operation-service": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0", - "babel-plugin-polyfill-corejs2": "^0.4.8", - "babel-plugin-polyfill-corejs3": "^0.9.0", - "babel-plugin-polyfill-regenerator": "^0.5.5", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-slice": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-sparql-endpoint": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/mediatortype-httprequests": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "fetch-sparql-endpoint": "^4.1.0", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-union": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-add-rewrite": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-clear": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.23.6", + "node_modules/@comunica/actor-query-operation-update-compositeupdate": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.23.6", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-typescript": "^7.23.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-copy-rewrite": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-unicode-property-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-create": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-deleteinsert": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/actor-query-operation-construct": "^2.10.1", + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/plugin-transform-unicode-sets-regex": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-operation-update-drop": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/preset-env": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-operation-update-load": { + "version": "2.10.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.25.8", - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-plugin-utils": "^7.25.7", - "@babel/helper-validator-option": "^7.25.7", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.7", - "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.7", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.7", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.7", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.7", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-import-assertions": "^7.25.7", - "@babel/plugin-syntax-import-attributes": "^7.25.7", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.25.7", - "@babel/plugin-transform-async-generator-functions": "^7.25.8", - "@babel/plugin-transform-async-to-generator": "^7.25.7", - "@babel/plugin-transform-block-scoped-functions": "^7.25.7", - "@babel/plugin-transform-block-scoping": "^7.25.7", - "@babel/plugin-transform-class-properties": "^7.25.7", - "@babel/plugin-transform-class-static-block": "^7.25.8", - "@babel/plugin-transform-classes": "^7.25.7", - "@babel/plugin-transform-computed-properties": "^7.25.7", - "@babel/plugin-transform-destructuring": "^7.25.7", - "@babel/plugin-transform-dotall-regex": "^7.25.7", - "@babel/plugin-transform-duplicate-keys": "^7.25.7", - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.7", - "@babel/plugin-transform-dynamic-import": "^7.25.8", - "@babel/plugin-transform-exponentiation-operator": "^7.25.7", - "@babel/plugin-transform-export-namespace-from": "^7.25.8", - "@babel/plugin-transform-for-of": "^7.25.7", - "@babel/plugin-transform-function-name": "^7.25.7", - "@babel/plugin-transform-json-strings": "^7.25.8", - "@babel/plugin-transform-literals": "^7.25.7", - "@babel/plugin-transform-logical-assignment-operators": "^7.25.8", - "@babel/plugin-transform-member-expression-literals": "^7.25.7", - "@babel/plugin-transform-modules-amd": "^7.25.7", - "@babel/plugin-transform-modules-commonjs": "^7.25.7", - "@babel/plugin-transform-modules-systemjs": "^7.25.7", - "@babel/plugin-transform-modules-umd": "^7.25.7", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.7", - "@babel/plugin-transform-new-target": "^7.25.7", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.8", - "@babel/plugin-transform-numeric-separator": "^7.25.8", - "@babel/plugin-transform-object-rest-spread": "^7.25.8", - "@babel/plugin-transform-object-super": "^7.25.7", - "@babel/plugin-transform-optional-catch-binding": "^7.25.8", - "@babel/plugin-transform-optional-chaining": "^7.25.8", - "@babel/plugin-transform-parameters": "^7.25.7", - "@babel/plugin-transform-private-methods": "^7.25.7", - "@babel/plugin-transform-private-property-in-object": "^7.25.8", - "@babel/plugin-transform-property-literals": "^7.25.7", - "@babel/plugin-transform-regenerator": "^7.25.7", - "@babel/plugin-transform-reserved-words": "^7.25.7", - "@babel/plugin-transform-shorthand-properties": "^7.25.7", - "@babel/plugin-transform-spread": "^7.25.7", - "@babel/plugin-transform-sticky-regex": "^7.25.7", - "@babel/plugin-transform-template-literals": "^7.25.7", - "@babel/plugin-transform-typeof-symbol": "^7.25.7", - "@babel/plugin-transform-unicode-escapes": "^7.25.7", - "@babel/plugin-transform-unicode-property-regex": "^7.25.7", - "@babel/plugin-transform-unicode-regex": "^7.25.7", - "@babel/plugin-transform-unicode-sets-regex": "^7.25.7", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.6", - "babel-plugin-polyfill-regenerator": "^0.6.1", - "core-js-compat": "^3.38.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/preset-env/node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.2", + "node_modules/@comunica/actor-query-operation-update-move-rewrite": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/preset-env/node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.10.6", + "node_modules/@comunica/actor-query-operation-values": { + "version": "2.10.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.2", - "core-js-compat": "^3.38.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@babel/preset-env/node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.6.2", + "node_modules/@comunica/actor-query-parse-graphql": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "@comunica/bus-query-parse": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "graphql-to-sparql": "^3.0.1" } }, - "node_modules/@babel/preset-env/node_modules/resolve": { - "version": "1.22.8", + "node_modules/@comunica/actor-query-parse-sparql": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "@comunica/bus-query-parse": "^2.10.0", + "@comunica/core": "^2.10.0", + "@types/sparqljs": "^3.1.3", + "sparqlalgebrajs": "^4.2.0", + "sparqljs": "^3.7.1" } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", + "node_modules/@comunica/actor-query-result-serialize-json": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "rdf-string": "^1.6.1", + "readable-stream": "^4.4.2" } }, - "node_modules/@babel/preset-react": { - "version": "7.23.3", + "node_modules/@comunica/actor-query-result-serialize-json/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.15", - "@babel/plugin-transform-react-display-name": "^7.23.3", - "@babel/plugin-transform-react-jsx": "^7.22.15", - "@babel/plugin-transform-react-jsx-development": "^7.22.5", - "@babel/plugin-transform-react-pure-annotations": "^7.23.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@babel/preset-typescript": { - "version": "7.23.3", + "node_modules/@comunica/actor-query-result-serialize-json/node_modules/readable-stream": { + "version": "4.5.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.15", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/plugin-transform-modules-commonjs": "^7.23.3", - "@babel/plugin-transform-typescript": "^7.23.3" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@babel/runtime": { - "version": "7.23.9", + "node_modules/@comunica/actor-query-result-serialize-rdf": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-rdf-serialize": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@babel/template": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-result-serialize-simple": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/types": "^7.25.7" - }, - "engines": { - "node": ">=6.9.0" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-string": "^1.6.3", + "readable-stream": "^4.4.2" } }, - "node_modules/@babel/traverse": { - "version": "7.25.7", + "node_modules/@comunica/actor-query-result-serialize-simple/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/generator": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7", - "debug": "^4.3.1", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "license": "MIT", - "engines": { - "node": ">=4" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@babel/types": { - "version": "7.25.8", + "node_modules/@comunica/actor-query-result-serialize-simple/node_modules/readable-stream": { + "version": "4.5.2", + "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "to-fast-properties": "^2.0.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "license": "MIT" - }, - "node_modules/@bergos/jsonparse": { - "version": "1.4.1", - "engines": [ - "node >= 0.2.0" - ], + "node_modules/@comunica/actor-query-result-serialize-sparql-csv": { + "version": "2.10.0", + "dev": true, "license": "MIT", "dependencies": { - "buffer": "^6.0.3" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "readable-stream": "^4.4.2" } }, - "node_modules/@bergos/jsonparse/node_modules/buffer": { + "node_modules/@comunica/actor-query-result-serialize-sparql-csv/node_modules/buffer": { "version": "6.0.3", + "dev": true, "funding": [ { "type": "github", @@ -1978,33 +1623,36 @@ "ieee754": "^1.2.1" } }, - "node_modules/@colors/colors": { - "version": "1.6.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@comunica/actor-abstract-mediatyped": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-sparql-csv/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-abstract-parse": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-sparql-json": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-query-result-serialize": "^2.10.0", "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-abstract-parse/node_modules/buffer": { + "node_modules/@comunica/actor-query-result-serialize-sparql-json/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -2027,7 +1675,7 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-abstract-parse/node_modules/readable-stream": { + "node_modules/@comunica/actor-query-result-serialize-sparql-json/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -2042,854 +1690,809 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-abstract-path": { - "version": "2.10.1", + "node_modules/@comunica/actor-query-result-serialize-sparql-tsv": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", + "@comunica/bus-query-result-serialize": "^2.10.0", "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.1", - "sparqlalgebrajs": "^4.2.0" + "rdf-string-ttl": "^1.3.2", + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-context-preprocess-source-to-destination": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-sparql-tsv/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-context-preprocess": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-dereference-fallback": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-sparql-tsv/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-dereference": "^2.10.0", - "@comunica/core": "^2.10.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-dereference-file": { + "node_modules/@comunica/actor-query-result-serialize-sparql-xml": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-dereference": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-dereference-http": { - "version": "2.10.2", + "node_modules/@comunica/actor-query-result-serialize-sparql-xml/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-dereference": "^2.10.0", - "@comunica/bus-http": "^2.10.2", - "@comunica/core": "^2.10.0", - "cross-fetch": "^4.0.0", - "relative-to-absolute-iri": "^1.0.7", - "stream-to-string": "^1.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-dereference-http/node_modules/cross-fetch": { - "version": "4.0.0", + "node_modules/@comunica/actor-query-result-serialize-sparql-xml/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "node-fetch": "^2.6.12" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-dereference-http/node_modules/node-fetch": { - "version": "2.7.0", + "node_modules/@comunica/actor-query-result-serialize-stats": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "process": "^0.11.10", + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-dereference-rdf-parse": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-stats/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-dereference": "^2.10.0", - "@comunica/bus-dereference-rdf": "^2.10.0", - "@comunica/bus-rdf-parse": "^2.10.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-hash-bindings-sha1": { - "version": "2.10.0", + "node_modules/@comunica/actor-query-result-serialize-stats/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-hash-bindings": "^2.10.0", - "@comunica/core": "^2.10.0", - "canonicalize": "^2.0.0", - "hash.js": "^1.1.7", - "rdf-string": "^1.6.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-http-fetch": { - "version": "2.10.2", + "node_modules/@comunica/actor-query-result-serialize-table": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/context-entries": "^2.10.0", - "@comunica/mediatortype-time": "^2.10.0", - "abort-controller": "^3.0.0", - "cross-fetch": "^4.0.0" + "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.3", + "rdf-terms": "^1.11.0", + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-http-fetch/node_modules/cross-fetch": { - "version": "4.0.0", + "node_modules/@comunica/actor-query-result-serialize-table/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "node-fetch": "^2.6.12" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-http-fetch/node_modules/node-fetch": { - "version": "2.7.0", + "node_modules/@comunica/actor-query-result-serialize-table/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "whatwg-url": "^5.0.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-http-proxy": { - "version": "2.10.2", + "node_modules/@comunica/actor-query-result-serialize-tree": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", + "@comunica/bus-query-result-serialize": "^2.10.0", "@comunica/context-entries": "^2.10.0", - "@comunica/mediatortype-time": "^2.10.0", - "@comunica/types": "^2.10.0" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "readable-stream": "^4.4.2", + "sparqljson-to-tree": "^3.0.1" } }, - "node_modules/@comunica/actor-http-wayback": { - "version": "2.10.2", + "node_modules/@comunica/actor-query-result-serialize-tree/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "cross-fetch": "^4.0.0", - "stream-to-string": "^1.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-http-wayback/node_modules/cross-fetch": { - "version": "4.0.0", + "node_modules/@comunica/actor-query-result-serialize-tree/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "node-fetch": "^2.6.12" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-http-wayback/node_modules/node-fetch": { - "version": "2.7.0", + "node_modules/@comunica/actor-rdf-join-entries-sort-cardinality": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "@comunica/bus-rdf-join-entries-sort": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-init-query": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-join-inner-hash": { + "version": "2.10.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/types": "^2.10.0", + "asyncjoin": "^1.1.1" + } + }, + "node_modules/@comunica/actor-rdf-join-inner-multi-bind": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-http-proxy": "^2.10.2", - "@comunica/bus-context-preprocess": "^2.10.0", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-init": "^2.10.0", - "@comunica/bus-optimize-query-operation": "^2.10.0", "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-query-parse": "^2.10.0", - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/bus-rdf-join-entries-sort": "^2.10.0", "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/logger-pretty": "^2.10.0", - "@comunica/runner": "^2.10.0", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "@types/yargs": "^17.0.24", "asynciterator": "^3.8.1", - "negotiate": "^1.0.1", - "rdf-quad": "^1.5.0", - "rdf-string": "^1.6.1", - "sparqlalgebrajs": "^4.2.0", - "streamify-string": "^1.0.1", - "yargs": "^17.7.2" - }, - "optionalDependencies": { - "process": "^0.11.10" + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-init-query/node_modules/yargs": { - "version": "17.7.2", + "node_modules/@comunica/actor-rdf-join-inner-multi-empty": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@comunica/actor-init-query/node_modules/yargs-parser": { - "version": "21.1.1", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "asynciterator": "^3.8.1" } }, - "node_modules/@comunica/actor-optimize-query-operation-bgp-to-join": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-join-inner-multi-smallest": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-optimize-query-operation": "^2.10.0", - "@comunica/core": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/bus-rdf-join-entries-sort": "^2.10.0", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/types": "^2.10.0", "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-optimize-query-operation-join-bgp": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-join-inner-nestedloop": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-optimize-query-operation": "^2.10.0", - "@comunica/core": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/types": "^2.10.0", + "asyncjoin": "^1.1.1" } }, - "node_modules/@comunica/actor-optimize-query-operation-join-connected": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-join-inner-none": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-optimize-query-operation": "^2.10.0", - "@comunica/core": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "asynciterator": "^3.8.1" } }, - "node_modules/@comunica/actor-query-operation-ask": { + "node_modules/@comunica/actor-rdf-join-inner-single": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-bgp-join": { + "node_modules/@comunica/actor-rdf-join-inner-symmetrichash": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "asyncjoin": "^1.1.1" } }, - "node_modules/@comunica/actor-query-operation-construct": { + "node_modules/@comunica/actor-rdf-join-minus-hash": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-query-operation-describe-subject": { + "node_modules/@comunica/actor-rdf-join-minus-hash-undef": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-query-operation-union": "^2.10.1", "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "@rdfjs/types": "*", + "rdf-string": "^1.6.1" } }, - "node_modules/@comunica/actor-query-operation-distinct-hash": { + "node_modules/@comunica/actor-rdf-join-optional-bind": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-hash-bindings": "^2.10.0", + "@comunica/actor-rdf-join-inner-multi-bind": "^2.10.1", "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/context-entries": "^2.10.0", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-query-operation-extend": { + "node_modules/@comunica/actor-rdf-join-optional-nestedloop": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/expression-evaluator": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/mediatortype-join-coefficients": "^2.10.0", "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "asyncjoin": "^1.1.1" } }, - "node_modules/@comunica/actor-query-operation-filter-sparqlee": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-join-selectivity-variable-counting": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join-selectivity": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/expression-evaluator": "^2.10.0", - "@comunica/types": "^2.10.0", + "@comunica/mediatortype-accuracy": "^2.10.0", "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-query-operation-from-quad": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-accumulate-cancontainundefs": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-group": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-accumulate-cardinality": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-hash-bindings": "^2.10.0", - "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/expression-evaluator": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-join": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-accumulate-pagesize": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-leftjoin": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-accumulate-requesttime": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/expression-evaluator": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-minus": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-all": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", + "@comunica/bus-rdf-metadata": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-query-operation-nop": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-all/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-operation-orderby-sparqlee": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-all/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/expression-evaluator": "^2.10.0", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-operation-path-alt": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-allow-http-methods": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/actor-query-operation-union": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-inv": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-hydra-controls": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0", + "@rdfjs/types": "*", + "@types/uritemplate": "^0.3.4", + "uritemplate": "0.3.4" } }, - "node_modules/@comunica/actor-query-operation-path-link": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-hydra-count": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-nps": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-hydra-pagesize": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-one-or-more": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-patch-sparql-update": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-seq": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-put-accepted": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-zero-or-more": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-request-time": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "rdf-string": "^1.6.1", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-operation-path-zero-or-one": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-extract-sparql-service": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-abstract-path": "^2.10.1", - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/core": "^2.10.0", + "relative-to-absolute-iri": "^1.0.7" } }, - "node_modules/@comunica/actor-query-operation-project": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-primary-topic": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-metadata": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/data-factory": "^2.7.0", - "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-query-operation-quadpattern": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-primary-topic/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.3", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-operation-reduced-hash": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-metadata-primary-topic/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-hash-bindings": "^2.10.0", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "lru-cache": "^10.0.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-reduced-hash/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, "engines": { - "node": "14 || >=16.14" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-operation-service": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-parse-html": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/context-entries": "^2.10.0", + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/bus-rdf-parse-html": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "@rdfjs/types": "*", + "htmlparser2": "^9.0.0", + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-query-operation-slice": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-parse-html-microdata": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/context-entries": "^2.10.0", + "@comunica/bus-rdf-parse-html": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "microdata-rdf-streaming-parser": "^2.0.1" } }, - "node_modules/@comunica/actor-query-operation-sparql-endpoint": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-parse-html-rdfa": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/context-entries": "^2.10.0", + "@comunica/bus-rdf-parse-html": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/mediatortype-httprequests": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "fetch-sparql-endpoint": "^4.1.0", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "rdfa-streaming-parser": "^2.0.1" } }, - "node_modules/@comunica/actor-query-operation-union": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-parse-html-script": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/bus-rdf-parse-html": "^2.10.0", + "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" + "readable-stream": "^4.4.2", + "relative-to-absolute-iri": "^1.0.7" } }, - "node_modules/@comunica/actor-query-operation-update-add-rewrite": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-parse-html-script/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-operation-update-clear": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-parse-html-script/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-operation-update-compositeupdate": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-parse-html/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-update-copy-rewrite": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-update-create": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-update-deleteinsert": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-query-operation-construct": "^2.10.1", - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-operation-update-drop": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-parse-html/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-operation-update-load": { + "node_modules/@comunica/actor-rdf-parse-jsonld": { "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-rdf-parse": "^2.10.0", "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-update-move-rewrite": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-query-operation-values": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "sparqlalgebrajs": "^4.2.0" + "jsonld-context-parser": "^2.2.2", + "jsonld-streaming-parser": "^3.0.1", + "stream-to-string": "^1.2.0" } }, - "node_modules/@comunica/actor-query-parse-graphql": { + "node_modules/@comunica/actor-rdf-parse-n3": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-parse": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "graphql-to-sparql": "^3.0.1" + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/types": "^2.10.0", + "n3": "^1.17.0" } }, - "node_modules/@comunica/actor-query-parse-sparql": { + "node_modules/@comunica/actor-rdf-parse-rdfxml": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-parse": "^2.10.0", - "@comunica/core": "^2.10.0", - "@types/sparqljs": "^3.1.3", - "sparqlalgebrajs": "^4.2.0", - "sparqljs": "^3.7.1" + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/types": "^2.10.0", + "rdfxml-streaming-parser": "^2.2.3" } }, - "node_modules/@comunica/actor-query-result-serialize-json": { + "node_modules/@comunica/actor-rdf-parse-shaclc": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-rdf-parse": "^2.10.0", "@comunica/types": "^2.10.0", - "rdf-string": "^1.6.1", - "readable-stream": "^4.4.2" + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "readable-stream": "^4.4.2", + "shaclc-parse": "^1.4.0", + "stream-to-string": "^1.2.0" } }, - "node_modules/@comunica/actor-query-result-serialize-json/node_modules/buffer": { + "node_modules/@comunica/actor-rdf-parse-shaclc/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -2912,7 +2515,7 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-json/node_modules/readable-stream": { + "node_modules/@comunica/actor-rdf-parse-shaclc/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -2927,131 +2530,140 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-result-serialize-rdf": { + "node_modules/@comunica/actor-rdf-parse-xml-rdfa": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", - "@comunica/bus-rdf-serialize": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/types": "^2.10.0", + "rdfa-streaming-parser": "^2.0.1" } }, - "node_modules/@comunica/actor-query-result-serialize-simple": { + "node_modules/@comunica/actor-rdf-resolve-hypermedia-links-next": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "rdf-string": "^1.6.3", - "readable-stream": "^4.4.2" + "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-result-serialize-simple/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/actor-rdf-resolve-hypermedia-links-queue-fifo": { + "version": "2.10.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia-links-queue": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-query-result-serialize-simple/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/actor-rdf-resolve-hypermedia-none": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", + "rdf-store-stream": "^2.0.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-csv": { + "node_modules/@comunica/actor-rdf-resolve-hypermedia-qpf": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-hydra-controls": "^2.10.0", + "@comunica/bus-dereference-rdf": "^2.10.0", + "@comunica/bus-rdf-metadata": "^2.10.0", + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "readable-stream": "^4.4.2" + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.1", + "rdf-terms": "^1.11.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-csv/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/actor-rdf-resolve-hypermedia-sparql": { + "version": "2.10.2", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/bindings-factory": "^2.10.1", + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "fetch-sparql-endpoint": "^4.0.0", + "lru-cache": "^10.0.0", + "rdf-data-factory": "^1.1.1", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-csv/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/actor-rdf-resolve-hypermedia-sparql/node_modules/lru-cache": { + "version": "10.2.0", "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, + "license": "ISC", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "14 || >=16.14" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-json": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-federated": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-query-result-serialize": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/data-factory": "^2.7.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "readable-stream": "^4.4.2" + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-json/node_modules/buffer": { + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia": { + "version": "2.10.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@comunica/bus-dereference-rdf": "^2.10.0", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-metadata": "^2.10.0", + "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", + "@comunica/bus-rdf-resolve-hypermedia-links-queue": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "lru-cache": "^10.0.0", + "rdf-data-factory": "^1.1.2", + "rdf-streaming-store": "^1.1.0", + "readable-stream": "^4.4.2", + "sparqlalgebrajs": "^4.2.0" + } + }, + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -3074,7 +2686,15 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-json/node_modules/readable-stream": { + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/lru-cache": { + "version": "10.2.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -3089,19 +2709,38 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-tsv": { + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/metadata": "^2.10.0", "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "rdf-string-ttl": "^1.3.2", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.2", + "rdf-terms": "^1.11.0" + } + }, + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source": { + "version": "2.10.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "lru-cache": "^10.0.0", + "rdf-store-stream": "^2.0.0", "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-tsv/node_modules/buffer": { + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -3124,7 +2763,15 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-tsv/node_modules/readable-stream": { + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/lru-cache": { + "version": "10.2.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -3139,70 +2786,39 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-xml": { + "node_modules/@comunica/actor-rdf-serialize-jsonld": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-rdf-serialize": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "readable-stream": "^4.4.2" - } - }, - "node_modules/@comunica/actor-query-result-serialize-sparql-xml/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "jsonld-streaming-serializer": "^2.1.0" } }, - "node_modules/@comunica/actor-query-result-serialize-sparql-xml/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/actor-rdf-serialize-n3": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/bus-rdf-serialize": "^2.10.0", + "@comunica/types": "^2.10.0", + "n3": "^1.17.0" } }, - "node_modules/@comunica/actor-query-result-serialize-stats": { - "version": "2.10.2", + "node_modules/@comunica/actor-rdf-serialize-shaclc": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-query-result-serialize": "^2.10.0", - "@comunica/core": "^2.10.0", + "@comunica/bus-rdf-serialize": "^2.10.0", "@comunica/types": "^2.10.0", - "process": "^0.11.10", - "readable-stream": "^4.4.2" + "arrayify-stream": "^2.0.1", + "readable-stream": "^4.4.2", + "shaclc-write": "^1.4.2" } }, - "node_modules/@comunica/actor-query-result-serialize-stats/node_modules/buffer": { + "node_modules/@comunica/actor-rdf-serialize-shaclc/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -3225,7 +2841,7 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-stats/node_modules/readable-stream": { + "node_modules/@comunica/actor-rdf-serialize-shaclc/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -3240,21 +2856,24 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-query-result-serialize-table": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-rdf-update-hypermedia": "^2.10.2", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.3", - "rdf-terms": "^1.11.0", + "asynciterator": "^3.8.1", + "cross-fetch": "^4.0.0", + "rdf-string-ttl": "^1.3.2", "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-query-result-serialize-table/node_modules/buffer": { + "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -3277,58 +2896,34 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-table/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/cross-fetch": { + "version": "4.0.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node-fetch": "^2.6.12" } }, - "node_modules/@comunica/actor-query-result-serialize-tree": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/node-fetch": { + "version": "2.7.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-result-serialize": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "readable-stream": "^4.4.2", - "sparqljson-to-tree": "^3.0.1" - } - }, - "node_modules/@comunica/actor-query-result-serialize-tree/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-query-result-serialize-tree/node_modules/readable-stream": { + "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -3343,218 +2938,236 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-rdf-join-entries-sort-cardinality": { - "version": "2.10.0", + "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join-entries-sort": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-rdf-serialize": "^2.10.0", + "@comunica/bus-rdf-update-hypermedia": "^2.10.2", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "cross-fetch": "^4.0.0" } }, - "node_modules/@comunica/actor-rdf-join-inner-hash": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp/node_modules/cross-fetch": { + "version": "4.0.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "asyncjoin": "^1.1.1" + "node-fetch": "^2.6.12" } }, - "node_modules/@comunica/actor-rdf-join-inner-multi-bind": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp/node_modules/node-fetch": { + "version": "2.7.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/bus-rdf-join-entries-sort": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/@comunica/actor-rdf-join-inner-multi-empty": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-hypermedia-sparql": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/metadata": "^2.10.0", + "@comunica/bus-http": "^2.10.2", + "@comunica/bus-rdf-update-hypermedia": "^2.10.2", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "asynciterator": "^3.8.1" + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "fetch-sparql-endpoint": "^4.0.0", + "rdf-string-ttl": "^1.3.2", + "stream-to-string": "^1.2.0" } }, - "node_modules/@comunica/actor-rdf-join-inner-multi-smallest": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-quads-hypermedia": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/bus-rdf-join-entries-sort": "^2.10.0", - "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/bus-dereference-rdf": "^2.10.0", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-rdf-metadata": "^2.10.0", + "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/bus-rdf-update-hypermedia": "^2.10.2", + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "lru-cache": "^10.0.0" } }, - "node_modules/@comunica/actor-rdf-join-inner-nestedloop": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-quads-hypermedia/node_modules/lru-cache": { + "version": "10.2.0", "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "asyncjoin": "^1.1.1" + "license": "ISC", + "engines": { + "node": "14 || >=16.14" } }, - "node_modules/@comunica/actor-rdf-join-inner-none": { - "version": "2.10.1", + "node_modules/@comunica/actor-rdf-update-quads-rdfjs-store": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "asynciterator": "^3.8.1" + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.1" } }, - "node_modules/@comunica/actor-rdf-join-inner-single": { + "node_modules/@comunica/bindings-factory": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0" + "@rdfjs/types": "*", + "immutable": "^4.1.0", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.1" } }, - "node_modules/@comunica/actor-rdf-join-inner-symmetrichash": { - "version": "2.10.1", + "node_modules/@comunica/bus-context-preprocess": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "asyncjoin": "^1.1.1" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-join-minus-hash": { - "version": "2.10.1", + "node_modules/@comunica/bus-dereference": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/actor-abstract-mediatyped": "^2.10.0", + "@comunica/actor-abstract-parse": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*" + "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-rdf-join-minus-hash-undef": { - "version": "2.10.1", + "node_modules/@comunica/bus-dereference-rdf": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "rdf-string": "^1.6.1" + "@comunica/bus-dereference": "^2.10.0", + "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/core": "^2.10.0", + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-join-optional-bind": { - "version": "2.10.1", + "node_modules/@comunica/bus-dereference/node_modules/buffer": { + "version": "6.0.3", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "@comunica/actor-rdf-join-inner-multi-bind": "^2.10.1", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/context-entries": "^2.10.0", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-rdf-join-optional-nestedloop": { - "version": "2.10.1", + "node_modules/@comunica/bus-dereference/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0", - "asyncjoin": "^1.1.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-rdf-join-selectivity-variable-counting": { + "node_modules/@comunica/bus-hash-bindings": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-join-selectivity": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/mediatortype-accuracy": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-rdf-metadata-accumulate-cancontainundefs": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-accumulate-cardinality": { - "version": "2.10.0", + "node_modules/@comunica/bus-http": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" + "@smessie/readable-web-to-node-stream": "^3.0.3", + "is-stream": "^2.0.1", + "readable-stream-node-to-web": "^1.0.1", + "web-streams-ponyfill": "^1.4.2" } }, - "node_modules/@comunica/actor-rdf-metadata-accumulate-pagesize": { + "node_modules/@comunica/bus-http-invalidate": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-accumulate-requesttime": { - "version": "2.10.0", + "node_modules/@comunica/bus-http/node_modules/is-stream": { + "version": "2.0.1", "dev": true, "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", - "@comunica/core": "^2.10.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@comunica/actor-rdf-metadata-all": { + "node_modules/@comunica/bus-init": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata": "^2.10.0", "@comunica/core": "^2.10.0", "readable-stream": "^4.4.2" } }, - "node_modules/@comunica/actor-rdf-metadata-all/node_modules/buffer": { + "node_modules/@comunica/bus-init/node_modules/buffer": { "version": "6.0.3", "dev": true, "funding": [ @@ -3577,7 +3190,7 @@ "ieee754": "^1.2.1" } }, - "node_modules/@comunica/actor-rdf-metadata-all/node_modules/readable-stream": { + "node_modules/@comunica/bus-init/node_modules/readable-stream": { "version": "4.5.2", "dev": true, "license": "MIT", @@ -3592,6899 +3205,1007 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-allow-http-methods": { + "node_modules/@comunica/bus-optimize-query-operation": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-hydra-controls": { - "version": "2.10.0", + "node_modules/@comunica/bus-query-operation": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", + "@comunica/bindings-factory": "^2.10.1", + "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", + "@comunica/data-factory": "^2.7.0", + "@comunica/types": "^2.10.0", "@rdfjs/types": "*", - "@types/uritemplate": "^0.3.4", - "uritemplate": "0.3.4" + "asynciterator": "^3.8.1", + "rdf-string": "^1.6.1", + "rdf-terms": "^1.11.0", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-hydra-count": { + "node_modules/@comunica/bus-query-parse": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/core": "^2.10.0", + "@rdfjs/types": "*", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-hydra-pagesize": { + "node_modules/@comunica/bus-query-result-serialize": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/actor-abstract-mediatyped": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-patch-sparql-update": { - "version": "2.10.0", + "node_modules/@comunica/bus-rdf-join": { + "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/bus-rdf-join-selectivity": "^2.10.0", + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/metadata": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "rdf-data-factory": "^1.1.1", + "rdf-string": "^1.6.1" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-put-accepted": { + "node_modules/@comunica/bus-rdf-join-entries-sort": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-request-time": { + "node_modules/@comunica/bus-rdf-join-selectivity": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/core": "^2.10.0", + "@comunica/mediatortype-accuracy": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-extract-sparql-service": { + "node_modules/@comunica/bus-rdf-metadata": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata-extract": "^2.10.0", "@comunica/core": "^2.10.0", - "relative-to-absolute-iri": "^1.0.7" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-metadata-primary-topic": { + "node_modules/@comunica/bus-rdf-metadata-accumulate": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-metadata": "^2.10.0", "@comunica/core": "^2.10.0", - "@rdfjs/types": "*", - "readable-stream": "^4.4.2" - } - }, - "node_modules/@comunica/actor-rdf-metadata-primary-topic/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-metadata-primary-topic/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/bus-rdf-metadata-extract": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/core": "^2.10.0", + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html": { + "node_modules/@comunica/bus-rdf-parse": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/bus-rdf-parse-html": "^2.10.0", + "@comunica/actor-abstract-mediatyped": "^2.10.0", + "@comunica/actor-abstract-parse": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "htmlparser2": "^9.0.0", - "readable-stream": "^4.4.2" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html-microdata": { + "node_modules/@comunica/bus-rdf-parse-html": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse-html": "^2.10.0", "@comunica/core": "^2.10.0", - "microdata-rdf-streaming-parser": "^2.0.1" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html-rdfa": { + "node_modules/@comunica/bus-rdf-resolve-hypermedia": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse-html": "^2.10.0", + "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", "@comunica/core": "^2.10.0", - "rdfa-streaming-parser": "^2.0.1" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html-script": { + "node_modules/@comunica/bus-rdf-resolve-hypermedia-links": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/bus-rdf-parse-html": "^2.10.0", - "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "readable-stream": "^4.4.2", - "relative-to-absolute-iri": "^1.0.7" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html-script/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/bus-rdf-resolve-hypermedia-links-queue": { + "version": "2.10.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-parse-html-script/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/bus-rdf-resolve-quad-pattern": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/context-entries": "^2.10.0", + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-parse-html/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/bus-rdf-serialize": { + "version": "2.10.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/actor-abstract-mediatyped": "^2.10.0", + "@comunica/core": "^2.10.0", + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-html/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/bus-rdf-update-hypermedia": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/bus-rdf-update-quads": "^2.10.2", + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-parse-jsonld": { + "node_modules/@comunica/bus-rdf-update-quads": { "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { + "@comunica/actor-rdf-resolve-quad-pattern-federated": "^2.10.1", "@comunica/bus-http": "^2.10.2", - "@comunica/bus-rdf-parse": "^2.10.0", "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "jsonld-context-parser": "^2.2.2", - "jsonld-streaming-parser": "^3.0.1", + "@rdfjs/types": "*", + "asynciterator": "^3.8.1", "stream-to-string": "^1.2.0" } }, - "node_modules/@comunica/actor-rdf-parse-n3": { - "version": "2.10.0", + "node_modules/@comunica/config-query-sparql": { + "version": "2.7.0", "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/types": "^2.10.0", - "n3": "^1.17.0" - } + "license": "MIT" }, - "node_modules/@comunica/actor-rdf-parse-rdfxml": { + "node_modules/@comunica/context-entries": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", + "@comunica/core": "^2.10.0", "@comunica/types": "^2.10.0", - "rdfxml-streaming-parser": "^2.2.3" + "@rdfjs/types": "*", + "jsonld-context-parser": "^2.2.2", + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-parse-shaclc": { + "node_modules/@comunica/core": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "readable-stream": "^4.4.2", - "shaclc-parse": "^1.4.0", - "stream-to-string": "^1.2.0" + "immutable": "^4.1.0" + }, + "engines": { + "node": ">=14.0" } }, - "node_modules/@comunica/actor-rdf-parse-shaclc/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/data-factory": { + "version": "2.7.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-parse-shaclc/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/expression-evaluator": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } + "@rdfjs/types": "*", + "@types/spark-md5": "^3.0.2", + "@types/uuid": "^9.0.0", + "bignumber.js": "^9.0.1", + "hash.js": "^1.1.7", + "lru-cache": "^10.0.0", + "rdf-data-factory": "^1.1.2", + "rdf-string": "^1.6.3", + "relative-to-absolute-iri": "^1.0.6", + "spark-md5": "^3.0.1", + "sparqlalgebrajs": "^4.2.0", + "uuid": "^9.0.0" + } }, - "node_modules/@comunica/actor-rdf-parse-xml-rdfa": { - "version": "2.10.0", + "node_modules/@comunica/expression-evaluator/node_modules/lru-cache": { + "version": "10.2.0", "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/types": "^2.10.0", - "rdfa-streaming-parser": "^2.0.1" + "license": "ISC", + "engines": { + "node": "14 || >=16.14" } }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-links-next": { + "node_modules/@comunica/logger-pretty": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/types": "^2.10.0", + "object-inspect": "^1.12.2", + "process": "^0.11.10" } }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-links-queue-fifo": { + "node_modules/@comunica/logger-void": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia-links-queue": "^2.10.0", - "@comunica/core": "^2.10.0" + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-none": { + "node_modules/@comunica/mediator-all": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", - "rdf-store-stream": "^2.0.0" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-qpf": { + "node_modules/@comunica/mediator-combine-pipeline": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/actor-rdf-metadata-extract-hydra-controls": "^2.10.0", - "@comunica/bus-dereference-rdf": "^2.10.0", - "@comunica/bus-rdf-metadata": "^2.10.0", - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.1", - "rdf-terms": "^1.11.0" + "@comunica/core": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-sparql": { - "version": "2.10.2", + "node_modules/@comunica/mediator-combine-union": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "fetch-sparql-endpoint": "^4.0.0", - "lru-cache": "^10.0.0", - "rdf-data-factory": "^1.1.1", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/actor-rdf-resolve-hypermedia-sparql/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-federated": { + "node_modules/@comunica/mediator-join-coefficients-fixed": { "version": "2.10.1", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", + "@comunica/bus-rdf-join": "^2.10.1", "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/data-factory": "^2.7.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" + "@comunica/mediatortype-join-coefficients": "^2.10.0", + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia": { - "version": "2.10.1", + "node_modules/@comunica/mediator-number": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-dereference-rdf": "^2.10.0", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-metadata": "^2.10.0", - "@comunica/bus-rdf-metadata-accumulate": "^2.10.0", - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", - "@comunica/bus-rdf-resolve-hypermedia-links-queue": "^2.10.0", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "lru-cache": "^10.0.0", - "rdf-data-factory": "^1.1.2", - "rdf-streaming-store": "^1.1.0", - "readable-stream": "^4.4.2", - "sparqlalgebrajs": "^4.2.0" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/mediator-race": { + "version": "2.10.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/mediatortype-accuracy": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": { + "node_modules/@comunica/mediatortype-httprequests": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.2", - "rdf-terms": "^1.11.0" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source": { + "node_modules/@comunica/mediatortype-join-coefficients": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/context-entries": "^2.10.0", "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "lru-cache": "^10.0.0", - "rdf-store-stream": "^2.0.0", - "readable-stream": "^4.4.2" - } - }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@comunica/actor-rdf-resolve-quad-pattern-string-source/node_modules/readable-stream": { - "version": "4.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@rdfjs/types": "*" } }, - "node_modules/@comunica/actor-rdf-serialize-jsonld": { + "node_modules/@comunica/mediatortype-time": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-serialize": "^2.10.0", - "@comunica/types": "^2.10.0", - "jsonld-streaming-serializer": "^2.1.0" + "@comunica/core": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-serialize-n3": { + "node_modules/@comunica/metadata": { "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-serialize": "^2.10.0", - "@comunica/types": "^2.10.0", - "n3": "^1.17.0" + "@comunica/types": "^2.10.0" } }, - "node_modules/@comunica/actor-rdf-serialize-shaclc": { - "version": "2.10.0", + "node_modules/@comunica/query-sparql": { + "version": "2.10.2", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-rdf-serialize": "^2.10.0", - "@comunica/types": "^2.10.0", - "arrayify-stream": "^2.0.1", - "readable-stream": "^4.4.2", - "shaclc-write": "^1.4.2" + "@comunica/actor-context-preprocess-source-to-destination": "^2.10.0", + "@comunica/actor-dereference-fallback": "^2.10.0", + "@comunica/actor-dereference-http": "^2.10.2", + "@comunica/actor-dereference-rdf-parse": "^2.10.0", + "@comunica/actor-hash-bindings-sha1": "^2.10.0", + "@comunica/actor-http-fetch": "^2.10.2", + "@comunica/actor-http-proxy": "^2.10.2", + "@comunica/actor-http-wayback": "^2.10.2", + "@comunica/actor-init-query": "^2.10.2", + "@comunica/actor-optimize-query-operation-bgp-to-join": "^2.10.0", + "@comunica/actor-optimize-query-operation-join-bgp": "^2.10.0", + "@comunica/actor-optimize-query-operation-join-connected": "^2.10.0", + "@comunica/actor-query-operation-ask": "^2.10.1", + "@comunica/actor-query-operation-bgp-join": "^2.10.1", + "@comunica/actor-query-operation-construct": "^2.10.1", + "@comunica/actor-query-operation-describe-subject": "^2.10.1", + "@comunica/actor-query-operation-distinct-hash": "^2.10.1", + "@comunica/actor-query-operation-extend": "^2.10.1", + "@comunica/actor-query-operation-filter-sparqlee": "^2.10.1", + "@comunica/actor-query-operation-from-quad": "^2.10.1", + "@comunica/actor-query-operation-group": "^2.10.1", + "@comunica/actor-query-operation-join": "^2.10.1", + "@comunica/actor-query-operation-leftjoin": "^2.10.1", + "@comunica/actor-query-operation-minus": "^2.10.1", + "@comunica/actor-query-operation-nop": "^2.10.1", + "@comunica/actor-query-operation-orderby-sparqlee": "^2.10.1", + "@comunica/actor-query-operation-path-alt": "^2.10.1", + "@comunica/actor-query-operation-path-inv": "^2.10.1", + "@comunica/actor-query-operation-path-link": "^2.10.1", + "@comunica/actor-query-operation-path-nps": "^2.10.1", + "@comunica/actor-query-operation-path-one-or-more": "^2.10.1", + "@comunica/actor-query-operation-path-seq": "^2.10.1", + "@comunica/actor-query-operation-path-zero-or-more": "^2.10.1", + "@comunica/actor-query-operation-path-zero-or-one": "^2.10.1", + "@comunica/actor-query-operation-project": "^2.10.1", + "@comunica/actor-query-operation-quadpattern": "^2.10.1", + "@comunica/actor-query-operation-reduced-hash": "^2.10.1", + "@comunica/actor-query-operation-service": "^2.10.1", + "@comunica/actor-query-operation-slice": "^2.10.1", + "@comunica/actor-query-operation-sparql-endpoint": "^2.10.2", + "@comunica/actor-query-operation-union": "^2.10.1", + "@comunica/actor-query-operation-update-add-rewrite": "^2.10.1", + "@comunica/actor-query-operation-update-clear": "^2.10.2", + "@comunica/actor-query-operation-update-compositeupdate": "^2.10.1", + "@comunica/actor-query-operation-update-copy-rewrite": "^2.10.1", + "@comunica/actor-query-operation-update-create": "^2.10.2", + "@comunica/actor-query-operation-update-deleteinsert": "^2.10.2", + "@comunica/actor-query-operation-update-drop": "^2.10.2", + "@comunica/actor-query-operation-update-load": "^2.10.2", + "@comunica/actor-query-operation-update-move-rewrite": "^2.10.1", + "@comunica/actor-query-operation-values": "^2.10.1", + "@comunica/actor-query-parse-graphql": "^2.10.0", + "@comunica/actor-query-parse-sparql": "^2.10.0", + "@comunica/actor-query-result-serialize-json": "^2.10.0", + "@comunica/actor-query-result-serialize-rdf": "^2.10.0", + "@comunica/actor-query-result-serialize-simple": "^2.10.0", + "@comunica/actor-query-result-serialize-sparql-csv": "^2.10.0", + "@comunica/actor-query-result-serialize-sparql-json": "^2.10.2", + "@comunica/actor-query-result-serialize-sparql-tsv": "^2.10.0", + "@comunica/actor-query-result-serialize-sparql-xml": "^2.10.0", + "@comunica/actor-query-result-serialize-stats": "^2.10.2", + "@comunica/actor-query-result-serialize-table": "^2.10.0", + "@comunica/actor-query-result-serialize-tree": "^2.10.0", + "@comunica/actor-rdf-join-entries-sort-cardinality": "^2.10.0", + "@comunica/actor-rdf-join-inner-hash": "^2.10.1", + "@comunica/actor-rdf-join-inner-multi-bind": "^2.10.1", + "@comunica/actor-rdf-join-inner-multi-empty": "^2.10.1", + "@comunica/actor-rdf-join-inner-multi-smallest": "^2.10.1", + "@comunica/actor-rdf-join-inner-nestedloop": "^2.10.1", + "@comunica/actor-rdf-join-inner-none": "^2.10.1", + "@comunica/actor-rdf-join-inner-single": "^2.10.1", + "@comunica/actor-rdf-join-inner-symmetrichash": "^2.10.1", + "@comunica/actor-rdf-join-minus-hash": "^2.10.1", + "@comunica/actor-rdf-join-minus-hash-undef": "^2.10.1", + "@comunica/actor-rdf-join-optional-bind": "^2.10.1", + "@comunica/actor-rdf-join-optional-nestedloop": "^2.10.1", + "@comunica/actor-rdf-join-selectivity-variable-counting": "^2.10.0", + "@comunica/actor-rdf-metadata-accumulate-cancontainundefs": "^2.10.0", + "@comunica/actor-rdf-metadata-accumulate-cardinality": "^2.10.0", + "@comunica/actor-rdf-metadata-accumulate-pagesize": "^2.10.0", + "@comunica/actor-rdf-metadata-accumulate-requesttime": "^2.10.0", + "@comunica/actor-rdf-metadata-all": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-allow-http-methods": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-hydra-controls": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-hydra-count": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-hydra-pagesize": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-patch-sparql-update": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-put-accepted": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-request-time": "^2.10.0", + "@comunica/actor-rdf-metadata-extract-sparql-service": "^2.10.0", + "@comunica/actor-rdf-metadata-primary-topic": "^2.10.0", + "@comunica/actor-rdf-parse-html": "^2.10.0", + "@comunica/actor-rdf-parse-html-microdata": "^2.10.0", + "@comunica/actor-rdf-parse-html-rdfa": "^2.10.0", + "@comunica/actor-rdf-parse-html-script": "^2.10.0", + "@comunica/actor-rdf-parse-jsonld": "^2.10.2", + "@comunica/actor-rdf-parse-n3": "^2.10.0", + "@comunica/actor-rdf-parse-rdfxml": "^2.10.0", + "@comunica/actor-rdf-parse-shaclc": "^2.10.0", + "@comunica/actor-rdf-parse-xml-rdfa": "^2.10.0", + "@comunica/actor-rdf-resolve-hypermedia-links-next": "^2.10.0", + "@comunica/actor-rdf-resolve-hypermedia-links-queue-fifo": "^2.10.0", + "@comunica/actor-rdf-resolve-hypermedia-none": "^2.10.0", + "@comunica/actor-rdf-resolve-hypermedia-qpf": "^2.10.0", + "@comunica/actor-rdf-resolve-hypermedia-sparql": "^2.10.2", + "@comunica/actor-rdf-resolve-quad-pattern-federated": "^2.10.1", + "@comunica/actor-rdf-resolve-quad-pattern-hypermedia": "^2.10.1", + "@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": "^2.10.0", + "@comunica/actor-rdf-resolve-quad-pattern-string-source": "^2.10.0", + "@comunica/actor-rdf-serialize-jsonld": "^2.10.0", + "@comunica/actor-rdf-serialize-n3": "^2.10.0", + "@comunica/actor-rdf-serialize-shaclc": "^2.10.0", + "@comunica/actor-rdf-update-hypermedia-patch-sparql-update": "^2.10.2", + "@comunica/actor-rdf-update-hypermedia-put-ldp": "^2.10.2", + "@comunica/actor-rdf-update-hypermedia-sparql": "^2.10.2", + "@comunica/actor-rdf-update-quads-hypermedia": "^2.10.2", + "@comunica/actor-rdf-update-quads-rdfjs-store": "^2.10.2", + "@comunica/bus-http-invalidate": "^2.10.0", + "@comunica/bus-query-operation": "^2.10.1", + "@comunica/config-query-sparql": "^2.7.0", + "@comunica/core": "^2.10.0", + "@comunica/logger-void": "^2.10.0", + "@comunica/mediator-all": "^2.10.0", + "@comunica/mediator-combine-pipeline": "^2.10.0", + "@comunica/mediator-combine-union": "^2.10.0", + "@comunica/mediator-join-coefficients-fixed": "^2.10.1", + "@comunica/mediator-number": "^2.10.0", + "@comunica/mediator-race": "^2.10.0", + "@comunica/runner": "^2.10.0", + "@comunica/runner-cli": "^2.10.0", + "@comunica/types": "^2.10.0", + "process": "^0.11.10" + }, + "bin": { + "comunica-dynamic-sparql": "bin/query-dynamic.js", + "comunica-sparql": "bin/query.js", + "comunica-sparql-http": "bin/http.js" } }, - "node_modules/@comunica/actor-rdf-serialize-shaclc/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@comunica/runner": { + "version": "2.10.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@comunica/bus-init": "^2.10.0", + "@comunica/core": "^2.10.0", + "componentsjs": "^5.3.2", + "process": "^0.11.10" + }, + "bin": { + "comunica-compile-config": "bin/compile-config" } }, - "node_modules/@comunica/actor-rdf-serialize-shaclc/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@comunica/runner-cli": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" + "@comunica/core": "^2.10.0", + "@comunica/runner": "^2.10.0", + "@comunica/types": "^2.10.0", + "process": "^0.11.10" }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "bin": { + "comunica-run": "bin/run.js" } }, - "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update": { - "version": "2.10.2", + "node_modules/@comunica/types": { + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-rdf-update-hypermedia": "^2.10.2", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", "@rdfjs/types": "*", + "@types/yargs": "^17.0.24", "asynciterator": "^3.8.1", - "cross-fetch": "^4.0.0", - "rdf-string-ttl": "^1.3.2", - "readable-stream": "^4.4.2" + "sparqlalgebrajs": "^4.2.0" } }, - "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/buffer": { - "version": "6.0.3", + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/cross-fetch": { - "version": "4.0.0", + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { - "node-fetch": "^2.6.12" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/node-fetch": { - "version": "2.7.0", + "node_modules/@dabh/diagnostics": { + "version": "2.0.3", "dev": true, "license": "MIT", "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" } }, - "node_modules/@comunica/actor-rdf-update-hypermedia-patch-sparql-update/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/@digitalbazaar/http-client": { + "version": "1.2.0", "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-rdf-serialize": "^2.10.0", - "@comunica/bus-rdf-update-hypermedia": "^2.10.2", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "cross-fetch": "^4.0.0" - } - }, - "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp/node_modules/cross-fetch": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "node-fetch": "^2.6.12" - } - }, - "node_modules/@comunica/actor-rdf-update-hypermedia-put-ldp/node_modules/node-fetch": { - "version": "2.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@comunica/actor-rdf-update-hypermedia-sparql": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-http": "^2.10.2", - "@comunica/bus-rdf-update-hypermedia": "^2.10.2", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "fetch-sparql-endpoint": "^4.0.0", - "rdf-string-ttl": "^1.3.2", - "stream-to-string": "^1.2.0" - } - }, - "node_modules/@comunica/actor-rdf-update-quads-hypermedia": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-dereference-rdf": "^2.10.0", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-rdf-metadata": "^2.10.0", - "@comunica/bus-rdf-metadata-extract": "^2.10.0", - "@comunica/bus-rdf-update-hypermedia": "^2.10.2", - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "lru-cache": "^10.0.0" - } - }, - "node_modules/@comunica/actor-rdf-update-quads-hypermedia/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@comunica/actor-rdf-update-quads-rdfjs-store": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.1" - } - }, - "node_modules/@comunica/bindings-factory": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "immutable": "^4.1.0", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.1" - } - }, - "node_modules/@comunica/bus-context-preprocess": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-dereference": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-abstract-mediatyped": "^2.10.0", - "@comunica/actor-abstract-parse": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "readable-stream": "^4.4.2" - } - }, - "node_modules/@comunica/bus-dereference-rdf": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-dereference": "^2.10.0", - "@comunica/bus-rdf-parse": "^2.10.0", - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-dereference/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@comunica/bus-dereference/node_modules/readable-stream": { - "version": "4.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@comunica/bus-hash-bindings": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-http": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@smessie/readable-web-to-node-stream": "^3.0.3", - "is-stream": "^2.0.1", - "readable-stream-node-to-web": "^1.0.1", - "web-streams-ponyfill": "^1.4.2" - } - }, - "node_modules/@comunica/bus-http-invalidate": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/bus-http/node_modules/is-stream": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@comunica/bus-init": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "readable-stream": "^4.4.2" - } - }, - "node_modules/@comunica/bus-init/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@comunica/bus-init/node_modules/readable-stream": { - "version": "4.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@comunica/bus-optimize-query-operation": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/bus-query-operation": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bindings-factory": "^2.10.1", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/data-factory": "^2.7.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "rdf-string": "^1.6.1", - "rdf-terms": "^1.11.0", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/bus-query-parse": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/bus-query-result-serialize": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-abstract-mediatyped": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-join": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/bus-rdf-join-selectivity": "^2.10.0", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/metadata": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "rdf-data-factory": "^1.1.1", - "rdf-string": "^1.6.1" - } - }, - "node_modules/@comunica/bus-rdf-join-entries-sort": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-join-selectivity": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/mediatortype-accuracy": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-metadata": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-metadata-accumulate": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-metadata-extract": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-parse": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-abstract-mediatyped": "^2.10.0", - "@comunica/actor-abstract-parse": "^2.10.0", - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-parse-html": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-resolve-hypermedia": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-resolve-quad-pattern": "^2.10.0", - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-resolve-hypermedia-links": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-resolve-hypermedia-links-queue": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-resolve-hypermedia-links": "^2.10.0", - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-resolve-quad-pattern": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/bus-rdf-serialize": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-abstract-mediatyped": "^2.10.0", - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/bus-rdf-update-hypermedia": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-update-quads": "^2.10.2", - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/bus-rdf-update-quads": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-rdf-resolve-quad-pattern-federated": "^2.10.1", - "@comunica/bus-http": "^2.10.2", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "asynciterator": "^3.8.1", - "stream-to-string": "^1.2.0" - } - }, - "node_modules/@comunica/config-query-sparql": { - "version": "2.7.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@comunica/context-entries": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0", - "@rdfjs/types": "*", - "jsonld-context-parser": "^2.2.2", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@comunica/core": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/types": "^2.10.0", - "immutable": "^4.1.0" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/@comunica/data-factory": { - "version": "2.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/expression-evaluator": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@types/spark-md5": "^3.0.2", - "@types/uuid": "^9.0.0", - "bignumber.js": "^9.0.1", - "hash.js": "^1.1.7", - "lru-cache": "^10.0.0", - "rdf-data-factory": "^1.1.2", - "rdf-string": "^1.6.3", - "relative-to-absolute-iri": "^1.0.6", - "spark-md5": "^3.0.1", - "sparqlalgebrajs": "^4.2.0", - "uuid": "^9.0.0" - } - }, - "node_modules/@comunica/expression-evaluator/node_modules/lru-cache": { - "version": "10.2.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@comunica/logger-pretty": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/types": "^2.10.0", - "object-inspect": "^1.12.2", - "process": "^0.11.10" - } - }, - "node_modules/@comunica/logger-void": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-all": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-combine-pipeline": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-combine-union": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-join-coefficients-fixed": { - "version": "2.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-rdf-join": "^2.10.1", - "@comunica/context-entries": "^2.10.0", - "@comunica/core": "^2.10.0", - "@comunica/mediatortype-join-coefficients": "^2.10.0", - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-number": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediator-race": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediatortype-accuracy": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediatortype-httprequests": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/mediatortype-join-coefficients": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@rdfjs/types": "*" - } - }, - "node_modules/@comunica/mediatortype-time": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0" - } - }, - "node_modules/@comunica/metadata": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/types": "^2.10.0" - } - }, - "node_modules/@comunica/query-sparql": { - "version": "2.10.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/actor-context-preprocess-source-to-destination": "^2.10.0", - "@comunica/actor-dereference-fallback": "^2.10.0", - "@comunica/actor-dereference-http": "^2.10.2", - "@comunica/actor-dereference-rdf-parse": "^2.10.0", - "@comunica/actor-hash-bindings-sha1": "^2.10.0", - "@comunica/actor-http-fetch": "^2.10.2", - "@comunica/actor-http-proxy": "^2.10.2", - "@comunica/actor-http-wayback": "^2.10.2", - "@comunica/actor-init-query": "^2.10.2", - "@comunica/actor-optimize-query-operation-bgp-to-join": "^2.10.0", - "@comunica/actor-optimize-query-operation-join-bgp": "^2.10.0", - "@comunica/actor-optimize-query-operation-join-connected": "^2.10.0", - "@comunica/actor-query-operation-ask": "^2.10.1", - "@comunica/actor-query-operation-bgp-join": "^2.10.1", - "@comunica/actor-query-operation-construct": "^2.10.1", - "@comunica/actor-query-operation-describe-subject": "^2.10.1", - "@comunica/actor-query-operation-distinct-hash": "^2.10.1", - "@comunica/actor-query-operation-extend": "^2.10.1", - "@comunica/actor-query-operation-filter-sparqlee": "^2.10.1", - "@comunica/actor-query-operation-from-quad": "^2.10.1", - "@comunica/actor-query-operation-group": "^2.10.1", - "@comunica/actor-query-operation-join": "^2.10.1", - "@comunica/actor-query-operation-leftjoin": "^2.10.1", - "@comunica/actor-query-operation-minus": "^2.10.1", - "@comunica/actor-query-operation-nop": "^2.10.1", - "@comunica/actor-query-operation-orderby-sparqlee": "^2.10.1", - "@comunica/actor-query-operation-path-alt": "^2.10.1", - "@comunica/actor-query-operation-path-inv": "^2.10.1", - "@comunica/actor-query-operation-path-link": "^2.10.1", - "@comunica/actor-query-operation-path-nps": "^2.10.1", - "@comunica/actor-query-operation-path-one-or-more": "^2.10.1", - "@comunica/actor-query-operation-path-seq": "^2.10.1", - "@comunica/actor-query-operation-path-zero-or-more": "^2.10.1", - "@comunica/actor-query-operation-path-zero-or-one": "^2.10.1", - "@comunica/actor-query-operation-project": "^2.10.1", - "@comunica/actor-query-operation-quadpattern": "^2.10.1", - "@comunica/actor-query-operation-reduced-hash": "^2.10.1", - "@comunica/actor-query-operation-service": "^2.10.1", - "@comunica/actor-query-operation-slice": "^2.10.1", - "@comunica/actor-query-operation-sparql-endpoint": "^2.10.2", - "@comunica/actor-query-operation-union": "^2.10.1", - "@comunica/actor-query-operation-update-add-rewrite": "^2.10.1", - "@comunica/actor-query-operation-update-clear": "^2.10.2", - "@comunica/actor-query-operation-update-compositeupdate": "^2.10.1", - "@comunica/actor-query-operation-update-copy-rewrite": "^2.10.1", - "@comunica/actor-query-operation-update-create": "^2.10.2", - "@comunica/actor-query-operation-update-deleteinsert": "^2.10.2", - "@comunica/actor-query-operation-update-drop": "^2.10.2", - "@comunica/actor-query-operation-update-load": "^2.10.2", - "@comunica/actor-query-operation-update-move-rewrite": "^2.10.1", - "@comunica/actor-query-operation-values": "^2.10.1", - "@comunica/actor-query-parse-graphql": "^2.10.0", - "@comunica/actor-query-parse-sparql": "^2.10.0", - "@comunica/actor-query-result-serialize-json": "^2.10.0", - "@comunica/actor-query-result-serialize-rdf": "^2.10.0", - "@comunica/actor-query-result-serialize-simple": "^2.10.0", - "@comunica/actor-query-result-serialize-sparql-csv": "^2.10.0", - "@comunica/actor-query-result-serialize-sparql-json": "^2.10.2", - "@comunica/actor-query-result-serialize-sparql-tsv": "^2.10.0", - "@comunica/actor-query-result-serialize-sparql-xml": "^2.10.0", - "@comunica/actor-query-result-serialize-stats": "^2.10.2", - "@comunica/actor-query-result-serialize-table": "^2.10.0", - "@comunica/actor-query-result-serialize-tree": "^2.10.0", - "@comunica/actor-rdf-join-entries-sort-cardinality": "^2.10.0", - "@comunica/actor-rdf-join-inner-hash": "^2.10.1", - "@comunica/actor-rdf-join-inner-multi-bind": "^2.10.1", - "@comunica/actor-rdf-join-inner-multi-empty": "^2.10.1", - "@comunica/actor-rdf-join-inner-multi-smallest": "^2.10.1", - "@comunica/actor-rdf-join-inner-nestedloop": "^2.10.1", - "@comunica/actor-rdf-join-inner-none": "^2.10.1", - "@comunica/actor-rdf-join-inner-single": "^2.10.1", - "@comunica/actor-rdf-join-inner-symmetrichash": "^2.10.1", - "@comunica/actor-rdf-join-minus-hash": "^2.10.1", - "@comunica/actor-rdf-join-minus-hash-undef": "^2.10.1", - "@comunica/actor-rdf-join-optional-bind": "^2.10.1", - "@comunica/actor-rdf-join-optional-nestedloop": "^2.10.1", - "@comunica/actor-rdf-join-selectivity-variable-counting": "^2.10.0", - "@comunica/actor-rdf-metadata-accumulate-cancontainundefs": "^2.10.0", - "@comunica/actor-rdf-metadata-accumulate-cardinality": "^2.10.0", - "@comunica/actor-rdf-metadata-accumulate-pagesize": "^2.10.0", - "@comunica/actor-rdf-metadata-accumulate-requesttime": "^2.10.0", - "@comunica/actor-rdf-metadata-all": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-allow-http-methods": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-hydra-controls": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-hydra-count": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-hydra-pagesize": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-patch-sparql-update": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-put-accepted": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-request-time": "^2.10.0", - "@comunica/actor-rdf-metadata-extract-sparql-service": "^2.10.0", - "@comunica/actor-rdf-metadata-primary-topic": "^2.10.0", - "@comunica/actor-rdf-parse-html": "^2.10.0", - "@comunica/actor-rdf-parse-html-microdata": "^2.10.0", - "@comunica/actor-rdf-parse-html-rdfa": "^2.10.0", - "@comunica/actor-rdf-parse-html-script": "^2.10.0", - "@comunica/actor-rdf-parse-jsonld": "^2.10.2", - "@comunica/actor-rdf-parse-n3": "^2.10.0", - "@comunica/actor-rdf-parse-rdfxml": "^2.10.0", - "@comunica/actor-rdf-parse-shaclc": "^2.10.0", - "@comunica/actor-rdf-parse-xml-rdfa": "^2.10.0", - "@comunica/actor-rdf-resolve-hypermedia-links-next": "^2.10.0", - "@comunica/actor-rdf-resolve-hypermedia-links-queue-fifo": "^2.10.0", - "@comunica/actor-rdf-resolve-hypermedia-none": "^2.10.0", - "@comunica/actor-rdf-resolve-hypermedia-qpf": "^2.10.0", - "@comunica/actor-rdf-resolve-hypermedia-sparql": "^2.10.2", - "@comunica/actor-rdf-resolve-quad-pattern-federated": "^2.10.1", - "@comunica/actor-rdf-resolve-quad-pattern-hypermedia": "^2.10.1", - "@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source": "^2.10.0", - "@comunica/actor-rdf-resolve-quad-pattern-string-source": "^2.10.0", - "@comunica/actor-rdf-serialize-jsonld": "^2.10.0", - "@comunica/actor-rdf-serialize-n3": "^2.10.0", - "@comunica/actor-rdf-serialize-shaclc": "^2.10.0", - "@comunica/actor-rdf-update-hypermedia-patch-sparql-update": "^2.10.2", - "@comunica/actor-rdf-update-hypermedia-put-ldp": "^2.10.2", - "@comunica/actor-rdf-update-hypermedia-sparql": "^2.10.2", - "@comunica/actor-rdf-update-quads-hypermedia": "^2.10.2", - "@comunica/actor-rdf-update-quads-rdfjs-store": "^2.10.2", - "@comunica/bus-http-invalidate": "^2.10.0", - "@comunica/bus-query-operation": "^2.10.1", - "@comunica/config-query-sparql": "^2.7.0", - "@comunica/core": "^2.10.0", - "@comunica/logger-void": "^2.10.0", - "@comunica/mediator-all": "^2.10.0", - "@comunica/mediator-combine-pipeline": "^2.10.0", - "@comunica/mediator-combine-union": "^2.10.0", - "@comunica/mediator-join-coefficients-fixed": "^2.10.1", - "@comunica/mediator-number": "^2.10.0", - "@comunica/mediator-race": "^2.10.0", - "@comunica/runner": "^2.10.0", - "@comunica/runner-cli": "^2.10.0", - "@comunica/types": "^2.10.0", - "process": "^0.11.10" - }, - "bin": { - "comunica-dynamic-sparql": "bin/query-dynamic.js", - "comunica-sparql": "bin/query.js", - "comunica-sparql-http": "bin/http.js" - } - }, - "node_modules/@comunica/runner": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/bus-init": "^2.10.0", - "@comunica/core": "^2.10.0", - "componentsjs": "^5.3.2", - "process": "^0.11.10" - }, - "bin": { - "comunica-compile-config": "bin/compile-config" - } - }, - "node_modules/@comunica/runner-cli": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/core": "^2.10.0", - "@comunica/runner": "^2.10.0", - "@comunica/types": "^2.10.0", - "process": "^0.11.10" - }, - "bin": { - "comunica-run": "bin/run.js" - } - }, - "node_modules/@comunica/types": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@types/yargs": "^17.0.24", - "asynciterator": "^3.8.1", - "sparqlalgebrajs": "^4.2.0" - } - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "devOptional": true, - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "devOptional": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@csstools/normalize.css": { - "version": "12.1.1", - "license": "CC0-1.0" - }, - "node_modules/@csstools/postcss-cascade-layers": { - "version": "1.1.1", - "license": "CC0-1.0", - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-color-function": { - "version": "1.1.1", - "license": "CC0-1.0", - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-hwb-function": { - "version": "1.0.2", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-ic-unit": { - "version": "1.0.1", - "license": "CC0-1.0", - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "license": "CC0-1.0", - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-nested-calc": { - "version": "1.0.0", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-oklab-function": { - "version": "1.1.1", - "license": "CC0-1.0", - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-text-decoration-shorthand": { - "version": "1.0.0", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-unset-value": { - "version": "1.0.2", - "license": "CC0-1.0", - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "2.2.0", - "license": "CC0-1.0", - "engines": { - "node": "^14 || ^16 || >=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss-selector-parser": "^6.0.10" - } - }, - "node_modules/@dabh/diagnostics": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "node_modules/@digitalbazaar/http-client": { - "version": "1.2.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "esm": "^3.2.22", - "ky": "^0.25.1", - "ky-universal": "^0.8.2" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.0", - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "license": "Apache-2.0", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.2", - "license": "BSD-3-Clause" - }, - "node_modules/@hutson/parse-repository-url": { - "version": "3.0.2", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@inrupt/oidc-client": { - "version": "1.11.6", - "license": "Apache-2.0", - "dependencies": { - "acorn": "^7.4.1", - "base64-js": "^1.5.1", - "core-js": "^3.8.3", - "crypto-js": "^4.0.0", - "serialize-javascript": "^4.0.0" - } - }, - "node_modules/@inrupt/oidc-client-ext": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "@inrupt/oidc-client": "^1.11.6", - "@inrupt/solid-client-authn-core": "^2.0.0", - "jose": "^5.1.3", - "uuid": "^9.0.1" - } - }, - "node_modules/@inrupt/oidc-client-ext/node_modules/jose": { - "version": "5.2.2", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/panva" - } - }, - "node_modules/@inrupt/oidc-client/node_modules/acorn": { - "version": "7.4.1", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@inrupt/solid-client-authn-browser": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "@inrupt/oidc-client-ext": "^2.0.0", - "@inrupt/solid-client-authn-core": "^2.0.0", - "events": "^3.3.0", - "jose": "^5.1.3", - "uuid": "^9.0.1" - } - }, - "node_modules/@inrupt/solid-client-authn-browser/node_modules/jose": { - "version": "5.2.2", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/panva" - } - }, - "node_modules/@inrupt/solid-client-authn-core": { - "version": "2.2.6", - "license": "MIT", - "dependencies": { - "events": "^3.3.0", - "jose": "^5.1.3", - "uuid": "^10.0.0" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || ^22.0.0" - } - }, - "node_modules/@inrupt/solid-client-authn-core/node_modules/jose": { - "version": "5.9.4", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/panva" - } - }, - "node_modules/@inrupt/solid-client-authn-core/node_modules/uuid": { - "version": "10.0.0", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/@ioredis/commands": { - "version": "1.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { - "version": "6.2.1", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "license": "MIT" - }, - "node_modules/@isaacs/cliui/node_modules/string-width": { - "version": "5.1.2", - "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "license": "ISC", - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/sprintf-js": { - "version": "1.0.3", - "license": "BSD-3-Clause" - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@janeirodigital/interop-utils": { - "version": "1.0.0-rc.24", - "resolved": "https://registry.npmjs.org/@janeirodigital/interop-utils/-/interop-utils-1.0.0-rc.24.tgz", - "integrity": "sha512-mLOhitq6SyRSZi1DxrzTTgms7Mt0zgx/5KezkkyMBH3OYuYJBGPH6A93iBJl0wA5Ln90A9KnyiC7I/7+IUYhoQ==", - "license": "MIT", - "dependencies": { - "http-link-header": "^1.1.1", - "jsonld-streaming-parser": "^3.2.1", - "n3": "^1.17.1" - } - }, - "node_modules/@jest/console": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/core": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform/node_modules/write-file-atomic": { - "version": "3.0.3", - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/@jest/types": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/types/node_modules/@types/yargs": { - "version": "16.0.9", - "license": "MIT", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@jeswr/prefixcc": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-fetch": "^3.1.5" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@koa/cors": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "vary": "^1.1.2" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/@koa/router": { - "version": "12.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.4", - "http-errors": "^2.0.0", - "koa-compose": "^4.1.0", - "methods": "^1.1.2", - "path-to-regexp": "^6.3.0" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@koa/router/node_modules/path-to-regexp": { - "version": "6.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@ldo/cli": { - "resolved": "packages/cli", - "link": true - }, - "node_modules/@ldo/dataset": { - "resolved": "packages/dataset", - "link": true - }, - "node_modules/@ldo/demo-react": { - "resolved": "packages/demo-react", - "link": true - }, - "node_modules/@ldo/jsonld-dataset-proxy": { - "resolved": "packages/jsonld-dataset-proxy", - "link": true - }, - "node_modules/@ldo/ldo": { - "resolved": "packages/ldo", - "link": true - }, - "node_modules/@ldo/rdf-utils": { - "resolved": "packages/rdf-utils", - "link": true - }, - "node_modules/@ldo/schema-converter-shex": { - "resolved": "packages/schema-converter-shex", - "link": true - }, - "node_modules/@ldo/solid": { - "resolved": "packages/solid", - "link": true - }, - "node_modules/@ldo/solid-react": { - "resolved": "packages/solid-react", - "link": true - }, - "node_modules/@ldo/solid-type-index": { - "resolved": "packages/solid-type-index", - "link": true - }, - "node_modules/@ldo/subscribable-dataset": { - "resolved": "packages/subscribable-dataset", - "link": true - }, - "node_modules/@ldo/traverser-shexj": { - "resolved": "packages/traverser-shexj", - "link": true - }, - "node_modules/@ldo/type-traverser": { - "resolved": "packages/type-traverser", - "link": true - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "license": "MIT" - }, - "node_modules/@lerna/child-process": { - "version": "7.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.0", - "execa": "^5.0.0", - "strong-log-transformer": "^2.1.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@lerna/create": { - "version": "7.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@lerna/child-process": "7.4.2", - "@npmcli/run-script": "6.0.2", - "@nx/devkit": ">=16.5.1 < 17", - "@octokit/plugin-enterprise-rest": "6.0.1", - "@octokit/rest": "19.0.11", - "byte-size": "8.1.1", - "chalk": "4.1.0", - "clone-deep": "4.0.1", - "cmd-shim": "6.0.1", - "columnify": "1.6.0", - "conventional-changelog-core": "5.0.1", - "conventional-recommended-bump": "7.0.1", - "cosmiconfig": "^8.2.0", - "dedent": "0.7.0", - "execa": "5.0.0", - "fs-extra": "^11.1.1", - "get-stream": "6.0.0", - "git-url-parse": "13.1.0", - "glob-parent": "5.1.2", - "globby": "11.1.0", - "graceful-fs": "4.2.11", - "has-unicode": "2.0.1", - "ini": "^1.3.8", - "init-package-json": "5.0.0", - "inquirer": "^8.2.4", - "is-ci": "3.0.1", - "is-stream": "2.0.0", - "js-yaml": "4.1.0", - "libnpmpublish": "7.3.0", - "load-json-file": "6.2.0", - "lodash": "^4.17.21", - "make-dir": "4.0.0", - "minimatch": "3.0.5", - "multimatch": "5.0.0", - "node-fetch": "2.6.7", - "npm-package-arg": "8.1.1", - "npm-packlist": "5.1.1", - "npm-registry-fetch": "^14.0.5", - "npmlog": "^6.0.2", - "nx": ">=16.5.1 < 17", - "p-map": "4.0.0", - "p-map-series": "2.1.0", - "p-queue": "6.6.2", - "p-reduce": "^2.1.0", - "pacote": "^15.2.0", - "pify": "5.0.0", - "read-cmd-shim": "4.0.0", - "read-package-json": "6.0.4", - "resolve-from": "5.0.0", - "rimraf": "^4.4.1", - "semver": "^7.3.4", - "signal-exit": "3.0.7", - "slash": "^3.0.0", - "ssri": "^9.0.1", - "strong-log-transformer": "2.1.0", - "tar": "6.1.11", - "temp-dir": "1.0.0", - "upath": "2.0.1", - "uuid": "^9.0.0", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "5.0.0", - "write-file-atomic": "5.0.1", - "write-pkg": "4.0.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@lerna/create/node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@lerna/create/node_modules/chalk": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@lerna/create/node_modules/glob": { - "version": "9.3.5", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@lerna/create/node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@lerna/create/node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@lerna/create/node_modules/glob/node_modules/minimatch": { - "version": "8.0.4", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@lerna/create/node_modules/minimatch": { - "version": "3.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@lerna/create/node_modules/minipass": { - "version": "4.2.8", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/create/node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/create/node_modules/rimraf": { - "version": "4.4.1", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^9.2.0" - }, - "bin": { - "rimraf": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "license": "MIT", - "dependencies": { - "eslint-scope": "5.1.1" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope": { - "version": "5.1.1", - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git": { - "version": "4.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", - "proc-log": "^3.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.3", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "npm-bundled": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "bin": { - "installed-package-contents": "lib/index.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/installed-package-contents/node_modules/npm-bundled": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/installed-package-contents/node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/node-gyp": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "which": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "6.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@nrwl/devkit": { - "version": "16.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@nx/devkit": "16.10.0" - } - }, - "node_modules/@nrwl/tao": { - "version": "16.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "nx": "16.10.0", - "tslib": "^2.3.0" - }, - "bin": { - "tao": "index.js" - } - }, - "node_modules/@nx/devkit": { - "version": "16.10.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@nrwl/devkit": "16.10.0", - "ejs": "^3.1.7", - "enquirer": "~2.3.6", - "ignore": "^5.0.4", - "semver": "7.5.3", - "tmp": "~0.2.1", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "nx": ">= 15 <= 17" - } - }, - "node_modules/@nx/devkit/node_modules/semver": { - "version": "7.5.3", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@nx/nx-darwin-arm64": { - "version": "16.10.0", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@octokit/auth-token": { - "version": "3.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/core": { - "version": "4.2.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/auth-token": "^3.0.0", - "@octokit/graphql": "^5.0.0", - "@octokit/request": "^6.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/endpoint": { - "version": "7.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/graphql": { - "version": "5.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/request": "^6.0.0", - "@octokit/types": "^9.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/openapi-types": { - "version": "18.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@octokit/plugin-enterprise-rest": { - "version": "6.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "6.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/tsconfig": "^1.0.2", - "@octokit/types": "^9.2.3" - }, - "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "@octokit/core": ">=4" - } - }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@octokit/core": ">=3" - } - }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "7.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/types": "^10.0.0" - }, - "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "@octokit/core": ">=3" - } - }, - "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { - "version": "10.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^18.0.0" - } - }, - "node_modules/@octokit/request": { - "version": "6.2.8", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/endpoint": "^7.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/request-error": { - "version": "3.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/types": "^9.0.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/rest": { - "version": "19.0.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/core": "^4.2.1", - "@octokit/plugin-paginate-rest": "^6.1.2", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^7.1.2" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@octokit/tsconfig": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@octokit/types": { - "version": "9.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^18.0.0" - } - }, - "node_modules/@parcel/watcher": { - "version": "2.0.4", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "node-addon-api": "^3.2.1", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@pkgr/core": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, - "node_modules/@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.5.11", - "license": "MIT", - "dependencies": { - "ansi-html-community": "^0.0.8", - "common-path-prefix": "^3.0.0", - "core-js-pure": "^3.23.3", - "error-stack-parser": "^2.0.6", - "find-up": "^5.0.0", - "html-entities": "^2.1.0", - "loader-utils": "^2.0.4", - "schema-utils": "^3.0.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">= 10.13" - }, - "peerDependencies": { - "@types/webpack": "4.x || 5.x", - "react-refresh": ">=0.10.0 <1.0.0", - "sockjs-client": "^1.4.0", - "type-fest": ">=0.17.0 <5.0.0", - "webpack": ">=4.43.0 <6.0.0", - "webpack-dev-server": "3.x || 4.x", - "webpack-hot-middleware": "2.x", - "webpack-plugin-serve": "0.x || 1.x" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "sockjs-client": { - "optional": true - }, - "type-fest": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - }, - "webpack-hot-middleware": { - "optional": true - }, - "webpack-plugin-serve": { - "optional": true - } - } - }, - "node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/source-map": { - "version": "0.7.4", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@rdfjs/data-model": { - "version": "1.3.4", - "license": "MIT", - "dependencies": { - "@rdfjs/types": ">=1.0.1" - }, - "bin": { - "rdfjs-data-model-test": "bin/test.js" - } - }, - "node_modules/@rdfjs/dataset": { - "version": "1.1.1", - "license": "MIT", - "dependencies": { - "@rdfjs/data-model": "^1.2.0" - }, - "bin": { - "rdfjs-dataset-test": "bin/test.js" - } - }, - "node_modules/@rdfjs/namespace": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/data-model": "^1.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@rdfjs/term-set": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/to-ntriples": "^2.0.0" - } - }, - "node_modules/@rdfjs/to-ntriples": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@rdfjs/types": { - "version": "1.1.0", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@remix-run/router": { - "version": "1.15.2", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@rollup/plugin-babel": { - "version": "5.3.1", - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@rollup/pluginutils": "^3.1.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "@types/babel__core": "^7.1.9", - "rollup": "^1.20.0||^2.0.0" - }, - "peerDependenciesMeta": { - "@types/babel__core": { - "optional": true - } - } - }, - "node_modules/@rollup/plugin-node-resolve": { - "version": "11.2.1", - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "@types/resolve": "1.17.1", - "builtin-modules": "^3.1.0", - "deepmerge": "^4.2.2", - "is-module": "^1.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/@rollup/plugin-node-resolve/node_modules/resolve": { - "version": "1.22.8", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@rollup/plugin-replace": { - "version": "2.4.2", - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "magic-string": "^0.25.7" - }, - "peerDependencies": { - "rollup": "^1.20.0 || ^2.0.0" - } - }, - "node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "license": "MIT", - "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/@rollup/pluginutils/node_modules/@types/estree": { - "version": "0.0.39", - "license": "MIT" - }, - "node_modules/@rubensworks/saxes": { - "version": "6.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.12" - } - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.7.2", - "license": "MIT" - }, - "node_modules/@shexjs/parser": { - "version": "1.0.0-alpha.28", - "license": "MIT", - "dependencies": { - "@shexjs/util": "^1.0.0-alpha.28", - "@ts-jison/parser": "^0.4.1-alpha.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@shexjs/term": { - "version": "1.0.0-alpha.27", - "license": "MIT", - "dependencies": { - "@types/shexj": "^2.1.6", - "rdf-data-factory": "^1.1.2", - "relativize-url": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@shexjs/term/node_modules/@types/shexj": { - "version": "2.1.7", - "license": "MIT" - }, - "node_modules/@shexjs/util": { - "version": "1.0.0-alpha.28", - "license": "MIT", - "dependencies": { - "@shexjs/term": "^1.0.0-alpha.27", - "@shexjs/visitor": "^1.0.0-alpha.27", - "@types/shexj": "^2.1.6", - "hierarchy-closure": "^1.2.2", - "sync-request": "^6.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@shexjs/util/node_modules/@types/shexj": { - "version": "2.1.7", - "license": "MIT" - }, - "node_modules/@shexjs/visitor": { - "version": "1.0.0-alpha.27", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@sideway/address": { - "version": "4.1.5", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@sigstore/bundle": { - "version": "1.1.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign": { - "version": "1.0.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "make-fetch-happen": "^11.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/@npmcli/fs": { - "version": "3.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/cacache": { - "version": "17.1.4", - "dev": true, - "license": "ISC", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/cacache/node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@sigstore/sign/node_modules/fs-minipass": { - "version": "3.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/fs-minipass/node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@sigstore/sign/node_modules/glob": { - "version": "10.3.10", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "7.18.3", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "11.1.1", - "dev": true, - "license": "ISC", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/minipass": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=8" - } - }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch": { - "version": "3.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@sigstore/sign/node_modules/ssri": { - "version": "10.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@sigstore/sign/node_modules/unique-filename": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/unique-slug": { - "version": "4.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/tuf": { - "version": "1.0.3", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0", - "tuf-js": "^1.1.7" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "dev": true, - "license": "MIT" - }, - "node_modules/@sindresorhus/is": { - "version": "5.6.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "license": "BSD-3-Clause", - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "license": "BSD-3-Clause", - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@smessie/readable-web-to-node-stream": { - "version": "3.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "process": "^0.11.10", - "readable-stream": "^4.5.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/@smessie/readable-web-to-node-stream/node_modules/buffer": { - "version": "6.0.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@smessie/readable-web-to-node-stream/node_modules/readable-stream": { - "version": "4.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@solid-notifications/discovery": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@solid-notifications/discovery/-/discovery-0.1.2.tgz", - "integrity": "sha512-jkqV+Ceknw2XE0Vl/4O2BBFnkCZQhNDVt6B9nzbVD4T3aNhMlK/gZS6oNHqa23obgFNCtgFBmeeRKiN1/v8lcw==", - "license": "MIT", - "dependencies": { - "@janeirodigital/interop-utils": "^1.0.0-rc.24", - "n3": "^1.17.2" - } - }, - "node_modules/@solid-notifications/subscription": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@solid-notifications/subscription/-/subscription-0.1.2.tgz", - "integrity": "sha512-XnnqNsLOIdUAzB11aROzfRiJLHJjTOaHMSrnn3teQRtE0BwpbnAJtzGG/m3JNUR+QqyjKkB3jfibxJjzvI/HQg==", - "license": "MIT", - "dependencies": { - "@janeirodigital/interop-utils": "^1.0.0-rc.24", - "@solid-notifications/discovery": "^0.1.2", - "n3": "^1.17.2" - } - }, - "node_modules/@solid-notifications/types": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@solid-notifications/types/-/types-0.1.2.tgz", - "integrity": "sha512-0SP6XmOjFhqt/m4FFXnYh6slSiXMoheO3UpU7POSDStLSb6tLVAQLiy0hBKvNyGBLlftRObHWoBWlt2X/LhVRg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@solid/access-control-policy": { - "version": "0.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@solid/access-token-verifier": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "jose": "^5.1.3", - "lru-cache": "^6.0.0", - "n3": "^1.17.1", - "node-fetch": "^2.7.0", - "ts-guards": "^0.5.1" - } - }, - "node_modules/@solid/access-token-verifier/node_modules/jose": { - "version": "5.2.2", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/panva" - } - }, - "node_modules/@solid/access-token-verifier/node_modules/node-fetch": { - "version": "2.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@solid/community-server": { - "version": "7.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@comunica/context-entries": "^2.8.2", - "@comunica/query-sparql": "^2.9.0", - "@rdfjs/types": "^1.1.0", - "@solid/access-control-policy": "^0.1.3", - "@solid/access-token-verifier": "^2.1.0", - "@types/async-lock": "^1.4.0", - "@types/bcryptjs": "^2.4.4", - "@types/cookie": "^0.5.2", - "@types/cors": "^2.8.14", - "@types/ejs": "^3.1.3", - "@types/end-of-stream": "^1.4.2", - "@types/fs-extra": "^11.0.2", - "@types/lodash.orderby": "^4.6.7", - "@types/mime-types": "^2.1.2", - "@types/n3": "^1.16.3", - "@types/node": "^18.18.4", - "@types/nodemailer": "^6.4.11", - "@types/oidc-provider": "^8.4.0", - "@types/proper-lockfile": "^4.1.2", - "@types/pump": "^1.1.1", - "@types/punycode": "^2.1.0", - "@types/rdf-validate-shacl": "^0.4.4", - "@types/sparqljs": "^3.1.6", - "@types/url-join": "^4.0.1", - "@types/uuid": "^9.0.5", - "@types/ws": "^8.5.7", - "@types/yargs": "^17.0.28", - "arrayify-stream": "^2.0.1", - "async-lock": "^1.4.0", - "bcryptjs": "^2.4.3", - "componentsjs": "^5.4.2", - "cookie": "^0.7.0", - "cors": "^2.8.5", - "cross-fetch": "^4.0.0", - "ejs": "^3.1.9", - "end-of-stream": "^1.4.4", - "escape-string-regexp": "^4.0.0", - "fetch-sparql-endpoint": "^4.1.0", - "fs-extra": "^11.1.1", - "handlebars": "^4.7.8", - "ioredis": "^5.3.2", - "iso8601-duration": "^2.1.1", - "jose": "^4.15.2", - "jsonld-context-parser": "^2.3.2", - "lodash.orderby": "^4.6.0", - "marked": "^9.1.0", - "mime-types": "^2.1.35", - "n3": "^1.17.1", - "nodemailer": "^6.9.9", - "oidc-provider": "^8.4.0", - "proper-lockfile": "^4.1.2", - "pump": "^3.0.0", - "punycode": "^2.3.0", - "rdf-dereference": "^2.2.0", - "rdf-parse": "^2.3.2", - "rdf-serialize": "^2.2.2", - "rdf-string": "^1.6.3", - "rdf-terms": "^1.11.0", - "rdf-validate-shacl": "^0.4.5", - "sparqlalgebrajs": "^4.3.0", - "sparqljs": "^3.7.1", - "url-join": "^4.0.1", - "uuid": "^9.0.1", - "winston": "^3.11.0", - "winston-transport": "^4.5.0", - "ws": "^8.14.2", - "yargs": "^17.7.2", - "yup": "^1.3.2" - }, - "bin": { - "community-solid-server": "bin/server.js" - }, - "engines": { - "node": ">=18.0" - } - }, - "node_modules/@solid/community-server/node_modules/@types/node": { - "version": "18.19.56", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@solid/community-server/node_modules/cookie": { - "version": "0.7.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@solid/community-server/node_modules/cross-fetch": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "node-fetch": "^2.6.12" - } - }, - "node_modules/@solid/community-server/node_modules/marked": { - "version": "9.1.6", - "dev": true, - "license": "MIT", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 16" - } - }, - "node_modules/@solid/community-server/node_modules/node-fetch": { - "version": "2.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@solid/community-server/node_modules/yargs": { - "version": "17.7.2", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@solid/community-server/node_modules/yargs-parser": { - "version": "21.1.1", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/@surma/rollup-plugin-off-main-thread": { - "version": "2.2.3", - "license": "Apache-2.0", - "dependencies": { - "ejs": "^3.1.6", - "json5": "^2.2.0", - "magic-string": "^0.25.0", - "string.prototype.matchall": "^4.0.6" - } - }, - "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "5.4.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { - "version": "5.4.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "5.0.1", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "5.0.1", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "5.4.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "5.4.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "5.4.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "5.5.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/babel-preset": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0", - "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0", - "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1", - "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0", - "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0", - "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0", - "@svgr/babel-plugin-transform-svg-component": "^5.5.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/core": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "@svgr/plugin-jsx": "^5.5.0", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/core/node_modules/camelcase": { - "version": "6.3.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@svgr/core/node_modules/cosmiconfig": { - "version": "7.1.0", - "license": "MIT", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.12.6" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/plugin-jsx": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.12.3", - "@svgr/babel-preset": "^5.5.0", - "@svgr/hast-util-to-babel-ast": "^5.5.0", - "svg-parser": "^2.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/plugin-svgo": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "cosmiconfig": "^7.0.0", - "deepmerge": "^4.2.2", - "svgo": "^1.2.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/plugin-svgo/node_modules/cosmiconfig": { - "version": "7.1.0", - "license": "MIT", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@svgr/webpack": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/plugin-transform-react-constant-elements": "^7.12.1", - "@babel/preset-env": "^7.12.1", - "@babel/preset-react": "^7.12.5", - "@svgr/core": "^5.5.0", - "@svgr/plugin-jsx": "^5.5.0", - "@svgr/plugin-svgo": "^5.5.0", - "loader-utils": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "defer-to-connect": "^2.0.1" - }, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/@testing-library/dom": { - "version": "9.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.1.3", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@testing-library/dom/node_modules/ansi-styles": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@testing-library/dom/node_modules/pretty-format": { - "version": "27.5.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@testing-library/dom/node_modules/react-is": { - "version": "17.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@testing-library/react": { - "version": "14.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^9.0.0", - "@types/react-dom": "^18.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "license": "ISC", - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@ts-jison/common": { - "version": "0.4.1-alpha.1", - "license": "MIT" - }, - "node_modules/@ts-jison/lexer": { - "version": "0.4.1-alpha.1", - "license": "MIT", - "dependencies": { - "@ts-jison/common": "^0.4.1-alpha.1" - } - }, - "node_modules/@ts-jison/parser": { - "version": "0.4.1-alpha.1", - "license": "MIT", - "dependencies": { - "@ts-jison/common": "^0.4.1-alpha.1", - "@ts-jison/lexer": "^0.4.1-alpha.1" - } - }, - "node_modules/@ts-morph/common": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.25.0.tgz", - "integrity": "sha512-kMnZz+vGGHi4GoHnLmMhGNjm44kGtKUXGnOvrKmMwAuvNjM/PgKVGfUnL7IDvK7Jb2QQ82jq3Zmp04Gy+r3Dkg==", - "license": "MIT", - "dependencies": { - "minimatch": "^9.0.4", - "path-browserify": "^1.0.1", - "tinyglobby": "^0.2.9" - } - }, - "node_modules/@ts-morph/common/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "devOptional": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "devOptional": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "devOptional": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "devOptional": true, - "license": "MIT" - }, - "node_modules/@tufjs/canonical-json": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@tufjs/models": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@types/accepts": { - "version": "1.3.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/aria-query": { - "version": "5.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/async-lock": { - "version": "1.4.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/bcryptjs": { - "version": "2.4.6", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/body-parser": { - "version": "1.19.5", - "license": "MIT", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.13", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/child-process-promise": { - "version": "2.2.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/clownface": { - "version": "2.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": ">=1.0.0", - "@types/rdfjs__environment": "*" - } - }, - "node_modules/@types/concat-stream": { - "version": "1.6.1", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.38", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.4", - "license": "MIT", - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/content-disposition": { - "version": "0.5.8", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/cookie": { - "version": "0.5.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/cookies": { - "version": "0.9.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/connect": "*", - "@types/express": "*", - "@types/keygrip": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cors": { - "version": "2.8.17", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/ejs": { - "version": "3.1.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.56.5", - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "license": "MIT" - }, - "node_modules/@types/express": { - "version": "4.17.21", - "license": "MIT", - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.43", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "node_modules/@types/form-data": { - "version": "0.0.33", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/fs-extra": { - "version": "11.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/jsonfile": "*", - "@types/node": "*" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/html-minifier-terser": { - "version": "6.1.0", - "license": "MIT" - }, - "node_modules/@types/http-assert": { - "version": "1.5.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/http-errors": { - "version": "2.0.4", - "license": "MIT" - }, - "node_modules/@types/http-link-header": { - "version": "1.0.5", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.14", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.6", - "license": "MIT" - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "27.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-matcher-utils": "^27.0.0", - "pretty-format": "^27.0.0" - } - }, - "node_modules/@types/jest/node_modules/ansi-styles": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@types/jest/node_modules/pretty-format": { - "version": "27.5.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@types/jest/node_modules/react-is": { - "version": "17.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "license": "MIT" - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "license": "MIT" - }, - "node_modules/@types/jsonfile": { - "version": "6.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jsonld": { - "version": "1.5.15", - "resolved": "https://registry.npmjs.org/@types/jsonld/-/jsonld-1.5.15.tgz", - "integrity": "sha512-PlAFPZjL+AuGYmwlqwKEL0IMP8M8RexH0NIPGfCVWSQ041H2rR/8OlyZSD7KsCVoN8vCfWdtWDBxX8yBVP+xow==", - "license": "MIT" - }, - "node_modules/@types/keygrip": { - "version": "1.0.6", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/koa": { - "version": "2.15.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/accepts": "*", - "@types/content-disposition": "*", - "@types/cookies": "*", - "@types/http-assert": "*", - "@types/http-errors": "*", - "@types/keygrip": "*", - "@types/koa-compose": "*", - "@types/node": "*" - } - }, - "node_modules/@types/koa-compose": { - "version": "3.2.8", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/koa": "*" - } - }, - "node_modules/@types/lodash": { - "version": "4.14.202", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/lodash.orderby": { - "version": "4.6.9", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/lodash": "*" - } - }, - "node_modules/@types/mime": { - "version": "1.3.5", - "license": "MIT" - }, - "node_modules/@types/mime-types": { - "version": "2.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimatch": { - "version": "3.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/n3": { - "version": "1.16.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "^1.1.0", - "@types/node": "*" - } - }, - "node_modules/@types/node": { - "version": "20.11.20", - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/node-forge": { - "version": "1.3.11", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/nodemailer": { - "version": "6.4.14", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/oidc-provider": { - "version": "8.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/koa": "*", - "@types/node": "*" - } - }, - "node_modules/@types/parse-json": { - "version": "4.0.2", - "license": "MIT" - }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "license": "MIT" - }, - "node_modules/@types/prompts": { - "version": "2.4.9", - "resolved": "https://registry.npmjs.org/@types/prompts/-/prompts-2.4.9.tgz", - "integrity": "sha512-qTxFi6Buiu8+50/+3DGIWLHM6QuWsEKugJnnP6iv2Mc4ncxE4A/OJkjuVOA+5X0X1S/nq5VJRa8Lu+nwcvbrKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "kleur": "^3.0.3" - } - }, - "node_modules/@types/prop-types": { - "version": "15.7.11", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/proper-lockfile": { - "version": "4.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/retry": "*" - } - }, - "node_modules/@types/pump": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/punycode": { - "version": "2.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/q": { - "version": "1.5.8", - "license": "MIT" - }, - "node_modules/@types/qs": { - "version": "6.9.11", - "license": "MIT" - }, - "node_modules/@types/range-parser": { - "version": "1.2.7", - "license": "MIT" - }, - "node_modules/@types/rdf-validate-shacl": { - "version": "0.4.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@types/clownface": "*", - "@types/node": "*" - } - }, - "node_modules/@types/rdfjs__dataset": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "rdf-js": "^4.0.2" - } - }, - "node_modules/@types/rdfjs__environment": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@types/node": "*" - } - }, - "node_modules/@types/react": { - "version": "18.2.58", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.2.19", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/readable-stream": { - "version": "2.3.15", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "safe-buffer": "~5.1.1" - } - }, - "node_modules/@types/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/@types/resolve": { - "version": "1.17.1", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/retry": { - "version": "0.12.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/scheduler": { - "version": "0.16.8", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/semver": { - "version": "7.5.7", - "license": "MIT" - }, - "node_modules/@types/send": { - "version": "0.17.4", - "license": "MIT", - "dependencies": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "node_modules/@types/serve-index": { - "version": "1.9.4", - "license": "MIT", - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.5", - "license": "MIT", - "dependencies": { - "@types/http-errors": "*", - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/shexj": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@types/shexj/-/shexj-2.1.4.tgz", - "integrity": "sha512-/dcF8vT/CHseZxNTcWR+otf6018PACgHiKFukPYsxQCRppGZq0UcALMedZUUnj7IM4WOesFoERwJBhEw44d/VQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/sockjs": { - "version": "0.3.36", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/spark-md5": { - "version": "3.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/sparqljs": { - "version": "3.1.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@rdfjs/types": ">=1.0.0" - } - }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "license": "MIT" - }, - "node_modules/@types/triple-beam": { - "version": "1.3.5", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/trusted-types": { - "version": "2.0.7", - "license": "MIT" - }, - "node_modules/@types/uritemplate": { - "version": "0.3.6", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/url-join": { - "version": "4.0.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/uuid": { - "version": "9.0.8", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/ws": { - "version": "8.5.10", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yargs": { - "version": "17.0.32", - "license": "MIT", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.3", - "license": "MIT" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@typescript-eslint/utils": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-scope": { - "version": "5.1.1", - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@typescript-eslint/experimental-utils/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "license": "ISC" - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "license": "MIT" - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "license": "MIT" - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "license": "MIT" - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "license": "MIT" - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "license": "Apache-2.0", - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "license": "MIT" - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "license": "MIT", - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "license": "BSD-3-Clause" - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "license": "Apache-2.0" - }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/@yarnpkg/parsers": { - "version": "3.0.0-rc.46", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "js-yaml": "^3.10.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=14.15.0" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/argparse": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": { - "version": "1.0.3", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@zkochan/js-yaml": { - "version": "0.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/abab": { - "version": "2.0.6", - "license": "BSD-3-Clause" - }, - "node_modules/abbrev": { - "version": "1.1.1", - "dev": true, - "license": "ISC" - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, - "node_modules/accepts": { - "version": "1.3.8", - "license": "MIT", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.11.3", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "license": "MIT", - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", - "license": "MIT", - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/add-stream": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/address": { - "version": "1.2.2", - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/adler-32": { - "version": "1.3.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "license": "MIT", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "engines": [ - "node >= 0.8.0" - ], - "license": "Apache-2.0", - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-sequence-parser": { - "version": "1.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/arg": { - "version": "5.0.2", - "license": "MIT" - }, - "node_modules/argparse": { - "version": "2.0.1", - "license": "Python-2.0" - }, - "node_modules/aria-query": { - "version": "5.1.3", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-differ": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "license": "MIT" - }, - "node_modules/array-ify": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/array-includes": { - "version": "3.1.7", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.filter": { - "version": "1.0.3", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.4", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.reduce": { - "version": "1.0.6", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.3", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.1.0", - "es-shim-unscopables": "^1.0.2" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arrayify-stream": { - "version": "2.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/arrify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "license": "MIT" - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "license": "MIT" - }, - "node_modules/async": { - "version": "3.2.5", - "license": "MIT" - }, - "node_modules/async-lock": { - "version": "1.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/asynciterator": { - "version": "3.8.1", - "dev": true, - "license": "MIT" - }, - "node_modules/asynciterator.prototype": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - } - }, - "node_modules/asyncjoin": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "asynciterator": "^3.6.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.18", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001591", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.7.0", - "license": "MPL-2.0", - "engines": { - "node": ">=4" - } - }, - "node_modules/axios": { - "version": "1.6.7", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.15.4", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/axobject-query": { - "version": "3.2.1", - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/babel-jest": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "license": "BSD-3-Clause", + "dependencies": { + "esm": "^3.2.22", + "ky": "^0.25.1", + "ky-universal": "^0.8.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "node": ">=10.0.0" } }, - "node_modules/babel-loader": { - "version": "8.3.0", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "dev": true, "license": "MIT", "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">= 8.9" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/babel-loader/node_modules/make-dir": { - "version": "3.1.0", + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "dev": true, "license": "MIT", - "dependencies": { - "semver": "^6.0.0" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/babel-loader/node_modules/schema-utils": { - "version": "2.7.1", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">= 8.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://opencollective.com/eslint" } }, - "node_modules/babel-loader/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "license": "BSD-3-Clause", + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", + "node_modules/@eslint/js": { + "version": "8.57.0", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/babel-plugin-macros": { - "version": "3.1.0", - "license": "MIT", + "node_modules/@gar/promisify": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">=10", - "npm": ">=6" + "@hapi/hoek": "^9.0.0" } }, - "node_modules/babel-plugin-macros/node_modules/cosmiconfig": { - "version": "7.1.0", - "license": "MIT", + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">=10" + "node": ">=10.10.0" } }, - "node_modules/babel-plugin-macros/node_modules/resolve": { - "version": "1.22.8", + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/babel-plugin-named-asset-import": { - "version": "0.3.8", - "license": "MIT", - "peerDependencies": { - "@babel/core": "^7.1.0" - } + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.2", + "dev": true, + "license": "BSD-3-Clause" }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.11", - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.6.2", - "semver": "^6.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "node_modules/@hutson/parse-repository-url": { + "version": "3.0.2", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=6.9.0" } }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.2", - "license": "MIT", + "node_modules/@inrupt/oidc-client": { + "version": "1.11.6", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "acorn": "^7.4.1", + "base64-js": "^1.5.1", + "core-js": "^3.8.3", + "crypto-js": "^4.0.0", + "serialize-javascript": "^4.0.0" } }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/resolve": { - "version": "1.22.8", + "node_modules/@inrupt/oidc-client-ext": { + "version": "2.0.0", "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "@inrupt/oidc-client": "^1.11.6", + "@inrupt/solid-client-authn-core": "^2.0.0", + "jose": "^5.1.3", + "uuid": "^9.0.1" } }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.9.0", + "node_modules/@inrupt/oidc-client-ext/node_modules/jose": { + "version": "5.2.2", "license": "MIT", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.5.0", - "core-js-compat": "^3.34.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "funding": { + "url": "https://github.com/sponsors/panva" } }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.5.5", + "node_modules/@inrupt/oidc-client/node_modules/acorn": { + "version": "7.4.1", "license": "MIT", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.5.0" + "bin": { + "acorn": "bin/acorn" }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "engines": { + "node": ">=0.4.0" } }, - "node_modules/babel-plugin-transform-react-remove-prop-types": { - "version": "0.4.24", - "license": "MIT" - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", + "node_modules/@inrupt/solid-client-authn-browser": { + "version": "2.0.0", "license": "MIT", "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@inrupt/oidc-client-ext": "^2.0.0", + "@inrupt/solid-client-authn-core": "^2.0.0", + "events": "^3.3.0", + "jose": "^5.1.3", + "uuid": "^9.0.1" } }, - "node_modules/babel-preset-jest": { - "version": "27.5.1", + "node_modules/@inrupt/solid-client-authn-browser/node_modules/jose": { + "version": "5.2.2", "license": "MIT", - "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/sponsors/panva" } }, - "node_modules/babel-preset-react-app": { - "version": "10.0.1", + "node_modules/@inrupt/solid-client-authn-core": { + "version": "2.2.6", "license": "MIT", "dependencies": { - "@babel/core": "^7.16.0", - "@babel/plugin-proposal-class-properties": "^7.16.0", - "@babel/plugin-proposal-decorators": "^7.16.4", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", - "@babel/plugin-proposal-numeric-separator": "^7.16.0", - "@babel/plugin-proposal-optional-chaining": "^7.16.0", - "@babel/plugin-proposal-private-methods": "^7.16.0", - "@babel/plugin-transform-flow-strip-types": "^7.16.0", - "@babel/plugin-transform-react-display-name": "^7.16.0", - "@babel/plugin-transform-runtime": "^7.16.4", - "@babel/preset-env": "^7.16.4", - "@babel/preset-react": "^7.16.0", - "@babel/preset-typescript": "^7.16.0", - "@babel/runtime": "^7.16.3", - "babel-plugin-macros": "^3.1.0", - "babel-plugin-transform-react-remove-prop-types": "^0.4.24" + "events": "^3.3.0", + "jose": "^5.1.3", + "uuid": "^10.0.0" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || ^22.0.0" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "license": "MIT" + "node_modules/@inrupt/solid-client-authn-core/node_modules/jose": { + "version": "5.9.4", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/panva" + } }, - "node_modules/base64-js": { - "version": "1.5.1", + "node_modules/@inrupt/solid-client-authn-core/node_modules/uuid": { + "version": "10.0.0", "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" ], - "license": "MIT" - }, - "node_modules/batch": { - "version": "0.6.1", - "license": "MIT" + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } }, - "node_modules/bcryptjs": { - "version": "2.4.3", + "node_modules/@ioredis/commands": { + "version": "1.2.0", "dev": true, "license": "MIT" }, - "node_modules/before-after-hook": { - "version": "2.2.3", + "node_modules/@isaacs/cliui": { + "version": "8.0.2", "dev": true, - "license": "Apache-2.0" - }, - "node_modules/bfj": { - "version": "7.1.0", - "license": "MIT", + "license": "ISC", "dependencies": { - "bluebird": "^3.7.2", - "check-types": "^11.2.3", - "hoopy": "^0.1.4", - "jsonpath": "^1.1.1", - "tryer": "^1.0.1" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" }, "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/big.js": { - "version": "5.2.2", - "license": "MIT", - "engines": { - "node": "*" + "node": ">=12" } }, - "node_modules/bignumber.js": { - "version": "9.1.2", + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", "dev": true, "license": "MIT", "engines": { - "node": "*" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/bl": { - "version": "4.1.0", + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", "dev": true, - "license": "MIT", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/bluebird": { - "version": "3.7.2", "license": "MIT" }, - "node_modules/body-parser": { - "version": "1.20.2", + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "dev": true, "license": "MIT", "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, "license": "MIT", "dependencies": { - "ms": "2.0.0" + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "side-channel": "^1.0.4" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=0.6" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/bonjour-service": { - "version": "1.2.1", - "license": "MIT", + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/boolbase": { - "version": "1.0.0", - "license": "ISC" - }, - "node_modules/brace-expansion": { - "version": "2.0.1", + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "sprintf-js": "~1.0.2" } }, - "node_modules/braces": { - "version": "3.0.2", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "dev": true, "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "license": "BSD-2-Clause" - }, - "node_modules/browserslist": { - "version": "4.24.2", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "dev": true, "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/bs-logger": { - "version": "0.2.6", + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", "dev": true, "license": "MIT", "dependencies": { - "fast-json-stable-stringify": "2.x" + "p-locate": "^4.1.0" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "license": "Apache-2.0", - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "node": ">=8" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "license": "MIT" - }, - "node_modules/builtin-modules": { - "version": "3.3.0", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, "engines": { "node": ">=6" }, @@ -10492,2662 +4213,2594 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/builtins": { - "version": "5.0.1", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", "dev": true, "license": "MIT", "dependencies": { - "semver": "^7.0.0" + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/byte-size": { - "version": "8.1.1", + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", "dev": true, "license": "MIT", "engines": { - "node": ">=12.17" + "node": ">=8" } }, - "node_modules/bytes": { - "version": "3.1.2", + "node_modules/@istanbuljs/load-nyc-config/node_modules/sprintf-js": { + "version": "1.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/cacache": { - "version": "16.1.3", - "dev": true, - "license": "ISC", + "node_modules/@janeirodigital/interop-utils": { + "version": "1.0.0-rc.24", + "resolved": "https://registry.npmjs.org/@janeirodigital/interop-utils/-/interop-utils-1.0.0-rc.24.tgz", + "integrity": "sha512-mLOhitq6SyRSZi1DxrzTTgms7Mt0zgx/5KezkkyMBH3OYuYJBGPH6A93iBJl0wA5Ln90A9KnyiC7I/7+IUYhoQ==", + "license": "MIT", "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "http-link-header": "^1.1.1", + "jsonld-streaming-parser": "^3.2.1", + "n3": "^1.17.1" } }, - "node_modules/cacache/node_modules/glob": { - "version": "8.1.0", + "node_modules/@jest/console": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "7.18.3", - "dev": true, - "license": "ISC", "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/cacache/node_modules/minimatch": { - "version": "5.1.6", + "node_modules/@jest/core": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/cache-content-type": { - "version": "1.0.1", + "node_modules/@jest/environment": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "mime-types": "^2.1.18", - "ylru": "^1.2.0" + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" }, "engines": { - "node": ">= 6.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/cacheable-lookup": { - "version": "7.0.0", + "node_modules/@jest/fake-timers": { + "version": "27.5.1", "dev": true, "license": "MIT", + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, "engines": { - "node": ">=14.16" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/cacheable-request": { - "version": "10.2.14", + "node_modules/@jest/globals": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "@types/http-cache-semantics": "^4.0.2", - "get-stream": "^6.0.1", - "http-cache-semantics": "^4.1.1", - "keyv": "^4.5.3", - "mimic-response": "^4.0.0", - "normalize-url": "^8.0.0", - "responselike": "^3.0.0" + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" }, "engines": { - "node": ">=14.16" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "6.0.1", + "node_modules/@jest/reporters": { + "version": "27.5.1", "dev": true, "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cacheable-request/node_modules/normalize-url": { - "version": "8.0.1", - "dev": true, - "license": "MIT", "engines": { - "node": ">=14.16" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/call-bind": { - "version": "1.0.7", + "node_modules/@jest/schemas": { + "version": "29.6.3", + "dev": true, "license": "MIT", "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" + "@sinclair/typebox": "^0.27.8" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "license": "MIT", "engines": { - "node": ">=6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/camel-case": { - "version": "4.1.2", + "node_modules/@jest/source-map": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/camelcase": { - "version": "5.3.1", + "node_modules/@jest/test-result": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/camelcase-css": { - "version": "2.0.1", + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/camelcase-keys": { - "version": "6.2.2", + "node_modules/@jest/transform": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "license": "MIT", + "node_modules/@jest/transform/node_modules/write-file-atomic": { + "version": "3.0.3", + "dev": true, + "license": "ISC", "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001669", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/canonicalize": { - "version": "2.0.0", + "node_modules/@jest/types": { + "version": "27.5.1", "dev": true, - "license": "Apache-2.0" - }, - "node_modules/case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/caseless": { - "version": "0.12.0", - "license": "Apache-2.0" + "node_modules/@jest/types/node_modules/@types/yargs": { + "version": "16.0.9", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } }, - "node_modules/cfb": { - "version": "0.11.1", + "node_modules/@jeswr/prefixcc": { + "version": "1.2.1", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "commander": "" - }, - "bin": { - "cfb": "bin/cfb.njs" + "cross-fetch": "^3.1.5" }, - "engines": { - "node": ">=0.8" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/chalk": { - "version": "4.1.2", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=6.0.0" } }, - "node_modules/char-regex": { - "version": "1.0.2", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "dev": true, "license": "MIT", "engines": { - "node": ">=10" + "node": ">=6.0.0" } }, - "node_modules/chardet": { - "version": "0.7.0", - "dev": true, - "license": "MIT" - }, - "node_modules/check-more-types": { - "version": "2.24.0", + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", "dev": true, "license": "MIT", "engines": { - "node": ">= 0.8.0" + "node": ">=6.0.0" } }, - "node_modules/check-types": { - "version": "11.2.3", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, "license": "MIT" }, - "node_modules/child-process-promise": { - "version": "2.2.1", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "dev": true, "license": "MIT", "dependencies": { - "cross-spawn": "^4.0.2", - "node-version": "^1.0.0", - "promise-polyfill": "^6.0.1" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/child-process-promise/node_modules/cross-spawn": { - "version": "4.0.2", + "node_modules/@koa/cors": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "node_modules/child-process-promise/node_modules/lru-cache": { - "version": "4.1.5", - "license": "ISC", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/child-process-promise/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" + "vary": "^1.1.2" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">= 14.0.0" } }, - "node_modules/child-process-promise/node_modules/yallist": { - "version": "2.1.2", - "license": "ISC" - }, - "node_modules/chokidar": { - "version": "3.6.0", + "node_modules/@koa/router": { + "version": "12.0.2", + "dev": true, "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.3.0" }, "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "node": ">= 12" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } + "node_modules/@koa/router/node_modules/path-to-regexp": { + "version": "6.3.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@ldo/cli": { + "resolved": "packages/cli", + "link": true + }, + "node_modules/@ldo/dataset": { + "resolved": "packages/dataset", + "link": true + }, + "node_modules/@ldo/jsonld-dataset-proxy": { + "resolved": "packages/jsonld-dataset-proxy", + "link": true + }, + "node_modules/@ldo/ldo": { + "resolved": "packages/ldo", + "link": true + }, + "node_modules/@ldo/rdf-utils": { + "resolved": "packages/rdf-utils", + "link": true + }, + "node_modules/@ldo/schema-converter-shex": { + "resolved": "packages/schema-converter-shex", + "link": true }, - "node_modules/chownr": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } + "node_modules/@ldo/solid": { + "resolved": "packages/solid", + "link": true }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "license": "MIT", - "engines": { - "node": ">=6.0" - } + "node_modules/@ldo/solid-react": { + "resolved": "packages/solid-react", + "link": true }, - "node_modules/ci-info": { - "version": "3.9.0", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } + "node_modules/@ldo/solid-type-index": { + "resolved": "packages/solid-type-index", + "link": true }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "license": "MIT" + "node_modules/@ldo/subscribable-dataset": { + "resolved": "packages/subscribable-dataset", + "link": true }, - "node_modules/clean-css": { - "version": "5.3.3", - "license": "MIT", - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 10.0" - } + "node_modules/@ldo/traverser-shexj": { + "resolved": "packages/traverser-shexj", + "link": true }, - "node_modules/clean-stack": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } + "node_modules/@ldo/type-traverser": { + "resolved": "packages/type-traverser", + "link": true }, - "node_modules/cli-cursor": { - "version": "3.1.0", + "node_modules/@lerna/child-process": { + "version": "7.4.2", "dev": true, "license": "MIT", "dependencies": { - "restore-cursor": "^3.1.0" + "chalk": "^4.1.0", + "execa": "^5.0.0", + "strong-log-transformer": "^2.1.0" }, "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "node_modules/cli-spinners": { - "version": "2.6.1", + "node_modules/@lerna/create": { + "version": "7.4.2", "dev": true, "license": "MIT", - "engines": { - "node": ">=6" + "dependencies": { + "@lerna/child-process": "7.4.2", + "@npmcli/run-script": "6.0.2", + "@nx/devkit": ">=16.5.1 < 17", + "@octokit/plugin-enterprise-rest": "6.0.1", + "@octokit/rest": "19.0.11", + "byte-size": "8.1.1", + "chalk": "4.1.0", + "clone-deep": "4.0.1", + "cmd-shim": "6.0.1", + "columnify": "1.6.0", + "conventional-changelog-core": "5.0.1", + "conventional-recommended-bump": "7.0.1", + "cosmiconfig": "^8.2.0", + "dedent": "0.7.0", + "execa": "5.0.0", + "fs-extra": "^11.1.1", + "get-stream": "6.0.0", + "git-url-parse": "13.1.0", + "glob-parent": "5.1.2", + "globby": "11.1.0", + "graceful-fs": "4.2.11", + "has-unicode": "2.0.1", + "ini": "^1.3.8", + "init-package-json": "5.0.0", + "inquirer": "^8.2.4", + "is-ci": "3.0.1", + "is-stream": "2.0.0", + "js-yaml": "4.1.0", + "libnpmpublish": "7.3.0", + "load-json-file": "6.2.0", + "lodash": "^4.17.21", + "make-dir": "4.0.0", + "minimatch": "3.0.5", + "multimatch": "5.0.0", + "node-fetch": "2.6.7", + "npm-package-arg": "8.1.1", + "npm-packlist": "5.1.1", + "npm-registry-fetch": "^14.0.5", + "npmlog": "^6.0.2", + "nx": ">=16.5.1 < 17", + "p-map": "4.0.0", + "p-map-series": "2.1.0", + "p-queue": "6.6.2", + "p-reduce": "^2.1.0", + "pacote": "^15.2.0", + "pify": "5.0.0", + "read-cmd-shim": "4.0.0", + "read-package-json": "6.0.4", + "resolve-from": "5.0.0", + "rimraf": "^4.4.1", + "semver": "^7.3.4", + "signal-exit": "3.0.7", + "slash": "^3.0.0", + "ssri": "^9.0.1", + "strong-log-transformer": "2.1.0", + "tar": "6.1.11", + "temp-dir": "1.0.0", + "upath": "2.0.1", + "uuid": "^9.0.0", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "5.0.0", + "write-file-atomic": "5.0.1", + "write-pkg": "4.0.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "dev": true, - "license": "ISC", "engines": { - "node": ">= 10" + "node": ">=16.0.0" } }, - "node_modules/cliui": { - "version": "8.0.1", + "node_modules/@lerna/create/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/cliui/node_modules/wrap-ansi": { - "version": "7.0.0", + "node_modules/@lerna/create/node_modules/chalk": { + "version": "4.1.0", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/clone-deep": { - "version": "4.0.1", + "node_modules/@lerna/create/node_modules/glob": { + "version": "9.3.5", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" }, "engines": { - "node": ">=6" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/clone-deep/node_modules/is-plain-object": { - "version": "2.0.4", + "node_modules/@lerna/create/node_modules/glob-parent": { + "version": "5.1.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "isobject": "^3.0.1" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/clownface": { - "version": "1.5.1", + "node_modules/@lerna/create/node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", "dev": true, "license": "MIT", "dependencies": { - "@rdfjs/data-model": "^1.1.0", - "@rdfjs/namespace": "^1.0.0" + "balanced-match": "^1.0.0" } }, - "node_modules/cluster-key-slot": { - "version": "1.1.2", + "node_modules/@lerna/create/node_modules/glob/node_modules/minimatch": { + "version": "8.0.4", "dev": true, - "license": "Apache-2.0", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/cmd-shim": { - "version": "6.0.1", + "node_modules/@lerna/create/node_modules/minimatch": { + "version": "3.0.5", "dev": true, "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "*" } }, - "node_modules/co": { - "version": "4.6.0", - "license": "MIT", + "node_modules/@lerna/create/node_modules/minipass": { + "version": "4.2.8", + "dev": true, + "license": "ISC", "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" + "node": ">=8" } }, - "node_modules/coa": { - "version": "2.0.2", + "node_modules/@lerna/create/node_modules/resolve-from": { + "version": "5.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" - }, "engines": { - "node": ">= 4.0" + "node": ">=8" } }, - "node_modules/coa/node_modules/ansi-styles": { - "version": "3.2.1", - "license": "MIT", + "node_modules/@lerna/create/node_modules/rimraf": { + "version": "4.4.1", + "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^1.9.0" + "glob": "^9.2.0" + }, + "bin": { + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": ">=4" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/coa/node_modules/chalk": { - "version": "2.4.2", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/coa/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "dev": true, "license": "MIT", - "dependencies": { - "color-name": "1.1.3" + "engines": { + "node": ">= 8" } }, - "node_modules/coa/node_modules/color-name": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/coa/node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "dev": true, "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, "engines": { - "node": ">=0.8.0" + "node": ">= 8" } }, - "node_modules/coa/node_modules/has-flag": { - "version": "3.0.0", - "license": "MIT", + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, "engines": { - "node": ">=4" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/coa/node_modules/supports-color": { - "version": "5.5.0", - "license": "MIT", + "node_modules/@npmcli/git": { + "version": "4.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^3.0.0" + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/code-block-writer": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-13.0.3.tgz", - "integrity": "sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==", - "license": "MIT" - }, - "node_modules/codepage": { - "version": "1.15.0", + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "license": "Apache-2.0", + "license": "ISC", "engines": { - "node": ">=0.8" + "node": ">=12" } }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "license": "MIT" - }, - "node_modules/color": { - "version": "3.2.1", + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", + "node_modules/@npmcli/installed-package-contents": { + "version": "2.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "lib/index.js" }, "engines": { - "node": ">=7.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/color-name": { - "version": "1.1.4", - "license": "MIT" - }, - "node_modules/color-string": { - "version": "1.9.1", + "node_modules/@npmcli/installed-package-contents/node_modules/npm-bundled": { + "version": "3.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/color-support": { - "version": "1.1.3", + "node_modules/@npmcli/installed-package-contents/node_modules/npm-normalize-package-bin": { + "version": "3.0.1", "dev": true, "license": "ISC", - "bin": { - "color-support": "bin.js" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/color/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/@npmcli/move-file": { + "version": "2.0.1", "dev": true, "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/color/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/colord": { - "version": "2.9.3", - "license": "MIT" - }, - "node_modules/colorette": { - "version": "2.0.20", - "license": "MIT" - }, - "node_modules/colors": { - "version": "0.6.2", + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", "dev": true, + "license": "ISC", "engines": { - "node": ">=0.1.90" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/colors-cli": { - "version": "1.0.33", - "license": "MIT", - "bin": { - "colors": "bin/colors" + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "which": "^3.0.0" }, - "funding": { - "url": "https://jaywcjlove.github.io/#/sponsor" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/colorspace": { - "version": "1.1.4", + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "color": "^3.1.3", - "text-hex": "1.0.x" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/columnify": { - "version": "1.6.0", + "node_modules/@npmcli/run-script": { + "version": "6.0.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.0" + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" }, "engines": { - "node": ">=8.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.1", + "dev": true, + "license": "ISC", "dependencies": { - "delayed-stream": "~1.0.0" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" }, "engines": { - "node": ">= 0.8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/commander": { - "version": "9.5.0", + "node_modules/@nrwl/devkit": { + "version": "16.10.0", + "dev": true, "license": "MIT", - "engines": { - "node": "^12.20.0 || >=14" + "dependencies": { + "@nx/devkit": "16.10.0" } }, - "node_modules/common-path-prefix": { - "version": "3.0.0", - "license": "ISC" - }, - "node_modules/common-tags": { - "version": "1.8.2", + "node_modules/@nrwl/tao": { + "version": "16.10.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=4.0.0" + "dependencies": { + "nx": "16.10.0", + "tslib": "^2.3.0" + }, + "bin": { + "tao": "index.js" } }, - "node_modules/commondir": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/compare-func": { - "version": "2.0.0", + "node_modules/@nx/devkit": { + "version": "16.10.0", "dev": true, "license": "MIT", "dependencies": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" + "@nrwl/devkit": "16.10.0", + "ejs": "^3.1.7", + "enquirer": "~2.3.6", + "ignore": "^5.0.4", + "semver": "7.5.3", + "tmp": "~0.2.1", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "nx": ">= 15 <= 17" } }, - "node_modules/componentsjs": { - "version": "5.5.1", + "node_modules/@nx/devkit/node_modules/semver": { + "version": "7.5.3", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@rdfjs/types": "*", - "@types/minimist": "^1.2.0", - "@types/node": "^18.0.0", - "@types/semver": "^7.3.4", - "jsonld-context-parser": "^2.1.1", - "minimist": "^1.2.0", - "rdf-data-factory": "^1.1.0", - "rdf-object": "^1.14.0", - "rdf-parse": "^2.0.0", - "rdf-quad": "^1.5.0", - "rdf-string": "^1.6.0", - "rdf-terms": "^1.7.0", - "semver": "^7.3.2", - "winston": "^3.3.3" + "lru-cache": "^6.0.0" }, "bin": { - "componentsjs-compile-config": "bin/compile-config.js" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/componentsjs/node_modules/@types/node": { - "version": "18.19.18", + "node_modules/@nx/nx-darwin-arm64": { + "version": "16.10.0", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" } }, - "node_modules/compressible": { - "version": "2.0.18", + "node_modules/@octokit/auth-token": { + "version": "3.0.4", + "dev": true, "license": "MIT", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, "engines": { - "node": ">= 0.6" + "node": ">= 14" } }, - "node_modules/compression": { - "version": "1.7.4", + "node_modules/@octokit/core": { + "version": "4.2.4", + "dev": true, "license": "MIT", "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" + "@octokit/auth-token": "^3.0.0", + "@octokit/graphql": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 14" } }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", + "node_modules/@octokit/endpoint": { + "version": "7.0.6", + "dev": true, "license": "MIT", + "dependencies": { + "@octokit/types": "^9.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, "engines": { - "node": ">= 0.8" + "node": ">= 14" } }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", + "node_modules/@octokit/graphql": { + "version": "5.0.6", + "dev": true, "license": "MIT", "dependencies": { - "ms": "2.0.0" + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.1.2", + "node_modules/@octokit/openapi-types": { + "version": "18.1.1", + "dev": true, "license": "MIT" }, - "node_modules/concat-map": { - "version": "0.0.1", + "node_modules/@octokit/plugin-enterprise-rest": { + "version": "6.0.1", + "dev": true, "license": "MIT" }, - "node_modules/concat-stream": { - "version": "2.0.0", + "node_modules/@octokit/plugin-paginate-rest": { + "version": "6.1.2", "dev": true, - "engines": [ - "node >= 6.0" - ], "license": "MIT", "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" + "@octokit/tsconfig": "^1.0.2", + "@octokit/types": "^9.2.3" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=4" } }, - "node_modules/confusing-browser-globals": { - "version": "1.0.11", - "license": "MIT" - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "dev": true, "license": "MIT", - "engines": { - "node": ">=0.8" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "7.2.3", "dev": true, - "license": "ISC" - }, - "node_modules/content-disposition": { - "version": "0.5.4", "license": "MIT", "dependencies": { - "safe-buffer": "5.2.1" + "@octokit/types": "^10.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/content-type": { - "version": "1.0.5", + "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { + "version": "10.0.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.6" + "dependencies": { + "@octokit/openapi-types": "^18.0.0" } }, - "node_modules/conventional-changelog-angular": { - "version": "7.0.0", + "node_modules/@octokit/request": { + "version": "6.2.8", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "compare-func": "^2.0.0" + "@octokit/endpoint": "^7.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">=16" + "node": ">= 14" } }, - "node_modules/conventional-changelog-core": { - "version": "5.0.1", + "node_modules/@octokit/request-error": { + "version": "3.0.3", "dev": true, "license": "MIT", "dependencies": { - "add-stream": "^1.0.0", - "conventional-changelog-writer": "^6.0.0", - "conventional-commits-parser": "^4.0.0", - "dateformat": "^3.0.3", - "get-pkg-repo": "^4.2.1", - "git-raw-commits": "^3.0.0", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^5.0.0", - "normalize-package-data": "^3.0.3", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0" + "@octokit/types": "^9.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" }, "engines": { - "node": ">=14" + "node": ">= 14" } }, - "node_modules/conventional-changelog-preset-loader": { - "version": "3.0.0", + "node_modules/@octokit/rest": { + "version": "19.0.11", "dev": true, "license": "MIT", + "dependencies": { + "@octokit/core": "^4.2.1", + "@octokit/plugin-paginate-rest": "^6.1.2", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^7.1.2" + }, "engines": { - "node": ">=14" + "node": ">= 14" } }, - "node_modules/conventional-changelog-writer": { - "version": "6.0.1", + "node_modules/@octokit/tsconfig": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@octokit/types": { + "version": "9.3.2", "dev": true, "license": "MIT", "dependencies": { - "conventional-commits-filter": "^3.0.0", - "dateformat": "^3.0.3", - "handlebars": "^4.7.7", - "json-stringify-safe": "^5.0.1", - "meow": "^8.1.2", - "semver": "^7.0.0", - "split": "^1.0.1" + "@octokit/openapi-types": "^18.0.0" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^3.2.1", + "node-gyp-build": "^4.3.0" }, - "bin": { - "conventional-changelog-writer": "cli.js" + "engines": { + "node": ">= 10.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "optional": true, "engines": { "node": ">=14" } }, - "node_modules/conventional-commits-filter": { - "version": "3.0.0", + "node_modules/@pkgr/core": { + "version": "0.1.1", "dev": true, "license": "MIT", - "dependencies": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.1" - }, "engines": { - "node": ">=14" + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" } }, - "node_modules/conventional-commits-parser": { - "version": "4.0.0", - "dev": true, + "node_modules/@rdfjs/data-model": { + "version": "1.3.4", "license": "MIT", "dependencies": { - "is-text-path": "^1.0.1", - "JSONStream": "^1.3.5", - "meow": "^8.1.2", - "split2": "^3.2.2" + "@rdfjs/types": ">=1.0.1" }, "bin": { - "conventional-commits-parser": "cli.js" - }, - "engines": { - "node": ">=14" + "rdfjs-data-model-test": "bin/test.js" } }, - "node_modules/conventional-recommended-bump": { - "version": "7.0.1", - "dev": true, + "node_modules/@rdfjs/dataset": { + "version": "1.1.1", "license": "MIT", "dependencies": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^3.0.0", - "conventional-commits-filter": "^3.0.0", - "conventional-commits-parser": "^4.0.0", - "git-raw-commits": "^3.0.0", - "git-semver-tags": "^5.0.0", - "meow": "^8.1.2" + "@rdfjs/data-model": "^1.2.0" }, "bin": { - "conventional-recommended-bump": "cli.js" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "license": "MIT" - }, - "node_modules/cookie": { - "version": "0.5.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" + "rdfjs-dataset-test": "bin/test.js" } }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "license": "MIT" - }, - "node_modules/cookies": { - "version": "0.9.1", + "node_modules/@rdfjs/namespace": { + "version": "1.1.0", "dev": true, "license": "MIT", "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" + "@rdfjs/data-model": "^1.1.0" }, "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "node_modules/copyfiles": { - "version": "2.4.1", + "node_modules/@rdfjs/term-set": { + "version": "1.1.0", "dev": true, "license": "MIT", "dependencies": { - "glob": "^7.0.5", - "minimatch": "^3.0.3", - "mkdirp": "^1.0.4", - "noms": "0.0.0", - "through2": "^2.0.1", - "untildify": "^4.0.0", - "yargs": "^16.1.0" - }, - "bin": { - "copyfiles": "copyfiles", - "copyup": "copyfiles" + "@rdfjs/to-ntriples": "^2.0.0" } }, - "node_modules/copyfiles/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/@rdfjs/to-ntriples": { + "version": "2.0.0", "dev": true, + "license": "MIT" + }, + "node_modules/@rdfjs/types": { + "version": "1.1.0", "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@types/node": "*" } }, - "node_modules/copyfiles/node_modules/minimatch": { - "version": "3.1.2", + "node_modules/@rubensworks/saxes": { + "version": "6.0.1", "dev": true, "license": "ISC", "dependencies": { - "brace-expansion": "^1.1.7" + "xmlchars": "^2.2.0" }, "engines": { - "node": "*" - } - }, - "node_modules/core-js": { - "version": "3.36.0", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "node": ">=v12.22.12" } }, - "node_modules/core-js-compat": { - "version": "3.38.1", + "node_modules/@shexjs/parser": { + "version": "1.0.0-alpha.28", "license": "MIT", "dependencies": { - "browserslist": "^4.23.3" + "@shexjs/util": "^1.0.0-alpha.28", + "@ts-jison/parser": "^0.4.1-alpha.1" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/core-js-pure": { - "version": "3.36.0", - "hasInstallScript": true, + "node_modules/@shexjs/term": { + "version": "1.0.0-alpha.27", "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "dependencies": { + "@types/shexj": "^2.1.6", + "rdf-data-factory": "^1.1.2", + "relativize-url": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/core-util-is": { - "version": "1.0.3", + "node_modules/@shexjs/term/node_modules/@types/shexj": { + "version": "2.1.7", "license": "MIT" }, - "node_modules/cors": { - "version": "2.8.5", - "dev": true, + "node_modules/@shexjs/util": { + "version": "1.0.0-alpha.28", "license": "MIT", "dependencies": { - "object-assign": "^4", - "vary": "^1" + "@shexjs/term": "^1.0.0-alpha.27", + "@shexjs/visitor": "^1.0.0-alpha.27", + "@types/shexj": "^2.1.6", + "hierarchy-closure": "^1.2.2", + "sync-request": "^6.1.0" }, "engines": { - "node": ">= 0.10" + "node": ">=0.10.0" } }, - "node_modules/cosmiconfig": { - "version": "8.3.6", - "dev": true, + "node_modules/@shexjs/util/node_modules/@types/shexj": { + "version": "2.1.7", + "license": "MIT" + }, + "node_modules/@shexjs/visitor": { + "version": "1.0.0-alpha.27", "license": "MIT", - "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/cosmiconfig-typescript-loader": { - "version": "1.0.9", + "node_modules/@sideway/address": { + "version": "4.1.5", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "cosmiconfig": "^7", - "ts-node": "^10.7.0" - }, - "engines": { - "node": ">=12", - "npm": ">=6" - }, - "peerDependencies": { - "@types/node": "*", - "cosmiconfig": ">=7", - "typescript": ">=3" + "@hapi/hoek": "^9.0.0" } }, - "node_modules/cosmiconfig-typescript-loader/node_modules/cosmiconfig": { - "version": "7.1.0", + "node_modules/@sideway/formula": { + "version": "3.0.1", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "@sigstore/protobuf-specs": "^0.2.0" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/crc-32": { - "version": "1.2.2", + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", "dev": true, "license": "Apache-2.0", - "bin": { - "crc32": "bin/crc32.njs" - }, "engines": { - "node": ">=0.8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/create-require": { - "version": "1.1.1", - "devOptional": true, - "license": "MIT" - }, - "node_modules/cross-env": { - "version": "7.0.3", + "node_modules/@sigstore/sign": { + "version": "1.0.0", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "cross-spawn": "^7.0.1" - }, - "bin": { - "cross-env": "src/bin/cross-env.js", - "cross-env-shell": "src/bin/cross-env-shell.js" + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" }, "engines": { - "node": ">=10.14", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/cross-fetch": { - "version": "3.1.8", - "license": "MIT", - "dependencies": { - "node-fetch": "^2.6.12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/cross-fetch/node_modules/node-fetch": { - "version": "2.7.0", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/@npmcli/fs": { + "version": "3.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "whatwg-url": "^5.0.0" + "semver": "^7.3.5" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/cacache": { + "version": "17.1.4", + "dev": true, + "license": "ISC", "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, "engines": { - "node": ">= 8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/crypto-js": { - "version": "4.2.0", - "license": "MIT" - }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/css-blank-pseudo": { + "node_modules/@sigstore/sign/node_modules/fs-minipass": { "version": "3.0.3", - "license": "CC0-1.0", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" + "minipass": "^7.0.3" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/css-declaration-sorter": { - "version": "6.4.1", + "node_modules/@sigstore/sign/node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "dev": true, "license": "ISC", "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.0.9" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "license": "CC0-1.0", + "node_modules/@sigstore/sign/node_modules/glob": { + "version": "10.3.10", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-selector-parser": "^6.0.9" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "css-has-pseudo": "dist/cli.cjs" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=16 || 14 >=14.17" }, - "peerDependencies": { - "postcss": "^8.4" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/css-loader": { - "version": "6.10.0", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "11.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.4", - "postcss-modules-scope": "^3.1.1", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.4" + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass": { + "version": "5.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" } }, - "node_modules/css-minimizer-webpack-plugin": { - "version": "3.4.1", + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.4", + "dev": true, "license": "MIT", "dependencies": { - "cssnano": "^5.0.6", - "jest-worker": "^27.0.2", - "postcss": "^8.3.5", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - } + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/ssri": { + "version": "10.0.5", + "dev": true, + "license": "ISC", "dependencies": { - "fast-deep-equal": "^3.1.3" + "minipass": "^7.0.3" }, - "peerDependencies": { - "ajv": "^8.8.2" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "license": "MIT" + "node_modules/@sigstore/sign/node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { - "version": "4.2.0", - "license": "MIT", + "node_modules/@sigstore/sign/node_modules/unique-filename": { + "version": "3.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" + "unique-slug": "^4.0.0" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/serialize-javascript": { - "version": "6.0.2", - "license": "BSD-3-Clause", + "node_modules/@sigstore/sign/node_modules/unique-slug": { + "version": "4.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "license": "CC0-1.0", - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" + "imurmurhash": "^0.1.4" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/css-select": { - "version": "4.3.0", - "license": "BSD-2-Clause", + "node_modules/@sigstore/tuf": { + "version": "1.0.3", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" + "@sigstore/protobuf-specs": "^0.2.0", + "tuf-js": "^1.1.7" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/css-select-base-adapter": { - "version": "0.1.1", + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "dev": true, "license": "MIT" }, - "node_modules/css-select/node_modules/dom-serializer": { - "version": "1.4.1", + "node_modules/@sindresorhus/is": { + "version": "5.6.0", + "dev": true, "license": "MIT", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/css-select/node_modules/domhandler": { - "version": "4.3.1", - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.2.0" - }, "engines": { - "node": ">= 4" + "node": ">=14.16" }, "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "url": "https://github.com/sindresorhus/is?sponsor=1" } }, - "node_modules/css-select/node_modules/domutils": { - "version": "2.8.0", - "license": "BSD-2-Clause", + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "type-detect": "4.0.8" } }, - "node_modules/css-select/node_modules/entities": { - "version": "2.2.0", - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^1.7.0" } }, - "node_modules/css-tree": { - "version": "1.0.0-alpha.37", + "node_modules/@smessie/readable-web-to-node-stream": { + "version": "3.0.3", + "dev": true, "license": "MIT", "dependencies": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" + "process": "^0.11.10", + "readable-stream": "^4.5.1" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/cssdb": { - "version": "7.11.1", + "node_modules/@smessie/readable-web-to-node-stream/node_modules/buffer": { + "version": "6.0.3", + "dev": true, "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/csstools" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "github", - "url": "https://github.com/sponsors/csstools" + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], - "license": "CC0-1.0" - }, - "node_modules/cssesc": { - "version": "3.0.0", "license": "MIT", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/cssnano": { - "version": "5.1.15", + "node_modules/@smessie/readable-web-to-node-stream/node_modules/readable-stream": { + "version": "4.5.2", + "dev": true, "license": "MIT", "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "license": "MIT", - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/cssnano-utils": { - "version": "3.1.0", + "node_modules/@solid-notifications/discovery": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@solid-notifications/discovery/-/discovery-0.1.2.tgz", + "integrity": "sha512-jkqV+Ceknw2XE0Vl/4O2BBFnkCZQhNDVt6B9nzbVD4T3aNhMlK/gZS6oNHqa23obgFNCtgFBmeeRKiN1/v8lcw==", "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "dependencies": { + "@janeirodigital/interop-utils": "^1.0.0-rc.24", + "n3": "^1.17.2" } }, - "node_modules/csso": { - "version": "4.2.0", + "node_modules/@solid-notifications/subscription": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@solid-notifications/subscription/-/subscription-0.1.2.tgz", + "integrity": "sha512-XnnqNsLOIdUAzB11aROzfRiJLHJjTOaHMSrnn3teQRtE0BwpbnAJtzGG/m3JNUR+QqyjKkB3jfibxJjzvI/HQg==", "license": "MIT", "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" + "@janeirodigital/interop-utils": "^1.0.0-rc.24", + "@solid-notifications/discovery": "^0.1.2", + "n3": "^1.17.2" } }, - "node_modules/csso/node_modules/css-tree": { - "version": "1.1.3", + "node_modules/@solid-notifications/types": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@solid-notifications/types/-/types-0.1.2.tgz", + "integrity": "sha512-0SP6XmOjFhqt/m4FFXnYh6slSiXMoheO3UpU7POSDStLSb6tLVAQLiy0hBKvNyGBLlftRObHWoBWlt2X/LhVRg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@solid/access-control-policy": { + "version": "0.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@solid/access-token-verifier": { + "version": "2.1.0", + "dev": true, "license": "MIT", "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" + "jose": "^5.1.3", + "lru-cache": "^6.0.0", + "n3": "^1.17.1", + "node-fetch": "^2.7.0", + "ts-guards": "^0.5.1" } }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.14", - "license": "CC0-1.0" - }, - "node_modules/cssom": { - "version": "0.4.4", - "license": "MIT" + "node_modules/@solid/access-token-verifier/node_modules/jose": { + "version": "5.2.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/panva" + } }, - "node_modules/cssstyle": { - "version": "2.3.0", + "node_modules/@solid/access-token-verifier/node_modules/node-fetch": { + "version": "2.7.0", + "dev": true, "license": "MIT", "dependencies": { - "cssom": "~0.3.6" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=8" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "license": "MIT" - }, - "node_modules/csstype": { - "version": "3.1.3", + "node_modules/@solid/community-server": { + "version": "7.1.3", "dev": true, - "license": "MIT" - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "license": "BSD-2-Clause" + "license": "MIT", + "dependencies": { + "@comunica/context-entries": "^2.8.2", + "@comunica/query-sparql": "^2.9.0", + "@rdfjs/types": "^1.1.0", + "@solid/access-control-policy": "^0.1.3", + "@solid/access-token-verifier": "^2.1.0", + "@types/async-lock": "^1.4.0", + "@types/bcryptjs": "^2.4.4", + "@types/cookie": "^0.5.2", + "@types/cors": "^2.8.14", + "@types/ejs": "^3.1.3", + "@types/end-of-stream": "^1.4.2", + "@types/fs-extra": "^11.0.2", + "@types/lodash.orderby": "^4.6.7", + "@types/mime-types": "^2.1.2", + "@types/n3": "^1.16.3", + "@types/node": "^18.18.4", + "@types/nodemailer": "^6.4.11", + "@types/oidc-provider": "^8.4.0", + "@types/proper-lockfile": "^4.1.2", + "@types/pump": "^1.1.1", + "@types/punycode": "^2.1.0", + "@types/rdf-validate-shacl": "^0.4.4", + "@types/sparqljs": "^3.1.6", + "@types/url-join": "^4.0.1", + "@types/uuid": "^9.0.5", + "@types/ws": "^8.5.7", + "@types/yargs": "^17.0.28", + "arrayify-stream": "^2.0.1", + "async-lock": "^1.4.0", + "bcryptjs": "^2.4.3", + "componentsjs": "^5.4.2", + "cookie": "^0.7.0", + "cors": "^2.8.5", + "cross-fetch": "^4.0.0", + "ejs": "^3.1.9", + "end-of-stream": "^1.4.4", + "escape-string-regexp": "^4.0.0", + "fetch-sparql-endpoint": "^4.1.0", + "fs-extra": "^11.1.1", + "handlebars": "^4.7.8", + "ioredis": "^5.3.2", + "iso8601-duration": "^2.1.1", + "jose": "^4.15.2", + "jsonld-context-parser": "^2.3.2", + "lodash.orderby": "^4.6.0", + "marked": "^9.1.0", + "mime-types": "^2.1.35", + "n3": "^1.17.1", + "nodemailer": "^6.9.9", + "oidc-provider": "^8.4.0", + "proper-lockfile": "^4.1.2", + "pump": "^3.0.0", + "punycode": "^2.3.0", + "rdf-dereference": "^2.2.0", + "rdf-parse": "^2.3.2", + "rdf-serialize": "^2.2.2", + "rdf-string": "^1.6.3", + "rdf-terms": "^1.11.0", + "rdf-validate-shacl": "^0.4.5", + "sparqlalgebrajs": "^4.3.0", + "sparqljs": "^3.7.1", + "url-join": "^4.0.1", + "uuid": "^9.0.1", + "winston": "^3.11.0", + "winston-transport": "^4.5.0", + "ws": "^8.14.2", + "yargs": "^17.7.2", + "yup": "^1.3.2" + }, + "bin": { + "community-solid-server": "bin/server.js" + }, + "engines": { + "node": ">=18.0" + } }, - "node_modules/dargs": { - "version": "7.0.0", + "node_modules/@solid/community-server/node_modules/@types/node": { + "version": "18.19.56", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" + "dependencies": { + "undici-types": "~5.26.4" } }, - "node_modules/data-uri-to-buffer": { - "version": "3.0.1", + "node_modules/@solid/community-server/node_modules/cookie": { + "version": "0.7.2", "dev": true, "license": "MIT", "engines": { - "node": ">= 6" + "node": ">= 0.6" } }, - "node_modules/data-urls": { - "version": "2.0.0", + "node_modules/@solid/community-server/node_modules/cross-fetch": { + "version": "4.0.0", + "dev": true, "license": "MIT", "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" + "node-fetch": "^2.6.12" } }, - "node_modules/data-urls/node_modules/tr46": { - "version": "2.1.0", + "node_modules/@solid/community-server/node_modules/marked": { + "version": "9.1.6", + "dev": true, "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" + "bin": { + "marked": "bin/marked.js" }, "engines": { - "node": ">=8" + "node": ">= 16" } }, - "node_modules/data-urls/node_modules/webidl-conversions": { - "version": "6.1.0", - "license": "BSD-2-Clause", + "node_modules/@solid/community-server/node_modules/node-fetch": { + "version": "2.7.0", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { - "node": ">=10.4" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "8.7.0", + "node_modules/@solid/community-server/node_modules/yargs": { + "version": "17.7.2", + "dev": true, "license": "MIT", "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/dateformat": { - "version": "3.0.3", + "node_modules/@solid/community-server/node_modules/yargs-parser": { + "version": "21.1.1", "dev": true, - "license": "MIT", + "license": "ISC", "engines": { - "node": "*" + "node": ">=12" } }, - "node_modules/debug": { - "version": "4.3.4", + "node_modules/@szmarczak/http-timer": { + "version": "5.0.1", + "dev": true, "license": "MIT", "dependencies": { - "ms": "2.1.2" + "defer-to-connect": "^2.0.1" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=14.16" } }, - "node_modules/decamelize": { - "version": "1.2.0", + "node_modules/@testing-library/dom": { + "version": "9.3.4", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=14" } }, - "node_modules/decamelize-keys": { - "version": "1.1.1", + "node_modules/@testing-library/dom/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, "license": "MIT", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", + "node_modules/@testing-library/dom/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/decimal.js": { - "version": "10.4.3", + "node_modules/@testing-library/dom/node_modules/react-is": { + "version": "17.0.2", + "dev": true, "license": "MIT" }, - "node_modules/decompress-response": { - "version": "6.0.0", + "node_modules/@testing-library/react": { + "version": "14.2.1", "dev": true, "license": "MIT", "dependencies": { - "mimic-response": "^3.1.0" + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^9.0.0", + "@types/react-dom": "^18.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", + "node_modules/@tootallnate/once": { + "version": "2.0.0", "dev": true, "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 10" } }, - "node_modules/dedent": { - "version": "0.7.0", + "node_modules/@ts-jison/common": { + "version": "0.4.1-alpha.1", "license": "MIT" }, - "node_modules/deep-equal": { - "version": "2.2.3", - "dev": true, + "node_modules/@ts-jison/lexer": { + "version": "0.4.1-alpha.1", "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.5", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.2", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.13" + "@ts-jison/common": "^0.4.1-alpha.1" + } + }, + "node_modules/@ts-jison/parser": { + "version": "0.4.1-alpha.1", + "license": "MIT", + "dependencies": { + "@ts-jison/common": "^0.4.1-alpha.1", + "@ts-jison/lexer": "^0.4.1-alpha.1" + } + }, + "node_modules/@ts-morph/common": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.25.0.tgz", + "integrity": "sha512-kMnZz+vGGHi4GoHnLmMhGNjm44kGtKUXGnOvrKmMwAuvNjM/PgKVGfUnL7IDvK7Jb2QQ82jq3Zmp04Gy+r3Dkg==", + "license": "MIT", + "dependencies": { + "minimatch": "^9.0.4", + "path-browserify": "^1.0.1", + "tinyglobby": "^0.2.9" + } + }, + "node_modules/@ts-morph/common/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/deep-is": { - "version": "0.1.4", + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "dev": true, "license": "MIT" }, - "node_modules/deepmerge": { - "version": "4.3.1", + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/default-gateway": { - "version": "6.0.3", - "license": "BSD-2-Clause", + "node_modules/@tufjs/models": { + "version": "1.0.4", + "dev": true, + "license": "MIT", "dependencies": { - "execa": "^5.0.0" + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" }, "engines": { - "node": ">= 10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/defaults": { - "version": "1.0.4", + "node_modules/@types/accepts": { + "version": "1.3.7", "dev": true, "license": "MIT", "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@types/node": "*" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", + "node_modules/@types/aria-query": { + "version": "5.0.4", "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } + "license": "MIT" + }, + "node_modules/@types/async-lock": { + "version": "1.4.2", + "dev": true, + "license": "MIT" }, - "node_modules/define-data-property": { - "version": "1.1.4", + "node_modules/@types/babel__core": { + "version": "7.20.5", + "dev": true, "license": "MIT", "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "dev": true, "license": "MIT", - "engines": { - "node": ">=8" + "dependencies": { + "@babel/types": "^7.0.0" } }, - "node_modules/define-properties": { - "version": "1.2.1", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "dev": true, "license": "MIT", "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "dev": true, "license": "MIT", - "engines": { - "node": ">=0.4.0" + "dependencies": { + "@babel/types": "^7.20.7" } }, - "node_modules/delegates": { - "version": "1.0.0", + "node_modules/@types/bcryptjs": { + "version": "2.4.6", "dev": true, "license": "MIT" }, - "node_modules/denque": { - "version": "2.1.0", + "node_modules/@types/body-parser": { + "version": "1.19.5", "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=0.10" + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" } }, - "node_modules/depd": { - "version": "2.0.0", + "node_modules/@types/child-process-promise": { + "version": "2.2.6", + "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.8" + "dependencies": { + "@types/node": "*" } }, - "node_modules/deprecation": { - "version": "2.3.1", + "node_modules/@types/clownface": { + "version": "2.0.7", "dev": true, - "license": "ISC" - }, - "node_modules/dequal": { - "version": "2.0.3", "license": "MIT", - "engines": { - "node": ">=6" + "dependencies": { + "@rdfjs/types": ">=1.0.0", + "@types/rdfjs__environment": "*" } }, - "node_modules/destroy": { - "version": "1.2.0", + "node_modules/@types/concat-stream": { + "version": "1.6.1", "license": "MIT", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "dependencies": { + "@types/node": "*" } }, - "node_modules/detect-indent": { - "version": "5.0.0", + "node_modules/@types/connect": { + "version": "3.4.38", "dev": true, "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "@types/node": "*" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "license": "MIT", - "engines": { - "node": ">=8" - } + "node_modules/@types/content-disposition": { + "version": "0.5.8", + "dev": true, + "license": "MIT" }, - "node_modules/detect-node": { - "version": "2.1.0", + "node_modules/@types/cookie": { + "version": "0.5.4", + "dev": true, "license": "MIT" }, - "node_modules/detect-port-alt": { - "version": "1.1.6", + "node_modules/@types/cookies": { + "version": "0.9.0", + "dev": true, "license": "MIT", "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" + "@types/connect": "*", + "@types/express": "*", + "@types/keygrip": "*", + "@types/node": "*" } }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", + "node_modules/@types/cors": { + "version": "2.8.17", + "dev": true, "license": "MIT", "dependencies": { - "ms": "2.0.0" + "@types/node": "*" } }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", + "node_modules/@types/ejs": { + "version": "3.1.5", + "dev": true, "license": "MIT" }, - "node_modules/didyoumean": { - "version": "1.2.2", - "license": "Apache-2.0" - }, - "node_modules/diff": { - "version": "4.0.2", - "devOptional": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" + "node_modules/@types/end-of-stream": { + "version": "1.4.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" } }, - "node_modules/diff-sequences": { - "version": "29.6.3", + "node_modules/@types/eslint": { + "version": "8.56.5", "dev": true, "license": "MIT", - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "optional": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/dir-glob": { - "version": "3.0.1", + "node_modules/@types/estree": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "dev": true, "license": "MIT", "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "node_modules/dlv": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/dns-packet": { - "version": "5.6.1", + "node_modules/@types/express-serve-static-core": { + "version": "4.17.43", + "dev": true, "license": "MIT", "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "license": "Apache-2.0", + "node_modules/@types/form-data": { + "version": "0.0.33", + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" + "@types/node": "*" } }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", + "node_modules/@types/fs-extra": { + "version": "11.0.4", "dev": true, - "license": "MIT" - }, - "node_modules/dom-converter": { - "version": "0.2.0", "license": "MIT", "dependencies": { - "utila": "~0.4" + "@types/jsonfile": "*", + "@types/node": "*" } }, - "node_modules/dom-serializer": { - "version": "2.0.0", + "node_modules/@types/graceful-fs": { + "version": "4.1.9", "dev": true, "license": "MIT", "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "@types/node": "*" } }, - "node_modules/domelementtype": { - "version": "2.3.0", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" + "node_modules/@types/http-assert": { + "version": "1.5.5", + "dev": true, + "license": "MIT" }, - "node_modules/domexception": { - "version": "2.0.1", + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/http-link-header": { + "version": "1.0.5", "license": "MIT", "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=8" + "@types/node": "*" } }, - "node_modules/domhandler": { - "version": "5.0.3", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } + "license": "MIT" }, - "node_modules/domutils": { - "version": "3.1.0", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/dot-case": { + "node_modules/@types/istanbul-reports": { "version": "3.0.4", + "dev": true, "license": "MIT", "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" + "@types/istanbul-lib-report": "*" } }, - "node_modules/dot-prop": { - "version": "5.3.0", + "node_modules/@types/jest": { + "version": "27.5.2", "dev": true, "license": "MIT", "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" + "jest-matcher-utils": "^27.0.0", + "pretty-format": "^27.0.0" } }, - "node_modules/dotenv": { - "version": "16.3.2", + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/dotenv-expand": { - "version": "10.0.0", + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "license": "MIT" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", + "node_modules/@types/jest/node_modules/react-is": { + "version": "17.0.2", + "dev": true, "license": "MIT" }, - "node_modules/ee-first": { - "version": "1.1.1", + "node_modules/@types/json-schema": { + "version": "7.0.15", + "dev": true, "license": "MIT" }, - "node_modules/ejs": { - "version": "3.1.9", - "license": "Apache-2.0", - "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.5.42", - "license": "ISC" - }, - "node_modules/emittery": { - "version": "0.8.1", + "node_modules/@types/jsonfile": { + "version": "6.1.4", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "dependencies": { + "@types/node": "*" } }, - "node_modules/emoji-regex": { - "version": "8.0.0", + "node_modules/@types/jsonld": { + "version": "1.5.15", + "resolved": "https://registry.npmjs.org/@types/jsonld/-/jsonld-1.5.15.tgz", + "integrity": "sha512-PlAFPZjL+AuGYmwlqwKEL0IMP8M8RexH0NIPGfCVWSQ041H2rR/8OlyZSD7KsCVoN8vCfWdtWDBxX8yBVP+xow==", "license": "MIT" }, - "node_modules/emojis-list": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/enabled": { - "version": "2.0.0", + "node_modules/@types/keygrip": { + "version": "1.0.6", "dev": true, "license": "MIT" }, - "node_modules/encodeurl": { - "version": "1.0.2", + "node_modules/@types/koa": { + "version": "2.15.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.8" + "dependencies": { + "@types/accepts": "*", + "@types/content-disposition": "*", + "@types/cookies": "*", + "@types/http-assert": "*", + "@types/http-errors": "*", + "@types/keygrip": "*", + "@types/koa-compose": "*", + "@types/node": "*" } }, - "node_modules/encoding": { - "version": "0.1.13", + "node_modules/@types/koa-compose": { + "version": "3.2.8", + "dev": true, "license": "MIT", - "optional": true, "dependencies": { - "iconv-lite": "^0.6.2" + "@types/koa": "*" } }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", + "node_modules/@types/lodash": { + "version": "4.14.202", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/lodash.orderby": { + "version": "4.6.9", + "dev": true, "license": "MIT", - "optional": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "@types/lodash": "*" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", + "node_modules/@types/mime": { + "version": "1.3.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mime-types": { + "version": "2.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/n3": { + "version": "1.16.4", "dev": true, "license": "MIT", "dependencies": { - "once": "^1.4.0" + "@rdfjs/types": "^1.1.0", + "@types/node": "*" } }, - "node_modules/enhanced-resolve": { - "version": "5.15.1", + "node_modules/@types/node": { + "version": "20.11.20", "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" + "undici-types": "~5.26.4" } }, - "node_modules/enquirer": { - "version": "2.3.6", + "node_modules/@types/nodemailer": { + "version": "6.4.14", "dev": true, "license": "MIT", "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "@types/node": "*" } }, - "node_modules/env-paths": { - "version": "2.2.1", + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } + "license": "MIT" }, - "node_modules/envinfo": { - "version": "7.8.1", + "node_modules/@types/oidc-provider": { + "version": "8.5.2", "dev": true, "license": "MIT", - "bin": { - "envinfo": "dist/cli.js" - }, - "engines": { - "node": ">=4" + "dependencies": { + "@types/koa": "*", + "@types/node": "*" } }, - "node_modules/err-code": { - "version": "2.0.3", + "node_modules/@types/prettier": { + "version": "2.7.3", "dev": true, "license": "MIT" }, - "node_modules/error-ex": { - "version": "1.3.2", + "node_modules/@types/prompts": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/@types/prompts/-/prompts-2.4.9.tgz", + "integrity": "sha512-qTxFi6Buiu8+50/+3DGIWLHM6QuWsEKugJnnP6iv2Mc4ncxE4A/OJkjuVOA+5X0X1S/nq5VJRa8Lu+nwcvbrKA==", + "dev": true, "license": "MIT", "dependencies": { - "is-arrayish": "^0.2.1" + "@types/node": "*", + "kleur": "^3.0.3" } }, - "node_modules/error-stack-parser": { - "version": "2.1.4", + "node_modules/@types/prop-types": { + "version": "15.7.11", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/proper-lockfile": { + "version": "4.1.4", + "dev": true, "license": "MIT", "dependencies": { - "stackframe": "^1.3.4" + "@types/retry": "*" } }, - "node_modules/es-abstract": { - "version": "1.22.4", + "node_modules/@types/pump": { + "version": "1.1.3", + "dev": true, "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.6", - "call-bind": "^1.0.7", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.2", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.1", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.0", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.1", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/node": "*" } }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", + "node_modules/@types/punycode": { + "version": "2.1.4", + "dev": true, "license": "MIT" }, - "node_modules/es-define-property": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } + "node_modules/@types/qs": { + "version": "6.9.11", + "license": "MIT" }, - "node_modules/es-errors": { - "version": "1.3.0", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } + "node_modules/@types/range-parser": { + "version": "1.2.7", + "dev": true, + "license": "MIT" }, - "node_modules/es-get-iterator": { - "version": "1.1.3", + "node_modules/@types/rdf-validate-shacl": { + "version": "0.4.6", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@rdfjs/types": "*", + "@types/clownface": "*", + "@types/node": "*" } }, - "node_modules/es-iterator-helpers": { - "version": "1.0.17", + "node_modules/@types/rdfjs__dataset": { + "version": "1.0.5", + "dev": true, "license": "MIT", "dependencies": { - "asynciterator.prototype": "^1.0.0", - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.4", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.2", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" + "rdf-js": "^4.0.2" } }, - "node_modules/es-module-lexer": { - "version": "1.4.1", - "license": "MIT" - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", + "node_modules/@types/rdfjs__environment": { + "version": "1.0.0", + "dev": true, "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" + "@rdfjs/types": "*", + "@types/node": "*" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", + "node_modules/@types/react": { + "version": "18.2.58", + "dev": true, "license": "MIT", "dependencies": { - "hasown": "^2.0.0" + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", + "node_modules/@types/react-dom": { + "version": "18.2.19", + "dev": true, "license": "MIT", "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/react": "*" } }, - "node_modules/escalade": { - "version": "3.2.0", + "node_modules/@types/readable-stream": { + "version": "2.3.15", "license": "MIT", - "engines": { - "node": ">=6" + "dependencies": { + "@types/node": "*", + "safe-buffer": "~5.1.1" } }, - "node_modules/escape-html": { - "version": "1.0.3", + "node_modules/@types/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", "license": "MIT" }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", + "node_modules/@types/retry": { + "version": "0.12.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/scheduler": { + "version": "0.16.8", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/semver": { + "version": "7.5.7", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "license": "BSD-2-Clause", + "node_modules/@types/serve-static": { + "version": "1.15.5", + "dev": true, + "license": "MIT", "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" + "@types/http-errors": "*", + "@types/mime": "*", + "@types/node": "*" } }, - "node_modules/eslint": { - "version": "8.57.0", + "node_modules/@types/shexj": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/shexj/-/shexj-2.1.4.tgz", + "integrity": "sha512-/dcF8vT/CHseZxNTcWR+otf6018PACgHiKFukPYsxQCRppGZq0UcALMedZUUnj7IM4WOesFoERwJBhEw44d/VQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/spark-md5": { + "version": "3.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/sparqljs": { + "version": "3.1.10", + "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "@rdfjs/types": ">=1.0.0" } }, - "node_modules/eslint-config-prettier": { - "version": "9.1.0", + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/triple-beam": { + "version": "1.3.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/uritemplate": { + "version": "0.3.6", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/url-join": { + "version": "4.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/uuid": { + "version": "9.0.8", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/ws": { + "version": "8.5.10", "dev": true, "license": "MIT", - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "dependencies": { + "@types/node": "*" } }, - "node_modules/eslint-config-react-app": { - "version": "7.0.1", + "node_modules/@types/yargs": { + "version": "17.0.32", + "dev": true, "license": "MIT", "dependencies": { - "@babel/core": "^7.16.0", - "@babel/eslint-parser": "^7.16.3", - "@rushstack/eslint-patch": "^1.1.0", - "@typescript-eslint/eslint-plugin": "^5.5.0", - "@typescript-eslint/parser": "^5.5.0", - "babel-preset-react-app": "^10.0.1", - "confusing-browser-globals": "^1.0.11", - "eslint-plugin-flowtype": "^8.0.3", - "eslint-plugin-import": "^2.25.3", - "eslint-plugin-jest": "^25.3.0", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-react": "^7.27.1", - "eslint-plugin-react-hooks": "^4.3.0", - "eslint-plugin-testing-library": "^5.0.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "eslint": "^8.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.62.0", + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4", "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -13155,24 +6808,26 @@ } } }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/parser": { - "version": "5.62.0", + "node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -13180,75 +6835,41 @@ } } }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/type-utils": { - "version": "5.62.0", + "node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", "debug": "^4.3.4", - "tsutils": "^3.21.0" + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -13256,1946 +6877,1965 @@ } } }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-config-react-app/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", + "node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "dev": true, "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-config-react-app/node_modules/eslint-plugin-jest": { - "version": "25.7.0", - "license": "MIT", - "dependencies": { - "@typescript-eslint/experimental-utils": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } - } - }, - "node_modules/eslint-config-react-app/node_modules/eslint-scope": { - "version": "5.1.1", - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-config-react-app/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "license": "MIT", - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/resolve": { - "version": "1.22.8", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.8.1", - "license": "MIT", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "debug": "^3.2.7" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=4" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { - "eslint": { + "typescript": { "optional": true } } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", + "node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "dev": true, "license": "MIT", "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-flowtype": { - "version": "8.0.3", - "license": "BSD-3-Clause", - "dependencies": { - "lodash": "^4.17.21", - "string-natural-compare": "^3.0.1" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "engines": { - "node": ">=12.0.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@babel/plugin-syntax-flow": "^7.14.5", - "@babel/plugin-transform-react-jsx": "^7.14.9", - "eslint": "^8.1.0" + "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/eslint-plugin-import": { - "version": "2.29.1", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "dev": true, "license": "MIT", "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.15.0" + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=4" + "node": "^16.0.0 || >=18.0.0" }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/@yarnpkg/parsers": { + "version": "3.0.0-rc.46", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "js-yaml": "^3.10.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=14.15.0" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", + "node_modules/@yarnpkg/parsers/node_modules/argparse": { + "version": "1.0.10", + "dev": true, "license": "MIT", "dependencies": { - "ms": "^2.1.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "license": "Apache-2.0", + "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { + "version": "3.14.1", + "dev": true, + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/eslint-plugin-import/node_modules/json5": { - "version": "1.0.2", + "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": { + "version": "1.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@zkochan/js-yaml": { + "version": "0.0.6", + "dev": true, "license": "MIT", "dependencies": { - "minimist": "^1.2.0" + "argparse": "^2.0.1" }, "bin": { - "json5": "lib/cli.js" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/eslint-plugin-import/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } + "node_modules/abab": { + "version": "2.0.6", + "dev": true, + "license": "BSD-3-Clause" }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } + "node_modules/abbrev": { + "version": "1.1.1", + "dev": true, + "license": "ISC" }, - "node_modules/eslint-plugin-import/node_modules/strip-bom": { + "node_modules/abort-controller": { "version": "3.0.0", "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, "engines": { - "node": ">=4" + "node": ">=6.5" } }, - "node_modules/eslint-plugin-import/node_modules/tsconfig-paths": { - "version": "3.15.0", + "node_modules/accepts": { + "version": "1.3.8", + "dev": true, "license": "MIT", "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", + "node_modules/acorn": { + "version": "8.11.3", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/aria-query": { - "version": "5.3.0", - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" + "node": ">=0.4.0" } }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/acorn-globals": { + "version": "6.0.0", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" } }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/emoji-regex": { - "version": "9.2.2", - "license": "MIT" - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": "*" + "node": ">=0.4.0" } }, - "node_modules/eslint-plugin-prettier": { - "version": "5.1.3", + "node_modules/acorn-jsx": { + "version": "5.3.2", "dev": true, "license": "MIT", - "dependencies": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.6" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint-plugin-prettier" - }, "peerDependencies": { - "@types/eslint": ">=8.0.0", - "eslint": ">=8.0.0", - "eslint-config-prettier": "*", - "prettier": ">=3.0.0" - }, - "peerDependenciesMeta": { - "@types/eslint": { - "optional": true - }, - "eslint-config-prettier": { - "optional": true - } + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/eslint-plugin-react": { - "version": "7.33.2", + "node_modules/acorn-walk": { + "version": "7.2.0", + "dev": true, "license": "MIT", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "node": ">=0.4.0" + } + }, + "node_modules/add-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/adler-32": { + "version": "1.3.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" } }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.0", + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "debug": "4" }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + "engines": { + "node": ">= 6.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/agentkeepalive": { + "version": "4.5.0", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "license": "Apache-2.0", + "node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/eslint-plugin-react/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", + "node_modules/ajv": { + "version": "6.12.6", + "dev": true, + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": "*" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "node_modules/ansi-colors": { + "version": "4.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "node_modules/eslint-plugin-testing-library": { - "version": "5.11.1", + "node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/utils": "^5.58.0" + "type-fest": "^0.21.3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0", - "npm": ">=6" + "node": ">=8" }, - "peerDependencies": { - "eslint": "^7.5.0 || ^8.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/types": { - "version": "5.62.0", + "node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, "license": "MIT", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=8" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "license": "BSD-2-Clause", + "node_modules/ansi-sequence-parser": { + "version": "1.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "color-convert": "^2.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "license": "MIT", + "node_modules/anymatch": { + "version": "3.1.3", + "dev": true, + "license": "ISC", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/aria-query": { + "version": "5.1.3", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "deep-equal": "^2.0.5" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-testing-library/node_modules/eslint-scope": { - "version": "5.1.1", - "license": "BSD-2-Clause", + "node_modules/array-differ": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/array-ify": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/array-includes": { + "version": "3.1.7", + "dev": true, + "license": "MIT", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-testing-library/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", + "node_modules/array-union": { + "version": "2.1.0", + "dev": true, + "license": "MIT", "engines": { - "node": ">=4.0" + "node": ">=8" } }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "license": "BSD-2-Clause", + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "dev": true, + "license": "MIT", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "license": "Apache-2.0", + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.1.0", + "es-shim-unscopables": "^1.0.2" } }, - "node_modules/eslint-webpack-plugin": { - "version": "3.2.0", + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "dev": true, "license": "MIT", "dependencies": { - "@types/eslint": "^7.29.0 || ^8.4.1", - "jest-worker": "^28.0.2", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0" + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0", - "webpack": "^5.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", + "node_modules/arrayify-stream": { + "version": "2.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/arrify": { + "version": "1.0.1", + "dev": true, "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/eslint-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", + "node_modules/asap": { + "version": "2.0.6", + "license": "MIT" + }, + "node_modules/async": { + "version": "3.2.5", + "license": "MIT" + }, + "node_modules/async-lock": { + "version": "1.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/asynciterator": { + "version": "3.8.1", + "dev": true, + "license": "MIT" + }, + "node_modules/asynciterator.prototype": { + "version": "1.0.0", + "dev": true, "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" + "has-symbols": "^1.0.3" } }, - "node_modules/eslint-webpack-plugin/node_modules/jest-worker": { - "version": "28.1.3", + "node_modules/asyncjoin": { + "version": "1.1.2", + "dev": true, "license": "MIT", "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "asynciterator": "^3.6.0" } }, - "node_modules/eslint-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", + "node_modules/asynckit": { + "version": "0.4.0", "license": "MIT" }, - "node_modules/eslint-webpack-plugin/node_modules/schema-utils": { - "version": "4.2.0", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-webpack-plugin/node_modules/supports-color": { - "version": "8.1.1", + "node_modules/axios": { + "version": "1.6.7", + "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "follow-redirects": "^1.15.4", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/babel-jest": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": "*" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/esm": { - "version": "3.2.25", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "license": "BSD-2-Clause", + "license": "BSD-3-Clause", "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=8" } }, - "node_modules/esprima": { - "version": "4.0.1", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">=4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/esquery": { - "version": "1.5.0", - "license": "BSD-3-Clause", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "estraverse": "^5.1.0" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" }, - "engines": { - "node": ">=0.10" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "license": "BSD-2-Clause", + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "dev": true, + "license": "MIT", "dependencies": { - "estraverse": "^5.2.0" + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/estree-walker": { - "version": "1.0.1", + "node_modules/balanced-match": { + "version": "1.0.2", "license": "MIT" }, - "node_modules/esutils": { - "version": "2.0.3", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "node_modules/eta": { - "version": "3.5.0", + "node_modules/bcryptjs": { + "version": "2.4.3", "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "url": "https://github.com/eta-dev/eta?sponsor=1" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } + "license": "MIT" }, - "node_modules/event-stream": { - "version": "3.3.4", + "node_modules/before-after-hook": { + "version": "2.2.3", "dev": true, - "license": "MIT", - "dependencies": { - "duplexer": "~0.1.1", - "from": "~0", - "map-stream": "~0.1.0", - "pause-stream": "0.0.11", - "split": "0.3", - "stream-combiner": "~0.0.4", - "through": "~2.3.1" - } + "license": "Apache-2.0" }, - "node_modules/event-stream/node_modules/split": { - "version": "0.3.3", + "node_modules/bignumber.js": { + "version": "9.1.2", "dev": true, "license": "MIT", - "dependencies": { - "through": "2" - }, "engines": { "node": "*" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", + "node_modules/bl": { + "version": "4.1.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=6" + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", + "node_modules/bluebird": { + "version": "3.7.2", + "dev": true, "license": "MIT" }, - "node_modules/events": { - "version": "3.3.0", + "node_modules/brace-expansion": { + "version": "2.0.1", "license": "MIT", - "engines": { - "node": ">=0.8.x" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/execa": { - "version": "5.0.0", + "node_modules/braces": { + "version": "3.0.2", + "dev": true, "license": "MIT", "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" + "fill-range": "^7.0.1" }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/exit-on-epipe": { - "version": "1.0.1", + "node_modules/browser-process-hrtime": { + "version": "1.0.0", "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=0.8" - } + "license": "BSD-2-Clause" }, - "node_modules/expect": { - "version": "27.5.1", + "node_modules/browserslist": { + "version": "4.24.2", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/expect/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/bs-logger": { + "version": "0.2.6", + "dev": true, "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/exponential-backoff": { - "version": "3.1.1", + "node_modules/bser": { + "version": "2.1.1", "dev": true, - "license": "Apache-2.0" - }, - "node_modules/express": { - "version": "4.18.3", - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" + "node-int64": "^0.4.0" } }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", + "node_modules/buffer": { + "version": "5.7.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "ms": "2.0.0" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", + "node_modules/buffer-from": { + "version": "1.1.2", "license": "MIT" }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", + "node_modules/builtins": { + "version": "5.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "semver": "^7.0.0" } }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", + "node_modules/byte-size": { + "version": "8.1.1", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">=12.17" } }, - "node_modules/external-editor": { - "version": "3.1.0", + "node_modules/bytes": { + "version": "3.1.2", "dev": true, "license": "MIT", - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "node_modules/external-editor/node_modules/tmp": { - "version": "0.0.33", + "node_modules/cacache": { + "version": "16.1.3", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "os-tmpdir": "~1.0.2" + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" }, "engines": { - "node": ">=0.6.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "license": "MIT" - }, - "node_modules/fast-diff": { - "version": "1.3.0", + "node_modules/cacache/node_modules/glob": { + "version": "8.1.0", "dev": true, - "license": "Apache-2.0" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "license": "MIT", + "license": "ISC", "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">=8.6.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, "engines": { - "node": ">= 6" + "node": ">=12" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "license": "MIT" - }, - "node_modules/fastq": { - "version": "1.17.1", + "node_modules/cacache/node_modules/minimatch": { + "version": "5.1.6", + "dev": true, "license": "ISC", "dependencies": { - "reusify": "^1.0.4" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "license": "Apache-2.0", + "node_modules/cache-content-type": { + "version": "1.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "websocket-driver": ">=0.5.1" + "mime-types": "^2.1.18", + "ylru": "^1.2.0" }, "engines": { - "node": ">=0.8.0" + "node": ">= 6.0.0" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "license": "Apache-2.0", - "dependencies": { - "bser": "2.1.1" + "node_modules/cacheable-lookup": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.16" } }, - "node_modules/fecha": { - "version": "4.2.3", + "node_modules/cacheable-request": { + "version": "10.2.14", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "^4.0.2", + "get-stream": "^6.0.1", + "http-cache-semantics": "^4.1.1", + "keyv": "^4.5.3", + "mimic-response": "^4.0.0", + "normalize-url": "^8.0.0", + "responselike": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + } }, - "node_modules/fetch-blob": { - "version": "2.1.2", + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "6.0.1", "dev": true, "license": "MIT", "engines": { - "node": "^10.17.0 || >=12.3.0" + "node": ">=10" }, - "peerDependenciesMeta": { - "domexception": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fetch-sparql-endpoint": { - "version": "4.2.1", + "node_modules/cacheable-request/node_modules/normalize-url": { + "version": "8.0.1", "dev": true, "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@smessie/readable-web-to-node-stream": "^3.0.3", - "@types/readable-stream": "^2.3.11", - "@types/sparqljs": "^3.1.3", - "abort-controller": "^3.0.0", - "cross-fetch": "^3.0.6", - "is-stream": "^2.0.0", - "minimist": "^1.2.0", - "n3": "^1.6.3", - "rdf-string": "^1.6.0", - "sparqljs": "^3.1.2", - "sparqljson-parse": "^2.2.0", - "sparqlxml-parse": "^2.1.1", - "stream-to-string": "^1.1.0" + "engines": { + "node": ">=14.16" }, - "bin": { - "fetch-sparql-endpoint": "bin/fetch-sparql-endpoint.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/figures": { - "version": "3.2.0", - "dev": true, + "node_modules/call-bind": { + "version": "1.0.7", "license": "MIT", "dependencies": { - "escape-string-regexp": "^1.0.5" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/callsites": { + "version": "3.1.0", "dev": true, "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", + "node_modules/camelcase": { + "version": "5.3.1", + "dev": true, "license": "MIT", - "dependencies": { - "flat-cache": "^3.0.4" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=6" } }, - "node_modules/file-loader": { - "version": "6.2.0", + "node_modules/camelcase-keys": { + "version": "6.2.2", + "dev": true, "license": "MIT", "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" }, "engines": { - "node": ">= 10.13.0" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/filelist": { - "version": "1.0.4", + "node_modules/caniuse-lite": { + "version": "1.0.30001669", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/canonicalize": { + "version": "2.0.0", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/caseless": { + "version": "0.12.0", + "license": "Apache-2.0" + }, + "node_modules/cfb": { + "version": "0.11.1", + "dev": true, "license": "Apache-2.0", "dependencies": { - "minimatch": "^5.0.1" + "commander": "" + }, + "bin": { + "cfb": "bin/cfb.njs" + }, + "engines": { + "node": ">=0.8" } }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.6", - "license": "ISC", + "node_modules/chalk": { + "version": "4.1.2", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/filesize": { - "version": "8.0.7", - "license": "BSD-3-Clause", + "node_modules/char-regex": { + "version": "1.0.2", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 0.4.0" + "node": ">=10" } }, - "node_modules/fill-range": { - "version": "7.0.1", + "node_modules/chardet": { + "version": "0.7.0", + "dev": true, + "license": "MIT" + }, + "node_modules/check-more-types": { + "version": "2.24.0", + "dev": true, "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/finalhandler": { - "version": "1.2.0", + "node_modules/child-process-promise": { + "version": "2.2.1", "license": "MIT", "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "cross-spawn": "^4.0.2", + "node-version": "^1.0.0", + "promise-polyfill": "^6.0.1" + } + }, + "node_modules/child-process-promise/node_modules/cross-spawn": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "node_modules/child-process-promise/node_modules/lru-cache": { + "version": "4.1.5", + "license": "ISC", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/child-process-promise/node_modules/which": { + "version": "1.3.1", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/child-process-promise/node_modules/yallist": { + "version": "2.1.2", + "license": "ISC" + }, + "node_modules/chownr": { + "version": "2.0.0", + "dev": true, + "license": "ISC", "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", + "node_modules/ci-info": { + "version": "3.9.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "license": "MIT", - "dependencies": { - "ms": "2.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "dev": true, "license": "MIT" }, - "node_modules/finalhandler/node_modules/statuses": { - "version": "2.0.1", + "node_modules/clean-stack": { + "version": "2.2.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "node_modules/find-cache-dir": { - "version": "3.3.2", + "node_modules/cli-cursor": { + "version": "3.1.0", + "dev": true, "license": "MIT", "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "restore-cursor": "^3.1.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", + "node_modules/cli-spinners": { + "version": "2.6.1", + "dev": true, "license": "MIT", - "dependencies": { - "semver": "^6.0.0" - }, "engines": { - "node": ">=8" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.1", + "node_modules/cli-width": { + "version": "3.0.0", + "dev": true, "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">= 10" } }, - "node_modules/find-up": { - "version": "5.0.0", + "node_modules/cliui": { + "version": "8.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "dev": true, "license": "MIT", "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/flat": { - "version": "5.0.2", + "node_modules/clone": { + "version": "1.0.4", "dev": true, - "license": "BSD-3-Clause", - "bin": { - "flat": "cli.js" + "license": "MIT", + "engines": { + "node": ">=0.8" } }, - "node_modules/flat-cache": { - "version": "3.2.0", + "node_modules/clone-deep": { + "version": "4.0.1", + "dev": true, "license": "MIT", "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=6" } }, - "node_modules/flatted": { - "version": "3.3.1", - "license": "ISC" - }, - "node_modules/fn.name": { - "version": "1.1.0", + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", "dev": true, - "license": "MIT" - }, - "node_modules/follow-redirects": { - "version": "1.15.5", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], "license": "MIT", - "engines": { - "node": ">=4.0" + "dependencies": { + "isobject": "^3.0.1" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "engines": { + "node": ">=0.10.0" } }, - "node_modules/for-each": { - "version": "0.3.3", + "node_modules/clownface": { + "version": "1.5.1", + "dev": true, "license": "MIT", "dependencies": { - "is-callable": "^1.1.3" + "@rdfjs/data-model": "^1.1.0", + "@rdfjs/namespace": "^1.0.0" } }, - "node_modules/foreground-child": { - "version": "3.1.1", - "license": "ISC", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, + "node_modules/cluster-key-slot": { + "version": "1.1.2", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=0.10.0" } }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", + "node_modules/cmd-shim": { + "version": "6.0.1", + "dev": true, "license": "ISC", "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "6.5.3", + "node_modules/co": { + "version": "4.6.0", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, "engines": { - "node": ">=10", - "yarn": ">=1.0.0" - }, - "peerDependencies": { - "eslint": ">= 6", - "typescript": ">= 2.7", - "vue-template-compiler": "*", - "webpack": ">= 4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/code-block-writer": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-13.0.3.tgz", + "integrity": "sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==", + "license": "MIT" + }, + "node_modules/codepage": { + "version": "1.15.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/color": { + "version": "3.2.1", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "color-convert": "^1.9.3", + "color-string": "^1.6.0" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { - "version": "6.0.0", + "node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": { - "version": "9.1.0", + "node_modules/color-name": { + "version": "1.1.4", + "license": "MIT" + }, + "node_modules/color-string": { + "version": "1.9.1", + "dev": true, "license": "MIT", "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/minimatch": { - "version": "3.1.2", + "node_modules/color-support": { + "version": "1.1.3", + "dev": true, "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "bin": { + "color-support": "bin.js" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { - "version": "2.7.0", + "node_modules/color/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - }, + "color-name": "1.1.3" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/colors": { + "version": "0.6.2", + "dev": true, "engines": { - "node": ">= 8.9.0" + "node": ">=0.1.90" + } + }, + "node_modules/colors-cli": { + "version": "1.0.33", + "license": "MIT", + "bin": { + "colors": "bin/colors" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://jaywcjlove.github.io/#/sponsor" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { - "version": "1.1.3", + "node_modules/colorspace": { + "version": "1.1.4", + "dev": true, "license": "MIT", - "engines": { - "node": ">=6" + "dependencies": { + "color": "^3.1.3", + "text-hex": "1.0.x" } }, - "node_modules/form-data": { - "version": "4.0.0", + "node_modules/columnify": { + "version": "1.6.0", "dev": true, "license": "MIT", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" }, "engines": { - "node": ">= 6" + "node": ">=8.0.0" } }, - "node_modules/form-data-encoder": { - "version": "2.1.4", - "dev": true, + "node_modules/combined-stream": { + "version": "1.0.8", "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, "engines": { - "node": ">= 14.17" + "node": ">= 0.8" } }, - "node_modules/forwarded": { - "version": "0.2.0", + "node_modules/commander": { + "version": "9.5.0", "license": "MIT", "engines": { - "node": ">= 0.6" + "node": "^12.20.0 || >=14" } }, - "node_modules/frac": { - "version": "0.3.1", + "node_modules/compare-func": { + "version": "2.0.0", "dev": true, - "engines": { - "node": ">=0.8" + "license": "MIT", + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" } }, - "node_modules/fraction.js": { - "version": "4.3.7", + "node_modules/componentsjs": { + "version": "5.5.1", + "dev": true, "license": "MIT", - "engines": { - "node": "*" + "dependencies": { + "@rdfjs/types": "*", + "@types/minimist": "^1.2.0", + "@types/node": "^18.0.0", + "@types/semver": "^7.3.4", + "jsonld-context-parser": "^2.1.1", + "minimist": "^1.2.0", + "rdf-data-factory": "^1.1.0", + "rdf-object": "^1.14.0", + "rdf-parse": "^2.0.0", + "rdf-quad": "^1.5.0", + "rdf-string": "^1.6.0", + "rdf-terms": "^1.7.0", + "semver": "^7.3.2", + "winston": "^3.3.3" }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" + "bin": { + "componentsjs-compile-config": "bin/compile-config.js" } }, - "node_modules/fresh": { - "version": "0.5.2", + "node_modules/componentsjs/node_modules/@types/node": { + "version": "18.19.18", + "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.6" + "dependencies": { + "undici-types": "~5.26.4" } }, - "node_modules/from": { - "version": "0.1.7", - "dev": true, - "license": "MIT" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "dev": true, + "node_modules/concat-map": { + "version": "0.0.1", "license": "MIT" }, - "node_modules/fs-extra": { - "version": "11.2.0", + "node_modules/concat-stream": { + "version": "2.0.0", "dev": true, + "engines": [ + "node >= 6.0" + ], "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" } }, - "node_modules/fs-minipass": { - "version": "2.1.0", + "node_modules/console-control-strings": { + "version": "1.1.0", "dev": true, - "license": "ISC", + "license": "ISC" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "dev": true, + "license": "MIT", "dependencies": { - "minipass": "^3.0.0" + "safe-buffer": "5.2.1" }, "engines": { - "node": ">= 8" + "node": ">= 0.6" } }, - "node_modules/fs-monkey": { + "node_modules/content-type": { "version": "1.0.5", - "license": "Unlicense" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.3", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.6" } }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "license": "MIT", + "node_modules/conventional-changelog-angular": { + "version": "7.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "compare-func": "^2.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=16" } }, - "node_modules/gauge": { - "version": "4.0.4", + "node_modules/conventional-changelog-core": { + "version": "5.0.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^6.0.0", + "conventional-commits-parser": "^4.0.0", + "dateformat": "^3.0.3", + "get-pkg-repo": "^4.2.1", + "git-raw-commits": "^3.0.0", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^5.0.0", + "normalize-package-data": "^3.0.3", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=14" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", + "node_modules/conventional-changelog-preset-loader": { + "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=14" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "license": "ISC", + "node_modules/conventional-changelog-writer": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "conventional-commits-filter": "^3.0.0", + "dateformat": "^3.0.3", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "meow": "^8.1.2", + "semver": "^7.0.0", + "split": "^1.0.1" + }, + "bin": { + "conventional-changelog-writer": "cli.js" + }, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=14" } }, - "node_modules/get-intrinsic": { - "version": "1.2.4", + "node_modules/conventional-commits-filter": { + "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=14" } }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "license": "ISC" - }, - "node_modules/get-package-type": { - "version": "0.1.0", + "node_modules/conventional-commits-parser": { + "version": "4.0.0", + "dev": true, "license": "MIT", + "dependencies": { + "is-text-path": "^1.0.1", + "JSONStream": "^1.3.5", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, "engines": { - "node": ">=8.0.0" + "node": ">=14" } }, - "node_modules/get-pkg-repo": { - "version": "4.2.1", + "node_modules/conventional-recommended-bump": { + "version": "7.0.1", "dev": true, "license": "MIT", "dependencies": { - "@hutson/parse-repository-url": "^3.0.0", - "hosted-git-info": "^4.0.0", - "through2": "^2.0.0", - "yargs": "^16.2.0" + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^3.0.0", + "conventional-commits-filter": "^3.0.0", + "conventional-commits-parser": "^4.0.0", + "git-raw-commits": "^3.0.0", + "git-semver-tags": "^5.0.0", + "meow": "^8.1.2" }, "bin": { - "get-pkg-repo": "src/cli.js" + "conventional-recommended-bump": "cli.js" }, "engines": { - "node": ">=6.9.0" + "node": ">=14" } }, - "node_modules/get-port": { - "version": "5.1.1", + "node_modules/convert-source-map": { + "version": "1.9.0", + "dev": true, + "license": "MIT" + }, + "node_modules/cookies": { + "version": "0.9.1", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" + "dependencies": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 0.8" } }, - "node_modules/get-stream": { - "version": "6.0.0", + "node_modules/copyfiles": { + "version": "2.4.1", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "glob": "^7.0.5", + "minimatch": "^3.0.3", + "mkdirp": "^1.0.4", + "noms": "0.0.0", + "through2": "^2.0.1", + "untildify": "^4.0.0", + "yargs": "^16.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "copyfiles": "copyfiles", + "copyup": "copyfiles" } }, - "node_modules/get-symbol-description": { - "version": "1.0.2", + "node_modules/copyfiles/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/copyfiles/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">= 0.4" - }, + "node": "*" + } + }, + "node_modules/core-js": { + "version": "3.36.0", + "hasInstallScript": true, + "license": "MIT", "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/git-raw-commits": { - "version": "3.0.0", + "node_modules/core-util-is": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/cors": { + "version": "2.8.5", "dev": true, "license": "MIT", "dependencies": { - "dargs": "^7.0.0", - "meow": "^8.1.2", - "split2": "^3.2.2" - }, - "bin": { - "git-raw-commits": "cli.js" + "object-assign": "^4", + "vary": "^1" }, "engines": { - "node": ">=14" + "node": ">= 0.10" } }, - "node_modules/git-remote-origin-url": { - "version": "2.0.0", + "node_modules/cosmiconfig": { + "version": "8.3.6", "dev": true, "license": "MIT", "dependencies": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/git-remote-origin-url/node_modules/pify": { - "version": "2.3.0", + "node_modules/crc-32": { + "version": "1.2.2", "dev": true, - "license": "MIT", + "license": "Apache-2.0", + "bin": { + "crc32": "bin/crc32.njs" + }, "engines": { - "node": ">=0.10.0" + "node": ">=0.8" } }, - "node_modules/git-semver-tags": { - "version": "5.0.1", + "node_modules/create-require": { + "version": "1.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-env": { + "version": "7.0.3", "dev": true, "license": "MIT", "dependencies": { - "meow": "^8.1.2", - "semver": "^7.0.0" + "cross-spawn": "^7.0.1" }, "bin": { - "git-semver-tags": "cli.js" + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" }, "engines": { - "node": ">=14" + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" } }, - "node_modules/git-up": { - "version": "7.0.0", - "dev": true, + "node_modules/cross-fetch": { + "version": "3.1.8", "license": "MIT", "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" + "node-fetch": "^2.6.12" } }, - "node_modules/git-url-parse": { - "version": "13.1.0", - "dev": true, + "node_modules/cross-fetch/node_modules/node-fetch": { + "version": "2.7.0", "license": "MIT", "dependencies": { - "git-up": "^7.0.0" + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/gitconfiglocal": { - "version": "1.0.0", + "node_modules/cross-spawn": { + "version": "7.0.3", "dev": true, - "license": "BSD", - "dependencies": { - "ini": "^1.3.2" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "license": "ISC", + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 8" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "license": "ISC", + "node_modules/crypto-js": { + "version": "4.2.0", + "license": "MIT" + }, + "node_modules/cssom": { + "version": "0.4.4", + "dev": true, + "license": "MIT" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "is-glob": "^4.0.3" + "cssom": "~0.3.6" }, "engines": { - "node": ">=10.13.0" + "node": ">=8" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "license": "BSD-2-Clause" + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "dev": true, + "license": "MIT" }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/csstype": { + "version": "3.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/dargs": { + "version": "7.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": ">=8" } }, - "node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, + "node_modules/data-uri-to-buffer": { + "version": "3.0.1", + "dev": true, + "license": "MIT", "engines": { - "node": "*" + "node": ">= 6" } }, - "node_modules/global-modules": { + "node_modules/data-urls": { "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { - "global-prefix": "^3.0.0" + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/global-prefix": { - "version": "3.0.0", + "node_modules/data-urls/node_modules/tr46": { + "version": "2.1.0", + "dev": true, "license": "MIT", "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "punycode": "^2.1.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" + "node_modules/data-urls/node_modules/webidl-conversions": { + "version": "6.1.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=10.4" } }, - "node_modules/globals": { - "version": "13.24.0", + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "8.7.0", + "dev": true, "license": "MIT", "dependencies": { - "type-fest": "^0.20.2" + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/globalthis": { - "version": "1.0.3", + "node_modules/dateformat": { + "version": "3.0.3", + "dev": true, "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "*" } }, - "node_modules/globby": { - "version": "11.1.0", + "node_modules/debug": { + "version": "4.3.4", + "dev": true, "license": "MIT", "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "ms": "2.1.2" }, "engines": { - "node": ">=10" + "node": ">=6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/gopd": { - "version": "1.0.1", + "node_modules/decamelize": { + "version": "1.2.0", + "dev": true, "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/got": { - "version": "13.0.0", + "node_modules/decamelize-keys": { + "version": "1.1.1", "dev": true, "license": "MIT", "dependencies": { - "@sindresorhus/is": "^5.2.0", - "@szmarczak/http-timer": "^5.0.1", - "cacheable-lookup": "^7.0.0", - "cacheable-request": "^10.2.8", - "decompress-response": "^6.0.0", - "form-data-encoder": "^2.1.2", - "get-stream": "^6.0.1", - "http2-wrapper": "^2.1.10", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^3.0.0", - "responselike": "^3.0.0" + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" }, "engines": { - "node": ">=16" + "node": ">=0.10.0" }, "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/got/node_modules/get-stream": { - "version": "6.0.1", + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", "dev": true, "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "license": "MIT" - }, - "node_modules/graphql": { - "version": "15.8.0", + "node_modules/decimal.js": { + "version": "10.4.3", "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.x" - } + "license": "MIT" }, - "node_modules/graphql-to-sparql": { - "version": "3.0.1", + "node_modules/decompress-response": { + "version": "6.0.0", "dev": true, "license": "MIT", "dependencies": { - "@rdfjs/types": "*", - "graphql": "^15.5.2", - "jsonld-context-parser": "^2.0.2", - "minimist": "^1.2.0", - "rdf-data-factory": "^1.1.0", - "sparqlalgebrajs": "^4.0.0" + "mimic-response": "^3.1.0" }, - "bin": { - "graphql-to-sparql": "bin/graphql-to-sparql.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gzip-size": { - "version": "6.0.0", + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "duplexer": "^0.1.2" - }, "engines": { "node": ">=10" }, @@ -15203,69 +8843,82 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/handle-thing": { - "version": "2.0.1", + "node_modules/dedent": { + "version": "0.7.0", + "dev": true, "license": "MIT" }, - "node_modules/handlebars": { - "version": "4.7.8", + "node_modules/deep-equal": { + "version": "2.2.3", "dev": true, "license": "MIT", "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" }, "engines": { - "node": ">=0.4.7" + "node": ">= 0.4" }, - "optionalDependencies": { - "uglify-js": "^3.1.4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hard-rejection": { - "version": "2.1.0", + "node_modules/deep-is": { + "version": "0.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.3.1", "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/harmony-reflect": { - "version": "1.6.2", - "license": "(Apache-2.0 OR MPL-1.1)" - }, - "node_modules/has-bigints": { - "version": "1.0.2", + "node_modules/defaults": { + "version": "1.0.4", + "dev": true, "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-flag": { - "version": "4.0.0", + "node_modules/defer-to-connect": { + "version": "2.0.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", + "node_modules/define-data-property": { + "version": "1.1.4", "license": "MIT", "dependencies": { - "es-define-property": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -15273,21 +8926,22 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-symbols": { - "version": "1.0.3", + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/has-tostringtag": { - "version": "1.0.2", + "node_modules/define-properties": { + "version": "1.2.1", + "dev": true, "license": "MIT", "dependencies": { - "has-symbols": "^1.0.3" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -15296,4016 +8950,4207 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", + "node_modules/delayed-stream": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", "dev": true, - "license": "ISC" + "license": "MIT" }, - "node_modules/hash.js": { - "version": "1.1.7", + "node_modules/denque": { + "version": "2.1.0", "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "license": "Apache-2.0", + "engines": { + "node": ">=0.10" } }, - "node_modules/hasown": { - "version": "2.0.1", + "node_modules/depd": { + "version": "2.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, "engines": { - "node": ">= 0.4" + "node": ">= 0.8" } }, - "node_modules/he": { + "node_modules/deprecation": { + "version": "2.3.1", + "dev": true, + "license": "ISC" + }, + "node_modules/destroy": { "version": "1.2.0", + "dev": true, "license": "MIT", - "bin": { - "he": "bin/he" + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/hierarchy-closure": { - "version": "1.2.2", - "license": "MIT" + "node_modules/detect-indent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "node_modules/hoopy": { - "version": "0.1.4", + "node_modules/detect-newline": { + "version": "3.1.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 6.0.0" + "node": ">=8" } }, - "node_modules/hosted-git-info": { - "version": "4.1.0", + "node_modules/diff": { + "version": "4.0.2", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "license": "BSD-3-Clause", "engines": { - "node": ">=10" + "node": ">=0.3.1" } }, - "node_modules/hpack.js": { - "version": "2.1.6", + "node_modules/diff-sequences": { + "version": "29.6.3", + "dev": true, "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/hpack.js/node_modules/isarray": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.8", + "node_modules/dir-glob": { + "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/hpack.js/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", + "node_modules/doctrine": { + "version": "3.0.0", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "safe-buffer": "~5.1.0" + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "dev": true, + "license": "MIT" + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { - "whatwg-encoding": "^1.0.5" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/html-entities": { - "version": "2.4.0", + "node_modules/domelementtype": { + "version": "2.3.0", + "dev": true, "funding": [ { "type": "github", - "url": "https://github.com/sponsors/mdevils" - }, - { - "type": "patreon", - "url": "https://patreon.com/mdevils" + "url": "https://github.com/sponsors/fb55" } ], - "license": "MIT" - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "license": "MIT" + "license": "BSD-2-Clause" }, - "node_modules/html-minifier-terser": { - "version": "6.1.0", + "node_modules/domexception": { + "version": "2.0.1", + "dev": true, "license": "MIT", "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "bin": { - "html-minifier-terser": "cli.js" + "webidl-conversions": "^5.0.0" }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/html-minifier-terser/node_modules/commander": { - "version": "8.3.0", - "license": "MIT", + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "dev": true, + "license": "BSD-2-Clause", "engines": { - "node": ">= 12" + "node": ">=8" } }, - "node_modules/html-webpack-plugin": { - "version": "5.6.0", - "license": "MIT", + "node_modules/domhandler": { + "version": "5.0.3", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" + "domelementtype": "^2.3.0" }, "engines": { - "node": ">=10.13.0" + "node": ">= 4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.20.0" + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/htmlparser2": { - "version": "9.1.0", + "node_modules/dot-prop": { + "version": "5.3.0", "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], "license": "MIT", "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.1.0", - "entities": "^4.5.0" + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "16.3.2", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" } }, - "node_modules/http-assert": { - "version": "1.5.0", + "node_modules/dotenv-expand": { + "version": "10.0.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/dts-dom": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/dts-dom/-/dts-dom-3.6.0.tgz", + "integrity": "sha512-on5jxTgt+A6r0Zyyz6ZRHXaAO7J1VPnOd6+AmvI1vH440AlAZZNc5rUHzgPuTjGlrVr1rOWQYNl7ZJK6rDohbw==", + "license": "Apache-2.0" + }, + "node_modules/duplexer": { + "version": "0.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", "dev": true, - "license": "MIT", + "license": "MIT" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/ejs": { + "version": "3.1.9", + "license": "Apache-2.0", "dependencies": { - "deep-equal": "~1.0.1", - "http-errors": "~1.8.0" + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/http-assert/node_modules/deep-equal": { - "version": "1.0.1", + "node_modules/electron-to-chromium": { + "version": "1.5.42", "dev": true, - "license": "MIT" + "license": "ISC" }, - "node_modules/http-assert/node_modules/depd": { - "version": "1.1.2", + "node_modules/emittery": { + "version": "0.8.1", "dev": true, "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/http-assert/node_modules/http-errors": { - "version": "1.8.1", + "node_modules/emoji-regex": { + "version": "8.0.0", "dev": true, - "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } + "license": "MIT" }, - "node_modules/http-basic": { - "version": "8.1.3", + "node_modules/enabled": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "dev": true, "license": "MIT", - "dependencies": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" - }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.8" } }, - "node_modules/http-basic/node_modules/concat-stream": { - "version": "1.6.2", - "engines": [ - "node >= 0.8" - ], + "node_modules/encoding": { + "version": "0.1.13", "license": "MIT", + "optional": true, "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "iconv-lite": "^0.6.2" } }, - "node_modules/http-basic/node_modules/isarray": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/http-basic/node_modules/readable-stream": { - "version": "2.3.8", + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", "license": "MIT", + "optional": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/http-basic/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/http-basic/node_modules/string_decoder": { - "version": "1.1.1", + "node_modules/end-of-stream": { + "version": "1.4.4", + "dev": true, "license": "MIT", "dependencies": { - "safe-buffer": "~5.1.0" + "once": "^1.4.0" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", + "node_modules/enquirer": { + "version": "2.3.6", "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "license": "MIT" - }, - "node_modules/http-errors": { - "version": "2.0.0", "license": "MIT", "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "ansi-colors": "^4.1.1" }, "engines": { - "node": ">= 0.8" + "node": ">=8.6" } }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", + "node_modules/entities": { + "version": "4.5.0", + "dev": true, + "license": "BSD-2-Clause", "engines": { - "node": ">= 0.8" + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/http-link-header": { - "version": "1.1.2", + "node_modules/env-paths": { + "version": "2.2.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=6.0.0" + "node": ">=6" } }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "license": "MIT" - }, - "node_modules/http-proxy": { - "version": "1.18.1", + "node_modules/envinfo": { + "version": "7.8.1", + "dev": true, "license": "MIT", - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" + "bin": { + "envinfo": "dist/cli.js" }, "engines": { - "node": ">=8.0.0" + "node": ">=4" } }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", + "node_modules/err-code": { + "version": "2.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", "dev": true, "license": "MIT", "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" + "is-arrayish": "^0.2.1" } }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", + "node_modules/es-abstract": { + "version": "1.22.4", + "dev": true, "license": "MIT", "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.6", + "call-bind": "^1.0.7", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.2", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.1", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.0", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.1", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.14" }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { - "version": "3.0.0", - "license": "MIT", "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/http-response-object": { - "version": "3.0.2", - "license": "MIT", - "dependencies": { - "@types/node": "^10.0.3" - } - }, - "node_modules/http-response-object/node_modules/@types/node": { - "version": "10.17.60", - "license": "MIT" + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/http2-wrapper": { - "version": "2.2.1", - "dev": true, + "node_modules/es-define-property": { + "version": "1.0.0", "license": "MIT", "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=10.19.0" + "node": ">= 0.4" } }, - "node_modules/http2-wrapper/node_modules/quick-lru": { - "version": "5.1.1", - "dev": true, + "node_modules/es-errors": { + "version": "1.3.0", "license": "MIT", "engines": { - "node": ">=10" + "node": ">= 0.4" + } + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", + "node_modules/es-iterator-helpers": { + "version": "1.0.17", + "dev": true, "license": "MIT", "dependencies": { - "agent-base": "6", - "debug": "4" + "asynciterator.prototype": "^1.0.0", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.4", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.2", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.1.0" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "license": "Apache-2.0", + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, "engines": { - "node": ">=10.17.0" + "node": ">= 0.4" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", + "node_modules/es-shim-unscopables": { + "version": "1.0.2", "dev": true, "license": "MIT", "dependencies": { - "ms": "^2.0.0" + "hasown": "^2.0.0" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "dev": true, "license": "MIT", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "license": "ISC", - "engines": { - "node": "^10 || ^12 || >= 14" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/idb": { - "version": "7.1.1", - "license": "ISC" - }, - "node_modules/identity-obj-proxy": { - "version": "3.0.0", + "node_modules/escalade": { + "version": "3.2.0", + "dev": true, "license": "MIT", - "dependencies": { - "harmony-reflect": "^1.4.6" - }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause" + "node_modules/escape-html": { + "version": "1.0.3", + "dev": true, + "license": "MIT" }, - "node_modules/ignore": { - "version": "5.3.1", + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ignore-walk": { - "version": "5.0.1", + "node_modules/escodegen": { + "version": "2.1.0", "dev": true, - "license": "ISC", + "license": "BSD-2-Clause", "dependencies": { - "minimatch": "^5.0.1" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "5.1.6", + "node_modules/eslint": { + "version": "8.57.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/immer": { - "version": "9.0.21", + "node_modules/eslint-config-prettier": { + "version": "9.1.0", + "dev": true, "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/immutable": { - "version": "4.3.5", + "node_modules/eslint-plugin-prettier": { + "version": "5.1.3", "dev": true, - "license": "MIT" - }, - "node_modules/import-fresh": { - "version": "3.3.0", "license": "MIT", "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.6" }, "engines": { - "node": ">=6" + "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint-plugin-prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": "*", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/import-local": { - "version": "3.1.0", + "node_modules/eslint-plugin-react": { + "version": "7.33.2", + "dev": true, "license": "MIT", "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" }, "engines": { - "node": ">=8" + "node": ">=4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "license": "MIT", - "engines": { - "node": ">=0.8.19" + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/indent-string": { - "version": "4.0.0", + "node_modules/eslint-plugin-react/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "dev": true, - "license": "ISC" - }, - "node_modules/inflight": { - "version": "1.0.6", - "license": "ISC", "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/inherits": { - "version": "2.0.4", - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "license": "ISC" - }, - "node_modules/init-package-json": { - "version": "5.0.0", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", "dev": true, - "license": "ISC", + "license": "Apache-2.0", "dependencies": { - "npm-package-arg": "^10.0.0", - "promzard": "^1.0.0", - "read": "^2.0.0", - "read-package-json": "^6.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^5.0.0" + "esutils": "^2.0.2" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/init-package-json/node_modules/hosted-git-info": { - "version": "6.1.1", + "node_modules/eslint-plugin-react/node_modules/minimatch": { + "version": "3.1.2", "dev": true, "license": "ISC", "dependencies": { - "lru-cache": "^7.5.1" + "brace-expansion": "^1.1.7" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/init-package-json/node_modules/lru-cache": { - "version": "7.18.3", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "node": "*" } }, - "node_modules/init-package-json/node_modules/npm-package-arg": { - "version": "10.1.0", + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", "dev": true, "license": "ISC", - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/inquirer": { - "version": "8.2.6", + "node_modules/eslint-scope": { + "version": "7.2.2", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^6.0.1" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">= 0.4" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/ioredis": { - "version": "5.3.2", + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", "dev": true, - "license": "MIT", - "dependencies": { - "@ioredis/commands": "^1.1.1", - "cluster-key-slot": "^1.1.0", - "debug": "^4.3.4", - "denque": "^2.1.0", - "lodash.defaults": "^4.2.0", - "lodash.isarguments": "^3.1.0", - "redis-errors": "^1.2.0", - "redis-parser": "^3.0.0", - "standard-as-callback": "^2.1.0" - }, + "license": "Apache-2.0", "engines": { - "node": ">=12.22.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ioredis" + "url": "https://opencollective.com/eslint" } }, - "node_modules/ip-address": { - "version": "9.0.5", + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, "license": "MIT", "dependencies": { - "jsbn": "1.1.0", - "sprintf-js": "^1.1.3" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/ipaddr.js": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">= 10" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/is-arguments": { - "version": "1.1.1", + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "*" } }, - "node_modules/is-array-buffer": { - "version": "3.0.4", + "node_modules/esm": { + "version": "3.2.25", + "dev": true, "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "license": "MIT" - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "license": "MIT", + "node_modules/espree": { + "version": "9.6.1", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "has-tostringtag": "^1.0.0" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "node_modules/is-bigint": { - "version": "1.0.4", - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.1" + "node_modules/esprima": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "license": "MIT", + "node_modules/esquery": { + "version": "1.5.0", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "binary-extensions": "^2.0.0" + "estraverse": "^5.1.0" }, "engines": { - "node": ">=8" + "node": ">=0.10" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "license": "MIT", + "node_modules/esrecurse": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "license": "MIT", + "node_modules/estraverse": { + "version": "5.3.0", + "dev": true, + "license": "BSD-2-Clause", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/is-ci": { - "version": "3.0.1", + "node_modules/esutils": { + "version": "2.0.3", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "3.5.0", "dev": true, "license": "MIT", - "dependencies": { - "ci-info": "^3.2.0" + "engines": { + "node": ">=6.0.0" }, - "bin": { - "is-ci": "bin.js" + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" } }, - "node_modules/is-core-module": { - "version": "2.13.1", + "node_modules/event-stream": { + "version": "3.3.4", + "dev": true, "license": "MIT", "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "duplexer": "~0.1.1", + "from": "~0", + "map-stream": "~0.1.0", + "pause-stream": "0.0.11", + "split": "0.3", + "stream-combiner": "~0.0.4", + "through": "~2.3.1" } }, - "node_modules/is-date-object": { - "version": "1.0.5", + "node_modules/event-stream/node_modules/split": { + "version": "0.3.3", + "dev": true, "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "through": "2" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "*" } }, - "node_modules/is-docker": { - "version": "2.2.1", + "node_modules/event-target-shim": { + "version": "5.0.1", "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/is-extglob": { - "version": "2.1.1", + "node_modules/eventemitter3": { + "version": "4.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/events": { + "version": "3.3.0", "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=0.8.x" } }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", + "node_modules/execa": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "license": "MIT", + "node_modules/exit": { + "version": "0.1.2", + "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "license": "MIT", + "node_modules/exit-on-epipe": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=6" + "node": ">=0.8" } }, - "node_modules/is-generator-function": { - "version": "1.0.10", + "node_modules/expect": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-glob": { - "version": "4.0.3", + "node_modules/expect/node_modules/jest-get-type": { + "version": "27.5.1", + "dev": true, "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-interactive": { - "version": "1.0.0", + "node_modules/exponential-backoff": { + "version": "3.1.1", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/external-editor": { + "version": "3.1.0", "dev": true, "license": "MIT", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/is-lambda": { - "version": "1.0.1", + "node_modules/external-editor/node_modules/tmp": { + "version": "0.0.33", "dev": true, - "license": "MIT" - }, - "node_modules/is-map": { - "version": "2.0.2", "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, - "node_modules/is-module": { - "version": "1.0.0", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "dev": true, "license": "MIT" }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/fast-diff": { + "version": "1.3.0", + "dev": true, + "license": "Apache-2.0" }, - "node_modules/is-number": { - "version": "7.0.0", + "node_modules/fast-glob": { + "version": "3.3.2", + "dev": true, "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, "engines": { - "node": ">=0.12.0" + "node": ">=8.6.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "license": "MIT", + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "has-tostringtag": "^1.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/is-obj": { - "version": "2.0.0", + "node_modules/fb-watchman": { + "version": "2.0.2", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "license": "MIT", - "engines": { - "node": ">=8" - } + "node_modules/fecha": { + "version": "4.2.3", + "dev": true, + "license": "MIT" }, - "node_modules/is-plain-obj": { - "version": "1.1.0", + "node_modules/fetch-blob": { + "version": "2.1.2", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": "^10.17.0 || >=12.3.0" + }, + "peerDependenciesMeta": { + "domexception": { + "optional": true + } } }, - "node_modules/is-plain-object": { - "version": "5.0.0", + "node_modules/fetch-sparql-endpoint": { + "version": "4.2.1", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@rdfjs/types": "*", + "@smessie/readable-web-to-node-stream": "^3.0.3", + "@types/readable-stream": "^2.3.11", + "@types/sparqljs": "^3.1.3", + "abort-controller": "^3.0.0", + "cross-fetch": "^3.0.6", + "is-stream": "^2.0.0", + "minimist": "^1.2.0", + "n3": "^1.6.3", + "rdf-string": "^1.6.0", + "sparqljs": "^3.1.2", + "sparqljson-parse": "^2.2.0", + "sparqlxml-parse": "^2.1.1", + "stream-to-string": "^1.1.0" + }, + "bin": { + "fetch-sparql-endpoint": "bin/fetch-sparql-endpoint.js" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.1.4", + "node_modules/figures": { + "version": "3.2.0", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-regexp": { - "version": "1.0.0", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=0.8.0" } }, - "node_modules/is-root": { - "version": "2.1.0", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "dev": true, "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, "engines": { - "node": ">=6" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/is-set": { - "version": "2.0.2", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/filelist": { + "version": "1.0.4", + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "license": "MIT", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "license": "ISC", "dependencies": { - "call-bind": "^1.0.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "node_modules/is-ssh": { - "version": "1.4.0", + "node_modules/fill-range": { + "version": "7.0.1", "dev": true, "license": "MIT", "dependencies": { - "protocols": "^2.0.1" - } - }, - "node_modules/is-stream": { - "version": "2.0.0", - "license": "MIT", + "to-regex-range": "^5.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/is-string": { - "version": "1.0.7", + "node_modules/find-up": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/flat": { + "version": "5.0.2", + "dev": true, + "license": "BSD-3-Clause", + "bin": { + "flat": "cli.js" } }, - "node_modules/is-text-path": { - "version": "1.0.1", + "node_modules/flat-cache": { + "version": "3.2.0", "dev": true, "license": "MIT", "dependencies": { - "text-extensions": "^1.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=0.10.0" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/flatted": { + "version": "3.3.1", + "dev": true, + "license": "ISC" }, - "node_modules/is-typedarray": { - "version": "1.0.0", + "node_modules/fn.name": { + "version": "1.1.0", + "dev": true, "license": "MIT" }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", + "node_modules/follow-redirects": { + "version": "1.15.5", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", "engines": { - "node": ">=10" + "node": ">=4.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/is-weakref": { - "version": "1.0.2", + "node_modules/for-each": { + "version": "0.3.3", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "is-callable": "^1.1.3" } }, - "node_modules/is-weakset": { - "version": "2.0.2", - "license": "MIT", + "node_modules/foreground-child": { + "version": "3.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "dev": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/isarray": { - "version": "2.0.5", - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "license": "ISC" - }, - "node_modules/iso8601-duration": { - "version": "2.1.2", + "node_modules/form-data": { + "version": "4.0.0", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } }, - "node_modules/isobject": { - "version": "3.0.1", + "node_modules/form-data-encoder": { + "version": "2.1.4", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 14.17" } }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "license": "BSD-3-Clause", + "node_modules/frac": { + "version": "0.3.1", + "dev": true, "engines": { - "node": ">=8" + "node": ">=0.8" } }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, + "node_modules/fresh": { + "version": "0.5.2", + "dev": true, + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } + "node_modules/from": { + "version": "0.1.7", + "dev": true, + "license": "MIT" }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "license": "BSD-3-Clause", + "node_modules/fs-constants": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fs-extra": { + "version": "11.2.0", + "dev": true, + "license": "MIT", "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.14" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "license": "BSD-3-Clause", + "node_modules/fs-minipass": { + "version": "2.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "minipass": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">= 8" } }, - "node_modules/istanbul-reports": { - "version": "3.1.7", - "license": "BSD-3-Clause", - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/iterator.prototype": { + "node_modules/function-bind": { "version": "1.1.2", "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jackspeak": { - "version": "2.3.6", - "license": "BlueOak-1.0.0", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "dev": true, + "license": "MIT", "dependencies": { - "@isaacs/cliui": "^8.0.2" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { - "node": ">=14" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jake": { - "version": "10.8.7", - "license": "Apache-2.0", - "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.4", - "minimatch": "^3.1.2" - }, - "bin": { - "jake": "bin/cli.js" - }, - "engines": { - "node": ">=10" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jake/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/functions-have-names": { + "version": "1.2.3", + "dev": true, "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jake/node_modules/minimatch": { - "version": "3.1.2", + "node_modules/gauge": { + "version": "4.0.4", + "dev": true, "license": "ISC", "dependencies": { - "brace-expansion": "^1.1.7" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": "*" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jest": { - "version": "27.5.1", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, "license": "MIT", - "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "bin": { - "jest": "bin/jest.js" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=6.9.0" } }, - "node_modules/jest-changed-files": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "dev": true, + "license": "ISC", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/jest-circus": { - "version": "27.5.1", + "node_modules/get-intrinsic": { + "version": "1.2.4", "license": "MIT", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/ansi-styles": { - "version": "5.2.0", - "license": "MIT", - "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-circus/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/get-package-type": { + "version": "0.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8.0.0" } }, - "node_modules/jest-circus/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" - }, - "node_modules/jest-cli": { - "version": "27.5.1", + "node_modules/get-pkg-repo": { + "version": "4.2.1", + "dev": true, "license": "MIT", "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", + "@hutson/parse-repository-url": "^3.0.0", + "hosted-git-info": "^4.0.0", + "through2": "^2.0.0", "yargs": "^16.2.0" }, "bin": { - "jest": "bin/jest.js" + "get-pkg-repo": "src/cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=6.9.0" } }, - "node_modules/jest-config": { - "version": "27.5.1", + "node_modules/get-port": { + "version": "5.1.1", + "dev": true, "license": "MIT", - "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" + "node": ">=8" }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/get-stream": { + "version": "6.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-config/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/get-symbol-description": { + "version": "1.0.2", + "dev": true, "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/git-raw-commits": { + "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "dargs": "^7.0.0", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "git-raw-commits": "cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14" } }, - "node_modules/jest-config/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" - }, - "node_modules/jest-diff": { - "version": "29.7.0", + "node_modules/git-remote-origin-url": { + "version": "2.0.0", "dev": true, "license": "MIT", "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-docblock": { - "version": "27.5.1", + "node_modules/git-remote-origin-url/node_modules/pify": { + "version": "2.3.0", + "dev": true, "license": "MIT", - "dependencies": { - "detect-newline": "^3.0.0" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-each": { - "version": "27.5.1", + "node_modules/git-semver-tags": { + "version": "5.0.1", + "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" + "meow": "^8.1.2", + "semver": "^7.0.0" + }, + "bin": { + "git-semver-tags": "cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14" } }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/git-up": { + "version": "7.0.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "dependencies": { + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" } }, - "node_modules/jest-each/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/git-url-parse": { + "version": "13.1.0", + "dev": true, "license": "MIT", - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "git-up": "^7.0.0" } }, - "node_modules/jest-each/node_modules/pretty-format": { - "version": "27.5.1", - "license": "MIT", + "node_modules/gitconfiglocal": { + "version": "1.0.0", + "dev": true, + "license": "BSD", "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "ini": "^1.3.2" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/jest-each/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" + "node_modules/glob-parent": { + "version": "6.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "*" } }, - "node_modules/jest-environment-node": { - "version": "27.5.1", + "node_modules/globals": { + "version": "13.24.0", + "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "type-fest": "^0.20.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-get-type": { - "version": "29.6.3", + "node_modules/globalthis": { + "version": "1.0.3", "dev": true, "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3" + }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-haste-map": { - "version": "27.5.1", + "node_modules/globby": { + "version": "11.1.0", + "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-jasmine2": { - "version": "27.5.1", + "node_modules/gopd": { + "version": "1.0.1", "license": "MIT", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" + "get-intrinsic": "^1.1.3" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-jasmine2/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/got": { + "version": "13.0.0", + "dev": true, "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^5.2.0", + "@szmarczak/http-timer": "^5.0.1", + "cacheable-lookup": "^7.0.0", + "cacheable-request": "^10.2.8", + "decompress-response": "^6.0.0", + "form-data-encoder": "^2.1.2", + "get-stream": "^6.0.1", + "http2-wrapper": "^2.1.10", + "lowercase-keys": "^3.0.0", + "p-cancelable": "^3.0.0", + "responselike": "^3.0.0" + }, "engines": { - "node": ">=10" + "node": ">=16" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sindresorhus/got?sponsor=1" } }, - "node_modules/jest-jasmine2/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/got/node_modules/get-stream": { + "version": "6.0.1", + "dev": true, "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-jasmine2/node_modules/react-is": { - "version": "17.0.2", + "node_modules/graceful-fs": { + "version": "4.2.11", + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "dev": true, "license": "MIT" }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", + "node_modules/graphql": { + "version": "15.8.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/graphql-to-sparql": { + "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "@rdfjs/types": "*", + "graphql": "^15.5.2", + "jsonld-context-parser": "^2.0.2", + "minimist": "^1.2.0", + "rdf-data-factory": "^1.1.0", + "sparqlalgebrajs": "^4.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bin": { + "graphql-to-sparql": "bin/graphql-to-sparql.js" } }, - "node_modules/jest-leak-detector/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/handlebars": { + "version": "4.7.8", + "dev": true, "license": "MIT", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, "engines": { - "node": ">=10" + "node": ">=0.4.7" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/jest-leak-detector/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/hard-rejection": { + "version": "2.1.0", + "dev": true, "license": "MIT", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-leak-detector/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/has-bigints": { + "version": "1.0.2", + "dev": true, "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-leak-detector/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" + "node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/jest-matcher-utils": { - "version": "27.5.1", + "node_modules/has-property-descriptors": { + "version": "1.0.2", "license": "MIT", "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "es-define-property": "^1.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/has-proto": { + "version": "1.0.3", "license": "MIT", "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils/node_modules/diff-sequences": { - "version": "27.5.1", + "node_modules/has-symbols": { + "version": "1.0.3", "license": "MIT", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils/node_modules/jest-diff": { - "version": "27.5.1", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "has-symbols": "^1.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/has-unicode": { + "version": "2.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/hash.js": { + "version": "1.1.7", + "dev": true, "license": "MIT", - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, - "node_modules/jest-matcher-utils/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/hasown": { + "version": "2.0.1", "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "function-bind": "^1.1.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-matcher-utils/node_modules/react-is": { - "version": "17.0.2", + "node_modules/hierarchy-closure": { + "version": "1.2.2", "license": "MIT" }, - "node_modules/jest-message-util": { - "version": "27.5.1", - "license": "MIT", + "node_modules/hosted-git-info": { + "version": "4.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "lru-cache": "^6.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "5.2.0", - "license": "MIT", "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-message-util/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "whatwg-encoding": "^1.0.5" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/jest-message-util/node_modules/react-is": { - "version": "17.0.2", + "node_modules/html-escaper": { + "version": "2.0.2", + "dev": true, "license": "MIT" }, - "node_modules/jest-mock": { - "version": "27.5.1", + "node_modules/htmlparser2": { + "version": "9.1.0", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" + } + }, + "node_modules/http-assert": { + "version": "1.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.8" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", + "node_modules/http-assert/node_modules/deep-equal": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/http-assert/node_modules/depd": { + "version": "1.1.2", + "dev": true, "license": "MIT", "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "node": ">= 0.6" } }, - "node_modules/jest-rdf": { + "node_modules/http-assert/node_modules/http-errors": { "version": "1.8.1", "dev": true, "license": "MIT", "dependencies": { - "@rdfjs/types": "*", - "rdf-isomorphic": "^1.3.0", - "rdf-string": "^1.6.0", - "rdf-terms": "^1.9.1" + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/jest-regex-util": { - "version": "27.5.1", + "node_modules/http-basic": { + "version": "8.1.3", "license": "MIT", + "dependencies": { + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.0.0" } }, - "node_modules/jest-resolve": { - "version": "27.5.1", + "node_modules/http-basic/node_modules/concat-stream": { + "version": "1.6.2", + "engines": [ + "node >= 0.8" + ], "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/jest-resolve-dependencies": { - "version": "27.5.1", + "node_modules/http-basic/node_modules/isarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/http-basic/node_modules/readable-stream": { + "version": "2.3.8", "license": "MIT", "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/jest-resolve/node_modules/resolve": { - "version": "1.22.8", + "node_modules/http-basic/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" + }, + "node_modules/http-basic/node_modules/string_decoder": { + "version": "1.1.1", "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "safe-buffer": "~5.1.0" } }, - "node_modules/jest-runner": { - "version": "27.5.1", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-link-header": { + "version": "1.1.2", + "license": "MIT", + "engines": { + "node": ">=6.0.0" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", + "node_modules/http-response-object": { + "version": "3.0.2", "license": "MIT", "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "@types/node": "^10.0.3" } }, - "node_modules/jest-snapshot": { - "version": "27.5.1", + "node_modules/http-response-object/node_modules/@types/node": { + "version": "10.17.60", + "license": "MIT" + }, + "node_modules/http2-wrapper": { + "version": "2.2.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.2.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10.19.0" } }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/http2-wrapper/node_modules/quick-lru": { + "version": "5.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-snapshot/node_modules/diff-sequences": { - "version": "27.5.1", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/jest-snapshot/node_modules/jest-diff": { - "version": "27.5.1", - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, + "node_modules/human-signals": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10.17.0" } }, - "node_modules/jest-snapshot/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/humanize-ms": { + "version": "1.2.1", + "dev": true, "license": "MIT", - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "dependencies": { + "ms": "^2.0.0" } }, - "node_modules/jest-snapshot/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/iconv-lite": { + "version": "0.4.24", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-snapshot/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" }, - "node_modules/jest-util": { - "version": "27.5.1", + "node_modules/ignore": { + "version": "5.3.1", + "dev": true, "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "5.0.1", + "dev": true, + "license": "ISC", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "minimatch": "^5.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jest-validate": { - "version": "27.5.1", - "license": "MIT", + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "5.1.6", + "dev": true, + "license": "ISC", "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/jest-validate/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/immutable": { + "version": "4.3.5", + "dev": true, + "license": "MIT" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "dev": true, "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", + "node_modules/import-local": { + "version": "3.1.0", + "dev": true, "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate/node_modules/jest-get-type": { - "version": "27.5.1", + "node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, "license": "MIT", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.8.19" } }, - "node_modules/jest-validate/node_modules/pretty-format": { - "version": "27.5.1", + "node_modules/indent-string": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/jest-validate/node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" + "node_modules/inherits": { + "version": "2.0.4", + "license": "ISC" }, - "node_modules/jest-watch-typeahead": { - "version": "1.1.0", - "license": "MIT", + "node_modules/ini": { + "version": "1.3.8", + "dev": true, + "license": "ISC" + }, + "node_modules/init-package-json": { + "version": "5.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-escapes": "^4.3.1", - "chalk": "^4.0.0", - "jest-regex-util": "^28.0.0", - "jest-watcher": "^28.0.0", - "slash": "^4.0.0", - "string-length": "^5.0.1", - "strip-ansi": "^7.0.1" + "npm-package-arg": "^10.0.0", + "promzard": "^1.0.0", + "read": "^2.0.0", + "read-package-json": "^6.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "jest": "^27.0.0 || ^28.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/console": { - "version": "28.1.3", - "license": "MIT", + "node_modules/init-package-json/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "@jest/types": "^28.1.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", - "slash": "^3.0.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/console/node_modules/slash": { - "version": "3.0.0", - "license": "MIT", + "node_modules/init-package-json/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/schemas": { - "version": "28.1.3", - "license": "MIT", + "node_modules/init-package-json/node_modules/npm-package-arg": { + "version": "10.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "@sinclair/typebox": "^0.24.1" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/test-result": { - "version": "28.1.3", + "node_modules/inquirer": { + "version": "8.2.6", + "dev": true, "license": "MIT", "dependencies": { - "@jest/console": "^28.1.3", - "@jest/types": "^28.1.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=12.0.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/types": { - "version": "28.1.3", + "node_modules/internal-slot": { + "version": "1.0.7", + "dev": true, "license": "MIT", "dependencies": { - "@jest/schemas": "^28.1.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-watch-typeahead/node_modules/@sinclair/typebox": { - "version": "0.24.51", - "license": "MIT" - }, - "node_modules/jest-watch-typeahead/node_modules/ansi-styles": { - "version": "5.2.0", + "node_modules/ioredis": { + "version": "5.3.2", + "dev": true, "license": "MIT", + "dependencies": { + "@ioredis/commands": "^1.1.1", + "cluster-key-slot": "^1.1.0", + "debug": "^4.3.4", + "denque": "^2.1.0", + "lodash.defaults": "^4.2.0", + "lodash.isarguments": "^3.1.0", + "redis-errors": "^1.2.0", + "redis-parser": "^3.0.0", + "standard-as-callback": "^2.1.0" + }, "engines": { - "node": ">=10" + "node": ">=12.22.0" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/ioredis" } }, - "node_modules/jest-watch-typeahead/node_modules/emittery": { - "version": "0.10.2", + "node_modules/ip-address": { + "version": "9.0.5", + "dev": true, "license": "MIT", - "engines": { - "node": ">=12" + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "engines": { + "node": ">= 12" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-message-util": { - "version": "28.1.3", + "node_modules/is-arguments": { + "version": "1.1.1", + "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-message-util/node_modules/slash": { - "version": "3.0.0", + "node_modules/is-array-buffer": { + "version": "3.0.4", + "dev": true, "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-regex-util": { - "version": "28.0.2", + "node_modules/is-arrayish": { + "version": "0.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "dev": true, "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-util": { - "version": "28.1.3", + "node_modules/is-bigint": { + "version": "1.0.4", + "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "^28.1.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "has-bigints": "^1.0.1" }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher": { - "version": "28.1.3", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "dev": true, "license": "MIT", "dependencies": { - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.10.2", - "jest-util": "^28.1.3", - "string-length": "^4.0.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/string-length": { - "version": "4.0.2", + "node_modules/is-callable": { + "version": "1.2.7", + "dev": true, "license": "MIT", - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/strip-ansi": { - "version": "6.0.1", + "node_modules/is-ci": { + "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "ci-info": "^3.2.0" }, - "engines": { - "node": ">=8" + "bin": { + "is-ci": "bin.js" } }, - "node_modules/jest-watch-typeahead/node_modules/pretty-format": { - "version": "28.1.3", + "node_modules/is-core-module": { + "version": "2.13.1", + "dev": true, "license": "MIT", "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "hasown": "^2.0.0" }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/slash": { - "version": "4.0.0", + "node_modules/is-date-object": { + "version": "1.0.5", + "dev": true, "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/string-length": { - "version": "5.0.1", + "node_modules/is-docker": { + "version": "2.2.1", + "dev": true, "license": "MIT", - "dependencies": { - "char-regex": "^2.0.0", - "strip-ansi": "^7.0.1" + "bin": { + "is-docker": "cli.js" }, "engines": { - "node": ">=12.20" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watch-typeahead/node_modules/string-length/node_modules/char-regex": { - "version": "2.0.1", + "node_modules/is-extglob": { + "version": "2.1.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=12.20" + "node": ">=0.10.0" } }, - "node_modules/jest-watch-typeahead/node_modules/strip-ansi": { - "version": "7.1.0", + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" + "call-bind": "^1.0.2" }, "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-watch-typeahead/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.0.1", + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "node": ">=8" } }, - "node_modules/jest-watcher": { - "version": "27.5.1", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-worker": { - "version": "27.5.1", + "node_modules/is-generator-function": { + "version": "1.0.10", + "dev": true, "license": "MIT", "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", + "node_modules/is-glob": { + "version": "4.0.3", + "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/jiti": { - "version": "1.21.0", + "node_modules/is-interactive": { + "version": "1.0.0", + "dev": true, "license": "MIT", - "bin": { - "jiti": "bin/jiti.js" + "engines": { + "node": ">=8" } }, - "node_modules/joi": { - "version": "17.12.2", + "node_modules/is-lambda": { + "version": "1.0.1", "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.3.0", - "@hapi/topo": "^5.1.0", - "@sideway/address": "^4.1.5", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } + "license": "MIT" }, - "node_modules/jose": { - "version": "4.15.9", + "node_modules/is-map": { + "version": "2.0.2", "dev": true, "license": "MIT", "funding": { - "url": "https://github.com/sponsors/panva" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.0", + "node_modules/is-negative-zero": { + "version": "2.0.3", + "dev": true, "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" + "engines": { + "node": ">= 0.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsbn": { - "version": "1.1.0", + "node_modules/is-number": { + "version": "7.0.0", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } }, - "node_modules/jsdom": { - "version": "16.7.0", + "node_modules/is-number-object": { + "version": "1.0.7", + "dev": true, "license": "MIT", "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsdom/node_modules/@tootallnate/once": { - "version": "1.1.2", + "node_modules/is-obj": { + "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/jsdom/node_modules/form-data": { - "version": "3.0.1", + "node_modules/is-path-inside": { + "version": "3.0.3", + "dev": true, "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/jsdom/node_modules/http-proxy-agent": { - "version": "4.0.1", + "node_modules/is-plain-obj": { + "version": "1.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/jsdom/node_modules/tr46": { - "version": "2.1.0", + "node_modules/is-plain-object": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "dev": true, "license": "MIT", "dependencies": { - "punycode": "^2.1.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsdom/node_modules/webidl-conversions": { - "version": "6.1.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=10.4" + "node_modules/is-set": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsdom/node_modules/whatwg-url": { - "version": "8.7.0", + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "dev": true, "license": "MIT", "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "call-bind": "^1.0.7" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsdom/node_modules/ws": { - "version": "7.5.9", + "node_modules/is-ssh": { + "version": "1.4.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "dependencies": { + "protocols": "^2.0.1" } }, - "node_modules/jsesc": { - "version": "3.0.2", + "node_modules/is-stream": { + "version": "2.0.0", + "dev": true, "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "license": "MIT" - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", + "node_modules/is-string": { + "version": "1.0.7", "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "license": "MIT" - }, - "node_modules/json-schema": { - "version": "0.4.0", - "license": "(AFL-2.1 OR BSD-3-Clause)" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "license": "MIT" + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", + "node_modules/is-symbol": { + "version": "1.0.4", "dev": true, - "license": "ISC" - }, - "node_modules/json5": { - "version": "2.2.3", "license": "MIT", - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonc-parser": { - "version": "3.2.0", + "node_modules/is-text-path": { + "version": "1.0.1", "dev": true, - "license": "MIT" - }, - "node_modules/jsonfile": { - "version": "6.1.0", "license": "MIT", "dependencies": { - "universalify": "^2.0.0" + "text-extensions": "^1.0.0" }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jsonld": { - "version": "5.2.0", + "node_modules/is-typed-array": { + "version": "1.1.13", "dev": true, - "license": "BSD-3-Clause", + "license": "MIT", "dependencies": { - "@digitalbazaar/http-client": "^1.1.0", - "canonicalize": "^1.0.1", - "lru-cache": "^6.0.0", - "rdf-canonize": "^3.0.0" + "which-typed-array": "^1.1.14" }, "engines": { - "node": ">=12" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonld-context-parser": { - "version": "2.4.0", + "node_modules/is-typedarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "@types/http-link-header": "^1.0.1", - "@types/node": "^18.0.0", - "cross-fetch": "^3.0.6", - "http-link-header": "^1.0.2", - "relative-to-absolute-iri": "^1.0.5" + "engines": { + "node": ">=10" }, - "bin": { - "jsonld-context-parse": "bin/jsonld-context-parse.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jsonld-context-parser/node_modules/@types/node": { - "version": "18.19.18", + "node_modules/is-weakmap": { + "version": "2.0.1", + "dev": true, "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonld-streaming-parser": { - "version": "3.3.0", + "node_modules/is-weakref": { + "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { - "@bergos/jsonparse": "^1.4.0", - "@rdfjs/types": "*", - "@types/http-link-header": "^1.0.1", - "@types/readable-stream": "^2.3.13", - "buffer": "^6.0.3", - "canonicalize": "^1.0.1", - "http-link-header": "^1.0.2", - "jsonld-context-parser": "^2.4.0", - "rdf-data-factory": "^1.1.0", - "readable-stream": "^4.0.0" + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonld-streaming-parser/node_modules/buffer": { - "version": "6.0.3", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/is-weakset": { + "version": "2.0.2", + "dev": true, "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonld-streaming-parser/node_modules/canonicalize": { - "version": "1.0.8", - "license": "Apache-2.0" - }, - "node_modules/jsonld-streaming-parser/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/is-wsl": { + "version": "2.2.0", + "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" + "is-docker": "^2.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/jsonld-streaming-serializer": { - "version": "2.1.0", + "node_modules/isarray": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "license": "ISC" + }, + "node_modules/iso8601-duration": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/isobject": { + "version": "3.0.1", "dev": true, "license": "MIT", - "dependencies": { - "@rdfjs/types": "*", - "@types/readable-stream": "^2.3.13", - "buffer": "^6.0.3", - "jsonld-context-parser": "^2.0.0", - "readable-stream": "^4.0.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jsonld-streaming-serializer/node_modules/buffer": { - "version": "6.0.3", + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/jsonld-streaming-serializer/node_modules/readable-stream": { - "version": "4.5.2", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/jsonld/node_modules/canonicalize": { - "version": "1.0.8", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", "dev": true, - "license": "Apache-2.0" + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } }, - "node_modules/jsonld2graphobject": { - "version": "0.0.4", - "license": "MIT", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "@rdfjs/types": "^1.0.1", - "@types/jsonld": "^1.5.6", - "jsonld-context-parser": "^2.1.5", - "uuid": "^8.3.2" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/jsonld2graphobject/node_modules/uuid": { - "version": "8.3.2", + "node_modules/iterator.prototype": { + "version": "1.1.2", + "dev": true, "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" } }, - "node_modules/jsonparse": { - "version": "1.3.1", + "node_modules/jackspeak": { + "version": "2.3.6", "dev": true, - "engines": [ - "node >= 0.2.0" - ], - "license": "MIT" - }, - "node_modules/jsonpath": { - "version": "1.1.1", - "license": "MIT", + "license": "BlueOak-1.0.0", "dependencies": { - "esprima": "1.2.2", - "static-eval": "2.0.2", - "underscore": "1.12.1" + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/jsonpath/node_modules/esprima": { - "version": "1.2.2", + "node_modules/jake": { + "version": "10.8.7", + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "jake": "bin/cli.js" }, "engines": { - "node": ">=0.4.0" + "node": ">=10" } }, - "node_modules/jsonpointer": { - "version": "5.0.1", + "node_modules/jake/node_modules/brace-expansion": { + "version": "1.1.11", "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/JSONStream": { - "version": "1.3.5", - "dev": true, - "license": "(MIT OR Apache-2.0)", + "node_modules/jake/node_modules/minimatch": { + "version": "3.1.2", + "license": "ISC", "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" + "brace-expansion": "^1.1.7" }, "engines": { "node": "*" } }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", + "node_modules/jest": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=4.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/keygrip": { - "version": "1.1.0", + "node_modules/jest-changed-files": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "tsscmp": "1.0.6" + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" }, "engines": { - "node": ">= 0.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/keyv": { - "version": "4.5.4", + "node_modules/jest-circus": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "license": "MIT", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/kleur": { - "version": "3.0.3", + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "5.2.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/klona": { - "version": "2.0.6", + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">= 8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/koa": { - "version": "2.15.3", + "node_modules/jest-circus/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-cli": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "accepts": "^1.3.5", - "cache-content-type": "^1.0.0", - "content-disposition": "~0.5.2", - "content-type": "^1.0.4", - "cookies": "~0.9.0", - "debug": "^4.3.2", - "delegates": "^1.0.0", - "depd": "^2.0.0", - "destroy": "^1.0.4", - "encodeurl": "^1.0.2", - "escape-html": "^1.0.3", - "fresh": "~0.5.2", - "http-assert": "^1.3.0", - "http-errors": "^1.6.3", - "is-generator-function": "^1.0.7", - "koa-compose": "^4.1.0", - "koa-convert": "^2.0.0", - "on-finished": "^2.3.0", - "only": "~0.0.2", - "parseurl": "^1.3.2", - "statuses": "^1.5.0", - "type-is": "^1.6.16", - "vary": "^1.1.2" + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "engines": { - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/koa-compose": { - "version": "4.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/koa-convert": { - "version": "2.0.0", + "node_modules/jest-config": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "co": "^4.6.0", - "koa-compose": "^4.1.0" + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">= 10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } } }, - "node_modules/koa/node_modules/http-errors": { - "version": "1.8.1", + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/koa/node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", + "node_modules/jest-config/node_modules/jest-get-type": { + "version": "27.5.1", "dev": true, "license": "MIT", "engines": { - "node": ">= 0.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/kuler": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/ky": { - "version": "0.25.1", + "node_modules/jest-config/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, "license": "MIT", - "engines": { - "node": ">=10" + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, - "funding": { - "url": "https://github.com/sindresorhus/ky?sponsor=1" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/ky-universal": { - "version": "0.8.2", + "node_modules/jest-config/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-diff": { + "version": "29.7.0", "dev": true, "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "node-fetch": "3.0.0-beta.9" + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=10.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/ky-universal?sponsor=1" - }, - "peerDependencies": { - "ky": ">=0.17.0", - "web-streams-polyfill": ">=2.0.0" - }, - "peerDependenciesMeta": { - "web-streams-polyfill": { - "optional": true - } + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/ky-universal/node_modules/node-fetch": { - "version": "3.0.0-beta.9", + "node_modules/jest-docblock": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "data-uri-to-buffer": "^3.0.1", - "fetch-blob": "^2.1.1" + "detect-newline": "^3.0.0" }, "engines": { - "node": "^10.17 || >=12.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/node-fetch" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/language-subtag-registry": { - "version": "0.3.22", - "license": "CC0-1.0" - }, - "node_modules/language-tags": { - "version": "1.0.9", + "node_modules/jest-each": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "language-subtag-registry": "^0.3.20" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=0.10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/launch-editor": { - "version": "2.6.1", + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "5.2.0", + "dev": true, "license": "MIT", - "dependencies": { - "picocolors": "^1.0.0", - "shell-quote": "^1.8.1" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/lazy-ass": { - "version": "1.6.0", + "node_modules/jest-each/node_modules/jest-get-type": { + "version": "27.5.1", "dev": true, "license": "MIT", "engines": { - "node": "> 0.8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna": { - "version": "7.4.2", + "node_modules/jest-each/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "@lerna/child-process": "7.4.2", - "@lerna/create": "7.4.2", - "@npmcli/run-script": "6.0.2", - "@nx/devkit": ">=16.5.1 < 17", - "@octokit/plugin-enterprise-rest": "6.0.1", - "@octokit/rest": "19.0.11", - "byte-size": "8.1.1", - "chalk": "4.1.0", - "clone-deep": "4.0.1", - "cmd-shim": "6.0.1", - "columnify": "1.6.0", - "conventional-changelog-angular": "7.0.0", - "conventional-changelog-core": "5.0.1", - "conventional-recommended-bump": "7.0.1", - "cosmiconfig": "^8.2.0", - "dedent": "0.7.0", - "envinfo": "7.8.1", - "execa": "5.0.0", - "fs-extra": "^11.1.1", - "get-port": "5.1.1", - "get-stream": "6.0.0", - "git-url-parse": "13.1.0", - "glob-parent": "5.1.2", - "globby": "11.1.0", - "graceful-fs": "4.2.11", - "has-unicode": "2.0.1", - "import-local": "3.1.0", - "ini": "^1.3.8", - "init-package-json": "5.0.0", - "inquirer": "^8.2.4", - "is-ci": "3.0.1", - "is-stream": "2.0.0", - "jest-diff": ">=29.4.3 < 30", - "js-yaml": "4.1.0", - "libnpmaccess": "7.0.2", - "libnpmpublish": "7.3.0", - "load-json-file": "6.2.0", - "lodash": "^4.17.21", - "make-dir": "4.0.0", - "minimatch": "3.0.5", - "multimatch": "5.0.0", - "node-fetch": "2.6.7", - "npm-package-arg": "8.1.1", - "npm-packlist": "5.1.1", - "npm-registry-fetch": "^14.0.5", - "npmlog": "^6.0.2", - "nx": ">=16.5.1 < 17", - "p-map": "4.0.0", - "p-map-series": "2.1.0", - "p-pipe": "3.1.0", - "p-queue": "6.6.2", - "p-reduce": "2.1.0", - "p-waterfall": "2.1.1", - "pacote": "^15.2.0", - "pify": "5.0.0", - "read-cmd-shim": "4.0.0", - "read-package-json": "6.0.4", - "resolve-from": "5.0.0", - "rimraf": "^4.4.1", - "semver": "^7.3.8", - "signal-exit": "3.0.7", - "slash": "3.0.0", - "ssri": "^9.0.1", - "strong-log-transformer": "2.1.0", - "tar": "6.1.11", - "temp-dir": "1.0.0", - "typescript": ">=3 < 6", - "upath": "2.0.1", - "uuid": "^9.0.0", - "validate-npm-package-license": "3.0.4", - "validate-npm-package-name": "5.0.0", - "write-file-atomic": "5.0.1", - "write-pkg": "4.0.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4" - }, - "bin": { - "lerna": "dist/cli.js" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": ">=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/jest-each/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/chalk": { - "version": "4.1.0", + "node_modules/jest-environment-node": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/glob": { - "version": "9.3.5", + "node_modules/jest-get-type": { + "version": "29.6.3", "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" - }, + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/lerna/node_modules/glob-parent": { - "version": "5.1.2", + "node_modules/jest-haste-map": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "is-glob": "^4.0.1" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">= 6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", + "node_modules/jest-jasmine2": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/glob/node_modules/minimatch": { - "version": "8.0.4", + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/lerna/node_modules/minimatch": { - "version": "3.0.5", + "node_modules/jest-jasmine2/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": "*" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/minipass": { - "version": "4.2.8", + "node_modules/jest-jasmine2/node_modules/react-is": { + "version": "17.0.2", "dev": true, - "license": "ISC", - "engines": { - "node": ">=8" - } + "license": "MIT" }, - "node_modules/lerna/node_modules/resolve-from": { - "version": "5.0.0", + "node_modules/jest-leak-detector": { + "version": "27.5.1", "dev": true, "license": "MIT", + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lerna/node_modules/rimraf": { - "version": "4.4.1", + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^9.2.0" - }, - "bin": { - "rimraf": "dist/cjs/src/bin.js" - }, + "license": "MIT", "engines": { - "node": ">=14" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/leven": { - "version": "3.1.0", + "node_modules/jest-leak-detector/node_modules/jest-get-type": { + "version": "27.5.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/levn": { - "version": "0.4.1", + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmaccess": { - "version": "7.0.2", + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "17.0.2", "dev": true, - "license": "ISC", - "dependencies": { - "npm-package-arg": "^10.1.0", - "npm-registry-fetch": "^14.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "license": "MIT" }, - "node_modules/libnpmaccess/node_modules/hosted-git-info": { - "version": "6.1.1", + "node_modules/jest-matcher-utils": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^7.5.1" + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmaccess/node_modules/lru-cache": { - "version": "7.18.3", + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" - } - }, - "node_modules/libnpmaccess/node_modules/npm-package-arg": { - "version": "10.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "node": ">=10" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/libnpmpublish": { - "version": "7.3.0", + "node_modules/jest-matcher-utils/node_modules/diff-sequences": { + "version": "27.5.1", "dev": true, - "license": "ISC", - "dependencies": { - "ci-info": "^3.6.1", - "normalize-package-data": "^5.0.0", - "npm-package-arg": "^10.1.0", - "npm-registry-fetch": "^14.0.3", - "proc-log": "^3.0.0", - "semver": "^7.3.7", - "sigstore": "^1.4.0", - "ssri": "^10.0.1" - }, + "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmpublish/node_modules/hosted-git-info": { - "version": "6.1.1", + "node_modules/jest-matcher-utils/node_modules/jest-diff": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^7.5.1" + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmpublish/node_modules/lru-cache": { - "version": "7.18.3", + "node_modules/jest-matcher-utils/node_modules/jest-get-type": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmpublish/node_modules/minipass": { - "version": "7.0.4", + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmpublish/node_modules/normalize-package-data": { - "version": "5.0.0", + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "17.0.2", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT" + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "dev": true, + "license": "MIT", "dependencies": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/libnpmpublish/node_modules/npm-package-arg": { - "version": "10.1.0", + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, + "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/libnpmpublish/node_modules/ssri": { - "version": "10.0.5", + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "minipass": "^7.0.3" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lilconfig": { - "version": "2.1.0", + "node_modules/jest-message-util/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lines-and-columns": { - "version": "2.0.4", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", "dev": true, "license": "MIT", "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/load-json-file": { - "version": "6.2.0", + "node_modules/jest-rdf": { + "version": "1.8.1", "dev": true, "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" + "@rdfjs/types": "*", + "rdf-isomorphic": "^1.3.0", + "rdf-string": "^1.6.0", + "rdf-terms": "^1.9.1" } }, - "node_modules/load-json-file/node_modules/type-fest": { - "version": "0.6.0", + "node_modules/jest-regex-util": { + "version": "27.5.1", "dev": true, - "license": "(MIT OR CC0-1.0)", + "license": "MIT", "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/loader-runner": { - "version": "4.3.0", + "node_modules/jest-resolve": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, "engines": { - "node": ">=6.11.5" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/loader-utils": { - "version": "2.0.4", + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" }, "engines": { - "node": ">=8.9.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/loading-cli": { - "version": "1.1.2", + "node_modules/jest-resolve/node_modules/resolve": { + "version": "1.22.8", + "dev": true, "license": "MIT", "dependencies": { - "colors-cli": "^1.0.26" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" }, "funding": { - "url": "https://jaywcjlove.github.io/#/sponsor" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/locate-path": { - "version": "6.0.0", + "node_modules/jest-runner": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^5.0.0" + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lodash": { - "version": "4.17.21", - "license": "MIT" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "license": "MIT" - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.isarguments": { - "version": "3.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.ismatch": { - "version": "4.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "license": "MIT" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "license": "MIT" - }, - "node_modules/lodash.orderby": { - "version": "4.6.0", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "license": "MIT" - }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "license": "MIT" - }, - "node_modules/log-symbols": { - "version": "4.1.0", + "node_modules/jest-runtime": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/logform": { - "version": "2.6.0", + "node_modules/jest-serializer": { + "version": "27.5.1", "dev": true, "license": "MIT", "dependencies": { - "@colors/colors": "1.6.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" + "@types/node": "*", + "graceful-fs": "^4.2.9" }, "engines": { - "node": ">= 12.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/loose-envify": { - "version": "1.4.0", + "node_modules/jest-snapshot": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" }, - "bin": { - "loose-envify": "cli.js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lower-case": { - "version": "2.0.2", + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "5.2.0", + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.0.3" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/lowercase-keys": { - "version": "3.0.0", + "node_modules/jest-snapshot/node_modules/diff-sequences": { + "version": "27.5.1", "dev": true, "license": "MIT", "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/jest-snapshot/node_modules/jest-diff": { + "version": "27.5.1", + "dev": true, + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/lunr": { - "version": "2.3.9", - "dev": true, - "license": "MIT" - }, - "node_modules/lz-string": { - "version": "1.5.0", + "node_modules/jest-snapshot/node_modules/jest-get-type": { + "version": "27.5.1", "dev": true, "license": "MIT", - "bin": { - "lz-string": "bin/bin.js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/magic-string": { - "version": "0.25.9", + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "sourcemap-codec": "^1.4.8" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-dir": { - "version": "4.0.0", + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util": { + "version": "27.5.1", + "dev": true, "license": "MIT", "dependencies": { - "semver": "^7.5.3" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-error": { - "version": "1.3.6", - "devOptional": true, - "license": "ISC" - }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", + "node_modules/jest-validate": { + "version": "27.5.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "5.2.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" - } - }, - "node_modules/makeerror": { - "version": "1.0.12", - "license": "BSD-3-Clause", - "dependencies": { - "tmpl": "1.0.5" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/map-obj": { - "version": "4.3.0", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", "dev": true, "license": "MIT", "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/map-stream": { - "version": "0.1.0", - "dev": true + "node_modules/jest-validate/node_modules/jest-get-type": { + "version": "27.5.1", + "dev": true, + "license": "MIT", + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } }, - "node_modules/marked": { - "version": "4.3.0", + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "27.5.1", "dev": true, "license": "MIT", - "bin": { - "marked": "bin/marked.js" + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": ">= 12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/mdn-data": { - "version": "2.0.4", - "license": "CC0-1.0" + "node_modules/jest-validate/node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" }, - "node_modules/media-typer": { - "version": "0.3.0", + "node_modules/jest-watcher": { + "version": "27.5.1", + "dev": true, "license": "MIT", + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, "engines": { - "node": ">= 0.6" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/memfs": { - "version": "3.5.3", - "license": "Unlicense", + "node_modules/jest-worker": { + "version": "27.5.1", + "dev": true, + "license": "MIT", "dependencies": { - "fs-monkey": "^1.0.4" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">= 4.0.0" + "node": ">= 10.13.0" } }, - "node_modules/meow": { - "version": "8.1.2", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", "dev": true, "license": "MIT", "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "has-flag": "^4.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/meow/node_modules/find-up": { + "node_modules/joi": { + "version": "17.12.2", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/jose": { + "version": "4.15.9", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/panva" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { "version": "4.1.0", "dev": true, "license": "MIT", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=8" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "2.8.9", + "node_modules/jsbn": { + "version": "1.1.0", "dev": true, - "license": "ISC" + "license": "MIT" }, - "node_modules/meow/node_modules/locate-path": { - "version": "5.0.0", + "node_modules/jsdom": { + "version": "16.7.0", "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^4.1.0" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "node_modules/meow/node_modules/p-limit": { - "version": "2.3.0", + "node_modules/jsdom/node_modules/@tootallnate/once": { + "version": "1.1.2", "dev": true, "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 6" } }, - "node_modules/meow/node_modules/p-locate": { - "version": "4.1.0", + "node_modules/jsdom/node_modules/form-data": { + "version": "3.0.1", "dev": true, "license": "MIT", "dependencies": { - "p-limit": "^2.2.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/meow/node_modules/read-pkg": { - "version": "5.2.0", + "node_modules/jsdom/node_modules/http-proxy-agent": { + "version": "4.0.1", "dev": true, "license": "MIT", "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "7.0.1", + "node_modules/jsdom/node_modules/tr46": { + "version": "2.1.0", "dev": true, "license": "MIT", "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "punycode": "^2.1.1" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", + "node_modules/jsdom/node_modules/webidl-conversions": { + "version": "6.1.0", "dev": true, - "license": "(MIT OR CC0-1.0)", + "license": "BSD-2-Clause", "engines": { - "node": ">=8" + "node": ">=10.4" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", + "node_modules/jsdom/node_modules/whatwg-url": { + "version": "8.7.0", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.9", "dev": true, - "license": "(MIT OR CC0-1.0)", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/meow/node_modules/resolve": { - "version": "1.22.8", + "node_modules/jsesc": { + "version": "3.0.2", "dev": true, "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, "bin": { - "resolve": "bin/resolve" + "jsesc": "bin/jsesc" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6" } }, - "node_modules/meow/node_modules/semver": { - "version": "5.7.2", + "node_modules/json-buffer": { + "version": "3.0.1", "dev": true, - "license": "ISC", + "license": "MIT" + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/json5": { + "version": "2.2.3", + "dev": true, + "license": "MIT", "bin": { - "semver": "bin/semver" + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", + "node_modules/jsonld": { + "version": "5.2.0", "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" + "license": "BSD-3-Clause", + "dependencies": { + "@digitalbazaar/http-client": "^1.1.0", + "canonicalize": "^1.0.1", + "lru-cache": "^6.0.0", + "rdf-canonize": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=12" } }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", + "node_modules/jsonld-context-parser": { + "version": "2.4.0", "license": "MIT", - "engines": { - "node": ">= 8" + "dependencies": { + "@types/http-link-header": "^1.0.1", + "@types/node": "^18.0.0", + "cross-fetch": "^3.0.6", + "http-link-header": "^1.0.2", + "relative-to-absolute-iri": "^1.0.5" + }, + "bin": { + "jsonld-context-parse": "bin/jsonld-context-parse.js" } }, - "node_modules/methods": { - "version": "1.1.2", + "node_modules/jsonld-context-parser/node_modules/@types/node": { + "version": "18.19.18", "license": "MIT", - "engines": { - "node": ">= 0.6" + "dependencies": { + "undici-types": "~5.26.4" } }, - "node_modules/microdata-rdf-streaming-parser": { - "version": "2.0.1", - "dev": true, + "node_modules/jsonld-streaming-parser": { + "version": "3.3.0", "license": "MIT", "dependencies": { + "@bergos/jsonparse": "^1.4.0", "@rdfjs/types": "*", - "htmlparser2": "^8.0.0", + "@types/http-link-header": "^1.0.1", + "@types/readable-stream": "^2.3.13", + "buffer": "^6.0.3", + "canonicalize": "^1.0.1", + "http-link-header": "^1.0.2", + "jsonld-context-parser": "^2.4.0", "rdf-data-factory": "^1.1.0", - "readable-stream": "^4.1.0", - "relative-to-absolute-iri": "^1.0.2" + "readable-stream": "^4.0.0" } }, - "node_modules/microdata-rdf-streaming-parser/node_modules/buffer": { + "node_modules/jsonld-streaming-parser/node_modules/buffer": { "version": "6.0.3", - "dev": true, "funding": [ { "type": "github", @@ -19326,27 +13171,12 @@ "ieee754": "^1.2.1" } }, - "node_modules/microdata-rdf-streaming-parser/node_modules/htmlparser2": { - "version": "8.0.2", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } + "node_modules/jsonld-streaming-parser/node_modules/canonicalize": { + "version": "1.0.8", + "license": "Apache-2.0" }, - "node_modules/microdata-rdf-streaming-parser/node_modules/readable-stream": { + "node_modules/jsonld-streaming-parser/node_modules/readable-stream": { "version": "4.5.2", - "dev": true, "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", @@ -19359,1730 +13189,1831 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/micromatch": { - "version": "4.0.5", + "node_modules/jsonld-streaming-serializer": { + "version": "2.1.0", + "dev": true, "license": "MIT", "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" + "@rdfjs/types": "*", + "@types/readable-stream": "^2.3.13", + "buffer": "^6.0.3", + "jsonld-context-parser": "^2.0.0", + "readable-stream": "^4.0.0" } }, - "node_modules/mime-types": { - "version": "2.1.35", + "node_modules/jsonld-streaming-serializer/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=6" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/mimic-response": { - "version": "4.0.0", + "node_modules/jsonld-streaming-serializer/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/min-indent": { - "version": "1.0.1", + "node_modules/jsonld/node_modules/canonicalize": { + "version": "1.0.8", "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } + "license": "Apache-2.0" }, - "node_modules/mini-css-extract-plugin": { - "version": "2.8.1", + "node_modules/jsonld2graphobject": { + "version": "0.0.4", "license": "MIT", "dependencies": { - "schema-utils": "^4.0.0", - "tapable": "^2.2.1" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" + "@rdfjs/types": "^1.0.1", + "@types/jsonld": "^1.5.6", + "jsonld-context-parser": "^2.1.5", + "uuid": "^8.3.2" } }, - "node_modules/mini-css-extract-plugin/node_modules/ajv": { - "version": "8.12.0", + "node_modules/jsonld2graphobject/node_modules/uuid": { + "version": "8.3.2", "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "license": "MIT", + "node_modules/jsonparse": { + "version": "1.3.1", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "license": "MIT" + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "dev": true, + "license": "(MIT OR Apache-2.0)", "dependencies": { - "fast-deep-equal": "^3.1.3" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" }, - "peerDependencies": { - "ajv": "^8.8.2" + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" } }, - "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.2.0", + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">=4.0" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "license": "ISC" - }, - "node_modules/minimatch": { - "version": "9.0.3", - "license": "ISC", + "node_modules/keygrip": { + "version": "1.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "tsscmp": "1.0.6" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 0.6" } }, - "node_modules/minimist": { - "version": "1.2.8", + "node_modules/keyv": { + "version": "4.5.4", + "dev": true, "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "json-buffer": "3.0.1" } }, - "node_modules/minimist-options": { - "version": "4.1.0", + "node_modules/kind-of": { + "version": "6.0.3", "dev": true, "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/minipass": { - "version": "3.3.6", + "node_modules/kleur": { + "version": "3.0.3", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/koa": { + "version": "2.15.3", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.9.0", + "debug": "^4.3.2", + "delegates": "^1.0.0", + "depd": "^2.0.0", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^2.0.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" }, "engines": { - "node": ">=8" + "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" } }, - "node_modules/minipass-collect": { - "version": "1.0.2", + "node_modules/koa-compose": { + "version": "4.1.0", "dev": true, - "license": "ISC", + "license": "MIT" + }, + "node_modules/koa-convert": { + "version": "2.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "minipass": "^3.0.0" + "co": "^4.6.0", + "koa-compose": "^4.1.0" }, "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "node_modules/minipass-fetch": { - "version": "2.1.2", + "node_modules/koa/node_modules/http-errors": { + "version": "1.8.1", "dev": true, "license": "MIT", "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" + "node": ">= 0.6" } }, - "node_modules/minipass-flush": { - "version": "1.0.5", + "node_modules/koa/node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, + "license": "MIT", "engines": { - "node": ">= 8" + "node": ">= 0.6" } }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", + "node_modules/kuler": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ky": { + "version": "0.25.1", "dev": true, "license": "MIT", - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/ky?sponsor=1" } }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", + "node_modules/ky-universal": { + "version": "0.8.2", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "minipass": "^3.0.0" + "abort-controller": "^3.0.0", + "node-fetch": "3.0.0-beta.9" }, "engines": { - "node": ">=8" + "node": ">=10.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/ky-universal?sponsor=1" + }, + "peerDependencies": { + "ky": ">=0.17.0", + "web-streams-polyfill": ">=2.0.0" + }, + "peerDependenciesMeta": { + "web-streams-polyfill": { + "optional": true + } } }, - "node_modules/minipass-sized": { - "version": "1.0.3", + "node_modules/ky-universal/node_modules/node-fetch": { + "version": "3.0.0-beta.9", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "minipass": "^3.0.0" + "data-uri-to-buffer": "^3.0.1", + "fetch-blob": "^2.1.1" }, "engines": { - "node": ">=8" + "node": "^10.17 || >=12.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, - "node_modules/minizlib": { - "version": "2.1.2", + "node_modules/lazy-ass": { + "version": "1.6.0", "dev": true, "license": "MIT", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, "engines": { - "node": ">= 8" + "node": "> 0.8" } }, - "node_modules/mkdirp": { - "version": "1.0.4", + "node_modules/lerna": { + "version": "7.4.2", "dev": true, "license": "MIT", + "dependencies": { + "@lerna/child-process": "7.4.2", + "@lerna/create": "7.4.2", + "@npmcli/run-script": "6.0.2", + "@nx/devkit": ">=16.5.1 < 17", + "@octokit/plugin-enterprise-rest": "6.0.1", + "@octokit/rest": "19.0.11", + "byte-size": "8.1.1", + "chalk": "4.1.0", + "clone-deep": "4.0.1", + "cmd-shim": "6.0.1", + "columnify": "1.6.0", + "conventional-changelog-angular": "7.0.0", + "conventional-changelog-core": "5.0.1", + "conventional-recommended-bump": "7.0.1", + "cosmiconfig": "^8.2.0", + "dedent": "0.7.0", + "envinfo": "7.8.1", + "execa": "5.0.0", + "fs-extra": "^11.1.1", + "get-port": "5.1.1", + "get-stream": "6.0.0", + "git-url-parse": "13.1.0", + "glob-parent": "5.1.2", + "globby": "11.1.0", + "graceful-fs": "4.2.11", + "has-unicode": "2.0.1", + "import-local": "3.1.0", + "ini": "^1.3.8", + "init-package-json": "5.0.0", + "inquirer": "^8.2.4", + "is-ci": "3.0.1", + "is-stream": "2.0.0", + "jest-diff": ">=29.4.3 < 30", + "js-yaml": "4.1.0", + "libnpmaccess": "7.0.2", + "libnpmpublish": "7.3.0", + "load-json-file": "6.2.0", + "lodash": "^4.17.21", + "make-dir": "4.0.0", + "minimatch": "3.0.5", + "multimatch": "5.0.0", + "node-fetch": "2.6.7", + "npm-package-arg": "8.1.1", + "npm-packlist": "5.1.1", + "npm-registry-fetch": "^14.0.5", + "npmlog": "^6.0.2", + "nx": ">=16.5.1 < 17", + "p-map": "4.0.0", + "p-map-series": "2.1.0", + "p-pipe": "3.1.0", + "p-queue": "6.6.2", + "p-reduce": "2.1.0", + "p-waterfall": "2.1.1", + "pacote": "^15.2.0", + "pify": "5.0.0", + "read-cmd-shim": "4.0.0", + "read-package-json": "6.0.4", + "resolve-from": "5.0.0", + "rimraf": "^4.4.1", + "semver": "^7.3.8", + "signal-exit": "3.0.7", + "slash": "3.0.0", + "ssri": "^9.0.1", + "strong-log-transformer": "2.1.0", + "tar": "6.1.11", + "temp-dir": "1.0.0", + "typescript": ">=3 < 6", + "upath": "2.0.1", + "uuid": "^9.0.0", + "validate-npm-package-license": "3.0.4", + "validate-npm-package-name": "5.0.0", + "write-file-atomic": "5.0.1", + "write-pkg": "4.0.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4" + }, "bin": { - "mkdirp": "bin/cmd.js" + "lerna": "dist/cli.js" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/modify-values": { - "version": "1.0.1", + "node_modules/lerna/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "license": "MIT", "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/multimatch": { - "version": "5.0.0", + "node_modules/lerna/node_modules/chalk": { + "version": "4.1.0", "dev": true, "license": "MIT", "dependencies": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/multimatch/node_modules/arrify": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/multimatch/node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/multimatch/node_modules/minimatch": { - "version": "3.1.2", + "node_modules/lerna/node_modules/glob": { + "version": "9.3.5", "dev": true, "license": "ISC", "dependencies": { - "brace-expansion": "^1.1.7" + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mute-stream": { - "version": "0.0.8", + "node_modules/lerna/node_modules/glob-parent": { + "version": "5.1.2", "dev": true, - "license": "ISC" - }, - "node_modules/mz": { - "version": "2.7.0", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/n3": { - "version": "1.17.2", - "license": "MIT", + "license": "ISC", "dependencies": { - "queue-microtask": "^1.1.2", - "readable-stream": "^4.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=12.0" + "node": ">= 6" } }, - "node_modules/n3/node_modules/buffer": { - "version": "6.0.3", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "balanced-match": "^1.0.0" } }, - "node_modules/n3/node_modules/readable-stream": { - "version": "4.5.2", - "license": "MIT", + "node_modules/lerna/node_modules/glob/node_modules/minimatch": { + "version": "8.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nanoid": { - "version": "3.3.7", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" + "node_modules/lerna/node_modules/minimatch": { + "version": "3.0.5", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "*" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "license": "MIT" - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "license": "MIT" - }, - "node_modules/negotiate": { - "version": "1.0.1", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "license": "MIT", + "node_modules/lerna/node_modules/minipass": { + "version": "4.2.8", + "dev": true, + "license": "ISC", "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "license": "MIT" - }, - "node_modules/no-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" + "node": ">=8" } }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/node-cleanup": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/node-fetch": { - "version": "2.6.7", + "node_modules/lerna/node_modules/resolve-from": { + "version": "5.0.0", "dev": true, "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-forge": { - "version": "1.3.1", - "license": "(BSD-3-Clause OR GPL-2.0)", "engines": { - "node": ">= 6.13.0" + "node": ">=8" } }, - "node_modules/node-gyp": { - "version": "9.4.1", + "node_modules/lerna/node_modules/rimraf": { + "version": "4.4.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "env-paths": "^2.2.0", - "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" + "glob": "^9.2.0" }, "bin": { - "node-gyp": "bin/node-gyp.js" + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp-build": { - "version": "4.8.0", - "dev": true, - "license": "MIT", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/node-machine-id": { - "version": "1.1.12", + "node_modules/leven": { + "version": "3.1.0", "dev": true, - "license": "MIT" - }, - "node_modules/node-releases": { - "version": "2.0.18", - "license": "MIT" - }, - "node_modules/node-version": { - "version": "1.2.0", "license": "MIT", "engines": { - "node": ">=6.0.0" + "node": ">=6" } }, - "node_modules/nodemailer": { - "version": "6.9.10", + "node_modules/levn": { + "version": "0.4.1", "dev": true, - "license": "MIT-0", + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.8.0" } }, - "node_modules/noms": { - "version": "0.0.0", + "node_modules/libnpmaccess": { + "version": "7.0.2", "dev": true, "license": "ISC", "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "~1.0.31" + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/noms/node_modules/isarray": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/noms/node_modules/readable-stream": { - "version": "1.0.34", + "node_modules/libnpmaccess/node_modules/hosted-git-info": { + "version": "6.1.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/noms/node_modules/string_decoder": { - "version": "0.10.31", + "node_modules/libnpmaccess/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "license": "MIT" + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "node_modules/nopt": { - "version": "6.0.0", + "node_modules/libnpmaccess/node_modules/npm-package-arg": { + "version": "10.1.0", "dev": true, "license": "ISC", "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/normalize-package-data": { - "version": "3.0.3", + "node_modules/libnpmpublish": { + "version": "7.3.0", "dev": true, - "license": "BSD-2-Clause", + "license": "ISC", "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "ci-info": "^3.6.1", + "normalize-package-data": "^5.0.0", + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3", + "proc-log": "^3.0.0", + "semver": "^7.3.7", + "sigstore": "^1.4.0", + "ssri": "^10.0.1" }, "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "license": "MIT", + "node_modules/libnpmpublish/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "license": "MIT", + "node_modules/libnpmpublish/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "license": "ISC", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12" } }, - "node_modules/npm-bundled": { - "version": "1.1.2", + "node_modules/libnpmpublish/node_modules/minipass": { + "version": "7.0.4", "dev": true, "license": "ISC", - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "node_modules/npm-install-checks": { - "version": "6.3.0", + "node_modules/libnpmpublish/node_modules/normalize-package-data": { + "version": "5.0.0", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "semver": "^7.1.1" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", + "node_modules/libnpmpublish/node_modules/npm-package-arg": { + "version": "10.1.0", "dev": true, - "license": "ISC" + "license": "ISC", + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/npm-package-arg": { - "version": "8.1.1", + "node_modules/libnpmpublish/node_modules/ssri": { + "version": "10.0.5", "dev": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^3.0.6", - "semver": "^7.0.0", - "validate-npm-package-name": "^3.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-package-arg/node_modules/builtins": { - "version": "1.0.3", + "node_modules/lines-and-columns": { + "version": "2.0.4", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "3.0.8", + "node_modules/load-json-file": { + "version": "6.2.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/npm-package-arg/node_modules/validate-npm-package-name": { - "version": "3.0.0", + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.6.0", "dev": true, - "license": "ISC", - "dependencies": { - "builtins": "^1.0.3" + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" } }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "dev": true, - "license": "ISC", + "node_modules/loading-cli": { + "version": "1.1.2", + "license": "MIT", "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" + "colors-cli": "^1.0.26" }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "funding": { + "url": "https://jaywcjlove.github.io/#/sponsor" } }, - "node_modules/npm-packlist/node_modules/glob": { - "version": "8.1.0", + "node_modules/locate-path": { + "version": "6.0.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-packlist/node_modules/minimatch": { - "version": "5.1.6", + "node_modules/lodash": { + "version": "4.17.21", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.orderby": { + "version": "4.6.0", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-pick-manifest": { - "version": "8.0.2", + "node_modules/logform": { + "version": "2.6.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", - "semver": "^7.3.5" + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 12.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/hosted-git-info": { - "version": "6.1.1", + "node_modules/loose-envify": { + "version": "1.4.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^7.5.1" + "js-tokens": "^3.0.0 || ^4.0.0" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-pick-manifest/node_modules/lru-cache": { - "version": "7.18.3", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "bin": { + "loose-envify": "cli.js" } }, - "node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { - "version": "3.0.1", + "node_modules/lowercase-keys": { + "version": "3.0.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-pick-manifest/node_modules/npm-package-arg": { - "version": "10.1.0", + "node_modules/lru-cache": { + "version": "6.0.0", "dev": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/npm-registry-fetch": { - "version": "14.0.5", + "node_modules/lunr": { + "version": "2.3.9", "dev": true, - "license": "ISC", - "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "license": "MIT" + }, + "node_modules/lz-string": { + "version": "1.5.0", + "dev": true, + "license": "MIT", + "bin": { + "lz-string": "bin/bin.js" } }, - "node_modules/npm-registry-fetch/node_modules/@npmcli/fs": { - "version": "3.1.0", + "node_modules/make-dir": { + "version": "4.0.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "semver": "^7.3.5" + "semver": "^7.5.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-registry-fetch/node_modules/cacache": { - "version": "17.1.4", + "node_modules/make-error": { + "version": "1.3.6", + "dev": true, + "license": "ISC" + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", - "minipass": "^7.0.3", + "minipass": "^3.1.6", "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/cacache/node_modules/minipass": { - "version": "7.0.4", + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, "license": "ISC", "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=12" } }, - "node_modules/npm-registry-fetch/node_modules/fs-minipass": { - "version": "3.0.3", + "node_modules/makeerror": { + "version": "1.0.12", "dev": true, - "license": "ISC", + "license": "BSD-3-Clause", "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "tmpl": "1.0.5" } }, - "node_modules/npm-registry-fetch/node_modules/fs-minipass/node_modules/minipass": { - "version": "7.0.4", + "node_modules/map-obj": { + "version": "4.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-registry-fetch/node_modules/glob": { - "version": "10.3.10", + "node_modules/map-stream": { + "version": "0.1.0", + "dev": true + }, + "node_modules/marked": { + "version": "4.3.0", "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, + "license": "MIT", "bin": { - "glob": "dist/esm/bin.mjs" + "marked": "bin/marked.js" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 12" } }, - "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { - "version": "6.1.1", + "node_modules/media-typer": { + "version": "0.3.0", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^7.5.1" - }, + "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 0.6" } }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.18.3", + "node_modules/meow": { + "version": "8.1.2", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, "engines": { - "node": ">=12" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.1.1", + "node_modules/meow/node_modules/find-up": { + "version": "4.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/npm-registry-fetch/node_modules/minipass": { + "node_modules/meow/node_modules/hosted-git-info": { + "version": "2.8.9", + "dev": true, + "license": "ISC" + }, + "node_modules/meow/node_modules/locate-path": { "version": "5.0.0", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.4", + "node_modules/meow/node_modules/p-limit": { + "version": "2.3.0", "dev": true, "license": "MIT", "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "p-try": "^2.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=6" }, - "optionalDependencies": { - "encoding": "^0.1.13" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", + "node_modules/meow/node_modules/p-locate": { + "version": "4.1.0", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=8" } }, - "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { - "version": "10.1.0", + "node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/npm-registry-fetch/node_modules/ssri": { - "version": "10.0.5", + "node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "minipass": "^7.0.3" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-registry-fetch/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", "dev": true, - "license": "ISC", + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=8" } }, - "node_modules/npm-registry-fetch/node_modules/unique-filename": { - "version": "3.0.0", + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", "dev": true, - "license": "ISC", + "license": "BSD-2-Clause", "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/npm-registry-fetch/node_modules/unique-slug": { - "version": "4.0.0", + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4" - }, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/npm-run-path": { - "version": "4.0.1", + "node_modules/meow/node_modules/resolve": { + "version": "1.22.8", + "dev": true, "license": "MIT", "dependencies": { - "path-key": "^3.0.0" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/npmlog": { - "version": "6.0.2", + "node_modules/meow/node_modules/semver": { + "version": "5.7.2", "dev": true, "license": "ISC", - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "bin": { + "semver": "bin/semver" } }, - "node_modules/nth-check": { - "version": "2.1.1", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0" + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/nwsapi": { - "version": "2.2.7", + "node_modules/merge-stream": { + "version": "2.0.0", + "dev": true, "license": "MIT" }, - "node_modules/nx": { - "version": "16.10.0", + "node_modules/merge2": { + "version": "1.4.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/microdata-rdf-streaming-parser": { + "version": "2.0.1", "dev": true, - "hasInstallScript": true, "license": "MIT", "dependencies": { - "@nrwl/tao": "16.10.0", - "@parcel/watcher": "2.0.4", - "@yarnpkg/lockfile": "^1.1.0", - "@yarnpkg/parsers": "3.0.0-rc.46", - "@zkochan/js-yaml": "0.0.6", - "axios": "^1.0.0", - "chalk": "^4.1.0", - "cli-cursor": "3.1.0", - "cli-spinners": "2.6.1", - "cliui": "^8.0.1", - "dotenv": "~16.3.1", - "dotenv-expand": "~10.0.0", - "enquirer": "~2.3.6", - "figures": "3.2.0", - "flat": "^5.0.2", - "fs-extra": "^11.1.0", - "glob": "7.1.4", - "ignore": "^5.0.4", - "jest-diff": "^29.4.1", - "js-yaml": "4.1.0", - "jsonc-parser": "3.2.0", - "lines-and-columns": "~2.0.3", - "minimatch": "3.0.5", - "node-machine-id": "1.1.12", - "npm-run-path": "^4.0.1", - "open": "^8.4.0", - "semver": "7.5.3", - "string-width": "^4.2.3", - "strong-log-transformer": "^2.1.0", - "tar-stream": "~2.2.0", - "tmp": "~0.2.1", - "tsconfig-paths": "^4.1.2", - "tslib": "^2.3.0", - "v8-compile-cache": "2.3.0", - "yargs": "^17.6.2", - "yargs-parser": "21.1.1" - }, - "bin": { - "nx": "bin/nx.js" - }, - "optionalDependencies": { - "@nx/nx-darwin-arm64": "16.10.0", - "@nx/nx-darwin-x64": "16.10.0", - "@nx/nx-freebsd-x64": "16.10.0", - "@nx/nx-linux-arm-gnueabihf": "16.10.0", - "@nx/nx-linux-arm64-gnu": "16.10.0", - "@nx/nx-linux-arm64-musl": "16.10.0", - "@nx/nx-linux-x64-gnu": "16.10.0", - "@nx/nx-linux-x64-musl": "16.10.0", - "@nx/nx-win32-arm64-msvc": "16.10.0", - "@nx/nx-win32-x64-msvc": "16.10.0" - }, - "peerDependencies": { - "@swc-node/register": "^1.6.7", - "@swc/core": "^1.3.85" - }, - "peerDependenciesMeta": { - "@swc-node/register": { - "optional": true + "@rdfjs/types": "*", + "htmlparser2": "^8.0.0", + "rdf-data-factory": "^1.1.0", + "readable-stream": "^4.1.0", + "relative-to-absolute-iri": "^1.0.2" + } + }, + "node_modules/microdata-rdf-streaming-parser/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "@swc/core": { - "optional": true + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/nx/node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/microdata-rdf-streaming-parser/node_modules/htmlparser2": { + "version": "8.0.2", "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" } }, - "node_modules/nx/node_modules/glob": { - "version": "7.1.4", + "node_modules/microdata-rdf-streaming-parser/node_modules/readable-stream": { + "version": "4.5.2", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": "*" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/nx/node_modules/minimatch": { - "version": "3.0.5", + "node_modules/micromatch": { + "version": "4.0.5", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": "*" + "node": ">=8.6" } }, - "node_modules/nx/node_modules/semver": { - "version": "7.5.3", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", "engines": { - "node": ">=10" + "node": ">= 0.6" } }, - "node_modules/nx/node_modules/yargs": { - "version": "17.7.2", - "dev": true, + "node_modules/mime-types": { + "version": "2.1.35", "license": "MIT", "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "mime-db": "1.52.0" }, "engines": { - "node": ">=12" + "node": ">= 0.6" } }, - "node_modules/nx/node_modules/yargs-parser": { - "version": "21.1.1", + "node_modules/mimic-fn": { + "version": "2.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=6" } }, - "node_modules/object-assign": { - "version": "4.1.1", + "node_modules/mimic-response": { + "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/object-hash": { - "version": "3.0.0", + "node_modules/min-indent": { + "version": "1.0.1", + "dev": true, "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=4" } }, - "node_modules/object-inspect": { - "version": "1.13.1", + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/minimatch": { + "version": "9.0.3", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object-is": { - "version": "1.1.5", + "node_modules/minimist-options": { + "version": "4.1.0", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, "engines": { - "node": ">= 0.4" + "node": ">= 6" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/object-keys": { - "version": "1.1.1", - "license": "MIT", + "node_modules/minipass-collect": { + "version": "1.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">= 8" } }, - "node_modules/object.assign": { - "version": "4.1.5", + "node_modules/minipass-fetch": { + "version": "2.1.2", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">= 0.4" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/object.entries": { - "version": "1.1.7", - "license": "MIT", + "node_modules/minipass-flush": { + "version": "1.0.5", + "dev": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "minipass": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 8" } }, - "node_modules/object.fromentries": { - "version": "2.0.7", + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.7", - "license": "MIT", + "node_modules/minipass-sized": { + "version": "1.0.3", + "dev": true, + "license": "ISC", "dependencies": { - "array.prototype.reduce": "^1.0.6", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "safe-array-concat": "^1.0.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/object.groupby": { - "version": "1.0.2", + "node_modules/minizlib": { + "version": "2.1.2", + "dev": true, "license": "MIT", "dependencies": { - "array.prototype.filter": "^1.0.3", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.0.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/object.hasown": { - "version": "1.1.3", + "node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, "license": "MIT", - "dependencies": { - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "bin": { + "mkdirp": "bin/cmd.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10" + } + }, + "node_modules/modify-values": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/object.values": { - "version": "1.1.7", + "node_modules/ms": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/multimatch": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/obuf": { - "version": "1.1.2", - "license": "MIT" + "node_modules/multimatch/node_modules/arrify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/oidc-provider": { - "version": "8.5.1", + "node_modules/multimatch/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, "license": "MIT", "dependencies": { - "@koa/cors": "^5.0.0", - "@koa/router": "^12.0.1", - "debug": "^4.3.5", - "eta": "^3.4.0", - "got": "^13.0.0", - "jose": "^5.6.2", - "jsesc": "^3.0.2", - "koa": "^2.15.3", - "nanoid": "^5.0.7", - "object-hash": "^3.0.0", - "oidc-token-hash": "^5.0.3", - "quick-lru": "^7.0.0", - "raw-body": "^2.5.2" - }, - "funding": { - "url": "https://github.com/sponsors/panva" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/oidc-provider/node_modules/debug": { - "version": "4.3.7", + "node_modules/multimatch/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "ms": "^2.1.3" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": "*" } }, - "node_modules/oidc-provider/node_modules/jose": { - "version": "5.9.4", + "node_modules/mute-stream": { + "version": "0.0.8", "dev": true, + "license": "ISC" + }, + "node_modules/n3": { + "version": "1.17.2", "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/panva" + "dependencies": { + "queue-microtask": "^1.1.2", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">=12.0" } }, - "node_modules/oidc-provider/node_modules/ms": { - "version": "2.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/oidc-provider/node_modules/nanoid": { - "version": "5.0.7", - "dev": true, + "node_modules/n3/node_modules/buffer": { + "version": "6.0.3", "funding": [ { "type": "github", - "url": "https://github.com/sponsors/ai" + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.js" + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/n3/node_modules/readable-stream": { + "version": "4.5.2", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": "^18 || >=20" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/oidc-provider/node_modules/quick-lru": { - "version": "7.0.0", + "node_modules/natural-compare": { + "version": "1.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/negotiate": { + "version": "1.0.1", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", "dev": true, "license": "MIT", "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.6" } }, - "node_modules/oidc-token-hash": { - "version": "5.0.3", + "node_modules/neo-async": { + "version": "2.6.2", + "dev": true, + "license": "MIT" + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/node-cleanup": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/node-fetch": { + "version": "2.6.7", "dev": true, "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { - "node": "^10.13.0 || >=12.0.0" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/on-finished": { - "version": "2.4.1", + "node_modules/node-gyp": { + "version": "9.4.1", + "dev": true, "license": "MIT", "dependencies": { - "ee-first": "1.1.1" + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": ">= 0.8" + "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/on-headers": { - "version": "1.0.2", + "node_modules/node-gyp-build": { + "version": "4.8.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.8" + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/once": { - "version": "1.4.0", - "license": "ISC", - "dependencies": { - "wrappy": "1" - } + "node_modules/node-int64": { + "version": "0.4.0", + "dev": true, + "license": "MIT" }, - "node_modules/one-time": { - "version": "1.0.0", + "node_modules/node-machine-id": { + "version": "1.1.12", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.18", "dev": true, + "license": "MIT" + }, + "node_modules/node-version": { + "version": "1.2.0", "license": "MIT", - "dependencies": { - "fn.name": "1.x.x" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/onetime": { - "version": "5.1.2", - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, + "node_modules/nodemailer": { + "version": "6.9.10", + "dev": true, + "license": "MIT-0", "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6.0.0" } }, - "node_modules/only": { - "version": "0.0.2", - "dev": true + "node_modules/noms": { + "version": "0.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "~1.0.31" + } }, - "node_modules/open": { - "version": "8.4.2", + "node_modules/noms/node_modules/isarray": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/noms/node_modules/readable-stream": { + "version": "1.0.34", + "dev": true, "license": "MIT", "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" } }, - "node_modules/optionator": { - "version": "0.9.3", - "license": "MIT", + "node_modules/noms/node_modules/string_decoder": { + "version": "0.10.31", + "dev": true, + "license": "MIT" + }, + "node_modules/nopt": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" }, "engines": { - "node": ">= 0.8.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/ora": { - "version": "5.4.1", + "node_modules/normalize-package-data": { + "version": "3.0.3", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", + "node_modules/normalize-path": { + "version": "3.0.0", "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/p-cancelable": { - "version": "3.0.0", + "node_modules/npm-bundled": { + "version": "1.1.2", "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" } }, - "node_modules/p-finally": { - "version": "1.0.0", + "node_modules/npm-install-checks": { + "version": "6.3.0", "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "yocto-queue": "^0.1.0" + "semver": "^7.1.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "license": "MIT", + "node_modules/npm-normalize-package-bin": { + "version": "1.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/npm-package-arg": { + "version": "8.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "p-limit": "^3.0.2" + "hosted-git-info": "^3.0.6", + "semver": "^7.0.0", + "validate-npm-package-name": "^3.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map": { - "version": "4.0.0", + "node_modules/npm-package-arg/node_modules/builtins": { + "version": "1.0.3", "dev": true, - "license": "MIT", + "license": "MIT" + }, + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "3.0.8", + "dev": true, + "license": "ISC", "dependencies": { - "aggregate-error": "^3.0.0" + "lru-cache": "^6.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map-series": { - "version": "2.1.0", + "node_modules/npm-package-arg/node_modules/validate-npm-package-name": { + "version": "3.0.0", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "license": "ISC", + "dependencies": { + "builtins": "^1.0.3" } }, - "node_modules/p-pipe": { - "version": "3.1.0", + "node_modules/npm-packlist": { + "version": "5.1.1", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "license": "ISC", + "dependencies": { + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^1.1.2", + "npm-normalize-package-bin": "^1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/p-queue": { - "version": "6.6.2", + "node_modules/npm-packlist/node_modules/glob": { + "version": "8.1.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "eventemitter3": "^4.0.4", - "p-timeout": "^3.2.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/p-reduce": { - "version": "2.1.0", + "node_modules/npm-packlist/node_modules/minimatch": { + "version": "5.1.6", "dev": true, - "license": "MIT", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/p-retry": { - "version": "4.6.2", - "license": "MIT", + "node_modules/npm-pick-manifest": { + "version": "8.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/p-retry/node_modules/@types/retry": { - "version": "0.12.0", - "license": "MIT" - }, - "node_modules/p-retry/node_modules/retry": { - "version": "0.13.1", - "license": "MIT", + "node_modules/npm-pick-manifest/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, "engines": { - "node": ">= 4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/p-timeout": { - "version": "3.2.0", + "node_modules/npm-pick-manifest/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/p-try": { - "version": "2.2.0", - "license": "MIT", + "node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "dev": true, + "license": "ISC", "engines": { - "node": ">=6" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/p-waterfall": { - "version": "2.1.1", + "node_modules/npm-pick-manifest/node_modules/npm-package-arg": { + "version": "10.1.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "p-reduce": "^2.0.0" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote": { - "version": "15.2.0", + "node_modules/npm-registry-fetch": { + "version": "14.0.5", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^4.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", - "fs-minipass": "^3.0.0", + "make-fetch-happen": "^11.0.0", "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", - "proc-log": "^3.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", - "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", - "ssri": "^10.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" + "proc-log": "^3.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/@npmcli/fs": { + "node_modules/npm-registry-fetch/node_modules/@npmcli/fs": { "version": "3.1.0", "dev": true, "license": "ISC", @@ -21093,7 +15024,7 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/cacache": { + "node_modules/npm-registry-fetch/node_modules/cacache": { "version": "17.1.4", "dev": true, "license": "ISC", @@ -21115,7 +15046,7 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/cacache/node_modules/minipass": { + "node_modules/npm-registry-fetch/node_modules/cacache/node_modules/minipass": { "version": "7.0.4", "dev": true, "license": "ISC", @@ -21123,7 +15054,7 @@ "node": ">=16 || 14 >=14.17" } }, - "node_modules/pacote/node_modules/fs-minipass": { + "node_modules/npm-registry-fetch/node_modules/fs-minipass": { "version": "3.0.3", "dev": true, "license": "ISC", @@ -21134,7 +15065,7 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/fs-minipass/node_modules/minipass": { + "node_modules/npm-registry-fetch/node_modules/fs-minipass/node_modules/minipass": { "version": "7.0.4", "dev": true, "license": "ISC", @@ -21142,7 +15073,7 @@ "node": ">=16 || 14 >=14.17" } }, - "node_modules/pacote/node_modules/glob": { + "node_modules/npm-registry-fetch/node_modules/glob": { "version": "10.3.10", "dev": true, "license": "ISC", @@ -21163,7 +15094,7 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/pacote/node_modules/hosted-git-info": { + "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { "version": "6.1.1", "dev": true, "license": "ISC", @@ -21174,18 +15105,7 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/ignore-walk": { - "version": "6.0.4", - "dev": true, - "license": "ISC", - "dependencies": { - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/lru-cache": { + "node_modules/npm-registry-fetch/node_modules/lru-cache": { "version": "7.18.3", "dev": true, "license": "ISC", @@ -21193,1540 +15113,1213 @@ "node": ">=12" } }, - "node_modules/pacote/node_modules/minipass": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=8" - } - }, - "node_modules/pacote/node_modules/npm-package-arg": { - "version": "10.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/npm-packlist": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "dependencies": { - "ignore-walk": "^6.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/ssri": { - "version": "10.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/pacote/node_modules/unique-filename": { - "version": "3.0.0", + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.1.1", "dev": true, "license": "ISC", "dependencies": { - "unique-slug": "^4.0.0" + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/unique-slug": { - "version": "4.0.0", + "node_modules/npm-registry-fetch/node_modules/minipass": { + "version": "5.0.0", "dev": true, "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/param-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-cache-control": { - "version": "1.0.1" - }, - "node_modules/parse-json": { - "version": "5.2.0", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-json/node_modules/lines-and-columns": { - "version": "1.2.4", - "license": "MIT" - }, - "node_modules/parse-path": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "protocols": "^2.0.0" } }, - "node_modules/parse-url": { - "version": "8.1.0", + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.4", "dev": true, "license": "MIT", "dependencies": { - "parse-path": "^7.0.0" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "license": "MIT" - }, - "node_modules/parseurl": { - "version": "1.3.3", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "license": "MIT" - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "license": "ISC", "engines": { - "node": "14 || >=16.14" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/path-scurry/node_modules/minipass": { + "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { "version": "7.0.4", + "dev": true, "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "license": "MIT" - }, - "node_modules/path-type": { - "version": "4.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pause-stream": { - "version": "0.0.11", + "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { + "version": "10.1.0", "dev": true, - "license": [ - "MIT", - "Apache2" - ], + "license": "ISC", "dependencies": { - "through": "~2.3" - } - }, - "node_modules/performance-now": { - "version": "2.1.0", - "license": "MIT" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "license": "MIT", - "engines": { - "node": ">=8.6" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pify": { - "version": "5.0.0", + "node_modules/npm-registry-fetch/node_modules/ssri": { + "version": "10.0.5", "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pirates": { - "version": "4.0.6", - "license": "MIT", + "node_modules/npm-registry-fetch/node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": ">= 6" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "license": "MIT", + "node_modules/npm-registry-fetch/node_modules/unique-filename": { + "version": "3.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "find-up": "^4.0.0" + "unique-slug": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "license": "MIT", + "node_modules/npm-registry-fetch/node_modules/unique-slug": { + "version": "4.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "imurmurhash": "^0.1.4" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", + "node_modules/npm-run-path": { + "version": "4.0.1", + "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^4.1.0" + "path-key": "^3.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "license": "MIT", + "node_modules/npmlog": { + "version": "6.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "p-try": "^2.0.0" + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", + "node_modules/nwsapi": { + "version": "2.2.7", + "dev": true, + "license": "MIT" + }, + "node_modules/nx": { + "version": "16.10.0", + "dev": true, + "hasInstallScript": true, "license": "MIT", "dependencies": { - "p-limit": "^2.2.0" + "@nrwl/tao": "16.10.0", + "@parcel/watcher": "2.0.4", + "@yarnpkg/lockfile": "^1.1.0", + "@yarnpkg/parsers": "3.0.0-rc.46", + "@zkochan/js-yaml": "0.0.6", + "axios": "^1.0.0", + "chalk": "^4.1.0", + "cli-cursor": "3.1.0", + "cli-spinners": "2.6.1", + "cliui": "^8.0.1", + "dotenv": "~16.3.1", + "dotenv-expand": "~10.0.0", + "enquirer": "~2.3.6", + "figures": "3.2.0", + "flat": "^5.0.2", + "fs-extra": "^11.1.0", + "glob": "7.1.4", + "ignore": "^5.0.4", + "jest-diff": "^29.4.1", + "js-yaml": "4.1.0", + "jsonc-parser": "3.2.0", + "lines-and-columns": "~2.0.3", + "minimatch": "3.0.5", + "node-machine-id": "1.1.12", + "npm-run-path": "^4.0.1", + "open": "^8.4.0", + "semver": "7.5.3", + "string-width": "^4.2.3", + "strong-log-transformer": "^2.1.0", + "tar-stream": "~2.2.0", + "tmp": "~0.2.1", + "tsconfig-paths": "^4.1.2", + "tslib": "^2.3.0", + "v8-compile-cache": "2.3.0", + "yargs": "^17.6.2", + "yargs-parser": "21.1.1" }, - "engines": { - "node": ">=8" + "bin": { + "nx": "bin/nx.js" + }, + "optionalDependencies": { + "@nx/nx-darwin-arm64": "16.10.0", + "@nx/nx-darwin-x64": "16.10.0", + "@nx/nx-freebsd-x64": "16.10.0", + "@nx/nx-linux-arm-gnueabihf": "16.10.0", + "@nx/nx-linux-arm64-gnu": "16.10.0", + "@nx/nx-linux-arm64-musl": "16.10.0", + "@nx/nx-linux-x64-gnu": "16.10.0", + "@nx/nx-linux-x64-musl": "16.10.0", + "@nx/nx-win32-arm64-msvc": "16.10.0", + "@nx/nx-win32-x64-msvc": "16.10.0" + }, + "peerDependencies": { + "@swc-node/register": "^1.6.7", + "@swc/core": "^1.3.85" + }, + "peerDependenciesMeta": { + "@swc-node/register": { + "optional": true + }, + "@swc/core": { + "optional": true + } } }, - "node_modules/pkg-up": { - "version": "3.1.0", + "node_modules/nx/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=8" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "3.0.0", - "license": "MIT", + "node_modules/nx/node_modules/glob": { + "version": "7.1.4", + "dev": true, + "license": "ISC", "dependencies": { - "locate-path": "^3.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "3.0.0", - "license": "MIT", + "node_modules/nx/node_modules/minimatch": { + "version": "3.0.5", + "dev": true, + "license": "ISC", "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "license": "MIT", + "node_modules/nx/node_modules/semver": { + "version": "7.5.3", + "dev": true, + "license": "ISC", "dependencies": { - "p-try": "^2.0.0" + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">=6" + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=10" } }, - "node_modules/pkg-up/node_modules/p-locate": { - "version": "3.0.0", + "node_modules/nx/node_modules/yargs": { + "version": "17.7.2", + "dev": true, "license": "MIT", "dependencies": { - "p-limit": "^2.0.0" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=6" + "node": ">=12" + } + }, + "node_modules/nx/node_modules/yargs-parser": { + "version": "21.1.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" } }, - "node_modules/pkg-up/node_modules/path-exists": { - "version": "3.0.0", + "node_modules/object-assign": { + "version": "4.1.1", + "dev": true, "license": "MIT", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", + "node_modules/object-hash": { + "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.4" + "node": ">= 6" } }, - "node_modules/postcss": { - "version": "8.4.35", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "node_modules/object-inspect": { + "version": "1.13.1", "license": "MIT", - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "5.0.2", + "node_modules/object-is": { + "version": "1.1.5", + "dev": true, "license": "MIT", "dependencies": { - "postcss-selector-parser": "^6.0.10" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-browser-comments": { - "version": "4.0.0", - "license": "CC0-1.0", + "node_modules/object-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", "engines": { - "node": ">=8" - }, - "peerDependencies": { - "browserslist": ">=4", - "postcss": ">=8" + "node": ">= 0.4" } }, - "node_modules/postcss-calc": { - "version": "8.2.4", + "node_modules/object.assign": { + "version": "4.1.5", + "dev": true, "license": "MIT", "dependencies": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, - "peerDependencies": { - "postcss": "^8.2.2" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-clamp": { - "version": "4.1.0", + "node_modules/object.entries": { + "version": "1.1.7", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { - "node": ">=7.6.0" - }, - "peerDependencies": { - "postcss": "^8.4.6" + "node": ">= 0.4" } }, - "node_modules/postcss-color-functional-notation": { - "version": "4.2.4", - "license": "CC0-1.0", + "node_modules/object.fromentries": { + "version": "2.0.7", + "dev": true, + "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-color-hex-alpha": { - "version": "8.0.4", + "node_modules/object.hasown": { + "version": "1.1.3", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-color-rebeccapurple": { - "version": "7.1.1", - "license": "CC0-1.0", + "node_modules/object.values": { + "version": "1.1.7", + "dev": true, + "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-colormin": { - "version": "5.3.1", + "node_modules/oidc-provider": { + "version": "8.5.1", + "dev": true, "license": "MIT", "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" + "@koa/cors": "^5.0.0", + "@koa/router": "^12.0.1", + "debug": "^4.3.5", + "eta": "^3.4.0", + "got": "^13.0.0", + "jose": "^5.6.2", + "jsesc": "^3.0.2", + "koa": "^2.15.3", + "nanoid": "^5.0.7", + "object-hash": "^3.0.0", + "oidc-token-hash": "^5.0.3", + "quick-lru": "^7.0.0", + "raw-body": "^2.5.2" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/panva" } }, - "node_modules/postcss-convert-values": { - "version": "5.1.3", + "node_modules/oidc-provider/node_modules/debug": { + "version": "4.3.7", + "dev": true, "license": "MIT", "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" + "ms": "^2.1.3" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=6.0" }, - "peerDependencies": { - "postcss": "^8.2.15" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/postcss-custom-media": { - "version": "8.0.2", + "node_modules/oidc-provider/node_modules/jose": { + "version": "5.9.4", + "dev": true, "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" + "url": "https://github.com/sponsors/panva" } }, - "node_modules/postcss-custom-properties": { - "version": "12.1.11", + "node_modules/oidc-provider/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/oidc-provider/node_modules/nanoid": { + "version": "5.0.7", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" + "bin": { + "nanoid": "bin/nanoid.js" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": "^18 || >=20" } }, - "node_modules/postcss-custom-selectors": { - "version": "6.0.3", + "node_modules/oidc-provider/node_modules/quick-lru": { + "version": "7.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=18" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-dir-pseudo-class": { - "version": "6.0.5", - "license": "CC0-1.0", - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, + "node_modules/oidc-token-hash": { + "version": "5.0.3", + "dev": true, + "license": "MIT", "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": "^10.13.0 || >=12.0.0" } }, - "node_modules/postcss-discard-comments": { - "version": "5.1.2", + "node_modules/on-finished": { + "version": "2.4.1", + "dev": true, "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" + "dependencies": { + "ee-first": "1.1.1" }, - "peerDependencies": { - "postcss": "^8.2.15" + "engines": { + "node": ">= 0.8" } }, - "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node_modules/once": { + "version": "1.4.0", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" } }, - "node_modules/postcss-discard-empty": { - "version": "5.1.1", + "node_modules/one-time": { + "version": "1.0.0", + "dev": true, "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "dependencies": { + "fn.name": "1.x.x" } }, - "node_modules/postcss-discard-overridden": { - "version": "5.1.0", + "node_modules/onetime": { + "version": "5.1.2", + "dev": true, "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=6" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-double-position-gradients": { - "version": "3.1.2", - "license": "CC0-1.0", + "node_modules/only": { + "version": "0.0.2", + "dev": true + }, + "node_modules/open": { + "version": "8.4.2", + "dev": true, + "license": "MIT", "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=12" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-env-function": { - "version": "4.0.6", - "license": "CC0-1.0", + "node_modules/optionator": { + "version": "0.9.3", + "dev": true, + "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" + "node": ">= 0.8.0" } }, - "node_modules/postcss-flexbugs-fixes": { - "version": "5.0.2", + "node_modules/ora": { + "version": "5.4.1", + "dev": true, "license": "MIT", - "peerDependencies": { - "postcss": "^8.1.4" - } - }, - "node_modules/postcss-focus-visible": { - "version": "6.0.4", - "license": "CC0-1.0", "dependencies": { - "postcss-selector-parser": "^6.0.9" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.4" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-focus-within": { - "version": "5.0.4", - "license": "CC0-1.0", - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "dev": true, + "license": "MIT", "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" + "node": ">=0.10.0" } }, - "node_modules/postcss-font-variant": { - "version": "5.0.0", + "node_modules/p-cancelable": { + "version": "3.0.0", + "dev": true, "license": "MIT", - "peerDependencies": { - "postcss": "^8.1.0" + "engines": { + "node": ">=12.20" } }, - "node_modules/postcss-gap-properties": { - "version": "3.0.5", - "license": "CC0-1.0", + "node_modules/p-finally": { + "version": "1.0.0", + "dev": true, + "license": "MIT", "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": ">=4" } }, - "node_modules/postcss-image-set-function": { - "version": "4.0.7", - "license": "CC0-1.0", + "node_modules/p-limit": { + "version": "3.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-import": { - "version": "15.1.0", + "node_modules/p-locate": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-import/node_modules/resolve": { - "version": "1.22.8", + "node_modules/p-map": { + "version": "4.0.0", + "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "aggregate-error": "^3.0.0" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-initial": { - "version": "4.0.1", + "node_modules/p-map-series": { + "version": "2.1.0", + "dev": true, "license": "MIT", - "peerDependencies": { - "postcss": "^8.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/postcss-js": { - "version": "4.0.1", + "node_modules/p-pipe": { + "version": "3.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "camelcase-css": "^2.0.1" - }, "engines": { - "node": "^12 || ^14 || >= 16" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.4.21" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-lab-function": { - "version": "4.2.1", - "license": "CC0-1.0", + "node_modules/p-queue": { + "version": "6.6.2", + "dev": true, + "license": "MIT", "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-load-config": { - "version": "4.0.2", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "node_modules/p-reduce": { + "version": "2.1.0", + "dev": true, "license": "MIT", - "dependencies": { - "lilconfig": "^3.0.0", - "yaml": "^2.3.4" - }, "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } + "node": ">=8" } }, - "node_modules/postcss-load-config/node_modules/lilconfig": { - "version": "3.1.1", + "node_modules/p-timeout": { + "version": "3.2.0", + "dev": true, "license": "MIT", - "engines": { - "node": ">=14" + "dependencies": { + "p-finally": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/antonk52" + "engines": { + "node": ">=8" } }, - "node_modules/postcss-load-config/node_modules/yaml": { - "version": "2.4.0", - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, + "node_modules/p-try": { + "version": "2.2.0", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 14" + "node": ">=6" } }, - "node_modules/postcss-loader": { - "version": "6.2.1", + "node_modules/p-waterfall": { + "version": "2.1.1", + "dev": true, "license": "MIT", "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.5" + "p-reduce": "^2.0.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-loader/node_modules/cosmiconfig": { - "version": "7.1.0", - "license": "MIT", + "node_modules/pacote": { + "version": "15.2.0", + "dev": true, + "license": "ISC", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-logical": { - "version": "5.0.4", - "license": "CC0-1.0", - "engines": { - "node": "^12 || ^14 || >=16" + "node_modules/pacote/node_modules/@npmcli/fs": { + "version": "3.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-media-minmax": { - "version": "5.0.0", - "license": "MIT", "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "license": "MIT", + "node_modules/pacote/node_modules/cacache": { + "version": "17.1.4", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - }, + "node_modules/pacote/node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "license": "MIT", + "node_modules/pacote/node_modules/fs-minipass": { + "version": "3.0.3", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-value-parser": "^4.2.0" + "minipass": "^7.0.3" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "license": "MIT", - "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, + "node_modules/pacote/node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/postcss-minify-params": { - "version": "5.1.4", - "license": "MIT", + "node_modules/pacote/node_modules/glob": { + "version": "10.3.10", + "dev": true, + "license": "ISC", "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "license": "MIT", + "node_modules/pacote/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "lru-cache": "^7.5.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", + "node_modules/pacote/node_modules/ignore-walk": { + "version": "6.0.4", + "dev": true, "license": "ISC", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.4", - "license": "MIT", "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "minimatch": "^9.0.0" }, "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-modules-scope": { - "version": "3.1.1", + "node_modules/pacote/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, "license": "ISC", - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">=12" } }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", + "node_modules/pacote/node_modules/minipass": { + "version": "5.0.0", + "dev": true, "license": "ISC", - "dependencies": { - "icss-utils": "^5.0.0" - }, "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">=8" } }, - "node_modules/postcss-nested": { - "version": "6.0.1", - "license": "MIT", + "node_modules/pacote/node_modules/npm-package-arg": { + "version": "10.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-selector-parser": "^6.0.11" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-nesting": { - "version": "10.2.0", - "license": "CC0-1.0", + "node_modules/pacote/node_modules/npm-packlist": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" + "ignore-walk": "^6.0.0" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-normalize": { - "version": "10.0.1", - "license": "CC0-1.0", + "node_modules/pacote/node_modules/ssri": { + "version": "10.0.5", + "dev": true, + "license": "ISC", "dependencies": { - "@csstools/normalize.css": "*", - "postcss-browser-comments": "^4", - "sanitize.css": "*" + "minipass": "^7.0.3" }, "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "browserslist": ">= 4", - "postcss": ">= 8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "license": "MIT", + "node_modules/pacote/node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "license": "MIT", + "node_modules/pacote/node_modules/unique-filename": { + "version": "3.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-value-parser": "^4.2.0" + "unique-slug": "^4.0.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "license": "MIT", + "node_modules/pacote/node_modules/unique-slug": { + "version": "4.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "postcss-value-parser": "^4.2.0" + "imurmurhash": "^0.1.4" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", + "node_modules/parent-module": { + "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "callsites": "^3.0.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=6" } }, - "node_modules/postcss-normalize-string": { - "version": "5.1.0", + "node_modules/parse-cache-control": { + "version": "1.0.1" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=8" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", + "node_modules/parse-json/node_modules/lines-and-columns": { + "version": "1.2.4", + "dev": true, + "license": "MIT" + }, + "node_modules/parse-path": { + "version": "7.0.0", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "protocols": "^2.0.0" } }, - "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", + "node_modules/parse-url": { + "version": "8.1.0", + "dev": true, "license": "MIT", "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "parse-path": "^7.0.0" } }, - "node_modules/postcss-normalize-url": { - "version": "5.1.0", + "node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "dev": true, "license": "MIT", - "dependencies": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">= 0.8" } }, - "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=8" } }, - "node_modules/postcss-opacity-percentage": { - "version": "1.1.3", - "funding": [ - { - "type": "kofi", - "url": "https://ko-fi.com/mrcgrtz" - }, - { - "type": "liberapay", - "url": "https://liberapay.com/mrcgrtz" - } - ], + "node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, "license": "MIT", "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": ">=0.10.0" } }, - "node_modules/postcss-ordered-values": { - "version": "5.1.3", + "node_modules/path-key": { + "version": "3.1.1", + "dev": true, "license": "MIT", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=8" } }, - "node_modules/postcss-overflow-shorthand": { - "version": "3.0.4", - "license": "CC0-1.0", + "node_modules/path-parse": { + "version": "1.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { - "postcss-value-parser": "^4.2.0" + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">=16 || 14 >=14.17" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/postcss-page-break": { - "version": "3.0.4", - "license": "MIT", - "peerDependencies": { - "postcss": "^8" + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "14 || >=16.14" } }, - "node_modules/postcss-place": { - "version": "7.0.5", - "license": "CC0-1.0", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/postcss-preset-env": { - "version": "7.8.3", - "license": "CC0-1.0", - "dependencies": { - "@csstools/postcss-cascade-layers": "^1.1.1", - "@csstools/postcss-color-function": "^1.1.1", - "@csstools/postcss-font-format-keywords": "^1.0.1", - "@csstools/postcss-hwb-function": "^1.0.2", - "@csstools/postcss-ic-unit": "^1.0.1", - "@csstools/postcss-is-pseudo-class": "^2.0.7", - "@csstools/postcss-nested-calc": "^1.0.0", - "@csstools/postcss-normalize-display-values": "^1.0.1", - "@csstools/postcss-oklab-function": "^1.1.1", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.1", - "@csstools/postcss-text-decoration-shorthand": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.2", - "@csstools/postcss-unset-value": "^1.0.2", - "autoprefixer": "^10.4.13", - "browserslist": "^4.21.4", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^7.1.0", - "postcss-attribute-case-insensitive": "^5.0.2", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.4", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.1", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.10", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.5", - "postcss-double-position-gradients": "^3.1.2", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.5", - "postcss-image-set-function": "^4.0.7", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.1", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.2.0", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.4", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.5", - "postcss-pseudo-class-any-link": "^7.1.6", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node_modules/path-type": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "7.1.6", - "license": "CC0-1.0", + "node_modules/pause-stream": { + "version": "0.0.11", + "dev": true, + "license": [ + "MIT", + "Apache2" + ], "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "through": "~2.3" } }, - "node_modules/postcss-reduce-initial": { - "version": "5.1.2", + "node_modules/picocolors": { + "version": "1.1.1", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "dev": true, "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=8.6" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", + "node_modules/pify": { + "version": "5.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", + "node_modules/pirates": { + "version": "4.0.6", + "dev": true, "license": "MIT", - "peerDependencies": { - "postcss": "^8.0.3" + "engines": { + "node": ">= 6" } }, - "node_modules/postcss-selector-not": { - "version": "6.0.1", + "node_modules/pkg-dir": { + "version": "4.2.0", + "dev": true, "license": "MIT", "dependencies": { - "postcss-selector-parser": "^6.0.10" + "find-up": "^4.0.0" }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" + "node": ">=8" } }, - "node_modules/postcss-selector-parser": { - "version": "6.0.15", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "dev": true, "license": "MIT", "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/postcss-svgo": { - "version": "5.1.0", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "dev": true, "license": "MIT", "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" + "p-locate": "^4.1.0" }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-svgo/node_modules/commander": { - "version": "7.2.0", - "license": "MIT", "engines": { - "node": ">= 10" + "node": ">=8" } }, - "node_modules/postcss-svgo/node_modules/css-tree": { - "version": "1.1.3", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, "license": "MIT", "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" + "p-try": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-svgo/node_modules/mdn-data": { - "version": "2.0.14", - "license": "CC0-1.0" - }, - "node_modules/postcss-svgo/node_modules/svgo": { - "version": "2.8.0", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "dev": true, "license": "MIT", "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=10.13.0" + "node": ">=8" } }, - "node_modules/postcss-unique-selectors": { - "version": "5.1.1", + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "dev": true, "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">= 0.4" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "license": "MIT" - }, "node_modules/prelude-ls": { "version": "1.2.1", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8.0" @@ -22756,24 +16349,6 @@ "node": ">=6.0.0" } }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-error": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, "node_modules/pretty-format": { "version": "29.7.0", "dev": true, @@ -22871,6 +16446,7 @@ }, "node_modules/prop-types": { "version": "15.8.1", + "dev": true, "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", @@ -22880,6 +16456,7 @@ }, "node_modules/prop-types/node_modules/react-is": { "version": "16.13.1", + "dev": true, "license": "MIT" }, "node_modules/proper-lockfile": { @@ -22902,24 +16479,6 @@ "dev": true, "license": "MIT" }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "license": "MIT", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/proxy-from-env": { "version": "1.1.0", "dev": true, @@ -22945,6 +16504,7 @@ }, "node_modules/psl": { "version": "1.9.0", + "dev": true, "license": "MIT" }, "node_modules/pump": { @@ -22958,19 +16518,12 @@ }, "node_modules/punycode": { "version": "2.3.1", + "dev": true, "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/q": { - "version": "1.5.1", - "license": "MIT", - "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" - } - }, "node_modules/qs": { "version": "6.11.2", "license": "BSD-3-Clause", @@ -22986,6 +16539,7 @@ }, "node_modules/querystringify": { "version": "2.2.0", + "dev": true, "license": "MIT" }, "node_modules/queue-microtask": { @@ -23014,13 +16568,6 @@ "node": ">=8" } }, - "node_modules/raf": { - "version": "3.4.1", - "license": "MIT", - "dependencies": { - "performance-now": "^2.1.0" - } - }, "node_modules/randombytes": { "version": "2.1.0", "license": "MIT", @@ -23028,15 +16575,9 @@ "safe-buffer": "^5.1.0" } }, - "node_modules/range-parser": { - "version": "1.2.1", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/raw-body": { "version": "2.5.2", + "dev": true, "license": "MIT", "dependencies": { "bytes": "3.1.2", @@ -23534,76 +17075,21 @@ }, "node_modules/react": { "version": "18.2.0", + "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-app-polyfill": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "core-js": "^3.19.2", - "object-assign": "^4.1.1", - "promise": "^8.1.0", - "raf": "^3.4.1", - "regenerator-runtime": "^0.13.9", - "whatwg-fetch": "^3.6.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/react-app-polyfill/node_modules/regenerator-runtime": { - "version": "0.13.11", - "license": "MIT" - }, - "node_modules/react-dev-utils": { - "version": "12.0.1", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.16.0", - "address": "^1.1.2", - "browserslist": "^4.18.1", - "chalk": "^4.1.2", - "cross-spawn": "^7.0.3", - "detect-port-alt": "^1.1.6", - "escape-string-regexp": "^4.0.0", - "filesize": "^8.0.6", - "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^6.5.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "gzip-size": "^6.0.0", - "immer": "^9.0.7", - "is-root": "^2.1.0", - "loader-utils": "^3.2.0", - "open": "^8.4.0", - "pkg-up": "^3.1.0", - "prompts": "^2.4.2", - "react-error-overlay": "^6.0.11", - "recursive-readdir": "^2.2.2", - "shell-quote": "^1.7.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/react-dev-utils/node_modules/loader-utils": { - "version": "3.2.1", - "license": "MIT", + "loose-envify": "^1.1.0" + }, "engines": { - "node": ">= 12.13.0" + "node": ">=0.10.0" } }, "node_modules/react-dom": { "version": "18.2.0", + "dev": true, "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.0" @@ -23612,49 +17098,11 @@ "react": "^18.2.0" } }, - "node_modules/react-error-overlay": { - "version": "6.0.11", - "license": "MIT" - }, "node_modules/react-is": { "version": "18.2.0", + "dev": true, "license": "MIT" }, - "node_modules/react-refresh": { - "version": "0.11.0", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-router": { - "version": "6.22.2", - "license": "MIT", - "dependencies": { - "@remix-run/router": "1.15.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/react-router-dom": { - "version": "6.22.2", - "license": "MIT", - "dependencies": { - "@remix-run/router": "1.15.2", - "react-router": "6.22.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, "node_modules/read": { "version": "2.1.0", "dev": true, @@ -23666,20 +17114,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-cache": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-cache/node_modules/pify": { - "version": "2.3.0", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/read-cmd-shim": { "version": "4.0.0", "dev": true, @@ -23997,6 +17431,7 @@ }, "node_modules/readable-stream": { "version": "3.6.2", + "dev": true, "license": "MIT", "dependencies": { "inherits": "^2.0.3", @@ -24012,44 +17447,6 @@ "dev": true, "license": "MIT" }, - "node_modules/readdirp": { - "version": "3.6.0", - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/recursive-readdir": { - "version": "2.2.3", - "license": "MIT", - "dependencies": { - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/recursive-readdir/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/recursive-readdir/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/redent": { "version": "3.0.0", "dev": true, @@ -24083,6 +17480,7 @@ }, "node_modules/reflect.getprototypeof": { "version": "1.0.5", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.5", @@ -24100,37 +17498,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regenerate": { - "version": "1.4.2", - "license": "MIT" - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.2.0", - "license": "MIT", - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/regenerator-runtime": { "version": "0.14.1", - "license": "MIT" - }, - "node_modules/regenerator-transform": { - "version": "0.15.2", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-parser": { - "version": "2.3.0", + "dev": true, "license": "MIT" }, "node_modules/regexp.prototype.flags": { "version": "1.5.2", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.6", @@ -24145,42 +17520,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpu-core": { - "version": "6.1.1", - "license": "MIT", - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.2.0", - "regjsgen": "^0.8.0", - "regjsparser": "^0.11.0", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.8.0", - "license": "MIT" - }, - "node_modules/regjsparser": { - "version": "0.11.1", - "license": "BSD-2-Clause", - "dependencies": { - "jsesc": "~3.0.2" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/relateurl": { - "version": "0.2.7", - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/relative-to-absolute-iri": { "version": "1.0.7", "license": "MIT" @@ -24189,87 +17528,9 @@ "version": "0.1.0", "license": "ISC" }, - "node_modules/renderkid": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - } - }, - "node_modules/renderkid/node_modules/dom-serializer": { - "version": "1.4.1", - "license": "MIT", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domhandler": { - "version": "4.3.1", - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domutils": { - "version": "2.8.0", - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/entities": { - "version": "2.2.0", - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/htmlparser2": { - "version": "6.1.0", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, "node_modules/require-directory": { "version": "2.1.1", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -24277,10 +17538,12 @@ }, "node_modules/requires-port": { "version": "1.0.0", + "dev": true, "license": "MIT" }, "node_modules/resolve": { "version": "2.0.0-next.5", + "dev": true, "license": "MIT", "dependencies": { "is-core-module": "^2.13.0", @@ -24301,6 +17564,7 @@ }, "node_modules/resolve-cwd": { "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { "resolve-from": "^5.0.0" @@ -24311,6 +17575,7 @@ }, "node_modules/resolve-cwd/node_modules/resolve-from": { "version": "5.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -24318,58 +17583,15 @@ }, "node_modules/resolve-from": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=4" } }, - "node_modules/resolve-url-loader": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^7.0.35", - "source-map": "0.6.1" - }, - "engines": { - "node": ">=8.9" - }, - "peerDependencies": { - "rework": "1.0.1", - "rework-visit": "1.0.0" - }, - "peerDependenciesMeta": { - "rework": { - "optional": true - }, - "rework-visit": { - "optional": true - } - } - }, - "node_modules/resolve-url-loader/node_modules/picocolors": { - "version": "0.2.1", - "license": "ISC" - }, - "node_modules/resolve-url-loader/node_modules/postcss": { - "version": "7.0.39", - "license": "MIT", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, "node_modules/resolve.exports": { "version": "1.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -24411,6 +17633,7 @@ }, "node_modules/reusify": { "version": "1.0.4", + "dev": true, "license": "MIT", "engines": { "iojs": ">=1.0.0", @@ -24419,6 +17642,7 @@ }, "node_modules/rimraf": { "version": "3.0.2", + "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -24430,44 +17654,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rollup": { - "version": "2.79.1", - "license": "MIT", - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=10.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-terser": { - "version": "7.0.2", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "jest-worker": "^26.2.1", - "serialize-javascript": "^4.0.0", - "terser": "^5.0.0" - }, - "peerDependencies": { - "rollup": "^2.0.0" - } - }, - "node_modules/rollup-plugin-terser/node_modules/jest-worker": { - "version": "26.6.2", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, "node_modules/run-async": { "version": "2.4.1", "dev": true, @@ -24478,6 +17664,7 @@ }, "node_modules/run-parallel": { "version": "1.2.0", + "dev": true, "funding": [ { "type": "github", @@ -24507,6 +17694,7 @@ }, "node_modules/safe-array-concat": { "version": "1.1.0", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.5", @@ -24541,6 +17729,7 @@ }, "node_modules/safe-regex-test": { "version": "1.0.3", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.6", @@ -24556,62 +17745,20 @@ }, "node_modules/safe-stable-stringify": { "version": "2.4.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/sanitize.css": { - "version": "13.0.0", - "license": "CC0-1.0" - }, - "node_modules/sass-loader": { - "version": "12.6.0", + "dev": true, "license": "MIT", - "dependencies": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } + "node": ">=10" } }, - "node_modules/sax": { - "version": "1.2.4", - "license": "ISC" + "node_modules/safer-buffer": { + "version": "2.1.2", + "devOptional": true, + "license": "MIT" }, "node_modules/saxes": { "version": "5.0.1", + "dev": true, "license": "ISC", "dependencies": { "xmlchars": "^2.2.0" @@ -24622,44 +17769,16 @@ }, "node_modules/scheduler": { "version": "0.23.0", + "dev": true, "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" } }, - "node_modules/schema-utils": { - "version": "3.3.0", - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/select-hose": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/selfsigned": { - "version": "2.4.1", - "license": "MIT", - "dependencies": { - "@types/node-forge": "^1.3.0", - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/semver": { "version": "7.6.0", + "dev": true, "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" @@ -24671,50 +17790,6 @@ "node": ">=10" } }, - "node_modules/send": { - "version": "0.18.0", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "license": "MIT" - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/serialize-javascript": { "version": "4.0.0", "license": "BSD-3-Clause", @@ -24722,74 +17797,6 @@ "randombytes": "^2.1.0" } }, - "node_modules/serve-index": { - "version": "1.9.1", - "license": "MIT", - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "license": "ISC" - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "license": "ISC" - }, - "node_modules/serve-static": { - "version": "1.15.0", - "license": "MIT", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/set-blocking": { "version": "2.0.0", "dev": true, @@ -24812,6 +17819,7 @@ }, "node_modules/set-function-name": { "version": "2.0.2", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -24830,6 +17838,7 @@ }, "node_modules/setprototypeof": { "version": "1.2.0", + "dev": true, "license": "ISC" }, "node_modules/shaclc-parse": { @@ -24864,6 +17873,7 @@ }, "node_modules/shebang-command": { "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" @@ -24874,18 +17884,12 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/shell-quote": { - "version": "1.8.1", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/shex-test": { "version": "0.5.8", "dev": true, @@ -24935,6 +17939,7 @@ }, "node_modules/signal-exit": { "version": "3.0.7", + "dev": true, "license": "ISC" }, "node_modules/sigstore": { @@ -25161,6 +18166,7 @@ }, "node_modules/slash": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -25175,22 +18181,6 @@ "npm": ">= 3.0.0" } }, - "node_modules/sockjs": { - "version": "0.3.24", - "license": "MIT", - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/sockjs/node_modules/uuid": { - "version": "8.3.2", - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/socks": { "version": "2.8.1", "dev": true, @@ -25228,65 +18218,23 @@ "node": ">=4" } }, - "node_modules/source-list-map": { - "version": "2.0.1", - "license": "MIT" - }, "node_modules/source-map": { "version": "0.6.1", + "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "3.0.2", - "license": "MIT", - "dependencies": { - "abab": "^2.0.5", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/source-map-loader/node_modules/iconv-lite": { - "version": "0.6.3", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/source-map-support": { "version": "0.5.21", + "dev": true, "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "license": "MIT" - }, "node_modules/spark-md5": { "version": "3.0.2", "dev": true, @@ -25464,32 +18412,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/spdy": { - "version": "4.0.2", - "license": "MIT", - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, "node_modules/split": { "version": "1.0.1", "dev": true, @@ -25541,10 +18463,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/stable": { - "version": "0.1.8", - "license": "MIT" - }, "node_modules/stack-trace": { "version": "0.0.10", "dev": true, @@ -25555,6 +18473,7 @@ }, "node_modules/stack-utils": { "version": "2.0.6", + "dev": true, "license": "MIT", "dependencies": { "escape-string-regexp": "^2.0.0" @@ -25565,15 +18484,12 @@ }, "node_modules/stack-utils/node_modules/escape-string-regexp": { "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/stackframe": { - "version": "1.3.4", - "license": "MIT" - }, "node_modules/standard-as-callback": { "version": "2.1.0", "dev": true, @@ -25620,88 +18536,13 @@ "engines": { "node": ">=10" }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/static-eval": { - "version": "2.0.2", - "license": "MIT", - "dependencies": { - "escodegen": "^1.8.1" - } - }, - "node_modules/static-eval/node_modules/escodegen": { - "version": "1.14.3", - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=4.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/static-eval/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/static-eval/node_modules/levn": { - "version": "0.3.0", - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/static-eval/node_modules/optionator": { - "version": "0.8.3", - "license": "MIT", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/static-eval/node_modules/prelude-ls": { - "version": "1.1.2", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/static-eval/node_modules/type-check": { - "version": "0.3.2", - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, "node_modules/statuses": { "version": "1.5.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -25766,6 +18607,7 @@ }, "node_modules/string-length": { "version": "4.0.2", + "dev": true, "license": "MIT", "dependencies": { "char-regex": "^1.0.2", @@ -25775,12 +18617,9 @@ "node": ">=10" } }, - "node_modules/string-natural-compare": { - "version": "3.0.1", - "license": "MIT" - }, "node_modules/string-width": { "version": "4.2.3", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -25794,6 +18633,7 @@ "node_modules/string-width-cjs": { "name": "string-width", "version": "4.2.3", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -25806,6 +18646,7 @@ }, "node_modules/string.prototype.matchall": { "version": "4.0.10", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -25824,6 +18665,7 @@ }, "node_modules/string.prototype.trim": { "version": "1.2.8", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -25839,6 +18681,7 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.7", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -25851,6 +18694,7 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.7", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -25861,395 +18705,119 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/stringify-object": { - "version": "3.3.0", - "license": "BSD-2-Clause", - "dependencies": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stringify-object/node_modules/is-obj": { - "version": "1.0.1", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-ansi": { "version": "6.0.1", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-comments": { - "version": "2.0.1", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strong-log-transformer": { - "version": "2.1.0", "dev": true, - "license": "Apache-2.0", - "dependencies": { - "duplexer": "^0.1.1", - "minimist": "^1.2.0", - "through": "^2.3.4" - }, - "bin": { - "sl-log-transformer": "bin/sl-log-transformer.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/style-loader": { - "version": "3.3.4", - "license": "MIT", - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/stylehacks": { - "version": "5.1.1", - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/sucrase": { - "version": "3.35.0", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/sucrase/node_modules/commander": { - "version": "4.1.1", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/sucrase/node_modules/glob": { - "version": "10.3.10", - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sucrase/node_modules/lines-and-columns": { - "version": "1.2.4", - "license": "MIT" - }, - "node_modules/sucrase/node_modules/minipass": { - "version": "7.0.4", - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-parser": { - "version": "2.0.4", - "license": "MIT" - }, - "node_modules/svgo": { - "version": "1.3.2", - "license": "MIT", - "dependencies": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/svgo/node_modules/ansi-styles": { - "version": "3.2.1", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/svgo/node_modules/argparse": { - "version": "1.0.10", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/svgo/node_modules/chalk": { - "version": "2.4.2", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/svgo/node_modules/color-convert": { - "version": "1.9.3", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/svgo/node_modules/color-name": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/svgo/node_modules/css-select": { - "version": "2.1.0", - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" - } - }, - "node_modules/svgo/node_modules/css-what": { - "version": "3.4.2", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "0.2.2", "license": "MIT", "dependencies": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/svgo/node_modules/domutils": { - "version": "1.7.0", - "license": "BSD-2-Clause", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/svgo/node_modules/domutils/node_modules/domelementtype": { - "version": "1.3.1", - "license": "BSD-2-Clause" - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "node_modules/strip-bom": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "node_modules/svgo/node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/svgo/node_modules/has-flag": { + "node_modules/strip-indent": { "version": "3.0.0", + "dev": true, "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/svgo/node_modules/js-yaml": { - "version": "3.14.1", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "dev": true, "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "engines": { + "node": ">=8" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/svgo/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", + "node_modules/strong-log-transformer": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "minimist": "^1.2.6" + "duplexer": "^0.1.1", + "minimist": "^1.2.0", + "through": "^2.3.4" }, "bin": { - "mkdirp": "bin/cmd.js" + "sl-log-transformer": "bin/sl-log-transformer.js" + }, + "engines": { + "node": ">=4" } }, - "node_modules/svgo/node_modules/nth-check": { - "version": "1.0.2", - "license": "BSD-2-Clause", + "node_modules/supports-color": { + "version": "7.2.0", + "license": "MIT", "dependencies": { - "boolbase": "~1.0.0" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/svgo/node_modules/sprintf-js": { - "version": "1.0.3", - "license": "BSD-3-Clause" - }, - "node_modules/svgo/node_modules/supports-color": { - "version": "5.5.0", + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/symbol-tree": { "version": "3.2.4", + "dev": true, "license": "MIT" }, "node_modules/sync-request": { @@ -26293,63 +18861,6 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/tailwindcss": { - "version": "3.4.1", - "license": "MIT", - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "arg": "^5.0.2", - "chokidar": "^3.5.3", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.3.0", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "jiti": "^1.19.1", - "lilconfig": "^2.1.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-hash": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.23", - "postcss-import": "^15.1.0", - "postcss-js": "^4.0.1", - "postcss-load-config": "^4.0.1", - "postcss-nested": "^6.0.1", - "postcss-selector-parser": "^6.0.11", - "resolve": "^1.22.2", - "sucrase": "^3.32.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.8", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/tar": { "version": "6.1.11", "dev": true, @@ -26389,41 +18900,9 @@ "node": ">=4" } }, - "node_modules/tempy": { - "version": "0.6.0", - "license": "MIT", - "dependencies": { - "is-stream": "^2.0.0", - "temp-dir": "^2.0.0", - "type-fest": "^0.16.0", - "unique-string": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/tempy/node_modules/temp-dir": { - "version": "2.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/tempy/node_modules/type-fest": { - "version": "0.16.0", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/terminal-link": { "version": "2.1.1", + "dev": true, "license": "MIT", "dependencies": { "ansi-escapes": "^4.2.1", @@ -26436,67 +18915,9 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/terser": { - "version": "5.28.1", - "license": "BSD-2-Clause", - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.10", - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.20", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { - "version": "6.0.2", - "license": "BSD-3-Clause", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "license": "MIT" - }, "node_modules/test-exclude": { "version": "6.0.0", + "dev": true, "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", @@ -26509,6 +18930,7 @@ }, "node_modules/test-exclude/node_modules/brace-expansion": { "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -26517,6 +18939,7 @@ }, "node_modules/test-exclude/node_modules/minimatch": { "version": "3.1.2", + "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -26540,6 +18963,7 @@ }, "node_modules/text-table": { "version": "0.2.0", + "dev": true, "license": "MIT" }, "node_modules/then-request": { @@ -26619,25 +19043,9 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/thenify": { - "version": "3.3.1", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "license": "MIT", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, "node_modules/throat": { "version": "6.0.2", + "dev": true, "license": "MIT" }, "node_modules/through": { @@ -26686,10 +19094,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/thunky": { - "version": "1.1.0", - "license": "MIT" - }, "node_modules/tiny-case": { "version": "1.0.3", "dev": true, @@ -26747,10 +19151,12 @@ }, "node_modules/tmpl": { "version": "1.0.5", + "dev": true, "license": "BSD-3-Clause" }, "node_modules/to-fast-properties": { "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -26758,6 +19164,7 @@ }, "node_modules/to-regex-range": { "version": "5.0.1", + "dev": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -26768,6 +19175,7 @@ }, "node_modules/toidentifier": { "version": "1.0.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.6" @@ -26780,6 +19188,7 @@ }, "node_modules/tough-cookie": { "version": "4.1.3", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "psl": "^1.1.33", @@ -26793,6 +19202,7 @@ }, "node_modules/tough-cookie/node_modules/universalify": { "version": "0.2.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 4.0.0" @@ -26818,10 +19228,6 @@ "node": ">= 14.0.0" } }, - "node_modules/tryer": { - "version": "1.0.1", - "license": "MIT" - }, "node_modules/ts-api-utils": { "version": "1.2.1", "dev": true, @@ -26838,10 +19244,6 @@ "dev": true, "license": "MIT" }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "license": "Apache-2.0" - }, "node_modules/ts-morph": { "version": "24.0.0", "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-24.0.0.tgz", @@ -26854,7 +19256,7 @@ }, "node_modules/ts-node": { "version": "10.9.2", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "@cspotcode/source-map-support": "^0.8.0", @@ -26896,7 +19298,7 @@ }, "node_modules/ts-node/node_modules/acorn-walk": { "version": "8.3.2", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=0.4.0" @@ -26904,7 +19306,7 @@ }, "node_modules/ts-node/node_modules/arg": { "version": "4.1.3", - "devOptional": true, + "dev": true, "license": "MIT" }, "node_modules/tsc-watch": { @@ -26940,19 +19342,6 @@ "node": ">=6" } }, - "node_modules/tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.0", - "enhanced-resolve": "^5.7.0", - "tsconfig-paths": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/tsconfig-paths/node_modules/strip-bom": { "version": "3.0.0", "dev": true, @@ -26963,33 +19352,17 @@ }, "node_modules/tslib": { "version": "2.6.2", + "dev": true, "license": "0BSD" }, "node_modules/tsscmp": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.6.x" - } - }, - "node_modules/tsutils": { - "version": "3.21.0", + "version": "1.0.6", + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^1.8.1" - }, "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "node": ">=0.6.x" } }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, "node_modules/tuf-js": { "version": "1.1.7", "dev": true, @@ -27192,6 +19565,7 @@ }, "node_modules/type-check": { "version": "0.4.0", + "dev": true, "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" @@ -27202,6 +19576,7 @@ }, "node_modules/type-detect": { "version": "4.0.8", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -27209,6 +19584,7 @@ }, "node_modules/type-fest": { "version": "0.20.2", + "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" @@ -27219,6 +19595,7 @@ }, "node_modules/type-is": { "version": "1.6.18", + "dev": true, "license": "MIT", "dependencies": { "media-typer": "0.3.0", @@ -27230,6 +19607,7 @@ }, "node_modules/typed-array-buffer": { "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -27242,6 +19620,7 @@ }, "node_modules/typed-array-byte-length": { "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -27259,6 +19638,7 @@ }, "node_modules/typed-array-byte-offset": { "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", @@ -27277,6 +19657,7 @@ }, "node_modules/typed-array-length": { "version": "1.0.5", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -27307,6 +19688,7 @@ }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", + "dev": true, "license": "MIT", "dependencies": { "is-typedarray": "^1.0.0" @@ -27345,6 +19727,7 @@ }, "node_modules/typescript": { "version": "5.3.3", + "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -27368,6 +19751,7 @@ }, "node_modules/unbox-primitive": { "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -27379,46 +19763,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/underscore": { - "version": "1.12.1", - "license": "MIT" - }, "node_modules/undici-types": { "version": "5.26.5", "license": "MIT" }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.1", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.2.0", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/unique-filename": { "version": "2.0.1", "dev": true, @@ -27441,16 +19789,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/unique-string": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/universal-user-agent": { "version": "6.0.1", "dev": true, @@ -27465,15 +19803,12 @@ }, "node_modules/unpipe": { "version": "1.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" } }, - "node_modules/unquote": { - "version": "1.1.1", - "license": "MIT" - }, "node_modules/untildify": { "version": "4.0.0", "dev": true, @@ -27493,6 +19828,7 @@ }, "node_modules/update-browserslist-db": { "version": "1.1.1", + "dev": true, "funding": [ { "type": "opencollective", @@ -27521,6 +19857,7 @@ }, "node_modules/uri-js": { "version": "4.4.1", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -27537,6 +19874,7 @@ }, "node_modules/url-parse": { "version": "1.5.10", + "dev": true, "license": "MIT", "dependencies": { "querystringify": "^2.1.1", @@ -27547,30 +19885,6 @@ "version": "1.0.2", "license": "MIT" }, - "node_modules/util.promisify": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/utila": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/uuid": { "version": "9.0.1", "funding": [ @@ -27589,11 +19903,12 @@ }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", - "devOptional": true, + "dev": true, "license": "MIT" }, "node_modules/v8-to-istanbul": { "version": "8.1.1", + "dev": true, "license": "ISC", "dependencies": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -27606,6 +19921,7 @@ }, "node_modules/v8-to-istanbul/node_modules/source-map": { "version": "0.7.4", + "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">= 8" @@ -27638,6 +19954,7 @@ }, "node_modules/vary": { "version": "1.1.2", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -27655,400 +19972,88 @@ } }, "node_modules/vscode-oniguruma": { - "version": "1.7.0", - "dev": true, - "license": "MIT" - }, - "node_modules/vscode-textmate": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "license": "MIT", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/wait-on": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "axios": "^1.6.1", - "joi": "^17.11.0", - "lodash": "^4.17.21", - "minimist": "^1.2.8", - "rxjs": "^7.8.1" - }, - "bin": { - "wait-on": "bin/wait-on" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "license": "Apache-2.0", - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "license": "MIT", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "license": "MIT", - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/web-streams-ponyfill": { - "version": "1.4.2", - "dev": true, - "license": "MIT" - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "license": "BSD-2-Clause" - }, - "node_modules/webpack": { - "version": "5.90.3", - "license": "MIT", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.21.10", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "license": "MIT", - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.2.0", - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.15.1", - "license": "MIT", - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.5", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.13.0" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } + "version": "1.7.0", + "dev": true, + "license": "MIT" }, - "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { - "version": "1.0.0", + "node_modules/vscode-textmate": { + "version": "8.0.0", + "dev": true, "license": "MIT" }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.2.0", + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "browser-process-hrtime": "^1.0.0" } }, - "node_modules/webpack-manifest-plugin": { - "version": "4.1.1", + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { - "tapable": "^2.0.0", - "webpack-sources": "^2.2.0" + "xml-name-validator": "^3.0.0" }, "engines": { - "node": ">=12.22.0" - }, - "peerDependencies": { - "webpack": "^4.44.2 || ^5.47.0" + "node": ">=10" } }, - "node_modules/webpack-manifest-plugin/node_modules/webpack-sources": { - "version": "2.3.1", + "node_modules/wait-on": { + "version": "7.2.0", + "dev": true, "license": "MIT", "dependencies": { - "source-list-map": "^2.0.1", - "source-map": "^0.6.1" + "axios": "^1.6.1", + "joi": "^17.11.0", + "lodash": "^4.17.21", + "minimist": "^1.2.8", + "rxjs": "^7.8.1" + }, + "bin": { + "wait-on": "bin/wait-on" }, "engines": { - "node": ">=10.13.0" + "node": ">=12.0.0" } }, - "node_modules/webpack-merge": { - "version": "5.10.0", + "node_modules/walker": { + "version": "1.0.8", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "clone-deep": "^4.0.1", - "flat": "^5.0.2", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" + "makeerror": "1.0.12" } }, - "node_modules/webpack-sources": { - "version": "3.2.3", + "node_modules/wcwidth": { + "version": "1.0.1", + "dev": true, "license": "MIT", - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "5.1.1", - "license": "BSD-2-Clause", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/webpack/node_modules/estraverse": { - "version": "4.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" + "defaults": "^1.0.3" } }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "license": "Apache-2.0", - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } + "node_modules/web-streams-ponyfill": { + "version": "1.4.2", + "dev": true, + "license": "MIT" }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "license": "Apache-2.0", - "engines": { - "node": ">=0.8.0" - } + "node_modules/webidl-conversions": { + "version": "3.0.1", + "license": "BSD-2-Clause" }, "node_modules/whatwg-encoding": { "version": "1.0.5", + "dev": true, "license": "MIT", "dependencies": { "iconv-lite": "0.4.24" } }, - "node_modules/whatwg-fetch": { - "version": "3.6.20", - "license": "MIT" - }, "node_modules/whatwg-mimetype": { "version": "2.3.0", + "dev": true, "license": "MIT" }, "node_modules/whatwg-url": { @@ -28061,6 +20066,7 @@ }, "node_modules/which": { "version": "2.0.2", + "dev": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" @@ -28074,6 +20080,7 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", @@ -28088,6 +20095,7 @@ }, "node_modules/which-builtin-type": { "version": "1.1.3", + "dev": true, "license": "MIT", "dependencies": { "function.prototype.name": "^1.1.5", @@ -28112,6 +20120,7 @@ }, "node_modules/which-collection": { "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { "is-map": "^2.0.1", @@ -28125,6 +20134,7 @@ }, "node_modules/which-typed-array": { "version": "1.1.14", + "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.6", @@ -28148,11 +20158,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/wildcard": { - "version": "2.0.1", - "dev": true, - "license": "MIT" - }, "node_modules/winston": { "version": "3.11.0", "dev": true, @@ -28187,294 +20192,11 @@ "node": ">= 12.0.0" } }, - "node_modules/word-wrap": { - "version": "1.2.5", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wordwrap": { "version": "1.0.0", "dev": true, "license": "MIT" }, - "node_modules/workbox-background-sync": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "idb": "^7.0.1", - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-broadcast-update": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-build": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "@apideck/better-ajv-errors": "^0.3.1", - "@babel/core": "^7.11.1", - "@babel/preset-env": "^7.11.0", - "@babel/runtime": "^7.11.2", - "@rollup/plugin-babel": "^5.2.0", - "@rollup/plugin-node-resolve": "^11.2.1", - "@rollup/plugin-replace": "^2.4.1", - "@surma/rollup-plugin-off-main-thread": "^2.2.3", - "ajv": "^8.6.0", - "common-tags": "^1.8.0", - "fast-json-stable-stringify": "^2.1.0", - "fs-extra": "^9.0.1", - "glob": "^7.1.6", - "lodash": "^4.17.20", - "pretty-bytes": "^5.3.0", - "rollup": "^2.43.1", - "rollup-plugin-terser": "^7.0.0", - "source-map": "^0.8.0-beta.0", - "stringify-object": "^3.3.0", - "strip-comments": "^2.0.1", - "tempy": "^0.6.0", - "upath": "^1.2.0", - "workbox-background-sync": "6.6.0", - "workbox-broadcast-update": "6.6.0", - "workbox-cacheable-response": "6.6.0", - "workbox-core": "6.6.0", - "workbox-expiration": "6.6.0", - "workbox-google-analytics": "6.6.0", - "workbox-navigation-preload": "6.6.0", - "workbox-precaching": "6.6.0", - "workbox-range-requests": "6.6.0", - "workbox-recipes": "6.6.0", - "workbox-routing": "6.6.0", - "workbox-strategies": "6.6.0", - "workbox-streams": "6.6.0", - "workbox-sw": "6.6.0", - "workbox-window": "6.6.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/workbox-build/node_modules/@apideck/better-ajv-errors": { - "version": "0.3.6", - "license": "MIT", - "dependencies": { - "json-schema": "^0.4.0", - "jsonpointer": "^5.0.0", - "leven": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "ajv": ">=8" - } - }, - "node_modules/workbox-build/node_modules/ajv": { - "version": "8.12.0", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/workbox-build/node_modules/fs-extra": { - "version": "9.1.0", - "license": "MIT", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/workbox-build/node_modules/json-schema-traverse": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/workbox-build/node_modules/source-map": { - "version": "0.8.0-beta.0", - "license": "BSD-3-Clause", - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/workbox-build/node_modules/tr46": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/workbox-build/node_modules/upath": { - "version": "1.2.0", - "license": "MIT", - "engines": { - "node": ">=4", - "yarn": "*" - } - }, - "node_modules/workbox-build/node_modules/webidl-conversions": { - "version": "4.0.2", - "license": "BSD-2-Clause" - }, - "node_modules/workbox-build/node_modules/whatwg-url": { - "version": "7.1.0", - "license": "MIT", - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/workbox-cacheable-response": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-core": { - "version": "6.6.0", - "license": "MIT" - }, - "node_modules/workbox-expiration": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "idb": "^7.0.1", - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-google-analytics": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-background-sync": "6.6.0", - "workbox-core": "6.6.0", - "workbox-routing": "6.6.0", - "workbox-strategies": "6.6.0" - } - }, - "node_modules/workbox-navigation-preload": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-precaching": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0", - "workbox-routing": "6.6.0", - "workbox-strategies": "6.6.0" - } - }, - "node_modules/workbox-range-requests": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-recipes": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-cacheable-response": "6.6.0", - "workbox-core": "6.6.0", - "workbox-expiration": "6.6.0", - "workbox-precaching": "6.6.0", - "workbox-routing": "6.6.0", - "workbox-strategies": "6.6.0" - } - }, - "node_modules/workbox-routing": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-strategies": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0" - } - }, - "node_modules/workbox-streams": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "workbox-core": "6.6.0", - "workbox-routing": "6.6.0" - } - }, - "node_modules/workbox-sw": { - "version": "6.6.0", - "license": "MIT" - }, - "node_modules/workbox-webpack-plugin": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "fast-json-stable-stringify": "^2.1.0", - "pretty-bytes": "^5.4.1", - "upath": "^1.2.0", - "webpack-sources": "^1.4.3", - "workbox-build": "6.6.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "webpack": "^4.4.0 || ^5.9.0" - } - }, - "node_modules/workbox-webpack-plugin/node_modules/upath": { - "version": "1.2.0", - "license": "MIT", - "engines": { - "node": ">=4", - "yarn": "*" - } - }, - "node_modules/workbox-webpack-plugin/node_modules/webpack-sources": { - "version": "1.4.3", - "license": "MIT", - "dependencies": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, - "node_modules/workbox-window": { - "version": "6.6.0", - "license": "MIT", - "dependencies": { - "@types/trusted-types": "^2.0.2", - "workbox-core": "6.6.0" - } - }, "node_modules/wrap-ansi": { "version": "6.2.0", "dev": true, @@ -28491,6 +20213,7 @@ "node_modules/wrap-ansi-cjs": { "name": "wrap-ansi", "version": "7.0.0", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -28506,6 +20229,7 @@ }, "node_modules/wrappy": { "version": "1.0.2", + "dev": true, "license": "ISC" }, "node_modules/write-file-atomic": { @@ -28649,10 +20373,12 @@ }, "node_modules/xml-name-validator": { "version": "3.0.0", + "dev": true, "license": "Apache-2.0" }, "node_modules/xmlchars": { "version": "2.2.0", + "dev": true, "license": "MIT" }, "node_modules/xtend": { @@ -28665,6 +20391,7 @@ }, "node_modules/y18n": { "version": "5.0.8", + "dev": true, "license": "ISC", "engines": { "node": ">=10" @@ -28672,17 +20399,12 @@ }, "node_modules/yallist": { "version": "4.0.0", - "license": "ISC" - }, - "node_modules/yaml": { - "version": "1.10.2", - "license": "ISC", - "engines": { - "node": ">= 6" - } + "dev": true, + "license": "ISC" }, "node_modules/yargs": { "version": "16.2.0", + "dev": true, "license": "MIT", "dependencies": { "cliui": "^7.0.2", @@ -28699,6 +20421,7 @@ }, "node_modules/yargs-parser": { "version": "20.2.4", + "dev": true, "license": "ISC", "engines": { "node": ">=10" @@ -28706,6 +20429,7 @@ }, "node_modules/yargs/node_modules/cliui": { "version": "7.0.4", + "dev": true, "license": "ISC", "dependencies": { "string-width": "^4.2.0", @@ -28715,6 +20439,7 @@ }, "node_modules/yargs/node_modules/wrap-ansi": { "version": "7.0.0", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -28738,7 +20463,7 @@ }, "node_modules/yn": { "version": "3.1.1", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -28746,6 +20471,7 @@ }, "node_modules/yocto-queue": { "version": "0.1.0", + "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -28778,11 +20504,11 @@ }, "packages/cli": { "name": "@ldo/cli", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { - "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/schema-converter-shex": "^0.0.1-alpha.29", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/schema-converter-shex": "^0.0.1-1.0.0-alpha.1.0", "@shexjs/parser": "^1.0.0-alpha.24", "child-process-promise": "^2.2.1", "commander": "^9.3.0", @@ -28812,6 +20538,102 @@ "ts-jest": "^27.0.7" } }, + "packages/cli/node_modules/@ldo/cli": { + "version": "0.0.1-alpha.32", + "resolved": "https://registry.npmjs.org/@ldo/cli/-/cli-0.0.1-alpha.32.tgz", + "integrity": "sha512-EUmhZrlEx8IW2M0e6zp7j19iGfRsehHZFz6Cz+qdo3PxSYVLkrUIS/6ZuPt7xFJXPCbkGOnmkcJykCJeIbflVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ldo/ldo": "^0.0.1-alpha.29", + "@ldo/schema-converter-shex": "^0.0.1-alpha.29", + "@shexjs/parser": "^1.0.0-alpha.24", + "child-process-promise": "^2.2.1", + "commander": "^9.3.0", + "ejs": "^3.1.8", + "fs-extra": "^10.1.0", + "loading-cli": "^1.1.0", + "prettier": "^3.0.3", + "prompts": "^2.4.2", + "ts-morph": "^24.0.0", + "type-fest": "^2.19.0" + }, + "bin": { + "ldo": "dist/index.js" + } + }, + "packages/cli/node_modules/@ldo/dataset": { + "version": "0.0.1-alpha.24", + "resolved": "https://registry.npmjs.org/@ldo/dataset/-/dataset-0.0.1-alpha.24.tgz", + "integrity": "sha512-Jlh6DjvLN4gOOT8SYCKQaHZB8taeHvoriQRbF3s5CtYFf8Ne20job+02cToE1kVcBCinBrjZ/qnZ777wje+Z7A==", + "license": "MIT", + "dependencies": { + "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@rdfjs/dataset": "^1.1.0", + "buffer": "^6.0.3", + "readable-stream": "^4.2.0" + } + }, + "packages/cli/node_modules/@ldo/jsonld-dataset-proxy": { + "version": "0.0.1-alpha.29", + "resolved": "https://registry.npmjs.org/@ldo/jsonld-dataset-proxy/-/jsonld-dataset-proxy-0.0.1-alpha.29.tgz", + "integrity": "sha512-6r1tn/t82aJ6vjxEGyNSJTzQJgz1Z4Pu875o4EolXXJZCu7TiXBdsW6HyAuloqiIV5b6A2b+M6G0mOuObndooA==", + "license": "MIT", + "dependencies": { + "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@rdfjs/data-model": "^1.2.0", + "@rdfjs/dataset": "^1.1.0", + "jsonld2graphobject": "^0.0.4" + } + }, + "packages/cli/node_modules/@ldo/ldo": { + "version": "0.0.1-alpha.29", + "resolved": "https://registry.npmjs.org/@ldo/ldo/-/ldo-0.0.1-alpha.29.tgz", + "integrity": "sha512-eci3e2FlaSoOWN5vzLQaJhrmznuuK89yTr/ZLvmWIK2bvsY8QOArAx8EiGgwvvrzvHpG7ezaoW1ThS/53QFiqQ==", + "license": "MIT", + "dependencies": { + "@ldo/dataset": "^0.0.1-alpha.24", + "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", + "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@rdfjs/data-model": "^1.2.0", + "buffer": "^6.0.3", + "readable-stream": "^4.3.0" + } + }, + "packages/cli/node_modules/@ldo/schema-converter-shex": { + "version": "0.0.1-alpha.29", + "resolved": "https://registry.npmjs.org/@ldo/schema-converter-shex/-/schema-converter-shex-0.0.1-alpha.29.tgz", + "integrity": "sha512-P4586piB+b3mGJLg2vWxn2SWnATu+2R5zqO+RZGljqmngQdwGBap+7UebcXYq53G9UTpFXoTjU159rQG8EuXSQ==", + "license": "MIT", + "dependencies": { + "@ldo/traverser-shexj": "^0.0.1-alpha.29", + "dts-dom": "~3.6.0", + "jsonld2graphobject": "^0.0.5" + } + }, + "packages/cli/node_modules/@ldo/schema-converter-shex/node_modules/jsonld2graphobject": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/jsonld2graphobject/-/jsonld2graphobject-0.0.5.tgz", + "integrity": "sha512-5BqfXOq96+OBjjiJNG8gQH66pYt6hW88z2SJxdvFJo4XNoVMvqAcUz+JSm/KEWS5NLRnebApEzFrYP3HUiUmYw==", + "license": "MIT", + "dependencies": { + "@rdfjs/types": "^1.0.1", + "@types/jsonld": "^1.5.6", + "jsonld-context-parser": "^2.1.5", + "uuid": "^8.3.2" + } + }, + "packages/cli/node_modules/@ldo/subscribable-dataset": { + "version": "0.0.1-alpha.24", + "resolved": "https://registry.npmjs.org/@ldo/subscribable-dataset/-/subscribable-dataset-0.0.1-alpha.24.tgz", + "integrity": "sha512-grQ0/pzdx4euBOTxMHqQqebOYBqrBbNS9Jk8sYFR4u/dEg8e6nIGz0E4beI83dHp/hT8fT18gs/gV4UxZzmphQ==", + "license": "MIT", + "dependencies": { + "@ldo/dataset": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^0.0.1-alpha.24" + } + }, "packages/cli/node_modules/@types/fs-extra": { "version": "9.0.13", "dev": true, @@ -28820,6 +20642,30 @@ "@types/node": "*" } }, + "packages/cli/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "packages/cli/node_modules/fs-extra": { "version": "10.1.0", "license": "MIT", @@ -28832,6 +20678,22 @@ "node": ">=12" } }, + "packages/cli/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "packages/cli/node_modules/ts-jest": { "version": "27.1.5", "dev": true, @@ -28899,9 +20761,18 @@ "node": ">=4.2.0" } }, + "packages/cli/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "packages/dataset": { "name": "@ldo/dataset", - "version": "0.0.1-alpha.24", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", @@ -29045,6 +20916,7 @@ "packages/demo-react": { "name": "@ldo/demo-react", "version": "0.0.1-alpha.32", + "extraneous": true, "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", "@ldo/solid-react": "^0.0.1-alpha.32", @@ -29063,183 +20935,13 @@ "tsconfig-paths-webpack-plugin": "^4.1.0" } }, - "packages/demo-react/node_modules/@craco/craco": { - "version": "7.1.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "autoprefixer": "^10.4.12", - "cosmiconfig": "^7.0.1", - "cosmiconfig-typescript-loader": "^1.0.0", - "cross-spawn": "^7.0.3", - "lodash": "^4.17.21", - "semver": "^7.3.7", - "webpack-merge": "^5.8.0" - }, - "bin": { - "craco": "dist/bin/craco.js" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "react-scripts": "^5.0.0" - } - }, - "packages/demo-react/node_modules/camelcase": { - "version": "6.3.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "packages/demo-react/node_modules/cosmiconfig": { - "version": "7.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "packages/demo-react/node_modules/dotenv": { - "version": "10.0.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=10" - } - }, - "packages/demo-react/node_modules/dotenv-expand": { - "version": "5.1.0", - "license": "BSD-2-Clause" - }, - "packages/demo-react/node_modules/fs-extra": { - "version": "10.1.0", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "packages/demo-react/node_modules/react-scripts": { - "version": "5.0.1", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.16.0", - "@pmmmwh/react-refresh-webpack-plugin": "^0.5.3", - "@svgr/webpack": "^5.5.0", - "babel-jest": "^27.4.2", - "babel-loader": "^8.2.3", - "babel-plugin-named-asset-import": "^0.3.8", - "babel-preset-react-app": "^10.0.1", - "bfj": "^7.0.2", - "browserslist": "^4.18.1", - "camelcase": "^6.2.1", - "case-sensitive-paths-webpack-plugin": "^2.4.0", - "css-loader": "^6.5.1", - "css-minimizer-webpack-plugin": "^3.2.0", - "dotenv": "^10.0.0", - "dotenv-expand": "^5.1.0", - "eslint": "^8.3.0", - "eslint-config-react-app": "^7.0.1", - "eslint-webpack-plugin": "^3.1.1", - "file-loader": "^6.2.0", - "fs-extra": "^10.0.0", - "html-webpack-plugin": "^5.5.0", - "identity-obj-proxy": "^3.0.0", - "jest": "^27.4.3", - "jest-resolve": "^27.4.2", - "jest-watch-typeahead": "^1.0.0", - "mini-css-extract-plugin": "^2.4.5", - "postcss": "^8.4.4", - "postcss-flexbugs-fixes": "^5.0.2", - "postcss-loader": "^6.2.1", - "postcss-normalize": "^10.0.1", - "postcss-preset-env": "^7.0.1", - "prompts": "^2.4.2", - "react-app-polyfill": "^3.0.0", - "react-dev-utils": "^12.0.1", - "react-refresh": "^0.11.0", - "resolve": "^1.20.0", - "resolve-url-loader": "^4.0.0", - "sass-loader": "^12.3.0", - "semver": "^7.3.5", - "source-map-loader": "^3.0.0", - "style-loader": "^3.3.1", - "tailwindcss": "^3.0.2", - "terser-webpack-plugin": "^5.2.5", - "webpack": "^5.64.4", - "webpack-dev-server": "^4.6.0", - "webpack-manifest-plugin": "^4.0.2", - "workbox-webpack-plugin": "^6.4.1" - }, - "bin": { - "react-scripts": "bin/react-scripts.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - }, - "peerDependencies": { - "react": ">= 16", - "typescript": "^3.2.1 || ^4" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "packages/demo-react/node_modules/resolve": { - "version": "1.22.8", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "packages/demo-react/node_modules/typescript": { - "version": "4.9.5", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, "packages/jsonld-dataset-proxy": { "name": "@ldo/jsonld-dataset-proxy", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "@rdfjs/dataset": "^1.1.0", "jsonld2graphobject": "^0.0.4" @@ -29315,12 +21017,12 @@ }, "packages/ldo": { "name": "@ldo/ldo", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "buffer": "^6.0.3", "readable-stream": "^4.3.0" @@ -29504,7 +21206,7 @@ }, "packages/schema-converter-shex": { "name": "@ldo/schema-converter-shex", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { "@ldo/traverser-shexj": "^0.0.1-alpha.29", @@ -29512,7 +21214,7 @@ "jsonld2graphobject": "^0.0.5" }, "devDependencies": { - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", "@shexjs/parser": "^1.0.0-alpha.24", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", @@ -29523,12 +21225,6 @@ "ts-jest": "^27.1.2" } }, - "packages/schema-converter-shex/node_modules/dts-dom": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/dts-dom/-/dts-dom-3.6.0.tgz", - "integrity": "sha512-on5jxTgt+A6r0Zyyz6ZRHXaAO7J1VPnOd6+AmvI1vH440AlAZZNc5rUHzgPuTjGlrVr1rOWQYNl7ZJK6rDohbw==", - "license": "Apache-2.0" - }, "packages/schema-converter-shex/node_modules/jsonld2graphobject": { "version": "0.0.5", "license": "MIT", @@ -29623,11 +21319,11 @@ }, "packages/solid": { "name": "@ldo/solid", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/ldo": "^0.0.1-alpha.29", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", "@ldo/rdf-utils": "^0.0.1-alpha.24", "@solid-notifications/subscription": "^0.1.2", "cross-fetch": "^3.1.6", @@ -29636,7 +21332,7 @@ }, "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.32", + "@ldo/cli": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -29654,15 +21350,15 @@ }, "packages/solid-react": { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", - "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.32", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" }, @@ -29734,11 +21430,11 @@ }, "packages/solid-type-index": { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { - "@ldo/solid": "^0.0.1-alpha.32", - "@ldo/solid-react": "^0.0.1-alpha.32" + "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/solid-react": "^0.0.1-1.0.0-alpha.1.0" }, "devDependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", @@ -29867,10 +21563,10 @@ }, "packages/subscribable-dataset": { "name": "@ldo/subscribable-dataset", - "version": "0.0.1-alpha.24", + "version": "0.0.1-1.0.0-alpha.1.0", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", "@ldo/rdf-utils": "^0.0.1-alpha.24" }, "devDependencies": { diff --git a/packages/cli/package.json b/packages/cli/package.json index 37dcf8f..16f36f9 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/cli", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "A Command Line Interface for Linked Data Objects", "main": "./dist/index.js", "bin": { @@ -43,8 +43,8 @@ "ts-jest": "^27.0.7" }, "dependencies": { - "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/schema-converter-shex": "^0.0.1-alpha.29", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/schema-converter-shex": "^0.0.1-1.0.0-alpha.1.0", "@shexjs/parser": "^1.0.0-alpha.24", "child-process-promise": "^2.2.1", "commander": "^9.3.0", diff --git a/packages/dataset/package.json b/packages/dataset/package.json index 1d25f2a..929cbf2 100644 --- a/packages/dataset/package.json +++ b/packages/dataset/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/dataset", - "version": "0.0.1-alpha.24", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "An RDFJS dataset implementation", "main": "dist/index.js", "scripts": { diff --git a/packages/jsonld-dataset-proxy/package.json b/packages/jsonld-dataset-proxy/package.json index d4e0a49..61aac99 100644 --- a/packages/jsonld-dataset-proxy/package.json +++ b/packages/jsonld-dataset-proxy/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/jsonld-dataset-proxy", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "", "main": "dist/index.js", "scripts": { @@ -41,7 +41,7 @@ ], "dependencies": { "@ldo/rdf-utils": "^0.0.1-alpha.24", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "@rdfjs/dataset": "^1.1.0", "jsonld2graphobject": "^0.0.4" diff --git a/packages/ldo/package.json b/packages/ldo/package.json index f54b9ac..790806c 100644 --- a/packages/ldo/package.json +++ b/packages/ldo/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/ldo", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "", "main": "dist/index.js", "scripts": { @@ -38,9 +38,9 @@ "typedoc-plugin-markdown": "^3.17.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "buffer": "^6.0.3", "readable-stream": "^4.3.0" diff --git a/packages/schema-converter-shex/package.json b/packages/schema-converter-shex/package.json index 2a9d3b5..64675d2 100644 --- a/packages/schema-converter-shex/package.json +++ b/packages/schema-converter-shex/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/schema-converter-shex", - "version": "0.0.1-alpha.29", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "", "main": "dist/index.js", "scripts": { @@ -20,7 +20,7 @@ }, "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/schema-converter-shex#readme", "devDependencies": { - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", "@shexjs/parser": "^1.0.0-alpha.24", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index 273af19..f25a92c 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-react", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "A React library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -37,11 +37,11 @@ }, "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", - "@ldo/ldo": "^0.0.1-alpha.29", - "@ldo/solid": "^0.0.1-alpha.32", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" }, diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index d69c148..2cc266c 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-type-index", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "Solid Type Index support for LDO", "main": "dist/index.js", "scripts": { @@ -36,8 +36,8 @@ "ts-node": "^10.9.2" }, "dependencies": { - "@ldo/solid": "^0.0.1-alpha.32", - "@ldo/solid-react": "^0.0.1-alpha.32" + "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/solid-react": "^0.0.1-1.0.0-alpha.1.0" }, "files": [ "dist", diff --git a/packages/solid/package.json b/packages/solid/package.json index 20c21e7..1c24cbf 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid", - "version": "0.0.1-alpha.32", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "A library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid#readme", "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-alpha.32", + "@ldo/cli": "^0.0.1-1.0.0-alpha.1.0", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -42,8 +42,8 @@ "typedoc-plugin-markdown": "^3.17.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/ldo": "^0.0.1-alpha.29", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", "@ldo/rdf-utils": "^0.0.1-alpha.24", "@solid-notifications/subscription": "^0.1.2", "cross-fetch": "^3.1.6", diff --git a/packages/subscribable-dataset/package.json b/packages/subscribable-dataset/package.json index 566ff65..7cabad8 100644 --- a/packages/subscribable-dataset/package.json +++ b/packages/subscribable-dataset/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/subscribable-dataset", - "version": "0.0.1-alpha.24", + "version": "0.0.1-1.0.0-alpha.1.0", "description": "An RDFJS dataset implementation that can be subscribed to for updates", "main": "dist/index.js", "scripts": { @@ -33,7 +33,7 @@ "ts-node": "^9.1.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", + "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", "@ldo/rdf-utils": "^0.0.1-alpha.24" }, "files": [ From d9e4f2c416d20d16e84ce93744f0dbc79a39349a Mon Sep 17 00:00:00 2001 From: Jackson Morgan Date: Mon, 3 Mar 2025 09:59:50 -0500 Subject: [PATCH 32/32] v1.0.0-alpha.1 --- lerna.json | 2 +- package-lock.json | 103 ++++++++------------ packages/cli/package.json | 6 +- packages/dataset/package.json | 4 +- packages/jsonld-dataset-proxy/package.json | 6 +- packages/ldo/package.json | 10 +- packages/rdf-utils/package.json | 2 +- packages/schema-converter-shex/package.json | 6 +- packages/solid-react/package.json | 14 +-- packages/solid-type-index/package.json | 8 +- packages/solid/package.json | 10 +- packages/subscribable-dataset/package.json | 6 +- packages/traverser-shexj/package.json | 4 +- packages/type-traverser/package.json | 2 +- 14 files changed, 79 insertions(+), 104 deletions(-) diff --git a/lerna.json b/lerna.json index 11608b7..4249f3a 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.0.1-1.0.0-alpha.1.0" + "version": "1.0.0-alpha.1" } diff --git a/package-lock.json b/package-lock.json index d8ae840..16ac3ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20504,11 +20504,11 @@ }, "packages/cli": { "name": "@ldo/cli", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/schema-converter-shex": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/schema-converter-shex": "^1.0.0-alpha.1", "@shexjs/parser": "^1.0.0-alpha.24", "child-process-promise": "^2.2.1", "commander": "^9.3.0", @@ -20587,31 +20587,6 @@ "jsonld2graphobject": "^0.0.4" } }, - "packages/cli/node_modules/@ldo/ldo": { - "version": "0.0.1-alpha.29", - "resolved": "https://registry.npmjs.org/@ldo/ldo/-/ldo-0.0.1-alpha.29.tgz", - "integrity": "sha512-eci3e2FlaSoOWN5vzLQaJhrmznuuK89yTr/ZLvmWIK2bvsY8QOArAx8EiGgwvvrzvHpG7ezaoW1ThS/53QFiqQ==", - "license": "MIT", - "dependencies": { - "@ldo/dataset": "^0.0.1-alpha.24", - "@ldo/jsonld-dataset-proxy": "^0.0.1-alpha.29", - "@ldo/subscribable-dataset": "^0.0.1-alpha.24", - "@rdfjs/data-model": "^1.2.0", - "buffer": "^6.0.3", - "readable-stream": "^4.3.0" - } - }, - "packages/cli/node_modules/@ldo/schema-converter-shex": { - "version": "0.0.1-alpha.29", - "resolved": "https://registry.npmjs.org/@ldo/schema-converter-shex/-/schema-converter-shex-0.0.1-alpha.29.tgz", - "integrity": "sha512-P4586piB+b3mGJLg2vWxn2SWnATu+2R5zqO+RZGljqmngQdwGBap+7UebcXYq53G9UTpFXoTjU159rQG8EuXSQ==", - "license": "MIT", - "dependencies": { - "@ldo/traverser-shexj": "^0.0.1-alpha.29", - "dts-dom": "~3.6.0", - "jsonld2graphobject": "^0.0.5" - } - }, "packages/cli/node_modules/@ldo/schema-converter-shex/node_modules/jsonld2graphobject": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/jsonld2graphobject/-/jsonld2graphobject-0.0.5.tgz", @@ -20772,10 +20747,10 @@ }, "packages/dataset": { "name": "@ldo/dataset", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/dataset": "^1.1.0", "buffer": "^6.0.3", "readable-stream": "^4.2.0" @@ -20937,11 +20912,11 @@ }, "packages/jsonld-dataset-proxy": { "name": "@ldo/jsonld-dataset-proxy", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/rdf-utils": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "@rdfjs/dataset": "^1.1.0", "jsonld2graphobject": "^0.0.4" @@ -21017,18 +20992,18 @@ }, "packages/ldo": { "name": "@ldo/ldo", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "buffer": "^6.0.3", "readable-stream": "^4.3.0" }, "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", @@ -21136,7 +21111,7 @@ }, "packages/rdf-utils": { "name": "@ldo/rdf-utils", - "version": "0.0.1-alpha.24", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { "@rdfjs/data-model": "^1.2.0", @@ -21206,15 +21181,15 @@ }, "packages/schema-converter-shex": { "name": "@ldo/schema-converter-shex", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/traverser-shexj": "^0.0.1-alpha.29", + "@ldo/traverser-shexj": "^1.0.0-alpha.1", "dts-dom": "~3.6.0", "jsonld2graphobject": "^0.0.5" }, "devDependencies": { - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", "@shexjs/parser": "^1.0.0-alpha.24", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", @@ -21319,12 +21294,12 @@ }, "packages/solid": { "name": "@ldo/solid", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@solid-notifications/subscription": "^0.1.2", "cross-fetch": "^3.1.6", "http-link-header": "^1.1.1", @@ -21332,7 +21307,7 @@ }, "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/cli": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -21350,20 +21325,20 @@ }, "packages/solid-react": { "name": "@ldo/solid-react", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/solid": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" }, "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@testing-library/react": "^14.1.2", "@types/jest": "^27.0.3", @@ -21430,14 +21405,14 @@ }, "packages/solid-type-index": { "name": "@ldo/solid-type-index", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/solid-react": "^0.0.1-1.0.0-alpha.1.0" + "@ldo/solid": "^1.0.0-alpha.1", + "@ldo/solid-react": "^1.0.0-alpha.1" }, "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@testing-library/react": "^14.1.2", "@types/jest": "^27.0.3", @@ -21563,11 +21538,11 @@ }, "packages/subscribable-dataset": { "name": "@ldo/subscribable-dataset", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/rdf-utils": "^0.0.1-alpha.24" + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/rdf-utils": "^1.0.0-alpha.1" }, "devDependencies": { "@rdfjs/data-model": "^1.2.0", @@ -21668,10 +21643,10 @@ }, "packages/traverser-shexj": { "name": "@ldo/traverser-shexj", - "version": "0.0.1-alpha.29", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { - "@ldo/type-traverser": "^0.0.1-alpha.29" + "@ldo/type-traverser": "^1.0.0-alpha.1" }, "devDependencies": { "@types/jest": "^27.0.3", @@ -21736,7 +21711,7 @@ }, "packages/type-traverser": { "name": "@ldo/type-traverser", - "version": "0.0.1-alpha.29", + "version": "1.0.0-alpha.1", "license": "MIT", "dependencies": { "uuid": "^8.3.2" diff --git a/packages/cli/package.json b/packages/cli/package.json index 16f36f9..4d72ea4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/cli", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "A Command Line Interface for Linked Data Objects", "main": "./dist/index.js", "bin": { @@ -43,8 +43,8 @@ "ts-jest": "^27.0.7" }, "dependencies": { - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/schema-converter-shex": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/schema-converter-shex": "^1.0.0-alpha.1", "@shexjs/parser": "^1.0.0-alpha.24", "child-process-promise": "^2.2.1", "commander": "^9.3.0", diff --git a/packages/dataset/package.json b/packages/dataset/package.json index 929cbf2..66f6738 100644 --- a/packages/dataset/package.json +++ b/packages/dataset/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/dataset", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "An RDFJS dataset implementation", "main": "dist/index.js", "scripts": { @@ -34,7 +34,7 @@ "ts-node": "^9.1.1" }, "dependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/dataset": "^1.1.0", "buffer": "^6.0.3", "readable-stream": "^4.2.0" diff --git a/packages/jsonld-dataset-proxy/package.json b/packages/jsonld-dataset-proxy/package.json index 61aac99..892387c 100644 --- a/packages/jsonld-dataset-proxy/package.json +++ b/packages/jsonld-dataset-proxy/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/jsonld-dataset-proxy", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "", "main": "dist/index.js", "scripts": { @@ -40,8 +40,8 @@ "src" ], "dependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/rdf-utils": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "@rdfjs/dataset": "^1.1.0", "jsonld2graphobject": "^0.0.4" diff --git a/packages/ldo/package.json b/packages/ldo/package.json index 790806c..57c1308 100644 --- a/packages/ldo/package.json +++ b/packages/ldo/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/ldo", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "", "main": "dist/index.js", "scripts": { @@ -23,7 +23,7 @@ }, "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/ldo#readme", "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", @@ -38,9 +38,9 @@ "typedoc-plugin-markdown": "^3.17.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "buffer": "^6.0.3", "readable-stream": "^4.3.0" diff --git a/packages/rdf-utils/package.json b/packages/rdf-utils/package.json index 745c35f..6e2ca39 100644 --- a/packages/rdf-utils/package.json +++ b/packages/rdf-utils/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/rdf-utils", - "version": "0.0.1-alpha.24", + "version": "1.0.0-alpha.1", "description": "Some RDF Utilities to support LDO librariers", "main": "dist/index.js", "scripts": { diff --git a/packages/schema-converter-shex/package.json b/packages/schema-converter-shex/package.json index 64675d2..20404fb 100644 --- a/packages/schema-converter-shex/package.json +++ b/packages/schema-converter-shex/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/schema-converter-shex", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "", "main": "dist/index.js", "scripts": { @@ -20,7 +20,7 @@ }, "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/schema-converter-shex#readme", "devDependencies": { - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", "@shexjs/parser": "^1.0.0-alpha.24", "@types/jest": "^27.0.3", "@types/jsonld": "^1.5.6", @@ -34,7 +34,7 @@ "dist" ], "dependencies": { - "@ldo/traverser-shexj": "^0.0.1-alpha.29", + "@ldo/traverser-shexj": "^1.0.0-alpha.1", "dts-dom": "~3.6.0", "jsonld2graphobject": "^0.0.5" }, diff --git a/packages/solid-react/package.json b/packages/solid-react/package.json index f25a92c..0f38c26 100644 --- a/packages/solid-react/package.json +++ b/packages/solid-react/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-react", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "A React library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ }, "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid-react#readme", "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@testing-library/react": "^14.1.2", "@types/jest": "^27.0.3", @@ -37,11 +37,11 @@ }, "dependencies": { "@inrupt/solid-client-authn-browser": "^2.0.0", - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/jsonld-dataset-proxy": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/subscribable-dataset": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/jsonld-dataset-proxy": "^1.0.0-alpha.1", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/solid": "^1.0.0-alpha.1", + "@ldo/subscribable-dataset": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "cross-fetch": "^3.1.6" }, diff --git a/packages/solid-type-index/package.json b/packages/solid-type-index/package.json index 2cc266c..be06d87 100644 --- a/packages/solid-type-index/package.json +++ b/packages/solid-type-index/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid-type-index", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "Solid Type Index support for LDO", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ }, "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid-react#readme", "devDependencies": { - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@rdfjs/types": "^1.0.1", "@testing-library/react": "^14.1.2", "@types/jest": "^27.0.3", @@ -36,8 +36,8 @@ "ts-node": "^10.9.2" }, "dependencies": { - "@ldo/solid": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/solid-react": "^0.0.1-1.0.0-alpha.1.0" + "@ldo/solid": "^1.0.0-alpha.1", + "@ldo/solid-react": "^1.0.0-alpha.1" }, "files": [ "dist", diff --git a/packages/solid/package.json b/packages/solid/package.json index 1c24cbf..ce4a648 100644 --- a/packages/solid/package.json +++ b/packages/solid/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/solid", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "A library for LDO and Solid", "main": "dist/index.js", "scripts": { @@ -26,7 +26,7 @@ "homepage": "https://github.com/o-development/ldobjects/tree/main/packages/solid#readme", "devDependencies": { "@inrupt/solid-client-authn-core": "^2.2.6", - "@ldo/cli": "^0.0.1-1.0.0-alpha.1.0", + "@ldo/cli": "^1.0.0-alpha.1", "@rdfjs/data-model": "^1.2.0", "@rdfjs/types": "^1.0.1", "@solid-notifications/types": "^0.1.2", @@ -42,9 +42,9 @@ "typedoc-plugin-markdown": "^3.17.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/ldo": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/rdf-utils": "^0.0.1-alpha.24", + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/ldo": "^1.0.0-alpha.1", + "@ldo/rdf-utils": "^1.0.0-alpha.1", "@solid-notifications/subscription": "^0.1.2", "cross-fetch": "^3.1.6", "http-link-header": "^1.1.1", diff --git a/packages/subscribable-dataset/package.json b/packages/subscribable-dataset/package.json index 7cabad8..a726507 100644 --- a/packages/subscribable-dataset/package.json +++ b/packages/subscribable-dataset/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/subscribable-dataset", - "version": "0.0.1-1.0.0-alpha.1.0", + "version": "1.0.0-alpha.1", "description": "An RDFJS dataset implementation that can be subscribed to for updates", "main": "dist/index.js", "scripts": { @@ -33,8 +33,8 @@ "ts-node": "^9.1.1" }, "dependencies": { - "@ldo/dataset": "^0.0.1-1.0.0-alpha.1.0", - "@ldo/rdf-utils": "^0.0.1-alpha.24" + "@ldo/dataset": "^1.0.0-alpha.1", + "@ldo/rdf-utils": "^1.0.0-alpha.1" }, "files": [ "dist", diff --git a/packages/traverser-shexj/package.json b/packages/traverser-shexj/package.json index 4aff1c4..3ea3f14 100644 --- a/packages/traverser-shexj/package.json +++ b/packages/traverser-shexj/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/traverser-shexj", - "version": "0.0.1-alpha.29", + "version": "1.0.0-alpha.1", "description": "A type-traverser for ShexJ", "main": "dist/index.js", "scripts": { @@ -29,7 +29,7 @@ "src" ], "dependencies": { - "@ldo/type-traverser": "^0.0.1-alpha.29" + "@ldo/type-traverser": "^1.0.0-alpha.1" }, "publishConfig": { "access": "public" diff --git a/packages/type-traverser/package.json b/packages/type-traverser/package.json index c931986..2834232 100644 --- a/packages/type-traverser/package.json +++ b/packages/type-traverser/package.json @@ -1,6 +1,6 @@ { "name": "@ldo/type-traverser", - "version": "0.0.1-alpha.29", + "version": "1.0.0-alpha.1", "description": "An organized way to traverse over objects using typescript", "main": "dist/index.js", "scripts": {