diff --git a/examples/geopackage.jgis b/examples/geopackage.jgis new file mode 100644 index 000000000..537bad248 --- /dev/null +++ b/examples/geopackage.jgis @@ -0,0 +1,238 @@ +{ + "layerTree": [ + "c3e1b470-fd4e-4c57-ac0a-5b4a24e602ac/tiles", + "d090703f-5953-44b3-acde-c6286e125385/PointsOfInterest", + "21467e04-77ba-445d-8e7b-638149deb9f4/Parks", + "3e335ea9-4358-4fc1-acb3-ceea34b852d5/Pizza", + "03fa7c7c-4f88-49cf-b975-38a42ef38710/Countries", + "e811f15b-d11a-4113-bc5a-3726dde9976b/Lakes", + "58c36230-5fa7-4158-965d-cc4f5c2a0794/Rivers + Lake Centrelines" + ], + "layers": { + "03fa7c7c-4f88-49cf-b975-38a42ef38710/Countries": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer Countries Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "41ba7c89-0986-4d8f-a3a2-72847069de89/Countries", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + }, + "21467e04-77ba-445d-8e7b-638149deb9f4/Parks": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer Parks Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "c0e58d6d-7dc7-4878-9aa4-b241f8172262/Parks", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + }, + "3e335ea9-4358-4fc1-acb3-ceea34b852d5/Pizza": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer Pizza Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "0033b340-eb92-4610-9510-377e43cd6438/Pizza", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + }, + "58c36230-5fa7-4158-965d-cc4f5c2a0794/Rivers + Lake Centrelines": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer Rivers + Lake Centrelines Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "8f10ffc3-7461-4ea7-bce8-fb29e2671289/Rivers + Lake Centrelines", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + }, + "c3e1b470-fd4e-4c57-ac0a-5b4a24e602ac/tiles": { + "filters": null, + "name": "GeoPackage Layer tiles Layer", + "parameters": { + "opacity": 1.0, + "source": "0a9375df-4f63-4bd6-8e6f-9f4832a0a9cb/tiles" + }, + "type": "RasterLayer", + "visible": true + }, + "d090703f-5953-44b3-acde-c6286e125385/PointsOfInterest": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer PointsOfInterest Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "9acdf695-c781-4b68-b415-eff3f66fa7eb/PointsOfInterest", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + }, + "e811f15b-d11a-4113-bc5a-3726dde9976b/Lakes": { + "filters": { + "appliedFilters": [ + { + "feature": null, + "operator": null, + "value": null + } + ], + "logicalOp": null + }, + "name": "GeoPackage Layer Lakes Layer", + "parameters": { + "color": null, + "opacity": 1.0, + "source": "9a0fd43f-5025-49a0-ab69-90b9f074424c/Lakes", + "symbologyState": null + }, + "type": "VectorLayer", + "visible": true + } + }, + "metadata": {}, + "options": { + "bearing": 0.0, + "extent": [ + -22036985.40727903, + -6817247.246847427, + 18038031.278299443, + 18065694.93156175 + ], + "latitude": 45.01716292551504, + "longitude": -17.96160807277616, + "projection": "EPSG:3857", + "zoom": 2.1032878084120226 + }, + "schemaVersion": "0.5.0", + "sources": { + "0033b340-eb92-4610-9510-377e43cd6438/Pizza": { + "name": "GeoPackage Layer Pizza Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/ngageoint/geopackage-js/master/docs/examples/GeoPackageToGo/StLouis.gpkg", + "projection": "EPSG:3857", + "tables": "Pizza" + }, + "type": "GeoPackageVectorSource" + }, + "0a9375df-4f63-4bd6-8e6f-9f4832a0a9cb/tiles": { + "name": "GeoPackage Layer tiles Source", + "parameters": { + "attribution": null, + "interpolate": null, + "maxZoom": null, + "minZoom": null, + "path": "https://raw.githubusercontent.com/ngageoint/geopackage-js/master/docs/examples/GeoPackageToGo/StLouis.gpkg", + "tables": "tiles" + }, + "type": "GeoPackageRasterSource" + }, + "41ba7c89-0986-4d8f-a3a2-72847069de89/Countries": { + "name": "GeoPackage Layer Countries Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/richard-thomas/ol-load-geopackage/master/examples/dist/Natural_Earth_QGIS_layers_and_styles.gpkg", + "projection": "EPSG:3857", + "tables": "Countries" + }, + "type": "GeoPackageVectorSource" + }, + "8f10ffc3-7461-4ea7-bce8-fb29e2671289/Rivers + Lake Centrelines": { + "name": "GeoPackage Layer Rivers + Lake Centrelines Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/richard-thomas/ol-load-geopackage/master/examples/dist/Natural_Earth_QGIS_layers_and_styles.gpkg", + "projection": "EPSG:3857", + "tables": "Rivers + Lake Centrelines" + }, + "type": "GeoPackageVectorSource" + }, + "9a0fd43f-5025-49a0-ab69-90b9f074424c/Lakes": { + "name": "GeoPackage Layer Lakes Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/richard-thomas/ol-load-geopackage/master/examples/dist/Natural_Earth_QGIS_layers_and_styles.gpkg", + "projection": "EPSG:3857", + "tables": "Lakes" + }, + "type": "GeoPackageVectorSource" + }, + "9acdf695-c781-4b68-b415-eff3f66fa7eb/PointsOfInterest": { + "name": "GeoPackage Layer PointsOfInterest Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/ngageoint/geopackage-js/master/docs/examples/GeoPackageToGo/StLouis.gpkg", + "projection": "EPSG:3857", + "tables": "PointsOfInterest" + }, + "type": "GeoPackageVectorSource" + }, + "c0e58d6d-7dc7-4878-9aa4-b241f8172262/Parks": { + "name": "GeoPackage Layer Parks Source", + "parameters": { + "attribution": null, + "path": "https://raw.githubusercontent.com/ngageoint/geopackage-js/master/docs/examples/GeoPackageToGo/StLouis.gpkg", + "projection": "EPSG:3857", + "tables": "Parks" + }, + "type": "GeoPackageVectorSource" + } + } +} \ No newline at end of file diff --git a/packages/base/package.json b/packages/base/package.json index afeb91817..3f146e9dd 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -64,6 +64,7 @@ "@lumino/widgets": "^2.0.0", "@mapbox/vector-tile": "^2.0.3", "@naisutech/react-tree": "^3.0.1", + "@ngageoint/geopackage": "^4.2.6", "@radix-ui/react-checkbox": "^1.3.2", "@radix-ui/react-dropdown-menu": "^2.1.15", "@radix-ui/react-popover": "^1.1.14", @@ -85,6 +86,7 @@ "hyparquet-compressors": "^1.1.1", "lucide-react": "^0.513.0", "ol": "^10.1.0", + "ol-load-geopackage": "^1.0.3", "ol-pmtiles": "^0.5.0", "ol-stac": "^1.0.0-rc.10", "pbf": "^4.0.1", diff --git a/packages/base/src/commands/BaseCommandIDs.ts b/packages/base/src/commands/BaseCommandIDs.ts index b700e6849..fb591c3ee 100644 --- a/packages/base/src/commands/BaseCommandIDs.ts +++ b/packages/base/src/commands/BaseCommandIDs.ts @@ -25,6 +25,8 @@ export const newImageEntry = 'jupytergis:newImageEntry'; export const newVideoEntry = 'jupytergis:newVideoEntry'; export const newGeoTiffEntry = 'jupytergis:newGeoTiffEntry'; export const newGeoParquetEntry = 'jupytergis:newGeoParquetEntry'; +export const newGeoPackageRasterEntry = 'jupytergis:newGeoPackageRasterEntry'; +export const newGeoPackageVectorEntry = 'jupytergis:newGeoPackageVectorEntry'; // Layer and group actions export const renameLayer = 'jupytergis:renameLayer'; diff --git a/packages/base/src/commands/index.ts b/packages/base/src/commands/index.ts index 10c76d41e..bb6e7bbf9 100644 --- a/packages/base/src/commands/index.ts +++ b/packages/base/src/commands/index.ts @@ -495,6 +495,46 @@ export function addCommands( }), ...icons.get(CommandIDs.newShapefileEntry), }); + commands.addCommand(CommandIDs.newGeoPackageVectorEntry, { + label: trans.__('New GeoPackage Layer'), + isEnabled: () => { + return tracker.currentWidget + ? tracker.currentWidget.model.sharedModel.editable + : false; + }, + execute: Private.createEntry({ + tracker, + formSchemaRegistry, + title: 'Create GeoPackage Layer', + createLayer: true, + createSource: true, + sourceData: { name: 'Custom GeoPackage Vector Source' }, + layerData: { name: 'Custom GeoPackage Vector Layer' }, + sourceType: 'GeoPackageVectorSource', + layerType: 'VectorLayer', + }), + ...icons.get(CommandIDs.newGeoPackageVectorEntry), + }); + commands.addCommand(CommandIDs.newGeoPackageRasterEntry, { + label: trans.__('New GeoPackage Layer'), + isEnabled: () => { + return tracker.currentWidget + ? tracker.currentWidget.model.sharedModel.editable + : false; + }, + execute: Private.createEntry({ + tracker, + formSchemaRegistry, + title: 'Create GeoPackage Layer', + createLayer: true, + createSource: true, + sourceData: { name: 'Custom GeoPackage Raster Source' }, + layerData: { name: 'Custom GeoPackage Raster Layer' }, + sourceType: 'GeoPackageRasterSource', + layerType: 'RasterLayer', + }), + ...icons.get(CommandIDs.newGeoPackageRasterEntry), + }); /** * LAYERS and LAYER GROUP actions. diff --git a/packages/base/src/constants.ts b/packages/base/src/constants.ts index 9d6bdf0b4..db9914211 100644 --- a/packages/base/src/constants.ts +++ b/packages/base/src/constants.ts @@ -6,6 +6,7 @@ import { bookOpenIcon, clockIcon, geoJSONIcon, + geoPackageIcon, infoIcon, moundIcon, rasterIcon, @@ -50,6 +51,8 @@ const iconObject = { [CommandIDs.newHillshadeEntry]: { icon: moundIcon }, [CommandIDs.newImageEntry]: { iconClass: 'fa fa-image' }, [CommandIDs.newVideoEntry]: { iconClass: 'fa fa-video' }, + [CommandIDs.newGeoPackageVectorEntry]: { icon: geoPackageIcon }, + [CommandIDs.newGeoPackageRasterEntry]: { icon: geoPackageIcon }, [CommandIDs.newShapefileEntry]: { iconClass: 'fa fa-file' }, [CommandIDs.newGeoTiffEntry]: { iconClass: 'fa fa-image' }, [CommandIDs.newGeoParquetEntry]: { iconClass: 'fa fa-file' }, diff --git a/packages/base/src/formbuilder/creationform.tsx b/packages/base/src/formbuilder/creationform.tsx index 16f68db11..8c7e28db7 100644 --- a/packages/base/src/formbuilder/creationform.tsx +++ b/packages/base/src/formbuilder/creationform.tsx @@ -7,12 +7,12 @@ import { LayerType, SourceType, } from '@jupytergis/schema'; -import { Dialog } from '@jupyterlab/apputils'; +import { Dialog, showErrorMessage } from '@jupyterlab/apputils'; import { PromiseDelegate, UUID } from '@lumino/coreutils'; import { Signal } from '@lumino/signaling'; import * as React from 'react'; -import { deepCopy } from '@/src/tools'; +import { deepCopy, getGeoPackageTableNames } from '@/src/'; import { getLayerTypeForm, getSourceTypeForm } from './formselectors'; export interface ICreationFormProps { @@ -152,6 +152,88 @@ export class CreationForm extends React.Component { // Perform the layer/source creation Promise.all(creationPromises).then(async () => { + // We add multiple tables from GeoPackage file as different sources and layers + if ( + this.props.sourceType === 'GeoPackageVectorSource' || + this.props.sourceType === 'GeoPackageRasterSource' + ) { + const source = await sourceCreationPromise?.promise; + + if (!source) { + console.error(`Cannot find source for ${this.props.sourceType}`); + return; + } + + const allTables = await getGeoPackageTableNames( + source.path, + this.props.sourceType, + ); + + let tableNames: string[]; + + if (source.tables) { + const requestedTableNames = source.tables + .split(',') + .map((s: string) => s.trim()) + .filter(Boolean); + + const invalidTableNames = requestedTableNames.filter( + (name: string) => !allTables.includes(name), + ); + if (invalidTableNames.length) { + showErrorMessage( + 'Invalid GeoPackage Tables', + `The following table${ + invalidTableNames.length > 1 ? 's are' : ' is' + } not in the GeoPackage: ${invalidTableNames.join(', ')}. ` + + `Available tables are: ${allTables.join(', ')}.`, + ); + } + + tableNames = requestedTableNames.filter((name: string) => + allTables.includes(name), + ); + + if (tableNames.length === 0) { + console.warn('No valid tables left to process, aborting.'); + return; + } + } else { + tableNames = allTables; + } + + for (const tableName of tableNames) { + const childId = `${sourceId}/${tableName}`; + + if (this.props.createSource) { + const sourceModel: IJGISSource = { + type: this.props.sourceType, + name: `${source.name} ${tableName} Source`, + parameters: { + path: source.path, + tables: tableName, + projection: source.projection || 'EPSG:3857', + }, + }; + this.props.model.sharedModel.addSource(childId, sourceModel); + } + if (this.props.createLayer) { + const layerModel: IJGISLayer = { + type: + this.props.layerType || + (this.props.sourceType === 'GeoPackageVectorSource' + ? 'VectorLayer' + : 'RasterLayer'), + parameters: { source: childId }, + visible: true, + name: `${source.name} ${tableName} Layer`, + }; + this.jGISModel.addLayer(UUID.uuid4(), layerModel); + } + } + return; + } + if (this.props.createSource) { let actualName = ''; const { name, ...sourceData } = diff --git a/packages/base/src/formbuilder/formselectors.ts b/packages/base/src/formbuilder/formselectors.ts index 1c00ff56e..62299ee6f 100644 --- a/packages/base/src/formbuilder/formselectors.ts +++ b/packages/base/src/formbuilder/formselectors.ts @@ -60,6 +60,12 @@ export function getSourceTypeForm( case 'VectorTileSource': SourceForm = TileSourcePropertiesForm; break; + case 'GeoPackageVectorSource': + SourceForm = PathBasedSourcePropertiesForm; + break; + case 'GeoPackageRasterSource': + SourceForm = PathBasedSourcePropertiesForm; + break; case 'GeoParquetSource': SourceForm = PathBasedSourcePropertiesForm; break; diff --git a/packages/base/src/icons.ts b/packages/base/src/icons.ts index 18f132d83..2b751ac25 100644 --- a/packages/base/src/icons.ts +++ b/packages/base/src/icons.ts @@ -11,6 +11,7 @@ import bookOpenSvgStr from '../style/icons/book_open.svg'; import clockSvgStr from '../style/icons/clock-solid.svg'; import geoJsonSvgStr from '../style/icons/geojson.svg'; import geolocationSvgStr from '../style/icons/geolocation.svg'; +import geoPackageSvgStr from '../style/icons/geopackage.svg'; import infoSvgStr from '../style/icons/info-solid.svg'; import logoSvgStr from '../style/icons/logo.svg'; import logoMiniSvgStr from '../style/icons/logo_mini.svg'; @@ -109,3 +110,8 @@ export const targetWithCenterIcon = new LabIcon({ name: 'jupytergis::targetWithoutCenter', svgstr: targetWithoutCenterSvgStr, }); + +export const geoPackageIcon = new LabIcon({ + name: 'jupytergis::geoPackage', + svgstr: geoPackageSvgStr, +}); diff --git a/packages/base/src/mainview/mainView.tsx b/packages/base/src/mainview/mainView.tsx index 82caddef6..c297816ca 100644 --- a/packages/base/src/mainview/mainView.tsx +++ b/packages/base/src/mainview/mainView.tsx @@ -807,6 +807,59 @@ export class MainView extends React.Component { break; } + case 'GeoPackageVectorSource': { + const sourceParameters = source.parameters; + + if (!sourceParameters) { + throw new Error('GeoPackageSource has no parameters'); + } + + const tableMap = await loadFile({ + filepath: sourceParameters.path, + type: 'GeoPackageVectorSource', + model: this._model, + }); + + const table = tableMap[sourceParameters.tables]; + const vectorSource = table.source; + vectorSource['projection'] = getProjection(sourceParameters.projection); + newSource = vectorSource; + break; + } + + case 'GeoPackageRasterSource': { + const sourceParameters = source.parameters; + + if (!sourceParameters) { + throw new Error('GeoPackageSource has no parameters'); + } + + const tableMap = await loadFile({ + filepath: sourceParameters.path, + type: 'GeoPackageRasterSource', + model: this._model, + }); + + const { gpr, tileDao } = tableMap[sourceParameters.tables]; + + const rasterSource = new XYZSource({ + minZoom: sourceParameters.minZoom ?? tileDao.minWebMapZoom, + maxZoom: sourceParameters.maxZoom ?? tileDao.maxWebMapZoom, + interpolate: sourceParameters.interpolate, + url: '{z},{x},{y}', + tileLoadFunction(tile: any, src) { + const [z, x, y] = src.split(',').map(Number); + gpr + .getTile(x, y, z) + .then((dataUri: any) => (tile.getImage().src = dataUri)); + }, + attributions: sourceParameters.attribution, + }); + + newSource = rasterSource; + break; + } + case 'GeoParquetSource': { const parameters = source.parameters as IGeoParquetSource; @@ -917,6 +970,10 @@ export class MainView extends React.Component { const layerId = layerIds[targetLayerPosition]; const layer = this._model.sharedModel.getLayer(layerId); + if (this._loadingLayers.has(layerId)) { + continue; + } + if (!layer) { console.warn( `Layer with ID ${layerId} does not exist in the shared model.`, @@ -1134,7 +1191,7 @@ export class MainView extends React.Component { try { proj4.defs([proj4list[projectionCode]]); - register(proj4); + register(proj4 as any); } catch (error: any) { console.warn( `Failed to register projection '${projectionCode}'. Error: ${error.message}`, diff --git a/packages/base/src/menus.ts b/packages/base/src/menus.ts index 709552402..5e219248c 100644 --- a/packages/base/src/menus.ts +++ b/packages/base/src/menus.ts @@ -31,6 +31,11 @@ export const vectorSubMenu = (commands: CommandRegistry) => { command: CommandIDs.newGeoParquetEntry, }); + subMenu.addItem({ + type: 'command', + command: CommandIDs.newGeoPackageVectorEntry, + }); + return subMenu; }; @@ -61,5 +66,10 @@ export const rasterSubMenu = (commands: CommandRegistry) => { command: CommandIDs.newGeoTiffEntry, }); + subMenu.addItem({ + type: 'command', + command: CommandIDs.newGeoPackageRasterEntry, + }); + return subMenu; }; diff --git a/packages/base/src/tools.ts b/packages/base/src/tools.ts index 855d98374..d4de67172 100644 --- a/packages/base/src/tools.ts +++ b/packages/base/src/tools.ts @@ -11,12 +11,16 @@ import { showErrorMessage } from '@jupyterlab/apputils'; import { PathExt, URLExt } from '@jupyterlab/coreutils'; import { Contents, ServerConnection } from '@jupyterlab/services'; import { VectorTile } from '@mapbox/vector-tile'; +import { GeoPackageAPI, GeoPackageTileRetriever } from '@ngageoint/geopackage'; import * as d3Color from 'd3-color'; import { compressors } from 'hyparquet-compressors'; +import { Source } from 'ol/source'; +import loadGpkg from 'ol-load-geopackage'; import Protobuf from 'pbf'; import shp from 'shpjs'; import RASTER_LAYER_GALLERY from '@/rasterlayer_gallery/raster_layer_gallery.json'; +import { getGdal } from './gdal'; export const debounce = ( func: CallableFunction, @@ -487,6 +491,157 @@ export const loadGeoTiff = async ( } }; +interface IVectorEntry { + source: Source; + sld: string | undefined; +} + +interface ITileEntry { + gpr: GeoPackageTileRetriever; + tileDao: object; +} + +type GpkgTable = Record; + +const geoPackageCache = new Map>(); + +/** + * Convert curved geometries to linear geometries for a given GeoPackage vector file, and reproject the data + * + * @param fileBlob GeoPackage file as a blob + * @returns Blob URL created from converted file + */ +async function linearizeReprojectGpkg( + fileBlob: Blob, + projection: string, +): Promise { + const gdal = await getGdal(); + const file = new File([fileBlob], 'input.gpkg', { + type: 'application/geopackage+sqlite3', + }); + const ds = await gdal.open(file); + await gdal.ogr2ogr( + ds.datasets[0], + ['-f', 'GPKG', '-nlt', 'CONVERT_TO_LINEAR', '-t_srs', projection], + 'output', + ); + const bytes = await gdal.getFileBytes('/output/output.gpkg'); + const blob = new Blob([new Uint8Array(bytes)], { + type: 'application/geopackage+sqlite3', + }); + const url = URL.createObjectURL(blob); + return url; +} + +function loadGeoPackageVectorFile( + fileBlob: Blob, + projection: string, + cacheFilename: string, +): Promise { + if (geoPackageCache.has(cacheFilename)) { + return geoPackageCache.get(cacheFilename)!; + } + + const loader = (async (): Promise => { + try { + const url = await linearizeReprojectGpkg(fileBlob, projection); + const [tables, slds] = await loadGpkg(url, projection); + const tableMap: GpkgTable = {}; + for (const name of Object.keys(tables)) { + tableMap[name] = { + source: tables[name] as Source, + sld: slds[name], + }; + } + return tableMap; + } catch (e: any) { + showErrorMessage('Failed to load GeoPackage file', e); + throw e; + } + })(); + geoPackageCache.set(cacheFilename, loader); + return loader; +} + +async function loadGeoPackageRasterFile( + filepath: string, + cacheFilename: string, + model?: IJupyterGISModel, + file_content?: string, +): Promise { + if (geoPackageCache.has(cacheFilename)) { + return geoPackageCache.get(cacheFilename)!; + } + + const loader = (async (): Promise => { + try { + let bytes: Uint8Array; + if (filepath.startsWith('http://') || filepath.startsWith('https://')) { + bytes = await loadGkpgFromUrl(filepath, model!); + } else { + const arrayBuffer = await stringToArrayBuffer(file_content as string); + bytes = new Uint8Array(arrayBuffer); + } + + const geoPackage = await GeoPackageAPI.open(bytes); + const tileTables = await geoPackage.getTileTables(); + const tableMap: GpkgTable = {}; + + tileTables.forEach(tableName => { + const tileDao = geoPackage.getTileDao(tableName); + + const tileWidth = tileDao.tileMatrices[0].tile_width; + const tileHeight = tileDao.tileMatrices[0].tile_height; + + tableMap[tableName] = { + gpr: new GeoPackageTileRetriever(tileDao, tileWidth, tileHeight), + tileDao, + }; + }); + + return tableMap; + } catch (error: any) { + showErrorMessage( + `Failed to load GeoPackage file: ${cacheFilename}`, + error, + ); + throw error; + } + })(); + + geoPackageCache.set(cacheFilename, loader); + return loader; +} + +async function loadGkpgFromUrl( + filepath: string, + model: IJupyterGISModel, +): Promise { + const response = await fetchWithProxies(filepath, model, async response => { + const arrayBuffer = await response.arrayBuffer(); + return new Uint8Array(arrayBuffer); + }); + if (!response) { + throw new Error(`Failed to fetch GeoPackage from URL: ${filepath}`); + } + return response; +} + +export async function getGeoPackageTableNames( + filepath: string, + type: 'GeoPackageVectorSource' | 'GeoPackageRasterSource', +) { + const cacheKey = + filepath + (type === 'GeoPackageRasterSource' ? 'Raster' : 'Vector'); + + const tableMap = await geoPackageCache.get(cacheKey); + if (!tableMap) { + return []; + } + + return Object.keys(tableMap); +} + /** * Generalized file reader for different source types. * @@ -568,6 +723,36 @@ export const loadFile = async (fileInfo: { throw new Error(`Failed to fetch ${filepath}`); } + case 'GeoPackageVectorSource': { + let projection = model.sharedModel.options.projection; + if (!projection) { + //TODO: this error should be uncommented when PR #732 is merged + //throw new Error(`Projection is not specified for ${filepath}`); + projection = 'EPSG:3857'; + } + + const fileBlob = await fetchWithProxies( + filepath, + model, + async response => response.blob(), + ); + + if (!fileBlob) { + showErrorMessage('Network error', `Failed to fetch ${filepath}`); + throw new Error(`Failed to fetch ${filepath}`); + } + + return loadGeoPackageVectorFile( + fileBlob, + projection, + filepath + 'Vector', + ); + } + + case 'GeoPackageRasterSource': { + return loadGeoPackageRasterFile(filepath, filepath + 'Raster', model); + } + case 'GeoParquetSource': { const cached = await getFromIndexedDB(filepath); if (cached) { @@ -654,6 +839,26 @@ export const loadFile = async (fileInfo: { } } + case 'GeoPackageVectorSource': { + let projection = model.sharedModel.options.projection; + if (!projection) { + //TODO: this error should be uncommented when PR #732 is merged + //throw new Error(`Projection is not specified for ${filepath}`); + projection = 'EPSG:3857'; + } + const blob = await base64ToBlob(file.content, getMimeType(filepath)); + return loadGeoPackageVectorFile(blob, projection, filepath + 'Vector'); + } + + case 'GeoPackageRasterSource': { + return loadGeoPackageRasterFile( + filepath, + filepath + 'Raster', + undefined, + file.content, + ); + } + case 'GeoParquetSource': { if (typeof file.content === 'string') { const { toGeoJson } = await import('geoparquet'); @@ -737,6 +942,7 @@ export const MIME_TYPES: { [ext: string]: string } = { '.etx': 'text/x-setext', '.exe': 'application/octet-stream', '.gif': 'image/gif', + '.gpkg': 'application/geopackage+vnd.sqlite3', '.gtar': 'application/x-gtar', '.h': 'text/plain', '.hdf': 'application/x-hdf', diff --git a/packages/base/src/types/ol-load-geopackage.d.ts b/packages/base/src/types/ol-load-geopackage.d.ts new file mode 100644 index 000000000..7575ea691 --- /dev/null +++ b/packages/base/src/types/ol-load-geopackage.d.ts @@ -0,0 +1,10 @@ +declare module 'ol-load-geopackage' { + import { Source } from 'ol/source'; + + function loadGpkg( + filepath: string, + displayProjection: string + ): Promise<[Record, Record]>; + + export = loadGpkg; +} diff --git a/packages/base/style/icons/geopackage.svg b/packages/base/style/icons/geopackage.svg new file mode 100644 index 000000000..844e15357 --- /dev/null +++ b/packages/base/style/icons/geopackage.svg @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + diff --git a/packages/schema/src/schema/project/jgis.json b/packages/schema/src/schema/project/jgis.json index b710f415a..b99ef21f0 100644 --- a/packages/schema/src/schema/project/jgis.json +++ b/packages/schema/src/schema/project/jgis.json @@ -55,6 +55,8 @@ "ImageSource", "ShapefileSource", "GeoTiffSource", + "GeoPackageVectorSource", + "GeoPackageRasterSource", "GeoParquetSource" ] }, diff --git a/packages/schema/src/schema/project/sources/geoPackageRasterSource.json b/packages/schema/src/schema/project/sources/geoPackageRasterSource.json new file mode 100644 index 000000000..c4b6cdaab --- /dev/null +++ b/packages/schema/src/schema/project/sources/geoPackageRasterSource.json @@ -0,0 +1,45 @@ +{ + "type": "object", + "description": "GeoPackageRasterSource", + "title": "IGeoPackageRasterSource", + "required": ["path"], + "additionalProperties": false, + "properties": { + "path": { + "type": "string", + "description": "The path to the GeoPackage source" + }, + "minZoom": { + "type": "number", + "minimum": 0, + "maximum": 24, + "readOnly": true, + "description": "The minimum zoom level for the raster source", + "default": 0 + }, + "maxZoom": { + "type": "number", + "minimum": 0, + "maximum": 24, + "readOnly": true, + "description": "The maximum zoom level for the raster source", + "default": 24 + }, + "tables": { + "type": "string", + "description": "The names of the tables in the GeoPackage to use as a source (optional). If left empty, all tables will be used.", + "default": "" + }, + "attribution": { + "type": "string", + "readOnly": true, + "description": "The attribution for the GeoPackage source", + "default": "" + }, + "interpolate": { + "type": "boolean", + "description": "Interpolate between grid cells when overzooming?", + "default": false + } + } +} diff --git a/packages/schema/src/schema/project/sources/geoPackageVectorSource.json b/packages/schema/src/schema/project/sources/geoPackageVectorSource.json new file mode 100644 index 000000000..32f89a049 --- /dev/null +++ b/packages/schema/src/schema/project/sources/geoPackageVectorSource.json @@ -0,0 +1,29 @@ +{ + "type": "object", + "description": "GeoPackageVectorSource", + "title": "IGeoPackageVectorSource", + "required": ["path"], + "additionalProperties": false, + "properties": { + "path": { + "type": "string", + "description": "The path to the GeoPackage source" + }, + "attribution": { + "type": "string", + "readOnly": true, + "description": "The attribution for the GeoPackage source.", + "default": "" + }, + "projection": { + "type": "string", + "description": "The projection information for the GeoPackage data (optional).", + "default": "EPSG:3857" + }, + "tables": { + "type": "string", + "description": "The names of the tables in the GeoPackage to use as a source (optional). If left empty, all tables will be used.", + "default": "" + } + } +} diff --git a/packages/schema/src/types.ts b/packages/schema/src/types.ts index c6e2cd86d..6e329941d 100644 --- a/packages/schema/src/types.ts +++ b/packages/schema/src/types.ts @@ -1,6 +1,8 @@ export * from './_interface/project/jgis'; // Sources +export * from './_interface/project/sources/geoPackageVectorSource'; +export * from './_interface/project/sources/geoPackageRasterSource'; export * from './_interface/project/sources/geoJsonSource'; export * from './_interface/project/sources/geoTiffSource'; export * from './_interface/project/sources/imageSource'; diff --git a/python/jupytergis_core/jupytergis_core/schema/__init__.py b/python/jupytergis_core/jupytergis_core/schema/__init__.py index 64f867eb5..ccc9fe062 100644 --- a/python/jupytergis_core/jupytergis_core/schema/__init__.py +++ b/python/jupytergis_core/jupytergis_core/schema/__init__.py @@ -15,6 +15,8 @@ from .interfaces.project.sources.imageSource import IImageSource # noqa from .interfaces.project.sources.geoTiffSource import IGeoTiffSource # noqa from .interfaces.project.sources.rasterDemSource import IRasterDemSource # noqa +from .interfaces.project.sources.geoPackageVectorSource import IGeoPackageVectorSource # noqa +from .interfaces.project.sources.geoPackageRasterSource import IGeoPackageRasterSource # noqa from .interfaces.project.sources.geoParquetSource import IGeoParquetSource # noqa from .interfaces.processing.buffer import IBuffer # noqa diff --git a/python/jupytergis_core/package.json b/python/jupytergis_core/package.json index 6e7159cd9..dacb5913a 100644 --- a/python/jupytergis_core/package.json +++ b/python/jupytergis_core/package.json @@ -28,8 +28,8 @@ "scripts": { "build": "jlpm build:lib && jlpm build:labextension:dev", "build:prod": "jlpm clean && jlpm build:lib:prod && jlpm build:labextension", - "build:labextension": "jupyter labextension build .", - "build:labextension:dev": "jupyter labextension build --development True .", + "build:labextension": "jupyter labextension build . && jlpm cp:sqlwasm", + "build:labextension:dev": "jupyter labextension build --development True . && jlpm cp:sqlwasm", "build:lib": "tsc --sourceMap", "build:lib:prod": "tsc", "build:dev": "jlpm run build", @@ -43,6 +43,7 @@ "install:extension": "jlpm build", "lint": "jlpm stylelint && jlpm prettier && jlpm eslint", "lint:check": "jlpm stylelint:check && jlpm prettier:check && jlpm eslint:check", + "cp:sqlwasm": "cp ../../node_modules/sql.js/dist/sql-wasm.wasm jupytergis_core/labextension/static", "prettier": "jlpm prettier:base --write", "prettier:base": "prettier \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", "prettier:check": "jlpm prettier:base --check", @@ -73,11 +74,14 @@ "@types/json-schema": "^7.0.11", "@types/react": "^18.0.26", "@types/react-addons-linked-state-mixin": "^0.14.22", + "buffer": "^6.0.3", "copy-webpack-plugin": "^10.0.0", "css-loader": "^6.7.1", "mkdirp": "^1.0.3", "npm-run-all": "^4.1.5", + "process": "^0.11.10", "rimraf": "^3.0.2", + "stream-browserify": "^3.0.0", "style-loader": "^3.3.1", "typescript": "^5", "webpack": "^5.76.3", @@ -105,6 +109,7 @@ }, "extension": true, "outputDir": "jupytergis_core/labextension", + "webpackConfig": "./webpack.config.js", "sharedPackages": { "@jupytergis/base": { "singleton": true, diff --git a/python/jupytergis_core/src/@types/wasm.ts b/python/jupytergis_core/src/@types/wasm.ts new file mode 100644 index 000000000..2886dbdbc --- /dev/null +++ b/python/jupytergis_core/src/@types/wasm.ts @@ -0,0 +1,4 @@ +declare module '*.wasm' { + const url: string; + export default url; +} diff --git a/python/jupytergis_core/src/plugin.ts b/python/jupytergis_core/src/plugin.ts index 2dfec7bc2..003e9eef4 100644 --- a/python/jupytergis_core/src/plugin.ts +++ b/python/jupytergis_core/src/plugin.ts @@ -20,11 +20,15 @@ import { WidgetTracker } from '@jupyterlab/apputils'; import { IDocumentManager } from '@jupyterlab/docmanager'; import { IMainMenu } from '@jupyterlab/mainmenu'; import { ITranslator } from '@jupyterlab/translation'; +import { SqljsAdapter } from '@ngageoint/geopackage'; +import wasmURL from 'rtree-sql.js/dist/sql-wasm.wasm'; import { JupyterGISExternalCommandRegistry } from './externalcommand'; import { JupyterGISLayerBrowserRegistry } from './layerBrowserRegistry'; import { JupyterGISFormSchemaRegistry } from './schemaregistry'; +SqljsAdapter.setSqljsWasmLocateFile(() => wasmURL); + const NAME_SPACE = 'jupytergis'; export const trackerPlugin: JupyterFrontEndPlugin = { diff --git a/python/jupytergis_core/tsconfig.json b/python/jupytergis_core/tsconfig.json index 152c99291..0d3a07a0f 100644 --- a/python/jupytergis_core/tsconfig.json +++ b/python/jupytergis_core/tsconfig.json @@ -2,7 +2,8 @@ "extends": "../../tsconfigbase.json", "compilerOptions": { "outDir": "lib", - "rootDir": "src" + "rootDir": "src", + "typeRoots": ["src/@types", "../../node_modules/@types"] }, "include": ["src/**/*", "src/schema/*.json", "src/_interface/*.json"] } diff --git a/python/jupytergis_core/webpack.config.js b/python/jupytergis_core/webpack.config.js new file mode 100644 index 000000000..f596998dd --- /dev/null +++ b/python/jupytergis_core/webpack.config.js @@ -0,0 +1,33 @@ +// Custom Webpack config to make @ngageoint/geopackage run in the browser: +// - Stub out fs, path, util +// - Polyfill stream and Buffer APIs +// - Auto-provide `process` and `Buffer` globals +// - Emit .wasm files as separate assets so `import wasmURL` yields the correct URL + +const webpack = require('webpack'); + +module.exports = { + resolve: { + fallback: { + fs: false, + path: false, + util: false, + stream: require.resolve('stream-browserify'), + buffer: require.resolve('buffer/'), + } + }, + module: { + rules: [ + { + test: /\.wasm$/, + type: 'asset/resource' + } + ] + }, + plugins: [ + new webpack.ProvidePlugin({ + process: 'process/browser', + Buffer: ['buffer', 'Buffer'] + }) + ] +}; diff --git a/python/jupytergis_lab/jupytergis_lab/notebook/gis_document.py b/python/jupytergis_lab/jupytergis_lab/notebook/gis_document.py index 449407c12..ee2171a3c 100644 --- a/python/jupytergis_lab/jupytergis_lab/notebook/gis_document.py +++ b/python/jupytergis_lab/jupytergis_lab/notebook/gis_document.py @@ -15,6 +15,8 @@ from jupytergis_core.schema import ( IGeoJSONSource, IGeoParquetSource, + IGeoPackageVectorSource, + IGeoPackageRasterSource, IGeoTiffSource, IHeatmapLayer, IHillshadeLayer, @@ -31,6 +33,7 @@ LayerType, SourceType, ) +from jupytergis_lab.notebook.utils import get_gpkg_layers logger = logging.getLogger(__file__) @@ -599,6 +602,143 @@ def add_geoparquet_layer( return self._add_layer(OBJECT_FACTORY.create_layer(layer, self)) + def add_geopackage_vector_layer( + self, + path: str, + table_names: list[str] | str | None = None, + name: str = "GeoPackage Layer", + type: "circle" | "fill" | "line" = "line", + opacity: float = 1, + logical_op: str | None = None, + feature: str | None = None, + operator: str | None = None, + value: Union[str, int, float] | None = None, + color_expr=None, + ): + """ + Add a GeoPackage Vector Layer to the document + + :param path: The path to the GeoPackage file to embed into the jGIS file. + :param table_names: A list of table names to create layers for. + :param name: The name that will be used for the object in the document. + :param type: The type of the vector layer to create. + :param opacity: The opacity, between 0 and 1. + :param logical_op: The logical combination to apply to filters. Must be "any" or "all" + :param feature: The feature to be filtered on + :param operator: The operator used to compare the feature and value + :param value: The value to be filtered on + :param color_expr: The style expression used to style the layer + """ + + if isinstance(table_names, str): + table_names = [part.strip() for part in table_names.split(",")] + + if not table_names: + table_names = get_gpkg_layers(path, "features") + + layer_ids = [] + + if "projection" in self._options: + projection = self._options["projection"] + else: + projection = "EPSG:3857" + + for table_name in table_names: + source = { + "type": SourceType.GeoPackageVectorSource, + "name": f"{name} {table_name} Source", + "parameters": { + "path": path, + "tables": table_name, + "projection": projection, + }, + } + + source_id = str(uuid4()) + "/" + str(table_name) + + self._add_source(OBJECT_FACTORY.create_source(source, self), source_id) + + layer = { + "type": LayerType.VectorLayer, + "name": f"{name} {table_name} Layer", + "visible": True, + "parameters": { + "source": source_id, + "type": type, + "opacity": opacity, + "color": color_expr, + }, + "filters": { + "appliedFilters": [ + {"feature": feature, "operator": operator, "value": value} + ], + "logicalOp": logical_op, + }, + } + + layer_id = str(uuid4()) + "/" + str(table_name) + layer_ids.append( + self._add_layer(OBJECT_FACTORY.create_layer(layer, self), layer_id) + ) + + return layer_ids + + def add_geopackage_raster_layer( + self, + path: str, + table_names: list[str] | str | None = None, + name: str = "GeoPackage Layer", + attribution: str = "", + opacity: float = 1, + ): + """ + Add a GeoPackage Raster Layer to the document. + + :param path: The tiles path. + :param table_names: A list of table names to create layers for. + :param name: The name that will be used for the object in the document. + :param attribution: The attribution. + :param opacity: The opacity, between 0 and 1. + """ + + if isinstance(table_names, str): + table_names = [part.strip() for part in table_names.split(",")] + + if not table_names: + table_names = get_gpkg_layers(path, "tiles") + + layer_ids = [] + + for table_name in table_names: + source = { + "type": SourceType.GeoPackageRasterSource, + "name": f"{name} {table_name} Source", + "parameters": {"path": path, "tables": table_name}, + } + + source_id = str(uuid4()) + "/" + str(table_name) + + self._add_source(OBJECT_FACTORY.create_source(source, self), source_id) + + layer = { + "type": LayerType.RasterLayer, + "name": f"{name} {table_name} Layer", + "visible": True, + "parameters": { + "source": source_id, + "type": type, + "opacity": opacity, + "attribution": attribution, + }, + } + + layer_id = str(uuid4()) + "/" + str(table_name) + layer_ids.append( + self._add_layer(OBJECT_FACTORY.create_layer(layer, self), layer_id) + ) + + return layer_ids + def remove_layer(self, layer_id: str): """ Remove a layer from the GIS document. @@ -797,8 +937,8 @@ def _add_source(self, new_object: "JGISObject", id: str | None = None) -> str: self._sources[_id] = obj_dict return _id - def _add_layer(self, new_object: "JGISObject") -> str: - _id = str(uuid4()) + def _add_layer(self, new_object: "JGISObject", id: str | None = None) -> str: + _id = str(uuid4()) if id is None else id obj_dict = json.loads(new_object.json()) self._layers[_id] = obj_dict self._layerTree.append(_id) @@ -886,6 +1026,8 @@ class Config: IGeoTiffSource, IRasterDemSource, IGeoParquetSource, + IGeoPackageVectorSource, + IGeoPackageRasterSource, ] _parent = Optional[GISDocument] @@ -974,3 +1116,9 @@ def create_source( OBJECT_FACTORY.register_factory(SourceType.GeoTiffSource, IGeoTiffSource) OBJECT_FACTORY.register_factory(SourceType.RasterDemSource, IRasterDemSource) OBJECT_FACTORY.register_factory(SourceType.GeoParquetSource, IGeoParquetSource) +OBJECT_FACTORY.register_factory( + SourceType.GeoPackageVectorSource, IGeoPackageVectorSource +) +OBJECT_FACTORY.register_factory( + SourceType.GeoPackageRasterSource, IGeoPackageRasterSource +) diff --git a/python/jupytergis_lab/jupytergis_lab/notebook/tests/test_api.py b/python/jupytergis_lab/jupytergis_lab/notebook/tests/test_api.py index d27706914..36b539472 100644 --- a/python/jupytergis_lab/jupytergis_lab/notebook/tests/test_api.py +++ b/python/jupytergis_lab/jupytergis_lab/notebook/tests/test_api.py @@ -5,6 +5,8 @@ from jupytergis_lab import GISDocument TEST_TIF = "https://s2downloads.eox.at/demo/EOxCloudless/2020/rgbnir/s2cloudless2020-16bits_sinlge-file_z0-4.tif" +TEST_GPKG_VECTOR = "https://raw.githubusercontent.com/richard-thomas/ol-load-geopackage/master/examples/dist/Natural_Earth_QGIS_layers_and_styles.gpkg" +TEST_GPKG_RASTER = "https://cdn.jsdelivr.net/gh/ngageoint/geopackage-js@master/docs/examples/GeoPackageToGo/StLouis.gpkg" TEST_GEOPARQUET = "https://raw.githubusercontent.com/opengeospatial/geoparquet/main/examples/example.parquet" @@ -31,6 +33,18 @@ def test_sourcelayer(self): assert self.doc.layers[tif_layer]["parameters"]["color"] == color +class TestGeoPackageVectorLayer(TestDocument): + def test_sourcelayer(self): + gpkg_layers = self.doc.add_geopackage_vector_layer(TEST_GPKG_VECTOR) + assert all(name in self.doc.layers for name in gpkg_layers) + + +class TestGeoPackageRasterLayer(TestDocument): + def test_sourcelayer(self): + gpkg_layers = self.doc.add_geopackage_raster_layer(TEST_GPKG_RASTER) + assert all(name in self.doc.layers for name in gpkg_layers) + + class TestGeoParquetLayer(TestDocument): def test_sourcelayer(self): color = {"fill-color": "#00FF00", "stroke-color": "#FF0000"} diff --git a/python/jupytergis_lab/jupytergis_lab/notebook/utils.py b/python/jupytergis_lab/jupytergis_lab/notebook/utils.py index 064d09c97..3163f1555 100644 --- a/python/jupytergis_lab/jupytergis_lab/notebook/utils.py +++ b/python/jupytergis_lab/jupytergis_lab/notebook/utils.py @@ -1,6 +1,10 @@ +import base64 +import sqlite3 +import uuid from enum import Enum +from pathlib import Path from urllib.parse import urljoin -import requests +from urllib.request import Request, urlopen class MESSAGE_ACTION(str, Enum): @@ -15,3 +19,35 @@ def multi_urljoin(*parts) -> str: parts[0], "/".join(part for part in parts[1:]), ) + + +def isURL(path: str) -> bool: + return path.startswith("http://") or path.startswith("https://") + + +def download_file(url: str, ext: str) -> str: + filename = Path(f"downloaded_{uuid.uuid4().hex[:8]}.{ext}") + + req = Request(url, headers={"User-Agent": "python-urllib"}) + with urlopen(req) as resp, open(filename, "wb") as out: + out.write(resp.read()) + + return filename + + +def get_gpkg_layers(gpkg_path: str, data_type: str) -> list[str]: + if isURL(gpkg_path): + gpkg_path = download_file(gpkg_path, "gpkg") + + conn = sqlite3.connect(gpkg_path) + cursor = conn.cursor() + cursor.execute( + f"""SELECT table_name FROM gpkg_contents WHERE data_type = '{data_type}'""" + ) + layers = [row[0] for row in cursor.fetchall()] + conn.close() + + if gpkg_path.exists(): + gpkg_path.unlink() + + return layers diff --git a/yarn.lock b/yarn.lock index 7bbc1f1ad..b9cda0037 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,16 +40,16 @@ __metadata: languageName: node linkType: hard -"@babel/generator@npm:^7.28.0": - version: 7.28.0 - resolution: "@babel/generator@npm:7.28.0" +"@babel/generator@npm:^7.28.3": + version: 7.28.3 + resolution: "@babel/generator@npm:7.28.3" dependencies: - "@babel/parser": ^7.28.0 - "@babel/types": ^7.28.0 + "@babel/parser": ^7.28.3 + "@babel/types": ^7.28.2 "@jridgewell/gen-mapping": ^0.3.12 "@jridgewell/trace-mapping": ^0.3.28 jsesc: ^3.0.2 - checksum: 3fc9ecca7e7a617cf7b7357e11975ddfaba4261f374ab915f5d9f3b1ddc8fd58da9f39492396416eb08cf61972d1aa13c92d4cca206533c553d8651c2740f07f + checksum: e2202bf2b9c8a94f7e7a0a049fda0ee037d055c46922e85afa3bbc53309113f859b8193894f991045d7865226028b8f4f06152ed315ab414451932016dba5e42 languageName: node linkType: hard @@ -100,14 +100,14 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.27.2, @babel/parser@npm:^7.28.0": - version: 7.28.0 - resolution: "@babel/parser@npm:7.28.0" +"@babel/parser@npm:^7.27.2, @babel/parser@npm:^7.28.3": + version: 7.28.3 + resolution: "@babel/parser@npm:7.28.3" dependencies: - "@babel/types": ^7.28.0 + "@babel/types": ^7.28.2 bin: parser: ./bin/babel-parser.js - checksum: 718e4ce9b0914701d6f74af610d3e7d52b355ef1dcf34a7dedc5930e96579e387f04f96187e308e601828b900b8e4e66d2fe85023beba2ac46587023c45b01cf + checksum: 5aa5ea0683a4056f98cd9cd61650870d5d44ec1654da14f72a8a06fabe7b2a35bf6cef9605f3740b5ded1e68f64ec45ce1aabf7691047a13a1ff2babe126acf9 languageName: node linkType: hard @@ -134,21 +134,21 @@ __metadata: linkType: hard "@babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.4.5": - version: 7.28.0 - resolution: "@babel/traverse@npm:7.28.0" + version: 7.28.3 + resolution: "@babel/traverse@npm:7.28.3" dependencies: "@babel/code-frame": ^7.27.1 - "@babel/generator": ^7.28.0 + "@babel/generator": ^7.28.3 "@babel/helper-globals": ^7.28.0 - "@babel/parser": ^7.28.0 + "@babel/parser": ^7.28.3 "@babel/template": ^7.27.2 - "@babel/types": ^7.28.0 + "@babel/types": ^7.28.2 debug: ^4.3.1 - checksum: f1b6ed2a37f593ee02db82521f8d54c8540a7ec2735c6c127ba687de306d62ac5a7c6471819783128e0b825c4f7e374206ebbd1daf00d07f05a4528f5b1b4c07 + checksum: 5f5ce477adc99ebdd6e8c9b7ba2e0a162bef39a1d3c5860c730c1674e57f9cb057c7e3dfdd652ce890bd79331a70f6cd310902414697787578e68167d52d96e7 languageName: node linkType: hard -"@babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.28.0": +"@babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.28.2": version: 7.28.2 resolution: "@babel/types@npm:7.28.2" dependencies: @@ -349,8 +349,8 @@ __metadata: linkType: hard "@codemirror/language@npm:^6.0.0, @codemirror/language@npm:^6.11.0, @codemirror/language@npm:^6.3.0, @codemirror/language@npm:^6.4.0, @codemirror/language@npm:^6.6.0, @codemirror/language@npm:^6.8.0": - version: 6.11.2 - resolution: "@codemirror/language@npm:6.11.2" + version: 6.11.3 + resolution: "@codemirror/language@npm:6.11.3" dependencies: "@codemirror/state": ^6.0.0 "@codemirror/view": ^6.23.0 @@ -358,7 +358,7 @@ __metadata: "@lezer/highlight": ^1.0.0 "@lezer/lr": ^1.0.0 style-mod: ^4.0.0 - checksum: fa61f77fd63315d0e5fd22c7ee16bc677934272cccfca1584dfbcb5ad6fd2134dfa85f120ca2149bab12f80e170569157f9acde36e8adf4bd43daf4708ecf2ac + checksum: 9ad560fb90ccb8e5660ee162b7ca36323b0cc0fe2c2885a93f052763c177e10118930aae5cdea410e90cf2a6a2b86438a7503fcc6d1f550c8d75a6757e31f3bf languageName: node linkType: hard @@ -598,7 +598,7 @@ __metadata: languageName: node linkType: hard -"@fortawesome/react-fontawesome@latest": +"@fortawesome/react-fontawesome@npm:latest": version: 0.2.3 resolution: "@fortawesome/react-fontawesome@npm:0.2.3" dependencies: @@ -643,30 +643,17 @@ __metadata: linkType: hard "@inquirer/external-editor@npm:^1.0.0": - version: 1.0.0 - resolution: "@inquirer/external-editor@npm:1.0.0" + version: 1.0.1 + resolution: "@inquirer/external-editor@npm:1.0.1" dependencies: chardet: ^2.1.0 iconv-lite: ^0.6.3 peerDependencies: "@types/node": ">=18" - checksum: d441a3e4370adc4edabec8c9d4495ac3794cc5a9d0065744f19705568c793aad3f977fe1adbfa768e0caa88650a670dfe7901501935a84d8ff8753015ecb2419 - languageName: node - linkType: hard - -"@isaacs/balanced-match@npm:^4.0.1": - version: 4.0.1 - resolution: "@isaacs/balanced-match@npm:4.0.1" - checksum: 102fbc6d2c0d5edf8f6dbf2b3feb21695a21bc850f11bc47c4f06aa83bd8884fde3fe9d6d797d619901d96865fdcb4569ac2a54c937992c48885c5e3d9967fe8 - languageName: node - linkType: hard - -"@isaacs/brace-expansion@npm:^5.0.0": - version: 5.0.0 - resolution: "@isaacs/brace-expansion@npm:5.0.0" - dependencies: - "@isaacs/balanced-match": ^4.0.1 - checksum: d7a3b8b0ddbf0ccd8eeb1300e29dd0a0c02147e823d8138f248375a365682360620895c66d113e05ee02389318c654379b0e538b996345b83c914941786705b1 + peerDependenciesMeta: + "@types/node": + optional: true + checksum: 6f1753d31db52c7088bad5209c7fccb23c3803d248be0e9f3f49ec5972628782c690086defc19fe8d740b2c45f67a746884ef41df9299a526f297813babd8281 languageName: node linkType: hard @@ -684,6 +671,15 @@ __metadata: languageName: node linkType: hard +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: ^7.0.4 + checksum: 5d36d289960e886484362d9eb6a51d1ea28baed5f5d0140bbe62b99bac52eaf06cc01c2bc0d3575977962f84f6b2c4387b043ee632216643d4787b0999465bf2 + languageName: node + linkType: hard + "@isaacs/string-locale-compare@npm:^1.1.0": version: 1.1.0 resolution: "@isaacs/string-locale-compare@npm:1.1.0" @@ -847,7 +843,7 @@ __metadata: languageName: node linkType: hard -"@jupyter/ydoc@npm:^2.0.0 || ^3.0.0, @jupyter/ydoc@npm:^2.0.0 || ^3.0.0-a3, @jupyter/ydoc@npm:^2.1.3 || ^3.0.0, @jupyter/ydoc@npm:^3.0.4": +"@jupyter/ydoc@npm:^2.0.0 || ^3.0.0, @jupyter/ydoc@npm:^2.0.0 || ^3.0.0-a3, @jupyter/ydoc@npm:^2.1.3 || ^3.0.0, @jupyter/ydoc@npm:^3.1.0": version: 3.1.0 resolution: "@jupyter/ydoc@npm:3.1.0" dependencies: @@ -892,6 +888,7 @@ __metadata: "@lumino/widgets": ^2.0.0 "@mapbox/vector-tile": ^2.0.3 "@naisutech/react-tree": ^3.0.1 + "@ngageoint/geopackage": ^4.2.6 "@radix-ui/react-checkbox": ^1.3.2 "@radix-ui/react-dropdown-menu": ^2.1.15 "@radix-ui/react-popover": ^1.1.14 @@ -919,6 +916,7 @@ __metadata: hyparquet-compressors: ^1.1.1 lucide-react: ^0.513.0 ol: ^10.1.0 + ol-load-geopackage: ^1.0.3 ol-pmtiles: ^0.5.0 ol-stac: ^1.0.0-rc.10 pbf: ^4.0.1 @@ -960,11 +958,14 @@ __metadata: "@types/json-schema": ^7.0.11 "@types/react": ^18.0.26 "@types/react-addons-linked-state-mixin": ^0.14.22 + buffer: ^6.0.3 copy-webpack-plugin: ^10.0.0 css-loader: ^6.7.1 mkdirp: ^1.0.3 npm-run-all: ^4.1.5 + process: ^0.11.10 rimraf: ^3.0.2 + stream-browserify: ^3.0.0 style-loader: ^3.3.1 typescript: ^5 util: ^0.12.5 @@ -1082,19 +1083,19 @@ __metadata: linkType: soft "@jupyterlab/application@npm:^4.0.0, @jupyterlab/application@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/application@npm:4.4.5" + version: 4.4.6 + resolution: "@jupyterlab/application@npm:4.4.6" dependencies: "@fortawesome/fontawesome-free": ^5.12.0 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/statedb": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/statedb": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/application": ^2.4.4 "@lumino/commands": ^2.3.2 @@ -1105,23 +1106,23 @@ __metadata: "@lumino/properties": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 - checksum: 76a6e5f4a82830d24d840eebaf941844b89398624cf92691c4a73d06b3fe073af14370fd375bf36267cd2ad2c2d1a8ddf4704c4ab4ee646a16a7173dce1d74a6 + checksum: 696670aa1f2120e10fcf8ed36c37d8c488cde977ef841aa885307f76ea966cd388f6b465f163b0012d05a133144288852cfa051ada8f8d16452c3415ecdaabad languageName: node linkType: hard "@jupyterlab/apputils@npm:^4.0.0": - version: 4.5.5 - resolution: "@jupyterlab/apputils@npm:4.5.5" - dependencies: - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/settingregistry": ^4.4.5 - "@jupyterlab/statedb": ^4.4.5 - "@jupyterlab/statusbar": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + version: 4.5.6 + resolution: "@jupyterlab/apputils@npm:4.5.6" + dependencies: + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/settingregistry": ^4.4.6 + "@jupyterlab/statedb": ^4.4.6 + "@jupyterlab/statusbar": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 @@ -1134,27 +1135,27 @@ __metadata: "@types/react": ^18.0.26 react: ^18.2.0 sanitize-html: ~2.12.1 - checksum: fb6f3b9a41fb7431c86d2f9d0bf9b7f190935bf100c7f24c0865fae9cc3e3862141bc4b7f3ef685bedc90e891460a7770db0645d23b73953ddbec6efb5e77674 + checksum: 0b2a0eeb247f8ee6bc5c3996e9ab6bcc082f80ff306a0a3a7713985a4a63ef9a0b29ba818dda600f6b1d6809af1e5d126ec54efcdca7d2eac823c6072b1b8468 languageName: node linkType: hard -"@jupyterlab/attachments@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/attachments@npm:4.4.5" +"@jupyterlab/attachments@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/attachments@npm:4.4.6" dependencies: - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 "@lumino/disposable": ^2.1.4 "@lumino/signaling": ^2.1.4 - checksum: 27df01d4d550c8d065735143c46348c26fc7ed56dd289f84f4f4404862b3bab957098c9588baa0de0ab7333127648932521f7bfe99a64f11c78c449be4ff83b6 + checksum: 9c0bae0f205bd1f4cfaa57e2034291064249bd96bb497a98be6a48a8d481c0ccd69fd20e8d67a0c1dbbfba16fb1f417009bdf2f797e30205a248b74439ec5d0b languageName: node linkType: hard "@jupyterlab/builder@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/builder@npm:4.4.5" + version: 4.4.6 + resolution: "@jupyterlab/builder@npm:4.4.6" dependencies: "@lumino/algorithm": ^2.0.3 "@lumino/application": ^2.4.4 @@ -1189,32 +1190,32 @@ __metadata: worker-loader: ^3.0.2 bin: build-labextension: lib/build-labextension.js - checksum: f999f44426067ae941d26a333fc6d086b43b184ed0e27dcf9353f5da53094e9c560ffe8cefb58859e9d741902d420d9ca860b48fd267e9d7565d9a3350687449 + checksum: 63f76993fb916d0a4f379904091a1712776c6927b7215ddb724d88bd633978119fb15b46c45c0c10bc11e4ef13a420d9a4589d50ec82511b706aa0a94f8318c1 languageName: node linkType: hard -"@jupyterlab/cells@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/cells@npm:4.4.5" +"@jupyterlab/cells@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/cells@npm:4.4.6" dependencies: "@codemirror/state": ^6.5.2 "@codemirror/view": ^6.38.1 - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/attachments": ^4.4.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/codemirror": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/documentsearch": ^4.4.5 - "@jupyterlab/filebrowser": ^4.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/outputarea": ^4.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/toc": ^6.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/attachments": ^4.4.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/codemirror": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/documentsearch": ^4.4.6 + "@jupyterlab/filebrowser": ^4.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/outputarea": ^4.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/toc": ^6.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/domutils": ^2.0.3 @@ -1225,23 +1226,23 @@ __metadata: "@lumino/virtualdom": ^2.0.3 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: 2b81cc4715827ce01cf85089ccf55a63079a3a162a8fe1a7095dcea70f913159bfe847ce58f9a48c703725abe0c585abd80deb90ab702b1b87c65331454d4c3b + checksum: 9899f02f36e618c649ae0d37532bbb9d4039dc259cf4c6f094669471688a18e84ecfca57960a5fbf19b8e518f2a24954c8078bd0f6f0c7ad23fbdbc465a93c5a languageName: node linkType: hard -"@jupyterlab/codeeditor@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/codeeditor@npm:4.4.5" +"@jupyterlab/codeeditor@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/codeeditor@npm:4.4.6" dependencies: "@codemirror/state": ^6.5.2 - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/statusbar": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/statusbar": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/dragdrop": ^2.1.6 @@ -1249,13 +1250,13 @@ __metadata: "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: bb45e0a6a5a1f2c71c3629daa56d883d72d5c8d75dc41d20a954c7af84a16373391cfa19b87c301383e5364dfc3f35b9029c097e335c2c113af52fcc6261427e + checksum: c4f379c5fcf47ccb6246c3b3bbd3baf33e2095a970a6df8b313920a8fd6c9ac8b6259e2b11c56c03a5a916cf0783923cdfe28eebc7e6c4c3510c2a995cad29ba languageName: node linkType: hard -"@jupyterlab/codemirror@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/codemirror@npm:4.4.5" +"@jupyterlab/codemirror@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/codemirror@npm:4.4.6" dependencies: "@codemirror/autocomplete": ^6.18.6 "@codemirror/commands": ^6.8.1 @@ -1277,12 +1278,12 @@ __metadata: "@codemirror/search": ^6.5.10 "@codemirror/state": ^6.5.2 "@codemirror/view": ^6.38.1 - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/documentsearch": ^4.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/documentsearch": ^4.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 "@lezer/common": ^1.2.1 "@lezer/generator": ^1.7.0 "@lezer/highlight": ^1.2.0 @@ -1291,27 +1292,27 @@ __metadata: "@lumino/disposable": ^2.1.4 "@lumino/signaling": ^2.1.4 yjs: ^13.5.40 - checksum: 76298ef970bda9b0e6791a53a7ebf0b6750f0d72411476f1cc05acd7e1cbf2cf5312d7e2a377ebc369c80f42ac9bb8961e393c7a27810837b333bcbfaa0ca4dd + checksum: 077de94658e476727c30700a9e4f291d255b7f0b77d4d8700c5f09df74483a2428b3b04aaf7c598a4ea945e6ccae6afaf0d3bb7db5d7c44564dbcb34de04e00d languageName: node linkType: hard "@jupyterlab/completer@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/completer@npm:4.4.5" + version: 4.4.6 + resolution: "@jupyterlab/completer@npm:4.4.6" dependencies: "@codemirror/state": ^6.5.2 "@codemirror/view": ^6.38.1 - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/codemirror": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/settingregistry": ^4.4.5 - "@jupyterlab/statedb": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/codemirror": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/settingregistry": ^4.4.6 + "@jupyterlab/statedb": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1319,38 +1320,38 @@ __metadata: "@lumino/messaging": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 - checksum: 97f5004b6a15c01dc29ca51fe808cb5c3fb7e14ced5eaa60579eaa5c10892273f3bce0df1187e1d98991b55177f5855230d5ddc650cb2ae9128e0f8e758d3e86 + checksum: e9dea0c12b61598459b7048170ca70b6053e64b84e9c654d83410d88d7e1ec7c588d94d3ac417298b155707caaaa9a600091827dd22d49e62de41ef2e0fef6f3 languageName: node linkType: hard "@jupyterlab/console@npm:^4.2.4, @jupyterlab/console@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/console@npm:4.4.5" - dependencies: - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/cells": ^4.4.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + version: 4.4.6 + resolution: "@jupyterlab/console@npm:4.4.6" + dependencies: + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/cells": ^4.4.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/dragdrop": ^2.1.6 "@lumino/messaging": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 - checksum: bc06f827740890eb38c80bac57a3109052f0b31f98bd4193315514d3d3f61357b4628edf69d2e8bf9bb815ec99dcd81c04e8ac451d0a27fc29ea58625be654e4 + checksum: 0c777619c9018dd526465ce4a41c8fbd7d7696487bb992c0ac49ac6e1c2c5413bc272492673cc80613f80fef421acc00d9257f822793685f566b4e008072ea98 languageName: node linkType: hard -"@jupyterlab/coreutils@npm:^6.0.0, @jupyterlab/coreutils@npm:^6.0.5, @jupyterlab/coreutils@npm:^6.3.0, @jupyterlab/coreutils@npm:^6.4.5": - version: 6.4.5 - resolution: "@jupyterlab/coreutils@npm:6.4.5" +"@jupyterlab/coreutils@npm:^6.0.0, @jupyterlab/coreutils@npm:^6.0.5, @jupyterlab/coreutils@npm:^6.3.0, @jupyterlab/coreutils@npm:^6.4.6": + version: 6.4.6 + resolution: "@jupyterlab/coreutils@npm:6.4.6" dependencies: "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1358,22 +1359,22 @@ __metadata: minimist: ~1.2.0 path-browserify: ^1.0.0 url-parse: ~1.5.4 - checksum: ef4777d66ffc1a005b33b15f87b493d7476e1d0951c9a06a3a74dea69040f61300f6db270f6902b589b14ed2332fa6070b8f39c289db787f76f1651963db6e11 + checksum: b95c62cb0616acf23eb913a5c58acffab570b59bccd6b33fe3795a7b3be9e6423be317c12acd21fcf42ac6915f0c21374a633f53101e51e22922f27265f87230 languageName: node linkType: hard -"@jupyterlab/docmanager@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/docmanager@npm:4.4.5" +"@jupyterlab/docmanager@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/docmanager@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/statedb": ^4.4.5 - "@jupyterlab/statusbar": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/statedb": ^4.4.6 + "@jupyterlab/statusbar": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1383,24 +1384,24 @@ __metadata: "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: 930e909de6a6376dc9b160fadbf60d2b16d9e48840aa82b560b52308338aeb580122caede1e14020ea1e835a0b1c78b7ddf2f8bcc8192e7a2d1343430f05dca4 + checksum: ad80cdd354a8e72994d3426d4703b3a99a2567f87af72b0dfa9c3a709bacebf7bc9d003509d0259d5ce5d2e737273645d653441ea0812ce7a728518a304afec6 languageName: node linkType: hard -"@jupyterlab/docregistry@npm:^4.0.5, @jupyterlab/docregistry@npm:^4.3.0, @jupyterlab/docregistry@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/docregistry@npm:4.4.5" +"@jupyterlab/docregistry@npm:^4.0.5, @jupyterlab/docregistry@npm:^4.3.0, @jupyterlab/docregistry@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/docregistry@npm:4.4.6" dependencies: - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1409,17 +1410,17 @@ __metadata: "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: c015b46abb5ddf68c36a3a7b5d618624ac88c36ea74d35ad1e61bb1a09cbd3eacae77668ddccfe9015e6a9e336f7fe2214531612e9ab94276e6e32f70345d767 + checksum: 8039969937bb937ce7e48f780b4bb36d5ced8944ddb97b9588a47954bdedfa3f03204868059add087c1dcaf32613d4511e0abc51b6338d5b8be2645e2d01ccfb languageName: node linkType: hard -"@jupyterlab/documentsearch@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/documentsearch@npm:4.4.5" +"@jupyterlab/documentsearch@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/documentsearch@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1428,23 +1429,23 @@ __metadata: "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: f65dd06a47f6b45b1fd3d14778c0f1f432a2e6756085f3326fff6cf1f3451d627d3e29ef63a9b58fd4ac6096f36d86426234d79518ee1dd22bca1b1a51bab8cd + checksum: 98bcbd1268956c802a2177dbe793516570fcdded4c3d6f20aa38bcd1ecd60d0cd759c16d6ec2481d4ca1f4cfe3f3ec802aca69b5890164b465ed36758cf63b87 languageName: node linkType: hard -"@jupyterlab/filebrowser@npm:^4.3.0, @jupyterlab/filebrowser@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/filebrowser@npm:4.4.5" +"@jupyterlab/filebrowser@npm:^4.3.0, @jupyterlab/filebrowser@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/filebrowser@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docmanager": ^4.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/statedb": ^4.4.5 - "@jupyterlab/statusbar": ^4.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docmanager": ^4.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/statedb": ^4.4.6 + "@jupyterlab/statusbar": ^4.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1457,17 +1458,17 @@ __metadata: "@lumino/widgets": ^2.7.1 jest-environment-jsdom: ^29.3.0 react: ^18.2.0 - checksum: 2760b00e02920a16d38ef3c6944309e179228da5e2176c38d4aae73e6a0460b640cf49c79c0d324ce7711c279008cb3cd200511c43e76f6618b942992f6b8579 + checksum: f1b20358744989366bfcabb5915eaf45c348d4413566c50d288537af0522e15e4d85ae8ba0fee01503441decec87a29000646bbb48203e71c5880dd3226bfcb9 languageName: node linkType: hard "@jupyterlab/launcher@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/launcher@npm:4.4.5" + version: 4.4.6 + resolution: "@jupyterlab/launcher@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 @@ -1475,21 +1476,21 @@ __metadata: "@lumino/properties": ^2.0.3 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: 10a4cda61174be7e08dd1bdb817f9e71e76a8c7a49a28c576b86c5f97ef48fcc1f3d22b0f68d3b2c34502db7517fe548bc6c9790c1605309ab29fccdfb57c496 + checksum: 2fccaa23eb22abe1840e269f999733d8e2b8023255d39d417f49355acb2e18571b564dee71125c728dc48948a8fd222d9660ade3fdbc3b473179e50cb7298ae4 languageName: node linkType: hard -"@jupyterlab/lsp@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/lsp@npm:4.4.5" +"@jupyterlab/lsp@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/lsp@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/codemirror": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/translation": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/codemirror": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/translation": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/signaling": ^2.1.4 @@ -1498,56 +1499,56 @@ __metadata: vscode-jsonrpc: ^6.0.0 vscode-languageserver-protocol: ^3.17.0 vscode-ws-jsonrpc: ~1.0.2 - checksum: 4510ae6fdf327d1b26290d6009b622174016130865150d23556e0eb539f6b6c96feeb571cf0aaf13a08f480a78942a539b0a2f898fe144518c34fa813dc9abeb + checksum: a7dfeb100a0f94e371f7e25d648e350a0c5b4cab4bdfa5695216e2cdf0ad2357efc1ad9c297e5759925f0da972cd25202ac67842de4492b127ab29149a6a5d89 languageName: node linkType: hard "@jupyterlab/mainmenu@npm:^4.3.0": - version: 4.4.5 - resolution: "@jupyterlab/mainmenu@npm:4.4.5" + version: 4.4.6 + resolution: "@jupyterlab/mainmenu@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 "@lumino/widgets": ^2.7.1 - checksum: f0761f3c9eccf7b5088993b16b5c3a95b109560983e4488aa63b5513ff36685c0459e8369e12cd9d4ee822795bd9920f2743aa535e6daf47164e7737b7bf959e + checksum: 536cf088c942b8d8d65695f9fb1997d9323c4e50c246bb9ce4f660a15e9a67ec2d2eb6d8a37c58169c6ffdea822e9a7b83152d13e59828edabb3317fb959ea9a languageName: node linkType: hard -"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/nbformat@npm:4.4.5" +"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/nbformat@npm:4.4.6" dependencies: "@lumino/coreutils": ^2.2.1 - checksum: 8f42dd689693a70b196e34ad68c915b9217a77355428b5344f545f4d89373b302deb5a6b31426ee7cc78a77ab83db9e7714ef7c23f9cb35ea7ffbc120f98aef6 + checksum: 2eb58e49deb7ae012d0a916814af75ed6f69d51100fc428e375867499891c3da621cddfda78bf2e6a42af4530c2f23f4de34fab48433a0fe2a026fc58c88cf50 languageName: node linkType: hard "@jupyterlab/notebook@npm:^4.0.0": - version: 4.4.5 - resolution: "@jupyterlab/notebook@npm:4.4.5" - dependencies: - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/cells": ^4.4.5 - "@jupyterlab/codeeditor": ^4.4.5 - "@jupyterlab/codemirror": ^4.4.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/documentsearch": ^4.4.5 - "@jupyterlab/lsp": ^4.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/settingregistry": ^4.4.5 - "@jupyterlab/statusbar": ^4.4.5 - "@jupyterlab/toc": ^6.4.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + version: 4.4.6 + resolution: "@jupyterlab/notebook@npm:4.4.6" + dependencies: + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/cells": ^4.4.6 + "@jupyterlab/codeeditor": ^4.4.6 + "@jupyterlab/codemirror": ^4.4.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/documentsearch": ^4.4.6 + "@jupyterlab/lsp": ^4.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/settingregistry": ^4.4.6 + "@jupyterlab/statusbar": ^4.4.6 + "@jupyterlab/toc": ^6.4.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1560,34 +1561,34 @@ __metadata: "@lumino/virtualdom": ^2.0.3 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: 1a784317fd93d62f9137d7ac8ca70afcc4ac3522675a16d4e535e6362d99d01c5f737801d39ef79226036d392b1d986fbfafd20a3c90a6225f053321acb75e1f + checksum: 2c8ae242712b23d97db6a58be1085ad05b90704d8f4d6d3b78711248364ee4039229368abaf1e952e52666ca6c61b8ce3e732f22ae2c2bd46687cdb2c08a8637 languageName: node linkType: hard -"@jupyterlab/observables@npm:^5.3.0, @jupyterlab/observables@npm:^5.4.5": - version: 5.4.5 - resolution: "@jupyterlab/observables@npm:5.4.5" +"@jupyterlab/observables@npm:^5.3.0, @jupyterlab/observables@npm:^5.4.6": + version: 5.4.6 + resolution: "@jupyterlab/observables@npm:5.4.6" dependencies: "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/messaging": ^2.0.3 "@lumino/signaling": ^2.1.4 - checksum: 299e257c73def84d980b15c6651908280c44d7130b8666799b168558bd83d9f3838d54e090a5b6d96db43a0150d21279aebb814018f5ce8518e5a8d04dccc3c3 + checksum: 20ce97ebcda99f1cb8ab26287caeb7a7f2f3306361562f5bb9e9f59583239d6670d493b852824a647b51bbb41c43284537aad4efcfd12ae19f3d59ff4fe1892d languageName: node linkType: hard -"@jupyterlab/outputarea@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/outputarea@npm:4.4.5" +"@jupyterlab/outputarea@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/outputarea@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/translation": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/translation": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1595,65 +1596,65 @@ __metadata: "@lumino/properties": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 - checksum: 4878d72d1ff2913375aab0da3387db3c76d62ec74107a6b1d56f8e3d735ed601f01be8c36ea2bfbccb00b4ee75138c5453a01e26f0780a7e4038b7bcd31a2bc3 + checksum: cfe794ff7efd90706e872e3d395749115a8565446d69f9f5aaa8d8ae1bd6fbc6cdeecf61fd3c6f2d66a122b308361d94c393ec20984b5761630c18f6114ee165 languageName: node linkType: hard -"@jupyterlab/rendermime-interfaces@npm:^3.12.5": - version: 3.12.5 - resolution: "@jupyterlab/rendermime-interfaces@npm:3.12.5" +"@jupyterlab/rendermime-interfaces@npm:^3.12.6": + version: 3.12.6 + resolution: "@jupyterlab/rendermime-interfaces@npm:3.12.6" dependencies: "@lumino/coreutils": ^1.11.0 || ^2.2.1 "@lumino/widgets": ^1.37.2 || ^2.7.1 - checksum: c0734aa5b0d2d62533786a18fc765cdaa6887a2467daebfbd8a47dcd6e61459586d13d93a08bbafbf612f6661630d73529dfc59f40ac5067aa0e32c6075d8565 + checksum: 7d94d0df00702f595385fd3b6c6af5ff5c4264394166958c614242aa1b43d74c5d53273af0aba73208e93c95688c6877de9753cb362be84fe2670adf53f1fcd9 languageName: node linkType: hard -"@jupyterlab/rendermime@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/rendermime@npm:4.4.5" +"@jupyterlab/rendermime@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/rendermime@npm:4.4.6" dependencies: - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/translation": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/translation": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/messaging": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 lodash.escape: ^4.0.1 - checksum: 37a1bbd941be9238894ac0fab635d43989944aa6fe375c9a35ce7eba2066d20b1d416378bdfe40fc3e3a8ea9530970ba4f0ce44edd8fcca3dbf62840e6e3c16d + checksum: 0969974b9f64e0823ef2362e322e4cce6cda6bb0dda6877d4a91d49d82d0a5f5974791f8943f5724ca54bb2f92c390d0859c90754a74ceab41081d47ed6909bf languageName: node linkType: hard "@jupyterlab/services@npm: ^7.0.0": - version: 7.4.5 - resolution: "@jupyterlab/services@npm:7.4.5" - dependencies: - "@jupyter/ydoc": ^3.0.4 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/settingregistry": ^4.4.5 - "@jupyterlab/statedb": ^4.4.5 + version: 7.4.6 + resolution: "@jupyterlab/services@npm:7.4.6" + dependencies: + "@jupyter/ydoc": ^3.1.0 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/settingregistry": ^4.4.6 + "@jupyterlab/statedb": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/polling": ^2.1.4 "@lumino/properties": ^2.0.3 "@lumino/signaling": ^2.1.4 ws: ^8.11.0 - checksum: b4ede0075dc2d36f0115046b54a044fb34e20e26065d8b158c80503df50ed56c848055419c55cf72ae0416044f538f50d2706f93b395601663b744b095b084f5 + checksum: d57b06a9b3a7a56d82288d064379500ec2f8c30ffc838730837e37d87e2368991e2f61ac4df191316ecf5866ca0aa1e9aea4c55ef10579d7a6fe749b3baaf11c languageName: node linkType: hard -"@jupyterlab/settingregistry@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/settingregistry@npm:4.4.5" +"@jupyterlab/settingregistry@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/settingregistry@npm:4.4.6" dependencies: - "@jupyterlab/nbformat": ^4.4.5 - "@jupyterlab/statedb": ^4.4.5 + "@jupyterlab/nbformat": ^4.4.6 + "@jupyterlab/statedb": ^4.4.6 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1663,28 +1664,28 @@ __metadata: json5: ^2.2.3 peerDependencies: react: ">=16" - checksum: b8828b12bb474d2202f6e8263b033a3e8f42ba155dbdd8ad040a76ca9dbf5f8c6861dc834a5c1e2045644fced5eaa34ab8ec9ed32f6a39f0b6c019ef42c55112 + checksum: 4afb981512ec37405ad29abeedb08058962c207a925fd32602c05b770158c55ceb77fee7af7acab50986a7fa83dba9824f9d261348a785d50ad2e4052c8325f5 languageName: node linkType: hard -"@jupyterlab/statedb@npm:^4.3.0, @jupyterlab/statedb@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/statedb@npm:4.4.5" +"@jupyterlab/statedb@npm:^4.3.0, @jupyterlab/statedb@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/statedb@npm:4.4.6" dependencies: "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/properties": ^2.0.3 "@lumino/signaling": ^2.1.4 - checksum: eab9e3359d060aac929d3c0aa62bbfa077d2725c8ffbaa5b6eba5eae86da0f8d12d2e82f8802d16a370a159bb1f9d7edb6ec50c64abfd237fb7216672b1fc9f2 + checksum: 36fdfaf971ba3442e514565d35cd731f5d1bd3801bb695f4e71386d33e4497e70b7790d0b60d5ae68b6b70bcb8233f2abc42842057a31217c1a6337289332c59 languageName: node linkType: hard -"@jupyterlab/statusbar@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/statusbar@npm:4.4.5" +"@jupyterlab/statusbar@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/statusbar@npm:4.4.6" dependencies: - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 @@ -1692,56 +1693,56 @@ __metadata: "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: bf12f47a0a6d74191e1f1947dd1db4490de2e0287a212d50fd4d32c8169bdccb930f0400d9a79815c23d5136024226f9455511557d48efd594a7a273865db691 + checksum: 1734d271bdafa1cdec0edd67093732d7b1977b0c5c453ded5ea7f77141c459c95617040d76d9c08cb4c49d0cdb052616dab97547c1c0ea94dfd9339f6b914786 languageName: node linkType: hard -"@jupyterlab/toc@npm:^6.4.5": - version: 6.4.5 - resolution: "@jupyterlab/toc@npm:6.4.5" +"@jupyterlab/toc@npm:^6.4.6": + version: 6.4.6 + resolution: "@jupyterlab/toc@npm:6.4.6" dependencies: "@jupyter/react-components": ^0.16.6 - "@jupyterlab/apputils": ^4.5.5 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/docregistry": ^4.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime": ^4.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/translation": ^4.4.5 - "@jupyterlab/ui-components": ^4.4.5 + "@jupyterlab/apputils": ^4.5.6 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/docregistry": ^4.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime": ^4.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/translation": ^4.4.6 + "@jupyterlab/ui-components": ^4.4.6 "@lumino/coreutils": ^2.2.1 "@lumino/disposable": ^2.1.4 "@lumino/messaging": ^2.0.3 "@lumino/signaling": ^2.1.4 "@lumino/widgets": ^2.7.1 react: ^18.2.0 - checksum: 8bb6d9995e1f042857c8b8ea2ddcf016dfc31a4770dd5f6428b197ce205b35fc01a98dad1f6b2d99640eb0fbccd738d4cfadc505b29bf6032c80d8bfc04977b6 + checksum: e9c12012e7293aa1c32947b177392c77ac9a94ba92e1cfe2888206a76624e2428f3bddf403b230095c1c17ddab8bb189b27746df2a247cdcbb6d7a23a731e350 languageName: node linkType: hard -"@jupyterlab/translation@npm:^4.3.0, @jupyterlab/translation@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/translation@npm:4.4.5" +"@jupyterlab/translation@npm:^4.3.0, @jupyterlab/translation@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/translation@npm:4.4.6" dependencies: - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/services": ^7.4.5 - "@jupyterlab/statedb": ^4.4.5 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/services": ^7.4.6 + "@jupyterlab/statedb": ^4.4.6 "@lumino/coreutils": ^2.2.1 - checksum: edc449d84b739d0bb861fcb07d330c71d78cdec5b90034e349212aa711e9dc401d72dfd7d2bf7b632fe0ecfaec045c42930fbbcde409f6cb2c1ce450fabfab3a + checksum: 58fa9e0e7063294e4280b61db15e79420f12931c57b1fca6c585424399a583116feb048fc404639a361705209bf2a3ce9f55ed7fb1f4493615ea922c78620f4e languageName: node linkType: hard -"@jupyterlab/ui-components@npm:^4.0.5, @jupyterlab/ui-components@npm:^4.3.0, @jupyterlab/ui-components@npm:^4.3.1, @jupyterlab/ui-components@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/ui-components@npm:4.4.5" +"@jupyterlab/ui-components@npm:^4.0.5, @jupyterlab/ui-components@npm:^4.3.0, @jupyterlab/ui-components@npm:^4.3.1, @jupyterlab/ui-components@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/ui-components@npm:4.4.6" dependencies: "@jupyter/react-components": ^0.16.6 "@jupyter/web-components": ^0.16.6 - "@jupyterlab/coreutils": ^6.4.5 - "@jupyterlab/observables": ^5.4.5 - "@jupyterlab/rendermime-interfaces": ^3.12.5 - "@jupyterlab/translation": ^4.4.5 + "@jupyterlab/coreutils": ^6.4.6 + "@jupyterlab/observables": ^5.4.6 + "@jupyterlab/rendermime-interfaces": ^3.12.6 + "@jupyterlab/translation": ^4.4.6 "@lumino/algorithm": ^2.0.3 "@lumino/commands": ^2.3.2 "@lumino/coreutils": ^2.2.1 @@ -1759,13 +1760,13 @@ __metadata: typestyle: ^2.0.4 peerDependencies: react: ^18.2.0 - checksum: 0edc8857042ee6285ba418c5e5d486dd236845e7d02da1f4fa4e957ab33747c1632646e20af616d9ba39615b929f3f36a63abd5580577fc356503f4a4210e6e5 + checksum: 718bab7022d915e32998a9192a5e0289ab6d9e071e68882d20e0397ea094bbd940c03e9087bf1eba0eb0894630f0a9c7f547cb014d348522349af563d973c3de languageName: node linkType: hard -"@lerna/create@npm:8.2.3": - version: 8.2.3 - resolution: "@lerna/create@npm:8.2.3" +"@lerna/create@npm:8.2.4": + version: 8.2.4 + resolution: "@lerna/create@npm:8.2.4" dependencies: "@npmcli/arborist": 7.5.4 "@npmcli/package-json": 5.2.0 @@ -1800,7 +1801,6 @@ __metadata: js-yaml: 4.1.0 libnpmpublish: 9.0.9 load-json-file: 6.2.0 - lodash: ^4.17.21 make-dir: 4.0.0 minimatch: 3.0.5 multimatch: 5.0.0 @@ -1837,7 +1837,7 @@ __metadata: write-pkg: 4.0.0 yargs: 17.7.2 yargs-parser: 21.1.1 - checksum: 4e8d3f1955c021e7206ebdd0f35e64e11b4396cff5e0fe12611cb5a645166512bd9105dead00f97bee61400b8bbe07dffcaf39eba69d3984e91118d50a71484a + checksum: 79ccd20fac694813728b6582f806f12b3549a3bc87a91d6df6260e0c623b669fa1f84815d985b1c5c9f6d717a57e7407b8e8c5e5e770d7ff39b3bdba9e91883f languageName: node linkType: hard @@ -2241,6 +2241,47 @@ __metadata: languageName: node linkType: hard +"@ngageoint/geopackage@npm:^4.2.6": + version: 4.2.6 + resolution: "@ngageoint/geopackage@npm:4.2.6" + dependencies: + "@turf/bbox": 6.3.0 + "@turf/boolean-clockwise": 6.5.0 + "@turf/boolean-point-in-polygon": 6.5.0 + "@turf/boolean-within": 6.5.0 + "@turf/distance": 6.5.0 + "@turf/helpers": 6.5.0 + "@turf/intersect": 6.5.0 + "@turf/line-intersect": 6.5.0 + "@turf/point-to-line-distance": 6.5.0 + "@turf/polygon-to-line": 6.5.0 + "@types/geojson": 7946.0.8 + "@types/proj4": 2.5.2 + better-sqlite3: ^9.1.1 + chalk: 4.1.1 + file-type: ^16.5.4 + image-size: 0.8.3 + inquirer: 8.0.0 + lodash: 4.17.21 + proj4: 2.8.0 + reproject: 1.2.5 + rtree-sql.js: 1.7.0 + simplify-js: 1.2.4 + webworkify: 1.5.0 + wkx: 0.4.8 + dependenciesMeta: + better-sqlite3: + optional: true + chalk: + optional: true + inquirer: + optional: true + bin: + geopackage: cli + checksum: 6fdd4bf3f9057b1c78949885a44a5e65b9fbe73180cbc6963508263a4f89ed1b53996ad4c4a9fe56c2eeda8f7eead0e6f81fe39a89d213c9a3aba4094cc8994b + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -2281,6 +2322,19 @@ __metadata: languageName: node linkType: hard +"@npmcli/agent@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/agent@npm:3.0.0" + dependencies: + agent-base: ^7.1.0 + http-proxy-agent: ^7.0.0 + https-proxy-agent: ^7.0.1 + lru-cache: ^10.0.1 + socks-proxy-agent: ^8.0.3 + checksum: e8fc25d536250ed3e669813b36e8c6d805628b472353c57afd8c4fde0fcfcf3dda4ffe22f7af8c9070812ec2e7a03fb41d7151547cef3508efe661a5a3add20f + languageName: node + linkType: hard + "@npmcli/arborist@npm:7.5.4": version: 7.5.4 resolution: "@npmcli/arborist@npm:7.5.4" @@ -2335,6 +2389,15 @@ __metadata: languageName: node linkType: hard +"@npmcli/fs@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/fs@npm:4.0.0" + dependencies: + semver: ^7.3.5 + checksum: 68951c589e9a4328698a35fd82fe71909a257d6f2ede0434d236fa55634f0fbcad9bb8755553ce5849bd25ee6f019f4d435921ac715c853582c4a7f5983c8d4a + languageName: node + linkType: hard + "@npmcli/git@npm:^5.0.0": version: 5.0.8 resolution: "@npmcli/git@npm:5.0.8" @@ -2726,10 +2789,10 @@ __metadata: languageName: node linkType: hard -"@radix-ui/primitive@npm:1.1.2": - version: 1.1.2 - resolution: "@radix-ui/primitive@npm:1.1.2" - checksum: 6cb2ac097faf77b7288bdfd87d92e983e357252d00ee0d2b51ad8e7897bf9f51ec53eafd7dd64c613671a2b02cb8166177bc3de444a6560ec60835c363321c18 +"@radix-ui/primitive@npm:1.1.3": + version: 1.1.3 + resolution: "@radix-ui/primitive@npm:1.1.3" + checksum: ee27abbff0d6d305816e9314655eb35e72478ba47416bc9d5cb0581728be35e3408cfc0748313837561d635f0cb7dfaae26e61831f0e16c0fd7d669a612f2cb0 languageName: node linkType: hard @@ -2753,13 +2816,13 @@ __metadata: linkType: hard "@radix-ui/react-checkbox@npm:^1.3.2": - version: 1.3.2 - resolution: "@radix-ui/react-checkbox@npm:1.3.2" + version: 1.3.3 + resolution: "@radix-ui/react-checkbox@npm:1.3.3" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-context": 1.1.2 - "@radix-ui/react-presence": 1.1.4 + "@radix-ui/react-presence": 1.1.5 "@radix-ui/react-primitive": 2.1.3 "@radix-ui/react-use-controllable-state": 1.2.2 "@radix-ui/react-use-previous": 1.1.1 @@ -2774,7 +2837,7 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 4c895aa1d9fa469d429a1a7ce39c10c8c056aba7e55acd9b257d1169f3826721d815f5d3e1543014f563aed379885d60aabcb23629a75cbbf18d6257e860c20a + checksum: 83e8fce516b84fc012c0c2771db646ff135daeabfb045d9d57d1fa71da8009069272bdd230efd4e3438dcd045b8476c478c122f81afe167a7db0abd34dc79922 languageName: node linkType: hard @@ -2839,11 +2902,11 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-dismissable-layer@npm:1.1.10": - version: 1.1.10 - resolution: "@radix-ui/react-dismissable-layer@npm:1.1.10" +"@radix-ui/react-dismissable-layer@npm:1.1.11": + version: 1.1.11 + resolution: "@radix-ui/react-dismissable-layer@npm:1.1.11" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-primitive": 2.1.3 "@radix-ui/react-use-callback-ref": 1.1.1 @@ -2858,19 +2921,19 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: c4f31e8e93ae979a1bcd60726f8ebe7b79f23baafcd1d1e65f62cff6b322b2c6ff6132d82f2e63737f9955a8f04407849036f5b64b478e9a5678747d835957d8 + checksum: 8fc9f027c9f68940c69c9cc117c43e1313d1a78ae4109cf809868b82837e5e2a7d410adf78e97328d9d5a080a63e399918414985658ab029a8df7d775af23b68 languageName: node linkType: hard "@radix-ui/react-dropdown-menu@npm:^2.1.15": - version: 2.1.15 - resolution: "@radix-ui/react-dropdown-menu@npm:2.1.15" + version: 2.1.16 + resolution: "@radix-ui/react-dropdown-menu@npm:2.1.16" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-context": 1.1.2 "@radix-ui/react-id": 1.1.1 - "@radix-ui/react-menu": 2.1.15 + "@radix-ui/react-menu": 2.1.16 "@radix-ui/react-primitive": 2.1.3 "@radix-ui/react-use-controllable-state": 1.2.2 peerDependencies: @@ -2883,20 +2946,20 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: d95104c27eb3ddd0c03cd0736cd056f0cd1171ef49c4a9b331f2c3b4e67272bf0cf2ef2a03a5966a1ac79524a004cf27919c47b42788db63a42bb7585e0b306c + checksum: 8178faa47e4ec58870db4f5c7fc158edf060bf00e9c9ed75e8028fdbc62dd9624b63ed5c461175be8e964d136f382b658881df68bdaf328da5c2ca56f8048f88 languageName: node linkType: hard -"@radix-ui/react-focus-guards@npm:1.1.2": - version: 1.1.2 - resolution: "@radix-ui/react-focus-guards@npm:1.1.2" +"@radix-ui/react-focus-guards@npm:1.1.3": + version: 1.1.3 + resolution: "@radix-ui/react-focus-guards@npm:1.1.3" peerDependencies: "@types/react": "*" react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: "@types/react": optional: true - checksum: 618658e2b98575198b94ccfdd27f41beb37f83721c9a04617e848afbc47461124ae008d703d713b9644771d96d4852e49de322cf4be3b5f10a4f94d200db5248 + checksum: b57878f6cf0ebc3e8d7c5c6bbaad44598daac19c921551ca541c104201048a9a902f3d69196e7a09995fd46e998c309aab64dc30fa184b3609d67d187a6a9c24 languageName: node linkType: hard @@ -2936,24 +2999,24 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-menu@npm:2.1.15": - version: 2.1.15 - resolution: "@radix-ui/react-menu@npm:2.1.15" +"@radix-ui/react-menu@npm:2.1.16": + version: 2.1.16 + resolution: "@radix-ui/react-menu@npm:2.1.16" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-collection": 1.1.7 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-context": 1.1.2 "@radix-ui/react-direction": 1.1.1 - "@radix-ui/react-dismissable-layer": 1.1.10 - "@radix-ui/react-focus-guards": 1.1.2 + "@radix-ui/react-dismissable-layer": 1.1.11 + "@radix-ui/react-focus-guards": 1.1.3 "@radix-ui/react-focus-scope": 1.1.7 "@radix-ui/react-id": 1.1.1 - "@radix-ui/react-popper": 1.2.7 + "@radix-ui/react-popper": 1.2.8 "@radix-ui/react-portal": 1.1.9 - "@radix-ui/react-presence": 1.1.4 + "@radix-ui/react-presence": 1.1.5 "@radix-ui/react-primitive": 2.1.3 - "@radix-ui/react-roving-focus": 1.1.10 + "@radix-ui/react-roving-focus": 1.1.11 "@radix-ui/react-slot": 1.2.3 "@radix-ui/react-use-callback-ref": 1.1.1 aria-hidden: ^1.2.4 @@ -2968,24 +3031,24 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 2e454089f8384bc4448645f4228656cd9b34301c783ede567b3902b4cb7f65e6516c2248785e24e6398430bbbfe88b8fb1c36224d70dfc30a961d5738a33355a + checksum: 622f3abf8bb3c324ceb824988d7d384865191d5b09f2ddbc2a879b95d48d3e25ed9e22c4059203f4d29eaefe7d67a36e4b3cd2ce6b51596351cfd575d45d1fec languageName: node linkType: hard "@radix-ui/react-popover@npm:^1.1.14": - version: 1.1.14 - resolution: "@radix-ui/react-popover@npm:1.1.14" + version: 1.1.15 + resolution: "@radix-ui/react-popover@npm:1.1.15" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-context": 1.1.2 - "@radix-ui/react-dismissable-layer": 1.1.10 - "@radix-ui/react-focus-guards": 1.1.2 + "@radix-ui/react-dismissable-layer": 1.1.11 + "@radix-ui/react-focus-guards": 1.1.3 "@radix-ui/react-focus-scope": 1.1.7 "@radix-ui/react-id": 1.1.1 - "@radix-ui/react-popper": 1.2.7 + "@radix-ui/react-popper": 1.2.8 "@radix-ui/react-portal": 1.1.9 - "@radix-ui/react-presence": 1.1.4 + "@radix-ui/react-presence": 1.1.5 "@radix-ui/react-primitive": 2.1.3 "@radix-ui/react-slot": 1.2.3 "@radix-ui/react-use-controllable-state": 1.2.2 @@ -3001,13 +3064,13 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 50f146117ebf675944181ef2df4fbc2d7ca017c71a2ab78eaa67159eb8a0101c682fa02bafa2b132ea7744592b7f103d02935ace2c1f430ab9040a0ece9246c8 + checksum: 8a9ff4c6d8755cb770bbcfa2e60c4364364ccbf57888d72ebb77d8eb73a859023d7950c125de23d29d8506b4944b2af8b8c0f59f9880768eea6b2543e66e3d36 languageName: node linkType: hard -"@radix-ui/react-popper@npm:1.2.7": - version: 1.2.7 - resolution: "@radix-ui/react-popper@npm:1.2.7" +"@radix-ui/react-popper@npm:1.2.8": + version: 1.2.8 + resolution: "@radix-ui/react-popper@npm:1.2.8" dependencies: "@floating-ui/react-dom": ^2.0.0 "@radix-ui/react-arrow": 1.1.7 @@ -3029,7 +3092,7 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 1d672b8b635846501212eb0cd15273c8acdd31e76e78d2b9ba29ce29730d5a2d3a61a8ed49bb689c94f67f45d1dffe0d49449e0810f08c4e112d8aef8430e76d + checksum: 51370bc4868542ab8b807da0b43158d699715c13f5e31a5236861a172b75eb68ab9556945bbddbc0cb408bcc8da4f4569f42d657b19925e89501797e4eb3738b languageName: node linkType: hard @@ -3053,9 +3116,9 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-presence@npm:1.1.4": - version: 1.1.4 - resolution: "@radix-ui/react-presence@npm:1.1.4" +"@radix-ui/react-presence@npm:1.1.5": + version: 1.1.5 + resolution: "@radix-ui/react-presence@npm:1.1.5" dependencies: "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-use-layout-effect": 1.1.1 @@ -3069,7 +3132,7 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: d3b0976368fccdfa07100c1f07ca434d0092d4132d1ed4a5c213802f7318d77fc1fd61d1b7038b87e82912688fafa97d8af000a6cca4027b09d92c5477f79dd0 + checksum: 05f1b8e80d3d878efab44304ce55d0b9e6c7050e8345f9da95d0597a716121fb2467c3247c847c51a6cb27edd00e86ac36b2635e4c00ea79d91cfc26c930da81 languageName: node linkType: hard @@ -3092,11 +3155,11 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-roving-focus@npm:1.1.10": - version: 1.1.10 - resolution: "@radix-ui/react-roving-focus@npm:1.1.10" +"@radix-ui/react-roving-focus@npm:1.1.11": + version: 1.1.11 + resolution: "@radix-ui/react-roving-focus@npm:1.1.11" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-collection": 1.1.7 "@radix-ui/react-compose-refs": 1.1.2 "@radix-ui/react-context": 1.1.2 @@ -3115,7 +3178,7 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 9f6afabc82e3a018cbb48f4fc94ce046f776f894df2d66c96f6b78bf864d59d71f749406e30c4600f6415a6f703c66fdbb87b2841cfa919f10d1f6602df2a5b6 + checksum: 62af05c244803359c36beea278dac89caee37d20c31b84bcba3a20c462df33b7395c2e1b08b3a8ebb471c29cec4b3fb4f97488b6a167b1b275cedf994cf436e6 languageName: node linkType: hard @@ -3135,16 +3198,16 @@ __metadata: linkType: hard "@radix-ui/react-tabs@npm:^1.1.12": - version: 1.1.12 - resolution: "@radix-ui/react-tabs@npm:1.1.12" + version: 1.1.13 + resolution: "@radix-ui/react-tabs@npm:1.1.13" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-context": 1.1.2 "@radix-ui/react-direction": 1.1.1 "@radix-ui/react-id": 1.1.1 - "@radix-ui/react-presence": 1.1.4 + "@radix-ui/react-presence": 1.1.5 "@radix-ui/react-primitive": 2.1.3 - "@radix-ui/react-roving-focus": 1.1.10 + "@radix-ui/react-roving-focus": 1.1.11 "@radix-ui/react-use-controllable-state": 1.2.2 peerDependencies: "@types/react": "*" @@ -3156,20 +3219,20 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: eb5eecb4813b784c6f324a947b1f391b1b890bc3f5bd0eb2d08e73f84a10b25bbf482a8dd9785de8a6fe49ff99860c07cf0a6953c9f9631202e5d9c8ebc06758 + checksum: 6bb8fa404d65ddb1be12cb03912abff8d924fb9b3435da71b39836585df6b55bd25341bd989324c330724af942c0f0cdf4c51503057b0532359da40c64b08081 languageName: node linkType: hard "@radix-ui/react-toggle-group@npm:^1.1.10": - version: 1.1.10 - resolution: "@radix-ui/react-toggle-group@npm:1.1.10" + version: 1.1.11 + resolution: "@radix-ui/react-toggle-group@npm:1.1.11" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-context": 1.1.2 "@radix-ui/react-direction": 1.1.1 "@radix-ui/react-primitive": 2.1.3 - "@radix-ui/react-roving-focus": 1.1.10 - "@radix-ui/react-toggle": 1.1.9 + "@radix-ui/react-roving-focus": 1.1.11 + "@radix-ui/react-toggle": 1.1.10 "@radix-ui/react-use-controllable-state": 1.2.2 peerDependencies: "@types/react": "*" @@ -3181,15 +3244,15 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 4be91c95e6c91b9e5d1d92c9fa1c04f50277823c0230880d221446d5e2ce0c84f22e2c0c80c9df3d8b73abfb71e77366e40b89a47792016482253a2df524c63b + checksum: 5824dd7b2373fba106029bf9d1bfe23deb0f5cfa78308fd9037c2bac79b8c19ea1d74aa855059479aabf3f4b76be09a369c97f71f9beb7b270357176cbc7bf1e languageName: node linkType: hard -"@radix-ui/react-toggle@npm:1.1.9": - version: 1.1.9 - resolution: "@radix-ui/react-toggle@npm:1.1.9" +"@radix-ui/react-toggle@npm:1.1.10": + version: 1.1.10 + resolution: "@radix-ui/react-toggle@npm:1.1.10" dependencies: - "@radix-ui/primitive": 1.1.2 + "@radix-ui/primitive": 1.1.3 "@radix-ui/react-primitive": 2.1.3 "@radix-ui/react-use-controllable-state": 1.2.2 peerDependencies: @@ -3202,7 +3265,7 @@ __metadata: optional: true "@types/react-dom": optional: true - checksum: 844e44da16dea79c005629f96eba40423d6b76c23f4ccfc1a45ccb1afdf681d7434c103d217c0b80e00b809bbbc7b457cdcc1255c3424db3f3d818992995f17f + checksum: ece154bd7a0ca765040fafbe4131f753457a3d37f73dec3ae94f08f17f3889272d06f33f305ad34c986925ce8a40532ee43f6bdb7e8b99fd8bac299b01d69204 languageName: node linkType: hard @@ -3483,6 +3546,13 @@ __metadata: languageName: node linkType: hard +"@tokenizer/token@npm:^0.3.0": + version: 0.3.0 + resolution: "@tokenizer/token@npm:0.3.0" + checksum: 1d575d02d2a9f0c5a4ca5180635ebd2ad59e0f18b42a65f3d04844148b49b3db35cf00b6012a1af2d59c2ab3caca59451c5689f747ba8667ee586ad717ee58e1 + languageName: node + linkType: hard + "@tootallnate/once@npm:2": version: 2.0.0 resolution: "@tootallnate/once@npm:2.0.0" @@ -3507,6 +3577,247 @@ __metadata: languageName: node linkType: hard +"@turf/bbox@npm:*": + version: 7.2.0 + resolution: "@turf/bbox@npm:7.2.0" + dependencies: + "@turf/helpers": ^7.2.0 + "@turf/meta": ^7.2.0 + "@types/geojson": ^7946.0.10 + tslib: ^2.8.1 + checksum: 34dfb634d04bc20be292a211e0fdef610556bead4bb5a38174fe040c59f041b4a0e2f586148c2c8b88677b1c5af08a07de5745235233dbaa0197fd67bf21e0da + languageName: node + linkType: hard + +"@turf/bbox@npm:6.3.0": + version: 6.3.0 + resolution: "@turf/bbox@npm:6.3.0" + dependencies: + "@turf/helpers": ^6.3.0 + "@turf/meta": ^6.3.0 + checksum: d229c70b66d49128dd611b888f4b701b3a9d374d2925a699df116c296cddb778879702626c7855d73ced8155b3f5b3954e7535b55f793f5919639877ed4a1003 + languageName: node + linkType: hard + +"@turf/bbox@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/bbox@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/meta": ^6.5.0 + checksum: 537be56ae0c5ad44e71a691717b35745e947e19a6bd9f20fdac2ab4318caf98cd88472d7dbf576e8b32ead5da034d273ffb3f4559d6d386820ddcb88a1f7fedd + languageName: node + linkType: hard + +"@turf/bearing@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/bearing@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: f2883fb56d3017f9d0190937a92a2dae174e48f5165ea5540a5032caa03dd7980e5a95d298fd25e6bcc74cdf812d411af0e0c146112518ed3cd0d19795a1b645 + languageName: node + linkType: hard + +"@turf/boolean-clockwise@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/boolean-clockwise@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: a359550683425a21256a833a95363861c44e8f2884dd09d79e2847b2bc5b1e83a150730b6de3d31763dd845fd577b156a75071dbaf8574b712f933aa2af7eb80 + languageName: node + linkType: hard + +"@turf/boolean-point-in-polygon@npm:6.5.0, @turf/boolean-point-in-polygon@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/boolean-point-in-polygon@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: 624e54d9956b8f9d955285065f44c80ae66cd4a87e5d893f85871009b62ad9721cca520245a56f8c4401467767c153dda58f67fec0968e3971c7bb3a39617105 + languageName: node + linkType: hard + +"@turf/boolean-point-on-line@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/boolean-point-on-line@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: 469bc39dfe8cdd50be654d3dc1ed94c130e27d5724461333edc6d32352d31c955a1e4f2785994f0a255162fd6075657e49c90b9c805a644e88e05e2a51ead6bc + languageName: node + linkType: hard + +"@turf/boolean-within@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/boolean-within@npm:6.5.0" + dependencies: + "@turf/bbox": ^6.5.0 + "@turf/boolean-point-in-polygon": ^6.5.0 + "@turf/boolean-point-on-line": ^6.5.0 + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: 6cc36191e087106119e4c8beed03c0be108b2ddb79de3f357dd2c69c10ebc8b17125c6a2ace8a27eb5c120efa4025fc83a2c97fe45dd4f5b2bbc86966edeaf94 + languageName: node + linkType: hard + +"@turf/clone@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/clone@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + checksum: 8ef6f6ba8876bb32b35691b62554a74b1e8e2b9d04a1c4f7bcba9348163b4ae4cde774b9e8e9f63211e5eb816517d94b94c3d54e5f855691a84cd3556d3157e4 + languageName: node + linkType: hard + +"@turf/distance@npm:6.5.0, @turf/distance@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/distance@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: f311e19a5d489a11e2033f218723f6c2fae207cb03fbdd5dc64a44724d36851f5bb44d07ae31d479532db5f1df019845e19e2117c1948d9e832a6769f6bf0448 + languageName: node + linkType: hard + +"@turf/helpers@npm:6.5.0, @turf/helpers@npm:6.x, @turf/helpers@npm:^6.3.0, @turf/helpers@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/helpers@npm:6.5.0" + checksum: d57f746351357838c654e0a9b98be3285a14b447504fd6d59753d90c6d437410bb24805d61c65b612827f07f6c2ade823bb7e56e41a1a946217abccfbd64c117 + languageName: node + linkType: hard + +"@turf/helpers@npm:^7.2.0": + version: 7.2.0 + resolution: "@turf/helpers@npm:7.2.0" + dependencies: + "@types/geojson": ^7946.0.10 + tslib: ^2.8.1 + checksum: 44697cf00db81ef8c4a43d13c7fc59ad06a50a5fae78f8d5e735fcdf89822107611585dcec0e973ae56248327a0f8f835dfbee952ec08bb6b7154592ce14aa5e + languageName: node + linkType: hard + +"@turf/intersect@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/intersect@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + polygon-clipping: ^0.15.3 + checksum: 014e071cb3a2073bb4a1c82d9106a3e65b3761dc7c2b7226c88e6dbff9038556e821948b9d03202c1aabe7b6269fa90f47551393056f5e9e2b34131aa61c2f08 + languageName: node + linkType: hard + +"@turf/invariant@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/invariant@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + checksum: f45109ee41429d4aab49db9cfcc68f832cadf18b16c1b2c7031f0a6e52545bc4d64d0efd0a980f4d05f22532ed89d6e915aeaab9db44865898d4d030221d968e + languageName: node + linkType: hard + +"@turf/line-intersect@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/line-intersect@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + "@turf/line-segment": ^6.5.0 + "@turf/meta": ^6.5.0 + geojson-rbush: 3.x + checksum: ae5eb762d879b18dfde0b7340fb34fe0158d83c9dee26d1d20bb9ef0111e3d042d1d2215ed6a8c04da1210011c85e45a513a64c3c2e6f641b17c58d43a017931 + languageName: node + linkType: hard + +"@turf/line-segment@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/line-segment@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + "@turf/meta": ^6.5.0 + checksum: c58c91066fcc6632a2b97535bd5a3cc5c7d41f11bfd3cbfc3d3dae13b39c5fe1ccf14ecda6f8b9ff046d7a35ee4205b73ad30fea95fc03373f0831bb515e2ac1 + languageName: node + linkType: hard + +"@turf/meta@npm:6.x, @turf/meta@npm:^6.3.0, @turf/meta@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/meta@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + checksum: c6bb936aa92bf3365e87a50dc65f248e070c5767a36fac390754c00c89bf2d1583418686ab19a10332bfa9340b8cac6aaf2c55dad7f5fcf77f1a2dda75ccf363 + languageName: node + linkType: hard + +"@turf/meta@npm:^7.2.0": + version: 7.2.0 + resolution: "@turf/meta@npm:7.2.0" + dependencies: + "@turf/helpers": ^7.2.0 + "@types/geojson": ^7946.0.10 + checksum: 77de8b1e345511e62ea421581dcdaf0d46b20d2440137f116341ed2213ba519da39aba6fd041098eb63a65d52cefb179206cc663ab4d289f220cf00f49f95bb0 + languageName: node + linkType: hard + +"@turf/point-to-line-distance@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/point-to-line-distance@npm:6.5.0" + dependencies: + "@turf/bearing": ^6.5.0 + "@turf/distance": ^6.5.0 + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + "@turf/meta": ^6.5.0 + "@turf/projection": ^6.5.0 + "@turf/rhumb-bearing": ^6.5.0 + "@turf/rhumb-distance": ^6.5.0 + checksum: addea96dbd3458d2dc3fa8ede3061f0a9d560e9ef1dba4f6d1ec84f9203fc930ff3f668573e9679edc555c9185e63c96447f1825ff7f907caf499e2bf5ab0458 + languageName: node + linkType: hard + +"@turf/polygon-to-line@npm:6.5.0": + version: 6.5.0 + resolution: "@turf/polygon-to-line@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: ba189ff22a9a7a281da1dfb707909ce114339b14f8f61fd237f72a9ff056fcf5eeb7019fd2d2a8b3bfc953169eb2caa818ecc9d8801cdb5615c3d274af2465d5 + languageName: node + linkType: hard + +"@turf/projection@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/projection@npm:6.5.0" + dependencies: + "@turf/clone": ^6.5.0 + "@turf/helpers": ^6.5.0 + "@turf/meta": ^6.5.0 + checksum: 31baafb27e3c2a7b639a08156b38c771d312236a9ab218133f7136b4f5ac94cec2465ad62b7da8a0b7f26d5afb09b79d122e56022c27fd17fc9994213fe61833 + languageName: node + linkType: hard + +"@turf/rhumb-bearing@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/rhumb-bearing@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: 150b7e1a8e68b9411194b4eb2abff48a65a77b78dde19c1d1a5b5f148aa09c4cded19a531b4d625e4953c510e556238e623e5465f65c5c7435a60c978e843f7f + languageName: node + linkType: hard + +"@turf/rhumb-distance@npm:^6.5.0": + version: 6.5.0 + resolution: "@turf/rhumb-distance@npm:6.5.0" + dependencies: + "@turf/helpers": ^6.5.0 + "@turf/invariant": ^6.5.0 + checksum: b9b78ee6f05cbfcf2bb3582746523a2cc4d70b004771c433004e650e4c5ccd74d7e35f80099ed59503b7cc731ce5277edfbb3e9b9ad82253267cba8bbf977d86 + languageName: node + linkType: hard + "@tybys/wasm-util@npm:^0.9.0": version: 0.9.0 resolution: "@tybys/wasm-util@npm:0.9.0" @@ -3566,19 +3877,27 @@ __metadata: languageName: node linkType: hard -"@types/geojson@npm:*, @types/geojson@npm:^7946.0.16": +"@types/geojson@npm:*, @types/geojson@npm:^7946.0.10, @types/geojson@npm:^7946.0.16": version: 7946.0.16 resolution: "@types/geojson@npm:7946.0.16" checksum: d66e5e023f43b3e7121448117af1930af7d06410a32a585a8bc9c6bb5d97e0d656cd93d99e31fa432976c32e98d4b780f82bf1fd1acd20ccf952eb6b8e39edf2 languageName: node linkType: hard +"@types/geojson@npm:7946.0.8": + version: 7946.0.8 + resolution: "@types/geojson@npm:7946.0.8" + checksum: 6049a39b025cfe323d5cf87333d87c133ec963cdbd349c49295bee779827ee4b46a3041fd8bd2e7a4b02d6d1e26f3002968875928941bbed08477bfd5f6f9284 + languageName: node + linkType: hard + "@types/glob@npm:*": - version: 9.0.0 - resolution: "@types/glob@npm:9.0.0" + version: 8.1.0 + resolution: "@types/glob@npm:8.1.0" dependencies: - glob: "*" - checksum: a9ea3afe1eafbc8fb303d2d39cd786084aece75fd8eeae1bad8febbf6e0323b429145f31e779a3d68fa693b2a53648ec2c639ee4858fb29132f801c74678051c + "@types/minimatch": ^5.1.2 + "@types/node": "*" + checksum: 9101f3a9061e40137190f70626aa0e202369b5ec4012c3fabe6f5d229cce04772db9a94fa5a0eb39655e2e4ad105c38afbb4af56a56c0996a8c7d4fc72350e3d languageName: node linkType: hard @@ -3655,6 +3974,13 @@ __metadata: languageName: node linkType: hard +"@types/minimatch@npm:^5.1.2": + version: 5.1.2 + resolution: "@types/minimatch@npm:5.1.2" + checksum: 0391a282860c7cb6fe262c12b99564732401bdaa5e395bee9ca323c312c1a0f45efbf34dce974682036e857db59a5c9b1da522f3d6055aeead7097264c8705a8 + languageName: node + linkType: hard + "@types/minimist@npm:^1.2.0": version: 1.2.5 resolution: "@types/minimist@npm:1.2.5" @@ -3663,20 +3989,20 @@ __metadata: linkType: hard "@types/node@npm:*": - version: 24.2.1 - resolution: "@types/node@npm:24.2.1" + version: 24.3.0 + resolution: "@types/node@npm:24.3.0" dependencies: undici-types: ~7.10.0 - checksum: d7a12a35bcb6ade13787bd9b40d8f59b96170f228dfbd19326170b4df2a66ae86cf21eec6867e92f979405235431e580a9668b167aa3ce8e89531c00792551d3 + checksum: 0f98e492032007d7be811b5598d24b6260f6ef3d21b6fe3b9ca61a1c88f70d5d94c33f361b0f2bd9a1f5963426584c7c2514e29ca69b0649f6b075e7abd551cb languageName: node linkType: hard "@types/node@npm:^18.15.11": - version: 18.19.122 - resolution: "@types/node@npm:18.19.122" + version: 18.19.123 + resolution: "@types/node@npm:18.19.123" dependencies: undici-types: ~5.26.4 - checksum: 08f30c349d9719c6953789641da385e01af776107da4dd07820a5036c4ecbc24fd04036e7cc7d7036f275d6ae27bd0949c3423f7e1c0b8e512b728efa70951ea + checksum: a450556143df831703fc20a96a1eff485fa425e5a6e887331991d3e00ab2d33981d36e94d4320f4961e96d22c488ced740913fed6de161daea5caf39722c5f49 languageName: node linkType: hard @@ -3703,6 +4029,13 @@ __metadata: languageName: node linkType: hard +"@types/proj4@npm:2.5.2": + version: 2.5.2 + resolution: "@types/proj4@npm:2.5.2" + checksum: f70fb89fe1e234faa164b57095624e054ead1b14653b1eb04e1aa50489ae9a6a30c90518efe571d53f5fcc12a25bee61e8cf8d9cc79b5a01586d051bdad4a992 + languageName: node + linkType: hard + "@types/prop-types@npm:*": version: 15.7.15 resolution: "@types/prop-types@npm:15.7.15" @@ -4186,7 +4519,7 @@ __metadata: languageName: node linkType: hard -"JSONStream@npm:^1.3.5": +"JSONStream@npm:^1.0.0, JSONStream@npm:^1.3.5": version: 1.3.5 resolution: "JSONStream@npm:1.3.5" dependencies: @@ -4212,6 +4545,22 @@ __metadata: languageName: node linkType: hard +"abbrev@npm:^3.0.0": + version: 3.0.1 + resolution: "abbrev@npm:3.0.1" + checksum: e70b209f5f408dd3a3bbd0eec4b10a2ffd64704a4a3821d0969d84928cc490a8eb60f85b78a95622c1841113edac10161c62e52f5e7d0027aa26786a8136e02e + languageName: node + linkType: hard + +"abort-controller@npm:^3.0.0": + version: 3.0.0 + resolution: "abort-controller@npm:3.0.0" + dependencies: + event-target-shim: ^5.0.0 + checksum: 170bdba9b47b7e65906a28c8ce4f38a7a369d78e2271706f020849c1bfe0ee2067d4261df8bbb66eb84f79208fd5b710df759d64191db58cfba7ce8ef9c54b75 + languageName: node + linkType: hard + "acorn-globals@npm:^7.0.0": version: 7.0.1 resolution: "acorn-globals@npm:7.0.1" @@ -4661,6 +5010,17 @@ __metadata: languageName: node linkType: hard +"better-sqlite3@npm:^9.1.1": + version: 9.6.0 + resolution: "better-sqlite3@npm:9.6.0" + dependencies: + bindings: ^1.5.0 + node-gyp: latest + prebuild-install: ^7.1.1 + checksum: be3a1d2a3f6f9b5141be6607a38c0a51fa5849495b071955e507bc0c2a2fb08430852c1bf03796eec1a53344b25645807db48dcb51c71b0662b74c5a70420bb0 + languageName: node + linkType: hard + "big.js@npm:^5.2.2": version: 5.2.2 resolution: "big.js@npm:5.2.2" @@ -4680,6 +5040,15 @@ __metadata: languageName: node linkType: hard +"bindings@npm:^1.5.0": + version: 1.5.0 + resolution: "bindings@npm:1.5.0" + dependencies: + file-uri-to-path: 1.0.0 + checksum: 65b6b48095717c2e6105a021a7da4ea435aa8d3d3cd085cb9e85bcb6e5773cf318c4745c3f7c504412855940b585bdf9b918236612a1c7a7942491de176f1ae7 + languageName: node + linkType: hard + "bl@npm:^4.0.3, bl@npm:^4.1.0": version: 4.1.0 resolution: "bl@npm:4.1.0" @@ -4750,6 +5119,16 @@ __metadata: languageName: node linkType: hard +"buffer@npm:^6.0.3": + version: 6.0.3 + resolution: "buffer@npm:6.0.3" + dependencies: + base64-js: ^1.3.1 + ieee754: ^1.2.1 + checksum: 5ad23293d9a731e4318e420025800b42bf0d264004c0286c8cc010af7a270c7a0f6522e84f54b9ad65cbd6db20b8badbfd8d2ebf4f80fa03dab093b89e68c3f9 + languageName: node + linkType: hard + "but-unzip@npm:^0.1.4": version: 0.1.7 resolution: "but-unzip@npm:0.1.7" @@ -4784,6 +5163,26 @@ __metadata: languageName: node linkType: hard +"cacache@npm:^19.0.1": + version: 19.0.1 + resolution: "cacache@npm:19.0.1" + dependencies: + "@npmcli/fs": ^4.0.0 + fs-minipass: ^3.0.0 + glob: ^10.2.2 + lru-cache: ^10.0.1 + minipass: ^7.0.3 + minipass-collect: ^2.0.1 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + p-map: ^7.0.2 + ssri: ^12.0.0 + tar: ^7.4.3 + unique-filename: ^4.0.0 + checksum: e95684717de6881b4cdaa949fa7574e3171946421cd8291769dd3d2417dbf7abf4aa557d1f968cca83dcbc95bed2a281072b09abfc977c942413146ef7ed4525 + languageName: node + linkType: hard + "call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": version: 1.0.2 resolution: "call-bind-apply-helpers@npm:1.0.2" @@ -4856,9 +5255,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.30001733": - version: 1.0.30001734 - resolution: "caniuse-lite@npm:1.0.30001734" - checksum: 2ebb37ff671e005fd945a963ccc496cc5cafeb39c02d883903909b43f8849e544f4b1cb80cc76cb31171b23d50716634b7d08b3d5bfe6c14e66c43b82572bd9a + version: 1.0.30001735 + resolution: "caniuse-lite@npm:1.0.30001735" + checksum: 41ee174f41b876a76d9f9a164d84a43a2d7d4cfba9076b459f165370fd5e0778327262ec3cd676c05f8e8cdeb4f6362d31714fecdcdc584034ae91e987b5bf84 languageName: node linkType: hard @@ -4872,6 +5271,16 @@ __metadata: languageName: node linkType: hard +"chalk@npm:4.1.1": + version: 4.1.1 + resolution: "chalk@npm:4.1.1" + dependencies: + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: 036e973e665ba1a32c975e291d5f3d549bceeb7b1b983320d4598fb75d70fe20c5db5d62971ec0fe76cdbce83985a00ee42372416abfc3a5584465005a7855ed + languageName: node + linkType: hard + "chalk@npm:^2.3.0, chalk@npm:^2.4.1": version: 2.4.2 resolution: "chalk@npm:2.4.2" @@ -4893,6 +5302,13 @@ __metadata: languageName: node linkType: hard +"chardet@npm:^0.7.0": + version: 0.7.0 + resolution: "chardet@npm:0.7.0" + checksum: 6fd5da1f5d18ff5712c1e0aed41da200d7c51c28f11b36ee3c7b483f3696dabc08927fc6b227735eb8f0e1215c9a8abd8154637f3eff8cada5959df7f58b024d + languageName: node + linkType: hard + "chardet@npm:^2.1.0": version: 2.1.0 resolution: "chardet@npm:2.1.0" @@ -4900,6 +5316,13 @@ __metadata: languageName: node linkType: hard +"chownr@npm:^1.1.1": + version: 1.1.4 + resolution: "chownr@npm:1.1.4" + checksum: 115648f8eb38bac5e41c3857f3e663f9c39ed6480d1349977c4d96c95a47266fcacc5a5aabf3cb6c481e22d72f41992827db47301851766c4fd77ac21a4f081d + languageName: node + linkType: hard + "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -4907,6 +5330,13 @@ __metadata: languageName: node linkType: hard +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: fd73a4bab48b79e66903fe1cafbdc208956f41ea4f856df883d0c7277b7ab29fd33ee65f93b2ec9192fc0169238f2f8307b7735d27c155821d886b84aa97aa8d + languageName: node + linkType: hard + "chrome-trace-event@npm:^1.0.2": version: 1.0.4 resolution: "chrome-trace-event@npm:1.0.4" @@ -5615,6 +6045,15 @@ __metadata: languageName: node linkType: hard +"decompress-response@npm:^6.0.0": + version: 6.0.0 + resolution: "decompress-response@npm:6.0.0" + dependencies: + mimic-response: ^3.1.0 + checksum: d377cf47e02d805e283866c3f50d3d21578b779731e8c5072d6ce8c13cc31493db1c2f6784da9d1d5250822120cefa44f1deab112d5981015f2e17444b763812 + languageName: node + linkType: hard + "dedent@npm:1.5.3": version: 1.5.3 resolution: "dedent@npm:1.5.3" @@ -5627,6 +6066,13 @@ __metadata: languageName: node linkType: hard +"deep-extend@npm:^0.6.0": + version: 0.6.0 + resolution: "deep-extend@npm:0.6.0" + checksum: 7be7e5a8d468d6b10e6a67c3de828f55001b6eb515d014f7aeb9066ce36bd5717161eb47d6a0f7bed8a9083935b465bc163ee2581c8b128d29bf61092fdf57a7 + languageName: node + linkType: hard + "deep-is@npm:^0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" @@ -5700,6 +6146,13 @@ __metadata: languageName: node linkType: hard +"detect-libc@npm:^2.0.0": + version: 2.0.4 + resolution: "detect-libc@npm:2.0.4" + checksum: 3d186b7d4e16965e10e21db596c78a4e131f9eee69c0081d13b85e6a61d7448d3ba23fe7997648022bdfa3b0eb4cc3c289a44c8188df949445a20852689abef6 + languageName: node + linkType: hard + "detect-node-es@npm:^1.1.0": version: 1.1.0 resolution: "detect-node-es@npm:1.1.0" @@ -5838,6 +6291,13 @@ __metadata: languageName: node linkType: hard +"duplexer@npm:^0.1.1, duplexer@npm:~0.1.1": + version: 0.1.2 + resolution: "duplexer@npm:0.1.2" + checksum: 62ba61a830c56801db28ff6305c7d289b6dc9f859054e8c982abd8ee0b0a14d2e9a8e7d086ffee12e868d43e2bbe8a964be55ddbd8c8957714c87373c7a4f9b0 + languageName: node + linkType: hard + "duplicate-package-checker-webpack-plugin@npm:^3.0.0": version: 3.0.0 resolution: "duplicate-package-checker-webpack-plugin@npm:3.0.0" @@ -5876,9 +6336,9 @@ __metadata: linkType: hard "electron-to-chromium@npm:^1.5.199": - version: 1.5.200 - resolution: "electron-to-chromium@npm:1.5.200" - checksum: 2784fb7d40ab80d3dee900a8c9f4307d5d2fe16dcace62ba16b0e64ee72fe3c664c080241fa1142e295c496bdd9eeb82affccfd085c64ad93c3037d3c785d748 + version: 1.5.202 + resolution: "electron-to-chromium@npm:1.5.202" + checksum: ce5bcd3ac8e567712d3febd5fc9edcefcce9af547cf0d4eedba1b2b6ef5fe640087945f72833b257e3db2965803b5295be54c5f093b4060d98a5c07c17dbfce7 languageName: node linkType: hard @@ -5912,7 +6372,7 @@ __metadata: languageName: node linkType: hard -"end-of-stream@npm:^1.4.1": +"end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1": version: 1.4.5 resolution: "end-of-stream@npm:1.4.5" dependencies: @@ -6450,15 +6910,37 @@ __metadata: languageName: node linkType: hard -"eventemitter3@npm:^4.0.4": - version: 4.0.7 - resolution: "eventemitter3@npm:4.0.7" - checksum: 1875311c42fcfe9c707b2712c32664a245629b42bb0a5a84439762dd0fd637fc54d078155ea83c2af9e0323c9ac13687e03cfba79b03af9f40c89b4960099374 +"event-stream@npm:^4.0.0": + version: 4.0.1 + resolution: "event-stream@npm:4.0.1" + dependencies: + duplexer: ^0.1.1 + from: ^0.1.7 + map-stream: 0.0.7 + pause-stream: ^0.0.11 + split: ^1.0.1 + stream-combiner: ^0.2.2 + through: ^2.3.8 + checksum: 515cdff30c8dd74d5869cf53133b8851deba012605d2a15a1bc77b777b9d237ebf06d99ec62be2c6fc8adb2c89bf392771e2809239b278e5e70ba2f88cd1955c languageName: node linkType: hard -"events@npm:^3.2.0": - version: 3.3.0 +"event-target-shim@npm:^5.0.0": + version: 5.0.1 + resolution: "event-target-shim@npm:5.0.1" + checksum: 1ffe3bb22a6d51bdeb6bf6f7cf97d2ff4a74b017ad12284cc9e6a279e727dc30a5de6bb613e5596ff4dc3e517841339ad09a7eec44266eccb1aa201a30448166 + languageName: node + linkType: hard + +"eventemitter3@npm:^4.0.4": + version: 4.0.7 + resolution: "eventemitter3@npm:4.0.7" + checksum: 1875311c42fcfe9c707b2712c32664a245629b42bb0a5a84439762dd0fd637fc54d078155ea83c2af9e0323c9ac13687e03cfba79b03af9f40c89b4960099374 + languageName: node + linkType: hard + +"events@npm:^3.2.0, events@npm:^3.3.0": + version: 3.3.0 resolution: "events@npm:3.3.0" checksum: f6f487ad2198aa41d878fa31452f1a3c00958f46e9019286ff4787c84aac329332ab45c9cdc8c445928fc6d7ded294b9e005a7fce9426488518017831b272780 languageName: node @@ -6488,6 +6970,13 @@ __metadata: languageName: node linkType: hard +"expand-template@npm:^2.0.3": + version: 2.0.3 + resolution: "expand-template@npm:2.0.3" + checksum: 588c19847216421ed92befb521767b7018dc88f88b0576df98cb242f20961425e96a92cbece525ef28cc5becceae5d544ae0f5b9b5e2aa05acb13716ca5b3099 + languageName: node + linkType: hard + "exponential-backoff@npm:^3.1.1": version: 3.1.2 resolution: "exponential-backoff@npm:3.1.2" @@ -6504,6 +6993,17 @@ __metadata: languageName: node linkType: hard +"external-editor@npm:^3.0.3": + version: 3.1.0 + resolution: "external-editor@npm:3.1.0" + dependencies: + chardet: ^0.7.0 + iconv-lite: ^0.4.24 + tmp: ^0.0.33 + checksum: 1c2a616a73f1b3435ce04030261bed0e22d4737e14b090bb48e58865da92529c9f2b05b893de650738d55e692d071819b45e1669259b2b354bc3154d27a698c7 + languageName: node + linkType: hard + "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -6568,15 +7068,15 @@ __metadata: languageName: node linkType: hard -"fdir@npm:^6.4.3": - version: 6.4.6 - resolution: "fdir@npm:6.4.6" +"fdir@npm:^6.4.3, fdir@npm:^6.4.4": + version: 6.5.0 + resolution: "fdir@npm:6.5.0" peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: picomatch: optional: true - checksum: fe9f3014901d023cf631831dcb9eae5447f4d7f69218001dd01ecf007eccc40f6c129a04411b5cc273a5f93c14e02e971e17270afc9022041c80be924091eb6f + checksum: bd537daa9d3cd53887eed35efa0eab2dbb1ca408790e10e024120e7a36c6e9ae2b33710cb8381e35def01bc9c1d7eaba746f886338413e68ff6ebaee07b9a6e8 languageName: node linkType: hard @@ -6605,6 +7105,24 @@ __metadata: languageName: node linkType: hard +"file-type@npm:^16.5.4": + version: 16.5.4 + resolution: "file-type@npm:16.5.4" + dependencies: + readable-web-to-node-stream: ^3.0.0 + strtok3: ^6.2.4 + token-types: ^4.1.1 + checksum: d983c0f36491c57fcb6cc70fcb02c36d6b53f312a15053263e1924e28ca8314adf0db32170801ad777f09432c32155f31715ceaee66310947731588120d7ec27 + languageName: node + linkType: hard + +"file-uri-to-path@npm:1.0.0": + version: 1.0.0 + resolution: "file-uri-to-path@npm:1.0.0" + checksum: b648580bdd893a008c92c7ecc96c3ee57a5e7b6c4c18a9a09b44fb5d36d79146f8e442578bc0e173dc027adf3987e254ba1dfd6e3ec998b7c282873010502144 + languageName: node + linkType: hard + "filelist@npm:^1.0.4": version: 1.0.4 resolution: "filelist@npm:1.0.4" @@ -6705,7 +7223,7 @@ __metadata: languageName: node linkType: hard -"foreground-child@npm:^3.1.0, foreground-child@npm:^3.3.1": +"foreground-child@npm:^3.1.0": version: 3.3.1 resolution: "foreground-child@npm:3.3.1" dependencies: @@ -6735,6 +7253,13 @@ __metadata: languageName: node linkType: hard +"from@npm:^0.1.7": + version: 0.1.7 + resolution: "from@npm:0.1.7" + checksum: b85125b7890489656eb2e4f208f7654a93ec26e3aefaf3bbbcc0d496fc1941e4405834fcc9fe7333192aa2187905510ace70417bbf9ac6f6f4784a731d986939 + languageName: node + linkType: hard + "front-matter@npm:^4.0.2": version: 4.0.2 resolution: "front-matter@npm:4.0.2" @@ -6843,6 +7368,29 @@ __metadata: languageName: node linkType: hard +"geojson-rbush@npm:3.x": + version: 3.2.0 + resolution: "geojson-rbush@npm:3.2.0" + dependencies: + "@turf/bbox": "*" + "@turf/helpers": 6.x + "@turf/meta": 6.x + "@types/geojson": 7946.0.8 + rbush: ^3.0.1 + checksum: f373e646f3699b86e3f88b16783bb8835b75446f0be9d5cbefbb5a0197e657ebe85fecfd7ce0b9140feecf532a88716c1aacf4d6a0dbcce1b48d6fd29d507927 + languageName: node + linkType: hard + +"geojson-stream@npm:0.1.0": + version: 0.1.0 + resolution: "geojson-stream@npm:0.1.0" + dependencies: + JSONStream: ^1.0.0 + through: ^2.3.4 + checksum: 0de882f32eee5aecc3abbf748a46fa0a6ba4d023c7749a6cbda11a367ad5999cfc6e11eb25fb7702defabdb4a57a41cb8267ffe1a98534017da8605abf29d604 + languageName: node + linkType: hard + "geojson-vt@npm:^4.0.2": version: 4.0.2 resolution: "geojson-vt@npm:4.0.2" @@ -7033,6 +7581,13 @@ __metadata: languageName: node linkType: hard +"github-from-package@npm:0.0.0": + version: 0.0.0 + resolution: "github-from-package@npm:0.0.0" + checksum: 14e448192a35c1e42efee94c9d01a10f42fe790375891a24b25261246ce9336ab9df5d274585aedd4568f7922246c2a78b8a8cd2571bfe99c693a9718e7dd0e3 + languageName: node + linkType: hard + "glob-parent@npm:6.0.2, glob-parent@npm:^6.0.1, glob-parent@npm:^6.0.2": version: 6.0.2 resolution: "glob-parent@npm:6.0.2" @@ -7069,22 +7624,6 @@ __metadata: languageName: node linkType: hard -"glob@npm:*": - version: 11.0.3 - resolution: "glob@npm:11.0.3" - dependencies: - foreground-child: ^3.3.1 - jackspeak: ^4.1.1 - minimatch: ^10.0.3 - minipass: ^7.1.2 - package-json-from-dist: ^1.0.0 - path-scurry: ^2.0.0 - bin: - glob: dist/esm/bin.mjs - checksum: 65ddc1e3c969e87999880580048763cc8b5bdd375930dd43b8100a5ba481d2e2563e4553de42875790800c602522a98aa8d3ed1c5bd4d27621609e6471eb371d - languageName: node - linkType: hard - "glob@npm:^10.2.2, glob@npm:^10.3.10": version: 10.4.5 resolution: "glob@npm:10.4.5" @@ -7466,6 +8005,15 @@ __metadata: languageName: node linkType: hard +"iconv-lite@npm:^0.4.24": + version: 0.4.24 + resolution: "iconv-lite@npm:0.4.24" + dependencies: + safer-buffer: ">= 2.1.2 < 3" + checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 + languageName: node + linkType: hard + "icss-utils@npm:^5.0.0, icss-utils@npm:^5.1.0": version: 5.1.0 resolution: "icss-utils@npm:5.1.0" @@ -7475,7 +8023,7 @@ __metadata: languageName: node linkType: hard -"ieee754@npm:^1.1.13": +"ieee754@npm:^1.1.13, ieee754@npm:^1.2.1": version: 1.2.1 resolution: "ieee754@npm:1.2.1" checksum: 5144c0c9815e54ada181d80a0b810221a253562422e7c6c3a60b1901154184f49326ec239d618c416c1c5945a2e197107aee8d986a3dd836b53dffefd99b5e7e @@ -7498,6 +8046,17 @@ __metadata: languageName: node linkType: hard +"image-size@npm:0.8.3": + version: 0.8.3 + resolution: "image-size@npm:0.8.3" + dependencies: + queue: 6.0.1 + bin: + image-size: bin/image-size.js + checksum: e118dc6a738b26e9e9c17bf947205a93a734971970f0a8d1827faa019f414d20af088c1f3c92105c4ec4f596fbc105e1e33217881cb6791a5cc505183f2fac15 + languageName: node + linkType: hard + "import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": version: 3.3.1 resolution: "import-fresh@npm:3.3.1" @@ -7556,14 +8115,14 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": +"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3, inherits@npm:~2.0.4": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 languageName: node linkType: hard -"ini@npm:^1.3.2, ini@npm:^1.3.8": +"ini@npm:^1.3.2, ini@npm:^1.3.8, ini@npm:~1.3.0": version: 1.3.8 resolution: "ini@npm:1.3.8" checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 @@ -7592,6 +8151,27 @@ __metadata: languageName: node linkType: hard +"inquirer@npm:8.0.0": + version: 8.0.0 + resolution: "inquirer@npm:8.0.0" + dependencies: + ansi-escapes: ^4.2.1 + chalk: ^4.1.0 + cli-cursor: ^3.1.0 + cli-width: ^3.0.0 + external-editor: ^3.0.3 + figures: ^3.0.0 + lodash: ^4.17.21 + mute-stream: 0.0.8 + run-async: ^2.4.0 + rxjs: ^6.6.6 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + through: ^2.3.6 + checksum: 289a485752922998118668ae1c15001bd5ff1cb61e02d101da78c47dd9c9f4d46d2fcbcc9ebcae22dcdb820323636021508c723550394043dfde0e4f213596ec + languageName: node + linkType: hard + "inquirer@npm:^8.2.4": version: 8.2.7 resolution: "inquirer@npm:8.2.7" @@ -8084,15 +8664,6 @@ __metadata: languageName: node linkType: hard -"jackspeak@npm:^4.1.1": - version: 4.1.1 - resolution: "jackspeak@npm:4.1.1" - dependencies: - "@isaacs/cliui": ^8.0.2 - checksum: daca714c5adebfb80932c0b0334025307b68602765098d73d52ec546bc4defdb083292893384261c052742255d0a77d8fcf96f4c669bcb4a99b498b94a74955e - languageName: node - linkType: hard - "jake@npm:^10.8.5": version: 10.9.4 resolution: "jake@npm:10.9.4" @@ -8497,10 +9068,10 @@ __metadata: linkType: hard "lerna@npm:^8.1.9": - version: 8.2.3 - resolution: "lerna@npm:8.2.3" + version: 8.2.4 + resolution: "lerna@npm:8.2.4" dependencies: - "@lerna/create": 8.2.3 + "@lerna/create": 8.2.4 "@npmcli/arborist": 7.5.4 "@npmcli/package-json": 5.2.0 "@npmcli/run-script": 8.1.0 @@ -8540,7 +9111,6 @@ __metadata: libnpmaccess: 8.0.6 libnpmpublish: 9.0.9 load-json-file: 6.2.0 - lodash: ^4.17.21 make-dir: 4.0.0 minimatch: 3.0.5 multimatch: 5.0.0 @@ -8582,7 +9152,7 @@ __metadata: yargs-parser: 21.1.1 bin: lerna: dist/cli.js - checksum: 450bbd422e4d4d8ae86389e03797b5330a4718614c70f5820b4dc3099869a98839a1b0bebaace049c7a65a0e31010c1d77c4892a21eedbe29e15035219ff6a17 + checksum: ab46ecdf65a35d5171caa1d34023219c444aba328287e8ba49d22310f43918c98feb50b074c3191fa2da4102dd71f1292a4226b68083057c55aa811486c58cd8 languageName: node linkType: hard @@ -8774,7 +9344,7 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:^4.7.0": +"lodash@npm:4.17.21, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:^4.7.0": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -8809,13 +9379,6 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^11.0.0": - version: 11.1.0 - resolution: "lru-cache@npm:11.1.0" - checksum: 6274e90b5fdff87570fe26fe971467a5ae1f25f132bebe187e71c5627c7cd2abb94b47addd0ecdad034107667726ebde1abcef083d80f2126e83476b2c4e7c82 - languageName: node - linkType: hard - "lru-cache@npm:^6.0.0": version: 6.0.0 resolution: "lru-cache@npm:6.0.0" @@ -8882,6 +9445,25 @@ __metadata: languageName: node linkType: hard +"make-fetch-happen@npm:^14.0.3": + version: 14.0.3 + resolution: "make-fetch-happen@npm:14.0.3" + dependencies: + "@npmcli/agent": ^3.0.0 + cacache: ^19.0.1 + http-cache-semantics: ^4.1.1 + minipass: ^7.0.2 + minipass-fetch: ^4.0.0 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^1.0.0 + proc-log: ^5.0.0 + promise-retry: ^2.0.1 + ssri: ^12.0.0 + checksum: 6fb2fee6da3d98f1953b03d315826b5c5a4ea1f908481afc113782d8027e19f080c85ae998454de4e5f27a681d3ec58d57278f0868d4e0b736f51d396b661691 + languageName: node + linkType: hard + "map-obj@npm:^1.0.0": version: 1.0.1 resolution: "map-obj@npm:1.0.1" @@ -8896,6 +9478,13 @@ __metadata: languageName: node linkType: hard +"map-stream@npm:0.0.7": + version: 0.0.7 + resolution: "map-stream@npm:0.0.7" + checksum: 74596bc701abb3e328e0783d70fcfdc5204798d945662a1824b57b7f10f3c36835edee5881bdd68618f96c992594bcbe09233f12b04d3a6a55a76e1a5793b76e + languageName: node + linkType: hard + "markdown-to-jsx@npm:^7.4.1": version: 7.7.13 resolution: "markdown-to-jsx@npm:7.7.13" @@ -9008,6 +9597,13 @@ __metadata: languageName: node linkType: hard +"mimic-response@npm:^3.1.0": + version: 3.1.0 + resolution: "mimic-response@npm:3.1.0" + checksum: 25739fee32c17f433626bf19f016df9036b75b3d84a3046c7d156e72ec963dd29d7fc8a302f55a3d6c5a4ff24259676b15d915aad6480815a969ff2ec0836867 + languageName: node + linkType: hard + "min-indent@npm:^1.0.0": version: 1.0.1 resolution: "min-indent@npm:1.0.1" @@ -9054,15 +9650,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^10.0.3": - version: 10.0.3 - resolution: "minimatch@npm:10.0.3" - dependencies: - "@isaacs/brace-expansion": ^5.0.0 - checksum: 20bfb708095a321cb43c20b78254e484cb7d23aad992e15ca3234a3331a70fa9cd7a50bc1a7c7b2b9c9890c37ff0685f8380028fcc28ea5e6de75b1d4f9374aa - languageName: node - linkType: hard - "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -9110,7 +9697,7 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:^1.2.8, minimist@npm:~1.2.0": +"minimist@npm:^1.2.0, minimist@npm:^1.2.3, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:^1.2.8, minimist@npm:~1.2.0": version: 1.2.8 resolution: "minimist@npm:1.2.8" checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 @@ -9141,6 +9728,21 @@ __metadata: languageName: node linkType: hard +"minipass-fetch@npm:^4.0.0": + version: 4.0.1 + resolution: "minipass-fetch@npm:4.0.1" + dependencies: + encoding: ^0.1.13 + minipass: ^7.0.3 + minipass-sized: ^1.0.3 + minizlib: ^3.0.1 + dependenciesMeta: + encoding: + optional: true + checksum: 3dfca705ce887ca9ff14d73e8d8593996dea1a1ecd8101fdbb9c10549d1f9670bc8fb66ad0192769ead4c2dc01b4f9ca1cf567ded365adff17827a303b948140 + languageName: node + linkType: hard + "minipass-flush@npm:^1.0.5": version: 1.0.5 resolution: "minipass-flush@npm:1.0.5" @@ -9191,7 +9793,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.1.2": +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": version: 7.1.2 resolution: "minipass@npm:7.1.2" checksum: 2bfd325b95c555f2b4d2814d49325691c7bee937d753814861b0b49d5edcda55cbbf22b6b6a60bb91eddac8668771f03c5ff647dcd9d0f798e9548b9cdc46ee3 @@ -9208,6 +9810,22 @@ __metadata: languageName: node linkType: hard +"minizlib@npm:^3.0.1": + version: 3.0.2 + resolution: "minizlib@npm:3.0.2" + dependencies: + minipass: ^7.1.2 + checksum: 493bed14dcb6118da7f8af356a8947cf1473289c09658e5aabd69a737800a8c3b1736fb7d7931b722268a9c9bc038a6d53c049b6a6af24b34a121823bb709996 + languageName: node + linkType: hard + +"mkdirp-classic@npm:^0.5.2, mkdirp-classic@npm:^0.5.3": + version: 0.5.3 + resolution: "mkdirp-classic@npm:0.5.3" + checksum: 3f4e088208270bbcc148d53b73e9a5bd9eef05ad2cbf3b3d0ff8795278d50dd1d11a8ef1875ff5aea3fa888931f95bfcb2ad5b7c1061cfefd6284d199e6776ac + languageName: node + linkType: hard + "mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" @@ -9217,6 +9835,15 @@ __metadata: languageName: node linkType: hard +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 972deb188e8fb55547f1e58d66bd6b4a3623bf0c7137802582602d73e6480c1c2268dcbafbfb1be466e00cc7e56ac514d7fd9334b7cf33e3e2ab547c16f83a8d + languageName: node + linkType: hard + "modify-values@npm:^1.0.1": version: 1.0.1 resolution: "modify-values@npm:1.0.1" @@ -9315,6 +9942,13 @@ __metadata: languageName: node linkType: hard +"napi-build-utils@npm:^2.0.0": + version: 2.0.0 + resolution: "napi-build-utils@npm:2.0.0" + checksum: 532121efd2dd2272595580bca48859e404bdd4ed455a72a28432ba44868c38d0e64fac3026a8f82bf8563d2a18b32eb9a1d59e601a9da4e84ba4d45b922297f5 + languageName: node + linkType: hard + "natural-compare-lite@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare-lite@npm:1.4.0" @@ -9336,6 +9970,13 @@ __metadata: languageName: node linkType: hard +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 20ebfe79b2d2e7cf9cbc8239a72662b584f71164096e6e8896c8325055497c96f6b80cd22c258e8a2f2aa382a787795ec3ee8b37b422a302c7d4381b0d5ecfbb + languageName: node + linkType: hard + "neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" @@ -9357,6 +9998,15 @@ __metadata: languageName: node linkType: hard +"node-abi@npm:^3.3.0": + version: 3.75.0 + resolution: "node-abi@npm:3.75.0" + dependencies: + semver: ^7.3.5 + checksum: b86021c748b316b31efda4f1f4a74db9fd411b0ae63fa50be5b0247546285ae7e31c737e92013478877eaf39a3fd0a06072d48b1cace21ad629862373410416f + languageName: node + linkType: hard + "node-fetch@npm:2.6.7": version: 2.6.7 resolution: "node-fetch@npm:2.6.7" @@ -9391,6 +10041,26 @@ __metadata: languageName: node linkType: hard +"node-gyp@npm:latest": + version: 11.3.0 + resolution: "node-gyp@npm:11.3.0" + dependencies: + env-paths: ^2.2.0 + exponential-backoff: ^3.1.1 + graceful-fs: ^4.2.6 + make-fetch-happen: ^14.0.3 + nopt: ^8.0.0 + proc-log: ^5.0.0 + semver: ^7.3.5 + tar: ^7.4.3 + tinyglobby: ^0.2.12 + which: ^5.0.0 + bin: + node-gyp: bin/node-gyp.js + checksum: 64255952af18222e930a0bb8239e8fc86ec25eddfbf61523ab30b45f19670c1e66384ceda0472f5d59e63a7779b2134eab8ec5322b9f092f60202b0e312a66c8 + languageName: node + linkType: hard + "node-machine-id@npm:1.1.12": version: 1.1.12 resolution: "node-machine-id@npm:1.1.12" @@ -9416,6 +10086,17 @@ __metadata: languageName: node linkType: hard +"nopt@npm:^8.0.0": + version: 8.1.0 + resolution: "nopt@npm:8.1.0" + dependencies: + abbrev: ^3.0.0 + bin: + nopt: bin/nopt.js + checksum: 49cfd3eb6f565e292bf61f2ff1373a457238804d5a5a63a8d786c923007498cba89f3648e3b952bc10203e3e7285752abf5b14eaf012edb821e84f24e881a92a + languageName: node + linkType: hard + "normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.5.0": version: 2.5.0 resolution: "normalize-package-data@npm:2.5.0" @@ -9735,6 +10416,17 @@ __metadata: languageName: node linkType: hard +"ol-load-geopackage@npm:^1.0.3": + version: 1.0.3 + resolution: "ol-load-geopackage@npm:1.0.3" + dependencies: + ol: ">=6.7.0" + sql.js: ^1.6.1 + util: ^0.12.4 + checksum: f37cf93eed86bc19bc9f504bf68dc8ae8adef6d8eaa7adfe717de59636b4418618c53185b42bc215cf08d25ba26cf1b25559911ba90abeb150a74e56f077c819 + languageName: node + linkType: hard + "ol-pmtiles@npm:^0.5.0": version: 0.5.0 resolution: "ol-pmtiles@npm:0.5.0" @@ -9769,7 +10461,7 @@ __metadata: languageName: node linkType: hard -"ol@npm:^10.1.0": +"ol@npm:>=6.7.0, ol@npm:^10.1.0": version: 10.6.1 resolution: "ol@npm:10.6.1" dependencies: @@ -9782,7 +10474,7 @@ __metadata: languageName: node linkType: hard -"once@npm:^1.3.0, once@npm:^1.4.0": +"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": version: 1.4.0 resolution: "once@npm:1.4.0" dependencies: @@ -9858,6 +10550,13 @@ __metadata: languageName: node linkType: hard +"os-tmpdir@npm:~1.0.2": + version: 1.0.2 + resolution: "os-tmpdir@npm:1.0.2" + checksum: 5666560f7b9f10182548bf7013883265be33620b1c1b4a4d405c25be2636f970c5488ff3e6c48de75b55d02bde037249fe5dbfbb4c0fb7714953d56aed062e6d + languageName: node + linkType: hard + "own-keys@npm:^1.0.1": version: 1.0.1 resolution: "own-keys@npm:1.0.1" @@ -9946,6 +10645,13 @@ __metadata: languageName: node linkType: hard +"p-map@npm:^7.0.2": + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 8c92d533acf82f0d12f7e196edccff773f384098bbb048acdd55a08778ce4fc8889d8f1bde72969487bd96f9c63212698d79744c20bedfce36c5b00b46d369f8 + languageName: node + linkType: hard + "p-pipe@npm:3.1.0": version: 3.1.0 resolution: "p-pipe@npm:3.1.0" @@ -10192,16 +10898,6 @@ __metadata: languageName: node linkType: hard -"path-scurry@npm:^2.0.0": - version: 2.0.0 - resolution: "path-scurry@npm:2.0.0" - dependencies: - lru-cache: ^11.0.0 - minipass: ^7.1.2 - checksum: 9953ce3857f7e0796b187a7066eede63864b7e1dfc14bf0484249801a5ab9afb90d9a58fc533ebb1b552d23767df8aa6a2c6c62caf3f8a65f6ce336a97bbb484 - languageName: node - linkType: hard - "path-type@npm:^3.0.0": version: 3.0.0 resolution: "path-type@npm:3.0.0" @@ -10218,6 +10914,15 @@ __metadata: languageName: node linkType: hard +"pause-stream@npm:^0.0.11": + version: 0.0.11 + resolution: "pause-stream@npm:0.0.11" + dependencies: + through: ~2.3 + checksum: 3c4a14052a638b92e0c96eb00c0d7977df7f79ea28395250c525d197f1fc02d34ce1165d5362e2e6ebbb251524b94a76f3f0d4abc39ab8b016d97449fe15583c + languageName: node + linkType: hard + "pbf@npm:4.0.1, pbf@npm:^4.0.1": version: 4.0.1 resolution: "pbf@npm:4.0.1" @@ -10229,6 +10934,13 @@ __metadata: languageName: node linkType: hard +"peek-readable@npm:^4.1.0": + version: 4.1.0 + resolution: "peek-readable@npm:4.1.0" + checksum: 02c673f9bc816f8e4e74a054c097225ad38d457d745b775e2b96faf404a54473b2f62f5bcd496f5ebc28696708bcc5e95bed409856f4bef5ed62eae9b4ac0dab + languageName: node + linkType: hard + "picocolors@npm:^1.1.1": version: 1.1.1 resolution: "picocolors@npm:1.1.1" @@ -10315,6 +11027,16 @@ __metadata: languageName: node linkType: hard +"polygon-clipping@npm:^0.15.3": + version: 0.15.7 + resolution: "polygon-clipping@npm:0.15.7" + dependencies: + robust-predicates: ^3.0.2 + splaytree: ^3.1.0 + checksum: b68fb71d1770b362026f5e956919f5ebb1245bc6b24d7926ead1c55beaa2f539e19c22e47d2aa31587dcb4318c695020f9ccd0e63d0f0425ef34f4cb02228d42 + languageName: node + linkType: hard + "possible-typed-array-names@npm:^1.0.0": version: 1.1.0 resolution: "possible-typed-array-names@npm:1.1.0" @@ -10404,6 +11126,28 @@ __metadata: languageName: node linkType: hard +"prebuild-install@npm:^7.1.1": + version: 7.1.3 + resolution: "prebuild-install@npm:7.1.3" + dependencies: + detect-libc: ^2.0.0 + expand-template: ^2.0.3 + github-from-package: 0.0.0 + minimist: ^1.2.3 + mkdirp-classic: ^0.5.3 + napi-build-utils: ^2.0.0 + node-abi: ^3.3.0 + pump: ^3.0.0 + rc: ^1.2.7 + simple-get: ^4.0.0 + tar-fs: ^2.0.0 + tunnel-agent: ^0.6.0 + bin: + prebuild-install: bin.js + checksum: 300740ca415e9ddbf2bd363f1a6d2673cc11dd0665c5ec431bbb5bf024c2f13c56791fb939ce2b2a2c12f2d2a09c91316169e8063a80eb4482a44b8fe5b265e1 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -10456,6 +11200,13 @@ __metadata: languageName: node linkType: hard +"proc-log@npm:^5.0.0": + version: 5.0.0 + resolution: "proc-log@npm:5.0.0" + checksum: c78b26ecef6d5cce4a7489a1e9923d7b4b1679028c8654aef0463b27f4a90b0946cd598f55799da602895c52feb085ec76381d007ab8dcceebd40b89c2f9dfe0 + languageName: node + linkType: hard + "process-nextick-args@npm:~2.0.0": version: 2.0.1 resolution: "process-nextick-args@npm:2.0.1" @@ -10484,7 +11235,7 @@ __metadata: languageName: node linkType: hard -"proj4@npm:*, proj4@npm:^2.1.4": +"proj4@npm:*, proj4@npm:^2.1.4, proj4@npm:^2.4.4": version: 2.19.10 resolution: "proj4@npm:2.19.10" dependencies: @@ -10506,6 +11257,16 @@ __metadata: languageName: node linkType: hard +"proj4@npm:2.8.0": + version: 2.8.0 + resolution: "proj4@npm:2.8.0" + dependencies: + mgrs: 1.0.0 + wkt-parser: ^1.3.1 + checksum: 05c46387ac866bba699d50291507f9cfd2eece4806e375e7bc536c28c03af4d4ae8c386ab53a0c4a26a4b1718d5d0b30a6cf972614f4fb997e89bd262348c6b1 + languageName: node + linkType: hard + "promise-all-reject-late@npm:^1.0.0": version: 1.0.1 resolution: "promise-all-reject-late@npm:1.0.1" @@ -10587,6 +11348,16 @@ __metadata: languageName: node linkType: hard +"pump@npm:^3.0.0": + version: 3.0.3 + resolution: "pump@npm:3.0.3" + dependencies: + end-of-stream: ^1.1.0 + once: ^1.3.1 + checksum: 52843fc933b838c0330f588388115a1b28ef2a5ffa7774709b142e35431e8ab0c2edec90de3fa34ebb72d59fef854f151eea7dfc211b6dcf586b384556bd2f39 + languageName: node + linkType: hard + "punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" @@ -10608,6 +11379,15 @@ __metadata: languageName: node linkType: hard +"queue@npm:6.0.1": + version: 6.0.1 + resolution: "queue@npm:6.0.1" + dependencies: + inherits: ~2.0.3 + checksum: f39f70b030f9aebf4b32b0db5b7b11d2b799cdaedb190849532983fb31ba45a94d2ee48308e545e8452826b29a4ac996946579af7b42072f04ded3ce40c41703 + languageName: node + linkType: hard + "quick-lru@npm:^4.0.1": version: 4.0.1 resolution: "quick-lru@npm:4.0.1" @@ -10622,6 +11402,13 @@ __metadata: languageName: node linkType: hard +"quickselect@npm:^2.0.0": + version: 2.0.0 + resolution: "quickselect@npm:2.0.0" + checksum: ed2e78431050d223fb75da20ee98011aef1a03f7cb04e1a32ee893402e640be3cfb76d72e9dbe01edf3bb457ff6a62e5c2d85748424d1aa531f6ba50daef098c + languageName: node + linkType: hard + "quickselect@npm:^3.0.0": version: 3.0.0 resolution: "quickselect@npm:3.0.0" @@ -10638,6 +11425,15 @@ __metadata: languageName: node linkType: hard +"rbush@npm:^3.0.1": + version: 3.0.1 + resolution: "rbush@npm:3.0.1" + dependencies: + quickselect: ^2.0.0 + checksum: b7def5ba762ca01b6c7c032098ef61b86bd4fef4afb82e4a1d70a07a929b39e779290446c2d4730f577e8a1c8fd0dfd349605b5ea0229258d5f013debdffa65a + languageName: node + linkType: hard + "rbush@npm:^4.0.0": version: 4.0.1 resolution: "rbush@npm:4.0.1" @@ -10647,6 +11443,20 @@ __metadata: languageName: node linkType: hard +"rc@npm:^1.2.7": + version: 1.2.8 + resolution: "rc@npm:1.2.8" + dependencies: + deep-extend: ^0.6.0 + ini: ~1.3.0 + minimist: ^1.2.0 + strip-json-comments: ~2.0.1 + bin: + rc: ./cli.js + checksum: 2e26e052f8be2abd64e6d1dabfbd7be03f80ec18ccbc49562d31f617d0015fbdbcf0f9eed30346ea6ab789e0fdfe4337f033f8016efdbee0df5354751842080e + languageName: node + linkType: hard + "react-day-picker@npm:^9.7.0": version: 9.8.1 resolution: "react-day-picker@npm:9.8.1" @@ -10836,7 +11646,7 @@ __metadata: languageName: node linkType: hard -"readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0": +"readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0, readable-stream@npm:^3.5.0": version: 3.6.2 resolution: "readable-stream@npm:3.6.2" dependencies: @@ -10847,6 +11657,19 @@ __metadata: languageName: node linkType: hard +"readable-stream@npm:^4.7.0": + version: 4.7.0 + resolution: "readable-stream@npm:4.7.0" + dependencies: + abort-controller: ^3.0.0 + buffer: ^6.0.3 + events: ^3.3.0 + process: ^0.11.10 + string_decoder: ^1.3.0 + checksum: 03ec762faed8e149dc6452798b60394a8650861a1bb4bf936fa07b94044826bc25abe73696f5f45372abc404eec01876c560f64b479eba108b56397312dbe2ae + languageName: node + linkType: hard + "readable-stream@npm:~2.3.6": version: 2.3.8 resolution: "readable-stream@npm:2.3.8" @@ -10862,6 +11685,15 @@ __metadata: languageName: node linkType: hard +"readable-web-to-node-stream@npm:^3.0.0": + version: 3.0.4 + resolution: "readable-web-to-node-stream@npm:3.0.4" + dependencies: + readable-stream: ^4.7.0 + checksum: a11704035cab9ad857a3081e7663dca28a7befd7328e5b2eb2c124e4150e08534ea00c3159e5f7ff2588fca366b348a7d8d2bc0bc7d5eabc6b7108dd753886b7 + languageName: node + linkType: hard + "rechoir@npm:^0.8.0": version: 0.8.0 resolution: "rechoir@npm:0.8.0" @@ -10911,6 +11743,21 @@ __metadata: languageName: node linkType: hard +"reproject@npm:1.2.5": + version: 1.2.5 + resolution: "reproject@npm:1.2.5" + dependencies: + concat-stream: ^2.0.0 + event-stream: ^4.0.0 + geojson-stream: 0.1.0 + minimist: ^1.2.0 + proj4: ^2.4.4 + bin: + reproject: cli.js + checksum: 5cc5f8d7cc0f16f3395a40044323f678f5f6f40d74073feb18fb2296b490f1f757d965cc03ebcc3e65461713c3d062223fc0c936dee71135b0e4733996c252f7 + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -11043,6 +11890,20 @@ __metadata: languageName: node linkType: hard +"robust-predicates@npm:^3.0.2": + version: 3.0.2 + resolution: "robust-predicates@npm:3.0.2" + checksum: 36854c1321548ceca96d36ad9d6e0a5a512986029ec6929ad6ed3ec1612c22cc8b46cc72d2c5674af42e8074a119d793f6f0ea3a5b51373e3ab926c64b172d7a + languageName: node + linkType: hard + +"rtree-sql.js@npm:1.7.0": + version: 1.7.0 + resolution: "rtree-sql.js@npm:1.7.0" + checksum: feac8cef720348dcd3aad1d87f35588a302c96c4d2c86ce474a26f687419d49edfd18323c2f2de332909b781623d7c7047b166c2e39e3a7717214052064bef50 + languageName: node + linkType: hard + "run-async@npm:^2.4.0": version: 2.4.1 resolution: "run-async@npm:2.4.1" @@ -11059,6 +11920,15 @@ __metadata: languageName: node linkType: hard +"rxjs@npm:^6.6.6": + version: 6.6.7 + resolution: "rxjs@npm:6.6.7" + dependencies: + tslib: ^1.9.0 + checksum: bc334edef1bb8bbf56590b0b25734ba0deaf8825b703256a93714308ea36dff8a11d25533671adf8e104e5e8f256aa6fdfe39b2e248cdbd7a5f90c260acbbd1b + languageName: node + linkType: hard + "rxjs@npm:^7.5.5": version: 7.8.2 resolution: "rxjs@npm:7.8.2" @@ -11081,7 +11951,7 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:^5.1.0, safe-buffer@npm:~5.2.0": +"safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 @@ -11116,7 +11986,7 @@ __metadata: languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3.0.0": +"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 @@ -11418,6 +12288,31 @@ __metadata: languageName: node linkType: hard +"simple-concat@npm:^1.0.0": + version: 1.0.1 + resolution: "simple-concat@npm:1.0.1" + checksum: 4d211042cc3d73a718c21ac6c4e7d7a0363e184be6a5ad25c8a1502e49df6d0a0253979e3d50dbdd3f60ef6c6c58d756b5d66ac1e05cda9cacd2e9fc59e3876a + languageName: node + linkType: hard + +"simple-get@npm:^4.0.0": + version: 4.0.1 + resolution: "simple-get@npm:4.0.1" + dependencies: + decompress-response: ^6.0.0 + once: ^1.3.1 + simple-concat: ^1.0.0 + checksum: e4132fd27cf7af230d853fa45c1b8ce900cb430dd0a3c6d3829649fe4f2b26574c803698076c4006450efb0fad2ba8c5455fbb5755d4b0a5ec42d4f12b31d27e + languageName: node + linkType: hard + +"simplify-js@npm:1.2.4": + version: 1.2.4 + resolution: "simplify-js@npm:1.2.4" + checksum: 5bbc7b6223565ce7e1aa636405a973fc6a34b3b2704d697682d3023cf2582a8a7c5fdb42f1b251749d6377b44465d3c33d60aa98306192d9ba069d71dc778735 + languageName: node + linkType: hard + "slash@npm:3.0.0, slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" @@ -11569,6 +12464,13 @@ __metadata: languageName: node linkType: hard +"splaytree@npm:^3.1.0": + version: 3.1.2 + resolution: "splaytree@npm:3.1.2" + checksum: 7b90a52e02036699b0c7228bb86c784aa674618909622da652c80a809694dafa068b73c97309ecb719783b7c1e1092ac6917acf2213defc0fa9027f92b2afa62 + languageName: node + linkType: hard + "split2@npm:^3.2.2": version: 3.2.2 resolution: "split2@npm:3.2.2" @@ -11594,6 +12496,13 @@ __metadata: languageName: node linkType: hard +"sql.js@npm:^1.6.1": + version: 1.13.0 + resolution: "sql.js@npm:1.13.0" + checksum: ea74dc129ed0a6c77ce9a767c66f38aceba62e0b3950d8edc93790c5098688b133f34e6df7b67912a812d277735c2127935b9f783ca45b91f618fcd9c2ce5061 + languageName: node + linkType: hard + "ssri@npm:^10.0.0, ssri@npm:^10.0.6": version: 10.0.6 resolution: "ssri@npm:10.0.6" @@ -11603,6 +12512,15 @@ __metadata: languageName: node linkType: hard +"ssri@npm:^12.0.0": + version: 12.0.0 + resolution: "ssri@npm:12.0.0" + dependencies: + minipass: ^7.0.3 + checksum: ef4b6b0ae47b4a69896f5f1c4375f953b9435388c053c36d27998bc3d73e046969ccde61ab659e679142971a0b08e50478a1228f62edb994105b280f17900c98 + languageName: node + linkType: hard + "stac-js@npm:~0.1.6": version: 0.1.6 resolution: "stac-js@npm:0.1.6" @@ -11632,6 +12550,26 @@ __metadata: languageName: node linkType: hard +"stream-browserify@npm:^3.0.0": + version: 3.0.0 + resolution: "stream-browserify@npm:3.0.0" + dependencies: + inherits: ~2.0.4 + readable-stream: ^3.5.0 + checksum: 4c47ef64d6f03815a9ca3874e2319805e8e8a85f3550776c47ce523b6f4c6cd57f40e46ec6a9ab8ad260fde61863c2718f250d3bedb3fe9052444eb9abfd9921 + languageName: node + linkType: hard + +"stream-combiner@npm:^0.2.2": + version: 0.2.2 + resolution: "stream-combiner@npm:0.2.2" + dependencies: + duplexer: ~0.1.1 + through: ~2.3.4 + checksum: 5d3f4f6dd3604b3c5acf16150eabbbd131247378b54719c39cac5b5793150a92842306f662b58df65f2bd2e64bf8081f21449489591fed440c2b280021474e7d + languageName: node + linkType: hard + "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -11704,7 +12642,7 @@ __metadata: languageName: node linkType: hard -"string_decoder@npm:^1.1.1": +"string_decoder@npm:^1.1.1, string_decoder@npm:^1.3.0": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" dependencies: @@ -11777,6 +12715,23 @@ __metadata: languageName: node linkType: hard +"strip-json-comments@npm:~2.0.1": + version: 2.0.1 + resolution: "strip-json-comments@npm:2.0.1" + checksum: 1074ccb63270d32ca28edfb0a281c96b94dc679077828135141f27d52a5a398ef5e78bcf22809d23cadc2b81dfbe345eb5fd8699b385c8b1128907dec4a7d1e1 + languageName: node + linkType: hard + +"strtok3@npm:^6.2.4": + version: 6.3.0 + resolution: "strtok3@npm:6.3.0" + dependencies: + "@tokenizer/token": ^0.3.0 + peek-readable: ^4.1.0 + checksum: 90732cff3f325aef7c47c511f609b593e0873ec77b5081810071cde941344e6a0ee3ccb0cae1a9f5b4e12c81a2546fd6b322fabcdfbd1dd08362c2ce5291334a + languageName: node + linkType: hard + "style-loader@npm:^3.3.1, style-loader@npm:~3.3.1": version: 3.3.4 resolution: "style-loader@npm:3.3.4" @@ -11879,7 +12834,19 @@ __metadata: languageName: node linkType: hard -"tar-stream@npm:~2.2.0": +"tar-fs@npm:^2.0.0": + version: 2.1.3 + resolution: "tar-fs@npm:2.1.3" + dependencies: + chownr: ^1.1.1 + mkdirp-classic: ^0.5.2 + pump: ^3.0.0 + tar-stream: ^2.1.4 + checksum: 8dd66c20779c1fe535df5cf2ab5132705c12aba3ab95283f225a798329c5aaa8bbe92144c8e21bc9404f46a0d3ce59fc4997f5c42bafc55b6a225d4ad15aa966 + languageName: node + linkType: hard + +"tar-stream@npm:^2.1.4, tar-stream@npm:~2.2.0": version: 2.2.0 resolution: "tar-stream@npm:2.2.0" dependencies: @@ -11906,6 +12873,20 @@ __metadata: languageName: node linkType: hard +"tar@npm:^7.4.3": + version: 7.4.3 + resolution: "tar@npm:7.4.3" + dependencies: + "@isaacs/fs-minipass": ^4.0.0 + chownr: ^3.0.0 + minipass: ^7.1.2 + minizlib: ^3.0.1 + mkdirp: ^3.0.1 + yallist: ^5.0.0 + checksum: 8485350c0688331c94493031f417df069b778aadb25598abdad51862e007c39d1dd5310702c7be4a6784731a174799d8885d2fde0484269aea205b724d7b2ffa + languageName: node + linkType: hard + "temp-dir@npm:1.0.0": version: 1.0.0 resolution: "temp-dir@npm:1.0.0" @@ -12007,7 +12988,7 @@ __metadata: languageName: node linkType: hard -"through@npm:2, through@npm:2.3.8, through@npm:>=2.2.7 <3, through@npm:^2.3.6": +"through@npm:2, through@npm:2.3.8, through@npm:>=2.2.7 <3, through@npm:^2.3.4, through@npm:^2.3.6, through@npm:^2.3.8, through@npm:~2.3, through@npm:~2.3.4": version: 2.3.8 resolution: "through@npm:2.3.8" checksum: a38c3e059853c494af95d50c072b83f8b676a9ba2818dcc5b108ef252230735c54e0185437618596c790bbba8fcdaef5b290405981ffa09dce67b1f1bf190cbd @@ -12034,6 +13015,25 @@ __metadata: languageName: node linkType: hard +"tinyglobby@npm:^0.2.12": + version: 0.2.14 + resolution: "tinyglobby@npm:0.2.14" + dependencies: + fdir: ^6.4.4 + picomatch: ^4.0.2 + checksum: 261e986e3f2062dec3a582303bad2ce31b4634b9348648b46828c000d464b012cf474e38f503312367d4117c3f2f18611992738fca684040758bba44c24de522 + languageName: node + linkType: hard + +"tmp@npm:^0.0.33": + version: 0.0.33 + resolution: "tmp@npm:0.0.33" + dependencies: + os-tmpdir: ~1.0.2 + checksum: 902d7aceb74453ea02abbf58c203f4a8fc1cead89b60b31e354f74ed5b3fb09ea817f94fb310f884a5d16987dd9fa5a735412a7c2dd088dd3d415aa819ae3a28 + languageName: node + linkType: hard + "tmp@npm:~0.2.1": version: 0.2.5 resolution: "tmp@npm:0.2.5" @@ -12050,6 +13050,16 @@ __metadata: languageName: node linkType: hard +"token-types@npm:^4.1.1": + version: 4.2.1 + resolution: "token-types@npm:4.2.1" + dependencies: + "@tokenizer/token": ^0.3.0 + ieee754: ^1.2.1 + checksum: cce256766b33e0f08ceffefa2198fb4961a417866d00780e58625999ab5c0699821407053e64eadc41b00bbb6c0d0c4d02fbd2199940d8a3ccb71e1b148ab9a2 + languageName: node + linkType: hard + "tough-cookie@npm:^4.1.2": version: 4.1.4 resolution: "tough-cookie@npm:4.1.4" @@ -12157,14 +13167,14 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.13.0, tslib@npm:^1.8.1": +"tslib@npm:^1.13.0, tslib@npm:^1.8.1, tslib@npm:^1.9.0": version: 1.14.1 resolution: "tslib@npm:1.14.1" checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd languageName: node linkType: hard -"tslib@npm:^2.0.0, tslib@npm:^2.1.0, tslib@npm:^2.3.0, tslib@npm:^2.4.0": +"tslib@npm:^2.0.0, tslib@npm:^2.1.0, tslib@npm:^2.3.0, tslib@npm:^2.4.0, tslib@npm:^2.8.1": version: 2.8.1 resolution: "tslib@npm:2.8.1" checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a @@ -12193,6 +13203,15 @@ __metadata: languageName: node linkType: hard +"tunnel-agent@npm:^0.6.0": + version: 0.6.0 + resolution: "tunnel-agent@npm:0.6.0" + dependencies: + safe-buffer: ^5.0.1 + checksum: 05f6510358f8afc62a057b8b692f05d70c1782b70db86d6a1e0d5e28a32389e52fa6e7707b6c5ecccacc031462e4bc35af85ecfe4bbc341767917b7cf6965711 + languageName: node + linkType: hard + "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -12412,6 +13431,15 @@ __metadata: languageName: node linkType: hard +"unique-filename@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-filename@npm:4.0.0" + dependencies: + unique-slug: ^5.0.0 + checksum: 6a62094fcac286b9ec39edbd1f8f64ff92383baa430af303dfed1ffda5e47a08a6b316408554abfddd9730c78b6106bef4ca4d02c1231a735ddd56ced77573df + languageName: node + linkType: hard + "unique-slug@npm:^4.0.0": version: 4.0.0 resolution: "unique-slug@npm:4.0.0" @@ -12421,6 +13449,15 @@ __metadata: languageName: node linkType: hard +"unique-slug@npm:^5.0.0": + version: 5.0.0 + resolution: "unique-slug@npm:5.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 222d0322bc7bbf6e45c08967863212398313ef73423f4125e075f893a02405a5ffdbaaf150f7dd1e99f8861348a486dd079186d27c5f2c60e465b7dcbb1d3e5b + languageName: node + linkType: hard + "universal-user-agent@npm:^6.0.0": version: 6.0.1 resolution: "universal-user-agent@npm:6.0.1" @@ -12527,7 +13564,7 @@ __metadata: languageName: node linkType: hard -"util@npm:^0.12.3, util@npm:^0.12.5": +"util@npm:^0.12.3, util@npm:^0.12.4, util@npm:^0.12.5": version: 0.12.5 resolution: "util@npm:0.12.5" dependencies: @@ -12822,8 +13859,8 @@ __metadata: linkType: hard "webpack@npm:^5.76.1, webpack@npm:^5.76.3, webpack@npm:^5.77.0": - version: 5.101.1 - resolution: "webpack@npm:5.101.1" + version: 5.101.2 + resolution: "webpack@npm:5.101.2" dependencies: "@types/eslint-scope": ^3.7.7 "@types/estree": ^1.0.8 @@ -12855,7 +13892,14 @@ __metadata: optional: true bin: webpack: bin/webpack.js - checksum: 15edd8f2294af6716bbb8e7cf5fd6b8829af4d979f5a8a4b57ca16629e5de4a9ee64e6bdbd2281177fd3cf0da5c64b2a28c659fa61bd57b6b87f67cb98600c36 + checksum: bde8ab5ca339390e5c99929a69d2b2c0297593592f53497eed7f191208f4c3bea1dc3fbd3c9d9c622349ecff86a653c64423c77874d5a4b801e49e7b1d930001 + languageName: node + linkType: hard + +"webworkify@npm:1.5.0": + version: 1.5.0 + resolution: "webworkify@npm:1.5.0" + checksum: 426c10e0b94cac0678aed05fdf1abce98e8e11a523380537bab99fcd63df7c4b71b3630e61ab8052fdbd8d6e55e53700523b423cd475b258f95be5189d8cde49 languageName: node linkType: hard @@ -13007,6 +14051,17 @@ __metadata: languageName: node linkType: hard +"which@npm:^5.0.0": + version: 5.0.0 + resolution: "which@npm:5.0.0" + dependencies: + isexe: ^3.1.1 + bin: + node-which: bin/which.js + checksum: 6ec99e89ba32c7e748b8a3144e64bfc74aa63e2b2eacbb61a0060ad0b961eb1a632b08fb1de067ed59b002cec3e21de18299216ebf2325ef0f78e0f121e14e90 + languageName: node + linkType: hard + "wide-align@npm:1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" @@ -13023,13 +14078,22 @@ __metadata: languageName: node linkType: hard -"wkt-parser@npm:^1.5.1": +"wkt-parser@npm:^1.3.1, wkt-parser@npm:^1.5.1": version: 1.5.2 resolution: "wkt-parser@npm:1.5.2" checksum: 0055b11008bf47c390ae7c517ee3e2aa093b0c1149c8039c2d86d3dd3d33908e3ead31839addfbcd3fa4abf035348fc192cfae985296848f8eb6644c810108c9 languageName: node linkType: hard +"wkx@npm:0.4.8": + version: 0.4.8 + resolution: "wkx@npm:0.4.8" + dependencies: + "@types/node": "*" + checksum: c11a165d3d2effe0764eb04f2cb634528a485b2215aa373ca535bded9bfe016a107f3e96fd99b6f771e579b0603a378f4746d68661b22e70929660eb6b01dd69 + languageName: node + linkType: hard + "word-wrap@npm:^1.2.5": version: 1.2.5 resolution: "word-wrap@npm:1.2.5" @@ -13221,6 +14285,13 @@ __metadata: languageName: node linkType: hard +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: eba51182400b9f35b017daa7f419f434424410691bbc5de4f4240cc830fdef906b504424992700dc047f16b4d99100a6f8b8b11175c193f38008e9c96322b6a5 + languageName: node + linkType: hard + "yaml@npm:^2.6.0": version: 2.8.1 resolution: "yaml@npm:2.8.1"