{"_id":"maplibre-gl-duckdb","_rev":"6-256b8b9e95a4554d659cfe25b4523818","name":"maplibre-gl-duckdb","dist-tags":{"latest":"0.2.4"},"versions":{"0.1.0":{"name":"maplibre-gl-duckdb","version":"0.1.0","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","_id":"maplibre-gl-duckdb@0.1.0","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"dist":{"shasum":"7849424d8fbab25bc0e2a7ce349fda1f384ba726","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.1.0.tgz","fileCount":40,"integrity":"sha512-GR+TZF7vZ+xw8B3x4sK70mqo9yXM7r6EUDS0Bl769R1HM8k+1NrBD8WuYkK/8zhlBKp+ui2gExITK6yEaYscog==","signatures":[{"sig":"MEUCIDwVIiK4YHiMoV2Eam69MGuB3EEic7wx75aHyRd6CYWrAiEArIVSosmE2TMGas8Uwo5N5rG/uzMM2WgVj3nGQzaoQSo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124326},"main":"./dist/index.cjs","type":"module","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"gitHead":"9eb436e2cf7b0f7c0e9d30f56afb57d74d7c7126","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest --run","build":"tsc -p tsconfig.build.json && vite build","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","preview":"vite preview","test:ui":"vitest --ui","test:coverage":"vitest --coverage","build:examples":"vite build --config vite.examples.config.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"giswqs","email":"giswqs@gmail.com"},"repository":{"url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git","type":"git"},"_npmVersion":"11.14.1","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","directories":{},"sideEffects":["*.css"],"_nodeVersion":"26.2.0","dependencies":{"apache-arrow":">=21.1.0","@deck.gl/core":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@math.gl/polygon":">=4.1.0","@deck.gl/geo-layers":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@deck.gl/aggregation-layers":">=9.3.2","@walkthru-earth/objex-utils":">=1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":">=8.0.14","jsdom":">=29.1.1","react":">=19.2.6","eslint":">=10.4.1","vitest":">=4.1.7","prettier":">=3.8.3","react-dom":">=19.2.6","@vitest/ui":">=4.1.7","typescript":">=6.0.3","@types/node":">=25.9.1","maplibre-gl":">=5.24.0","@types/react":">=19.2.15","vite-plugin-dts":">=5.0.1","@types/react-dom":">=19.2.3","@vitejs/plugin-react":">=6.0.2","@testing-library/react":">=16.3.2","@typescript-eslint/parser":">=8.60.0","@testing-library/user-event":">=14.6.1","@typescript-eslint/eslint-plugin":">=8.60.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0","maplibre-gl":">=3.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/maplibre-gl-duckdb_0.1.0_1780194134959_0.4654307359162786","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"maplibre-gl-duckdb","version":"0.2.0","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","_id":"maplibre-gl-duckdb@0.2.0","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"dist":{"shasum":"d5b6e1309d39c51f96bdb8fdee13801ad315bb00","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.2.0.tgz","fileCount":40,"integrity":"sha512-0UlrpBfD82Hj4WJZcGdyXG123V6YjUTQblmaBma0nGUh/1fslZcE0WtQjHshoTf9vrcZ9sX/WCIp5JUAzK3Ryw==","signatures":[{"sig":"MEUCIQCNVJFOykk2g8Ei3uH655TFiFUwmzR8fIQ3DcA9tVT4sQIgUF5nheMLRIMrMs5TOQnrbP5p+XBaL4mGkreWeueTStw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/maplibre-gl-duckdb@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":124326},"main":"./dist/index.cjs","type":"module","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"gitHead":"12cdcb200ad35491cb8b255a3fcfbf08c04afefa","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest --run","build":"tsc -p tsconfig.build.json && vite build","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","preview":"vite preview","test:ui":"vitest --ui","test:coverage":"vitest --coverage","build:examples":"vite build --config vite.examples.config.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5385b192-52cb-41cc-be74-6a8f2be13960"}},"repository":{"url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git","type":"git"},"_npmVersion":"11.16.0","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.16.0","dependencies":{"apache-arrow":">=21.1.0","@deck.gl/core":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@math.gl/polygon":">=4.1.0","@deck.gl/geo-layers":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@deck.gl/aggregation-layers":">=9.3.2","@walkthru-earth/objex-utils":">=1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":">=8.0.14","jsdom":">=29.1.1","react":">=19.2.6","eslint":">=10.4.1","vitest":">=4.1.7","prettier":">=3.8.3","react-dom":">=19.2.6","@vitest/ui":">=4.1.7","typescript":">=6.0.3","@types/node":">=25.9.1","maplibre-gl":">=5.24.0","@types/react":">=19.2.15","vite-plugin-dts":">=5.0.1","@types/react-dom":">=19.2.3","@vitejs/plugin-react":">=6.0.2","@testing-library/react":">=16.3.2","@typescript-eslint/parser":">=8.60.0","@testing-library/user-event":">=14.6.1","@typescript-eslint/eslint-plugin":">=8.60.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0","maplibre-gl":">=3.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/maplibre-gl-duckdb_0.2.0_1780195113026_0.19636049869412586","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"maplibre-gl-duckdb","version":"0.2.1","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","_id":"maplibre-gl-duckdb@0.2.1","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"dist":{"shasum":"d319e479fc1c0d9a4bcec71741f7260e6bc064fd","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.2.1.tgz","fileCount":40,"integrity":"sha512-8yyLOaeRY39EBFUsCgcPfTXmAX0VOa6UCgDku5aiFEouBB1SVYeVZM9Ssn3FZ8/H4e7fCRAzBa7Ij84WcJZ/PA==","signatures":[{"sig":"MEYCIQDNA7FDNZGRLUEBjqNi9ZvjyRdvSqe5Z6KcZZ9cEJp9kwIhAIIoN7Xj7/urzVR4PELoIprY9QhCYGIHrbx4PD9mumR2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/maplibre-gl-duckdb@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":130465},"main":"./dist/index.cjs","type":"module","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"gitHead":"80bb83ae643d9c5e2f0aaa746eccdd1e9b8cf729","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest --run","build":"tsc -p tsconfig.build.json && vite build","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","preview":"vite preview","test:ui":"vitest --ui","test:coverage":"vitest --coverage","build:examples":"vite build --config vite.examples.config.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5385b192-52cb-41cc-be74-6a8f2be13960"}},"repository":{"url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git","type":"git"},"_npmVersion":"11.17.0","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.16.0","dependencies":{"apache-arrow":">=21.1.0","@deck.gl/core":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@math.gl/polygon":">=4.1.0","@deck.gl/geo-layers":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@deck.gl/aggregation-layers":">=9.3.2","@walkthru-earth/objex-utils":">=1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":">=8.0.14","jsdom":">=29.1.1","react":">=19.2.6","eslint":">=10.4.1","vitest":">=4.1.7","prettier":">=3.8.3","react-dom":">=19.2.6","@vitest/ui":">=4.1.7","typescript":">=6.0.3","@types/node":">=25.9.1","maplibre-gl":">=5.24.0","@types/react":">=19.2.15","vite-plugin-dts":">=5.0.1","@types/react-dom":">=19.2.3","@vitejs/plugin-react":">=6.0.2","@testing-library/react":">=16.3.2","@typescript-eslint/parser":">=8.60.0","@testing-library/user-event":">=14.6.1","@typescript-eslint/eslint-plugin":">=8.60.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0","maplibre-gl":">=3.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/maplibre-gl-duckdb_0.2.1_1782070102389_0.563070949503254","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"maplibre-gl-duckdb","version":"0.2.2","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","_id":"maplibre-gl-duckdb@0.2.2","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"dist":{"shasum":"fc6d731c350f1d62e7233551cd42f911226a0e2f","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.2.2.tgz","fileCount":40,"integrity":"sha512-/lg5/+7X396auk0uJI6IFWXqlSnnvcIUIGCbe4lhIjdfRL2lWncDgHtqUG3o5S/SjzIC/O9Mek+mwpAe3l2tEQ==","signatures":[{"sig":"MEQCICjH2TikPR9JhXE4R6NRtCMCGanIHCUuo5s73YNJHa3aAiBpX39V2z1ofE4j4Z9thFdEPcunDFqlD3ryLj81UqcMXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/maplibre-gl-duckdb@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136972},"main":"./dist/index.cjs","type":"module","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"gitHead":"6f81f3c94a14121c3c3297cc77ae6fd40b6a4bee","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest --run","build":"tsc -p tsconfig.build.json && vite build","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","preview":"vite preview","test:ui":"vitest --ui","test:coverage":"vitest --coverage","build:examples":"vite build --config vite.examples.config.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5385b192-52cb-41cc-be74-6a8f2be13960"}},"repository":{"url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git","type":"git"},"_npmVersion":"11.17.0","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.16.0","dependencies":{"apache-arrow":">=21.1.0","@deck.gl/core":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@math.gl/polygon":">=4.1.0","@deck.gl/geo-layers":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@deck.gl/aggregation-layers":">=9.3.2","@walkthru-earth/objex-utils":">=1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":">=8.0.14","jsdom":">=29.1.1","react":">=19.2.6","eslint":">=10.4.1","vitest":">=4.1.7","prettier":">=3.8.3","react-dom":">=19.2.6","@vitest/ui":">=4.1.7","typescript":">=6.0.3","@types/node":">=25.9.1","maplibre-gl":">=5.24.0","@types/react":">=19.2.15","vite-plugin-dts":">=5.0.1","@types/react-dom":">=19.2.3","@vitejs/plugin-react":">=6.0.2","@testing-library/react":">=16.3.2","@typescript-eslint/parser":">=8.60.0","@testing-library/user-event":">=14.6.1","@typescript-eslint/eslint-plugin":">=8.60.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0","maplibre-gl":">=3.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/maplibre-gl-duckdb_0.2.2_1782076329116_0.8795558572863864","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"maplibre-gl-duckdb","version":"0.2.3","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","_id":"maplibre-gl-duckdb@0.2.3","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"dist":{"shasum":"4c345c4dfa3b4de43e83f73c768baf0b51b70492","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.2.3.tgz","fileCount":40,"integrity":"sha512-08I0mbMzyY/4NYjPS3LjcoQUKL9oSI4G97TUMlfTF5hMBWuT6NPXYj9uXgwgl3JrUBOM6Y4RuxvSmL9u6bj11g==","signatures":[{"sig":"MEYCIQDvpX34u88MwahMnCJsDQ2MwQJmIPXig9X+ST5jmxCrCwIhAIP5notEBoOvIqI8pDj8AuLmUtRXwVrh02LuTAAo25F4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/maplibre-gl-duckdb@0.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136984},"main":"./dist/index.cjs","type":"module","types":"./dist/types/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"gitHead":"0e46da6acb82f08b12c40a3f5a79d08f2e100b3c","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest --run","build":"tsc -p tsconfig.build.json && vite build","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","preview":"vite preview","test:ui":"vitest --ui","test:coverage":"vitest --coverage","build:examples":"vite build --config vite.examples.config.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5385b192-52cb-41cc-be74-6a8f2be13960"}},"repository":{"url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git","type":"git"},"_npmVersion":"11.17.0","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.16.0","dependencies":{"apache-arrow":">=21.1.0","@deck.gl/core":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@math.gl/polygon":">=4.1.0","@deck.gl/geo-layers":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@deck.gl/aggregation-layers":">=9.3.2","@walkthru-earth/objex-utils":">=1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":">=8.0.14","jsdom":">=29.1.1","react":">=19.2.6","eslint":">=10.4.1","vitest":">=4.1.7","prettier":">=3.8.3","react-dom":">=19.2.6","@vitest/ui":">=4.1.7","typescript":">=6.0.3","@types/node":">=25.9.1","maplibre-gl":">=5.24.0","@types/react":">=19.2.15","vite-plugin-dts":">=5.0.1","@types/react-dom":">=19.2.3","@vitejs/plugin-react":">=6.0.2","@testing-library/react":">=16.3.2","@typescript-eslint/parser":">=8.60.0","@testing-library/user-event":">=14.6.1","@typescript-eslint/eslint-plugin":">=8.60.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0","maplibre-gl":">=3.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/maplibre-gl-duckdb_0.2.3_1782081229905_0.3294082689207918","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"maplibre-gl-duckdb","version":"0.2.4","description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","type":"module","main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/types/index.d.ts","exports":{".":{"import":{"types":"./dist/types/index.d.ts","default":"./dist/index.mjs"},"require":{"types":"./dist/types/index.d.ts","default":"./dist/index.cjs"}},"./react":{"import":{"types":"./dist/types/react.d.ts","default":"./dist/react.mjs"},"require":{"types":"./dist/types/react.d.ts","default":"./dist/react.cjs"}},"./style.css":"./dist/maplibre-gl-duckdb.css"},"sideEffects":["*.css"],"scripts":{"dev":"vite","build":"tsc -p tsconfig.build.json && vite build","build:examples":"vite build --config vite.examples.config.ts","preview":"vite preview","test":"vitest --run","test:ui":"vitest --ui","test:coverage":"vitest --coverage","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","format":"prettier --write \"src/**/*.{ts,tsx,css}\"","prepublishOnly":"npm run build"},"keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"author":{"name":"Qiusheng Wu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git"},"dependencies":{"@deck.gl/aggregation-layers":">=9.3.2","@deck.gl/core":">=9.3.2","@deck.gl/geo-layers":">=9.3.2","@deck.gl/layers":">=9.3.2","@deck.gl/mapbox":">=9.3.2","@duckdb/duckdb-wasm":">=1.33.1-dev45.0","@geoarrow/deck.gl-geoarrow":">=0.4.1","@math.gl/polygon":">=4.1.0","@walkthru-earth/objex-utils":">=1.5.0","apache-arrow":">=21.1.0"},"peerDependencies":{"maplibre-gl":">=3.0.0","react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"devDependencies":{"@testing-library/react":">=16.3.2","@testing-library/user-event":">=14.6.1","@types/node":">=25.9.1","@types/react":">=19.2.15","@types/react-dom":">=19.2.3","@typescript-eslint/eslint-plugin":">=8.60.0","@typescript-eslint/parser":">=8.60.0","@vitejs/plugin-react":">=6.0.2","@vitest/ui":">=4.1.7","eslint":">=10.4.1","jsdom":">=29.1.1","maplibre-gl":">=5.24.0","prettier":">=3.8.3","react":">=19.2.6","react-dom":">=19.2.6","typescript":">=6.0.3","vite":">=8.0.14","vite-plugin-dts":">=5.0.1","vitest":">=4.1.7"},"gitHead":"da11adea4861751cfe413c7fd4f174676cffb36e","_id":"maplibre-gl-duckdb@0.2.4","bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","_nodeVersion":"24.18.0","_npmVersion":"12.0.1","dist":{"integrity":"sha512-NEUjai78qdMJ0WXUD20dUh0pDnVu3Y3khcwiDQGzKzxDRaoq8pM1k+bqaOU2gjI58XDTUZP2zDwCSztG45Gmmg==","shasum":"6d0dacb27cd878c061fd0c05a0ec4c59870e0f00","tarball":"https://registry.npmjs.org/maplibre-gl-duckdb/-/maplibre-gl-duckdb-0.2.4.tgz","fileCount":40,"unpackedSize":136495,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/maplibre-gl-duckdb@0.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHIncBYr0IvP+N3IQ2TV8jyVMbCAdP9kFF50+b31RVXtAiEAluiv3x4dtOwq9fzt351UF7R+OtOLWQ+6hWYFRGfxqFs="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5385b192-52cb-41cc-be74-6a8f2be13960"}},"directories":{},"maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/maplibre-gl-duckdb_0.2.4_1785217669365_0.5409147529438363"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-31T02:22:14.765Z","modified":"2026-07-28T05:47:49.822Z","0.1.0":"2026-05-31T02:22:15.123Z","0.2.0":"2026-05-31T02:38:33.168Z","0.2.1":"2026-06-21T19:28:22.524Z","0.2.2":"2026-06-21T21:12:09.257Z","0.2.3":"2026-06-21T22:33:50.045Z","0.2.4":"2026-07-28T05:47:49.522Z"},"bugs":{"url":"https://github.com/opengeos/maplibre-gl-duckdb/issues"},"author":{"name":"Qiusheng Wu"},"license":"MIT","homepage":"https://github.com/opengeos/maplibre-gl-duckdb#readme","keywords":["maplibre","maplibre-gl","map","duckdb","duckdb-wasm","spatial","geospatial","geoarrow","deck.gl","plugin","control","react","typescript"],"repository":{"type":"git","url":"git+https://github.com/opengeos/maplibre-gl-duckdb.git"},"description":"A MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases","maintainers":[{"name":"giswqs","email":"giswqs@gmail.com"}],"readme":"# MapLibre GL DuckDB\n\nA MapLibre GL JS control for querying and visualizing geospatial data from DuckDB databases in the browser.\n\n[![npm version](https://img.shields.io/npm/v/maplibre-gl-duckdb.svg)](https://www.npmjs.com/package/maplibre-gl-duckdb)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Open in CodeSandbox](https://img.shields.io/badge/Open%20in-CodeSandbox-blue?logo=codesandbox)](https://codesandbox.io/p/github/opengeos/maplibre-gl-duckdb)\n[![Open in StackBlitz](https://img.shields.io/badge/Open%20in-StackBlitz-blue?logo=stackblitz)](https://stackblitz.com/github/opengeos/maplibre-gl-duckdb)\n\n## Features\n\n- Browser DuckDB WASM runtime with the spatial extension.\n- Local `.duckdb` and `.db` database loading.\n- CORS-enabled remote database URL loading.\n- Table selector populated from attached DuckDB databases.\n- SQL query panel inside a collapsible MapLibre control.\n- Rendering for query results with `GEOMETRY`, WKB, or WKT columns.\n- deck.gl and GeoArrow rendering for points, lines, and polygons.\n- React wrapper and state hook.\n- Vite library build with ESM and CommonJS outputs.\n\n## Installation\n\n```bash\nnpm install maplibre-gl-duckdb\n```\n\n## Quick Start\n\n```typescript\nimport maplibregl from 'maplibre-gl';\nimport { DuckDBControl } from 'maplibre-gl-duckdb';\nimport 'maplibre-gl-duckdb/style.css';\nimport 'maplibre-gl/dist/maplibre-gl.css';\n\nconst map = new maplibregl.Map({\n  container: 'map',\n  style: 'https://tiles.openfreemap.org/styles/positron',\n  center: [0, 20],\n  zoom: 2,\n});\n\nmap.on('load', () => {\n  const control = new DuckDBControl({\n    title: 'DuckDB',\n    collapsed: false,\n    databaseUrl: 'https://data.source.coop/giswqs/opengeos/nyc_data.db',\n    sampleDatabaseUrl: 'https://data.source.coop/giswqs/opengeos/nyc_data.db',\n    initialQuery: `SELECT BORONAME, NAME, ST_Transform(geom, 'EPSG:32618', 'EPSG:4326', true) AS geom\nFROM data.main.nyc_neighborhoods\nLIMIT 1000`,\n    geometryColumn: 'geom',\n    sourceCrs: 'EPSG:32618',\n    geometryFormat: 'auto',\n  });\n\n  map.addControl(control, 'top-right');\n});\n```\n\nThe attached database is available through the schema alias `data`. For example, the local sample database can be queried as `data.main.nyc_neighborhoods`.\nAfter a database is loaded, use the table selector to populate the SQL editor for any discovered table, then run or edit the query.\nThe geometry column control is populated from the selected table's columns and defaults to `geom` or `geometry` when either name exists.\n\n## Rendering Pipeline\n\nThe control renders query results directly in the browser. It does not generate vector tiles and does not convert results to GeoJSON.\n\nThe pipeline is:\n\n```text\nDuckDB SQL -> Arrow result -> WKB geometry column -> GeoArrow -> deck.gl layers over MapLibre\n```\n\nDuckDB WASM executes the SQL and returns an Arrow table. The selected geometry column is converted to WKB with DuckDB spatial functions, then the WKB values are converted to GeoArrow tables. Those GeoArrow tables are rendered with deck.gl layers through `MapboxOverlay` on top of the MapLibre map.\n\n## React\n\n```tsx\nimport { useEffect, useRef, useState } from 'react';\nimport maplibregl, { Map } from 'maplibre-gl';\nimport { DuckDBControlReact, useDuckDBState } from 'maplibre-gl-duckdb/react';\nimport 'maplibre-gl-duckdb/style.css';\n\nfunction App() {\n  const mapContainer = useRef<HTMLDivElement>(null);\n  const [map, setMap] = useState<Map | null>(null);\n  const { state } = useDuckDBState({ collapsed: false });\n\n  useEffect(() => {\n    if (!mapContainer.current) return;\n    const mapInstance = new maplibregl.Map({\n      container: mapContainer.current,\n      style: 'https://tiles.openfreemap.org/styles/positron',\n      center: [0, 20],\n      zoom: 2,\n    });\n    mapInstance.on('load', () => setMap(mapInstance));\n    return () => mapInstance.remove();\n  }, []);\n\n  return (\n    <div style={{ width: '100%', height: '100vh' }}>\n      <div ref={mapContainer} style={{ width: '100%', height: '100%' }} />\n      {map && (\n        <DuckDBControlReact\n          map={map}\n          collapsed={state.collapsed}\n          databaseUrl=\"https://data.source.coop/giswqs/opengeos/nyc_data.db\"\n          sampleDatabaseUrl=\"https://data.source.coop/giswqs/opengeos/nyc_data.db\"\n          initialQuery=\"SELECT BORONAME, NAME, ST_Transform(geom, 'EPSG:32618', 'EPSG:4326', true) AS geom FROM data.main.nyc_neighborhoods LIMIT 1000\"\n          geometryColumn=\"geom\"\n          sourceCrs=\"EPSG:32618\"\n          onQuery={(newState) => console.log(newState)}\n        />\n      )}\n    </div>\n  );\n}\n```\n\n## API\n\n### DuckDBControl Options\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `collapsed` | `boolean` | `true` | Whether the panel starts collapsed |\n| `position` | `string` | `'top-right'` | MapLibre control position |\n| `title` | `string` | `'DuckDB'` | Panel title |\n| `panelWidth` | `number` | `360` | Panel width in pixels |\n| `databaseUrl` | `string` | | CORS-enabled remote DuckDB database URL |\n| `sampleDatabaseUrl` | `string` | | URL shown in the input without auto-loading |\n| `sampleData` | `DuckDBSampleDataset[]` | | Sample databases shown as a \"Load sample data\" dropdown above the URL input; picking one fills the input (hidden when empty) |\n| `sampleDataLabel` | `string` | `'Load sample data...'` | Placeholder shown in the sample-data dropdown |\n| `initialQuery` | `string` | sample query | SQL query to run after loading a database |\n| `geometryColumn` | `string` | auto-detected | Geometry, WKB, or WKT column |\n| `geometryFormat` | `'auto' \\| 'geometry' \\| 'wkb' \\| 'wkt'` | `'auto'` | Geometry conversion mode |\n| `sourceCrs` | `string` | | Source CRS for generated table queries |\n| `targetCrs` | `string` | `'EPSG:4326'` | Target CRS for generated table queries |\n| `pageSize` | `number` | `10000` | Maximum rendered rows |\n| `fitBoundsOnLoad` | `boolean` | `true` | Fit the map to rendered results |\n| `allowLocalFiles` | `boolean` | `true` | Enable local database file input |\n| `allowRemoteUrls` | `boolean` | `true` | Enable remote URL input |\n| `pickable` | `boolean` | `true` | Enable feature click popups |\n| `layerName` | `string` | `'DuckDB query'` | Rendered layer name |\n| `beforeId` | `string` | | Map layer id for insertion order |\n| `interleaved` | `boolean` | `true` | deck.gl MapboxOverlay interleaving |\n\n### Methods\n\n- `loadUrl(url)` loads a remote database URL.\n- `loadFile(file)` loads a local browser `File`.\n- `executeQuery(sql?)` runs SQL and renders geospatial results.\n- `clear()` removes the database, rendered layer, and selection.\n- `setPickable(pickable)` enables or disables feature selection.\n- `toggle()`, `expand()`, and `collapse()` control the panel.\n- `getState()` returns the current `DuckDBState`.\n- `on(event, handler)` and `off(event, handler)` manage events.\n\n### Events\n\n`collapse`, `expand`, `statechange`, `loadstart`, `progress`, `load`, `query`, `error`, and `select`.\n\n## DuckDB Runtime Configuration\n\nBy default, DuckDB WASM is loaded from jsDelivr and the spatial extension is loaded from the official DuckDB extension repository. Use `configureDuckDB` before creating the first control to self-host runtime assets.\n\n```typescript\nimport { configureDuckDB } from 'maplibre-gl-duckdb';\n\nconfigureDuckDB({\n  extensionRepository: 'https://example.com/duckdb-extensions',\n});\n```\n\n## Development\n\n```bash\nnpm install\nnpm run dev\nnpm test\nnpm run build\nnpm run build:examples\n```\n\nThe examples use `https://data.source.coop/giswqs/opengeos/nyc_data.db` as the default DuckDB URL and `https://tiles.openfreemap.org/styles/positron` as the basemap. The sample tables use projected coordinates, so the examples transform `geom` from `EPSG:32618` to `EPSG:4326` before rendering.\n\n## Docker\n\n```bash\ndocker build -t maplibre-gl-duckdb .\ndocker run -p 8080:80 maplibre-gl-duckdb\n```\n\nOpen `http://localhost:8080/maplibre-gl-duckdb/`.\n\n## Notes\n\nRemote database loading requires browser-accessible URLs with CORS enabled. Large databases and broad queries may be limited by browser memory and DuckDB WASM file access constraints.\n","readmeFilename":"README.md"}