{"_id":"@squawk/geo","_rev":"18-fa5a75f8fc33fdd97c0e47d3c9812155","name":"@squawk/geo","dist-tags":{"latest":"0.4.9"},"versions":{"0.2.0":{"name":"@squawk/geo","version":"0.2.0","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.2.0","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"302816291a893499bf6ef304f94b37496ccc0668","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.2.0.tgz","fileCount":11,"integrity":"sha512-kDKXgq+5PDFRpzyAPS8emO+TefOcc/rc8S445CqaSSeKp9Kuzz/32lGIzDiga4F3LMicHlOckOiZ7bRKk94dHg==","signatures":[{"sig":"MEUCIQDeySGfLnjB+7ljYDZfozTLbBabetdAJt2qmNn10ndAPAIgdhz0MIc+F/5LrBHwKdTw5zZIA/F1YWXekiz78cPZyDs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23847},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"17f0918df6bf2b562636d6b424a3fe722016ab9f","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"*","@squawk/units":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.2.0_1776539129537_0.6449567431172294","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@squawk/geo","version":"0.2.1","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.2.1","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"994f989cee210f96ef8cb14e7d2f1af991b9cbed","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.2.1.tgz","fileCount":11,"integrity":"sha512-fKZ1TJugtb75mEzeTfukgt3aHWQqz2NMCLvxECBaOjoLNP9uGlxRMxJP5IAxNwQlgEKDNwPv6wVZ6p8vsMkdwQ==","signatures":[{"sig":"MEQCICQ9WDbrc2CG4HdLEfNE80JDsT5fRCzvEvpxYxp+fCRTAiA1OdAhOCK9ZxqFxey3A6sa7JtYF68MYGii8c5vbxMikQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"0c02e267b050ba7bf10619e1d4648ca37fd20b8d","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.3.1","@squawk/units":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.2.1_1776633619947_0.20287335107437077","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@squawk/geo","version":"0.3.0","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.3.0","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"ba437e6e7821c4092a1419d81b61c210b040656b","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.3.0.tgz","fileCount":11,"integrity":"sha512-2pcVMPAZ6JFQh1bXISY7pcbTxGRYS/QtPm64YJdjE7ubRl7+SPcIS7zEedI3rC9yB+3f+ISwBqSoHrAElRJasg==","signatures":[{"sig":"MEYCIQDrjKj/aFm2axh/lCb+2ck3LjmfvV4hrFGm7waflGrmQAIhAL5j9YBSpkKOgJhnALFt2HWv6pS+WTJDxxelbDQiq748","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"426d6e6dcafe1abc0c81bb117ced62b7dd66f178","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.5.0","@squawk/units":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.3.0_1776742992528_0.9372774607676886","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@squawk/geo","version":"0.3.1","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.3.1","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"5d4ae8058cd67cb120281270b8c9e6bb6a8db7d5","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.3.1.tgz","fileCount":11,"integrity":"sha512-I62S/HkcL7dO8OXs1TxnoZD/LZcTpXaBHTWCPQAaDWFe+J7vjOznQkoQZ9XGtYb/ZRSYnI4X7qGJjNRpfy8NOg==","signatures":[{"sig":"MEUCICYARkEgb0kJVD0+rhAoWg+mFNZlumv4r+ocPL/17V7YAiEAszpCby8ATfijQqPJLIH6y9SpI7SuFgvpaMqBPPSGdiA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"47dc0e45a260ca79527047935dc2073ea0fff5c6","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.6.0","@squawk/units":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.3.1_1776986816877_0.2829283442664945","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@squawk/geo","version":"0.3.2","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.3.2","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"c6e553dd6e1cd29de43795bdf41e44142f17d111","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.3.2.tgz","fileCount":11,"integrity":"sha512-lKx4d3UJoN+33RPYv6xu3lc63vModmLYSfAvd+ljzobkaTHpgJEbdDziebtmacq1k3kkmO0hp1PIyKevFPbnFQ==","signatures":[{"sig":"MEQCIHRtud4zTzOuk4bofnKETM80qDyEYBYUQyUM8MNQf6SrAiA9X1FibSN0+L47RGM/uiEOEYaGnwUUyFYIToHo0cEG3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cf18b826d905ffd851ab2c80ada1423fab825a94","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.7.0","@squawk/units":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.3.2_1777079720772_0.40430655346519395","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@squawk/geo","version":"0.3.3","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.3.3","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"6e13cd5ccebc17011bf263a24eefbf6378d140ae","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.3.3.tgz","fileCount":11,"integrity":"sha512-7Y4EGw3ocR/KHXQQp54l9OT0/E6CM8glBUX84Cvsfd0dPjgQ1+g42ztTQwSa88eC5y6rJD6FxniJeOBSSv0Vdw==","signatures":[{"sig":"MEQCICxL3qSy/MZaPZXCEAD6EowFag4CYOP5HBL7CzIbWpNVAiB+Ya9+aygmRi5UTCLE2eiuPG6hnN0mpTlCyYGFbVnYXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23926},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ccaa413d7043100fc67081bb5ab46a7256e7f8be","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/libs/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.7.1","@squawk/units":"^0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.3.3_1777323516299_0.7437916408687753","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@squawk/geo","version":"0.4.0","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.4.0","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"290c7b749bbe63871224eb3596ef8a9e60a7c59b","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.4.0.tgz","fileCount":14,"integrity":"sha512-kRbePKOTmO2n1ft4YMci/oX/IfhCxo57LxT/wWW8b3DeOWVYEtrjMPpXONlq1iqRM2NnS+V6LuJtrm18lmfl8g==","signatures":[{"sig":"MEUCIQCg4p2sOvNZ4cz/KPZufs0uciOslzCBhZrmBdw5uuohzwIgB4I68PaSLjEllVUGQfDG7HGVksWIAPdwHgCMUOZFnno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38840},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"13b365679d9c997f55bf8af1d9fa60e42f0170df","scripts":{"lint":"tsc --noEmit && eslint src","test":"node --test 'dist/**/*.spec.js'","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/libs/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.7.1","@squawk/units":"^0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.4.0_1777414185446_0.08345322526603982","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@squawk/geo","version":"0.4.1","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.4.1","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"f2086a4ae872ba3848e478da8bb7dc749672e09a","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.4.1.tgz","fileCount":14,"integrity":"sha512-uDJf5vzu+7qEUXXSpbrkBQXj/QbDb8ykuCNfUYpCjfv5+LWF0w76qmfMu2hMFeKqXAz8y+yn1+zLqmzUrcXRHg==","signatures":[{"sig":"MEYCIQDAIT+bwHoV06zLbJYwKqDULlzjx+U7ElTtshxGc0/yLgIhAJhn0iFuFucQvbYJhQjKwhV+H2rp1LQsxUet0ZlWHivy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@squawk%2fgeo@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38904},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ccf089f4b3657556890ead9a8bc5927141520112","scripts":{"lint":"tsc --noEmit && eslint src","test":"vitest run","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/libs/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.7.1","@squawk/units":"^0.4.1","@types/geojson":"^7946.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.4.1_1777824998776_0.43145053560288993","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@squawk/geo","version":"0.4.2","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.4.2","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"1fc322be511528a401cf88ca707f118ee214d6b2","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.4.2.tgz","fileCount":14,"integrity":"sha512-fCISjDlCL/CUlp5P+CRWnvPgsBnd3FBQUnA50Q9etb4y6xQXmEc97uozHNYcPAbbB0bZR4jvlFn0ybHRhy/1qw==","signatures":[{"sig":"MEUCIQClEJqT8fk4NsURFRt3/dB9A5V3aiFu+o2n5cmM0nMAVAIgQsFcPHR+2dbJBCyy7+ooAaqDGsjbOrw7ueZ8YizMOJo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@squawk%2fgeo@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38907},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a60d00be86de161b30f2c5ae2d1cd296ae40f563","scripts":{"lint":"tsc --noEmit && eslint src","test":"vitest run","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/libs/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.7.2","@squawk/units":"^0.4.2","@types/geojson":"^7946.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.4.2_1777845355908_0.3428151944434461","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@squawk/geo","version":"0.4.3","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"author":{"name":"Neil Cochran"},"license":"MIT","_id":"@squawk/geo@0.4.3","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"homepage":"https://github.com/neilcochran/squawk","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"dist":{"shasum":"1c09757b3842529764fd203c4d9923caffdc4c04","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.4.3.tgz","fileCount":14,"integrity":"sha512-mkQWUEpGuTNXjyZ0UzPh+uXicwuTmFGyckx0/3E9GyCSfb+BlrUb6EbugdE5VSLG36RA1bDveDfkXDBJevKlmg==","signatures":[{"sig":"MEUCIQCtL/kZZD8VSRsFuq9x0L7tT1/I9+EWbTSP6MNiuvLX0QIgB+f0FpCsZ7I2lsY0HnVQUyVYC8mo217T6Ht1p0OzB4A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@squawk%2fgeo@0.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38907},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"dc5b5968b3dbc59207705ecd142aa325cb9185b7","scripts":{"lint":"tsc --noEmit && eslint src","test":"vitest run","build":"tsc","lint:pack":"publint && attw --pack . --profile esm-only","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"neilcochran","email":"dev.neil.cochran@pm.me"},"repository":{"url":"git+https://github.com/neilcochran/squawk.git","type":"git","directory":"packages/libs/geo"},"_npmVersion":"10.9.7","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","directories":{},"typedocMain":"src/index.ts","_nodeVersion":"22.22.2","dependencies":{"@squawk/types":"^0.8.0","@squawk/units":"^0.4.2","@types/geojson":"^7946.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/geo_0.4.3_1778100159474_0.5822886895884964","host":"s3://npm-registry-packages-npm-production"}},"0.4.9":{"name":"@squawk/geo","version":"0.4.9","type":"module","description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","author":{"name":"Neil Cochran"},"license":"MIT","homepage":"https://github.com/neilcochran/squawk","repository":{"type":"git","url":"git+https://github.com/neilcochran/squawk.git","directory":"packages/libs/geo"},"engines":{"node":">=22"},"typedocMain":"src/index.ts","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","test":"vitest run","test:coverage":"vitest run --coverage","lint":"tsc --noEmit && eslint src","lint:pack":"publint && attw --pack . --profile esm-only","api:check":"api-extractor run --verbose","api:report":"api-extractor run --local --verbose"},"keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"publishConfig":{"access":"public"},"dependencies":{"@squawk/types":"^0.8.0","@squawk/units":"^0.4.2","@types/geojson":"^7946.0.16"},"devDependencies":{"@types/node":"^25.9.3"},"_id":"@squawk/geo@0.4.9","gitHead":"1979042537e1986a65803f7f141f3b42276c2658","bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"_nodeVersion":"22.22.3","_npmVersion":"11.5.2","dist":{"integrity":"sha512-SrBZoHCaWn2IztGH2QNlwW7c8LmN9K43SYXBSD+oefk9lT22Wxgb+yaghMlIOV/6yiYakHne27T6tXK0wQ28UQ==","shasum":"e25f66489daf71edc5fc24561d436db777682a13","tarball":"https://registry.npmjs.org/@squawk/geo/-/geo-0.4.9.tgz","fileCount":14,"unpackedSize":38982,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@squawk%2fgeo@0.4.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAJB++Cm7ZOqbmtU/lGZ2wJJPLaDS4bUbnnfurjgIVIoAiAWj4H0A1Mn9mFFmzXqLGvZhttvnPSN+3MpJK7xVJKrhA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c5738817-6d51-4823-bc2a-b7aaef3251b7"}},"directories":{},"maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/geo_0.4.9_1781459219047_0.042010156082984196"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-18T19:05:29.418Z","modified":"2026-06-14T17:46:59.518Z","0.2.0":"2026-04-18T19:05:29.677Z","0.2.1":"2026-04-19T21:20:20.084Z","0.3.0":"2026-04-21T03:43:12.654Z","0.3.1":"2026-04-23T23:26:57.021Z","0.3.2":"2026-04-25T01:15:20.906Z","0.3.3":"2026-04-27T20:58:36.451Z","0.4.0":"2026-04-28T22:09:45.613Z","0.4.1":"2026-05-03T16:16:38.947Z","0.4.2":"2026-05-03T21:55:56.071Z","0.4.3":"2026-05-06T20:42:39.653Z","0.4.4":"2026-05-11T22:17:05.643Z","0.4.5":"2026-05-11T22:48:46.938Z","0.4.6":"2026-05-11T22:55:28.726Z","0.4.7":"2026-05-11T22:57:02.414Z","0.4.8":"2026-05-11T23:51:52.532Z","0.4.9":"2026-06-14T17:46:59.179Z"},"bugs":{"url":"https://github.com/neilcochran/squawk/issues"},"author":{"name":"Neil Cochran"},"license":"MIT","homepage":"https://github.com/neilcochran/squawk","keywords":["aviation","typescript","geospatial","great-circle","haversine","point-in-polygon"],"repository":{"type":"git","url":"git+https://github.com/neilcochran/squawk.git","directory":"packages/libs/geo"},"description":"Geospatial utilities: great-circle distance, bearing, midpoint, destination point, and polygon containment","maintainers":[{"name":"neilcochran","email":"dev.neil.cochran@pm.me"}],"readme":"<h1><img src=\"../../../assets/squawk-logo.svg\" alt=\"squawk logo\" width=\"48\" height=\"48\" style=\"vertical-align: middle\">&nbsp; @squawk/geo</h1>\n\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](../../../LICENSE.md) [![npm](https://img.shields.io/npm/v/@squawk/geo)](https://www.npmjs.com/package/@squawk/geo) ![TypeScript](https://img.shields.io/badge/TypeScript-blue?logo=typescript&logoColor=white)\n\nGeospatial utilities for aviation applications: great-circle distance, initial bearing, midpoint, destination point, and polygon containment.\n\n**[Documentation](https://neilcochran.github.io/squawk/modules/_squawk_geo.html)**\n\nPart of the [@squawk](https://www.npmjs.com/org/squawk) aviation library suite. See all packages on npm.\n\n## Installation\n\n```bash\nnpm install @squawk/geo\n```\n\n## Usage\n\nExports are grouped by domain namespace to keep call sites self-documenting:\n\n```ts\nimport { greatCircle, polygon } from '@squawk/geo';\n\n// Great-circle calculations (WGS84 lat/lon in decimal degrees)\nconst distNm = greatCircle.distanceNm(40.6413, -73.7781, 33.9425, -118.4081);\nconst brgDeg = greatCircle.bearing(40.6413, -73.7781, 33.9425, -118.4081);\nconst both = greatCircle.bearingAndDistance(40.6413, -73.7781, 33.9425, -118.4081);\nconst mid = greatCircle.midpoint(40.6413, -73.7781, 33.9425, -118.4081);\nconst dest = greatCircle.destination(40.6413, -73.7781, 270, 100);\n\n// Polygon containment with bounding-box pre-filter\nconst ring: number[][] = [\n  [-118.42, 33.93],\n  [-118.42, 33.96],\n  [-118.38, 33.96],\n  [-118.38, 33.93],\n  [-118.42, 33.93],\n];\nconst box = polygon.boundingBox(ring);\nif (polygon.pointInBoundingBox(-118.4, 33.945, box)) {\n  if (polygon.pointInPolygon(-118.4, 33.945, ring)) {\n    // point is inside the polygon\n  }\n}\n```\n\n## Key Features\n\n- **Great-circle distance** in nautical miles using the Haversine formula\n- **Initial bearing** between two positions, degrees true\n- **Midpoint** and **destination point** along a great-circle path\n- **Point-in-polygon** ray casting for arbitrary closed rings\n- **Axis-aligned bounding box** computation and containment test, useful as a fast rejection filter before the full polygon test\n\n## Conventions\n\n- Latitude and longitude inputs are WGS84 decimal degrees (positive north and east)\n- Distances are nautical miles; bearings are degrees true in the range [0, 360)\n- Polygons use the GeoJSON `[lon, lat]` coordinate-pair convention for each ring point\n","readmeFilename":"README.md"}