diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index fc7b512..a74d0bf 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -19,3 +19,4 @@ jobs: - run: npm run lint - run: npm audit --omit=dev continue-on-error: true + - run: npm run license-compliance-check diff --git a/package-lock.json b/package-lock.json index a39d089..d85a95e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,8 +11,7 @@ "ajv": "^6.12.6", "bootstrap-vue": "^2.23.1", "detectrtc": "^1.4.1", - "focus-visible": "^5.2.0", - "jquery": "^3.6.3", + "jquery": "^3.7.1", "leaflet": "^1.9.4", "localforage": "^1.10.0", "lodash": "^4.17.21", @@ -58,6 +57,7 @@ "eslint-plugin-cypress": "^2.13.2", "eslint-plugin-vue": "^6.2.2", "eslint-plugin-vue-i18n": "^0.3.0", + "license-compliance": "^2.0.1", "node-fetch": "^2.6.7", "node-sass": "9.0.0", "sass-loader": "^8.0.2", @@ -2564,6 +2564,33 @@ "rollup": "^1.20.0||^2.0.0" } }, + "node_modules/@sideway/address": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", + "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/address/node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", + "dev": true + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", + "dev": true + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", + "dev": true + }, "node_modules/@sindresorhus/is": { "version": "4.6.0", "license": "MIT", @@ -4786,6 +4813,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/array-flatten": { "version": "1.1.1", "dev": true, @@ -10244,10 +10280,6 @@ "readable-stream": "^2.3.6" } }, - "node_modules/focus-visible": { - "version": "5.2.0", - "license": "W3C" - }, "node_modules/follow-redirects": { "version": "1.15.2", "dev": true, @@ -12475,9 +12507,38 @@ "node": ">=8" } }, + "node_modules/joi": { + "version": "17.11.0", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.11.0.tgz", + "integrity": "sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/joi/node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", + "dev": true + }, + "node_modules/joi/node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, "node_modules/jquery": { - "version": "3.6.3", - "license": "MIT" + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" }, "node_modules/js-base64": { "version": "2.6.4", @@ -12825,6 +12886,210 @@ "node": ">=16" } }, + "node_modules/license-compliance": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/license-compliance/-/license-compliance-2.0.1.tgz", + "integrity": "sha512-c6w74uKnDgvbW3opy8NFMeX1pgWsHl8dLOu7Bc85s9eurXYCzF5x+Sj7gvZJIjtsYu3vQ7aYYpjc23ru+4onPA==", + "dev": true, + "dependencies": { + "chalk": "4.1.2", + "commander": "11.1.0", + "cosmiconfig": "8.3.6", + "debug": "4.3.4", + "joi": "17.11.0", + "spdx-expression-parse": "3.0.1", + "spdx-satisfies": "5.0.1", + "tslib": "2.6.2", + "xmlbuilder": "15.1.1" + }, + "bin": { + "license-compliance": "bin/cli.js" + }, + "engines": { + "node": ">=14.17.0" + } + }, + "node_modules/license-compliance/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/license-compliance/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/license-compliance/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/license-compliance/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/license-compliance/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/license-compliance/node_modules/commander": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/license-compliance/node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/license-compliance/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/license-compliance/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/license-compliance/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/license-compliance/node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/license-compliance/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/license-compliance/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/license-compliance/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/license-compliance/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, "node_modules/lie": { "version": "3.1.1", "license": "MIT", @@ -18273,6 +18538,17 @@ "deprecated": "Please use @jridgewell/sourcemap-codec instead", "dev": true }, + "node_modules/spdx-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/spdx-compare/-/spdx-compare-1.0.0.tgz", + "integrity": "sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==", + "dev": true, + "dependencies": { + "array-find-index": "^1.0.2", + "spdx-expression-parse": "^3.0.0", + "spdx-ranges": "^2.0.0" + } + }, "node_modules/spdx-correct": { "version": "3.1.1", "dev": true, @@ -18301,6 +18577,23 @@ "dev": true, "license": "CC0-1.0" }, + "node_modules/spdx-ranges": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdx-ranges/-/spdx-ranges-2.1.1.tgz", + "integrity": "sha512-mcdpQFV7UDAgLpXEE/jOMqvK4LBoO0uTQg0uvXUewmEFhpiZx5yJSZITHB8w1ZahKdhfZqP5GPEOKLyEq5p8XA==", + "dev": true + }, + "node_modules/spdx-satisfies": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-5.0.1.tgz", + "integrity": "sha512-Nwor6W6gzFp8XX4neaKQ7ChV4wmpSh2sSDemMFSzHxpTw460jxFYeOn+jq4ybnSSw/5sc3pjka9MQPouksQNpw==", + "dev": true, + "dependencies": { + "spdx-compare": "^1.0.0", + "spdx-expression-parse": "^3.0.0", + "spdx-ranges": "^2.0.0" + } + }, "node_modules/spdy": { "version": "4.0.2", "dev": true, @@ -21920,6 +22213,15 @@ "async-limiter": "~1.0.0" } }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "engines": { + "node": ">=8.0" + } + }, "node_modules/xmlbuilder2": { "version": "3.1.1", "dev": true, diff --git a/package.json b/package.json index 01cc013..070417d 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "build-sh": "export NODE_OPTIONS=--openssl-legacy-provider NODE_ENV=production; vue-cli-service build", "build-hb": "export NODE_OPTIONS=--openssl-legacy-provider NODE_ENV=production; vue-cli-service build --mode hb", "lint": "export NODE_OPTIONS=--openssl-legacy-provider; vue-cli-service lint", + "license-compliance-check": "license-compliance --production --report detailed --allow \"MIT;ISC;0BSD;BSD-2-Clause;BSD-3-Clause;Apache-2.0\" --exclude \"@vue/compiler-sfc;esprima-fb\" # @vue/compiler-sfc=MIT; esprima-fb=BSD-2-Clause", "e2e-local": "npx cypress open", "e2e-ci": "npx cypress run", "i18n:report": "export NODE_OPTIONS=--openssl-legacy-provider; vue-cli-service i18n:report --src './src/**/*.?(js|vue)' --locales './src/locales/**/*.json'", @@ -20,8 +21,7 @@ "ajv": "^6.12.6", "bootstrap-vue": "^2.23.1", "detectrtc": "^1.4.1", - "focus-visible": "^5.2.0", - "jquery": "^3.6.3", + "jquery": "^3.7.1", "leaflet": "^1.9.4", "localforage": "^1.10.0", "lodash": "^4.17.21", @@ -67,6 +67,7 @@ "eslint-plugin-cypress": "^2.13.2", "eslint-plugin-vue": "^6.2.2", "eslint-plugin-vue-i18n": "^0.3.0", + "license-compliance": "^2.0.1", "node-fetch": "^2.6.7", "node-sass": "9.0.0", "sass-loader": "^8.0.2", diff --git a/public/sbom.json b/public/sbom.json index 5a27f15..69348a5 100644 --- a/public/sbom.json +++ b/public/sbom.json @@ -3,9 +3,9 @@ "bomFormat": "CycloneDX", "specVersion": "1.4", "version": 1, - "serialNumber": "urn:uuid:8cdde50a-bc9b-44f8-b58d-1ab200e6acbb", + "serialNumber": "urn:uuid:52597d6c-9715-4aa4-9b0a-2517e880a7e6", "metadata": { - "timestamp": "2023-10-17T08:06:19.718Z", + "timestamp": "2024-03-04T11:13:25.520Z", "tools": [ { "vendor": "@cyclonedx", @@ -693,125 +693,6 @@ } ] }, - { - "type": "library", - "name": "encoding", - "version": "0.1.13", - "bom-ref": "encoding@0.1.13", - "author": "Andris Reinman", - "description": "Convert encodings, uses iconv-lite", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/encoding@0.1.13?vcs_url=git%2Bhttps%3A//github.com/andris9/encoding.git", - "externalReferences": [ - { - "url": "git+https://github.com/andris9/encoding.git", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\"" - }, - { - "url": "https://github.com/andris9/encoding#readme", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/andris9/encoding/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/encoding" - } - ], - "components": [ - { - "type": "library", - "name": "iconv-lite", - "version": "0.6.3", - "bom-ref": "encoding@0.1.13|iconv-lite@0.6.3", - "author": "Alexander Shtuchkin", - "description": "Convert character encodings in pure javascript.", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/iconv-lite@0.6.3?vcs_url=git%3A//github.com/ashtuchkin/iconv-lite.git", - "externalReferences": [ - { - "url": "git://github.com/ashtuchkin/iconv-lite.git", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\"" - }, - { - "url": "https://github.com/ashtuchkin/iconv-lite", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/ashtuchkin/iconv-lite/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/encoding/node_modules/iconv-lite" - } - ] - } - ] - }, - { - "type": "library", - "name": "safer-buffer", - "version": "2.1.2", - "bom-ref": "safer-buffer@2.1.2", - "author": "Nikita Skovoroda", - "description": "Modern Buffer API polyfill without footguns", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/safer-buffer@2.1.2?vcs_url=git%2Bhttps%3A//github.com/ChALkeR/safer-buffer.git", - "externalReferences": [ - { - "url": "git+https://github.com/ChALkeR/safer-buffer.git", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\"" - }, - { - "url": "https://github.com/ChALkeR/safer-buffer#readme", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/ChALkeR/safer-buffer/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/safer-buffer" - } - ] - }, { "type": "library", "name": "whatwg-url", @@ -971,10 +852,16 @@ { "type": "library", "name": "jquery", - "version": "3.6.3", - "bom-ref": "jquery@3.6.3", + "version": "3.7.1", + "bom-ref": "jquery@3.7.1", "author": "OpenJS Foundation and other contributors", "description": "JavaScript library for DOM operations", + "hashes": [ + { + "alg": "SHA-512", + "content": "9b86afafcc8bf2498537ca6cadb14516607f21fd7888de68f67c3f3609e733e9326c326946c0329d5d81b1fa5362b4d1cac6147400d50fb0a45148b3824a4b7e" + } + ], "licenses": [ { "license": { @@ -982,7 +869,7 @@ } } ], - "purl": "pkg:npm/jquery@3.6.3?vcs_url=git%2Bhttps%3A//github.com/jquery/jquery.git", + "purl": "pkg:npm/jquery@3.7.1", "externalReferences": [ { "url": "git+https://github.com/jquery/jquery.git", @@ -998,6 +885,11 @@ "url": "https://github.com/jquery/jquery/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" + }, + { + "url": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "type": "distribution", + "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -1131,13 +1023,6 @@ "bom-ref": "vue@2.7.14|@vue/compiler-sfc@2.7.14", "description": "compiler-sfc for Vue 2", "purl": "pkg:npm/%40vue/compiler-sfc@2.7.14", - "externalReferences": [ - { - "url": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" - } - ], "properties": [ { "name": "cdx:npm:package:path", @@ -1159,7 +1044,7 @@ } } ], - "purl": "pkg:npm/postcss@8.4.31", + "purl": "pkg:npm/postcss@8.4.31?vcs_url=git%2Bhttps%3A//github.com/postcss/postcss.git", "externalReferences": [ { "url": "git+https://github.com/postcss/postcss.git", @@ -1175,11 +1060,6 @@ "url": "https://github.com/postcss/postcss/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -1203,7 +1083,7 @@ } } ], - "purl": "pkg:npm/picocolors@1.0.0", + "purl": "pkg:npm/picocolors@1.0.0?vcs_url=git%2Bhttps%3A//github.com/alexeyraspopov/picocolors.git", "externalReferences": [ { "url": "git+https://github.com/alexeyraspopov/picocolors.git", @@ -1219,11 +1099,6 @@ "url": "https://github.com/alexeyraspopov/picocolors/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -1313,45 +1188,6 @@ } ] }, - { - "type": "library", - "name": "focus-visible", - "version": "5.2.0", - "bom-ref": "focus-visible@5.2.0", - "author": "WICG", - "description": "Polyfill for :focus-visible pseudo-selector", - "licenses": [ - { - "license": { - "id": "W3C" - } - } - ], - "purl": "pkg:npm/focus-visible@5.2.0?vcs_url=git%2Bhttps%3A//github.com/WICG/focus-visible.git", - "externalReferences": [ - { - "url": "git+https://github.com/WICG/focus-visible.git", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\"" - }, - { - "url": "https://github.com/WICG/focus-visible", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/WICG/focus-visible/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/focus-visible" - } - ] - }, { "type": "library", "name": "leaflet", @@ -1365,7 +1201,7 @@ } } ], - "purl": "pkg:npm/leaflet@1.9.4", + "purl": "pkg:npm/leaflet@1.9.4?vcs_url=git%3A//github.com/Leaflet/Leaflet.git", "externalReferences": [ { "url": "git://github.com/Leaflet/Leaflet.git", @@ -1381,11 +1217,6 @@ "url": "https://github.com/Leaflet/Leaflet/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.4.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -2019,44 +1850,6 @@ } ] }, - { - "type": "library", - "name": "fsevents", - "version": "2.3.2", - "bom-ref": "fsevents@2.3.2", - "description": "Native Access to MacOS FSEvents", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/fsevents@2.3.2?vcs_url=git%2Bhttps%3A//github.com/fsevents/fsevents.git", - "externalReferences": [ - { - "url": "git+https://github.com/fsevents/fsevents.git", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\"" - }, - { - "url": "https://github.com/fsevents/fsevents", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/fsevents/fsevents/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/fsevents" - } - ] - }, { "type": "library", "name": "is-glob", @@ -2344,7 +2137,7 @@ } } ], - "purl": "pkg:npm/semver@7.5.4", + "purl": "pkg:npm/semver@7.5.4?vcs_url=git%2Bhttps%3A//github.com/npm/node-semver.git", "externalReferences": [ { "url": "git+https://github.com/npm/node-semver.git", @@ -2360,11 +2153,6 @@ "url": "https://github.com/npm/node-semver/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -5549,6 +5337,45 @@ } ] }, + { + "type": "library", + "name": "safer-buffer", + "version": "2.1.2", + "bom-ref": "safer-buffer@2.1.2", + "author": "Nikita Skovoroda", + "description": "Modern Buffer API polyfill without footguns", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "purl": "pkg:npm/safer-buffer@2.1.2?vcs_url=git%2Bhttps%3A//github.com/ChALkeR/safer-buffer.git", + "externalReferences": [ + { + "url": "git+https://github.com/ChALkeR/safer-buffer.git", + "type": "vcs", + "comment": "as detected from PackageJson property \"repository.url\"" + }, + { + "url": "https://github.com/ChALkeR/safer-buffer#readme", + "type": "website", + "comment": "as detected from PackageJson property \"homepage\"" + }, + { + "url": "https://github.com/ChALkeR/safer-buffer/issues", + "type": "issue-tracker", + "comment": "as detected from PackageJson property \"bugs.url\"" + } + ], + "properties": [ + { + "name": "cdx:npm:package:path", + "value": "node_modules/safer-buffer" + } + ] + }, { "type": "library", "name": "mkdirp", @@ -7547,10 +7374,16 @@ "type": "library", "name": "parser", "group": "@babel", - "version": "7.22.5", - "bom-ref": "@babel/parser@7.22.5", + "version": "7.23.3", + "bom-ref": "@babel/parser@7.23.3", "author": "The Babel Team", "description": "A JavaScript parser", + "hashes": [ + { + "alg": "SHA-512", + "content": "b95b1636f955b089e29d5da9acdcffde51c26fee4227e7be21405f6e34e8007383b5f1982df085b98e0053b4ec908f9d00a93e9e3b0f8818ead60293bd93816b" + } + ], "licenses": [ { "license": { @@ -7558,7 +7391,7 @@ } } ], - "purl": "pkg:npm/%40babel/parser@7.22.5?vcs_url=git%2Bhttps%3A//github.com/babel/babel.git#packages/babel-parser", + "purl": "pkg:npm/%40babel/parser@7.23.3#packages/babel-parser", "externalReferences": [ { "url": "git+https://github.com/babel/babel.git#packages/babel-parser", @@ -7574,6 +7407,11 @@ "url": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A+parser+%28babylon%29%22+is%3Aopen", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" + }, + { + "url": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.3.tgz", + "type": "distribution", + "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -7597,7 +7435,7 @@ } } ], - "purl": "pkg:npm/nanoid@3.3.6", + "purl": "pkg:npm/nanoid@3.3.6?vcs_url=git%2Bhttps%3A//github.com/ai/nanoid.git", "externalReferences": [ { "url": "git+https://github.com/ai/nanoid.git", @@ -7613,11 +7451,6 @@ "url": "https://github.com/ai/nanoid/issues", "type": "issue-tracker", "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" } ], "properties": [ @@ -7860,89 +7693,6 @@ } ] }, - { - "type": "library", - "name": "leaflet", - "group": "@types", - "version": "1.9.6", - "bom-ref": "@types/leaflet@1.9.6", - "description": "TypeScript definitions for Leaflet.js", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/%40types/leaflet@1.9.6#types/leaflet", - "externalReferences": [ - { - "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git#types/leaflet", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\" and \"repository.directory\"" - }, - { - "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/leaflet", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - }, - { - "url": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.6.tgz", - "type": "distribution", - "comment": "as detected from npm-ls property \"resolved\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/@types/leaflet" - } - ] - }, - { - "type": "library", - "name": "geojson", - "group": "@types", - "version": "7946.0.10", - "bom-ref": "@types/geojson@7946.0.10", - "description": "TypeScript definitions for geojson", - "licenses": [ - { - "license": { - "id": "MIT" - } - } - ], - "purl": "pkg:npm/%40types/geojson@7946.0.10?vcs_url=git%2Bhttps%3A//github.com/DefinitelyTyped/DefinitelyTyped.git#types/geojson", - "externalReferences": [ - { - "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git#types/geojson", - "type": "vcs", - "comment": "as detected from PackageJson property \"repository.url\" and \"repository.directory\"" - }, - { - "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/geojson", - "type": "website", - "comment": "as detected from PackageJson property \"homepage\"" - }, - { - "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues", - "type": "issue-tracker", - "comment": "as detected from PackageJson property \"bugs.url\"" - } - ], - "properties": [ - { - "name": "cdx:npm:package:path", - "value": "node_modules/@types/geojson" - } - ] - }, { "type": "library", "name": "vuex-geolocation", @@ -8109,8 +7859,7 @@ "ajv@6.12.6", "bootstrap-vue@2.23.1", "detectrtc@1.4.1", - "focus-visible@5.2.0", - "jquery@3.6.3", + "jquery@3.7.1", "leaflet@1.9.4", "localforage@1.10.0", "lodash@4.17.21", @@ -8223,25 +7972,9 @@ { "ref": "node-fetch@2.6.9", "dependsOn": [ - "encoding@0.1.13", "whatwg-url@5.0.0" ] }, - { - "ref": "encoding@0.1.13", - "dependsOn": [ - "encoding@0.1.13|iconv-lite@0.6.3" - ] - }, - { - "ref": "encoding@0.1.13|iconv-lite@0.6.3", - "dependsOn": [ - "safer-buffer@2.1.2" - ] - }, - { - "ref": "safer-buffer@2.1.2" - }, { "ref": "whatwg-url@5.0.0", "dependsOn": [ @@ -8258,12 +7991,12 @@ { "ref": "bootstrap@4.6.2", "dependsOn": [ - "jquery@3.6.3", + "jquery@3.7.1", "popper.js@1.16.1" ] }, { - "ref": "jquery@3.6.3" + "ref": "jquery@3.7.1" }, { "ref": "popper.js@1.16.1" @@ -8284,7 +8017,7 @@ { "ref": "vue@2.7.14|@vue/compiler-sfc@2.7.14", "dependsOn": [ - "@babel/parser@7.22.5", + "@babel/parser@7.23.3", "vue@2.7.14|postcss@8.4.31", "source-map@0.6.1" ] @@ -8306,9 +8039,6 @@ { "ref": "detectrtc@1.4.1" }, - { - "ref": "focus-visible@5.2.0" - }, { "ref": "leaflet@1.9.4" }, @@ -8349,7 +8079,6 @@ "dependsOn": [ "anymatch@3.1.3", "chokidar@3.5.3|braces@3.0.2", - "fsevents@2.3.2", "chokidar@3.5.3|glob-parent@5.1.2", "is-binary-path@2.1.0", "is-glob@4.0.3", @@ -8397,9 +8126,6 @@ { "ref": "picomatch@2.3.1" }, - { - "ref": "fsevents@2.3.2" - }, { "ref": "is-glob@4.0.3", "dependsOn": [ @@ -8887,6 +8613,9 @@ "safer-buffer@2.1.2" ] }, + { + "ref": "safer-buffer@2.1.2" + }, { "ref": "mkdirp@0.5.6", "dependsOn": [ @@ -9136,7 +8865,7 @@ ] }, { - "ref": "@babel/parser@7.22.5" + "ref": "@babel/parser@7.23.3" }, { "ref": "nanoid@3.3.6" @@ -9169,20 +8898,10 @@ { "ref": "vue2-leaflet@2.7.1", "dependsOn": [ - "@types/leaflet@1.9.6", "leaflet@1.9.4", "vue@2.7.14" ] }, - { - "ref": "@types/leaflet@1.9.6", - "dependsOn": [ - "@types/geojson@7946.0.10" - ] - }, - { - "ref": "@types/geojson@7946.0.10" - }, { "ref": "vuex-geolocation@1.2.0", "dependsOn": [ diff --git a/src/App.vue b/src/App.vue index 59480d5..877a91a 100644 --- a/src/App.vue +++ b/src/App.vue @@ -74,7 +74,6 @@ export default { } }, mounted() { - // TODO (maybe on destroyed without button?) if ('serviceWorker' in navigator) { console.log('CHECK_SW') const wb = new Workbox('/service-worker.js') @@ -137,11 +136,6 @@ html, body { width: 100%; min-width: 312px; background-color: $background; - /* background-image: linear-gradient(to bottom, $white 0%, $background 80%); - background-image: -moz-linear-gradient(to bottom, $white 0%, $background 80%); - background-image: -webkit-linear-gradient(bottom, $white 0%, $background 80%); - background-image: -o-linear-gradient(to bottom, $white 0%, $background 80%); - background-image: -ms-linear-gradient(to bottom, $white 0%, $background 80%); */ } #main-container { @@ -221,13 +215,4 @@ hr { margin-right: 4rem; margin-left: 4rem; } - -/* - This will hide the focus indicator if the element receives focus via the mouse, - but it will still show up on keyboard focus. -*/ -.js-focus-visible :focus:not(.focus-visible) { - outline: none; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} diff --git a/src/main.js b/src/main.js index cda87ef..e0d6399 100644 --- a/src/main.js +++ b/src/main.js @@ -14,7 +14,6 @@ import 'leaflet/dist/leaflet.css' import i18n from './i18n' import VScrollLock from 'v-scroll-lock' import vueHeadful from 'vue-headful' -import 'focus-visible/dist/focus-visible.min' Vue.component('vue-headful', vueHeadful) @@ -44,11 +43,6 @@ Vue.use(Vue2Leaflet) Vue.use(VueResource) Vue.use(VScrollLock) -// Root der API - im Moment dient die corsproxy.php als CORS-Proxy -/* Vue.http.options.root = - 'https://kultursphaere .sh/corsproxy.php?url='; */ -// TODO(change off to error in eslintc.js at no-console and no-debugger) - new Vue({ router, store, @@ -65,15 +59,14 @@ new Vue({ function getCookie(cname) { const name = cname + '=' const ca = document.cookie.split(';') - for (let i = 0; i < ca.length; i++) { - let c = ca[i] - while (c.charAt(0) === ' ') { + ca.forEach(c => { + while (c.startsWith(' ')) { c = c.substring(1) } - if (c.indexOf(name) === 0) { + if (c.startsWith(name)) { return c.substring(name.length, c.length) } - } + }) return '' }