mapcomplete/package.json

282 lines
16 KiB
JSON

{
"name": "mapcomplete",
"version": "0.47.10",
"repository": "https://github.com/pietervdvn/MapComplete",
"description": "A small website to edit OSM easily",
"bugs": "https://github.com/pietervdvn/MapComplete/issues",
"homepage": "https://mapcomplete.org",
"main": "index.ts",
"type": "module",
"config": {
"#oauth_credentials:comment": [
"`oauth_credentials` are the OAuth-2 credentials for the production-OSM server and the test-server.",
"Are you deploying your own instance? Register your application too.",
"See https://wiki.openstreetmap.org/wiki/OAuth#Registering_your_application_as_OAuth_2.0_consumer for instructions",
"Use `https://<your domain name>/<path to mapcomplete>/land.html` as redirect URIs. You can add `http://127.0.0.1:1234/land.html` too for local development.",
"Alternatively, you can override the `osm` credentials using the environment variables `VITE_OSM_OAUTH_CLIENT_ID` and `VITE_OSM_OAUTH_SECRET`"
],
"oauth_credentials": {
"#": "This client-id is registered by 'MapComplete' on OpenStreetMap.org",
"#fork": "For a fork, you will need to register your own key at https://www.openstreetmap.org/oauth2/applications ; redirect url is `https://<your-domain>/land.html`, permissions: `read_user_preferences`, `modify preferences`, `modify the map`. For GPS-traces: both, `modify-notes` if you want the notes-theme to work.",
"oauth_client_id": "K93H1d8ve7p-tVLE1ZwsQ4lAFLQk8INx5vfTLMu5DWk",
"oauth_secret": "NBWGhWDrD3QDB35xtVuxv4aExnmIt4FA_WgeLtwxasg",
"url": "https://www.openstreetmap.org",
"api_url": "https://api.openstreetmap.org"
},
"disabled:oauth_credentials": {
"##": "DEV",
"#": "This client-id is registered by 'MapComplete' on https://master.apis.dev.openstreetmap.org/",
"oauth_client_id": "BAPPMRuojjFsY__0APmScr1hbebYj1GlDbV6S5TsUbo",
"oauth_secret": "Lq1UKYAySRfQfwgFctGvlGrfxbGHQwggheE52HIGrO8",
"url": "https://master.apis.dev.openstreetmap.org",
"api_url": "https://master.apis.dev.openstreetmap.org"
},
"mvt_layer_server": "https://cache.mapcomplete.org/public.{type}_{layer}/{z}/{x}/{y}.pbf",
"#summary_server": "Should be the endpoint; appending status.json should work",
"summary_server": "https://cache.mapcomplete.org/",
"geoip_server": "https://ipinfo.mapcomplete.org/",
"error_server": "https://report.mapcomplete.org/report",
"api_keys": {
"#": "Various API-keys for various services. Feel free to reuse those in another MapComplete-hosted version",
"#fork": "Not bound to a domain; can be reused",
"imgur": "7070e7167f0a25a",
"mapillary_v4": "MLY|4441509239301885|b40ad2d3ea105435bd40c7e76993ae85"
},
"panoramax": {
"#fork": "Not bound to a domain; can be reused",
"url": "https://panoramax.mapcomplete.org",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnZW92aXNpbyIsInN1YiI6IjU5ZjgzOGI0LTM4ZjAtNDdjYi04OWYyLTM3NDQ3MWMxNTUxOCJ9.0rBioZS_48NTjnkIyN9497c3fQdTqtGgH1HDqlz1bWs",
"sequence": "6e702976-580b-419c-8fb3-cf7bd364e6f8",
"testsequence": "7f34cf53-27ff-46c9-ac22-78511fa8457a"
},
"default_overpass_urls": [
"https://overpass-api.de/api/interpreter",
"https://overpass.private.coffee/api/interpreter",
"https://overpass.osm.jp/api/interpreter"
],
"#broken_overpass_urls": {
"https://maps.mail.ru/osm/tools/overpass/api/interpreter": "Blocked by firefox strict tracking protection as 'tracking'",
"https://overpass.openstreetmap.ru/cgi/interpreter": "Broken as of 2024-09-05, might be a glitch"
},
"country_coder_host": "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/latlon2country",
"nominatimEndpoint": "https://geocoding.geofabrik.de/b75350b1cfc34962ac49824fe5b582dc/",
"#photonEndpoint": "`api/` or `reverse/` will be appended by the code",
"photonEndpoint": "https://photon.komoot.io/",
"jsonld-proxy": "https://lod.mapcomplete.org/extractgraph?url={url}",
"protomaps": {
"#fork": "Bound to https://mapcomplete.org; get your own at https://protomaps.com/",
"api-key": "2af8b969a9e8b692",
"endpoint": "https://api.protomaps.com/tiles/",
"styles": [
"https://api.protomaps.com/styles/v2/light.json",
"https://api.protomaps.com/styles/v2/dark.json",
"https://api.protomaps.com/styles/v2/white.json",
"https://api.protomaps.com/styles/v2/grayscale.json",
"https://api.protomaps.com/styles/v2/black.json"
]
}
},
"scripts": {
"init": "npm ci && npm run prep:layeroverview && npm run generate && npm run download:editor-layer-index && npm run generate:layouts && npm run clean",
"start": "npm run generate:layeroverview && npm run strt",
"strt": "vite --host | sed 's/localhost:/127.0.0.1:/g'",
"build": "./scripts/build.sh",
"build:single": "./scripts/single_build.sh",
"build:dbscript": "vite-node ./scripts/osm2pgsql/generateBuildDbScript.ts",
"prepare-deploy": "npm run generate:service-worker && ./scripts/prepare-build.sh && npm run build",
"watch:css": "tailwindcss -i src/index.css -o public/css/index-tailwind-output.css --watch",
"generate:css": "tailwindcss -i src/index.css -o public/css/index-tailwind-output.css",
"generate:doctests": "doctest-ts-improved . --ignore .*.spec.ts --ignore .*ConfigJson.ts",
"test:run-only": "vitest --run test",
"test": " export NODE_OPTIONS=\"--max-old-space-size=8192\" && npm run clean:tests && (npm run generate:doctests 2>&1 | grep -v \"No doctests found in\") && npm run test:run-only && npm run clean:tests",
"generate:polygon-features": "vite-node scripts/downloadFile.ts -- https://raw.githubusercontent.com/tyrasd/osm-polygon-features/master/polygon-features.json assets/polygon-features.json",
"generate:images": "vite-node scripts/generateIncludedImages.ts",
"generate:translations": "vite-node scripts/generateTranslations.ts",
"reset:translations": "vite-node scripts/generateTranslations.ts -- --ignore-weblate",
"generate:layouts": "vite-node scripts/generateLayouts.ts",
"generate:docs": "rm -rf Docs/Themes/* && rm -rf Docs/Layers/* && rm -rf Docs/TagInfo && mkdir Docs/TagInfo && export NODE_OPTIONS=\"--max-old-space-size=16000\" && vite-node scripts/generateDocs.ts && vite-node scripts/generateTaginfoProjectFiles.ts",
"generate:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts",
"generate:mapcomplete-changes-theme": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --generate-change-map",
"refresh:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --force",
"generate:licenses": "vite-node scripts/generateLicenseInfo.ts -- --no-fail",
"query:licenses": "vite-node scripts/generateLicenseInfo.ts -- --query",
"generate:contributor-list": "vite-node scripts/generateContributors.ts",
"generate:service-worker": "tsc src/service-worker.ts --outFile public/service-worker.js && git_hash=$(git rev-parse HEAD) && sed -i.bak \"s/GITHUB-COMMIT/$git_hash/\" public/service-worker.js && rm public/service-worker.js.bak",
"reset:layeroverview": "npm run prep:layeroverview && npm run generate:layeroverview && npm run refresh:layeroverview",
"prep:layeroverview": "./scripts/initFiles.sh",
"generate": "npm run generate:licenses && npm run generate:images && npm run generate:charging-stations && npm run generate:translations && npm run refresh:layeroverview && npm run generate:service-worker",
"generate:charging-stations": "cd ./assets/layers/charging_station && vite-node csvToJson.ts && cd -",
"clean:tests": "find . -type f -name \"*.doctest.ts\" | xargs -r rm",
"clean": "rm -rf .cache/ && (find *.html | grep -v \"^\\(404\\|index\\|land\\|privacy\\|test\\|studio\\|theme\\|style_test\\|statistics\\|status\\|leaderboard\\).html\" | xargs -r rm) && (ls | grep \"^index_[a-zA-Z_-]\\+\\.ts$\" | xargs -r rm)",
"generate:dependency-graph": "node_modules/.bin/depcruise --exclude \"^node_modules\" --output-type dot Logic/State/MapState.ts > dependencies.dot && dot dependencies.dot -T svg -o dependencies.svg && rm dependencies.dot",
"scrapeWebsites": "vite-node scripts/importscripts/compareWebsiteData.ts -- ~/Downloads/ShopsWithWebsiteNodes.csv ~/data/scraped_websites/",
"### 0": "VELOPARK",
"velopark:compare": "vite-node scripts/velopark/compare.ts -- velopark_nonsynced_.geojson ~/Projecten/OSM/Fietsberaad/2024-02-02\\ Fietsenstallingen_OSM_met_velopark_ref.geojson\n",
"velopark:download": "vite-node scripts/velopark/veloParkToGeojson.ts ",
"### 1": "CODE AND DATA MAINTAINENCE",
"download:nsi-logos": "vite-node scripts/downloadNsiLogos.ts || npm run downloadNsiLogos # This script crashes often without the possibility to correct - hence the auto retry with OR",
"download:editor-layer-index": "vite-node scripts/downloadEli.ts",
"download:stats": "vite-node scripts/GenerateSeries.ts",
"download:images": "vite-node scripts/generateImageAnalysis.ts -- ~/data/imgur-image-backup/",
"weblate:add-upstream": "git remote add weblate https://translate.mapcomplete.org/git/mapcomplete/core/ ; git remote update weblate",
"weblate:fix": "npm run weblate:add-upstream && git merge weblate/master && git rebase origin/master && git push origin master",
"lint": "npm run lint:prettier && npm run lint:eslint && npm run lint:themes",
"lint:eslint": "eslint ./src",
"lint:prettier": "prettier --check '**/*.ts' '**/*.svelte'",
"lint:themes": "vite-node scripts/lint.ts",
"format": "prettier --write '**/*.ts' '**/*.svelte'",
"optimize-images-png": "cd assets/generated/ && find -name '*.png' -exec optipng '{}' \\; && echo 'PNGs are optimized'",
"optimize-images-jpg": "cd assets/ && find . -regextype sed -regex \".*/.*.\\(jpg\\|JPG\\|JPEG\\|jpeg\\)\" -exec jpegoptim '{}' \\; && echo 'JPGs are optimized'",
"optimize-images-scaledown-jpg": "cd assets/ && find . -regextype sed -regex \".*/.*.\\(jpg\\|JPG\\|JPEG\\|jpeg\\)\" -exec mogrify -resize 640x640\\> '{}' \\; && echo 'JPGs are optimized'",
"generate:schemas": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && ts2json-schema -p src/Models/ThemeConfig/Json/ -o Docs/Schemas/ -t tsconfig.json -R . -m \".*ConfigJson\" && echo 'tsjson is done' && vite-node scripts/fixSchemas.ts ",
"reuse-compliance": "reuse lint",
"housekeeping": "export NODE_OPTIONS=\"--max-old-space-size=1200\" && git pull && npx update-browserslist-db@latest && npm run generate && npm run generate:docs && npm run generate:schemas && npm run generate:contributor-list && vite-node scripts/fetchLanguages.ts && vite-node scripts/generateSunnyUnlabeled.ts && npm run format && git add assets/ langs/ Docs/ **/*.ts Docs/* src/* && git commit -m 'chore: automated housekeeping...'",
"###": "MICROSERVICES AND SERVER MAINTAINENCE",
"release": "standard-version && git push --follow-tags",
"release:minor": "standard-version --release-as minor",
"release:patch": "standard-version --release-as patch",
"release:major": "standard-version --release-as major",
"server:summary": "vite-node scripts/osm2pgsql/tilecountServer.ts",
"server:ldjson": "vite-node scripts/serverLdScrape.ts",
"server:studio": "vite-node scripts/studioServer -- /root/git/MapComplete/assets",
"server:errorreport": "vite-node scripts/serverErrorReport.ts -- /root/error_reports/",
"generate:buildDbScript": "vite-node scripts/osm2pgsql/generateBuildDbScript.ts",
"generate:summaryCache": "vite-node scripts/generateSummaryTileCache.ts",
"create:database": "vite-node scripts/osm2pgsql/createNewDatabase.ts",
"delete:database:old": "vite-node scripts/osm2pgsql/deleteOldDbs.ts",
"upload:panoramax": "vite-node scripts/ImgurToPanoramax.ts # && josm imgur_to_panoramax.osc"
},
"keywords": [
"OpenStreetMap",
"Editor"
],
"author": "pietervdvn",
"license": "GPL-3.0-or-later",
"browserslist": [
">0.2%",
"not dead",
"not ie < 11",
"not op_mini all"
],
"dependencies": {
"@comunica/core": "^3.0.1",
"@comunica/query-sparql": "^3.0.1",
"@comunica/query-sparql-link-traversal": "^0.3.0",
"@rapideditor/location-conflation": "^1.3.0",
"@rgossiaux/svelte-headlessui": "^1.0.2",
"@rgossiaux/svelte-heroicons": "^0.1.2",
"@rollup/plugin-typescript": "^11.0.0",
"@turf/boolean-intersects": "^6.5.0",
"@turf/buffer": "^6.5.0",
"@turf/collect": "^6.5.0",
"@turf/difference": "^6.5.0",
"@turf/distance": "^6.5.0",
"@turf/length": "^6.5.0",
"@turf/turf": "^6.5.0",
"@types/dompurify": "^3.0.2",
"@types/follow-redirects": "^1.14.4",
"@types/pg": "^8.10.9",
"@types/qrcode-generator": "^1.0.6",
"@types/showdown": "^2.0.0",
"buffer": "^6.0.3",
"chart.js": "^3.8.0",
"comunica": "^2.0.0",
"coordinate-parser": "^1.0.7",
"country-language": "^0.1.7",
"country-to-currency": "^1.0.10",
"crypto": "^1.0.1",
"csv-parse": "^5.1.0",
"doctest-ts-improved": "^0.8.8",
"dompurify": "^3.0.5",
"email-validator": "^2.0.4",
"escape-html": "^1.0.3",
"exifreader": "^4.23.5",
"fake-dom": "^1.0.4",
"flowbite-svelte": "^0.46.2",
"follow-redirects": "^1.15.6",
"geojson2svg": "^1.3.3",
"html-to-image": "^1.11.11",
"i18next-client": "^1.11.4",
"idb-keyval": "^6.0.3",
"jest-mock": "^29.4.1",
"jsonld": "^8.3.2",
"jsonld-request": "^2.0.1",
"jspdf": "^2.5.1",
"latlon2country": "^1.2.6",
"libphonenumber-js": "^1.10.8",
"lz-string": "^1.4.4",
"mangrove-reviews-typescript": "^1.1.0",
"maplibre-gl": "^4.1.1",
"marked": "^12.0.2",
"monaco-editor": "^0.46.0",
"mvt-to-geojson": "^0.0.5",
"name-suggestion-index": "^6.0.20240422",
"npm": "^10.7.0",
"opening_hours": "^3.6.0",
"osm-auth": "^2.5.0",
"osmtogeojson": "^3.0.0-beta.5",
"panoramax-js": "^0.4.8",
"panzoom": "^9.4.3",
"papaparse": "^5.3.1",
"pg": "^8.11.3",
"pic4carto": "^2.1.15",
"pluscodes": "^2.6.0",
"pmtiles": "^3.0.5",
"prompt-sync": "^4.2.0",
"qrcode-generator": "^1.4.4",
"showdown": "^2.1.0",
"svg-path-parser": "^1.1.0",
"tailwind-merge": "^1.13.1",
"tailwindcss": "^3.1.8",
"turndown": "^7.1.3",
"vite-node": "^0.28.3",
"vitest": "^0.28.3",
"wikibase-sdk": "^10.1.1",
"xml2js": "^0.5.0"
},
"devDependencies": {
"@babeard/svelte-heroicons": "^2.0.0-rc.0",
"@babel/polyfill": "^7.10.4",
"@babel/preset-env": "7.13.8",
"@monaco-editor/loader": "^1.4.0",
"@parcel/service-worker": "^2.6.0",
"@rollup/plugin-json": "^6.0.0",
"@sveltejs/vite-plugin-svelte": "^2.0.2",
"@tsconfig/svelte": "^3.0.0",
"@types/chai": "^4.3.0",
"@types/geojson": "^7946.0.10",
"@types/jsonld": "^1.5.13",
"@types/lz-string": "^1.3.34",
"@types/mocha": "^10.0.1",
"@types/node": "^18.11.18",
"@types/papaparse": "^5.3.1",
"@types/prompt-sync": "^4.1.0",
"@types/wikidata-sdk": "^6.1.0",
"@types/xml2js": "^0.4.9",
"@typescript-eslint/eslint-plugin": "^6.1.0",
"@typescript-eslint/parser": "^6.1.0",
"@vitejs/plugin-basic-ssl": "^1.0.2",
"assert": "^2.0.0",
"chai": "^4.3.6",
"dependency-cruiser": "^16.3.0",
"eslint": "^8.45.0",
"eslint-plugin-svelte": "^2.32.2",
"fs": "0.0.1-security",
"node-html-parser": "^6.1.5",
"prettier": "^2.8.8",
"prettier-plugin-svelte": "^2.10.1",
"prettier-plugin-tailwindcss": "^0.3.0",
"read-file": "^0.2.0",
"sass": "^1.58.0",
"sharp": "^0.32.6",
"standard-version": "^9.5.0",
"svelte": "^3.55.1",
"svelte-check": "^3.0.2",
"svelte-preprocess": "^5.0.1",
"ts-node": "^10.9.1",
"ts2json-schema": "^1.4.0",
"tslib": "^2.5.0",
"typescript": "^4.7.4",
"vite": "^4.5.3"
}
}