diff --git a/angular.json b/angular.json
index cf348ef8d5..2871a41759 100644
--- a/angular.json
+++ b/angular.json
@@ -30,7 +30,12 @@
"lodash",
"jwt-decode",
"uuid",
- "zone.js"
+ "zone.js",
+ "orejime",
+ "leaflet",
+ "leaflet-providers",
+ "leaflet.markercluster",
+ "date-fns-tz"
],
"outputPath": "dist/browser",
"index": "src/index.html",
@@ -59,6 +64,11 @@
"inject": false,
"bundleName": "dspace-theme"
},
+ {
+ "input": "src/themes/krex/styles/theme.scss",
+ "inject": false,
+ "bundleName": "krex-theme"
+ },
"node_modules/leaflet/dist/leaflet.css",
"node_modules/leaflet.markercluster/dist/MarkerCluster.Default.css",
"node_modules/leaflet.markercluster/dist/MarkerCluster.css"
diff --git a/config/config.example.yml b/config/config.example.yml
index c916833916..c8fe8f8270 100644
--- a/config/config.example.yml
+++ b/config/config.example.yml
@@ -479,6 +479,13 @@ themes:
attributes:
rel: manifest
href: assets/dspace/images/favicons/manifest.webmanifest
+ - tagName: meta
+ -name: krex
+ # - name:
+ # - tagName: krex
+ # attributes:
+ # rel: icon
+ # sizes: any
# The default bundles that should always be displayed as suggestions when you upload a new bundle
bundle:
diff --git a/config/config.yml b/config/config.yml
index 109db60ca9..5f51e54325 100644
--- a/config/config.yml
+++ b/config/config.yml
@@ -1,5 +1,10 @@
+
rest:
ssl: true
host: sandbox.dspace.org
port: 443
nameSpace: /server
+
+themes:
+ - name: krex
+ extends: dspace
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index c1492dd3ff..7d2c88d267 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -75,6 +75,7 @@
"ngx-skeleton-loader": "^11.3.0",
"ngx-ui-switch": "^16.1.0",
"nouislider": "^15.7.1",
+ "npm": "^11.10.1",
"orejime": "^2.3.1",
"pem": "1.14.8",
"reflect-metadata": "^0.2.2",
@@ -93,7 +94,7 @@
"@angular-eslint/schematics": "^20.7.0",
"@angular-eslint/template-parser": "^20.6.0",
"@angular-eslint/utils": "^20.7.0",
- "@angular/cli": "^20.3.15",
+ "@angular/cli": "^20.3.17",
"@angular/compiler-cli": "^20.3.12",
"@cypress/schematic": "^1.5.0",
"@fortawesome/fontawesome-free": "^6.7.2",
@@ -574,22 +575,6 @@
"@angular/compiler-cli": "^20.0.0"
}
},
- "node_modules/@angular-builders/custom-webpack/node_modules/@angular-devkit/architect": {
- "version": "0.2003.16",
- "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2003.16.tgz",
- "integrity": "sha512-W7FPVhZzIeHVP/duuKepfZU66LpQ0k9YMHFhrGpzaUuHPOwKmza6+pjVvvti3g6jzT8b1uVlb+XlYgNPZ5jrPQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@angular-devkit/core": "20.3.16",
- "rxjs": "7.8.2"
- },
- "engines": {
- "node": "^20.19.0 || ^22.12.0 || >=24.0.0",
- "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
- "yarn": ">= 1.13.0"
- }
- },
"node_modules/@angular-builders/custom-webpack/node_modules/@angular-devkit/core": {
"version": "20.3.16",
"resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.16.tgz",
@@ -653,13 +638,13 @@
}
},
"node_modules/@angular-devkit/architect": {
- "version": "0.2003.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2003.15.tgz",
- "integrity": "sha512-HmGnUTLVwpvOFilc3gTP6CL9o+UbkVyu9S4WENkQbInbW3zp54lkzY71uWJIP7QvuXPa+bS4WHEmoGNQtNvv1A==",
+ "version": "0.2003.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2003.17.tgz",
+ "integrity": "sha512-e6Mo4xFIhmtPLhjeai3kBW0yViHEtZ+210tcWfuEnPGRgr8X4rMxkYQRAT2X9dqgtsG+TmVZFHAN/Gbs6Tvr7Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@angular-devkit/core": "20.3.15",
+ "@angular-devkit/core": "20.3.17",
"rxjs": "7.8.2"
},
"engines": {
@@ -669,9 +654,9 @@
}
},
"node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.15.tgz",
- "integrity": "sha512-s7sE4S5Hy62dLrtHwizbZaMcupAE8fPhm6rF+jBkhHZ75zXGhGzXP8WKFztYCAuGnis4pPnGSEKP/xVTc2lw6Q==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.17.tgz",
+ "integrity": "sha512-xlBT8rmyTjb5P/p6wDHp0EleagptjSHGNsJwqSY4FdIG0p59ezAbb2wbQGqkYDxuoptFSLUpAGE7sNWZ5OiLWw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1441,13 +1426,13 @@
}
},
"node_modules/@angular-devkit/schematics": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.15.tgz",
- "integrity": "sha512-xMN1fyuhhP8Y5sNlmQvl4nMiOouHTKPkLR0zlhu5z6fHuwxxlverh31Gpq3eFzPHqmOzzb2TkgYCptCFXsXcrg==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.17.tgz",
+ "integrity": "sha512-aqvxNwBbRKmbQfv/j6e0ddTjhs2vIoQnzIVAqFLMvuAQmnTCHP+Kw26wS4OQMuGbDTUZ9SxPy4eSNu+vBoc3fA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@angular-devkit/core": "20.3.15",
+ "@angular-devkit/core": "20.3.17",
"jsonc-parser": "3.3.1",
"magic-string": "0.30.17",
"ora": "8.2.0",
@@ -1460,9 +1445,9 @@
}
},
"node_modules/@angular-devkit/schematics/node_modules/@angular-devkit/core": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.15.tgz",
- "integrity": "sha512-s7sE4S5Hy62dLrtHwizbZaMcupAE8fPhm6rF+jBkhHZ75zXGhGzXP8WKFztYCAuGnis4pPnGSEKP/xVTc2lw6Q==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.17.tgz",
+ "integrity": "sha512-xlBT8rmyTjb5P/p6wDHp0EleagptjSHGNsJwqSY4FdIG0p59ezAbb2wbQGqkYDxuoptFSLUpAGE7sNWZ5OiLWw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2324,19 +2309,19 @@
}
},
"node_modules/@angular/cli": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-20.3.15.tgz",
- "integrity": "sha512-OgPMhXtNLXds0wIw6YU5/X3dU8TlAZbmPy6LYHs9ifF8K4pXpbm27vWGSZhUevSf66dMvfz8wB/aE2e0s2e5Ng==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-20.3.17.tgz",
+ "integrity": "sha512-JunMKV78Eo7qXRISgDZb35i/Khoq+5JSfNia7ngoIrEIOxcdY+xeeHt3SV1KCfyu9/gkLWEyZMulI5L7+hTVbw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@angular-devkit/architect": "0.2003.15",
- "@angular-devkit/core": "20.3.15",
- "@angular-devkit/schematics": "20.3.15",
+ "@angular-devkit/architect": "0.2003.17",
+ "@angular-devkit/core": "20.3.17",
+ "@angular-devkit/schematics": "20.3.17",
"@inquirer/prompts": "7.8.2",
"@listr2/prompt-adapter-inquirer": "3.0.1",
- "@modelcontextprotocol/sdk": "1.25.2",
- "@schematics/angular": "20.3.15",
+ "@modelcontextprotocol/sdk": "1.26.0",
+ "@schematics/angular": "20.3.17",
"@yarnpkg/lockfile": "1.1.0",
"algoliasearch": "5.35.0",
"ini": "5.0.0",
@@ -2359,9 +2344,9 @@
}
},
"node_modules/@angular/cli/node_modules/@angular-devkit/core": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.15.tgz",
- "integrity": "sha512-s7sE4S5Hy62dLrtHwizbZaMcupAE8fPhm6rF+jBkhHZ75zXGhGzXP8WKFztYCAuGnis4pPnGSEKP/xVTc2lw6Q==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.17.tgz",
+ "integrity": "sha512-xlBT8rmyTjb5P/p6wDHp0EleagptjSHGNsJwqSY4FdIG0p59ezAbb2wbQGqkYDxuoptFSLUpAGE7sNWZ5OiLWw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -7334,13 +7319,13 @@
}
},
"node_modules/@modelcontextprotocol/sdk": {
- "version": "1.25.2",
- "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.25.2.tgz",
- "integrity": "sha512-LZFeo4F9M5qOhC/Uc1aQSrBHxMrvxett+9KLHt7OhcExtoiRN9DKgbZffMP/nxjutWDQpfMDfP3nkHI4X9ijww==",
+ "version": "1.26.0",
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.26.0.tgz",
+ "integrity": "sha512-Y5RmPncpiDtTXDbLKswIJzTqu2hyBKxTNsgKqKclDbhIgg1wgtf1fRuvxgTnRfcnxtvvgbIEcqUOzZrJ6iSReg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@hono/node-server": "^1.19.7",
+ "@hono/node-server": "^1.19.9",
"ajv": "^8.17.1",
"ajv-formats": "^3.0.1",
"content-type": "^1.0.5",
@@ -7348,14 +7333,15 @@
"cross-spawn": "^7.0.5",
"eventsource": "^3.0.2",
"eventsource-parser": "^3.0.0",
- "express": "^5.0.1",
- "express-rate-limit": "^7.5.0",
- "jose": "^6.1.1",
+ "express": "^5.2.1",
+ "express-rate-limit": "^8.2.1",
+ "hono": "^4.11.4",
+ "jose": "^6.1.3",
"json-schema-typed": "^8.0.2",
"pkce-challenge": "^5.0.0",
"raw-body": "^3.0.0",
"zod": "^3.25 || ^4.0",
- "zod-to-json-schema": "^3.25.0"
+ "zod-to-json-schema": "^3.25.1"
},
"engines": {
"node": ">=18"
@@ -7480,22 +7466,6 @@
"url": "https://opencollective.com/express"
}
},
- "node_modules/@modelcontextprotocol/sdk/node_modules/express-rate-limit": {
- "version": "7.5.1",
- "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.1.tgz",
- "integrity": "sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 16"
- },
- "funding": {
- "url": "https://github.com/sponsors/express-rate-limit"
- },
- "peerDependencies": {
- "express": ">= 4.11"
- }
- },
"node_modules/@modelcontextprotocol/sdk/node_modules/finalhandler": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
@@ -7617,9 +7587,9 @@
}
},
"node_modules/@modelcontextprotocol/sdk/node_modules/qs": {
- "version": "6.14.1",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz",
- "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==",
+ "version": "6.15.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.0.tgz",
+ "integrity": "sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==",
"dev": true,
"license": "BSD-3-Clause",
"dependencies": {
@@ -9352,14 +9322,14 @@
"dev": true
},
"node_modules/@schematics/angular": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.3.15.tgz",
- "integrity": "sha512-WkhW1HO8pA8JT8e27tvjQHQg8eO5KaOz+WsGkN00RyL5DwHgPSzu4a3eYug+b3rW7OGFub7jadXBuGSrzqgonA==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.3.17.tgz",
+ "integrity": "sha512-cTqiKBXZRxRfmV6rzjceu7swQ1N/KUMuS+jgoLqRZqPFNIfe7SDk4L5ou889q4wyfEMO4tED4dzjK30jLJ98SA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@angular-devkit/core": "20.3.15",
- "@angular-devkit/schematics": "20.3.15",
+ "@angular-devkit/core": "20.3.17",
+ "@angular-devkit/schematics": "20.3.17",
"jsonc-parser": "3.3.1"
},
"engines": {
@@ -9369,9 +9339,9 @@
}
},
"node_modules/@schematics/angular/node_modules/@angular-devkit/core": {
- "version": "20.3.15",
- "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.15.tgz",
- "integrity": "sha512-s7sE4S5Hy62dLrtHwizbZaMcupAE8fPhm6rF+jBkhHZ75zXGhGzXP8WKFztYCAuGnis4pPnGSEKP/xVTc2lw6Q==",
+ "version": "20.3.17",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.17.tgz",
+ "integrity": "sha512-xlBT8rmyTjb5P/p6wDHp0EleagptjSHGNsJwqSY4FdIG0p59ezAbb2wbQGqkYDxuoptFSLUpAGE7sNWZ5OiLWw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -15770,12 +15740,11 @@
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"node_modules/hono": {
- "version": "4.11.9",
- "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.9.tgz",
- "integrity": "sha512-Eaw2YTGM6WOxA6CXbckaEvslr2Ne4NFsKrvc0v97JD5awbmeBLO5w9Ho9L9kmKonrwF9RJlW6BxT1PVv/agBHQ==",
+ "version": "4.12.2",
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.2.tgz",
+ "integrity": "sha512-gJnaDHXKDayjt8ue0n8Gs0A007yKXj4Xzb8+cNjZeYsSzzwKc0Lr+OZgYwVfB0pHfUs17EPoLvrOsEaJ9mj+Tg==",
"dev": true,
"license": "MIT",
- "peer": true,
"engines": {
"node": ">=16.9.0"
}
@@ -19968,6 +19937,160 @@
"resolved": "https://registry.npmjs.org/nouislider/-/nouislider-15.8.1.tgz",
"integrity": "sha512-93TweAi8kqntHJSPiSWQ1o/uZ29VWOmal9YKb6KKGGlCkugaNfAupT7o1qTHqdJvNQ7S0su5rO6qRFCjP8fxtw=="
},
+ "node_modules/npm": {
+ "version": "11.10.1",
+ "resolved": "https://registry.npmjs.org/npm/-/npm-11.10.1.tgz",
+ "integrity": "sha512-woavuY2OgDFQ1K/tB9QHsUuW989nKfvsKTN/h5qGyS+3+BhvXN/DA2TNzx569JaFfTqrET5bEQNHwVhFk+U1gg==",
+ "bundleDependencies": [
+ "@isaacs/string-locale-compare",
+ "@npmcli/arborist",
+ "@npmcli/config",
+ "@npmcli/fs",
+ "@npmcli/map-workspaces",
+ "@npmcli/metavuln-calculator",
+ "@npmcli/package-json",
+ "@npmcli/promise-spawn",
+ "@npmcli/redact",
+ "@npmcli/run-script",
+ "@sigstore/tuf",
+ "abbrev",
+ "archy",
+ "cacache",
+ "chalk",
+ "ci-info",
+ "fastest-levenshtein",
+ "fs-minipass",
+ "glob",
+ "graceful-fs",
+ "hosted-git-info",
+ "ini",
+ "init-package-json",
+ "is-cidr",
+ "json-parse-even-better-errors",
+ "libnpmaccess",
+ "libnpmdiff",
+ "libnpmexec",
+ "libnpmfund",
+ "libnpmorg",
+ "libnpmpack",
+ "libnpmpublish",
+ "libnpmsearch",
+ "libnpmteam",
+ "libnpmversion",
+ "make-fetch-happen",
+ "minimatch",
+ "minipass",
+ "minipass-pipeline",
+ "ms",
+ "node-gyp",
+ "nopt",
+ "npm-audit-report",
+ "npm-install-checks",
+ "npm-package-arg",
+ "npm-pick-manifest",
+ "npm-profile",
+ "npm-registry-fetch",
+ "npm-user-validate",
+ "p-map",
+ "pacote",
+ "parse-conflict-json",
+ "proc-log",
+ "qrcode-terminal",
+ "read",
+ "semver",
+ "spdx-expression-parse",
+ "ssri",
+ "supports-color",
+ "tar",
+ "text-table",
+ "tiny-relative-date",
+ "treeverse",
+ "validate-npm-package-name",
+ "which"
+ ],
+ "license": "Artistic-2.0",
+ "workspaces": [
+ "docs",
+ "smoke-tests",
+ "mock-globals",
+ "mock-registry",
+ "workspaces/*"
+ ],
+ "dependencies": {
+ "@isaacs/string-locale-compare": "^1.1.0",
+ "@npmcli/arborist": "^9.3.1",
+ "@npmcli/config": "^10.7.1",
+ "@npmcli/fs": "^5.0.0",
+ "@npmcli/map-workspaces": "^5.0.3",
+ "@npmcli/metavuln-calculator": "^9.0.3",
+ "@npmcli/package-json": "^7.0.5",
+ "@npmcli/promise-spawn": "^9.0.1",
+ "@npmcli/redact": "^4.0.0",
+ "@npmcli/run-script": "^10.0.3",
+ "@sigstore/tuf": "^4.0.1",
+ "abbrev": "^4.0.0",
+ "archy": "~1.0.0",
+ "cacache": "^20.0.3",
+ "chalk": "^5.6.2",
+ "ci-info": "^4.4.0",
+ "fastest-levenshtein": "^1.0.16",
+ "fs-minipass": "^3.0.3",
+ "glob": "^13.0.6",
+ "graceful-fs": "^4.2.11",
+ "hosted-git-info": "^9.0.2",
+ "ini": "^6.0.0",
+ "init-package-json": "^8.2.5",
+ "is-cidr": "^6.0.3",
+ "json-parse-even-better-errors": "^5.0.0",
+ "libnpmaccess": "^10.0.3",
+ "libnpmdiff": "^8.1.2",
+ "libnpmexec": "^10.2.2",
+ "libnpmfund": "^7.0.16",
+ "libnpmorg": "^8.0.1",
+ "libnpmpack": "^9.1.2",
+ "libnpmpublish": "^11.1.3",
+ "libnpmsearch": "^9.0.1",
+ "libnpmteam": "^8.0.2",
+ "libnpmversion": "^8.0.3",
+ "make-fetch-happen": "^15.0.3",
+ "minimatch": "^10.2.2",
+ "minipass": "^7.1.3",
+ "minipass-pipeline": "^1.2.4",
+ "ms": "^2.1.2",
+ "node-gyp": "^12.2.0",
+ "nopt": "^9.0.0",
+ "npm-audit-report": "^7.0.0",
+ "npm-install-checks": "^8.0.0",
+ "npm-package-arg": "^13.0.2",
+ "npm-pick-manifest": "^11.0.3",
+ "npm-profile": "^12.0.1",
+ "npm-registry-fetch": "^19.1.1",
+ "npm-user-validate": "^4.0.0",
+ "p-map": "^7.0.4",
+ "pacote": "^21.3.1",
+ "parse-conflict-json": "^5.0.1",
+ "proc-log": "^6.1.0",
+ "qrcode-terminal": "^0.12.0",
+ "read": "^5.0.1",
+ "semver": "^7.7.4",
+ "spdx-expression-parse": "^4.0.0",
+ "ssri": "^13.0.1",
+ "supports-color": "^10.2.2",
+ "tar": "^7.5.9",
+ "text-table": "~0.2.0",
+ "tiny-relative-date": "^2.0.2",
+ "treeverse": "^3.0.0",
+ "validate-npm-package-name": "^7.0.2",
+ "which": "^6.0.1"
+ },
+ "bin": {
+ "npm": "bin/npm-cli.js",
+ "npx": "bin/npx-cli.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
"node_modules/npm-bundled": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-5.0.0.tgz",
@@ -20125,6 +20248,1676 @@
"node": ">=8"
}
},
+ "node_modules/npm/node_modules/@isaacs/fs-minipass": {
+ "version": "4.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.4"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/@isaacs/string-locale-compare": {
+ "version": "1.1.0",
+ "inBundle": true,
+ "license": "ISC"
+ },
+ "node_modules/npm/node_modules/@npmcli/agent": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "http-proxy-agent": "^7.0.0",
+ "https-proxy-agent": "^7.0.1",
+ "lru-cache": "^11.2.1",
+ "socks-proxy-agent": "^8.0.3"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/arborist": {
+ "version": "9.3.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@isaacs/string-locale-compare": "^1.1.0",
+ "@npmcli/fs": "^5.0.0",
+ "@npmcli/installed-package-contents": "^4.0.0",
+ "@npmcli/map-workspaces": "^5.0.0",
+ "@npmcli/metavuln-calculator": "^9.0.2",
+ "@npmcli/name-from-folder": "^4.0.0",
+ "@npmcli/node-gyp": "^5.0.0",
+ "@npmcli/package-json": "^7.0.0",
+ "@npmcli/query": "^5.0.0",
+ "@npmcli/redact": "^4.0.0",
+ "@npmcli/run-script": "^10.0.0",
+ "bin-links": "^6.0.0",
+ "cacache": "^20.0.1",
+ "common-ancestor-path": "^2.0.0",
+ "hosted-git-info": "^9.0.0",
+ "json-stringify-nice": "^1.1.4",
+ "lru-cache": "^11.2.1",
+ "minimatch": "^10.0.3",
+ "nopt": "^9.0.0",
+ "npm-install-checks": "^8.0.0",
+ "npm-package-arg": "^13.0.0",
+ "npm-pick-manifest": "^11.0.1",
+ "npm-registry-fetch": "^19.0.0",
+ "pacote": "^21.0.2",
+ "parse-conflict-json": "^5.0.1",
+ "proc-log": "^6.0.0",
+ "proggy": "^4.0.0",
+ "promise-all-reject-late": "^1.0.0",
+ "promise-call-limit": "^3.0.1",
+ "semver": "^7.3.7",
+ "ssri": "^13.0.0",
+ "treeverse": "^3.0.0",
+ "walk-up-path": "^4.0.0"
+ },
+ "bin": {
+ "arborist": "bin/index.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/config": {
+ "version": "10.7.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/map-workspaces": "^5.0.0",
+ "@npmcli/package-json": "^7.0.0",
+ "ci-info": "^4.0.0",
+ "ini": "^6.0.0",
+ "nopt": "^9.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.5",
+ "walk-up-path": "^4.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/fs": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/git": {
+ "version": "7.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/promise-spawn": "^9.0.0",
+ "ini": "^6.0.0",
+ "lru-cache": "^11.2.1",
+ "npm-pick-manifest": "^11.0.1",
+ "proc-log": "^6.0.0",
+ "promise-retry": "^2.0.1",
+ "semver": "^7.3.5",
+ "which": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/installed-package-contents": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-bundled": "^5.0.0",
+ "npm-normalize-package-bin": "^5.0.0"
+ },
+ "bin": {
+ "installed-package-contents": "bin/index.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/map-workspaces": {
+ "version": "5.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/name-from-folder": "^4.0.0",
+ "@npmcli/package-json": "^7.0.0",
+ "glob": "^13.0.0",
+ "minimatch": "^10.0.3"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/metavuln-calculator": {
+ "version": "9.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "cacache": "^20.0.0",
+ "json-parse-even-better-errors": "^5.0.0",
+ "pacote": "^21.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/name-from-folder": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/node-gyp": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/package-json": {
+ "version": "7.0.5",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/git": "^7.0.0",
+ "glob": "^13.0.0",
+ "hosted-git-info": "^9.0.0",
+ "json-parse-even-better-errors": "^5.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.5.3",
+ "spdx-expression-parse": "^4.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/promise-spawn": {
+ "version": "9.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "which": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/query": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "postcss-selector-parser": "^7.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/redact": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@npmcli/run-script": {
+ "version": "10.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/node-gyp": "^5.0.0",
+ "@npmcli/package-json": "^7.0.0",
+ "@npmcli/promise-spawn": "^9.0.0",
+ "node-gyp": "^12.1.0",
+ "proc-log": "^6.0.0",
+ "which": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/bundle": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/protobuf-specs": "^0.5.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/core": {
+ "version": "3.1.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/protobuf-specs": {
+ "version": "0.5.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.17.0 || >=20.5.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/sign": {
+ "version": "4.1.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^4.0.0",
+ "@sigstore/core": "^3.1.0",
+ "@sigstore/protobuf-specs": "^0.5.0",
+ "make-fetch-happen": "^15.0.3",
+ "proc-log": "^6.1.0",
+ "promise-retry": "^2.0.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/tuf": {
+ "version": "4.0.1",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/protobuf-specs": "^0.5.0",
+ "tuf-js": "^4.1.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@sigstore/verify": {
+ "version": "3.1.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^4.0.0",
+ "@sigstore/core": "^3.1.0",
+ "@sigstore/protobuf-specs": "^0.5.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/@tufjs/canonical-json": {
+ "version": "2.0.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/@tufjs/models": {
+ "version": "4.1.0",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "@tufjs/canonical-json": "2.0.0",
+ "minimatch": "^10.1.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/abbrev": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/agent-base": {
+ "version": "7.1.4",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/npm/node_modules/aproba": {
+ "version": "2.1.0",
+ "inBundle": true,
+ "license": "ISC"
+ },
+ "node_modules/npm/node_modules/archy": {
+ "version": "1.0.0",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/balanced-match": {
+ "version": "4.0.3",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/npm/node_modules/bin-links": {
+ "version": "6.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "cmd-shim": "^8.0.0",
+ "npm-normalize-package-bin": "^5.0.0",
+ "proc-log": "^6.0.0",
+ "read-cmd-shim": "^6.0.0",
+ "write-file-atomic": "^7.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/binary-extensions": {
+ "version": "3.1.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/npm/node_modules/brace-expansion": {
+ "version": "5.0.2",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/npm/node_modules/cacache": {
+ "version": "20.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/fs": "^5.0.0",
+ "fs-minipass": "^3.0.0",
+ "glob": "^13.0.0",
+ "lru-cache": "^11.1.0",
+ "minipass": "^7.0.3",
+ "minipass-collect": "^2.0.1",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "p-map": "^7.0.2",
+ "ssri": "^13.0.0",
+ "unique-filename": "^5.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/chalk": {
+ "version": "5.6.2",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/npm/node_modules/chownr": {
+ "version": "3.0.0",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/npm/node_modules/ci-info": {
+ "version": "4.4.0",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/sibiraj-s"
+ }
+ ],
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/npm/node_modules/cidr-regex": {
+ "version": "5.0.3",
+ "inBundle": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/npm/node_modules/cmd-shim": {
+ "version": "8.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/common-ancestor-path": {
+ "version": "2.0.0",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">= 18"
+ }
+ },
+ "node_modules/npm/node_modules/cssesc": {
+ "version": "3.0.0",
+ "inBundle": true,
+ "license": "MIT",
+ "bin": {
+ "cssesc": "bin/cssesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/npm/node_modules/debug": {
+ "version": "4.4.3",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/npm/node_modules/diff": {
+ "version": "8.0.3",
+ "inBundle": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.3.1"
+ }
+ },
+ "node_modules/npm/node_modules/encoding": {
+ "version": "0.1.13",
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "iconv-lite": "^0.6.2"
+ }
+ },
+ "node_modules/npm/node_modules/env-paths": {
+ "version": "2.2.1",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/npm/node_modules/err-code": {
+ "version": "2.0.3",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/exponential-backoff": {
+ "version": "3.1.3",
+ "inBundle": true,
+ "license": "Apache-2.0"
+ },
+ "node_modules/npm/node_modules/fastest-levenshtein": {
+ "version": "1.0.16",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4.9.1"
+ }
+ },
+ "node_modules/npm/node_modules/fs-minipass": {
+ "version": "3.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/glob": {
+ "version": "13.0.6",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "minimatch": "^10.2.2",
+ "minipass": "^7.1.3",
+ "path-scurry": "^2.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "inBundle": true,
+ "license": "ISC"
+ },
+ "node_modules/npm/node_modules/hosted-git-info": {
+ "version": "9.0.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "lru-cache": "^11.1.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/http-cache-semantics": {
+ "version": "4.2.0",
+ "inBundle": true,
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/npm/node_modules/http-proxy-agent": {
+ "version": "7.0.2",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/npm/node_modules/https-proxy-agent": {
+ "version": "7.0.6",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/npm/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/npm/node_modules/ignore-walk": {
+ "version": "8.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minimatch": "^10.0.3"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/npm/node_modules/ini": {
+ "version": "6.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/init-package-json": {
+ "version": "8.2.5",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/package-json": "^7.0.0",
+ "npm-package-arg": "^13.0.0",
+ "promzard": "^3.0.1",
+ "read": "^5.0.1",
+ "semver": "^7.7.2",
+ "validate-npm-package-name": "^7.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/ip-address": {
+ "version": "10.1.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 12"
+ }
+ },
+ "node_modules/npm/node_modules/is-cidr": {
+ "version": "6.0.3",
+ "inBundle": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "cidr-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/npm/node_modules/isexe": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/npm/node_modules/json-parse-even-better-errors": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/json-stringify-nice": {
+ "version": "1.1.4",
+ "inBundle": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/jsonparse": {
+ "version": "1.3.1",
+ "engines": [
+ "node >= 0.2.0"
+ ],
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/just-diff": {
+ "version": "6.0.2",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/just-diff-apply": {
+ "version": "5.5.0",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/libnpmaccess": {
+ "version": "10.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-package-arg": "^13.0.0",
+ "npm-registry-fetch": "^19.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmdiff": {
+ "version": "8.1.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/arborist": "^9.3.1",
+ "@npmcli/installed-package-contents": "^4.0.0",
+ "binary-extensions": "^3.0.0",
+ "diff": "^8.0.2",
+ "minimatch": "^10.0.3",
+ "npm-package-arg": "^13.0.0",
+ "pacote": "^21.0.2",
+ "tar": "^7.5.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmexec": {
+ "version": "10.2.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/arborist": "^9.3.1",
+ "@npmcli/package-json": "^7.0.0",
+ "@npmcli/run-script": "^10.0.0",
+ "ci-info": "^4.0.0",
+ "npm-package-arg": "^13.0.0",
+ "pacote": "^21.0.2",
+ "proc-log": "^6.0.0",
+ "promise-retry": "^2.0.1",
+ "read": "^5.0.1",
+ "semver": "^7.3.7",
+ "signal-exit": "^4.1.0",
+ "walk-up-path": "^4.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmfund": {
+ "version": "7.0.16",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/arborist": "^9.3.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmorg": {
+ "version": "8.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "aproba": "^2.0.0",
+ "npm-registry-fetch": "^19.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmpack": {
+ "version": "9.1.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/arborist": "^9.3.1",
+ "@npmcli/run-script": "^10.0.0",
+ "npm-package-arg": "^13.0.0",
+ "pacote": "^21.0.2"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmpublish": {
+ "version": "11.1.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/package-json": "^7.0.0",
+ "ci-info": "^4.0.0",
+ "npm-package-arg": "^13.0.0",
+ "npm-registry-fetch": "^19.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.7",
+ "sigstore": "^4.0.0",
+ "ssri": "^13.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmsearch": {
+ "version": "9.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-registry-fetch": "^19.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmteam": {
+ "version": "8.0.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "aproba": "^2.0.0",
+ "npm-registry-fetch": "^19.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/libnpmversion": {
+ "version": "8.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/git": "^7.0.0",
+ "@npmcli/run-script": "^10.0.0",
+ "json-parse-even-better-errors": "^5.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.7"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/lru-cache": {
+ "version": "11.2.6",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/npm/node_modules/make-fetch-happen": {
+ "version": "15.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/agent": "^4.0.0",
+ "cacache": "^20.0.1",
+ "http-cache-semantics": "^4.1.1",
+ "minipass": "^7.0.2",
+ "minipass-fetch": "^5.0.0",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "negotiator": "^1.0.0",
+ "proc-log": "^6.0.0",
+ "promise-retry": "^2.0.1",
+ "ssri": "^13.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/minimatch": {
+ "version": "10.2.2",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "brace-expansion": "^5.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/minipass": {
+ "version": "7.1.3",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-collect": {
+ "version": "2.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-fetch": {
+ "version": "5.0.1",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "minipass": "^7.0.3",
+ "minipass-sized": "^2.0.0",
+ "minizlib": "^3.0.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ },
+ "optionalDependencies": {
+ "encoding": "^0.1.13"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-flush": {
+ "version": "1.0.5",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-flush/node_modules/minipass": {
+ "version": "3.3.6",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-flush/node_modules/yallist": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC"
+ },
+ "node_modules/npm/node_modules/minipass-pipeline": {
+ "version": "1.2.4",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-pipeline/node_modules/minipass": {
+ "version": "3.3.6",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/npm/node_modules/minipass-pipeline/node_modules/yallist": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC"
+ },
+ "node_modules/npm/node_modules/minipass-sized": {
+ "version": "2.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.1.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/npm/node_modules/minizlib": {
+ "version": "3.1.0",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "minipass": "^7.1.2"
+ },
+ "engines": {
+ "node": ">= 18"
+ }
+ },
+ "node_modules/npm/node_modules/ms": {
+ "version": "2.1.3",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/mute-stream": {
+ "version": "3.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/negotiator": {
+ "version": "1.0.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/npm/node_modules/node-gyp": {
+ "version": "12.2.0",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "env-paths": "^2.2.0",
+ "exponential-backoff": "^3.1.1",
+ "graceful-fs": "^4.2.6",
+ "make-fetch-happen": "^15.0.0",
+ "nopt": "^9.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.5",
+ "tar": "^7.5.4",
+ "tinyglobby": "^0.2.12",
+ "which": "^6.0.0"
+ },
+ "bin": {
+ "node-gyp": "bin/node-gyp.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/nopt": {
+ "version": "9.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "abbrev": "^4.0.0"
+ },
+ "bin": {
+ "nopt": "bin/nopt.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-audit-report": {
+ "version": "7.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-bundled": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-normalize-package-bin": "^5.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-install-checks": {
+ "version": "8.0.0",
+ "inBundle": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "semver": "^7.1.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-normalize-package-bin": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-package-arg": {
+ "version": "13.0.2",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "hosted-git-info": "^9.0.0",
+ "proc-log": "^6.0.0",
+ "semver": "^7.3.5",
+ "validate-npm-package-name": "^7.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-packlist": {
+ "version": "10.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "ignore-walk": "^8.0.0",
+ "proc-log": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-pick-manifest": {
+ "version": "11.0.3",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-install-checks": "^8.0.0",
+ "npm-normalize-package-bin": "^5.0.0",
+ "npm-package-arg": "^13.0.0",
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-profile": {
+ "version": "12.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-registry-fetch": "^19.0.0",
+ "proc-log": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-registry-fetch": {
+ "version": "19.1.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/redact": "^4.0.0",
+ "jsonparse": "^1.3.1",
+ "make-fetch-happen": "^15.0.0",
+ "minipass": "^7.0.2",
+ "minipass-fetch": "^5.0.0",
+ "minizlib": "^3.0.1",
+ "npm-package-arg": "^13.0.0",
+ "proc-log": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/npm-user-validate": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/p-map": {
+ "version": "7.0.4",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/npm/node_modules/pacote": {
+ "version": "21.3.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/git": "^7.0.0",
+ "@npmcli/installed-package-contents": "^4.0.0",
+ "@npmcli/package-json": "^7.0.0",
+ "@npmcli/promise-spawn": "^9.0.0",
+ "@npmcli/run-script": "^10.0.0",
+ "cacache": "^20.0.0",
+ "fs-minipass": "^3.0.0",
+ "minipass": "^7.0.2",
+ "npm-package-arg": "^13.0.0",
+ "npm-packlist": "^10.0.1",
+ "npm-pick-manifest": "^11.0.1",
+ "npm-registry-fetch": "^19.0.0",
+ "proc-log": "^6.0.0",
+ "promise-retry": "^2.0.1",
+ "sigstore": "^4.0.0",
+ "ssri": "^13.0.0",
+ "tar": "^7.4.3"
+ },
+ "bin": {
+ "pacote": "bin/index.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/parse-conflict-json": {
+ "version": "5.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "json-parse-even-better-errors": "^5.0.0",
+ "just-diff": "^6.0.0",
+ "just-diff-apply": "^5.2.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/path-scurry": {
+ "version": "2.0.2",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "lru-cache": "^11.0.0",
+ "minipass": "^7.1.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/postcss-selector-parser": {
+ "version": "7.1.1",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/npm/node_modules/proc-log": {
+ "version": "6.1.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/proggy": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/promise-all-reject-late": {
+ "version": "1.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/promise-call-limit": {
+ "version": "3.0.2",
+ "inBundle": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/promise-retry": {
+ "version": "2.0.1",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "err-code": "^2.0.2",
+ "retry": "^0.12.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/npm/node_modules/promzard": {
+ "version": "3.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "read": "^5.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/qrcode-terminal": {
+ "version": "0.12.0",
+ "inBundle": true,
+ "bin": {
+ "qrcode-terminal": "bin/qrcode-terminal.js"
+ }
+ },
+ "node_modules/npm/node_modules/read": {
+ "version": "5.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "mute-stream": "^3.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/read-cmd-shim": {
+ "version": "6.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/retry": {
+ "version": "0.12.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/npm/node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "inBundle": true,
+ "license": "MIT",
+ "optional": true
+ },
+ "node_modules/npm/node_modules/semver": {
+ "version": "7.7.4",
+ "inBundle": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/npm/node_modules/signal-exit": {
+ "version": "4.1.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/npm/node_modules/sigstore": {
+ "version": "4.1.0",
+ "inBundle": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^4.0.0",
+ "@sigstore/core": "^3.1.0",
+ "@sigstore/protobuf-specs": "^0.5.0",
+ "@sigstore/sign": "^4.1.0",
+ "@sigstore/tuf": "^4.0.1",
+ "@sigstore/verify": "^3.1.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/smart-buffer": {
+ "version": "4.2.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/socks": {
+ "version": "2.8.7",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "ip-address": "^10.0.1",
+ "smart-buffer": "^4.2.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/socks-proxy-agent": {
+ "version": "8.0.5",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "^4.3.4",
+ "socks": "^2.8.3"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/npm/node_modules/spdx-exceptions": {
+ "version": "2.5.0",
+ "inBundle": true,
+ "license": "CC-BY-3.0"
+ },
+ "node_modules/npm/node_modules/spdx-expression-parse": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/spdx-license-ids": {
+ "version": "3.0.22",
+ "inBundle": true,
+ "license": "CC0-1.0"
+ },
+ "node_modules/npm/node_modules/ssri": {
+ "version": "13.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/supports-color": {
+ "version": "10.2.2",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
+ },
+ "node_modules/npm/node_modules/tar": {
+ "version": "7.5.9",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "@isaacs/fs-minipass": "^4.0.0",
+ "chownr": "^3.0.0",
+ "minipass": "^7.1.2",
+ "minizlib": "^3.1.0",
+ "yallist": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/npm/node_modules/text-table": {
+ "version": "0.2.0",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/tiny-relative-date": {
+ "version": "2.0.2",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/tinyglobby": {
+ "version": "0.2.15",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "fdir": "^6.5.0",
+ "picomatch": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/SuperchupuDev"
+ }
+ },
+ "node_modules/npm/node_modules/tinyglobby/node_modules/fdir": {
+ "version": "6.5.0",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "peerDependencies": {
+ "picomatch": "^3 || ^4"
+ },
+ "peerDependenciesMeta": {
+ "picomatch": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/npm/node_modules/tinyglobby/node_modules/picomatch": {
+ "version": "4.0.3",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/npm/node_modules/treeverse": {
+ "version": "3.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm/node_modules/tuf-js": {
+ "version": "4.1.0",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "@tufjs/models": "4.1.0",
+ "debug": "^4.4.3",
+ "make-fetch-happen": "^15.0.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/unique-filename": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "unique-slug": "^6.0.0"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/unique-slug": {
+ "version": "6.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "imurmurhash": "^0.1.4"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "inBundle": true,
+ "license": "MIT"
+ },
+ "node_modules/npm/node_modules/validate-npm-package-name": {
+ "version": "7.0.2",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/walk-up-path": {
+ "version": "4.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/npm/node_modules/which": {
+ "version": "6.0.1",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^4.0.0"
+ },
+ "bin": {
+ "node-which": "bin/which.js"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/write-file-atomic": {
+ "version": "7.0.0",
+ "inBundle": true,
+ "license": "ISC",
+ "dependencies": {
+ "imurmurhash": "^0.1.4",
+ "signal-exit": "^4.0.1"
+ },
+ "engines": {
+ "node": "^20.17.0 || >=22.9.0"
+ }
+ },
+ "node_modules/npm/node_modules/yallist": {
+ "version": "5.0.0",
+ "inBundle": true,
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
diff --git a/package.json b/package.json
index c7d8e9742a..9b741fa1ec 100644
--- a/package.json
+++ b/package.json
@@ -77,6 +77,8 @@
}
},
"dependencies": {
+ "@4science_ng-dynamic-forms/core": "^19.1.0",
+ "@4science_ng-dynamic-forms/ui-ng-bootstrap": "^19.1.0",
"@angular/animations": "^20.3.16",
"@angular/cdk": "^20.2.14",
"@angular/common": "^20.3.16",
@@ -91,8 +93,6 @@
"@angular/ssr": "^20.3.10",
"@kolkov/ngx-gallery": "^2.0.1",
"@ng-bootstrap/ng-bootstrap": "^15.1.2",
- "@4science_ng-dynamic-forms/core": "^19.1.0",
- "@4science_ng-dynamic-forms/ui-ng-bootstrap": "^19.1.0",
"@ngrx/effects": "^20.1.0",
"@ngrx/router-store": "^20.1.0",
"@ngrx/store": "^20.1.0",
@@ -143,6 +143,7 @@
"ngx-skeleton-loader": "^11.3.0",
"ngx-ui-switch": "^16.1.0",
"nouislider": "^15.7.1",
+ "npm": "^11.10.1",
"orejime": "^2.3.1",
"pem": "1.14.8",
"reflect-metadata": "^0.2.2",
@@ -161,12 +162,13 @@
"@angular-eslint/schematics": "^20.7.0",
"@angular-eslint/template-parser": "^20.6.0",
"@angular-eslint/utils": "^20.7.0",
- "@angular/cli": "^20.3.15",
+ "@angular/cli": "^20.3.17",
"@angular/compiler-cli": "^20.3.12",
"@cypress/schematic": "^1.5.0",
"@fortawesome/fontawesome-free": "^6.7.2",
"@ngrx/store-devtools": "^20.1.0",
"@ngtools/webpack": "^20.3.10",
+ "@smarttools/eslint-plugin-rxjs": "^1.0.22",
"@stylistic/eslint-plugin": "^3.1.0",
"@types/deep-freeze": "0.1.5",
"@types/ejs": "^3.1.2",
@@ -196,7 +198,6 @@
"eslint-plugin-jsdoc": "^61.4.1",
"eslint-plugin-jsonc": "^2.21.0",
"eslint-plugin-lodash": "^7.4.0",
- "@smarttools/eslint-plugin-rxjs": "^1.0.22",
"eslint-plugin-simple-import-sort": "^12.1.1",
"eslint-plugin-unused-imports": "^4.3.0",
"express-static-gzip": "^2.2.0",
diff --git a/src/app/header/header.component.ts b/src/app/header/header.component.ts
index 957cfa5a5b..eadcf560f2 100644
--- a/src/app/header/header.component.ts
+++ b/src/app/header/header.component.ts
@@ -56,6 +56,9 @@ export class HeaderComponent implements OnInit {
ngOnInit(): void {
this.isMobile$ = this.windowService.isUpTo(this.maxMobileWidth);
+ console.log('isMobile$', this.isMobile$);
+ console.log('menuID', this.menuID);
+ console.log('maxMobileWidth', this.maxMobileWidth);
}
public toggleNavbar(): void {
diff --git a/src/assets/i18n/en.json5 b/src/assets/i18n/en.json5
index 4e4a19e7eb..dbae72f7a6 100644
--- a/src/assets/i18n/en.json5
+++ b/src/assets/i18n/en.json5
@@ -1,4 +1,5 @@
{
+
"401.help": "You're not authorized to access this page. You can use the button below to get back to the home page.",
"401.link.home-page": "Take me to the home page",
@@ -31,7 +32,7 @@
"error-page.description.404": "Page not found",
- "error-page.orcid.generic-error": "An error occurred during login via ORCID. Make sure you have shared your ORCID account email address with DSpace. If the error persists, contact the administrator",
+ "error-page.orcid.generic-error": "An error occurred during login via ORCID. Make sure you have shared your ORCID account email address with K-REx. If the error persists, contact the administrator",
"listelement.badge.access-status": "Access status:",
@@ -151,7 +152,7 @@
"admin.registries.metadata.breadcrumbs": "Metadata registry",
- "admin.registries.metadata.description": "The metadata registry maintains a list of all metadata fields available in the repository. These fields may be divided amongst multiple schemas. However, DSpace requires the qualified Dublin Core schema.",
+ "admin.registries.metadata.description": "The metadata registry maintains a list of all metadata fields available in the repository. These fields may be divided amongst multiple schemas. However, K-REx requires the qualified Dublin Core schema.",
"admin.registries.metadata.form.create": "Create metadata schema",
@@ -1849,7 +1850,7 @@
"dso-selector.set-scope.community.head": "Select a search scope",
- "dso-selector.set-scope.community.button": "Search all of DSpace",
+ "dso-selector.set-scope.community.button": "Search all of K-REx",
"dso-selector.set-scope.community.or-divider": "or",
@@ -2273,11 +2274,11 @@
"home.breadcrumbs": "Home",
- "home.search-form.placeholder": "Search the repository ...",
+ "home.search-form.placeholder": "Search scholarly works, historical documents and images...",
"home.title": "Home",
- "home.top-level-communities.head": "Communities in DSpace",
+ "home.top-level-communities.head": "Communities in K-REx",
"home.top-level-communities.help": "Select a community to browse its collections.",
@@ -2349,7 +2350,7 @@
"info.feedback.title": "Feedback",
- "info.feedback.info": "Thanks for sharing your feedback about the DSpace system. Your comments are appreciated!",
+ "info.feedback.info": "Thanks for sharing your feedback about the K-REx system. Your comments are appreciated!",
"info.feedback.email_help": "This address will be used to follow up on your feedback.",
@@ -3047,11 +3048,11 @@
"item.preview.dc.date.issued": "Published date:",
- "item.preview.dc.description": "Description:",
+ "item.preview.dc.description": "Description",
"item.preview.dc.description.abstract": "Abstract:",
- "item.preview.dc.identifier.other": "Other identifier:",
+ "item.preview.dc.identifier.other": "Other Identifier",
"item.preview.dc.language.iso": "Language:",
@@ -3079,8 +3080,6 @@
"item.preview.dc.rights": "Rights",
- "item.preview.dc.identifier.other": "Other Identifier",
-
"item.preview.dc.relation.issn": "ISSN",
"item.preview.dc.identifier.isbn": "ISBN",
@@ -3139,8 +3138,6 @@
"item.preview.dc.identifier.openalex": "OpenAlex Identifier",
- "item.preview.dc.description": "Description",
-
"item.select.confirm": "Confirm selected",
"item.select.empty": "No items to show",
@@ -3463,7 +3460,7 @@
"login.form.forgot-password": "Have you forgotten your password?",
- "login.form.header": "Please log in to DSpace",
+ "login.form.header": "Please log in to K-REx",
"login.form.new-user": "New user? Click here to register.",
@@ -3475,7 +3472,7 @@
"login.form.saml": "Log in with SAML",
- "login.form.shibboleth": "Log in with Shibboleth",
+ "login.form.shibboleth": "Log in with K-State eID",
"login.form.submit": "Log in",
@@ -3483,7 +3480,7 @@
"login.breadcrumbs": "Login",
- "logout.form.header": "Log out from DSpace",
+ "logout.form.header": "Log out from K-REx",
"logout.form.submit": "Log out",
@@ -3525,7 +3522,7 @@
"menu.section.browse_community_by_title": "By Title",
- "menu.section.browse_global": "All of DSpace",
+ "menu.section.browse_global": "Browse K-REx",
"menu.section.browse_global_by_author": "By Author",
@@ -3539,7 +3536,7 @@
"menu.section.browse_global_by_title": "By Title",
- "menu.section.browse_global_communities_and_collections": "Communities & Collections",
+ "menu.section.browse_global_communities_and_collections": "All communities and collections",
"menu.section.browse_global_geospatial_map": "By Geolocation (Map)",
@@ -3667,7 +3664,7 @@
"metadata-export-search.submit.error": "Starting the export has failed",
- "mydspace.breadcrumbs": "MyDSpace",
+ "mydspace.breadcrumbs": "MyK-REx",
"mydspace.description": "",
@@ -3721,7 +3718,7 @@
"mydspace.results.no-uri": "No URI",
- "mydspace.search-form.placeholder": "Search in MyDSpace...",
+ "mydspace.search-form.placeholder": "Search in MyK-REx...",
"mydspace.show.workflow": "Workflow tasks",
@@ -3741,7 +3738,7 @@
"mydspace.status.mydspaceWorkspace": "Workspace",
- "mydspace.title": "MyDSpace",
+ "mydspace.title": "MyK-REx",
"mydspace.upload.upload-failed": "Error creating new workspace. Please verify the content uploaded before retry.",
@@ -3761,7 +3758,7 @@
"notification.suggestion.please": "Please",
- "nav.browse.header": "All of DSpace",
+ "nav.browse.header": "All of K-REx",
"nav.community-browse.header": "By Community",
@@ -3777,7 +3774,7 @@
"nav.main.description": "Main navigation bar",
- "nav.mydspace": "MyDSpace",
+ "nav.mydspace": "MyK-REx",
"nav.profile": "Profile",
@@ -4401,7 +4398,7 @@
"register-page.registration.header": "New user registration",
- "register-page.registration.info": "Register an account to subscribe to collections for email updates, and submit new items to DSpace.",
+ "register-page.registration.info": "Register an account to subscribe to collections for email updates, and submit new items to K-REx.",
"register-page.registration.email": "Email Address *",
@@ -4501,7 +4498,7 @@
"repository.title": "DSpace Repository",
- "repository.title.prefix": "DSpace Repository :: ",
+ "repository.title.prefix": "K-REx :: ",
"resource-policies.add.button": "Add",
@@ -4660,6 +4657,7 @@
"search.filters.applied.f.original_bundle_filenames": "File name",
"search.filters.applied.f.original_bundle_descriptions": "File description",
+
"search.filters.applied.f.has_geospatial_metadata": "Has geographical location",
"search.filters.applied.f.itemtype": "Type",
@@ -4942,7 +4940,7 @@
"search.form.search_dspace": "All repository",
- "search.form.scope.all": "All of DSpace",
+ "search.form.scope.all": "All of K-REx",
"search.results.head": "Search Results",
@@ -5108,9 +5106,9 @@
"submission.import-external.title.none": "Import metadata from an external source",
- "submission.import-external.page.hint": "Enter a query above to find items from the web to import in to DSpace.",
+ "submission.import-external.page.hint": "Enter a query above to find items from the web to import in to K-REx.",
- "submission.import-external.back-to-my-dspace": "Back to MyDSpace",
+ "submission.import-external.back-to-my-dspace": "Back to MyK-REx",
"submission.import-external.search.placeholder": "Search the external source",
@@ -5992,7 +5990,7 @@
"thumbnail.person.placeholder": "No Profile Picture Available",
- "title": "DSpace",
+ title: "K-REx",
"vocabulary-treeview.header": "Hierarchical tree view",
@@ -6527,152 +6525,263 @@
"service.overview.delete.header": "Delete Service",
"ldn-registered-services.title": "Registered Services",
+
"ldn-registered-services.table.name": "Name",
+
"ldn-registered-services.table.description": "Description",
+
"ldn-registered-services.table.status": "Status",
+
"ldn-registered-services.table.action": "Action",
+
"ldn-registered-services.new": "NEW",
+
"ldn-registered-services.new.breadcrumbs": "Registered Services",
"ldn-service.overview.table.enabled": "Enabled",
+
"ldn-service.overview.table.disabled": "Disabled",
+
"ldn-service.overview.table.clickToEnable": "Click to enable",
+
"ldn-service.overview.table.clickToDisable": "Click to disable",
"ldn-edit-registered-service.title": "Edit Service",
+
"ldn-create-service.title": "Create service",
+
"service.overview.create.modal": "Create Service",
+
"service.overview.create.body": "Please confirm the creation of this service.",
+
"ldn-service-status": "Status",
+
"service.confirm.create": "Create",
+
"service.refuse.create": "Cancel",
+
"ldn-register-new-service.title": "Register a new service",
+
"ldn-new-service.form.label.submit": "Save",
+
"ldn-new-service.form.label.name": "Name",
+
"ldn-new-service.form.label.description": "Description",
+
"ldn-new-service.form.label.url": "Service URL",
+
"ldn-new-service.form.label.ip-range": "Service IP range",
+
"ldn-new-service.form.label.score": "Level of trust",
+
"ldn-new-service.form.label.ldnUrl": "LDN Inbox URL",
+
"ldn-new-service.form.placeholder.name": "Please provide service name",
+
"ldn-new-service.form.placeholder.description": "Please provide a description regarding your service",
+
"ldn-new-service.form.placeholder.url": "Please input the URL for users to check out more information about the service",
+
"ldn-new-service.form.placeholder.lowerIp": "IPv4 range lower bound",
+
"ldn-new-service.form.placeholder.upperIp": "IPv4 range upper bound",
+
"ldn-new-service.form.placeholder.ldnUrl": "Please specify the URL of the LDN Inbox",
+
"ldn-new-service.form.placeholder.score": "Please enter a value between 0 and 1. Use the “.” as decimal separator",
+
"ldn-service.form.label.placeholder.default-select": "Select a pattern",
"ldn-service.form.pattern.ack-accept.label": "Acknowledge and Accept",
+
"ldn-service.form.pattern.ack-accept.description": "This pattern is used to acknowledge and accept a request (offer). It implies an intention to act on the request.",
+
"ldn-service.form.pattern.ack-accept.category": "Acknowledgements",
"ldn-service.form.pattern.ack-reject.label": "Acknowledge and Reject",
+
"ldn-service.form.pattern.ack-reject.description": "This pattern is used to acknowledge and reject a request (offer). It signifies no further action regarding the request.",
+
"ldn-service.form.pattern.ack-reject.category": "Acknowledgements",
"ldn-service.form.pattern.ack-tentative-accept.label": "Acknowledge and Tentatively Accept",
+
"ldn-service.form.pattern.ack-tentative-accept.description": "This pattern is used to acknowledge and tentatively accept a request (offer). It implies an intention to act, which may change.",
+
"ldn-service.form.pattern.ack-tentative-accept.category": "Acknowledgements",
"ldn-service.form.pattern.ack-tentative-reject.label": "Acknowledge and Tentatively Reject",
+
"ldn-service.form.pattern.ack-tentative-reject.description": "This pattern is used to acknowledge and tentatively reject a request (offer). It signifies no further action, subject to change.",
+
"ldn-service.form.pattern.ack-tentative-reject.category": "Acknowledgements",
"ldn-service.form.pattern.announce-endorsement.label": "Announce Endorsement",
+
"ldn-service.form.pattern.announce-endorsement.description": "This pattern is used to announce the existence of an endorsement, referencing the endorsed resource.",
+
"ldn-service.form.pattern.announce-endorsement.category": "Announcements",
"ldn-service.form.pattern.announce-ingest.label": "Announce Ingest",
+
"ldn-service.form.pattern.announce-ingest.description": "This pattern is used to announce that a resource has been ingested.",
+
"ldn-service.form.pattern.announce-ingest.category": "Announcements",
"ldn-service.form.pattern.announce-relationship.label": "Announce Relationship",
+
"ldn-service.form.pattern.announce-relationship.description": "This pattern is used to announce a relationship between two resources.",
+
"ldn-service.form.pattern.announce-relationship.category": "Announcements",
"ldn-service.form.pattern.announce-review.label": "Announce Review",
+
"ldn-service.form.pattern.announce-review.description": "This pattern is used to announce the existence of a review, referencing the reviewed resource.",
+
"ldn-service.form.pattern.announce-review.category": "Announcements",
"ldn-service.form.pattern.announce-service-result.label": "Announce Service Result",
+
"ldn-service.form.pattern.announce-service-result.description": "This pattern is used to announce the existence of a 'service result', referencing the relevant resource.",
+
"ldn-service.form.pattern.announce-service-result.category": "Announcements",
"ldn-service.form.pattern.request-endorsement.label": "Request Endorsement",
+
"ldn-service.form.pattern.request-endorsement.description": "This pattern is used to request endorsement of a resource owned by the origin system.",
+
"ldn-service.form.pattern.request-endorsement.category": "Requests",
"ldn-service.form.pattern.request-ingest.label": "Request Ingest",
+
"ldn-service.form.pattern.request-ingest.description": "This pattern is used to request that the target system ingest a resource.",
+
"ldn-service.form.pattern.request-ingest.category": "Requests",
"ldn-service.form.pattern.request-review.label": "Request Review",
+
"ldn-service.form.pattern.request-review.description": "This pattern is used to request a review of a resource owned by the origin system.",
+
"ldn-service.form.pattern.request-review.category": "Requests",
"ldn-service.form.pattern.undo-offer.label": "Undo Offer",
+
"ldn-service.form.pattern.undo-offer.description": "This pattern is used to undo (retract) an offer previously made.",
+
"ldn-service.form.pattern.undo-offer.category": "Undo",
"ldn-new-service.form.label.placeholder.selectedItemFilter": "No Item Filter Selected",
+
"ldn-new-service.form.label.ItemFilter": "Item Filter",
+
"ldn-new-service.form.label.automatic": "Automatic",
+
"ldn-new-service.form.error.name": "Name is required",
+
"ldn-new-service.form.error.url": "URL is required",
+
"ldn-new-service.form.error.ipRange": "Please enter a valid IP range",
+
"ldn-new-service.form.hint.ipRange": "Please enter a valid IpV4 in both range bounds (note: for single IP, please enter the same value in both fields)",
+
"ldn-new-service.form.error.ldnurl": "LDN URL is required",
+
"ldn-new-service.form.error.patterns": "At least a pattern is required",
+
"ldn-new-service.form.error.score": "Please enter a valid score (between 0 and 1). Use the “.” as decimal separator",
"ldn-new-service.form.label.inboundPattern": "Supported Pattern",
+
"ldn-new-service.form.label.addPattern": "+ Add more",
+
"ldn-new-service.form.label.removeItemFilter": "Remove",
+
"ldn-register-new-service.breadcrumbs": "New Service",
+
"service.overview.delete.body": "Are you sure you want to delete this service?",
+
"service.overview.edit.body": "Do you confirm the changes?",
+
"service.overview.edit.modal": "Edit Service",
+
"service.detail.update": "Confirm",
+
"service.detail.return": "Cancel",
+
"service.overview.reset-form.body": "Are you sure you want to discard the changes and leave?",
+
"service.overview.reset-form.modal": "Discard Changes",
+
"service.overview.reset-form.reset-confirm": "Discard",
+
"admin.registries.services-formats.modify.success.head": "Successful Edit",
+
"admin.registries.services-formats.modify.success.content": "The service has been edited",
+
"admin.registries.services-formats.modify.failure.head": "Failed Edit",
+
"admin.registries.services-formats.modify.failure.content": "The service has not been edited",
+
"ldn-service-notification.created.success.title": "Successful Create",
+
"ldn-service-notification.created.success.body": "The service has been created",
+
"ldn-service-notification.created.failure.title": "Failed Create",
+
"ldn-service-notification.created.failure.body": "The service has not been created",
+
"ldn-service-notification.created.warning.title": "Please select at least one Inbound Pattern",
+
"ldn-enable-service.notification.success.title": "Successful status updated",
+
"ldn-enable-service.notification.success.content": "The service status has been updated",
+
"ldn-service-delete.notification.success.title": "Successful Deletion",
+
"ldn-service-delete.notification.success.content": "The service has been deleted",
+
"ldn-service-delete.notification.error.title": "Failed Deletion",
+
"ldn-service-delete.notification.error.content": "The service has not been deleted",
+
"service.overview.reset-form.reset-return": "Cancel",
+
"service.overview.delete": "Delete service",
+
"ldn-edit-service.title": "Edit service",
+
"ldn-edit-service.form.label.name": "Name",
+
"ldn-edit-service.form.label.description": "Description",
+
"ldn-edit-service.form.label.url": "Service URL",
+
"ldn-edit-service.form.label.ldnUrl": "LDN Inbox URL",
+
"ldn-edit-service.form.label.inboundPattern": "Inbound Pattern",
+
"ldn-edit-service.form.label.noInboundPatternSelected": "No Inbound Pattern",
+
"ldn-edit-service.form.label.selectedItemFilter": "Selected Item Filter",
+
"ldn-edit-service.form.label.selectItemFilter": "No Item Filter",
+
"ldn-edit-service.form.label.automatic": "Automatic",
+
"ldn-edit-service.form.label.addInboundPattern": "+ Add more",
+
"ldn-edit-service.form.label.submit": "Save",
+
"ldn-edit-service.breadcrumbs": "Edit Service",
+
"ldn-service.control-constaint-select-none": "Select none",
"ldn-register-new-service.notification.error.title": "Error",
+
"ldn-register-new-service.notification.error.content": "An error occurred while creating this process",
+
"ldn-register-new-service.notification.success.title": "Success",
+
"ldn-register-new-service.notification.success.content": "The process was successfully created",
"submission.sections.notify.info": "The selected service is compatible with the item according to its current status. {{ service.name }}: {{ service.description }}",
@@ -6694,6 +6803,7 @@
"menu.section.services_new": "LDN Service",
"quality-assurance.topics.description-with-target": "Below you can see all the topics received from the subscriptions to {{source}} in regards to the",
+
"quality-assurance.events.description": "Below the list of all the suggestions for the selected topic {{topic}}, related to {{source}}.",
"quality-assurance.events.description-with-topic-and-target": "Below the list of all the suggestions for the selected topic {{topic}}, related to {{source}} and ",
@@ -7291,4 +7401,126 @@
"item.preview.organization.address.addressLocality": "City",
"item.preview.organization.alternateName": "Alternative name",
-}
+
+ "curation-task.task.estaipsize.label": "Estimate Storage Space for AIP(s)",
+
+ "curation-task.task.readodometer.label": "Read Odometer",
+
+ "curation-task.task.transmitaip.label": "Transmit AIP(s) to Storage",
+
+ "curation-task.task.transmitsingleaip.label": "Transmit Single Object AIP to Storage",
+
+ "curation-task.task.verifyaip.label": "Verify AIP(s) exist in Storage",
+
+ "curation-task.task.fetchaip.label": "Fetch AIP(s) from Storage",
+
+ "curation-task.task.auditaip.label": "Audit against AIP(s)",
+
+ "curation-task.task.removeaip.label": "Remove AIP(s) from Storage",
+
+ "curation-task.task.restorefromaip.label": "Restore Missing Object(s) from AIP(s)",
+
+ "curation-task.task.replacewithaip.label": "Replace Existing Object(s) with AIP(s)",
+
+ "curation-task.task.restorekeepexisting.label": "Restore Missing Object(s) but Keep Existing Objects",
+
+ "curation-task.task.restoresinglefromaip.label": "Restore Single Object from AIP",
+
+ "curation-task.task.replacesinglewithaip.label": "Replace Single Object with AIP",
+
+ "repository.title.prefixDSpace": "K-REx ::",
+
+ "info.about.breadcrumbs": "About the K-State Research Exchange",
+
+ "menu.section.about": "About",
+
+ "info.about.head": "About the K-State Research Exchange",
+
+ "info.about.title": "About the K-State Research Exchange",
+
+ "info.policies.breadcrumbs": "Policies",
+
+ "info.policies.head": "K-REx Policies",
+
+ "info.policies.title": "K-REx Policies",
+
+ "menu.section.policies": "Policies",
+
+ "info.license.breadcrumbs": "K-REx License",
+
+ "info.license.head": "Standard K-REx license - Nonexclusive distribution",
+
+ "info.license.title": "K-REx License",
+
+ "info.guidelines.symbols.breadcrumbs": "ETDR Guidelines: Symbols",
+
+ "info.guidelines.symbols.head": "Guidelines for Entering a Title or Abstract That Contains Symbols",
+
+ "info.guidelines.symbols.title": "ETDR Guidelines: Symbols",
+
+ "info.guidelines.attachments.breadcrumbs": "ETDR Guidelines: Attachments",
+
+ "info.guidelines.attachments.head": "ETDR Guidelines: Attachments",
+
+ "info.guidelines.attachments.title": "ETDR Guidelines: Attachments",
+
+ "info.guidelines.authors.breadcrumbs": "ETDR Guidelines: Author Name",
+
+ "info.guidelines.authors.head": "ETDR Guidelines: Author Name",
+
+ "info.guidelines.authors.title": "ETDR Guidelines: Author Name",
+
+ "info.guidelines.keywords.breadcrumbs": "ETDR Guidelines: Keywords",
+
+ "info.guidelines.keywords.head": "ETDR Guidelines: Keywords",
+
+ "info.guidelines.keywords.title": "ETDR Guidelines: Keywords",
+
+ "browse.metadata.datepublished": "Published Date",
+
+ "browse.comcol.by.datepublished": "By Published Date",
+
+ "browse.metadata.datepublished.breadcrumbs": "Browse by Published Date",
+
+ "menu.section.browse_global_by_datepublished": "By Published Date",
+
+ "search.filters.filter.etdrAdvisor.head": "Major advisor",
+
+ "search.filters.filter.etdrAdvisor.placeholder": "Major advisor name",
+
+ "search.filters.filter.etdrAdvisor.label": "Search major advisor name",
+
+ "search.filters.applied.f.etdrAdvisor": "Major advisor",
+
+ "search.filters.filter.etdrDepartment.head": "Degree Awarding Department",
+
+ "search.filters.filter.etdrDepartment.placeholder": "Degree Awarding Department",
+
+ "search.filters.filter.etdrDepartment.label": "Search Degree Awarding Department",
+
+ "search.filters.applied.f.etdrDepartment": "Degree Awarding Department",
+
+ "menu.section.navigate": "Communities and collections",
+
+ "menu.section.navigate.search_all": "Search all content",
+
+ "menu.section.navigate.digital_archives": "K-State Libraries Digital Collections",
+
+ "menu.section.navigate.etdr": "Graduate Theses, Dissertations, and Reports",
+
+ "menu.section.navigate.rscad": "Research, Scholarly and Creative Activities, and Discovery Works",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpageone.authors.hint": "Enter your name in the same form as it appears on your title page. Use standard capitalization; do not enter your name in all capital letters. For more information on how to enter names, follow the steps here.",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpageone.title.hint": "Copy and paste the title of your ETDR. If your title contains mathematical operators or other symbols that do not display properly within the Title input box, follow the steps here.",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpageone.professors.hint": "Select your major professor(s). If you have co-major professors, hold down the Ctrl key and left click to select multiple names. If your major professor is not listed, select \"Major Professor Not Listed\".",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpageone.language.hint": "Select the language of the main content of the item. If the language does not appear in the list below, please select 'Other'. If the content does not really have a language (for example, if it is a dataset or an image) pleaseselect 'N/A'.",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpagetwo.keywords.hint": "Enter from 1 to 6 keywords for your ETDR. See here for selecting keywords. Select the \"Add\" button after entering a keyword or keyword phrase.",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpagetwo.symbols.hint": "Copy and paste the text of your abstract here. Do not include the heading \"Abstract.\" If your abstract contains mathematical operators or other symbols that do not display properly within the Abstract input box, follow the steps here.",
+
+ "submission.sections.submit.progressbar.describe.stepone.etdpagetwo.sponsorship.hint": "(Optional) Enter the names of agencies, if any, that helped to fund your research. Do not use acronyms or abbreviations. If you did not have a source of funding for your research, leave this space blank.",
+}
\ No newline at end of file
diff --git a/src/styles/_global-styles.scss b/src/styles/_global-styles.scss
index 6b794f06f6..e8dbb0adac 100644
--- a/src/styles/_global-styles.scss
+++ b/src/styles/_global-styles.scss
@@ -573,3 +573,4 @@ ngb-tooltip-window {
mask-size: contain;
background-color: currentColor;
}
+
diff --git a/src/themes/custom/app/footer/footer.component.html b/src/themes/custom/app/footer/footer.component.html
index e69de29bb2..29b8d49702 100644
--- a/src/themes/custom/app/footer/footer.component.html
+++ b/src/themes/custom/app/footer/footer.component.html
@@ -0,0 +1 @@
+
The university's digital repository. + +
+ + +Submit Electronic Thesis, Dissertation or Report (ETDR).
+ + +Submit Research, Scholarly and Creative Activities, and Discovery (RSCAD) Works.
+ +