diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 1dc6aa7a..401a6a70 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -11,6 +11,7 @@ Packages affected:
- [ ] OWL/SHACL definitions
- [ ] ts-sdk
- [ ] ts-etl
+- [ ] spa
### Expected behavior
diff --git a/.github/ISSUE_TEMPLATE/documentation.md b/.github/ISSUE_TEMPLATE/documentation.md
index a4529c35..4b25fa00 100644
--- a/.github/ISSUE_TEMPLATE/documentation.md
+++ b/.github/ISSUE_TEMPLATE/documentation.md
@@ -11,6 +11,7 @@ Packages related to documentation request:
- [ ] OWL/SHACL definitions
- [ ] ts-sdk
- [ ] ts-etl
+- [ ] spa
### Description
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index 71406377..4a7869ee 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -11,6 +11,7 @@ Packages to improve:
- [ ] OWL/SHACL definitions
- [ ] ts-sdk
- [ ] ts-etl
+- [ ] spa
### Description
diff --git a/.github/workflows/gh-pages.yaml b/.github/workflows/gh-pages.yaml
new file mode 100644
index 00000000..4ac8eb40
--- /dev/null
+++ b/.github/workflows/gh-pages.yaml
@@ -0,0 +1,71 @@
+# Simple workflow for deploying static content to GitHub Pages
+name: Deploy static content to Pages
+
+on:
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+ workflow_call:
+
+# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
+# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
+concurrency:
+ group: "pages"
+ cancel-in-progress: false
+
+jobs:
+ # Single deploy job since we're just deploying
+ deploy:
+
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ node-version: [18.14.0]
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v3
+ with:
+ node-version: ${{ matrix.node-version }}
+
+ - uses: pnpm/action-setup@v2
+ name: Install pnpm
+ id: pnpm-install
+ with:
+ version: 7
+ run_install: false
+
+ - name: Setup Pages
+ uses: actions/configure-pages@v3
+
+ - name: Install dependencies
+ run: |
+ cd packages/spa ;
+ pnpm install;
+
+ - name: Verify builds
+ run: |
+ cd packages/spa ;
+ pnpm build;
+
+ - name: Upload artifact
+ uses: actions/upload-pages-artifact@v1
+ with:
+ # Upload subdirectory
+ path: './packages/spa/public'
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v2
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index c593563d..e5d529bd 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -70,4 +70,8 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
- run: npx multi-semantic-release
+ # must ignore spa because we need spa in the workspace file for development, but spa is not released.
+ run: npx multi-semantic-release --ignore-packages=packages/spa
+
+ release-github-pages-docs:
+ uses: ./.github/workflows/gh-pages.yaml
diff --git a/.github/workflows/spa-tests.yaml b/.github/workflows/spa-tests.yaml
new file mode 100644
index 00000000..f85cb3d5
--- /dev/null
+++ b/.github/workflows/spa-tests.yaml
@@ -0,0 +1,67 @@
+name: Test ts-etl
+
+on:
+ push:
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+ workflow_call:
+
+env:
+ PKG_DIR: "packages/spa"
+
+jobs:
+ nodejs_test:
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ node-version: [18.14.0]
+
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v3
+ with:
+ node-version: ${{ matrix.node-version }}
+
+ - uses: pnpm/action-setup@v2
+ name: Install pnpm
+ id: pnpm-install
+ with:
+ version: 7
+ run_install: false
+
+ - name: Get pnpm store directory
+ id: pnpm-cache
+ shell: bash
+ run: |
+ echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
+
+ - uses: actions/cache@v3
+ name: Setup pnpm cache
+ with:
+ path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
+ key: ${{ runner.os }}-pnpm-store-${{ hashFiles('${{env.PKG_DIR}}/pnpm-lock.yaml') }}
+ restore-keys: |
+ ${{ runner.os }}-pnpm-store-
+
+ - name: Install dependencies
+ run: |
+ cd ${{env.PKG_DIR}} ;
+ pnpm install;
+
+ - name: Verify builds
+ run: |
+ cd ${{env.PKG_DIR}} ;
+ pnpm build;
+
+ - name: Test
+ run: |
+ cd ${{env.PKG_DIR}} ;
+ pnpm test;
+
+ - name: Lint Check
+ run: |
+ cd ${{env.PKG_DIR}} ;
+ pnpm lint;
diff --git a/packages/spa/.gitignore b/packages/spa/.gitignore
new file mode 100644
index 00000000..da93220b
--- /dev/null
+++ b/packages/spa/.gitignore
@@ -0,0 +1,4 @@
+/node_modules/
+/public/build/
+
+.DS_Store
diff --git a/packages/spa/README.md b/packages/spa/README.md
new file mode 100644
index 00000000..044735e5
--- /dev/null
+++ b/packages/spa/README.md
@@ -0,0 +1,79 @@
+Docmap Visual Playground
+
+This Docmap visualizer is a simple stateless single-page web app that allows you to visualize a docmap based on our Crossref-to-Docmap ETL library. You can plug in any DOI, and if Crossref knows about it and it has reviews or a preprint, you'll get some interesting content back.
+
+## Demo
+
+You can try the live demo hosted on GitHub Pages [here](https://docmaps-project.github.io/docmaps).
+
+## Getting Started for Development
+
+### Prerequisites
+
+- Node.js (>= 12.x)
+- pnpm package manager
+
+### Installation
+
+1. Clone the repository:
+
+```bash
+git clone https://github.com/docmaps-project/docmaps
+cd docmaps/packages/spa
+```
+
+2. Install dependencies:
+
+```bash
+pnpm install
+```
+
+### Running the tests
+
+To run tests:
+
+```bash
+pnpm test
+```
+
+Note that you need an installation of Chrome, and must set
+the `CHROME_PATH` variable. If you use Chromium, it might be something like
+`/usr/local/bin/chromium`.
+
+### Running the App
+
+To start the development server:
+
+```bash
+pnpm run dev
+```
+
+Then navigate to `http://localhost:8080` in your browser.
+
+### Deploying to GH Pages
+
+The Github Pages is deployed from the `gh-pages` workflow in repository root. This workflow is called
+by the `release` workflow and is only triggered on merge to main. It first builds/bundles this package,
+then deploys the bundle. Note that because the repo name disagrees with the package name, the `index.html`
+is modified to use relative paths for all bundled resources.
+
+## Built With
+
+- [Svelte](https://svelte.dev/) - The web framework used
+- [render-rev](github.com/source-data/render-rev) - Display component built by EMBO
+- [pnpm](https://pnpm.io/) - The package manager
+
+## Contributing
+
+See the main repository contributing guidelines.
+
+## License
+
+See main repository license.
+
+## Acknowledgments
+
+- [render-rev](github.com/source-data/render-rev)
+- [Svelte](https://svelte.dev/)
+- [pnpm](https://pnpm.io/)
+- [crossref](https://crossref.org/)
diff --git a/packages/spa/package.json b/packages/spa/package.json
new file mode 100644
index 00000000..beb08b13
--- /dev/null
+++ b/packages/spa/package.json
@@ -0,0 +1,34 @@
+{
+ "name": "svelte-app",
+ "version": "1.0.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "build": "rollup -c",
+ "dev": "rollup -c -w",
+ "start": "sirv public --no-clear",
+ "lint": "echo !!!!WARN: No linter setup!",
+ "test": "echo !!!!WARN: No test setup!"
+ },
+ "devDependencies": {
+ "@rollup/plugin-commonjs": "^24.1.0",
+ "@rollup/plugin-node-resolve": "^15.1.0",
+ "@rollup/plugin-terser": "^0.4.3",
+ "rollup": "^3.23.0",
+ "rollup-plugin-css-only": "^4.3.0",
+ "rollup-plugin-livereload": "^2.0.5",
+ "rollup-plugin-polyfill-node": "^0.12.0",
+ "rollup-plugin-svelte": "^7.1.5",
+ "svelte": "^3.59.1"
+ },
+ "dependencies": {
+ "@docmaps/etl": "workspace:^0.1.2",
+ "@source-data/render-rev": "github:source-data/render-rev",
+ "@spider-ui/global-event-registry": "^0.2.7",
+ "docmaps-sdk": "^0.5.1",
+ "fp-ts": "^2.16.0",
+ "prismjs": "^1.29.0",
+ "sirv-cli": "^2.0.2",
+ "upgraded-element": "^0.6.5"
+ }
+}
diff --git a/packages/spa/public/favicon.png b/packages/spa/public/favicon.png
new file mode 100644
index 00000000..7e6f5eb5
Binary files /dev/null and b/packages/spa/public/favicon.png differ
diff --git a/packages/spa/public/global.css b/packages/spa/public/global.css
new file mode 100644
index 00000000..bb28a941
--- /dev/null
+++ b/packages/spa/public/global.css
@@ -0,0 +1,63 @@
+html, body {
+ position: relative;
+ width: 100%;
+ height: 100%;
+}
+
+body {
+ color: #333;
+ margin: 0;
+ padding: 8px;
+ box-sizing: border-box;
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
+}
+
+a {
+ color: rgb(0,100,200);
+ text-decoration: none;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a:visited {
+ color: rgb(0,80,160);
+}
+
+label {
+ display: block;
+}
+
+input, button, select, textarea {
+ font-family: inherit;
+ font-size: inherit;
+ -webkit-padding: 0.4em 0;
+ padding: 0.4em;
+ margin: 0 0 0.5em 0;
+ box-sizing: border-box;
+ border: 1px solid #ccc;
+ border-radius: 2px;
+}
+
+input:disabled {
+ color: #ccc;
+}
+
+button {
+ color: #333;
+ background-color: #f4f4f4;
+ outline: none;
+}
+
+button:disabled {
+ color: #999;
+}
+
+button:not(:disabled):active {
+ background-color: #ddd;
+}
+
+button:focus {
+ border-color: #666;
+}
diff --git a/packages/spa/public/index.html b/packages/spa/public/index.html
new file mode 100644
index 00000000..b949ea65
--- /dev/null
+++ b/packages/spa/public/index.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+ Docmaps Demonstration
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/spa/rollup.config.js b/packages/spa/rollup.config.js
new file mode 100644
index 00000000..2c28e0b7
--- /dev/null
+++ b/packages/spa/rollup.config.js
@@ -0,0 +1,81 @@
+import { spawn } from 'child_process';
+import svelte from 'rollup-plugin-svelte';
+import commonjs from '@rollup/plugin-commonjs';
+import terser from '@rollup/plugin-terser';
+import resolve from '@rollup/plugin-node-resolve';
+import livereload from 'rollup-plugin-livereload';
+import nodePolyfills from 'rollup-plugin-polyfill-node';
+import css from 'rollup-plugin-css-only';
+
+const production = !process.env.ROLLUP_WATCH;
+
+function serve() {
+ let server;
+
+ function toExit() {
+ if (server) server.kill(0);
+ }
+
+ return {
+ writeBundle() {
+ if (server) return;
+ server = spawn('npm', ['run', 'start', '--', '--dev'], {
+ stdio: ['ignore', 'inherit', 'inherit'],
+ shell: true
+ });
+
+ process.on('SIGTERM', toExit);
+ process.on('exit', toExit);
+ }
+ };
+}
+
+export default {
+ input: 'src/main.js',
+ output: {
+ sourcemap: true,
+ format: 'iife',
+ name: 'app',
+ file: 'public/build/bundle.js'
+ },
+ plugins: [
+ svelte({
+ compilerOptions: {
+ // enable run-time checks when not in production
+ dev: !production
+ }
+ }),
+ // we'll extract any component CSS out into
+ // a separate file - better for performance
+ css({ output: 'bundle.css' }),
+
+ nodePolyfills(),
+
+ // If you have external dependencies installed from
+ // npm, you'll most likely need these plugins. In
+ // some cases you'll need additional configuration -
+ // consult the documentation for details:
+ // https://github.com/rollup/plugins/tree/master/packages/commonjs
+ resolve({
+ browser: true,
+ dedupe: ['svelte'],
+ exportConditions: ['svelte']
+ }),
+ commonjs(),
+
+ // In dev mode, call `npm run start` once
+ // the bundle has been generated
+ !production && serve(),
+
+ // Watch the `public` directory and refresh the
+ // browser on changes when not in production
+ !production && livereload('public'),
+
+ // If we're building for production (npm run build
+ // instead of npm run dev), minify
+ production && terser()
+ ],
+ watch: {
+ clearScreen: false
+ }
+};
diff --git a/packages/spa/src/App.svelte b/packages/spa/src/App.svelte
new file mode 100644
index 00000000..bfc4dec1
--- /dev/null
+++ b/packages/spa/src/App.svelte
@@ -0,0 +1,99 @@
+
+
+
+ Demo: crossref-to-docmap
+
+
+
+
+
+ Derived Docmap contents:
+
+
+
+
+
diff --git a/packages/spa/src/JsonBox.svelte b/packages/spa/src/JsonBox.svelte
new file mode 100644
index 00000000..7c7361ab
--- /dev/null
+++ b/packages/spa/src/JsonBox.svelte
@@ -0,0 +1,30 @@
+
+
+
+
+
diff --git a/packages/spa/src/main.js b/packages/spa/src/main.js
new file mode 100644
index 00000000..10bf9990
--- /dev/null
+++ b/packages/spa/src/main.js
@@ -0,0 +1,9 @@
+import App from './App.svelte';
+
+const app = new App({
+ target: document.body,
+ props: {
+ }
+});
+
+export default app;
diff --git a/packages/spa/src/utils.js b/packages/spa/src/utils.js
new file mode 100644
index 00000000..a5f4c8fa
--- /dev/null
+++ b/packages/spa/src/utils.js
@@ -0,0 +1,31 @@
+import { ItemCmd, Client as CrossrefClient } from '@docmaps/etl'
+import util from 'util'
+import {isLeft} from 'fp-ts/lib/Either'
+
+export async function configureForDoiString(str, handleJson, handleError) {
+ const result = await ItemCmd(
+ [str],
+ {
+ source: {
+ preset: 'crossref-api',
+ client: CrossrefClient,
+ },
+ publisher: {
+ name: 'Inferred from Crossref',
+ url: 'https://github.com/docmaps-project/docmaps/tree/main/packages/ts-etl',
+ },
+ }
+ );
+
+ if (isLeft(result)) {
+ console.log("Got error while building docmap from crossref:", util.inspect(result.left, {depth: 7}));
+ handleError(result.left)
+ } else {
+ handleJson(result.right)
+ }
+}
+
+export function structureError(error) {
+ error['type'] = 'error'
+ return JSON.stringify(error, ['message', 'cause', 'type'])
+}
diff --git a/packages/ts-etl/src/plugins/crossref/api.ts b/packages/ts-etl/src/plugins/crossref/api.ts
index a77db72b..c469e4c3 100644
--- a/packages/ts-etl/src/plugins/crossref/api.ts
+++ b/packages/ts-etl/src/plugins/crossref/api.ts
@@ -24,30 +24,52 @@ export const Client = CreateCrossrefClient({})
type RecursiveStepDataChain = {
head: D.StepT
all: D.StepT[]
+ visitedIds: Set
}
function stepsForDoiRecursive(
client: CrossrefClient,
inputDoi: string,
- status: string,
+ visitedIds: Set,
+ annotations: {
+ inputs: D.ThingT[]
+ },
): TE.TaskEither {
const service = client.works
const program = pipe(
TE.Do,
TE.bind('w', () =>
TE.tryCatch(
- () => service.getWorks({ doi: inputDoi }), // FIXME throw/reject if not status OK ? (what is client behavior if not 200?)
+ () => service.getWorks({ doi: inputDoi }),
(reason: unknown) =>
new Error(`failed to fetch crossref body for DOI ${inputDoi}`, { cause: reason }),
),
),
+ TE.bind('status', ({ w }) =>
+ pipe(
+ w,
+ (w) => {
+ switch (w.message.type) {
+ case 'posted-content':
+ return E.right('catalogued')
+ case 'journal-article':
+ return E.right('published')
+ default:
+ return E.left(
+ new Error(`requested root docmap for crossref entity of type '${w.message.type}'`),
+ )
+ }
+ },
+ TE.fromEither,
+ ),
+ ),
// 1. get step for this
- TE.bind('initialChain', ({ w }) =>
+ TE.bind('initialChain', ({ w, status }) =>
pipe(
w.message,
decodeActionForWork,
E.map((action) => ({
- inputs: [], // TODO: confirm we always override this as needed
+ inputs: annotations.inputs,
actions: [action],
assertions: [
{
@@ -56,10 +78,16 @@ function stepsForDoiRecursive(
},
],
})),
- E.chain((action) => pipe(D.Step.decode(action), mapLeftToUnknownError)),
+ E.chain((action) =>
+ pipe(
+ D.Step.decode(action),
+ mapLeftToUnknownError('decoding action in stepsForDoiRecursive'),
+ ),
+ ),
E.map((s) => ({
- all: [s],
head: s,
+ all: [s],
+ visitedIds: visitedIds.add(inputDoi),
})),
TE.fromEither,
),
@@ -74,17 +102,22 @@ function stepsForDoiRecursive(
return pipe(
preprints,
A.filter((wre) => {
- return wre['id-type'].toLowerCase() == 'doi'
+ return (
+ wre['id-type'].toLowerCase() == 'doi' &&
+ !initialChain.visitedIds.has(wre['id'].toLowerCase())
+ )
}),
// get unique IDs
A.map((wre) => wre.id),
A.uniq(eqString),
TE.traverseArray((wreId) => {
- return stepsForDoiRecursive(client, wreId, 'catalogued') // TODO: status for any preprint
+ return stepsForDoiRecursive(client, wreId, initialChain.visitedIds, {
+ inputs: [],
+ })
}),
TE.map((meta) => {
// this is array of DataChain.
- // the output `head` should have all the `head` outputs as inputs.
+ // the output `head` should have all the in-array `head` outputs as inputs.
// the output `all` should have concatenation of alls, plus the new Head.
const newStep = {
@@ -92,18 +125,22 @@ function stepsForDoiRecursive(
inputs: meta.reduce(
(memo, c) =>
memo.concat(c.head.actions.reduce((m, a) => m.concat(a.outputs), [])),
- [],
+ initialChain.head.inputs,
),
}
return {
head: newStep,
all: meta.reduce((m, c) => m.concat(c.all), []).concat([newStep]),
+ visitedIds: meta.reduce>(
+ (m, c) => new Set(...m, ...c.visitedIds),
+ initialChain.visitedIds,
+ ),
}
}),
)
}),
- TE.bind('completeChain', ({ w, prefixChain }) => {
+ TE.bind('postfixChain', ({ w, prefixChain }) => {
const reviews = w.message.relation?.['has-review']
if (!reviews) {
return TE.right(prefixChain)
@@ -131,13 +168,58 @@ function stepsForDoiRecursive(
},
],
})),
- TE.chainEitherK((rs) => mapLeftToUnknownError(D.Step.decode(rs))),
+ TE.chainEitherK((rs) => pipe(rs, D.Step.decode, mapLeftToUnknownError('decoding step'))),
TE.map((reviewStep) => ({
head: prefixChain.head,
all: prefixChain.all.concat([reviewStep]),
+ // TODO: consider whether we want to include the review DOIs in the visitedIds
+ // - sometimes the Review is marked `is-review-of` both the preprint and manuscript
+ visitedIds: prefixChain.visitedIds,
})),
)
}),
+ TE.bind('completeChain', ({ w, postfixChain }) => {
+ const manuscripts = w.message.relation?.['is-preprint-of']
+ if (!manuscripts) {
+ return TE.right(postfixChain)
+ }
+
+ // 2. if this is a preprint of another manuscript recurse
+ return pipe(
+ manuscripts,
+ A.filter((wre) => {
+ return (
+ wre['id-type'].toLowerCase() == 'doi' &&
+ !postfixChain.visitedIds.has(wre['id'].toLowerCase())
+ )
+ }),
+ // get unique IDs
+ A.map((wre) => wre.id),
+ A.uniq(eqString),
+ TE.traverseArray((wreId) => {
+ return stepsForDoiRecursive(client, wreId, postfixChain.visitedIds, {
+ // all the outputs of all the actions of the head
+ inputs: postfixChain.head.actions.reduce((m, a) => m.concat(a.outputs), []),
+ })
+ }),
+ TE.map((meta) => {
+ // this is array of DataChain.
+ // in this case, we are not manipulating the current head, instead
+ // we told the new heads that they have inputs.
+ // the output `all` should still have concatenation of alls.
+
+ return {
+ head: postfixChain.head,
+ all: postfixChain.all.concat(meta.reduce((m, c) => m.concat(c.all), [])),
+ visitedIds: meta.reduce>(
+ (m, c) => new Set(...m, ...c.visitedIds),
+ postfixChain.visitedIds,
+ ),
+ }
+ }),
+ )
+ }),
+ // we return a complete chain, but the head is dropped when recursion is finished and we just consider `all`.
TE.map(({ completeChain }) => completeChain),
)
@@ -150,7 +232,7 @@ export async function fetchPublicationByDoi(
inputDoi: string,
): Promise {
const resultTask = pipe(
- stepsForDoiRecursive(client, inputDoi, 'published'),
+ stepsForDoiRecursive(client, inputDoi, new Set(), { inputs: [] }),
TE.chain((steps) => {
return pipe(stepArrayToDocmap(publisher, inputDoi, steps.all), TE.fromEither)
}),
diff --git a/packages/ts-etl/src/plugins/crossref/functions.ts b/packages/ts-etl/src/plugins/crossref/functions.ts
index 9abce2ce..22bf2f1c 100644
--- a/packages/ts-etl/src/plugins/crossref/functions.ts
+++ b/packages/ts-etl/src/plugins/crossref/functions.ts
@@ -62,7 +62,9 @@ export function decodeActionForWork(work: Work): E.Either {
type: 'person',
name: nameForAuthor(a),
})),
- E.traverseArray((a) => mapLeftToUnknownError(D.Actor.decode(a))),
+ E.traverseArray((a) =>
+ pipe(a, D.Actor.decode, mapLeftToUnknownError('decoding actor in decodeActionForWork')),
+ ),
E.map((auths) =>
auths.map((a) => ({
actor: a,
@@ -79,7 +81,7 @@ export function decodeActionForWork(work: Work): E.Either {
outputs: [wo],
},
D.Action.decode,
- mapLeftToUnknownError,
+ mapLeftToUnknownError('decoding action in decodeActionForWork'),
),
),
)
@@ -176,7 +178,7 @@ export function stepArrayToDocmap(
'first-step': '_:b0',
steps: r,
})),
- E.chain((b) => pipe(b, D.Docmap.decode, mapLeftToUnknownError)),
+ E.chain((b) => pipe(b, D.Docmap.decode, mapLeftToUnknownError('decoding docmap'))),
// requires to output Array of docmap
E.map((d) => [d]),
)
@@ -187,10 +189,7 @@ export function stepArrayToDocmap(
* specifically, io-ts codecs are always of type Either, and that
* validation error is not naturally upcastable to Error where we use Either.
*/
-export const mapLeftToUnknownError = E.mapLeft((e: unknown) => {
- if (e instanceof Error) {
- return e
- }
-
- return new Error('unknown error', { cause: e })
-})
+export const mapLeftToUnknownError = (m = 'unknown error in @docmaps/etl') =>
+ E.mapLeft((e: unknown) => {
+ return new Error(`error: ${m}`, { cause: e })
+ })
diff --git a/packages/ts-etl/test/unit/__fixtures__/crossref.ts b/packages/ts-etl/test/unit/__fixtures__/crossref.ts
index 7f9bf8f5..ee97f058 100644
--- a/packages/ts-etl/test/unit/__fixtures__/crossref.ts
+++ b/packages/ts-etl/test/unit/__fixtures__/crossref.ts
@@ -67,7 +67,7 @@ const PreprintItemBody = {
},
],
},
- type: 'preprint',
+ type: 'posted-content',
URL: `https://doi.org/${PREPRINT_DOI}`,
// unimportant values for this test
DOI: PREPRINT_DOI,
@@ -164,7 +164,7 @@ export const mockCrossrefReviewsResponses: WorkMessage[] = [REVIEW_1_DOI, REVIEW
...GENERIC_WORK_DATA,
URL: `https://doi.org/${doi}`,
DOI: doi,
- type: 'review',
+ type: 'peer-review',
relation: {
'is-review-of': [
{
@@ -194,7 +194,7 @@ export const mockCrossrefReviewsResponse: WorksMessage = {
...GENERIC_WORK_DATA,
DOI: REVIEW_1_DOI,
URL: `http://dx.doi.org/{REVIEW_1_DOI}`,
- type: 'review',
+ type: 'peer-review',
relation: {
'is-review-of': [
{
@@ -209,7 +209,7 @@ export const mockCrossrefReviewsResponse: WorksMessage = {
...GENERIC_WORK_DATA,
DOI: REVIEW_2_DOI,
URL: `http://dx.doi.org/{REVIEW_2_DOI}`,
- type: 'review',
+ type: 'peer-review',
relation: {
'is-review-of': [
{
diff --git a/packages/ts-etl/test/unit/command.test.ts b/packages/ts-etl/test/unit/command.test.ts
index ef5e40ba..40f55b4a 100644
--- a/packages/ts-etl/test/unit/command.test.ts
+++ b/packages/ts-etl/test/unit/command.test.ts
@@ -4,8 +4,9 @@ import { ItemCmd } from '../../src/command'
import { whenThenResolve } from './utils'
import * as cm from './__fixtures__/crossref'
-// TODO: decouple commands test from crossref test
-
+// This test is redundant with a test in the crossref case. Possibly there
+// is no need for a test suite at this level as integration can handle it;
+// however this asserts that the Cmd still passes through.
test('ItemCmd: crossref: happy-path scenario: a manuscript with one preprint and no reviews', async (t) => {
const mocks = cm.CrossrefClientMocks()
whenThenResolve(
@@ -46,130 +47,3 @@ test('ItemCmd: crossref: happy-path scenario: a manuscript with one preprint and
t.deepEqual(dm.steps?.['_:b1']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
//TODO: can write stronger assertions as we learn what this should look like
})
-
-test('ItemCmd: crossref: happy-path scenario: publisher is included', async (t) => {
- const mocks = cm.CrossrefClientMocks()
- whenThenResolve(
- mocks.worksT.getWorks,
- { doi: cm.MANUSCRIPT_DOI },
- cm.mockCrossrefManuscriptResponse,
- )
-
- const res = await ItemCmd([cm.MANUSCRIPT_DOI], {
- source: {
- preset: 'crossref-api',
- client: mocks.crs,
- },
- publisher: {
- id: 'my_pub_id',
- name: 'my_name',
- },
- })
-
- if (isLeft(res)) {
- t.fail(`Got error instead of docmaps: ${res.left}`)
- return
- }
-
- t.is(res.right.length, 1)
- const dm = res.right[0]
-
- // necessary because Typescript doesn't narrow down type of dm just because
- // test failure guarantees we can't get here
- if (!dm) {
- t.fail('impossibly, we couldnt find the first docmap in a list of one')
- return //necessary
- }
-
- t.deepEqual(dm.type, 'docmap')
- t.deepEqual(dm.publisher, {
- id: 'my_pub_id',
- name: 'my_name',
- })
-})
-
-test('ItemCmd: crossref: happy-path scenario: a manuscript with no relations', async (t) => {
- const mocks = cm.CrossrefClientMocks()
- whenThenResolve(
- mocks.worksT.getWorks,
- { doi: cm.MANUSCRIPT_DOI },
- cm.mockCrossrefManuscriptResponse,
- )
-
- const res = await ItemCmd([cm.MANUSCRIPT_DOI], {
- source: {
- preset: 'crossref-api',
- client: mocks.crs,
- },
- publisher: {},
- })
-
- if (isLeft(res)) {
- t.fail(`Got error instead of docmaps: ${res.left}`)
- return
- }
-
- t.is(res.right.length, 1)
- const dm = res.right[0]
-
- // necessary because Typescript doesn't narrow down type of dm just because
- // test failure guarantees we can't get here
- if (!dm) {
- t.fail('impossibly, we couldnt find the first docmap in a list of one')
- return //necessary
- }
-
- t.deepEqual(dm.type, 'docmap')
- t.deepEqual(dm.steps?.['_:b0']?.inputs.length, 0)
- t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
-})
-
-test('ItemCmd: crossref: happy-path scenario: a manuscript with 2 reviews and no preprint', async (t) => {
- const mocks = cm.CrossrefClientMocks()
- whenThenResolve(
- mocks.worksT.getWorks,
- { doi: cm.MANUSCRIPT_DOI },
- cm.mockCrossrefManuscriptWithReviewsResponse,
- )
- // TODO - this implies each Review is fetched on its own
- whenThenResolve(
- mocks.worksT.getWorks,
- { doi: cm.REVIEW_1_DOI },
- cm.mockCrossrefReviewsResponses[0],
- )
- whenThenResolve(
- mocks.worksT.getWorks,
- { doi: cm.REVIEW_2_DOI },
- cm.mockCrossrefReviewsResponses[1],
- )
-
- const res = await ItemCmd([cm.MANUSCRIPT_DOI], {
- source: {
- preset: 'crossref-api',
- client: mocks.crs,
- },
- publisher: {},
- })
-
- if (isLeft(res)) {
- t.fail(`Got error instead of docmaps: ${res.left}`)
- return
- }
-
- t.is(res.right.length, 1)
- const dm = res.right[0]
-
- // necessary because Typescript doesn't narrow down type of dm just because
- // test failure guarantees we can't get here
- if (!dm) {
- t.fail('impossibly, we couldnt find the first docmap in a list of one')
- return //necessary
- }
-
- t.deepEqual(dm.type, 'docmap')
- t.deepEqual(dm.steps?.['_:b0']?.inputs.length, 0)
- t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
- t.deepEqual(dm.steps?.['_:b1']?.inputs[0]?.doi, cm.MANUSCRIPT_DOI)
- t.deepEqual(dm.steps?.['_:b1']?.actions[0]?.outputs[0]?.doi, cm.REVIEW_1_DOI)
- t.deepEqual(dm.steps?.['_:b1']?.actions[1]?.outputs[0]?.doi, cm.REVIEW_2_DOI)
-})
diff --git a/packages/ts-etl/test/unit/crossref/api.test.ts b/packages/ts-etl/test/unit/crossref/api.test.ts
new file mode 100644
index 00000000..b0f36c25
--- /dev/null
+++ b/packages/ts-etl/test/unit/crossref/api.test.ts
@@ -0,0 +1,201 @@
+import test from 'ava'
+import { isLeft, isRight } from 'fp-ts/lib/Either'
+import { fetchPublicationByDoi } from '../../../src/plugins/crossref'
+import { whenThenResolve } from '../utils'
+import * as cm from '../__fixtures__/crossref'
+
+test('fetchPublicationByDoi: happy-path scenario: a manuscript with one preprint and no reviews', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.MANUSCRIPT_DOI },
+ cm.mockCrossrefManuscriptWithPreprintResponse,
+ )
+ whenThenResolve(mocks.worksT.getWorks, { doi: cm.PREPRINT_DOI }, cm.mockCrossrefPreprintResponse)
+
+ const res = await fetchPublicationByDoi(mocks.crs, {}, cm.MANUSCRIPT_DOI)
+
+ if (isLeft(res)) {
+ t.fail(`Got error instead of docmaps: ${res.left}`)
+ return
+ }
+
+ t.is(res.right.length, 1)
+ const dm = res.right[0]
+
+ // necessary because Typescript doesn't narrow down type of dm just because
+ // test failure guarantees we can't get here
+ if (!dm) {
+ t.fail('impossibly, we couldnt find the first docmap in a list of one')
+ return //necessary
+ }
+
+ t.deepEqual(dm.type, 'docmap')
+ t.is(dm.steps ? Object.keys(dm.steps).length : 0, 2)
+ t.is(dm.steps?.['_:b0']?.inputs.length, 0)
+ t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.PREPRINT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.inputs[0]?.doi, cm.PREPRINT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
+ //TODO: can write stronger assertions as we learn what this should look like
+})
+test('fetchPublicationByDoi: happy-path scenario: a manuscript discovered from its preprint', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.MANUSCRIPT_DOI },
+ cm.mockCrossrefManuscriptWithPreprintResponse,
+ )
+ whenThenResolve(mocks.worksT.getWorks, { doi: cm.PREPRINT_DOI }, cm.mockCrossrefPreprintResponse)
+
+ const res = await fetchPublicationByDoi(mocks.crs, {}, cm.PREPRINT_DOI)
+
+ if (isLeft(res)) {
+ t.fail(`Got error instead of docmaps: ${res.left}`)
+ return
+ }
+
+ t.is(res.right.length, 1)
+ const dm = res.right[0]
+
+ // necessary because Typescript doesn't narrow down type of dm just because
+ // test failure guarantees we can't get here
+ if (!dm) {
+ t.fail('impossibly, we couldnt find the first docmap in a list of one')
+ return //necessary
+ }
+
+ t.deepEqual(dm.type, 'docmap')
+ t.is(dm.steps ? Object.keys(dm.steps).length : 0, 2)
+ t.is(dm.steps?.['_:b0']?.inputs.length, 0)
+ t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.PREPRINT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.inputs[0]?.doi, cm.PREPRINT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
+ //TODO: can write stronger assertions as we learn what this should look like
+})
+test('fetchPublicationByDoi: happy-path scenario: publisher is included', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.MANUSCRIPT_DOI },
+ cm.mockCrossrefManuscriptResponse,
+ )
+
+ const publisher = {
+ id: 'my_pub_id',
+ name: 'my_name',
+ }
+ const res = await fetchPublicationByDoi(mocks.crs, publisher, cm.MANUSCRIPT_DOI)
+
+ if (isLeft(res)) {
+ t.fail(`Got error instead of docmaps: ${res.left}`)
+ return
+ }
+
+ t.is(res.right.length, 1)
+ const dm = res.right[0]
+
+ // necessary because Typescript doesn't narrow down type of dm just because
+ // test failure guarantees we can't get here
+ if (!dm) {
+ t.fail('impossibly, we couldnt find the first docmap in a list of one')
+ return //necessary
+ }
+
+ t.deepEqual(dm.type, 'docmap')
+ t.deepEqual(dm.publisher, {
+ id: 'my_pub_id',
+ name: 'my_name',
+ })
+})
+
+test('fetchPublicationByDoi: happy-path scenario: a manuscript with no relations', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.MANUSCRIPT_DOI },
+ cm.mockCrossrefManuscriptResponse,
+ )
+
+ const res = await fetchPublicationByDoi(mocks.crs, {}, cm.MANUSCRIPT_DOI)
+
+ if (isLeft(res)) {
+ t.fail(`Got error instead of docmaps: ${res.left}`)
+ return
+ }
+
+ t.is(res.right.length, 1)
+ const dm = res.right[0]
+
+ // necessary because Typescript doesn't narrow down type of dm just because
+ // test failure guarantees we can't get here
+ if (!dm) {
+ t.fail('impossibly, we couldnt find the first docmap in a list of one')
+ return //necessary
+ }
+
+ t.deepEqual(dm.type, 'docmap')
+ t.deepEqual(dm.steps?.['_:b0']?.inputs.length, 0)
+ t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
+})
+
+test('fetchPublicationByDoi: happy-path scenario: a manuscript with 2 reviews and no preprint', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.MANUSCRIPT_DOI },
+ cm.mockCrossrefManuscriptWithReviewsResponse,
+ )
+ // TODO - this implies each Review is fetched on its own
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.REVIEW_1_DOI },
+ cm.mockCrossrefReviewsResponses[0],
+ )
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.REVIEW_2_DOI },
+ cm.mockCrossrefReviewsResponses[1],
+ )
+
+ const res = await fetchPublicationByDoi(mocks.crs, {}, cm.MANUSCRIPT_DOI)
+
+ if (isLeft(res)) {
+ t.fail(`Got error instead of docmaps: ${res.left}`)
+ return
+ }
+
+ t.is(res.right.length, 1)
+ const dm = res.right[0]
+
+ // necessary because Typescript doesn't narrow down type of dm just because
+ // test failure guarantees we can't get here
+ if (!dm) {
+ t.fail('impossibly, we couldnt find the first docmap in a list of one')
+ return //necessary
+ }
+
+ t.deepEqual(dm.type, 'docmap')
+ t.deepEqual(dm.steps?.['_:b0']?.inputs.length, 0)
+ t.deepEqual(dm.steps?.['_:b0']?.actions[0]?.outputs[0]?.doi, cm.MANUSCRIPT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.inputs[0]?.doi, cm.MANUSCRIPT_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.actions[0]?.outputs[0]?.doi, cm.REVIEW_1_DOI)
+ t.deepEqual(dm.steps?.['_:b1']?.actions[1]?.outputs[0]?.doi, cm.REVIEW_2_DOI)
+})
+
+test('fetchPublicationByDoi: error case: looking up a crossref work of wrong type', async (t) => {
+ const mocks = cm.CrossrefClientMocks()
+ whenThenResolve(
+ mocks.worksT.getWorks,
+ { doi: cm.REVIEW_1_DOI },
+ cm.mockCrossrefReviewsResponses[0],
+ )
+
+ const res = await fetchPublicationByDoi(mocks.crs, {}, cm.REVIEW_1_DOI)
+
+ if (isRight(res)) {
+ t.fail(`Got docmaps instead of error: ${res.right}`)
+ return
+ }
+
+ t.regex(res.left.message, /requested root docmap for crossref entity of type 'peer-review'/)
+})
diff --git a/packages/ts-sdk/src/types.ts b/packages/ts-sdk/src/types.ts
index cd5053c0..d83becb4 100644
--- a/packages/ts-sdk/src/types.ts
+++ b/packages/ts-sdk/src/types.ts
@@ -56,6 +56,7 @@ export const Publisher = t.intersection([
export const Manifestation = t.intersection([
t.type({
// TODO: this looks like it might need to be an AnyType or something. Manifestations are extensive.
+ // - we are at least aware of EMBO using `type: text`.
type: arrayOrOneOf([
'web-page', // correctly used by eLife
]),
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index bc5aa8cb..19d2dbac 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -24,6 +24,45 @@ importers:
rdf-ext: 2.2.0
rdf-validate-shacl: 0.4.5
+ packages/spa:
+ specifiers:
+ '@docmaps/etl': workspace:^0.1.2
+ '@rollup/plugin-commonjs': ^24.1.0
+ '@rollup/plugin-node-resolve': ^15.1.0
+ '@rollup/plugin-terser': ^0.4.3
+ '@source-data/render-rev': github:source-data/render-rev
+ '@spider-ui/global-event-registry': ^0.2.7
+ docmaps-sdk: ^0.5.1
+ fp-ts: ^2.16.0
+ prismjs: ^1.29.0
+ rollup: ^3.23.0
+ rollup-plugin-css-only: ^4.3.0
+ rollup-plugin-livereload: ^2.0.5
+ rollup-plugin-polyfill-node: ^0.12.0
+ rollup-plugin-svelte: ^7.1.5
+ sirv-cli: ^2.0.2
+ svelte: ^3.59.1
+ upgraded-element: ^0.6.5
+ dependencies:
+ '@docmaps/etl': link:../ts-etl
+ '@source-data/render-rev': github.com/source-data/render-rev/e77d8a0840fa6a33ea6663aa57dee6ff0930faed_en4jrmmtiggxba5g6f4h6b5bdu
+ '@spider-ui/global-event-registry': 0.2.7
+ docmaps-sdk: 0.5.1
+ fp-ts: 2.16.0
+ prismjs: 1.29.0
+ sirv-cli: 2.0.2
+ upgraded-element: 0.6.5
+ devDependencies:
+ '@rollup/plugin-commonjs': 24.1.0_rollup@3.23.0
+ '@rollup/plugin-node-resolve': 15.1.0_rollup@3.23.0
+ '@rollup/plugin-terser': 0.4.3_rollup@3.23.0
+ rollup: 3.23.0
+ rollup-plugin-css-only: 4.3.0_rollup@3.23.0
+ rollup-plugin-livereload: 2.0.5
+ rollup-plugin-polyfill-node: 0.12.0_rollup@3.23.0
+ rollup-plugin-svelte: 7.1.5_sz7s4dmjv6zmjgdyx7w7zqtk6e
+ svelte: 3.59.1
+
packages/ts-etl:
specifiers:
'@commander-js/extra-typings': ^10.0.3
@@ -155,8 +194,8 @@ packages:
js-tokens: 4.0.0
dev: false
- /@babel/runtime/7.21.0:
- resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==}
+ /@babel/runtime/7.22.3:
+ resolution: {integrity: sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==}
engines: {node: '>=6.9.0'}
dependencies:
regenerator-runtime: 0.13.11
@@ -195,13 +234,13 @@ packages:
'@jridgewell/trace-mapping': 0.3.9
dev: true
- /@digitalbazaar/http-client/3.4.0:
- resolution: {integrity: sha512-B/T3Xlo5UjPkoAqX/DQOAF2D5khgNZJZhoQ1d1b3ykYd2XnwOQ6srz1T+SsWVfjbXyLajN7j/nfKy7QiUofN+A==}
+ /@digitalbazaar/http-client/3.4.1:
+ resolution: {integrity: sha512-Ahk1N+s7urkgj7WvvUND5f8GiWEPfUw0D41hdElaqLgu8wZScI8gdI0q+qWw5N1d35x7GCRH2uk9mi+Uzo9M3g==}
engines: {node: '>=14.0'}
dependencies:
ky: 0.33.3
ky-universal: 0.11.0_ky@0.33.3
- undici: 5.21.2
+ undici: 5.22.1
transitivePeerDependencies:
- web-streams-polyfill
dev: false
@@ -290,15 +329,52 @@ packages:
/@humanwhocodes/object-schema/1.2.1:
resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
+ /@jridgewell/gen-mapping/0.3.3:
+ resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/set-array': 1.1.2
+ '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/trace-mapping': 0.3.18
+ dev: true
+
+ /@jridgewell/resolve-uri/3.1.0:
+ resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
/@jridgewell/resolve-uri/3.1.1:
resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
engines: {node: '>=6.0.0'}
dev: true
+ /@jridgewell/set-array/1.1.2:
+ resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ /@jridgewell/source-map/0.3.3:
+ resolution: {integrity: sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==}
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.3
+ '@jridgewell/trace-mapping': 0.3.18
+ dev: true
+
+ /@jridgewell/sourcemap-codec/1.4.14:
+ resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
+ dev: true
+
/@jridgewell/sourcemap-codec/1.4.15:
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
dev: true
+ /@jridgewell/trace-mapping/0.3.18:
+ resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.0
+ '@jridgewell/sourcemap-codec': 1.4.14
+ dev: true
+
/@jridgewell/trace-mapping/0.3.9:
resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
dependencies:
@@ -306,6 +382,16 @@ packages:
'@jridgewell/sourcemap-codec': 1.4.15
dev: true
+ /@lit-labs/ssr-dom-shim/1.1.1:
+ resolution: {integrity: sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==}
+ dev: false
+
+ /@lit/reactive-element/1.6.1:
+ resolution: {integrity: sha512-va15kYZr7KZNNPZdxONGQzpUr+4sxVu7V/VG7a8mRfPPXUyhEYj5RzXCQmGrlP3tAh0L3HHm5AjBMFYRqlM9SA==}
+ dependencies:
+ '@lit-labs/ssr-dom-shim': 1.1.1
+ dev: false
+
/@manypkg/cli/0.20.0:
resolution: {integrity: sha512-xOAyzHp4cF6+1VxCeVi14k4WJBbKAExuYVA+wXlCHPLoTUv64D2HQrLUOFO8bXtzW9KFhGhdP2xGFq9n9rSDiw==}
engines: {node: '>=14.18.0'}
@@ -329,7 +415,7 @@ packages:
/@manypkg/find-root/1.1.0:
resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==}
dependencies:
- '@babel/runtime': 7.21.0
+ '@babel/runtime': 7.22.3
'@types/node': 12.20.55
find-up: 4.1.0
fs-extra: 8.1.0
@@ -348,11 +434,11 @@ packages:
/@manypkg/get-packages/1.1.3:
resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==}
dependencies:
- '@babel/runtime': 7.21.0
+ '@babel/runtime': 7.22.3
'@changesets/types': 4.1.0
'@manypkg/find-root': 1.1.0
fs-extra: 8.1.0
- globby: 11.1.0
+ globby: 11.0.4
read-yaml-file: 1.1.0
dev: false
@@ -396,18 +482,18 @@ packages:
resolution: {integrity: sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA==}
engines: {node: '>= 14'}
dependencies:
- '@octokit/types': 9.0.0
+ '@octokit/types': 9.2.3
dev: false
- /@octokit/core/4.2.0:
- resolution: {integrity: sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==}
+ /@octokit/core/4.2.1:
+ resolution: {integrity: sha512-tEDxFx8E38zF3gT7sSMDrT1tGumDgsw5yPG6BBh/X+5ClIQfMH/Yqocxz1PnHx6CHyF6pxmovUTOfZAUvQ0Lvw==}
engines: {node: '>= 14'}
dependencies:
'@octokit/auth-token': 3.0.3
- '@octokit/graphql': 5.0.5
- '@octokit/request': 6.2.3
+ '@octokit/graphql': 5.0.6
+ '@octokit/request': 6.2.5
'@octokit/request-error': 3.0.3
- '@octokit/types': 9.0.0
+ '@octokit/types': 9.2.3
before-after-hook: 2.2.3
universal-user-agent: 6.0.0
transitivePeerDependencies:
@@ -418,94 +504,90 @@ packages:
resolution: {integrity: sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA==}
engines: {node: '>= 14'}
dependencies:
- '@octokit/types': 9.0.0
+ '@octokit/types': 9.2.3
is-plain-object: 5.0.0
universal-user-agent: 6.0.0
dev: false
- /@octokit/graphql/5.0.5:
- resolution: {integrity: sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ==}
+ /@octokit/graphql/5.0.6:
+ resolution: {integrity: sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==}
engines: {node: '>= 14'}
dependencies:
- '@octokit/request': 6.2.3
- '@octokit/types': 9.0.0
+ '@octokit/request': 6.2.5
+ '@octokit/types': 9.2.3
universal-user-agent: 6.0.0
transitivePeerDependencies:
- encoding
dev: false
- /@octokit/openapi-types/16.0.0:
- resolution: {integrity: sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==}
+ /@octokit/openapi-types/17.2.0:
+ resolution: {integrity: sha512-MazrFNx4plbLsGl+LFesMo96eIXkFgEtaKbnNpdh4aQ0VM10aoylFsTYP1AEjkeoRNZiiPe3T6Gl2Hr8dJWdlQ==}
dev: false
- /@octokit/plugin-paginate-rest/6.0.0_@octokit+core@4.2.0:
- resolution: {integrity: sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw==}
+ /@octokit/plugin-paginate-rest/6.1.2_@octokit+core@4.2.1:
+ resolution: {integrity: sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==}
engines: {node: '>= 14'}
peerDependencies:
'@octokit/core': '>=4'
dependencies:
- '@octokit/core': 4.2.0
- '@octokit/types': 9.0.0
+ '@octokit/core': 4.2.1
+ '@octokit/tsconfig': 1.0.2
+ '@octokit/types': 9.2.3
dev: false
- /@octokit/plugin-request-log/1.0.4_@octokit+core@4.2.0:
- resolution: {integrity: sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==}
+ /@octokit/plugin-retry/4.1.3_@octokit+core@4.2.1:
+ resolution: {integrity: sha512-3YKBj7d0J/4mpEc4xzMociWsMNl5lZqrpAnYcW6mqiSGF3wFjU+c6GHih6GLClk31JNvKDr0x9jc5cfm7evkZg==}
+ engines: {node: '>= 14'}
peerDependencies:
'@octokit/core': '>=3'
dependencies:
- '@octokit/core': 4.2.0
+ '@octokit/core': 4.2.1
+ '@octokit/types': 9.2.3
+ bottleneck: 2.19.5
dev: false
- /@octokit/plugin-rest-endpoint-methods/7.0.1_@octokit+core@4.2.0:
- resolution: {integrity: sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA==}
+ /@octokit/plugin-throttling/5.2.3_@octokit+core@4.2.1:
+ resolution: {integrity: sha512-C9CFg9mrf6cugneKiaI841iG8DOv6P5XXkjmiNNut+swePxQ7RWEdAZRp5rJoE1hjsIqiYcKa/ZkOQ+ujPI39Q==}
engines: {node: '>= 14'}
peerDependencies:
- '@octokit/core': '>=3'
+ '@octokit/core': ^4.0.0
dependencies:
- '@octokit/core': 4.2.0
- '@octokit/types': 9.0.0
- deprecation: 2.3.1
+ '@octokit/core': 4.2.1
+ '@octokit/types': 9.2.3
+ bottleneck: 2.19.5
dev: false
/@octokit/request-error/3.0.3:
resolution: {integrity: sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==}
engines: {node: '>= 14'}
dependencies:
- '@octokit/types': 9.0.0
+ '@octokit/types': 9.2.3
deprecation: 2.3.1
once: 1.4.0
dev: false
- /@octokit/request/6.2.3:
- resolution: {integrity: sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA==}
+ /@octokit/request/6.2.5:
+ resolution: {integrity: sha512-z83E8UIlPNaJUsXpjD8E0V5o/5f+vJJNbNcBwVZsX3/vC650U41cOkTLjq4PKk9BYonQGOnx7N17gvLyNjgGcQ==}
engines: {node: '>= 14'}
dependencies:
'@octokit/endpoint': 7.0.5
'@octokit/request-error': 3.0.3
- '@octokit/types': 9.0.0
+ '@octokit/types': 9.2.3
is-plain-object: 5.0.0
- node-fetch: 2.6.7
+ node-fetch: 2.6.11
universal-user-agent: 6.0.0
transitivePeerDependencies:
- encoding
dev: false
- /@octokit/rest/19.0.7:
- resolution: {integrity: sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA==}
- engines: {node: '>= 14'}
- dependencies:
- '@octokit/core': 4.2.0
- '@octokit/plugin-paginate-rest': 6.0.0_@octokit+core@4.2.0
- '@octokit/plugin-request-log': 1.0.4_@octokit+core@4.2.0
- '@octokit/plugin-rest-endpoint-methods': 7.0.1_@octokit+core@4.2.0
- transitivePeerDependencies:
- - encoding
+ /@octokit/tsconfig/1.0.2:
+ resolution: {integrity: sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==}
dev: false
- /@octokit/types/9.0.0:
- resolution: {integrity: sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==}
+ /@octokit/types/9.2.3:
+ resolution: {integrity: sha512-MMeLdHyFIALioycq+LFcA71v0S2xpQUX2cw6pPbHQjaibcHYwLnmK/kMZaWuGfGfjBJZ3wRUq+dOaWsvrPJVvA==}
dependencies:
- '@octokit/openapi-types': 16.0.0
+ '@octokit/openapi-types': 17.2.0
dev: false
/@pnpm/config.env-replace/1.1.0:
@@ -520,8 +602,8 @@ packages:
graceful-fs: 4.2.10
dev: false
- /@pnpm/npm-conf/2.1.1:
- resolution: {integrity: sha512-yfRcuupmxxeDOSxvw4g+wFCrGiPD0L32f5WMzqMXp7Rl93EOCdFiDcaSNnZ10Up9GdNqkj70UTa8hfhPFphaZA==}
+ /@pnpm/npm-conf/2.2.0:
+ resolution: {integrity: sha512-roLI1ul/GwzwcfcVpZYPdrgW2W/drLriObl1h+yLF5syc8/5ULWw2ALbCHUWF+4YltIqA3xFSbG4IwyJz37e9g==}
engines: {node: '>=12'}
dependencies:
'@pnpm/config.env-replace': 1.1.0
@@ -529,6 +611,10 @@ packages:
config-chain: 1.1.13
dev: false
+ /@polka/url/1.0.0-next.21:
+ resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
+ dev: false
+
/@rdfjs/data-model/1.3.4:
resolution: {integrity: sha512-iKzNcKvJotgbFDdti7GTQDCYmL7GsGldkYStiP0K8EYtN7deJu5t7U11rKTz+nR7RtesUggT+lriZ7BakFv8QQ==}
hasBin: true
@@ -566,7 +652,7 @@ packages:
dependencies:
is-stream: 3.0.0
nodeify-fetch: 3.1.0
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
/@rdfjs/formats-common/3.1.0:
resolution: {integrity: sha512-wgz5za/Uls+pttLdLl/aH0m0LQNgjqpWwk9exNs2Smmb2CosynRo4S0+CxeNOVZh4zeUm7oAlr1CK/tyg4Ff6g==}
@@ -596,7 +682,7 @@ packages:
resolution: {integrity: sha512-jOSdIKz9r/oPI9nuWXMTYzFaCbrFQj9qEOPdqs1/7oAR1JTvqpS69HVZPkVqbH+WhL52PJbBXyA5QadoyNLgpQ==}
engines: {node: '>= 14.0.0'}
dependencies:
- rdf-canonize: 3.3.0
+ rdf-canonize: 3.4.0
/@rdfjs/parser-jsonld/2.1.0:
resolution: {integrity: sha512-RdulIDLGFNJljM28IDjdeEtMnY7QGlOGvAZebSNM6FhGfp1FsRYvr+5yQRKrpSHHfM97vKyHOyKis1MT8f3IfQ==}
@@ -605,7 +691,7 @@ packages:
'@rdfjs/sink': 2.0.0
duplex-to: 2.0.0
jsonld-streaming-parser: 3.2.0
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
transitivePeerDependencies:
- encoding
dev: false
@@ -617,12 +703,12 @@ packages:
'@rdfjs/sink': 2.0.0
duplex-to: 2.0.0
n3: 1.16.4
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
/@rdfjs/prefix-map/0.1.1:
resolution: {integrity: sha512-w9VrJ/YfMyvdcpuKG0XEzgbH6AXtUSugvgL1U1IvbTYdL2rfIifaYkSyp86lEhD2hHeYUYAGZTKkpDErtXCMxQ==}
dependencies:
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
/@rdfjs/score/0.1.1:
resolution: {integrity: sha512-+t9Sf5nFUJTvH8X2Xy7H+egLKIyVCwlDzCGrWThSrSCmIENcC9n3+GkMMImnsmYDeSXaWi3awcI1f1TmA84FIQ==}
@@ -636,8 +722,8 @@ packages:
resolution: {integrity: sha512-HP5DCmhyfVuQuk58AO5vzNY+dIFVHe2oHY8NX2K+3XmrTmu/yzrFzPbDeU9Cwr71XC4RifEMoksIg+8jnhxmfQ==}
dependencies:
'@rdfjs/sink': 2.0.0
- jsonld: 8.1.1
- readable-stream: 4.3.0
+ jsonld: 8.2.0
+ readable-stream: 4.4.0
stream-chunks: 1.0.0
transitivePeerDependencies:
- web-streams-polyfill
@@ -647,7 +733,7 @@ packages:
resolution: {integrity: sha512-JGk17iT5QW1FpTI8SBruXIcYQFuuUwqurByNndWTE4k0zrNzvwrfOtsd6lIMthlubWVTfBAhV7mHDSwtMHdHQg==}
dependencies:
'@rdfjs/sink': 2.0.0
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
dev: false
/@rdfjs/serializer-ntriples/2.0.0:
@@ -655,7 +741,7 @@ packages:
dependencies:
'@rdfjs/to-ntriples': 2.0.0
duplex-to: 2.0.0
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
dev: false
/@rdfjs/serializer-turtle/1.1.1:
@@ -668,7 +754,7 @@ packages:
'@rdfjs/term-map': 2.0.0
'@rdfjs/to-ntriples': 2.0.0
'@rdfjs/tree': 0.2.0
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
stream-chunks: 1.0.0
dev: false
@@ -697,8 +783,10 @@ packages:
/@rdfjs/to-ntriples/2.0.0:
resolution: {integrity: sha512-nDhpfhx6W6HKsy4HjyLp3H1nbrX1CiUCWhWQwKcYZX1s9GOjcoQTwY7GUUbVec0hzdJDQBR6gnjxtENBDt482Q==}
- /@rdfjs/traverser/0.1.1:
- resolution: {integrity: sha512-zyVuur2dS5cceUPjIh0TNS7GsmvEHaSqb5Sw5yxS4mDOun1X35FObNEezksbGpc2KzcDTJJV8V2SLr397lAGug==}
+ /@rdfjs/traverser/0.1.2:
+ resolution: {integrity: sha512-EBB/p9LrTMzupZ6VlxtBXyL0bdXFY7e5lAp2tHNwxOoe3kcR6hOJFVWdPT7pdWaSotyXbTIEQxG4PkXMw/OY7w==}
+ dependencies:
+ '@rdfjs/to-ntriples': 2.0.0
/@rdfjs/tree/0.2.0:
resolution: {integrity: sha512-KhtzoHPDDvIYJLS2r4u1EL1TErmoRzI/6JThcf4RqwZNVCh9WrjrZedMvOcvl47Rawlrgjnt73uQtTa3RcbMzQ==}
@@ -711,7 +799,96 @@ packages:
/@rdfjs/types/1.1.0:
resolution: {integrity: sha512-5zm8bN2/CC634dTcn/0AhTRLaQRjXDZs3QfcAsQKNturHT7XVWcKy/8p3P5gXl+YkZTAmy7T5M/LyiT/jbkENw==}
dependencies:
- '@types/node': 18.16.7
+ '@types/node': 20.2.5
+
+ /@rollup/plugin-commonjs/24.1.0_rollup@3.23.0:
+ resolution: {integrity: sha512-eSL45hjhCWI0jCCXcNtLVqM5N1JlBGvlFfY0m6oOYnLCJ6N0qEXoZql4sY2MOUArzhH4SA/qBpTxvvZp2Sc+DQ==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^2.68.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@rollup/pluginutils': 5.0.2_rollup@3.23.0
+ commondir: 1.0.1
+ estree-walker: 2.0.2
+ glob: 8.1.0
+ is-reference: 1.2.1
+ magic-string: 0.27.0
+ rollup: 3.23.0
+ dev: true
+
+ /@rollup/plugin-inject/5.0.3_rollup@3.23.0:
+ resolution: {integrity: sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@rollup/pluginutils': 5.0.2_rollup@3.23.0
+ estree-walker: 2.0.2
+ magic-string: 0.27.0
+ rollup: 3.23.0
+ dev: true
+
+ /@rollup/plugin-node-resolve/15.1.0_rollup@3.23.0:
+ resolution: {integrity: sha512-xeZHCgsiZ9pzYVgAo9580eCGqwh/XCEUM9q6iQfGNocjgkufHAqC3exA+45URvhiYV8sBF9RlBai650eNs7AsA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^2.78.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@rollup/pluginutils': 5.0.2_rollup@3.23.0
+ '@types/resolve': 1.20.2
+ deepmerge: 4.3.1
+ is-builtin-module: 3.2.1
+ is-module: 1.0.0
+ resolve: 1.22.2
+ rollup: 3.23.0
+ dev: true
+
+ /@rollup/plugin-terser/0.4.3_rollup@3.23.0:
+ resolution: {integrity: sha512-EF0oejTMtkyhrkwCdg0HJ0IpkcaVg1MMSf2olHb2Jp+1mnLM04OhjpJWGma4HobiDTF0WCyViWuvadyE9ch2XA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^2.x || ^3.x
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ rollup: 3.23.0
+ serialize-javascript: 6.0.1
+ smob: 1.4.0
+ terser: 5.17.7
+ dev: true
+
+ /@rollup/pluginutils/4.2.1:
+ resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==}
+ engines: {node: '>= 8.0.0'}
+ dependencies:
+ estree-walker: 2.0.2
+ picomatch: 2.3.1
+ dev: true
+
+ /@rollup/pluginutils/5.0.2_rollup@3.23.0:
+ resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@types/estree': 1.0.1
+ estree-walker: 2.0.2
+ picomatch: 2.3.1
+ rollup: 3.23.0
+ dev: true
/@semantic-release/commit-analyzer/9.0.2_semantic-release@19.0.5:
resolution: {integrity: sha512-E+dr6L+xIHZkX4zNMe6Rnwg4YQrWNXK+rNsvwOPpdFppvZO1olE2fIgWhv89TkQErygevbjsZFSIxp+u6w2e5g==}
@@ -736,27 +913,28 @@ packages:
engines: {node: '>=14.17'}
dev: false
- /@semantic-release/github/8.0.7_semantic-release@19.0.5:
- resolution: {integrity: sha512-VtgicRIKGvmTHwm//iqTh/5NGQwsncOMR5vQK9pMT92Aem7dv37JFKKRuulUsAnUOIlO4G8wH3gPiBAA0iW0ww==}
+ /@semantic-release/github/8.1.0_semantic-release@19.0.5:
+ resolution: {integrity: sha512-erR9E5rpdsz0dW1I7785JtndQuMWN/iDcemcptf67tBNOmBUN0b2YNOgcjYUnBpgRpZ5ozfBHrK7Bz+2ets/Dg==}
engines: {node: '>=14.17'}
peerDependencies:
semantic-release: '>=18.0.0-beta.1'
dependencies:
- '@octokit/rest': 19.0.7
+ '@octokit/core': 4.2.1
+ '@octokit/plugin-paginate-rest': 6.1.2_@octokit+core@4.2.1
+ '@octokit/plugin-retry': 4.1.3_@octokit+core@4.2.1
+ '@octokit/plugin-throttling': 5.2.3_@octokit+core@4.2.1
'@semantic-release/error': 3.0.0
aggregate-error: 3.1.0
- bottleneck: 2.19.5
debug: 4.3.4
dir-glob: 3.0.1
fs-extra: 11.1.1
- globby: 11.1.0
- http-proxy-agent: 5.0.0
- https-proxy-agent: 5.0.1
+ globby: 11.0.4
+ http-proxy-agent: 7.0.0
+ https-proxy-agent: 7.0.0
issue-parser: 6.0.0
lodash: 4.17.21
mime: 3.0.0
p-filter: 2.1.0
- p-retry: 4.6.2
semantic-release: 19.0.5
url-join: 4.0.1
transitivePeerDependencies:
@@ -782,7 +960,7 @@ packages:
read-pkg: 5.2.0
registry-auth-token: 5.0.2
semantic-release: 19.0.5
- semver: 7.4.0
+ semver: 7.5.1
tempy: 1.0.1
dev: false
@@ -812,6 +990,20 @@ packages:
engines: {node: '>=6'}
dev: false
+ /@spider-ui/global-event-registry/0.2.7:
+ resolution: {integrity: sha512-HXmMcZ/swKb2wC2JUbU4eRM9e9fOVZ/b8ExkNEUa04R+148KUAo36vd+UnmnpVgGQXVBB/pBL1yVIfC1CwZ+yg==}
+ dev: false
+
+ /@spider-ui/tooltip/0.2.7_en4jrmmtiggxba5g6f4h6b5bdu:
+ resolution: {integrity: sha512-TPIRqJGf4Re5uT7SEhurK0Wxyp8/9stQEbgR3MJ2NlDspau3Wx+V+7vZpeEk0SFQgD2d68779QzB5sdnQrWGQA==}
+ peerDependencies:
+ '@spider-ui/global-event-registry': '>= 0.2.3'
+ upgraded-element: '>= 0.4.3'
+ dependencies:
+ '@spider-ui/global-event-registry': 0.2.7
+ upgraded-element: 0.6.5
+ dev: false
+
/@szmarczak/http-timer/1.1.2:
resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==}
engines: {node: '>=6'}
@@ -819,11 +1011,6 @@ packages:
defer-to-connect: 1.1.3
dev: false
- /@tootallnate/once/2.0.0:
- resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
- engines: {node: '>= 10'}
- dev: false
-
/@tsconfig/node-lts-strictest-esm/18.12.1:
resolution: {integrity: sha512-LvBLmaC6Q/txTddLc11OeMHF9XjJFzlilkETJuvBlUvHy9pPiMsoH3nxWZM1FMSO53zp4mJP6gzOzxKEq0me7Q==}
deprecated: TypeScript 5.0 supports combining TSConfigs using array syntax in extends
@@ -851,10 +1038,14 @@ packages:
rdf-js: 4.0.2
dev: true
+ /@types/estree/1.0.1:
+ resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==}
+ dev: true
+
/@types/http-link-header/1.0.3:
resolution: {integrity: sha512-y8HkoD/vyid+5MrJ3aas0FvU3/BVBGcyG9kgxL0Zn4JwstA8CglFPnrR0RuzOjRCXwqzL5uxWC2IO7Ub0rMU2A==}
dependencies:
- '@types/node': 18.16.7
+ '@types/node': 20.2.5
dev: false
/@types/json-schema/7.0.11:
@@ -868,7 +1059,7 @@ packages:
/@types/keyv/3.1.4:
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
dependencies:
- '@types/node': 18.16.7
+ '@types/node': 20.2.5
dev: false
/@types/minimist/1.2.2:
@@ -886,8 +1077,16 @@ packages:
resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
dev: false
+ /@types/node/18.16.16:
+ resolution: {integrity: sha512-NpaM49IGQQAUlBhHMF82QH80J08os4ZmyF9MkpCzWAGuOHqE4gTEbhzd7L3l5LmWuZ6E0OiC1FweQ4tsiW35+g==}
+ dev: false
+
/@types/node/18.16.7:
resolution: {integrity: sha512-MFg7ua/bRtnA1hYE3pVyWxGd/r7aMqjNOdHvlSsXV3n8iaeGKkOaPzpJh6/ovf4bEXWcojkeMJpTsq3mzXW4IQ==}
+ dev: true
+
+ /@types/node/20.2.5:
+ resolution: {integrity: sha512-JJulVEQXmiY9Px5axXHeYGLSjhkZEnD+MDPDGbCbIAbMslkKwmygtZFy1X6s/075Yo94sf8GuSlFfPzysQrWZQ==}
/@types/normalize-package-data/2.4.1:
resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
@@ -1008,17 +1207,17 @@ packages:
/@types/readable-stream/2.3.15:
resolution: {integrity: sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==}
dependencies:
- '@types/node': 18.16.7
+ '@types/node': 20.2.5
safe-buffer: 5.1.2
+ /@types/resolve/1.20.2:
+ resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
+ dev: true
+
/@types/responselike/1.0.0:
resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==}
dependencies:
- '@types/node': 18.16.7
- dev: false
-
- /@types/retry/0.12.0:
- resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
+ '@types/node': 20.2.5
dev: false
/@types/semver/6.2.3:
@@ -1029,6 +1228,10 @@ packages:
resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==}
dev: true
+ /@types/trusted-types/2.0.3:
+ resolution: {integrity: sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==}
+ dev: false
+
/@typescript-eslint/eslint-plugin/5.59.5_jdo46vuzdvtqioigt7za7mzwma:
resolution: {integrity: sha512-feA9xbVRWJZor+AnLNAr7A8JRWeZqHUf4T9tlP+TN04b05pFVhO5eN7/O93Y/1OUlLMHKbnJisgDURs/qvtqdg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -1206,9 +1409,9 @@ packages:
hasBin: true
dev: true
- /agent-base/6.0.2:
- resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
- engines: {node: '>= 6.0.0'}
+ /agent-base/7.1.0:
+ resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==}
+ engines: {node: '>= 14'}
dependencies:
debug: 4.3.4
transitivePeerDependencies:
@@ -1253,11 +1456,11 @@ packages:
engines: {node: '>=6'}
dev: false
- /ansi-escapes/5.0.0:
- resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==}
- engines: {node: '>=12'}
+ /ansi-escapes/6.2.0:
+ resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==}
+ engines: {node: '>=14.16'}
dependencies:
- type-fest: 1.4.0
+ type-fest: 3.11.1
dev: false
/ansi-regex/5.0.1:
@@ -1475,18 +1678,33 @@ packages:
balanced-match: 1.0.2
concat-map: 0.0.1
+ /brace-expansion/2.0.1:
+ resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+ dependencies:
+ balanced-match: 1.0.2
+ dev: true
+
/braces/3.0.2:
resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
engines: {node: '>=8'}
dependencies:
fill-range: 7.0.1
+ /buffer-from/1.1.2:
+ resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
+ dev: true
+
/buffer/6.0.3:
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
dependencies:
base64-js: 1.5.1
ieee754: 1.2.1
+ /builtin-modules/3.3.0:
+ resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
+ engines: {node: '>=6'}
+ dev: true
+
/builtins/1.0.3:
resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==}
dev: false
@@ -1706,10 +1924,18 @@ packages:
engines: {node: '>=14'}
dev: false
+ /commander/2.20.3:
+ resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
+ dev: true
+
/common-path-prefix/3.0.0:
resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==}
dev: true
+ /commondir/1.0.1:
+ resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
+ dev: true
+
/compare-func/2.0.0:
resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==}
dependencies:
@@ -1741,6 +1967,11 @@ packages:
proto-list: 1.2.4
dev: false
+ /console-clear/1.1.1:
+ resolution: {integrity: sha512-pMD+MVR538ipqkG5JXeOEbKWS5um1H4LUUccUQG68qpeqBYbzYy79Gh55jkd2TtPdRfUaLWdv6LPP//5Zt0aPQ==}
+ engines: {node: '>=4'}
+ dev: false
+
/conventional-changelog-angular/5.0.13:
resolution: {integrity: sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==}
engines: {node: '>=10'}
@@ -1814,10 +2045,10 @@ packages:
resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
dev: true
- /cross-fetch/3.1.5:
- resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==}
+ /cross-fetch/3.1.6:
+ resolution: {integrity: sha512-riRvo06crlE8HiqOwIpQhxwdOk4fOeR7FVM/wXoxchFEqMNUjvbs3bfo4OTgMEMHzppd4DxFBDbyySj8Cv781g==}
dependencies:
- node-fetch: 2.6.7
+ node-fetch: 2.6.11
transitivePeerDependencies:
- encoding
dev: false
@@ -1921,6 +2152,11 @@ packages:
/deep-is/0.1.4:
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+ /deepmerge/4.3.1:
+ resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/defer-to-connect/1.1.3:
resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==}
dev: false
@@ -1929,7 +2165,7 @@ packages:
resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==}
engines: {node: '>=10'}
dependencies:
- globby: 11.1.0
+ globby: 11.0.4
graceful-fs: 4.2.11
is-glob: 4.0.3
is-path-cwd: 2.2.0
@@ -1983,12 +2219,30 @@ packages:
dependencies:
path-type: 4.0.0
+ /docmaps-sdk/0.5.1:
+ resolution: {integrity: sha512-IcMncuScIdZmCQ9IZf1F6voqiAqgxbV5is8IYWGoIVrYzUjR8yT63fwXqoj4u7CnaW4+mJuXZ7motASBCqA/XA==}
+ dependencies:
+ '@rdfjs/serializer-jsonld-ext': 4.0.0
+ fp-ts: 2.16.0
+ io-ts: 2.2.20_fp-ts@2.16.0
+ io-ts-types: 0.5.19_s7sbo4rgx7udnj5ndpwuv6vmsa
+ monocle-ts: 2.3.13_fp-ts@2.16.0
+ newtype-ts: 0.3.5_pfnvjiba2nr3jdxmyagzf4ncpm
+ readable-stream: 4.4.0
+ transitivePeerDependencies:
+ - web-streams-polyfill
+ dev: false
+
/doctrine/3.0.0:
resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
engines: {node: '>=6.0.0'}
dependencies:
esutils: 2.0.3
+ /dompurify/2.4.5:
+ resolution: {integrity: sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==}
+ dev: false
+
/dot-prop/5.3.0:
resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
engines: {node: '>=8'}
@@ -2287,6 +2541,10 @@ packages:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
+ /estree-walker/2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ dev: true
+
/esutils/2.0.3:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
@@ -2478,6 +2736,10 @@ packages:
resolution: {integrity: sha512-3o6EllAvGuCsDgjM+frscLKDRPR9pqbrg13tJ13z86F4eni913kBV8h85rM6zpu2fEvJ8RWA0ouYlUWwHEmxTg==}
dev: false
+ /fp-ts/2.16.0:
+ resolution: {integrity: sha512-bLq+KgbiXdTEoT1zcARrWEpa5z6A/8b7PcDW7Gef3NSisQ+VS7ll2Xbf1E+xsgik0rWub/8u0qP/iTTjj+PhxQ==}
+ dev: false
+
/from2/2.3.0:
resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
dependencies:
@@ -2520,7 +2782,6 @@ packages:
/function-bind/1.1.1:
resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
- dev: false
/functional-red-black-tree/1.0.1:
resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==}
@@ -2530,6 +2791,11 @@ packages:
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
engines: {node: 6.* || 8.* || >= 10.*}
+ /get-port/3.2.0:
+ resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==}
+ engines: {node: '>=4'}
+ dev: false
+
/get-stream/4.1.0:
resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==}
engines: {node: '>=6'}
@@ -2589,6 +2855,17 @@ packages:
once: 1.4.0
path-is-absolute: 1.0.1
+ /glob/8.1.0:
+ resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 5.1.6
+ once: 1.4.0
+ dev: true
+
/globals/13.20.0:
resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==}
engines: {node: '>=8'}
@@ -2705,7 +2982,6 @@ packages:
engines: {node: '>= 0.4.0'}
dependencies:
function-bind: 1.1.1
- dev: false
/hook-std/2.0.0:
resolution: {integrity: sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==}
@@ -2732,12 +3008,11 @@ packages:
engines: {node: '>=6.0.0'}
dev: false
- /http-proxy-agent/5.0.0:
- resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==}
- engines: {node: '>= 6'}
+ /http-proxy-agent/7.0.0:
+ resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==}
+ engines: {node: '>= 14'}
dependencies:
- '@tootallnate/once': 2.0.0
- agent-base: 6.0.2
+ agent-base: 7.1.0
debug: 4.3.4
transitivePeerDependencies:
- supports-color
@@ -2752,11 +3027,11 @@ packages:
sshpk: 1.17.0
dev: false
- /https-proxy-agent/5.0.1:
- resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
- engines: {node: '>= 6'}
+ /https-proxy-agent/7.0.0:
+ resolution: {integrity: sha512-0euwPCRyAPSgGdzD1IVN9nJYHtBhJwb6XPfbpQcYbPCwrBidX6GzxmchnaF4sfF/jPb74Ojx5g4yTg3sixlyPw==}
+ engines: {node: '>= 14'}
dependencies:
- agent-base: 6.0.2
+ agent-base: 7.1.0
debug: 4.3.4
transitivePeerDependencies:
- supports-color
@@ -2850,6 +3125,20 @@ packages:
newtype-ts: 0.3.5_jaoopmksw5o32idg3qiqnewmua
dev: false
+ /io-ts-types/0.5.19_s7sbo4rgx7udnj5ndpwuv6vmsa:
+ resolution: {integrity: sha512-kQOYYDZG5vKre+INIDZbLeDJe+oM+4zLpUkjXyTMyUfoCpjJNyi29ZLkuEAwcPufaYo3yu/BsemZtbdD+NtRfQ==}
+ peerDependencies:
+ fp-ts: ^2.0.0
+ io-ts: ^2.0.0
+ monocle-ts: ^2.0.0
+ newtype-ts: ^0.3.2
+ dependencies:
+ fp-ts: 2.16.0
+ io-ts: 2.2.20_fp-ts@2.16.0
+ monocle-ts: 2.3.13_fp-ts@2.16.0
+ newtype-ts: 0.3.5_pfnvjiba2nr3jdxmyagzf4ncpm
+ dev: false
+
/io-ts/2.2.20_fp-ts@2.15.0:
resolution: {integrity: sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA==}
peerDependencies:
@@ -2858,6 +3147,14 @@ packages:
fp-ts: 2.15.0
dev: false
+ /io-ts/2.2.20_fp-ts@2.16.0:
+ resolution: {integrity: sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA==}
+ peerDependencies:
+ fp-ts: ^2.5.0
+ dependencies:
+ fp-ts: 2.16.0
+ dev: false
+
/irregular-plurals/3.5.0:
resolution: {integrity: sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==}
engines: {node: '>=8'}
@@ -2874,11 +3171,17 @@ packages:
binary-extensions: 2.2.0
dev: true
- /is-core-module/2.12.0:
- resolution: {integrity: sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==}
+ /is-builtin-module/3.2.1:
+ resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+ engines: {node: '>=6'}
+ dependencies:
+ builtin-modules: 3.3.0
+ dev: true
+
+ /is-core-module/2.12.1:
+ resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==}
dependencies:
has: 1.0.3
- dev: false
/is-error/2.2.2:
resolution: {integrity: sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==}
@@ -2903,6 +3206,10 @@ packages:
dependencies:
is-extglob: 2.1.1
+ /is-module/1.0.0:
+ resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
+ dev: true
+
/is-number/7.0.0:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
@@ -2944,6 +3251,12 @@ packages:
resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==}
dev: true
+ /is-reference/1.2.1:
+ resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
+ dependencies:
+ '@types/estree': 1.0.1
+ dev: true
+
/is-stream/2.0.1:
resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
engines: {node: '>=8'}
@@ -3080,9 +3393,9 @@ packages:
hasBin: true
dependencies:
'@types/http-link-header': 1.0.3
- '@types/node': 18.16.7
+ '@types/node': 18.16.16
canonicalize: 1.0.8
- cross-fetch: 3.1.5
+ cross-fetch: 3.1.6
http-link-header: 1.1.1
relative-to-absolute-iri: 1.0.7
transitivePeerDependencies:
@@ -3101,19 +3414,19 @@ packages:
http-link-header: 1.1.1
jsonld-context-parser: 2.3.0
rdf-data-factory: 1.1.1
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
transitivePeerDependencies:
- encoding
dev: false
- /jsonld/8.1.1:
- resolution: {integrity: sha512-TbtV1hlnoDYxbscazbxcS7seDGV+pc0yktxpMySh0OBFvnLw/TIth0jiQtP/9r+ywuCbtj10XjDNBIkRgiyeUg==}
+ /jsonld/8.2.0:
+ resolution: {integrity: sha512-qHUa9pn3/cdAZw26HY1Jmy9+sHOxaLrveTRWUcrSDx5apTa20bBTe+X4nzI7dlqc+M5GkwQW6RgRdqO6LF5nkw==}
engines: {node: '>=14'}
dependencies:
- '@digitalbazaar/http-client': 3.4.0
+ '@digitalbazaar/http-client': 3.4.1
canonicalize: 1.0.8
lru-cache: 6.0.0
- rdf-canonize: 3.3.0
+ rdf-canonize: 3.4.0
transitivePeerDependencies:
- web-streams-polyfill
dev: false
@@ -3144,6 +3457,11 @@ packages:
engines: {node: '>=0.10.0'}
dev: false
+ /kleur/4.1.5:
+ resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
+ engines: {node: '>=6'}
+ dev: false
+
/ky-universal/0.11.0_ky@0.33.3:
resolution: {integrity: sha512-65KyweaWvk+uKKkCrfAf+xqN2/epw1IJDtlyCPxYffFCMR8u1sp2U65NtWpnozYfZxQ6IUzIlvUcw+hQ82U2Xw==}
engines: {node: '>=14.16'}
@@ -3175,6 +3493,46 @@ packages:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
dev: false
+ /lit-element/3.3.2:
+ resolution: {integrity: sha512-xXAeVWKGr4/njq0rGC9dethMnYCq5hpKYrgQZYTzawt9YQhMiXfD+T1RgrdY3NamOxwq2aXlb0vOI6e29CKgVQ==}
+ dependencies:
+ '@lit-labs/ssr-dom-shim': 1.1.1
+ '@lit/reactive-element': 1.6.1
+ lit-html: 2.7.4
+ dev: false
+
+ /lit-html/2.7.4:
+ resolution: {integrity: sha512-/Jw+FBpeEN+z8X6PJva5n7+0MzCVAH2yypN99qHYYkq8bI+j7I39GH+68Z/MZD6rGKDK9RpzBw7CocfmHfq6+g==}
+ dependencies:
+ '@types/trusted-types': 2.0.3
+ dev: false
+
+ /lit/2.7.4:
+ resolution: {integrity: sha512-cgD7xrZoYr21mbrkZIuIrj98YTMw/snJPg52deWVV4A8icLyNHI3bF70xsJeAgwTuiq5Kkd+ZR8gybSJDCPB7g==}
+ dependencies:
+ '@lit/reactive-element': 1.6.1
+ lit-element: 3.3.2
+ lit-html: 2.7.4
+ dev: false
+
+ /livereload-js/3.4.1:
+ resolution: {integrity: sha512-5MP0uUeVCec89ZbNOT/i97Mc+q3SxXmiUGhRFOTmhrGPn//uWVQdCvcLJDy64MSBR5MidFdOR7B9viumoavy6g==}
+ dev: true
+
+ /livereload/0.9.3:
+ resolution: {integrity: sha512-q7Z71n3i4X0R9xthAryBdNGVGAO2R5X+/xXpmKeuPMrteg+W2U8VusTKV3YiJbXZwKsOlFlHe+go6uSNjfxrZw==}
+ engines: {node: '>=8.0.0'}
+ hasBin: true
+ dependencies:
+ chokidar: 3.5.3
+ livereload-js: 3.4.1
+ opts: 2.0.2
+ ws: 7.5.9
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+ dev: true
+
/load-json-file/4.0.0:
resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
engines: {node: '>=4'}
@@ -3190,6 +3548,11 @@ packages:
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dev: true
+ /local-access/1.1.0:
+ resolution: {integrity: sha512-XfegD5pyTAfb+GY6chk283Ox5z8WexG56OvM06RWLpAc/UHozO8X6xAxEkIitZOtsSMM1Yr3DkHgW5W+onLhCw==}
+ engines: {node: '>=6'}
+ dev: false
+
/locate-path/2.0.0:
resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
engines: {node: '>=4'}
@@ -3276,6 +3639,13 @@ packages:
dependencies:
yallist: 4.0.0
+ /magic-string/0.27.0:
+ resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
/make-error/1.3.6:
resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
dev: true
@@ -3297,13 +3667,13 @@ packages:
engines: {node: '>=8'}
dev: false
- /marked-terminal/5.1.1_marked@4.3.0:
- resolution: {integrity: sha512-+cKTOx9P4l7HwINYhzbrBSyzgxO2HaHKGZGuB1orZsMIgXYaJyfidT81VXRdpelW/PcHEWxywscePVgI/oUF6g==}
+ /marked-terminal/5.2.0_marked@4.3.0:
+ resolution: {integrity: sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==}
engines: {node: '>=14.13.1 || >=16.0.0'}
peerDependencies:
- marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0
+ marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
dependencies:
- ansi-escapes: 5.0.0
+ ansi-escapes: 6.2.0
cardinal: 2.1.1
chalk: 5.2.0
cli-table3: 0.6.3
@@ -3415,6 +3785,13 @@ packages:
dependencies:
brace-expansion: 1.1.11
+ /minimatch/5.1.6:
+ resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==}
+ engines: {node: '>=10'}
+ dependencies:
+ brace-expansion: 2.0.1
+ dev: true
+
/minimist-options/4.1.0:
resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
engines: {node: '>= 6'}
@@ -3441,6 +3818,24 @@ packages:
fp-ts: 2.15.0
dev: false
+ /monocle-ts/2.3.13_fp-ts@2.16.0:
+ resolution: {integrity: sha512-D5Ygd3oulEoAm3KuGO0eeJIrhFf1jlQIoEVV2DYsZUMz42j4tGxgct97Aq68+F8w4w4geEnwFa8HayTS/7lpKQ==}
+ peerDependencies:
+ fp-ts: ^2.5.0
+ dependencies:
+ fp-ts: 2.16.0
+ dev: false
+
+ /mri/1.2.0:
+ resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /mrmime/1.0.1:
+ resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==}
+ engines: {node: '>=10'}
+ dev: false
+
/ms/2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
@@ -3467,7 +3862,7 @@ packages:
meow: 8.1.2
promise-events: 0.2.4
semantic-release: 19.0.5
- semver: 7.4.0
+ semver: 7.5.1
signale: 1.4.0
stream-buffers: 3.0.2
unixify: 1.0.0
@@ -3481,7 +3876,7 @@ packages:
engines: {node: '>=12.0'}
dependencies:
queue-microtask: 1.2.3
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
/natural-compare-lite/1.4.0:
resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
@@ -3508,6 +3903,16 @@ packages:
monocle-ts: 2.3.13_fp-ts@2.15.0
dev: false
+ /newtype-ts/0.3.5_pfnvjiba2nr3jdxmyagzf4ncpm:
+ resolution: {integrity: sha512-v83UEQMlVR75yf1OUdoSFssjitxzjZlqBAjiGQ4WJaML8Jdc68LJ+BaSAXUmKY4bNzp7hygkKLYTsDi14PxI2g==}
+ peerDependencies:
+ fp-ts: ^2.0.0
+ monocle-ts: ^2.0.0
+ dependencies:
+ fp-ts: 2.16.0
+ monocle-ts: 2.3.13_fp-ts@2.16.0
+ dev: false
+
/node-domexception/1.0.0:
resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
engines: {node: '>=10.5.0'}
@@ -3518,8 +3923,8 @@ packages:
lodash: 4.17.21
dev: false
- /node-fetch/2.6.7:
- resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
+ /node-fetch/2.6.11:
+ resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==}
engines: {node: 4.x || >=6.0.0}
peerDependencies:
encoding: ^0.1.0
@@ -3543,7 +3948,7 @@ packages:
dependencies:
lodash: 4.17.21
node-fetch: 3.3.1
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
stream-chunks: 1.0.0
/nofilter/3.1.0:
@@ -3565,8 +3970,8 @@ packages:
engines: {node: '>=10'}
dependencies:
hosted-git-info: 4.1.0
- is-core-module: 2.12.0
- semver: 7.4.0
+ is-core-module: 2.12.1
+ semver: 7.5.1
validate-npm-package-license: 3.0.4
dev: false
@@ -3682,6 +4087,11 @@ packages:
resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==}
dev: false
+ /omdomdom/0.2.3:
+ resolution: {integrity: sha512-6UpG+KgintPfqUWe3mYZyqNozwhx6MVv5sZJ05J0jJxRpkUXSxYUD9gmHRa6eTc+BzbhVtGGb+l9NxMb8pVIJA==}
+ engines: {node: '>=14.7.0', npm: '>=6.14.7'}
+ dev: false
+
/once/1.4.0:
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
dependencies:
@@ -3705,6 +4115,10 @@ packages:
type-check: 0.4.0
word-wrap: 1.2.3
+ /opts/2.0.2:
+ resolution: {integrity: sha512-k41FwbcLnlgnFh69f4qdUfvDQ+5vaSDnVPFI/y5XuhKRq97EnVVneO9F1ESVCdiVu4fCS2L8usX3mU331hB7pg==}
+ dev: true
+
/p-cancelable/1.1.0:
resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==}
engines: {node: '>=6'}
@@ -3819,14 +4233,6 @@ packages:
engines: {node: '>=8'}
dev: false
- /p-retry/4.6.2:
- resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==}
- engines: {node: '>=8'}
- dependencies:
- '@types/retry': 0.12.0
- retry: 0.13.1
- dev: false
-
/p-timeout/5.1.0:
resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==}
engines: {node: '>=12'}
@@ -3911,7 +4317,6 @@ packages:
/path-parse/1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
- dev: false
/path-type/4.0.0:
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
@@ -3987,6 +4392,11 @@ packages:
parse-ms: 3.0.0
dev: true
+ /prismjs/1.29.0:
+ resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
+ engines: {node: '>=6'}
+ dev: false
+
/process-nextick-args/2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
dev: false
@@ -4046,6 +4456,12 @@ packages:
engines: {node: '>=8'}
dev: false
+ /randombytes/2.1.0:
+ resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: true
+
/rc/1.2.8:
resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
hasBin: true
@@ -4056,8 +4472,8 @@ packages:
strip-json-comments: 2.0.1
dev: false
- /rdf-canonize/3.3.0:
- resolution: {integrity: sha512-gfSNkMua/VWC1eYbSkVaL/9LQhFeOh0QULwv7Or0f+po8pMgQ1blYQFe1r9Mv2GJZXw88Cz/drnAnB9UlNnHfQ==}
+ /rdf-canonize/3.4.0:
+ resolution: {integrity: sha512-fUeWjrkOO0t1rg7B2fdyDTvngj+9RlUyL92vOdiB7c0FPguWVsniIMjEtHH+meLBO9rzkUlUzBVXgWrjI8P9LA==}
engines: {node: '>=12'}
dependencies:
setimmediate: 1.0.5
@@ -4082,9 +4498,9 @@ packages:
'@rdfjs/term-map': 2.0.0
'@rdfjs/term-set': 2.0.1
'@rdfjs/to-ntriples': 2.0.0
- '@rdfjs/traverser': 0.1.1
+ '@rdfjs/traverser': 0.1.2
clownface: 1.5.1
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
/rdf-js/4.0.2:
resolution: {integrity: sha512-ApvlFa/WsQh8LpPK/6hctQwG06Z9ztQQGWVtrcrf9L6+sejHNXLPOqL+w7q3hF+iL0C4sv3AX1PUtGkLNzyZ0Q==}
@@ -4128,7 +4544,7 @@ packages:
'@types/readable-stream': 2.3.15
buffer: 6.0.3
rdf-data-factory: 1.1.1
- readable-stream: 4.3.0
+ readable-stream: 4.4.0
relative-to-absolute-iri: 1.0.7
saxes: 6.0.0
validate-iri: 1.0.1
@@ -4192,6 +4608,16 @@ packages:
buffer: 6.0.3
events: 3.3.0
process: 0.11.10
+ dev: false
+
+ /readable-stream/4.4.0:
+ resolution: {integrity: sha512-kDMOq0qLtxV9f/SQv522h8cxZBqNZXuXNyjyezmfAAuribMyVXziljpQ/uQhfE1XLg2/TLTW2DsnoE4VAi/krg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ abort-controller: 3.0.0
+ buffer: 6.0.3
+ events: 3.3.0
+ process: 0.11.10
/readdirp/3.6.0:
resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
@@ -4234,7 +4660,7 @@ packages:
resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
engines: {node: '>=14'}
dependencies:
- '@pnpm/npm-conf': 2.1.1
+ '@pnpm/npm-conf': 2.2.0
dev: false
/registry-url/5.1.0:
@@ -4303,14 +4729,18 @@ packages:
resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
engines: {node: '>=8'}
+ /resolve.exports/2.0.2:
+ resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==}
+ engines: {node: '>=10'}
+ dev: true
+
/resolve/1.22.2:
resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
hasBin: true
dependencies:
- is-core-module: 2.12.0
+ is-core-module: 2.12.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
- dev: false
/responselike/1.0.2:
resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==}
@@ -4318,11 +4748,6 @@ packages:
lowercase-keys: 1.0.1
dev: false
- /retry/0.13.1:
- resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
- engines: {node: '>= 4'}
- dev: false
-
/reusify/1.0.4:
resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
@@ -4341,11 +4766,68 @@ packages:
dependencies:
glob: 7.2.3
+ /rollup-plugin-css-only/4.3.0_rollup@3.23.0:
+ resolution: {integrity: sha512-BsiCqJJQzZh2lQiHY5irejRoJ3I1EUFHEi5PjVqsr+EmOh54YrWVwd3YZEXnQJ2+fzlhif0YM/Kf0GuH90GAdQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ rollup: <4
+ dependencies:
+ '@rollup/pluginutils': 5.0.2_rollup@3.23.0
+ rollup: 3.23.0
+ dev: true
+
+ /rollup-plugin-livereload/2.0.5:
+ resolution: {integrity: sha512-vqQZ/UQowTW7VoiKEM5ouNW90wE5/GZLfdWuR0ELxyKOJUIaj+uismPZZaICU4DnWPVjnpCDDxEqwU7pcKY/PA==}
+ engines: {node: '>=8.3'}
+ dependencies:
+ livereload: 0.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+ dev: true
+
+ /rollup-plugin-polyfill-node/0.12.0_rollup@3.23.0:
+ resolution: {integrity: sha512-PWEVfDxLEKt8JX1nZ0NkUAgXpkZMTb85rO/Ru9AQ69wYW8VUCfDgP4CGRXXWYni5wDF0vIeR1UoF3Jmw/Lt3Ug==}
+ peerDependencies:
+ rollup: ^1.20.0 || ^2.0.0 || ^3.0.0
+ dependencies:
+ '@rollup/plugin-inject': 5.0.3_rollup@3.23.0
+ rollup: 3.23.0
+ dev: true
+
+ /rollup-plugin-svelte/7.1.5_sz7s4dmjv6zmjgdyx7w7zqtk6e:
+ resolution: {integrity: sha512-TXdtwPW/0wifaQvFf9SG36xbJYi8ok1AcSZe21u0vKcVrfc3JB7NOhwSWa9bQC3ltnBNsmNdga8bHqcnezzEug==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ rollup: '>=2.0.0'
+ svelte: '>=3.5.0'
+ dependencies:
+ '@rollup/pluginutils': 4.2.1
+ resolve.exports: 2.0.2
+ rollup: 3.23.0
+ svelte: 3.59.1
+ dev: true
+
+ /rollup/3.23.0:
+ resolution: {integrity: sha512-h31UlwEi7FHihLe1zbk+3Q7z1k/84rb9BSwmBSr/XjOCEaBJ2YyedQDuM0t/kfOS0IxM+vk1/zI9XxYj9V+NJQ==}
+ engines: {node: '>=14.18.0', npm: '>=8.0.0'}
+ hasBin: true
+ optionalDependencies:
+ fsevents: 2.3.2
+ dev: true
+
/run-parallel/1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
dependencies:
queue-microtask: 1.2.3
+ /sade/1.8.1:
+ resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
+ engines: {node: '>=6'}
+ dependencies:
+ mri: 1.2.0
+ dev: false
+
/safe-buffer/5.1.2:
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
@@ -4370,7 +4852,7 @@ packages:
dependencies:
'@semantic-release/commit-analyzer': 9.0.2_semantic-release@19.0.5
'@semantic-release/error': 3.0.0
- '@semantic-release/github': 8.0.7_semantic-release@19.0.5
+ '@semantic-release/github': 8.1.0_semantic-release@19.0.5
'@semantic-release/npm': 9.0.2_semantic-release@19.0.5
'@semantic-release/release-notes-generator': 10.0.3_semantic-release@19.0.5
aggregate-error: 3.1.0
@@ -4386,13 +4868,13 @@ packages:
hosted-git-info: 4.1.0
lodash: 4.17.21
marked: 4.3.0
- marked-terminal: 5.1.1_marked@4.3.0
+ marked-terminal: 5.2.0_marked@4.3.0
micromatch: 4.0.5
p-each-series: 2.2.0
p-reduce: 2.1.0
read-pkg-up: 7.0.1
resolve-from: 5.0.0
- semver: 7.4.0
+ semver: 7.5.1
semver-diff: 3.1.1
signale: 1.4.0
yargs: 16.2.0
@@ -4408,6 +4890,11 @@ packages:
semver: 6.3.0
dev: false
+ /semiver/1.1.0:
+ resolution: {integrity: sha512-QNI2ChmuioGC1/xjyYwyZYADILWyW6AmS1UH6gDj/SFUUUS4MBAWs/7mxnkRPc/F4iHezDP+O8t0dO8WHiEOdg==}
+ engines: {node: '>=6'}
+ dev: false
+
/semver-diff/3.1.1:
resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==}
engines: {node: '>=8'}
@@ -4437,6 +4924,14 @@ packages:
dependencies:
lru-cache: 6.0.0
+ /semver/7.5.1:
+ resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ lru-cache: 6.0.0
+ dev: false
+
/serialize-error/7.0.1:
resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==}
engines: {node: '>=10'}
@@ -4444,6 +4939,12 @@ packages:
type-fest: 0.13.1
dev: true
+ /serialize-javascript/6.0.1:
+ resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==}
+ dependencies:
+ randombytes: 2.1.0
+ dev: true
+
/setimmediate/1.0.5:
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
@@ -4481,6 +4982,30 @@ packages:
pkg-conf: 2.1.0
dev: false
+ /sirv-cli/2.0.2:
+ resolution: {integrity: sha512-OtSJDwxsF1NWHc7ps3Sa0s+dPtP15iQNJzfKVz+MxkEo3z72mCD+yu30ct79rPr0CaV1HXSOBp+MIY5uIhHZ1A==}
+ engines: {node: '>= 10'}
+ hasBin: true
+ dependencies:
+ console-clear: 1.1.1
+ get-port: 3.2.0
+ kleur: 4.1.5
+ local-access: 1.1.0
+ sade: 1.8.1
+ semiver: 1.1.0
+ sirv: 2.0.3
+ tinydate: 1.3.0
+ dev: false
+
+ /sirv/2.0.3:
+ resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@polka/url': 1.0.0-next.21
+ mrmime: 1.0.1
+ totalist: 3.0.1
+ dev: false
+
/slash/3.0.0:
resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
engines: {node: '>=8'}
@@ -4507,10 +5032,20 @@ packages:
is-fullwidth-code-point: 4.0.0
dev: true
+ /smob/1.4.0:
+ resolution: {integrity: sha512-MqR3fVulhjWuRNSMydnTlweu38UhQ0HXM4buStD/S3mc/BzX3CuM9OmhyQpmtYCvoYdl5ris6TI0ZqH355Ymqg==}
+ dev: true
+
+ /source-map-support/0.5.21:
+ resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
+ dependencies:
+ buffer-from: 1.1.2
+ source-map: 0.6.1
+ dev: true
+
/source-map/0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
- dev: false
/spawn-error-forwarder/1.0.0:
resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==}
@@ -4713,7 +5248,11 @@ packages:
/supports-preserve-symlinks-flag/1.0.0:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
- dev: false
+
+ /svelte/3.59.1:
+ resolution: {integrity: sha512-pKj8fEBmqf6mq3/NfrB9SLtcJcUvjYSWyePlfCqN9gujLB25RitWK8PvFzlwim6hD/We35KbPlRteuA6rnPGcQ==}
+ engines: {node: '>= 8'}
+ dev: true
/table/6.8.1:
resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==}
@@ -4747,6 +5286,17 @@ packages:
unique-string: 2.0.0
dev: false
+ /terser/5.17.7:
+ resolution: {integrity: sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/source-map': 0.3.3
+ acorn: 8.8.2
+ commander: 2.20.3
+ source-map-support: 0.5.21
+ dev: true
+
/text-extensions/1.9.0:
resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==}
engines: {node: '>=0.10'}
@@ -4777,6 +5327,11 @@ packages:
engines: {node: '>=4'}
dev: true
+ /tinydate/1.3.0:
+ resolution: {integrity: sha512-7cR8rLy2QhYHpsBDBVYnnWXm8uRTr38RoZakFSW7Bs7PzfMPNZthuMLkwqZv7MTu8lhQ91cOFYS5a7iFj2oR3w==}
+ engines: {node: '>=4'}
+ dev: false
+
/to-readable-stream/1.0.0:
resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==}
engines: {node: '>=6'}
@@ -4788,6 +5343,11 @@ packages:
dependencies:
is-number: 7.0.0
+ /totalist/3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+ dev: false
+
/tough-cookie/2.5.0:
resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==}
engines: {node: '>=0.8'}
@@ -4905,9 +5465,9 @@ packages:
engines: {node: '>=8'}
dev: false
- /type-fest/1.4.0:
- resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
- engines: {node: '>=10'}
+ /type-fest/3.11.1:
+ resolution: {integrity: sha512-aCuRNRERRVh33lgQaJRlUxZqzfhzwTrsE98Mc3o3VXqmiaQdHacgUtJ0esp+7MvZ92qhtzKPeusaX6vIEcoreA==}
+ engines: {node: '>=14.16'}
dev: false
/typescript/4.9.5:
@@ -4924,9 +5484,9 @@ packages:
dev: false
optional: true
- /undici/5.21.2:
- resolution: {integrity: sha512-f6pTQ9RF4DQtwoWSaC42P/NKlUjvezVvd9r155ohqkwFNRyBKM3f3pcty3ouusefNRyM25XhIQEbeQ46sZDJfQ==}
- engines: {node: '>=12.18'}
+ /undici/5.22.1:
+ resolution: {integrity: sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==}
+ engines: {node: '>=14.0'}
dependencies:
busboy: 1.6.0
dev: false
@@ -4959,6 +5519,13 @@ packages:
normalize-path: 2.1.1
dev: false
+ /upgraded-element/0.6.5:
+ resolution: {integrity: sha512-H51cFawepiZXvwmk8g5AQfmu2K1UhO9fe7Ed3XGdOVzROwtxbqmqxsbf/AsZ5hYlk3c47zMLj2vanGvZ+kXzkQ==}
+ engines: {node: '>=12.0.0', npm: '>=6.0.0'}
+ dependencies:
+ omdomdom: 0.2.3
+ dev: false
+
/uri-js/4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
dependencies:
@@ -5080,6 +5647,19 @@ packages:
signal-exit: 3.0.7
dev: true
+ /ws/7.5.9:
+ resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==}
+ 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
+ dev: true
+
/xmlchars/2.2.0:
resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
dev: false
@@ -5155,3 +5735,17 @@ packages:
resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
engines: {node: '>=12.20'}
dev: true
+
+ github.com/source-data/render-rev/e77d8a0840fa6a33ea6663aa57dee6ff0930faed_en4jrmmtiggxba5g6f4h6b5bdu:
+ resolution: {tarball: https://codeload.github.com/source-data/render-rev/tar.gz/e77d8a0840fa6a33ea6663aa57dee6ff0930faed}
+ id: github.com/source-data/render-rev/e77d8a0840fa6a33ea6663aa57dee6ff0930faed
+ name: '@source-data/render-rev'
+ version: 0.1.34
+ dependencies:
+ '@spider-ui/tooltip': 0.2.7_en4jrmmtiggxba5g6f4h6b5bdu
+ dompurify: 2.4.5
+ lit: 2.7.4
+ transitivePeerDependencies:
+ - '@spider-ui/global-event-registry'
+ - upgraded-element
+ dev: false
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index 4f29da19..1317da47 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -1,3 +1,4 @@
packages:
- 'packages/ts-sdk'
- 'packages/ts-etl'
+ - 'packages/spa'