From ed5bfebfcef397ae3906a3a3f4195e84131486f4 Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Fri, 13 Dec 2024 15:58:19 -0500 Subject: [PATCH 1/8] build: npm package update --- package-lock.json | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 106c20bff..477dc5374 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7912,9 +7912,9 @@ } }, "node_modules/express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dev": true, "license": "MIT", "dependencies": { @@ -7937,7 +7937,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -7952,6 +7952,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -7972,9 +7976,9 @@ "license": "MIT" }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "dev": true, "license": "MIT" }, From 4a3b798273571c5b0b3f125cddd2bcb2f01fac87 Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Mon, 16 Dec 2024 14:43:36 -0800 Subject: [PATCH 2/8] fix: adjust extent based on value of autoScale option --- .../slycat-parameter-image/js/selectors.ts | 193 +++++++++++++++--- 1 file changed, 163 insertions(+), 30 deletions(-) diff --git a/web-server/plugins/slycat-parameter-image/js/selectors.ts b/web-server/plugins/slycat-parameter-image/js/selectors.ts index e63d11b8a..89cbacd72 100644 --- a/web-server/plugins/slycat-parameter-image/js/selectors.ts +++ b/web-server/plugins/slycat-parameter-image/js/selectors.ts @@ -8,6 +8,7 @@ import { selectHideLabels, selectHorizontalSpacing, selectVerticalSpacing, + selectAutoScale, } from "./scatterplotSlice"; import { selectHiddenSimulations } from "./dataSlice"; import { @@ -79,6 +80,14 @@ export const selectXValuesArray = createSelector(selectXValues, (xValues): any[] return Array.from(xValues); }); +export const selectYValuesArray = createSelector(selectYValues, (yValues): any[] => { + return Array.from(yValues); +}); + +export const selectVValuesArray = createSelector(selectVValues, (vValues): any[] => { + return Array.from(vValues); +}); + export const selectXValuesLog = createSelector( selectXValuesArray, selectXColumnType, @@ -97,17 +106,34 @@ export const selectXValuesLog = createSelector( export const selectXValuesDate = createSelector( selectXValuesArray, - selectXColumnType, - (xValues, selectXColumnType): (Date | undefined)[] => { - return xValues.map((value) => { - // Try to convert to a data object and return it. Otherwise return undefined. - const date = parseDate(value.toString()); - if (isNaN(date.valueOf())) return undefined; - return date; - }); + (xValues): (Date | undefined)[] => { + return convertValuesToDateObjects(xValues); + }, +); + +export const selectYValuesDate = createSelector( + selectYValuesArray, + (yValues): (Date | undefined)[] => { + return convertValuesToDateObjects(yValues); + }, +); + +export const selectVValuesDate = createSelector( + selectVValuesArray, + (vValues): (Date | undefined)[] => { + return convertValuesToDateObjects(vValues); }, ); +function convertValuesToDateObjects(valuesArray: any[]): (Date | undefined)[] { + return valuesArray.map((value) => { + // Try to convert to a data object and return it. Otherwise return undefined. + const date = parseDate(value.toString()); + if (isNaN(date.valueOf())) return undefined; + return date; + }); +} + function convertValuesToIndexedObjects(valuesArray: any[]): { value: any; index: number }[] { return valuesArray.map((value, index) => ({ value: value, index: index })); } @@ -145,6 +171,51 @@ export const selectXValuesWithoutHidden = createSelector( }, ); +export const selectYValuesWithoutHidden = createSelector( + selectYValuesArray, + selectHiddenSimulations, + (yValuesArray: any[], hiddenSimulations: number[]): ValuesType => { + // Removing hidden simulations from yValues. + return removeHiddenSimulations(yValuesArray, hiddenSimulations); + }, +); + +export const selectVValuesWithoutHidden = createSelector( + selectVValuesArray, + selectHiddenSimulations, + (vValuesArray: any[], hiddenSimulations: number[]): ValuesType => { + // Removing hidden simulations from vValues. + return removeHiddenSimulations(vValuesArray, hiddenSimulations); + }, +); + +export const selectXValuesDateWithoutHidden = createSelector( + selectXValuesDate, + selectHiddenSimulations, + (xValuesDate, hiddenSimulations): (Date | undefined)[] => { + // Removing hidden simulations from xValuesDate. + return removeHiddenSimulations(xValuesDate, hiddenSimulations); + }, +); + +export const selectYValuesDateWithoutHidden = createSelector( + selectYValuesDate, + selectHiddenSimulations, + (yValuesDate, hiddenSimulations): (Date | undefined)[] => { + // Removing hidden simulations from yValuesDate. + return removeHiddenSimulations(yValuesDate, hiddenSimulations); + }, +); + +export const selectVValuesDateWithoutHidden = createSelector( + selectVValuesDate, + selectHiddenSimulations, + (vValuesDate, hiddenSimulations): (Date | undefined)[] => { + // Removing hidden simulations from vValuesDate. + return removeHiddenSimulations(vValuesDate, hiddenSimulations); + }, +); + export const selectXValuesAndIndexesWithoutHidden = createSelector( selectXValuesAndIndexes, selectHiddenSimulations, @@ -232,19 +303,28 @@ export const selectVScaleType = createSelector( const getExtent = ( values: ValuesType, + valuesWithoutHidden: ValuesType, + valuesDate: (Date | undefined)[], + valuesDateWithoutHidden: (Date | undefined)[], variableRanges: VariableRangesType, index: number, columnTypes: ColumnTypesType[], scaleType: string, - tableStatistics: TableStatisticsType, + autoScale: boolean, ): ExtentType => { + // If selectAutoScale is true, use values without hidden simulations. + const values_date = autoScale ? valuesDateWithoutHidden : valuesDate; + const values_not_date = autoScale ? valuesWithoutHidden : values; + // If we have Date & Time values, use the Date & Time extent. + const values_for_extent = scaleType === "Date & Time" ? values_date : values_not_date; + const extent: ExtentType = [undefined, undefined]; switch (scaleType) { // For 'Date & Time' scales... case "Date & Time": - extent[0] = d3.min(values); - extent[1] = d3.max(values); + extent[0] = d3.min(values_for_extent); + extent[1] = d3.max(values_for_extent); // If we have a custom range, try to use that instead. const customRange = variableRanges[index]; @@ -268,16 +348,14 @@ const getExtent = ( switch (columnTypes[index]) { // For string values, just return the min/max of the values. case "string": - extent[0] = d3.min(values); - extent[1] = d3.max(values); + extent[0] = d3.min(values_for_extent); + extent[1] = d3.max(values_for_extent); break; // For numeric values... default: - // Use the min/max of the values from table statistics retrieved from server. - const { min, max } = tableStatistics[index] || {}; - extent[0] = min; - extent[1] = max; + extent[0] = d3.min(values_for_extent); + extent[1] = d3.max(values_for_extent); // If we have a custom range, use that instead. const customRange = variableRanges[index]; @@ -295,62 +373,106 @@ const getExtent = ( export const selectXExtent = createSelector( selectXValues, + selectXValuesWithoutHidden, selectXValuesDate, + selectXValuesDateWithoutHidden, selectVariableRanges, selectXIndex, selectColumnTypes, selectXScaleType, - selectTableStatistics, + selectAutoScale, ( xValues, + xValuesWithoutHidden, xValuesDate, + xValuesDateWithoutHidden, variableRanges: VariableRangesType, xIndex: number, columnTypes, xScaleType: string, - tableStatistics: TableStatisticsType, + selectAutoScale: boolean, ): ExtentType => { - // If we have Date & Time values, use the Date & Time extent. - const x_values = xScaleType === "Date & Time" ? xValuesDate : xValues; - return getExtent(x_values, variableRanges, xIndex, columnTypes, xScaleType, tableStatistics); + return getExtent( + xValues, + xValuesWithoutHidden, + xValuesDate, + xValuesDateWithoutHidden, + variableRanges, + xIndex, + columnTypes, + xScaleType, + selectAutoScale, + ); }, ); const selectYExtent = createSelector( selectYValues, + selectYValuesWithoutHidden, + selectYValuesDate, + selectYValuesDateWithoutHidden, selectVariableRanges, selectYIndex, selectColumnTypes, selectYScaleType, - selectTableStatistics, + selectAutoScale, ( yValues, + yValuesWithoutHidden, + yValuesDate, + yValuesDateWithoutHidden, variableRanges: VariableRangesType, yIndex: number, columnTypes, yScaleType: string, - tableStatistics: TableStatisticsType, + selectAutoScale: boolean, ): ExtentType => { - return getExtent(yValues, variableRanges, yIndex, columnTypes, yScaleType, tableStatistics); + return getExtent( + yValues, + yValuesWithoutHidden, + yValuesDate, + yValuesDateWithoutHidden, + variableRanges, + yIndex, + columnTypes, + yScaleType, + selectAutoScale, + ); }, ); export const selectVExtent = createSelector( selectVValues, + selectVValuesWithoutHidden, + selectVValuesDate, + selectVValuesDateWithoutHidden, selectVariableRanges, selectVIndex, selectColumnTypes, selectVScaleType, - selectTableStatistics, + selectAutoScale, ( vValues, + vValuesWithoutHidden, + vValuesDate, + vValuesDateWithoutHidden, variableRanges: VariableRangesType, vIndex: number, columnTypes, vScaleType: string, - tableStatistics: TableStatisticsType, + selectAutoScale: boolean, ): ExtentType => { - return getExtent(vValues, variableRanges, vIndex, columnTypes, vScaleType, tableStatistics); + return getExtent( + vValues, + vValuesWithoutHidden, + vValuesDate, + vValuesDateWithoutHidden, + variableRanges, + vIndex, + columnTypes, + vScaleType, + selectAutoScale, + ); }, ); @@ -576,8 +698,19 @@ export const selectLegendScaleAxis = createSelector( selectVerticalSpacing, selectHideLabels, selectVColumnType, - (legendScale: SlycatScaleType, verticalSpacing: number, hideLabels: boolean, vColumnType: string) => { - return adjustScaleDomain(legendScale, verticalSpacing, vColumnType === "string" && hideLabels, 1, true); + ( + legendScale: SlycatScaleType, + verticalSpacing: number, + hideLabels: boolean, + vColumnType: string, + ) => { + return adjustScaleDomain( + legendScale, + verticalSpacing, + vColumnType === "string" && hideLabels, + 1, + true, + ); }, ); From 6bb956c7ef37fd5639e6cb3cb1d8b38cebbd280d Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Mon, 16 Dec 2024 15:14:24 -0800 Subject: [PATCH 3/8] fix: reverse scale domain when requested even when not filtering --- web-server/plugins/slycat-parameter-image/js/selectors.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/web-server/plugins/slycat-parameter-image/js/selectors.ts b/web-server/plugins/slycat-parameter-image/js/selectors.ts index 89cbacd72..51a1f0afa 100644 --- a/web-server/plugins/slycat-parameter-image/js/selectors.ts +++ b/web-server/plugins/slycat-parameter-image/js/selectors.ts @@ -780,6 +780,10 @@ const adjustScaleDomain = ( // Align the axis to fit the original scale .align(align ?? 0); } + // Reverse the domain if requested even if no filtering was done. + else if (reverse) { + adjusted_scale.domain(adjusted_scale.domain().reverse()); + } return adjusted_scale; }; From 7a6395f84ba910cf85164f2d8110557ec78a2445 Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Tue, 17 Dec 2024 12:44:43 -0800 Subject: [PATCH 4/8] fix: address issues with color coding string variables assigned to a Date & Time scale --- web-server/js/slycat-color-maps-methods.ts | 23 ++++++++++++--- .../js/parameter-image-scatterplot.js | 13 +++++++++ .../js/parameter-image-table.ts | 9 ++++++ .../plugins/slycat-parameter-image/js/ui.js | 28 +++++++++++++------ 4 files changed, 61 insertions(+), 12 deletions(-) diff --git a/web-server/js/slycat-color-maps-methods.ts b/web-server/js/slycat-color-maps-methods.ts index dd05c63bf..c14248c9f 100644 --- a/web-server/js/slycat-color-maps-methods.ts +++ b/web-server/js/slycat-color-maps-methods.ts @@ -8,10 +8,10 @@ import * as d3v7 from "d3v7"; export default { isValueInColorscaleRange: function ( value: number, - colorscale: d3.ScaleLinear | d3.ScaleLogarithmic | d3.ScaleOrdinal + colorscale: d3.ScaleLinear | d3.ScaleLogarithmic | d3.ScaleOrdinal, ) { - // Check against min and max only if value is a number - if (Number.isFinite(value)) { + // Check against min and max only if value is a number or a Date object + if (Number.isFinite(value) || (value as any) instanceof Date) { const rangeMin = colorscale.domain()[0]; const rangeMax = colorscale.domain()[colorscale.domain().length - 1]; return rangeMin <= value && value <= rangeMax; @@ -127,6 +127,21 @@ export default { return d3.scale.ordinal().domain(values).range(rgbRange); }, + // Return a d3 time scale with the current color map for the domain [0, 1]. + // Callers should modify the domain by passing a min and max to suit their own needs. + get_color_scale_time: function (name: string, min: number, max: number) { + if (name === undefined) name = window.store.getState().colormap; + if (min === undefined) min = 0.0; + if (max === undefined) max = 1.0; + var domain = []; + var domain_scale = d3.scale + .linear() + .domain([0, this.color_maps[name].colors.length - 1]) + .range([min, max]); + for (var i in this.color_maps[name].colors) domain.push(domain_scale(i)); + return d3.time.scale().domain(domain).range(this.color_maps[name].colors); + }, + // Deprecated get_color_map_ordinal: function (name: string, values: number[]) { return this.get_color_scale_ordinal(name, values); @@ -148,7 +163,7 @@ export default { setUpColorMapsForAllColumns: function ( name: string, - columns: { columnMin: number; columnMax: number; colorMap: string }[] + columns: { columnMin: number; columnMax: number; colorMap: string }[], ) { for (var j = 0; j != columns.length; ++j) { columns[j].colorMap = this.get_color_scale(name, columns[j].columnMin, columns[j].columnMax); diff --git a/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js b/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js index c36b7dbea..5e33dd0dc 100644 --- a/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js +++ b/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js @@ -42,6 +42,7 @@ import { selectXScaleAxis, selectYScaleAxis, selectLegendScaleAxis, + selectAxesVariables, } from "./selectors"; import PSHistogramWrapper from "./Components/PSHistogram"; import PSScatterplotGrid from "./Components/PSScatterplotGrid"; @@ -945,6 +946,8 @@ $.widget("parameter_image.scatterplot", { var self = this; if (typeof value == "number" && !isNaN(value)) return true; if (typeof value == "string" && value.trim() !== "") return true; + // Check for valid Date objects + if (value instanceof Date && !isNaN(value.valueOf())) return true; return false; }, @@ -1539,6 +1542,11 @@ $.widget("parameter_image.scatterplot", { continue; } let value = v[index]; + // Convert value to a date if v axis is Date & Time + const variable_scales = selectAxesVariables(window.store.getState()); + if (variable_scales[self.options.v_index] == "Date & Time") { + value = parseDate(value); + } if (!self._validateValue(value)) color = slycat_color_maps.get_null_color(window.store.getState().colormap); else if (!slycat_color_maps.isValueInColorscaleRange(value, self.options.colorscale)) @@ -1597,6 +1605,11 @@ $.widget("parameter_image.scatterplot", { continue; } let value = v[index]; + // Convert value to a date if v axis is Date & Time + const variable_scales = selectAxesVariables(window.store.getState()); + if (variable_scales[self.options.v_index] == "Date & Time") { + value = parseDate(value); + } if (!self._validateValue(value)) color = slycat_color_maps.get_null_color(window.store.getState().colormap); else if (!slycat_color_maps.isValueInColorscaleRange(value, self.options.colorscale)) diff --git a/web-server/plugins/slycat-parameter-image/js/parameter-image-table.ts b/web-server/plugins/slycat-parameter-image/js/parameter-image-table.ts index 89847d7eb..76ff36a00 100644 --- a/web-server/plugins/slycat-parameter-image/js/parameter-image-table.ts +++ b/web-server/plugins/slycat-parameter-image/js/parameter-image-table.ts @@ -26,6 +26,8 @@ import slycat_color_maps from "js/slycat-color-maps"; import watch from "redux-watch"; import _ from "lodash"; import { setXIndex, setYIndex, setVIndex, setMediaIndex } from "./actions"; +import { selectAxesVariables, selectVIndex } from "./selectors"; +import { parseDate } from "js/slycat-dates"; $.widget("parameter_image.table", { options: { @@ -60,6 +62,13 @@ $.widget("parameter_image.table", { function get_color(colorscale, value) { // console.debug(`table get_color, colorscale is %o and value is %o`, colorscale, value); + + // Convert value to a date if v axis scale type is Date & Time + const variable_scales = selectAxesVariables(window.store.getState()); + if (variable_scales[selectVIndex(window.store.getState())] == "Date & Time") { + value = parseDate(value); + } + // If the value is in the color scale's domain, just return the value from the colorscale if (slycat_color_maps.isValueInColorscaleRange(value, self.options.colorscale)) return colorscale(value); diff --git a/web-server/plugins/slycat-parameter-image/js/ui.js b/web-server/plugins/slycat-parameter-image/js/ui.js index 448ee637e..4905e70dd 100644 --- a/web-server/plugins/slycat-parameter-image/js/ui.js +++ b/web-server/plugins/slycat-parameter-image/js/ui.js @@ -100,6 +100,7 @@ import { selectScatterplotMarginTop, selectScatterplotMarginBottom, selectAxesVariables, + selectVExtent, } from "./selectors"; import React from "react"; @@ -611,6 +612,7 @@ $(document).ready(function () { { objectPath: "threeD_sync", callback: threeD_sync_changed }, { objectPath: "video_sync_time", callback: video_sync_time_changed }, { objectPath: "data.hidden_simulations", callback: hidden_simulations_changed }, + { objectPath: "axesVariables", callback: axes_scales_changed }, { objectPath: "data.manually_hidden_simulations", callback: manually_hidden_simulations_changed, @@ -1345,23 +1347,26 @@ $(document).ready(function () { filtered_v = v; } - if (v_type != "string") { - let axes_variables = store.getState().axesVariables[v_index]; - let v_axis_type = axes_variables ?? "Linear"; - // console.log(`v_axis_type is ${v_axis_type}`); + const axes_variable_scale = store.getState().axesVariables[v_index]; + const v_variable_scale_type = axes_variable_scale ?? "Linear"; + const colormap = store.getState().colormap; - // console.debug(`store.getState().colormap is %o`, store.getState().colormap); - const colormap = store.getState().colormap; + if (v_variable_scale_type == "Date & Time") { + const v_extent = _.cloneDeep(selectVExtent(store.getState())); + const min = v_extent[0]; + const max = v_extent[1]; + colorscale = slycat_color_maps.get_color_scale_time(colormap, min, max); + } else if (v_type != "string") { const min = custom_color_variable_range.min ?? d3.min(filtered_v); const max = custom_color_variable_range.max ?? d3.max(filtered_v); colorscale = - v_axis_type == "Log" + v_variable_scale_type == "Log" ? slycat_color_maps.get_color_scale_log(colormap, min, max) : slycat_color_maps.get_color_scale(colormap, min, max); } else { var uniqueValues = d3.set(filtered_v).values().sort(); colorscale = slycat_color_maps.get_color_scale_ordinal( - store.getState().colormap, + colormap, uniqueValues, ); } @@ -1560,6 +1565,13 @@ $(document).ready(function () { update_widgets_when_hidden_simulations_change(); } + function axes_scales_changed(axes_variables_value) { + axes_variables_scale = _.cloneDeep(axes_variables_value); + update_current_colorscale(); + $("#table").table("option", "colorscale", colorscale); + $("#scatterplot").scatterplot("option", "colorscale", colorscale); + } + function manually_hidden_simulations_changed(manually_hidden_simulations_value) { manually_hidden_simulations = _.cloneDeep(manually_hidden_simulations_value); bookmarker.updateState({ From c2fc411bbc3ff94731b3de69eb100ec24bba3beb Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Tue, 17 Dec 2024 12:57:02 -0800 Subject: [PATCH 5/8] fix: support log scales in redux selectors --- web-server/plugins/slycat-parameter-image/js/selectors.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/web-server/plugins/slycat-parameter-image/js/selectors.ts b/web-server/plugins/slycat-parameter-image/js/selectors.ts index 51a1f0afa..9bf5e8a7e 100644 --- a/web-server/plugins/slycat-parameter-image/js/selectors.ts +++ b/web-server/plugins/slycat-parameter-image/js/selectors.ts @@ -727,6 +727,9 @@ const getScale = ( case "Date & Time": scale = d3.scaleTime(); break; + case "Log": + scale = d3.scaleLog(); + break; default: // For numeric values, use a linear scale. if (columnType !== "string") scale = d3.scaleLinear(); @@ -783,7 +786,7 @@ const adjustScaleDomain = ( // Reverse the domain if requested even if no filtering was done. else if (reverse) { adjusted_scale.domain(adjusted_scale.domain().reverse()); - } + } return adjusted_scale; }; From b6ad3bd85693d3165edd61c40c15dcb1f8705345 Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Tue, 17 Dec 2024 13:02:42 -0800 Subject: [PATCH 6/8] build: minor npm package update --- package-lock.json | 907 ++++++++++++++++++++++++++-------------------- 1 file changed, 510 insertions(+), 397 deletions(-) diff --git a/package-lock.json b/package-lock.json index 477dc5374..69f10415a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -144,9 +144,9 @@ } }, "node_modules/@babel/cli": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.25.9.tgz", - "integrity": "sha512-I+02IfrTiSanpxJBlZQYb18qCxB6c2Ih371cVpfgIrPQrjAYkf45XxomTJOG8JBWX5GY35/+TmhCMdJ4ZPkL8Q==", + "version": "7.26.4", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.26.4.tgz", + "integrity": "sha512-+mORf3ezU3p3qr+82WvJSnQNE1GAYeoCfEv4fik6B5/2cvKZ75AX8oawWQdXtM9MmndooQj15Jr9kelRFWsuRw==", "dev": true, "license": "MIT", "dependencies": { @@ -2035,9 +2035,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.3.tgz", - "integrity": "sha512-yTmc8J+Sj8yLzwr4PD5Xb/WF3bOYu2C2OoSZPzbuqRm4n98XirsbzaX+GloeO376UnSYIYJ4NCanwV5/ugZkwA==", + "version": "7.26.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.4.tgz", + "integrity": "sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==", "license": "MIT", "dependencies": { "@babel/code-frame": "^7.26.2", @@ -2452,9 +2452,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", + "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", "dev": true, "license": "MIT", "engines": { @@ -2485,33 +2485,33 @@ } }, "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.1.tgz", - "integrity": "sha512-gbDz3TwRrIPT3i0cDfujhshnXO9z03IT1UKRIVi/VEjpNHtSBIP2o5XSm+e816FzzCFEzAxPw09Z13n20PaQJQ==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.2.tgz", + "integrity": "sha512-Zs+YeHUC5fkt7Mg1l6XTniei3k4bwG/yo3iFUtZWd/pMx9g3fdvkSK9E0FOC+++phXOka78uJcYb8JaFkW52Xg==", "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.1.tgz", - "integrity": "sha512-8dBIHbfsKlCk2jHQ9PoRBg2Z+4TwyE3vZICSnoDlnsHA6SiMlTwfmW6yX0lHsRmWJugkeb92sA0hZdkXJhuz+g==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.2.tgz", + "integrity": "sha512-yxtOBWDrdi5DD5o1pmVdq3WMCvnobT0LU6R8RyyVXPvFRd2o79/0NCuQoCjNTeZz9EzA9xS3JxNWfv54RIHFEA==", "license": "MIT", "dependencies": { - "@fortawesome/fontawesome-common-types": "6.7.1" + "@fortawesome/fontawesome-common-types": "6.7.2" }, "engines": { "node": ">=6" } }, "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.1.tgz", - "integrity": "sha512-BTKc0b0mgjWZ2UDKVgmwaE0qt0cZs6ITcDgjrti5f/ki7aF5zs+N91V6hitGo3TItCFtnKg6cUVGdTmBFICFRg==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.2.tgz", + "integrity": "sha512-GsBrnOzU8uj0LECDfD5zomZJIjrPhIlWU82AHwa2s40FKH+kcxQaBvBo3Z4TxyZHIyX8XTDxsyA33/Vx9eFuQA==", "license": "(CC-BY-4.0 AND MIT)", "dependencies": { - "@fortawesome/fontawesome-common-types": "6.7.1" + "@fortawesome/fontawesome-common-types": "6.7.2" }, "engines": { "node": ">=6" @@ -2996,9 +2996,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", "license": "MIT", "dependencies": { "@jridgewell/set-array": "^1.2.1", @@ -3071,9 +3071,9 @@ } }, "node_modules/@jsonjoy.com/json-pack": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.1.0.tgz", - "integrity": "sha512-zlQONA+msXPPwHWZMKFVS78ewFczIll5lXiVPwFPCZUsrOKdxc2AvxU1HoNBmMRhqDZUR9HkC3UOm+6pME6Xsg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.1.1.tgz", + "integrity": "sha512-osjeBqMJ2lb/j/M8NCPjs1ylqWIcTRTycIhVB5pt6LgzgeRSb0YRZ7j9RfA8wIUrsr/medIuhVyonXRZWLyfdw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -3548,9 +3548,9 @@ "license": "MIT" }, "node_modules/@reduxjs/toolkit": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.4.0.tgz", - "integrity": "sha512-wJZEuSKj14tvNfxiIiJws0tQN77/rDqucBq528ApebMIRHyWpCanJVQRxQ8WWZC19iCDKxDsGlbAir3F1layxA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.5.0.tgz", + "integrity": "sha512-awNe2oTodsZ6LmRqmkFhtb/KH03hUhxOamEQy411m3Njj3BbFvoBovxo4Q1cBWnV1ErprVj9MlF0UPXkng0eyg==", "license": "MIT", "dependencies": { "immer": "^10.0.3", @@ -3559,7 +3559,7 @@ "reselect": "^5.1.0" }, "peerDependencies": { - "react": "^16.9.0 || ^17.0.0 || ^18", + "react": "^16.9.0 || ^17.0.0 || ^18 || ^19", "react-redux": "^7.2.1 || ^8.1.3 || ^9.0.0" }, "peerDependenciesMeta": { @@ -4103,9 +4103,9 @@ } }, "node_modules/@types/geojson": { - "version": "7946.0.14", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.14.tgz", - "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==", + "version": "7946.0.15", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.15.tgz", + "integrity": "sha512-9oSxFzDCT2Rj6DfcHF8G++jxBKS7mBqXl5xrRW+Kbvjry6Uduya2iiwqHPhVXpasAVMBYKkEPGgKhd3+/HZ6xA==", "dev": true, "license": "MIT" }, @@ -4249,9 +4249,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.1.tgz", - "integrity": "sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ==", + "version": "22.10.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", + "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", "license": "MIT", "dependencies": { "undici-types": "~6.20.0" @@ -4268,9 +4268,9 @@ } }, "node_modules/@types/prop-types": { - "version": "15.7.13", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", - "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", + "version": "15.7.14", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz", + "integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==", "devOptional": true, "license": "MIT" }, @@ -4289,9 +4289,9 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "18.3.13", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.13.tgz", - "integrity": "sha512-ii/gswMmOievxAJed4PAHT949bpYjPKXvXo1v6cRB/kqc2ZR4n+SgyCyvyc5Fec5ez8VnUumI1Vk7j6fRyRogg==", + "version": "18.3.17", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.17.tgz", + "integrity": "sha512-opAQ5no6LqJNo9TqnxBKsgnkIYHozW9KSTlFVoSUJYh1Fl/sswkEoqIugRSm7tbh6pABtYjGAjW+GOS23j8qbw==", "devOptional": true, "license": "MIT", "dependencies": { @@ -4300,23 +4300,23 @@ } }, "node_modules/@types/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz", + "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==", "dev": true, "license": "MIT", - "dependencies": { - "@types/react": "*" + "peerDependencies": { + "@types/react": "^18.0.0" } }, "node_modules/@types/react-test-renderer": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-18.3.0.tgz", - "integrity": "sha512-HW4MuEYxfDbOHQsVlY/XtOvNHftCVEPhJF2pQXXwcUiUF+Oyb0usgp48HSgpK5rt8m9KZb22yqOeZm+rrVG8gw==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-18.3.1.tgz", + "integrity": "sha512-vAhnk0tG2eGa37lkU9+s5SoroCsRI08xnsWFiAXOuPH2jqzMbcXvKExXViPi1P5fIklDeCvXqyrdmipFaSkZrA==", "dev": true, "license": "MIT", "dependencies": { - "@types/react": "*" + "@types/react": "^18" } }, "node_modules/@types/redux-watch": { @@ -4422,9 +4422,9 @@ "license": "MIT" }, "node_modules/@types/use-sync-external-store": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", - "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.6.tgz", + "integrity": "sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==", "license": "MIT" }, "node_modules/@types/uuid": { @@ -4751,7 +4751,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, "license": "MIT", "dependencies": { "ajv": "^8.0.0" @@ -4769,7 +4768,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -4786,7 +4784,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, "license": "MIT" }, "node_modules/ajv-keywords": { @@ -4965,16 +4962,16 @@ } }, "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -4984,16 +4981,16 @@ } }, "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -5020,20 +5017,19 @@ } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" }, "engines": { "node": ">= 0.4" @@ -5511,9 +5507,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.24.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", + "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", "funding": [ { "type": "opencollective", @@ -5530,9 +5526,9 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.1" }, "bin": { @@ -5609,16 +5605,44 @@ } }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", + "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -5659,9 +5683,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001686", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001686.tgz", - "integrity": "sha512-Y7deg0Aergpa24M3qLC5xjNklnKnhsmSyR/V89dLZ1n0ucJIFNs7PgR2Yfa/Zf6W79SbBicgtGxZr2juHkEUIA==", + "version": "1.0.30001689", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001689.tgz", + "integrity": "sha512-CmeR2VBycfa+5/jOfnp/NpWPGd06nf1XYiefUvhXFfZE4GkRc9jv+eGPS4nT558WS/8lYCzV8SlANCIPvbWP1g==", "funding": [ { "type": "opencollective", @@ -6745,9 +6769,9 @@ "license": "MIT" }, "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -7161,6 +7185,20 @@ "tslib": "^2.0.3" } }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -7176,9 +7214,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.68", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.68.tgz", - "integrity": "sha512-FgMdJlma0OzUYlbrtZ4AeXjKxKPk6KT8WOP8BjcqxWtlg8qyJQjRzPJzUtUn5GBg1oQ26hFs7HOOHJMYiJRnvQ==", + "version": "1.5.74", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.74.tgz", + "integrity": "sha512-ck3//9RC+6oss/1Bh9tiAVFy5vfSKbRHAFh7Z3/eTRkEqJeWgymloShB17Vg3Z4nmDNp35vAd1BZ6CMW4Wt6Iw==", "license": "ISC" }, "node_modules/emittery": { @@ -7294,58 +7332,60 @@ } }, "node_modules/es-abstract": { - "version": "1.23.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", - "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "version": "1.23.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.6.tgz", + "integrity": "sha512-Ifco6n3yj2tMZDWNLyloZrytt9lqqlwvS83P3HtaETR0NUOYnIULGGHpktqYGObGy+8wc1okO25p8TjemhImvA==", "dev": true, "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", + "arraybuffer.prototype.slice": "^1.0.4", "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "data-view-buffer": "^1.0.1", "data-view-byte-length": "^1.0.1", "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.0.0", "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.7", + "get-intrinsic": "^1.2.6", "get-symbol-description": "^1.0.2", "globalthis": "^1.0.4", - "gopd": "^1.0.1", + "gopd": "^1.2.0", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", "hasown": "^2.0.2", - "internal-slot": "^1.0.7", + "internal-slot": "^1.1.0", "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", + "is-data-view": "^1.0.2", "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", + "is-regex": "^1.2.1", "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", + "is-string": "^1.1.1", "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.0.0", "object-inspect": "^1.13.3", "object-keys": "^1.1.1", "object.assign": "^4.1.5", "regexp.prototype.flags": "^1.5.3", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", + "safe-array-concat": "^1.1.3", + "safe-regex-test": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", "string.prototype.trimstart": "^1.0.8", "typed-array-buffer": "^1.0.2", "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", + "typed-array-byte-offset": "^1.0.3", + "typed-array-length": "^1.0.7", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "which-typed-array": "^1.1.16" }, "engines": { "node": ">= 0.4" @@ -7355,13 +7395,10 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, "engines": { "node": ">= 0.4" } @@ -7432,7 +7469,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0" @@ -7514,9 +7550,9 @@ } }, "node_modules/eslint": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", - "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", + "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", "dev": true, "license": "MIT", "dependencies": { @@ -7525,7 +7561,7 @@ "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.9.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.16.0", + "@eslint/js": "9.17.0", "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -7534,7 +7570,7 @@ "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.5", + "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.2.0", @@ -8022,7 +8058,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", - "dev": true, "license": "BSD-3-Clause" }, "node_modules/fastest-levenshtein": { @@ -8358,16 +8393,17 @@ } }, "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.7.tgz", + "integrity": "sha512-2g4x+HqTJKM9zcJqBSpjoRmdcPFtJM60J3xJisTQSXBWka5XqyBN/2tNUgma1mztTXyDuUsEtYe5qcs7xYzYQA==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" }, "engines": { "node": ">= 0.4" @@ -8405,16 +8441,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.6.tgz", + "integrity": "sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==", "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "dunder-proto": "^1.0.0", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -8447,15 +8488,15 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -8642,12 +8683,13 @@ } }, "node_modules/has-proto": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.1.0.tgz", - "integrity": "sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7" + "dunder-proto": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -8769,23 +8811,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/html-entities": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", - "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/mdevils" - }, - { - "type": "patreon", - "url": "https://patreon.com/mdevils" - } - ], - "license": "MIT" - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -9236,14 +9261,14 @@ "license": "ISC" }, "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -9287,13 +9312,13 @@ } }, "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", + "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -9303,13 +9328,14 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -9370,12 +9396,12 @@ } }, "node_modules/is-boolean-object": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.0.tgz", - "integrity": "sha512-kR5g0+dXf/+kXnqI+lu0URKYPKgICtHGGNCDSB10AaUFj3o/HkB3u7WfpRBJGFopxxY0oH3ux7ZsDjLtK7xqvw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.1.tgz", + "integrity": "sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.2", "has-tostringtag": "^1.0.2" }, "engines": { @@ -9398,9 +9424,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", + "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", "license": "MIT", "dependencies": { "hasown": "^2.0.2" @@ -9413,12 +9439,14 @@ } }, "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, "license": "MIT", "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", "is-typed-array": "^1.1.13" }, "engines": { @@ -9429,12 +9457,13 @@ } }, "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -9470,13 +9499,13 @@ } }, "node_modules/is-finalizationregistry": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.0.tgz", - "integrity": "sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7" + "call-bound": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -9602,12 +9631,12 @@ } }, "node_modules/is-number-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.0.tgz", - "integrity": "sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" }, "engines": { @@ -9680,13 +9709,13 @@ } }, "node_modules/is-regex": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.0.tgz", - "integrity": "sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "gopd": "^1.1.0", + "call-bound": "^1.0.2", + "gopd": "^1.2.0", "has-tostringtag": "^1.0.2", "hasown": "^2.0.2" }, @@ -9738,12 +9767,12 @@ } }, "node_modules/is-string": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.0.tgz", - "integrity": "sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" }, "engines": { @@ -9754,14 +9783,14 @@ } }, "node_modules/is-symbol": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.0.tgz", - "integrity": "sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "has-symbols": "^1.0.3", - "safe-regex-test": "^1.0.3" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -9771,13 +9800,13 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.14.tgz", + "integrity": "sha512-lQUsHzcTb7rH57dajbOuZEuMDXjs9f04ZloER4QOpjpKcaw4f98BRUrs8aiO9Z4G7i7B0Xhgarg6SCgYcYi8Nw==", "dev": true, "license": "MIT", "dependencies": { - "which-typed-array": "^1.1.14" + "which-typed-array": "^1.1.16" }, "engines": { "node": ">= 0.4" @@ -9799,26 +9828,29 @@ } }, "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.0.tgz", + "integrity": "sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -9974,17 +10006,18 @@ } }, "node_modules/iterator.prototype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", - "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.4.tgz", + "integrity": "sha512-x4WH0BWmrMmg4oHHl+duwubhrvczGlyuGAZu3nvrf0UXOfPu8IhZObFEr7DE/iv01YgVZrsOiRcqw2srkKEDIA==", "dev": true, "license": "MIT", "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "reflect.getprototypeof": "^1.0.8", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -10715,9 +10748,9 @@ } }, "node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -11073,6 +11106,15 @@ "tmpl": "1.0.5" } }, + "node_modules/math-intrinsics": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.0.0.tgz", + "integrity": "sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -11084,9 +11126,9 @@ } }, "node_modules/memfs": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.14.1.tgz", - "integrity": "sha512-Fq5CMEth+2iprLJ5mNizRcWuiwRZYjNkUD0zKk224jZunE9CRacTRDK8QLALbMBlNX2y3nY6lKZbesCwDwacig==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.15.0.tgz", + "integrity": "sha512-q9MmZXd2rRWHS6GU3WEm3HyiXZyyoA1DqdOhEq0lxPBmKb5S7IAOwX0RgUCwJfqjelDCySa5h8ujOy24LqsWcw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11428,9 +11470,9 @@ "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", "license": "MIT" }, "node_modules/node-web-streams": { @@ -11809,6 +11851,12 @@ "node": ">=6" } }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "license": "(MIT AND Zlib)" + }, "node_modules/papaparse": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz", @@ -12318,9 +12366,9 @@ } }, "node_modules/postcss-modules-local-by-default": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.1.0.tgz", - "integrity": "sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", "dev": true, "license": "MIT", "dependencies": { @@ -12673,17 +12721,17 @@ "license": "MIT" }, "node_modules/react-redux": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.1.2.tgz", - "integrity": "sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.2.0.tgz", + "integrity": "sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==", "license": "MIT", "dependencies": { - "@types/use-sync-external-store": "^0.0.3", - "use-sync-external-store": "^1.0.0" + "@types/use-sync-external-store": "^0.0.6", + "use-sync-external-store": "^1.4.0" }, "peerDependencies": { - "@types/react": "^18.2.25", - "react": "^18.0", + "@types/react": "^18.2.25 || ^19", + "react": "^18.0 || ^19", "redux": "^5.0.0" }, "peerDependenciesMeta": { @@ -12805,19 +12853,20 @@ } }, "node_modules/reflect.getprototypeof": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.7.tgz", - "integrity": "sha512-bMvFGIUKlc/eSfXNX+aZ+EL95/EgZzuwA0OBPTbZZDEJw/0AkentjMuM1oiRfwHrshqk4RzdgiTg5CcDalXN5g==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.8.tgz", + "integrity": "sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", + "dunder-proto": "^1.0.0", "es-abstract": "^1.23.5", "es-errors": "^1.3.0", "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "which-builtin-type": "^1.1.4" + "gopd": "^1.2.0", + "which-builtin-type": "^1.2.0" }, "engines": { "node": ">= 0.4" @@ -12912,6 +12961,18 @@ "regjsparser": "bin/parser" } }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", @@ -12950,7 +13011,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -12970,12 +13030,12 @@ "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.9", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz", + "integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==", "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -13104,15 +13164,16 @@ "license": "BSD-3-Clause" }, "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, "engines": { @@ -13143,14 +13204,14 @@ "license": "MIT" }, "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "is-regex": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -13166,9 +13227,9 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.82.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.82.0.tgz", - "integrity": "sha512-j4GMCTa8elGyN9A7x7bEglx0VgSpNUG4W4wNedQ33wSMdnkqQCT8HTwOaVSV4e6yQovcu/3Oc4coJP/l0xhL2Q==", + "version": "1.83.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.0.tgz", + "integrity": "sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw==", "dev": true, "license": "MIT", "dependencies": { @@ -13228,9 +13289,9 @@ } }, "node_modules/sass/node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.2.tgz", + "integrity": "sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==", "dev": true, "license": "MIT", "dependencies": { @@ -13275,10 +13336,9 @@ } }, "node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", @@ -13287,7 +13347,7 @@ "ajv-keywords": "^5.1.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 10.13.0" }, "funding": { "type": "opencollective", @@ -13298,7 +13358,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -13315,7 +13374,6 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3" @@ -13328,7 +13386,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, "license": "MIT" }, "node_modules/seedrandom": { @@ -13671,15 +13728,69 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -13907,12 +14018,13 @@ } }, "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "license": "MIT", "dependencies": { - "internal-slot": "^1.0.4" + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -14005,16 +14117,19 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -14024,16 +14139,20 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -14164,9 +14283,9 @@ } }, "node_modules/terser": { - "version": "5.36.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.36.0.tgz", - "integrity": "sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==", + "version": "5.37.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.37.0.tgz", + "integrity": "sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==", "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -14182,16 +14301,16 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", - "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz", + "integrity": "sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==", "license": "MIT", "dependencies": { - "@jridgewell/trace-mapping": "^0.3.20", + "@jridgewell/trace-mapping": "^0.3.25", "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" }, "engines": { "node": ">= 10.13.0" @@ -14229,24 +14348,6 @@ "node": ">= 10.13.0" } }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/terser-webpack-plugin/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", @@ -14471,17 +14572,17 @@ } }, "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.2.tgz", + "integrity": "sha512-adiFrvWBKqevPpbl+LErGnoS7juikX0VLSK+s4rcUEqAv2gClx0DB/g0gMUQXMZiG2RhUDUFgQpyXta4AKG9VA==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -14548,16 +14649,19 @@ } }, "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bound": "^1.0.3", "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -14725,12 +14829,21 @@ } }, "node_modules/use-sync-external-store": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", - "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz", + "integrity": "sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==", "license": "MIT", "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/utif": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/utif/-/utif-3.1.0.tgz", + "integrity": "sha512-WEo4D/xOvFW53K5f5QTaTbbiORcm2/pCL9P6qmJnup+17eYfKaEhDeX9PeQkuyEoIxlbGklDuGl8xwuXYMrrXQ==", + "license": "MIT", + "dependencies": { + "pako": "^1.0.5" } }, "node_modules/util-deprecate": { @@ -14795,9 +14908,9 @@ } }, "node_modules/vtk.js": { - "version": "32.7.2", - "resolved": "https://registry.npmjs.org/vtk.js/-/vtk.js-32.7.2.tgz", - "integrity": "sha512-u7STaXjr0qL1NJHTYM37S3dpZ+H4/4Ohn3CjTOUESin7VAVecUrHB1N2HWm5WVkAEuZM6K8TybVFrJ0RLlfcQA==", + "version": "32.8.1", + "resolved": "https://registry.npmjs.org/vtk.js/-/vtk.js-32.8.1.tgz", + "integrity": "sha512-2fpas0DcaZjpptuapqQRFbXjIZ1uZU2hXdCghy1zKrI1fgYtZ+nrnrz9HcsW1Qrg+hSKX0LtW47HgdJ+qMjGnQ==", "license": "BSD-3-Clause", "dependencies": { "@babel/runtime": "7.22.11", @@ -14813,6 +14926,7 @@ "shelljs": "0.8.5", "spark-md5": "3.0.2", "stream-browserify": "3.0.0", + "utif": "3.1.0", "webworker-promise": "0.5.0", "worker-loader": "3.0.8", "xmlbuilder2": "3.0.2" @@ -14910,9 +15024,9 @@ "license": "BSD-2-Clause" }, "node_modules/webpack": { - "version": "5.97.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.0.tgz", - "integrity": "sha512-CWT8v7ShSfj7tGs4TLRtaOLmOCPWhoKEvp+eA7FVx8Xrjb3XfT0aXdxDItnRZmE8sHcH+a8ayDrJCOjXKxVFfQ==", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", @@ -15117,9 +15231,9 @@ } }, "node_modules/webpack-dev-server": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.1.0.tgz", - "integrity": "sha512-aQpaN81X6tXie1FoOB7xlMfCsN19pSvRAeYUHOdFWOlhpQ/LlbfTqYwwmEDFV0h8GGuqmCmKmT+pxcUV/Nt2gQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.0.tgz", + "integrity": "sha512-90SqqYXA2SK36KcT6o1bvwvZfJFcmoamqeJY7+boioffX9g9C0wjjJRGUrQIuh43pb0ttX7+ssavmj/WN2RHtA==", "dev": true, "license": "MIT", "dependencies": { @@ -15136,10 +15250,9 @@ "colorette": "^2.0.10", "compression": "^1.7.4", "connect-history-api-fallback": "^2.0.0", - "express": "^4.19.2", + "express": "^4.21.2", "graceful-fs": "^4.2.6", - "html-entities": "^2.4.0", - "http-proxy-middleware": "^2.0.3", + "http-proxy-middleware": "^2.0.7", "ipaddr.js": "^2.1.0", "launch-editor": "^2.6.1", "open": "^10.0.3", @@ -15311,16 +15424,16 @@ } }, "node_modules/which-boxed-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.0.tgz", - "integrity": "sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "license": "MIT", "dependencies": { "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.0", - "is-number-object": "^1.1.0", - "is-string": "^1.1.0", - "is-symbol": "^1.1.0" + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -15330,25 +15443,25 @@ } }, "node_modules/which-builtin-type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.0.tgz", - "integrity": "sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.2", "function.prototype.name": "^1.1.6", "has-tostringtag": "^1.0.2", "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", + "is-date-object": "^1.1.0", "is-finalizationregistry": "^1.1.0", "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", + "is-regex": "^1.2.1", "is-weakref": "^1.0.2", "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", + "which-boxed-primitive": "^1.1.0", "which-collection": "^1.0.2", - "which-typed-array": "^1.1.15" + "which-typed-array": "^1.1.16" }, "engines": { "node": ">= 0.4" From 64478bd998305f4b60a97a61af7eaabc126f958f Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Tue, 17 Dec 2024 13:05:12 -0800 Subject: [PATCH 7/8] docs: update dependency documentation --- ...vascript_dependencies_in_node_modules.json | 190 +++++++--------- ...t_dependencies_in_node_modules_columns.txt | 208 +++++++++--------- 2 files changed, 181 insertions(+), 217 deletions(-) diff --git a/docs/javascript_dependencies_in_node_modules.json b/docs/javascript_dependencies_in_node_modules.json index 95b804245..2c30ed986 100644 --- a/docs/javascript_dependencies_in_node_modules.json +++ b/docs/javascript_dependencies_in_node_modules.json @@ -6,28 +6,28 @@ }, { "name": "@babel/runtime", - "version": "7.23.9", - "url": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz" + "version": "7.26.0", + "url": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz" }, { "name": "@fortawesome/fontawesome-svg-core", - "version": "6.5.1", - "url": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.1.tgz" + "version": "6.7.2", + "url": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.2.tgz" }, { "name": "@fortawesome/free-solid-svg-icons", - "version": "6.5.1", - "url": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.1.tgz" + "version": "6.7.2", + "url": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.2.tgz" }, { "name": "@fortawesome/react-fontawesome", - "version": "0.2.0", - "url": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz" + "version": "0.2.2", + "url": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.2.tgz" }, { "name": "@reduxjs/toolkit", - "version": "1.9.7", - "url": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz" + "version": "2.5.0", + "url": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.5.0.tgz" }, { "name": "bootstrap", @@ -36,8 +36,8 @@ }, { "name": "chrono-node", - "version": "2.7.5", - "url": "https://registry.npmjs.org/chrono-node/-/chrono-node-2.7.5.tgz" + "version": "2.7.7", + "url": "https://registry.npmjs.org/chrono-node/-/chrono-node-2.7.7.tgz" }, { "name": "combined-reduction", @@ -46,8 +46,8 @@ }, { "name": "css-loader", - "version": "6.9.1", - "url": "https://registry.npmjs.org/css-loader/-/css-loader-6.9.1.tgz" + "version": "7.1.2", + "url": "https://registry.npmjs.org/css-loader/-/css-loader-7.1.2.tgz" }, { "name": "d3", @@ -126,8 +126,8 @@ }, { "name": "d3-geo", - "version": "3.1.0", - "url": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz" + "version": "3.1.1", + "url": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz" }, { "name": "d3-hierarchy", @@ -166,8 +166,8 @@ }, { "name": "d3-scale-chromatic", - "version": "3.0.0", - "url": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz" + "version": "3.1.0", + "url": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz" }, { "name": "d3-selection", @@ -206,18 +206,18 @@ }, { "name": "d3fc", - "version": "15.2.6", - "url": "https://registry.npmjs.org/d3fc/-/d3fc-15.2.6.tgz" + "version": "15.2.13", + "url": "https://registry.npmjs.org/d3fc/-/d3fc-15.2.13.tgz" }, { "name": "d3v7", - "version": "7.8.5", - "url": "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz" + "version": "7.9.0", + "url": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz" }, { "name": "dayjs", - "version": "1.11.10", - "url": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz" + "version": "1.11.13", + "url": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz" }, { "name": "deep-update", @@ -226,8 +226,8 @@ }, { "name": "define-data-property", - "version": "1.1.1", - "url": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz" + "version": "1.1.4", + "url": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz" }, { "name": "define-properties", @@ -239,6 +239,16 @@ "version": "5.0.1", "url": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz" }, + { + "name": "es-define-property", + "version": "1.0.1", + "url": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz" + }, + { + "name": "es-errors", + "version": "1.3.0", + "url": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz" + }, { "name": "fast-deep-equal", "version": "3.1.3", @@ -254,75 +264,30 @@ "version": "4.7.0", "url": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz" }, - { - "name": "function-bind", - "version": "1.1.2", - "url": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" - }, - { - "name": "get-intrinsic", - "version": "1.2.2", - "url": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz" - }, { "name": "gl-matrix", "version": "3.4.3", "url": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz" }, - { - "name": "globalthis", - "version": "1.0.3", - "url": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" - }, { "name": "gopd", - "version": "1.0.1", - "url": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" + "version": "1.2.0", + "url": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz" }, { "name": "has-property-descriptors", - "version": "1.0.1", - "url": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz" - }, - { - "name": "has-proto", - "version": "1.0.1", - "url": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz" - }, - { - "name": "has-symbols", - "version": "1.0.3", - "url": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" - }, - { - "name": "hasown", - "version": "2.0.0", - "url": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz" + "version": "1.0.2", + "url": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz" }, { "name": "he", "version": "1.2.0", "url": "https://registry.npmjs.org/he/-/he-1.2.0.tgz" }, - { - "name": "hoist-non-react-statics", - "version": "3.3.2", - "url": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" - }, - { - "name": "hoist-non-react-statics/node_modules/react-is", - "version": "16.13.1", - "url": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - }, - { - "name": "html-loader", - "version": "4.2.0", - "url": "https://registry.npmjs.org/html-loader/-/html-loader-4.2.0.tgz" - }, { "name": "immer", - "version": "9.0.21", - "url": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz" + "version": "10.1.1", + "url": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz" }, { "name": "immutability-helper", @@ -351,8 +316,8 @@ }, { "name": "jquery-ui", - "version": "1.13.2", - "url": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.13.2.tgz" + "version": "1.14.1", + "url": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.14.1.tgz" }, { "name": "jquery.scrollintoview", @@ -421,28 +386,23 @@ }, { "name": "react", - "version": "18.2.0", - "url": "https://registry.npmjs.org/react/-/react-18.2.0.tgz" + "version": "18.3.1", + "url": "https://registry.npmjs.org/react/-/react-18.3.1.tgz" }, { "name": "react-dom", - "version": "18.2.0", - "url": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" - }, - { - "name": "react-is", - "version": "18.2.0", - "url": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" + "version": "18.3.1", + "url": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz" }, { "name": "react-redux", - "version": "8.1.3", - "url": "https://registry.npmjs.org/react-redux/-/react-redux-8.1.3.tgz" + "version": "9.2.0", + "url": "https://registry.npmjs.org/react-redux/-/react-redux-9.2.0.tgz" }, { "name": "redux", - "version": "4.2.1", - "url": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz" + "version": "5.0.1", + "url": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz" }, { "name": "redux-logger", @@ -456,8 +416,8 @@ }, { "name": "redux-thunk", - "version": "2.4.2", - "url": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz" + "version": "3.1.0", + "url": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz" }, { "name": "redux-watch", @@ -466,8 +426,8 @@ }, { "name": "reselect", - "version": "4.1.8", - "url": "https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz" + "version": "5.1.1", + "url": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz" }, { "name": "robust-predicates", @@ -476,8 +436,8 @@ }, { "name": "scheduler", - "version": "0.23.0", - "url": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz" + "version": "0.23.2", + "url": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz" }, { "name": "seedrandom", @@ -486,8 +446,13 @@ }, { "name": "slickgrid", - "version": "3.0.4", - "url": "https://registry.npmjs.org/slickgrid/-/slickgrid-3.0.4.tgz" + "version": "5.14.3", + "url": "https://registry.npmjs.org/slickgrid/-/slickgrid-5.14.3.tgz" + }, + { + "name": "sortablejs", + "version": "1.15.6", + "url": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.6.tgz" }, { "name": "spark-md5", @@ -496,13 +461,13 @@ }, { "name": "style-loader", - "version": "3.3.4", - "url": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz" + "version": "4.0.0", + "url": "https://registry.npmjs.org/style-loader/-/style-loader-4.0.0.tgz" }, { "name": "three", - "version": "0.160.1", - "url": "https://registry.npmjs.org/three/-/three-0.160.1.tgz" + "version": "0.171.0", + "url": "https://registry.npmjs.org/three/-/three-0.171.0.tgz" }, { "name": "urijs", @@ -511,18 +476,23 @@ }, { "name": "use-sync-external-store", - "version": "1.2.0", - "url": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz" + "version": "1.4.0", + "url": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz" }, { "name": "uuid", - "version": "9.0.1", - "url": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz" + "version": "11.0.3", + "url": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz" }, { "name": "vtk.js", - "version": "27.5.0", - "url": "https://registry.npmjs.org/vtk.js/-/vtk.js-27.5.0.tgz" + "version": "32.8.1", + "url": "https://registry.npmjs.org/vtk.js/-/vtk.js-32.8.1.tgz" + }, + { + "name": "vtk.js/node_modules/globalthis", + "version": "1.0.3", + "url": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" }, { "name": "xmlbuilder2", diff --git a/docs/javascript_dependencies_in_node_modules_columns.txt b/docs/javascript_dependencies_in_node_modules_columns.txt index 172978ca0..406122824 100644 --- a/docs/javascript_dependencies_in_node_modules_columns.txt +++ b/docs/javascript_dependencies_in_node_modules_columns.txt @@ -1,107 +1,101 @@ -@asielick/knockout-projections 1.1.0 https://registry.npmjs.org/@asielick/knockout-projections/-/knockout-projections-1.1.0.tgz -@babel/runtime 7.23.9 https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz -@fortawesome/fontawesome-svg-core 6.5.1 https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.1.tgz -@fortawesome/free-solid-svg-icons 6.5.1 https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.1.tgz -@fortawesome/react-fontawesome 0.2.0 https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz -@reduxjs/toolkit 1.9.7 https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz -bootstrap 4.6.2 https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz -chrono-node 2.7.5 https://registry.npmjs.org/chrono-node/-/chrono-node-2.7.5.tgz -combined-reduction 1.1.0 https://registry.npmjs.org/combined-reduction/-/combined-reduction-1.1.0.tgz -css-loader 6.9.1 https://registry.npmjs.org/css-loader/-/css-loader-6.9.1.tgz -d3 3.5.17 https://registry.npmjs.org/d3/-/d3-3.5.17.tgz -d3-array 3.2.4 https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz -d3-axis 3.0.0 https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz -d3-brush 3.0.0 https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz -d3-chord 3.0.1 https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz -d3-color 3.1.0 https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz -d3-contour 4.0.2 https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz -d3-delaunay 6.0.4 https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz -d3-dispatch 3.0.1 https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz -d3-drag 3.0.0 https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz -d3-dsv 3.0.1 https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz -d3-ease 3.0.1 https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz -d3-fetch 3.0.1 https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz -d3-force 3.0.0 https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz -d3-format 3.1.0 https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz -d3-geo 3.1.0 https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz -d3-hierarchy 3.1.2 https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz -d3-interpolate 3.0.1 https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz -d3-path 3.1.0 https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz -d3-polygon 3.0.1 https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz -d3-quadtree 3.0.1 https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz -d3-random 3.0.1 https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz -d3-scale 4.0.2 https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz -d3-scale-chromatic 3.0.0 https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz -d3-selection 3.0.0 https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz -d3-shape 3.2.0 https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz -d3-time 3.1.0 https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz -d3-time-format 4.1.0 https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz -d3-timer 3.0.1 https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz -d3-transition 3.0.1 https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz -d3-zoom 3.0.0 https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz -d3fc 15.2.6 https://registry.npmjs.org/d3fc/-/d3fc-15.2.6.tgz -d3v7 7.8.5 https://registry.npmjs.org/d3/-/d3-7.8.5.tgz -dayjs 1.11.10 https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz -deep-update 1.3.4 https://registry.npmjs.org/deep-update/-/deep-update-1.3.4.tgz -define-data-property 1.1.1 https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz -define-properties 1.2.1 https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz -delaunator 5.0.1 https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz -fast-deep-equal 3.1.3 https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz -fflate 0.7.3 https://registry.npmjs.org/fflate/-/fflate-0.7.3.tgz -font-awesome 4.7.0 https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz -function-bind 1.1.2 https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz -get-intrinsic 1.2.2 https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz -gl-matrix 3.4.3 https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz -globalthis 1.0.3 https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz -gopd 1.0.1 https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz -has-property-descriptors 1.0.1 https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz -has-proto 1.0.1 https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz -has-symbols 1.0.3 https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz -hasown 2.0.0 https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz -he 1.2.0 https://registry.npmjs.org/he/-/he-1.2.0.tgz -hoist-non-react-statics 3.3.2 https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz -hoist-non-react-statics/node_modules/react-is 16.13.1 https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz -html-loader 4.2.0 https://registry.npmjs.org/html-loader/-/html-loader-4.2.0.tgz -immer 9.0.21 https://registry.npmjs.org/immer/-/immer-9.0.21.tgz -immutability-helper 2.9.1 https://registry.npmjs.org/immutability-helper/-/immutability-helper-2.9.1.tgz -internmap 2.0.3 https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz -invariant 2.2.4 https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz -jquery 3.7.1 https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz -jquery-knob 1.2.11 https://registry.npmjs.org/jquery-knob/-/jquery-knob-1.2.11.tgz -jquery-ui 1.13.2 https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.13.2.tgz -jquery.scrollintoview 1.9.4 https://registry.npmjs.org/jquery.scrollintoview/-/jquery.scrollintoview-1.9.4.tgz -knockout 3.5.1 https://registry.npmjs.org/knockout/-/knockout-3.5.1.tgz -knockout-mapping 2.6.0 https://registry.npmjs.org/knockout-mapping/-/knockout-mapping-2.6.0.tgz -layout-jquery3 1.8.5 https://registry.npmjs.org/layout-jquery3/-/layout-jquery3-1.8.5.tgz -lodash 4.17.21 https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz -lodash.debounce 4.0.8 https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz -lodash.throttle 4.0.1 https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.0.1.tgz -object-keys 1.1.1 https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz -object-path 0.11.8 https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz -papaparse 5.4.1 https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz -parse-css-color 0.2.1 https://registry.npmjs.org/parse-css-color/-/parse-css-color-0.2.1.tgz -popper.js 1.16.1 https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz -prop-types 15.8.1 https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz -react 18.2.0 https://registry.npmjs.org/react/-/react-18.2.0.tgz -react-dom 18.2.0 https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz -react-is 18.2.0 https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz -react-redux 8.1.3 https://registry.npmjs.org/react-redux/-/react-redux-8.1.3.tgz -redux 4.2.1 https://registry.npmjs.org/redux/-/redux-4.2.1.tgz -redux-logger 3.0.6 https://registry.npmjs.org/redux-logger/-/redux-logger-3.0.6.tgz -redux-throttle 0.1.1 https://registry.npmjs.org/redux-throttle/-/redux-throttle-0.1.1.tgz -redux-thunk 2.4.2 https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz -redux-watch 1.2.0 https://registry.npmjs.org/redux-watch/-/redux-watch-1.2.0.tgz -reselect 4.1.8 https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz -robust-predicates 3.0.2 https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz -scheduler 0.23.0 https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz -seedrandom 3.0.5 https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz -slickgrid 3.0.4 https://registry.npmjs.org/slickgrid/-/slickgrid-3.0.4.tgz -spark-md5 3.0.2 https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz -style-loader 3.3.4 https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz -three 0.160.1 https://registry.npmjs.org/three/-/three-0.160.1.tgz -urijs 1.19.11 https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz -use-sync-external-store 1.2.0 https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz -uuid 9.0.1 https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz -vtk.js 27.5.0 https://registry.npmjs.org/vtk.js/-/vtk.js-27.5.0.tgz -xmlbuilder2 3.0.2 https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz -zipinfo.js 1.0.0 https://registry.npmjs.org/zipinfo.js/-/zipinfo.js-1.0.0.tgz +@asielick/knockout-projections 1.1.0 https://registry.npmjs.org/@asielick/knockout-projections/-/knockout-projections-1.1.0.tgz +@babel/runtime 7.26.0 https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz +@fortawesome/fontawesome-svg-core 6.7.2 https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.2.tgz +@fortawesome/free-solid-svg-icons 6.7.2 https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.2.tgz +@fortawesome/react-fontawesome 0.2.2 https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.2.tgz +@reduxjs/toolkit 2.5.0 https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.5.0.tgz +bootstrap 4.6.2 https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz +chrono-node 2.7.7 https://registry.npmjs.org/chrono-node/-/chrono-node-2.7.7.tgz +combined-reduction 1.1.0 https://registry.npmjs.org/combined-reduction/-/combined-reduction-1.1.0.tgz +css-loader 7.1.2 https://registry.npmjs.org/css-loader/-/css-loader-7.1.2.tgz +d3 3.5.17 https://registry.npmjs.org/d3/-/d3-3.5.17.tgz +d3-array 3.2.4 https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz +d3-axis 3.0.0 https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz +d3-brush 3.0.0 https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz +d3-chord 3.0.1 https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz +d3-color 3.1.0 https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz +d3-contour 4.0.2 https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz +d3-delaunay 6.0.4 https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz +d3-dispatch 3.0.1 https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz +d3-drag 3.0.0 https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz +d3-dsv 3.0.1 https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz +d3-ease 3.0.1 https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz +d3-fetch 3.0.1 https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz +d3-force 3.0.0 https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz +d3-format 3.1.0 https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz +d3-geo 3.1.1 https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz +d3-hierarchy 3.1.2 https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz +d3-interpolate 3.0.1 https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz +d3-path 3.1.0 https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz +d3-polygon 3.0.1 https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz +d3-quadtree 3.0.1 https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz +d3-random 3.0.1 https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz +d3-scale 4.0.2 https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz +d3-scale-chromatic 3.1.0 https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz +d3-selection 3.0.0 https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz +d3-shape 3.2.0 https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz +d3-time 3.1.0 https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz +d3-time-format 4.1.0 https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz +d3-timer 3.0.1 https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz +d3-transition 3.0.1 https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz +d3-zoom 3.0.0 https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz +d3fc 15.2.13 https://registry.npmjs.org/d3fc/-/d3fc-15.2.13.tgz +d3v7 7.9.0 https://registry.npmjs.org/d3/-/d3-7.9.0.tgz +dayjs 1.11.13 https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz +deep-update 1.3.4 https://registry.npmjs.org/deep-update/-/deep-update-1.3.4.tgz +define-data-property 1.1.4 https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz +define-properties 1.2.1 https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz +delaunator 5.0.1 https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz +es-define-property 1.0.1 https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz +es-errors 1.3.0 https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz +fast-deep-equal 3.1.3 https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz +fflate 0.7.3 https://registry.npmjs.org/fflate/-/fflate-0.7.3.tgz +font-awesome 4.7.0 https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz +gl-matrix 3.4.3 https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz +gopd 1.2.0 https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz +has-property-descriptors 1.0.2 https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz +he 1.2.0 https://registry.npmjs.org/he/-/he-1.2.0.tgz +immer 10.1.1 https://registry.npmjs.org/immer/-/immer-10.1.1.tgz +immutability-helper 2.9.1 https://registry.npmjs.org/immutability-helper/-/immutability-helper-2.9.1.tgz +internmap 2.0.3 https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz +invariant 2.2.4 https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz +jquery 3.7.1 https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz +jquery-knob 1.2.11 https://registry.npmjs.org/jquery-knob/-/jquery-knob-1.2.11.tgz +jquery-ui 1.14.1 https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.14.1.tgz +jquery.scrollintoview 1.9.4 https://registry.npmjs.org/jquery.scrollintoview/-/jquery.scrollintoview-1.9.4.tgz +knockout 3.5.1 https://registry.npmjs.org/knockout/-/knockout-3.5.1.tgz +knockout-mapping 2.6.0 https://registry.npmjs.org/knockout-mapping/-/knockout-mapping-2.6.0.tgz +layout-jquery3 1.8.5 https://registry.npmjs.org/layout-jquery3/-/layout-jquery3-1.8.5.tgz +lodash 4.17.21 https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz +lodash.debounce 4.0.8 https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz +lodash.throttle 4.0.1 https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.0.1.tgz +object-keys 1.1.1 https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz +object-path 0.11.8 https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz +papaparse 5.4.1 https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz +parse-css-color 0.2.1 https://registry.npmjs.org/parse-css-color/-/parse-css-color-0.2.1.tgz +popper.js 1.16.1 https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz +prop-types 15.8.1 https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz +react 18.3.1 https://registry.npmjs.org/react/-/react-18.3.1.tgz +react-dom 18.3.1 https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz +react-redux 9.2.0 https://registry.npmjs.org/react-redux/-/react-redux-9.2.0.tgz +redux 5.0.1 https://registry.npmjs.org/redux/-/redux-5.0.1.tgz +redux-logger 3.0.6 https://registry.npmjs.org/redux-logger/-/redux-logger-3.0.6.tgz +redux-throttle 0.1.1 https://registry.npmjs.org/redux-throttle/-/redux-throttle-0.1.1.tgz +redux-thunk 3.1.0 https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz +redux-watch 1.2.0 https://registry.npmjs.org/redux-watch/-/redux-watch-1.2.0.tgz +reselect 5.1.1 https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz +robust-predicates 3.0.2 https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz +scheduler 0.23.2 https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz +seedrandom 3.0.5 https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz +slickgrid 5.14.3 https://registry.npmjs.org/slickgrid/-/slickgrid-5.14.3.tgz +sortablejs 1.15.6 https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.6.tgz +spark-md5 3.0.2 https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz +style-loader 4.0.0 https://registry.npmjs.org/style-loader/-/style-loader-4.0.0.tgz +three 0.171.0 https://registry.npmjs.org/three/-/three-0.171.0.tgz +urijs 1.19.11 https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz +use-sync-external-store 1.4.0 https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz +uuid 11.0.3 https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz +vtk.js 32.8.1 https://registry.npmjs.org/vtk.js/-/vtk.js-32.8.1.tgz +vtk.js/node_modules/globalthis 1.0.3 https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz +xmlbuilder2 3.0.2 https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz +zipinfo.js 1.0.0 https://registry.npmjs.org/zipinfo.js/-/zipinfo.js-1.0.0.tgz From e33ca0d5450304fb88279a1737c2233a1efa9eb5 Mon Sep 17 00:00:00 2001 From: "Alex M. Sielicki" Date: Tue, 17 Dec 2024 16:46:11 -0800 Subject: [PATCH 8/8] fix: improve axis label icon placement and log scale color coding --- web-server/js/slycat-color-maps-methods.ts | 6 ++++++ .../js/parameter-image-scatterplot.js | 21 +++++++++++-------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/web-server/js/slycat-color-maps-methods.ts b/web-server/js/slycat-color-maps-methods.ts index c14248c9f..6cf88119b 100644 --- a/web-server/js/slycat-color-maps-methods.ts +++ b/web-server/js/slycat-color-maps-methods.ts @@ -109,6 +109,12 @@ export default { for (const index of this.color_maps[colormap].colors.keys()) { domain.push(domain_scale.invert(index + 1)); } + + // Replace first and last values with rangeMin and rangeMax + // because rounding errors in .invert() sometimes cause the first and last values to be out of range. + domain[0] = rangeMin; + domain[domain.length - 1] = rangeMax; + return d3.scale.log().domain(domain).range(this.color_maps[colormap].colors); }, diff --git a/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js b/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js index 5e33dd0dc..4e387019f 100644 --- a/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js +++ b/web-server/plugins/slycat-parameter-image/js/parameter-image-scatterplot.js @@ -525,6 +525,7 @@ $.widget("parameter_image.scatterplot", { update_x_label: true, update_y: true, update_y_label: true, + update_v_label: true, update_leaders: true, render_data: true, render_selection: true, @@ -1421,6 +1422,7 @@ $.widget("parameter_image.scatterplot", { // Get the bounding box of the text to position the icon const bbox = label.node().getBBox(); const fontSize = self.options.axes_font_size; + const xOffset = x + bbox.width + Number(fontSize) / 2; self.x_axis_layer .append("text") @@ -1430,7 +1432,8 @@ $.widget("parameter_image.scatterplot", { .attr("data-toggle", "popover") .attr("data-trigger", "hover") .attr("data-placement", "auto") - .attr("transform", `translate(${bbox.x + bbox.width + fontSize / 2}, ${y})`) // Position after text with small gap + .attr("x", xOffset) // Position after text with small gap + .attr("y", y) .style("font-size", fontSize + "px") .style("font-family", "FontAwesome") .text("\uf06a"); @@ -1478,7 +1481,7 @@ $.widget("parameter_image.scatterplot", { // Get the bounding box of the text to position the icon const bbox = label.node().getBBox(); const fontSize = self.options.axes_font_size; - const yOffset = bbox.y - bbox.height - fontSize / 2; + const xOffset = x + bbox.width / 2 + Number(fontSize); self.y_axis_layer .append("text") @@ -1488,9 +1491,9 @@ $.widget("parameter_image.scatterplot", { .attr("data-toggle", "popover") .attr("data-trigger", "hover") .attr("data-placement", "auto") - .attr("x", x) - .attr("y", yOffset) - .attr("transform", `rotate(-90,${x},${yOffset})`) + .attr("x", xOffset) + .attr("y", y) + .attr("transform", `rotate(-90,${x},${y})`) .style("text-anchor", "middle") .style("font-size", fontSize + "px") .style("font-family", "FontAwesome") @@ -1854,7 +1857,7 @@ $.widget("parameter_image.scatterplot", { // Get the bounding box of the text to position the icon const bbox = label.node().getBBox(); const fontSize = self.options.axes_font_size; - const yOffset = bbox.y - bbox.height - fontSize / 2; + const xOffset = x + bbox.width / 2 + Number(fontSize); self.legend_layer .append("text") @@ -1864,9 +1867,9 @@ $.widget("parameter_image.scatterplot", { .attr("data-toggle", "popover") .attr("data-trigger", "hover") .attr("data-placement", "auto") - .attr("x", x) - .attr("y", yOffset) - .attr("transform", `rotate(-90,${x},${yOffset})`) + .attr("x", xOffset) + .attr("y", y) + .attr("transform", `rotate(-90,${x},${y})`) .style("text-anchor", "middle") .style("font-size", fontSize + "px") .style("font-family", "FontAwesome")