leaflet-polydraw
Version:
Advanced Leaflet plugin for freehand polygon drawing, with smart merging and powerful editing tools. Compatible with both Leaflet v1.x and v2.x.
137 lines (136 loc) • 4.63 kB
JSON
{
"name": "leaflet-polydraw",
"version": "2.0.2",
"description": "Advanced Leaflet plugin for freehand polygon drawing, with smart merging and powerful editing tools. Compatible with both Leaflet v1.x and v2.x.",
"main": "dist/polydraw.umd.min.js",
"module": "dist/polydraw.es.js",
"types": "dist/types/index.d.ts",
"exports": {
".": {
"types": "./dist/types/index.d.ts",
"import": "./dist/polydraw.es.js",
"require": "./dist/polydraw.umd.min.js"
},
"./dist/*": "./dist/*",
"./leaflet-polydraw.css": "./dist/leaflet-polydraw.css"
},
"keywords": [
"leaflet",
"leaflet-v2",
"leaflet-v1",
"polygon",
"drawing",
"editing",
"geospatial",
"mapping",
"drag-drop",
"merge",
"geometry",
"compatibility",
"pointer-events"
],
"homepage": "https://github.com/AndreasOlausson/leaflet-polydraw#readme",
"demo": "https://polydraw.ao-tech.se",
"repository": {
"type": "git",
"url": "git+https://github.com/AndreasOlausson/leaflet-polydraw.git"
},
"bugs": {
"url": "https://github.com/AndreasOlausson/leaflet-polydraw/issues"
},
"author": {
"name": "Andreas Olausson",
"url": "https://github.com/AndreasOlausson"
},
"license": "MIT",
"engines": {
"node": ">=18",
"npm": ">=9"
},
"scripts": {
"build": "npm run lint:fix && vite build && npm run build:types",
"build:types": "tsc --project tsconfig.build.json && echo 'export { default, leafletAdapter, defaultConfig, registerWithLeaflet } from \"./polydraw\"; export type { PolygonMenuAction, PolygonMenuActionContext, PolygonMenuActionResult } from \"./polydraw\";' > dist/types/index.d.ts",
"dev": "vite build --watch",
"preview": "vite preview",
"sync:readme": "node scripts/sync-readme.mjs",
"test": "vitest --config test/unit/setup/vitest.config.ts",
"test:coverage": "vitest --config test/unit/setup/vitest.config.ts --coverage",
"test:ui": "vitest --config test/unit/setup/vitest.config.ts --ui",
"test:leaflet:v1": "./scripts/test-leaflet-version.sh v1",
"test:leaflet:v2": "./scripts/test-leaflet-version.sh v2",
"test:leaflet:matrix": "npm run test:leaflet:v1 && npm run test:leaflet:v2",
"test:playwright": "npm run build && npm --prefix demo --ignore-scripts run build && playwright test",
"test:playwright:v1": "./scripts/test-leaflet-version.sh v1 -- npm run test:playwright",
"test:playwright:v2": "./scripts/test-leaflet-version.sh v2 -- npm run test:playwright",
"test:playwright:matrix": "npm run test:playwright:v1 && npm run test:playwright:v2",
"test:e2e": "npm run test:playwright",
"test:types": "tsc --noEmit --project tsconfig.json",
"lint": "eslint ./src --ext .ts",
"lint:test": "eslint ./test --ext .ts",
"lint:demo": "eslint ./demo --ext .ts",
"lint:fix": "eslint ./src --ext .ts --fix",
"prepack": "npm run sync:readme",
"prepare": "npm run build"
},
"devDependencies": {
"@eslint/js": "^9.12.0",
"@playwright/test": "1.56.1",
"@types/geojson": "^7946.0.16",
"@types/leaflet": "^1.9.18",
"@types/node": "^22.15.30",
"@typescript-eslint/eslint-plugin": "^8.8.1",
"@typescript-eslint/parser": "^8.8.1",
"@vitest/coverage-v8": "^3.2.4",
"@vitest/ui": "^3.2.4",
"eslint": "^9.12.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.2.1",
"globals": "^15.12.0",
"jsdom": "^25.0.1",
"leaflet": "^2.0.0-alpha.1",
"prettier": "^3.6.2",
"terser": "^5.36.0",
"typescript": "~5.8.3",
"vite": "^6.3.5",
"vite-plugin-static-copy": "^3.0.0",
"vitest": "^3.2.4"
},
"dependencies": {
"@turf/bezier-spline": "^7.2.0",
"@turf/boolean-equal": "^7.2.0",
"@turf/boolean-point-in-polygon": "^7.2.0",
"@turf/boolean-within": "^7.2.0",
"@turf/center-of-mass": "^7.2.0",
"@turf/convex": "^7.2.0",
"@turf/difference": "^7.2.0",
"@turf/explode": "^7.2.0",
"@turf/intersect": "^7.2.0",
"@turf/kinks": "^7.2.0",
"@turf/length": "^7.2.0",
"@turf/line-intersect": "^7.2.0",
"@turf/line-to-polygon": "^7.2.0",
"@turf/meta": "^7.2.0",
"@turf/nearest-point": "^7.2.0",
"@turf/polygon-to-line": "^7.2.0",
"@turf/simplify": "^7.2.0",
"@turf/union": "^7.2.0",
"@turf/unkink-polygon": "^7.2.0",
"concaveman": "^2.0.0"
},
"peerDependencies": {
"leaflet": "^1.9.4 || ^2.0.0-alpha"
},
"peerDependenciesMeta": {
"leaflet": {
"optional": false
}
},
"files": [
"dist",
"README.md",
"LICENSE"
],
"sideEffects": [
"*.css"
]
}