From 433465df182c7ffd693d6de6aed5738ea1ffeefd Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Wed, 12 Jun 2024 11:35:10 -0400 Subject: [PATCH 01/11] Initial styling --- config/default/common/features.json | 2 +- .../sidebar/charting-mode-options.js | 82 ++++++----- .../containers/sidebar/add-layers-content.js | 118 +++++++++++++++ web/js/containers/sidebar/footer-content.js | 80 +++-------- web/js/containers/sidebar/layer-row.js | 7 +- web/js/containers/sidebar/layers-container.js | 28 +--- web/js/containers/sidebar/sidebar.js | 36 +++-- web/scss/features/sidebar.scss | 135 ++++++++++++++---- 8 files changed, 319 insertions(+), 169 deletions(-) create mode 100644 web/js/containers/sidebar/add-layers-content.js diff --git a/config/default/common/features.json b/config/default/common/features.json index 354b3c61bd..dd861b973c 100644 --- a/config/default/common/features.json +++ b/config/default/common/features.json @@ -4,7 +4,7 @@ "urlShortening": true, "customPalettes": true, "compare": true, - "charting": false, + "charting": true, "tour": true, "feedback": true, "previewSnapshots": true, diff --git a/web/js/components/sidebar/charting-mode-options.js b/web/js/components/sidebar/charting-mode-options.js index 2237ffb55b..bc87823210 100644 --- a/web/js/components/sidebar/charting-mode-options.js +++ b/web/js/components/sidebar/charting-mode-options.js @@ -1,14 +1,14 @@ import React, { useEffect } from 'react'; import PropTypes from 'prop-types'; -import { Button, ButtonGroup } from 'reactstrap'; +import { Button, ButtonGroup, UncontrolledTooltip } from 'reactstrap'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { faPencilAlt, faCalendarDay } from '@fortawesome/free-solid-svg-icons'; import { connect } from 'react-redux'; import { Draw as OlInteractionDraw } from 'ol/interaction'; import { createBox } from 'ol/interaction/Draw'; import { Vector as OlVectorLayer } from 'ol/layer'; import { transform } from 'ol/proj'; import { Vector as OlVectorSource } from 'ol/source'; +import CustomButton from '../util/button'; import { toggleChartingAOIOnOff, toggleAOISelected, @@ -40,7 +40,6 @@ function ChartingModeOptions (props) { activeLayers, aoiActive, aoiCoordinates, - aoiSelected, chartRequestInProgress, crs, displayChart, @@ -343,7 +342,6 @@ function ChartingModeOptions (props) { const paletteName = layerInfo.palette.id; const paletteLegend = renderedPalettes[paletteName].maps[0].legend; const unitOfMeasure = Object.prototype.hasOwnProperty.call(paletteLegend, 'units') ? `(${paletteLegend.units})` : ''; - console.log(unitOfMeasure); const dataToRender = { title: layerInfo.title, subtitle: layerInfo.subtitle, @@ -378,11 +376,13 @@ function ChartingModeOptions (props) { openChartingDateModal({ layerStartDate, layerEndDate }, timeSpanSelection); } - const aoiTextPrompt = aoiSelected ? 'Area of Interest Selected' : 'Select Area of Interest'; + const layerInfo = getActiveChartingLayer(); + const aoiTextPrompt = 'Area of Interest:'; const oneDateBtnStatus = timeSpanSelection === 'date' ? 'btn-active' : ''; const dateRangeBtnStatus = timeSpanSelection === 'date' ? '' : 'btn-active'; const dateRangeValue = timeSpanSelection === 'range' ? `${primaryDate} - ${secondaryDate}` : primaryDate; const chartRequestMessage = chartRequestInProgress ? 'In progress...' : ''; + const requestBtnText = timeSpanSelection === 'date' ? 'Generate Statistics' : 'Generate Chart'; return (
+

Charting Mode

+
+ + + + Charting Information + + +
+
+

Layer:

+ {layerInfo && layerInfo.title} +

{aoiTextPrompt}

- + > + Edit Coordinates +
-

Time Span:

- +

Time:

+ - +
+
+
+ onRequestChartClick()} + text={requestBtnText} + />
{chartRequestMessage} diff --git a/web/js/containers/sidebar/add-layers-content.js b/web/js/containers/sidebar/add-layers-content.js new file mode 100644 index 0000000000..2d5f739952 --- /dev/null +++ b/web/js/containers/sidebar/add-layers-content.js @@ -0,0 +1,118 @@ +/* eslint-disable react/jsx-props-no-spreading */ +import React from 'react'; +import { connect } from 'react-redux'; +import PropTypes from 'prop-types'; +import { isMobileOnly, isTablet } from 'react-device-detect'; +import googleTagManager from 'googleTagManager'; +import Button from '../../components/util/button'; +import { + toggleOverlayGroups as toggleOverlayGroupsAction, +} from '../../modules/layers/actions'; +import Checkbox from '../../components/util/checkbox'; +import SearchUiProvider from '../../components/layer/product-picker/search-ui-provider'; +import { openCustomContent } from '../../modules/modal/actions'; +import { stop as stopAnimationAction } from '../../modules/animation/actions'; + +function AddLayersContent (props) { + const { + groupOverlays, + isActive, + isEmbedModeActive, + isAnimating, + isMobile, + breakpoints, + screenWidth, + toggleOverlayGroups, + addLayers, + } = props; + + const onClickAddLayers = (e) => { + e.stopPropagation(); + addLayers(isAnimating, isMobile, breakpoints, screenWidth); + googleTagManager.pushEvent({ event: 'add_layers' }); + }; + + return isActive && !isEmbedModeActive && ( + <> +
+
+
+ + ); +} + +const mapStateToProps = (state, ownProps) => { + const { compareState } = ownProps; + const { + embed, layers, animation, screenSize, + } = state; + const { isEmbedModeActive } = embed; + const isMobile = screenSize.isMobileDevice; + const { groupOverlays } = layers[compareState]; + + return { + isAnimating: animation.isPlaying, + isEmbedModeActive, + isMobile, + breakpoints: screenSize.breakpoints, + screenWidth: screenSize.screenWidth, + groupOverlays, + }; +}; + +const mapDispatchToProps = (dispatch) => ({ + toggleOverlayGroups: () => { + setTimeout(() => { + dispatch(toggleOverlayGroupsAction()); + }); + }, + addLayers: (isPlaying) => { + const modalClassName = isMobileOnly || isTablet ? 'custom-layer-dialog-mobile custom-layer-dialog light' : 'custom-layer-dialog light'; + if (isPlaying) { + dispatch(stopAnimationAction()); + } + dispatch( + openCustomContent('LAYER_PICKER_COMPONENT', { + headerText: null, + modalClassName, + backdrop: true, + CompletelyCustomModal: SearchUiProvider, + wrapClassName: '', + }), + ); + }, +}); + +export default connect( + mapStateToProps, + mapDispatchToProps, +)(AddLayersContent); + +AddLayersContent.propTypes = { + compareState: PropTypes.string, + groupOverlays: PropTypes.bool, + isActive: PropTypes.bool, + isAnimating: PropTypes.bool, + isEmbedModeActive: PropTypes.bool, + isMobile: PropTypes.bool, + toggleOverlayGroups: PropTypes.func, + breakpoints: PropTypes.object, + isPlaying: PropTypes.bool, + screenWidth: PropTypes.number, + addLayers: PropTypes.func, +}; diff --git a/web/js/containers/sidebar/footer-content.js b/web/js/containers/sidebar/footer-content.js index 6336d755a1..986b930a42 100644 --- a/web/js/containers/sidebar/footer-content.js +++ b/web/js/containers/sidebar/footer-content.js @@ -6,7 +6,6 @@ import { UncontrolledTooltip, } from 'reactstrap'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { isMobileOnly, isTablet } from 'react-device-detect'; import googleTagManager from 'googleTagManager'; import ChartingInfo from '../../components/charting/charting-info'; import Button from '../../components/util/button'; @@ -19,11 +18,9 @@ import { import { openCustomContent } from '../../modules/modal/actions'; import { getFilteredEvents } from '../../modules/natural-events/selectors'; import { LIMIT_EVENT_REQUEST_COUNT } from '../../modules/natural-events/constants'; -import SearchUiProvider from '../../components/layer/product-picker/search-ui-provider'; import { toggleOverlayGroups as toggleOverlayGroupsAction, } from '../../modules/layers/actions'; -import { stop as stopAnimationAction } from '../../modules/animation/actions'; const FooterContent = React.forwardRef((props, ref) => { const { @@ -40,10 +37,6 @@ const FooterContent = React.forwardRef((props, ref) => { openChartingInfoModal, toggleCharting, toggleCompare, - breakpoints, - screenWidth, - isPlaying, - addLayers, } = props; const compareBtnText = !isCompareActive @@ -68,12 +61,6 @@ const FooterContent = React.forwardRef((props, ref) => { googleTagManager.pushEvent({ event: 'charting_mode' }); }; - const onClickAddLayers = (e) => { - e.stopPropagation(); - addLayers(isPlaying, isMobile, breakpoints, screenWidth); - googleTagManager.pushEvent({ event: 'add_layers' }); - }; - const renderLayersFooter = () => ( <>
@@ -84,36 +71,13 @@ const FooterContent = React.forwardRef((props, ref) => { onclick={changeCompareMode} /> {isChartingActive && ( - + )}
- {!isChartingActive - && ( -
-
{!isMobile && !isCompareActive && chartFeature && (
); @@ -170,12 +145,10 @@ const FooterContent = React.forwardRef((props, ref) => { const mapStateToProps = (state, ownProps) => { const { - animation, config, compare, charting, screenSize, + config, compare, charting, screenSize, } = state; - const { isPlaying } = animation; const eventsData = getFilteredEvents(state); return { - breakpoints: screenSize.breakpoints, chartFeature: config.features.charting, compareMode: compare.mode, compareFeature: config.features.compare, @@ -183,8 +156,6 @@ const mapStateToProps = (state, ownProps) => { isChartingActive: charting.active, isCompareActive: compare.active, isMobile: screenSize.isMobileDevice, - isPlaying, - screenWidth: screenSize.screenWidth, }; }; @@ -226,21 +197,6 @@ const mapDispatchToProps = (dispatch) => ({ }), ); }, - addLayers: (isPlaying) => { - const modalClassName = isMobileOnly || isTablet ? 'custom-layer-dialog-mobile custom-layer-dialog light' : 'custom-layer-dialog light'; - if (isPlaying) { - dispatch(stopAnimationAction()); - } - dispatch( - openCustomContent('LAYER_PICKER_COMPONENT', { - headerText: null, - modalClassName, - backdrop: true, - CompletelyCustomModal: SearchUiProvider, - wrapClassName: '', - }), - ); - }, }); export default connect( @@ -264,8 +220,4 @@ FooterContent.propTypes = { openChartingInfoModal: PropTypes.func, toggleCompare: PropTypes.func, toggleCharting: PropTypes.func, - breakpoints: PropTypes.object, - isPlaying: PropTypes.bool, - screenWidth: PropTypes.number, - addLayers: PropTypes.func, }; diff --git a/web/js/containers/sidebar/layer-row.js b/web/js/containers/sidebar/layer-row.js index 68dd51f7ac..b6c293eeb3 100644 --- a/web/js/containers/sidebar/layer-row.js +++ b/web/js/containers/sidebar/layer-row.js @@ -10,7 +10,7 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { UncontrolledTooltip, Dropdown, DropdownToggle, DropdownMenu, DropdownItem, } from 'reactstrap'; -import { faToggleOn, faToggleOff } from '@fortawesome/free-solid-svg-icons'; +import { faCircleDot, faCircle } from '@fortawesome/free-solid-svg-icons'; import googleTagManager from 'googleTagManager'; import PaletteLegend from '../../components/sidebar/paletteLegend'; import util from '../../util/util'; @@ -505,15 +505,14 @@ function LayerRow (props) { > Select layer for processing - {/* */} {layer.id === activeChartingLayer ? ( ) : ( )} diff --git a/web/js/containers/sidebar/layers-container.js b/web/js/containers/sidebar/layers-container.js index 329a558221..de27bc1e1c 100644 --- a/web/js/containers/sidebar/layers-container.js +++ b/web/js/containers/sidebar/layers-container.js @@ -13,10 +13,8 @@ import { } from '../../modules/layers/selectors'; import { reorderOverlayGroups as reorderOverlayGroupsAction, - toggleOverlayGroups as toggleOverlayGroupsAction, toggleGroupCollapsed as toggleGroupCollapsedAction, } from '../../modules/layers/actions'; -import Checkbox from '../../components/util/checkbox'; import util from '../../util/util'; import SearchUiProvider from '../../components/layer/product-picker/search-ui-provider'; import { openCustomContent } from '../../modules/modal/actions'; @@ -36,7 +34,6 @@ function LayersContainer (props) { overlays, reorderOverlayGroups, toggleCollapse, - toggleOverlayGroups, } = props; const [overlaysCollapsed, toggleOverlaysCollapsed] = useState(false); @@ -162,18 +159,6 @@ function LayersContainer (props) { )}
- { !isEmbedModeActive && ( -
-
- -
-
- )} ); } @@ -181,10 +166,9 @@ function LayersContainer (props) { const mapStateToProps = (state, ownProps) => { const { compareState } = ownProps; const { - compare, charting, embed, layers, animation, screenSize, + compare, embed, layers, animation, screenSize, } = state; const isCompareActive = compare.active; - const isChartingActive = charting.active; const { isEmbedModeActive } = embed; const isMobile = screenSize.isMobileDevice; const { groupOverlays } = layers[compareState]; @@ -201,9 +185,10 @@ const mapStateToProps = (state, ownProps) => { return { isAnimating: animation.isPlaying, isCompareActive, - isChartingActive, isEmbedModeActive, isMobile, + breakpoints: screenSize.breakpoints, + screenWidth: screenSize.screenWidth, baselayers, overlays, overlayGroups, @@ -216,11 +201,6 @@ const mapDispatchToProps = (dispatch) => ({ reorderOverlayGroups: (layers, groups) => { dispatch(reorderOverlayGroupsAction(layers, groups)); }, - toggleOverlayGroups: () => { - setTimeout(() => { - dispatch(toggleOverlayGroupsAction()); - }); - }, toggleCollapse: (groupName, collapsed) => { dispatch(toggleGroupCollapsedAction(groupName, collapsed)); }, @@ -255,14 +235,12 @@ LayersContainer.propTypes = { isActive: PropTypes.bool, isAnimating: PropTypes.bool, isCompareActive: PropTypes.bool, - isChartingActive: PropTypes.bool, isEmbedModeActive: PropTypes.bool, isMobile: PropTypes.bool, overlayGroups: PropTypes.array, overlays: PropTypes.array, reorderOverlayGroups: PropTypes.func, toggleCollapse: PropTypes.func, - toggleOverlayGroups: PropTypes.func, breakpoints: PropTypes.object, isPlaying: PropTypes.bool, screenWidth: PropTypes.number, diff --git a/web/js/containers/sidebar/sidebar.js b/web/js/containers/sidebar/sidebar.js index 6bc69dcbfa..ebb676186e 100644 --- a/web/js/containers/sidebar/sidebar.js +++ b/web/js/containers/sidebar/sidebar.js @@ -13,6 +13,7 @@ import Events from './events'; import SmartHandoff from './smart-handoff'; import CompareCase from './compare'; import FooterContent from './footer-content'; +import AddLayersContent from './add-layers-content'; import CollapsedButton from '../../components/sidebar/collapsed-button'; import NavCase from '../../components/sidebar/nav/nav-case'; import { @@ -284,6 +285,7 @@ class Sidebar extends React.Component { screenHeight, tabTypes, chartingModeAccessible, + activeString, } = this.props; if ((isMobile || isEmbedModeActive) && activeTab === 'download') changeTab('layers'); @@ -352,25 +354,29 @@ class Sidebar extends React.Component { {this.getProductsToRender(activeTab, isCompareMode, isChartMode)} - - {naturalEvents && activeTab === 'events' && ( - - + {naturalEvents && activeTab === 'events' && ( + + + )} {smartHandoffs && activeTab === 'download' && ( - - - + + + )} { !isKioskModeActive && ( diff --git a/web/scss/features/sidebar.scss b/web/scss/features/sidebar.scss index de22a7d359..3ad58ad185 100644 --- a/web/scss/features/sidebar.scss +++ b/web/scss/features/sidebar.scss @@ -173,10 +173,21 @@ margin-bottom: 10px; } +footer #layers-add { + margin: 5px 10px 10px; +} + +.product-section-break { + color: #ccc; + opacity: 1; + margin: 0 10px; +} + footer .product-buttons { height: 47px; width: auto; padding: 10px; + margin-top: 5px; } .wv-button { @@ -210,6 +221,12 @@ footer .product-buttons { padding: 0; } +footer .chart-toggle-button { + border-bottom: none; + position: absolute; + left: 10px; +} + footer .compare-toggle-button { border-bottom: none; position: absolute; @@ -394,6 +411,26 @@ div#group-overlays-checkbox-case { } } +.tab-pane > .product-buttons { + display: flex; + margin: 5px 0 10px 10px; + + #group-overlays-checkbox-case { + margin: 2px; + display: flex; + align-items: center; + font-size: 12px; + position: absolute; + right: 10px; + + &.wv-checkbox::before { + height: 20px; + min-width: 20px; + line-height: 16px; + } + } +} + .group-overlays-checkbox { margin: 4px 0 0 4px; } @@ -406,8 +443,43 @@ div#group-overlays-checkbox-case { .wv-ab-mode-selection-case, .wv-charting-mode-container { - margin: 5px; + margin: 10px; color: #fff; + position: relative; +} + +.charting-title { + font-size: 20px; + font-weight: bold; + padding-top: 5px; +} + +#charting-info-container { + position: absolute; + top: 0; + right: 0; + + #charting-info-icon svg { + height: 22px; + cursor: pointer; + } +} + +.charting-subtitle { + display: flex; + margin-top: 15px; +} + +.charting-subtitle h3 { + font-size: 15px; + font-weight: bold; +} + +.charting-subtitle span { + margin-left: 20px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; } .wv-ab-mode-selection-case .compare-button { @@ -431,40 +503,47 @@ div#group-overlays-checkbox-case { .charting-aoi-container { display: flex; justify-content: space-between; - width: 80%; - margin: 10px; + margin-top: 15px; - svg { - font-size: 1.4em; + h3 { + font-size: 15px; + font-weight: 700; + display: flex; + align-items: center; } - h3 { - line-height: 1.4em; + .edit-coordinates { + border-radius: 0; } } -.charting-date-row { +.charting-timespan-container { + align-items: center; + margin-top: 10px; display: flex; - justify-content: space-around; -} + justify-content: space-between; -.charting-timespan-container, -.charting-date-container { - display: flex; - justify-content: space-around; -} + h3 { + font-size: 15px; + font-weight: bold; + } -.charting-timespan-container { - align-items: center; - margin: 10px; + button { + border-radius: 0; + } div > .btn-active { background: #d54e21; border-color: #d54e21; } +} - svg { - font-size: 1.4em; +.charting-date-row { + text-align: right; + margin-top: 15px; + + .charting-date-button { + border-radius: 0; } } @@ -491,10 +570,15 @@ div#group-overlays-checkbox-case { } .charting-buttons { - font-size: 1.5em; - margin-top: 1em; - display: flex; - justify-content: space-around; + position: absolute; + right: 0; + bottom: -48px; + + #charting-create-button .button-text { + display: block; + font-size: 13px; + padding: 3px 13px 4px; + } } .charting-indicator { @@ -502,7 +586,8 @@ div#group-overlays-checkbox-case { margin: 0; position: absolute; top: 50%; - transform: translateY(-50%); + left: 50%; + transform: translate(-50%, -50%); } #charting-chart { From 787535dffa43d16c1aa42b65fcb8c9c18c780436 Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Thu, 20 Jun 2024 10:05:07 -0400 Subject: [PATCH 02/11] Additional UI changes --- web/js/components/charting/chart-component.js | 11 +- .../sidebar/charting-mode-options.js | 180 ++++++++++-------- .../sidebar/compare-mode-options.js | 65 ++++--- web/js/containers/sidebar/charting.js | 3 +- web/js/containers/sidebar/sidebar.js | 8 +- web/scss/features/sidebar.scss | 108 +++++++---- 6 files changed, 231 insertions(+), 144 deletions(-) diff --git a/web/js/components/charting/chart-component.js b/web/js/components/charting/chart-component.js index 41441408a0..3dcaaf8cca 100644 --- a/web/js/components/charting/chart-component.js +++ b/web/js/components/charting/chart-component.js @@ -12,7 +12,7 @@ function ChartComponent (props) { const { data } = liveData; // Arbitrary array of colors to use - const lineColors = ['#8884D8', '#82CA9D', 'orange', 'pink', 'green', 'red', 'yellow', 'aqua', 'maroon']; + const lineColors = ['#A3905D', '#82CA9D', 'orange', 'pink', 'green', 'red', 'yellow', 'aqua', 'maroon']; function formatToThreeDigits(str) { return parseFloat(str).toFixed(3); @@ -144,9 +144,10 @@ function ChartComponent (props) {
- NOTE: + Note: +
{' '} - Numerical analyses performed on imagery should only be used for initial basic exploratory purposes + Numerical analyses performed on imagery should only be used for initial basic exploratory purposes.
); @@ -160,8 +161,8 @@ function ChartComponent (props) { {' '} {getLineChart(data)} - - + + diff --git a/web/js/components/sidebar/charting-mode-options.js b/web/js/components/sidebar/charting-mode-options.js index bc87823210..abeb6bb9e7 100644 --- a/web/js/components/sidebar/charting-mode-options.js +++ b/web/js/components/sidebar/charting-mode-options.js @@ -1,14 +1,13 @@ -import React, { useEffect } from 'react'; +import React, { useState, useEffect } from 'react'; import PropTypes from 'prop-types'; +import * as olProj from 'ol/proj'; import { Button, ButtonGroup, UncontrolledTooltip } from 'reactstrap'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { connect } from 'react-redux'; -import { Draw as OlInteractionDraw } from 'ol/interaction'; -import { createBox } from 'ol/interaction/Draw'; -import { Vector as OlVectorLayer } from 'ol/layer'; -import { transform } from 'ol/proj'; import { Vector as OlVectorSource } from 'ol/source'; import CustomButton from '../util/button'; +import Crop from '../util/image-crop'; +import util from '../../util/util'; import { toggleChartingAOIOnOff, toggleAOISelected, @@ -19,14 +18,10 @@ import { } from '../../modules/charting/actions'; import { openCustomContent } from '../../modules/modal/actions'; import { CRS } from '../../modules/map/constants'; -import { areCoordinatesWithinExtent } from '../../modules/location-search/util'; import ChartingInfo from '../charting/charting-info'; import SimpleStatistics from '../charting/simple-statistics'; import ChartingDateSelector from '../charting/charting-date-selector'; import ChartComponent from '../charting/chart-component'; -import { - drawStyles, vectorStyles, -} from '../charting/charting-area-of-interest-style'; const AOIFeatureObj = {}; const vectorLayers = {}; @@ -34,7 +29,7 @@ const sources = {}; let init = false; let draw; -function ChartingModeOptions (props) { +function ChartingModeOptions(props) { const { activeLayer, activeLayers, @@ -50,7 +45,6 @@ function ChartingModeOptions (props) { openChartingDateModal, openChartingInfoModal, olMap, - proj, projections, renderedPalettes, requestStatusMessage, @@ -114,49 +108,6 @@ function ChartingModeOptions (props) { return `${year} ${month} ${day}`; } - function getAreaOfInterestCoordinates(geometry) { - updateAOICoordinates(geometry.getExtent()); - } - - const drawEndCallback = ({ feature }) => { - // Add the draw feature to the collection - AOIFeatureObj[crs][feature.ol_uid] = { - feature, - }; - endDrawingAreaOfInterest(); - toggleAreaOfInterestActive(); - toggleAreaOfInterestSelected(); - getAreaOfInterestCoordinates(feature.getGeometry()); - }; - - function beginDrawingAOI () { - resetAreaOfInterest(); - draw = new OlInteractionDraw({ - source: sources[crs], // Destination source for the drawn features (i.e. VectorSource) - type: 'Circle', // Geometry type of the geometries being drawn with this instance. - style: drawStyles, // Style used to indicate Area of Interest - // This is from measurement tool; validate area selected - condition(e) { - const pixel = [e.originalEvent.x, e.originalEvent.y]; - const coord = olMap.getCoordinateFromPixel(pixel); - const tCoord = transform(coord, crs, CRS.GEOGRAPHIC); - return areCoordinatesWithinExtent(proj, tCoord); - }, - geometryFunction: createBox(), // Function that is called when a geometry's coordinates are updated. - - }); - olMap.addInteraction(draw); - draw.on('drawend', drawEndCallback); - - if (!vectorLayers[crs]) { - vectorLayers[crs] = new OlVectorLayer({ - source: sources[crs], - style: vectorStyles, - map: olMap, - }); - } - } - useEffect(() => { if (!init) { projections.forEach((key) => { @@ -179,11 +130,6 @@ function ChartingModeOptions (props) { const onAreaOfInterestButtonClick = (evt) => { toggleAreaOfInterestActive(); - if (!aoiActive) { - beginDrawingAOI(); - } else { - endDrawingAreaOfInterest(); - } }; @@ -254,7 +200,7 @@ function ChartingModeOptions (props) { areaOfInterestCoords, bins, } = uriParameters; - let requestURL = `https://d1igaxm6d8pbn2.cloudfront.net/get_stats?_type=${type}×tamp=${timestamp}&steps=${steps}&layer=${layer}&colormap=${colormap}&bbox=${areaOfInterestCoords}&bins=${bins}`; + let requestURL = `https://worldview.sit.earthdata.nasa.gov/service/imagestat/get_stats?_type=${type}×tamp=${timestamp}&steps=${steps}&layer=${layer}&colormap=${colormap}&bbox=${areaOfInterestCoords}&bins=${bins}`; if (type !== 'date') { requestURL += `&end_timestamp=${endTimestamp}`; } @@ -376,6 +322,60 @@ function ChartingModeOptions (props) { openChartingDateModal({ layerStartDate, layerEndDate }, timeSpanSelection); } + const { screenHeight, screenWidth } = props; + + const [boundaries, setBoundaries] = useState({ + x: screenWidth / 2 - 100, + y: screenHeight / 2 - 100, + x2: screenWidth / 2 + 100, + y2: screenHeight / 2 + 100, + }); + const { + x, y, y2, x2, + } = boundaries; + + /** + * Convert pixel value to latitude longitude value + * @param {Array} pixelX + * @param {Array} pixelY + * + * @returns {Array} + */ + function getLatLongFromPixelValue(pixelX, pixelY) { + const { proj, olMap } = props; + const coordinate = olMap.getCoordinateFromPixel([Math.floor(pixelX), Math.floor(pixelY)]); + const { crs } = proj.selected; + const [x, y] = olProj.transform(coordinate, crs, CRS.GEOGRAPHIC); + + return [Number(x.toFixed(4)), Number(y.toFixed(4))]; + } + + const [bottomLeftLatLong, setBottomLeftLatLong] = useState(getLatLongFromPixelValue(x, y2)); + const [topRightLatLong, setTopRightLatLong] = useState(getLatLongFromPixelValue(x2, y)); + + /** + * Update latitude longitude values on + * crop change + * @param {Object} boundaries + * + * @returns {null} + */ + function onBoundaryUpdate(boundaries) { + const { + x, y, width, height, + } = boundaries; + const newBoundaries = { + x, + y, + x2: x + width, + y2: y + height, + }; + setBoundaries(newBoundaries); + setBottomLeftLatLong(getLatLongFromPixelValue(newBoundaries.x, newBoundaries.y2)); + setTopRightLatLong(getLatLongFromPixelValue(newBoundaries.x2, newBoundaries.y)); + updateAOICoordinates([...bottomLeftLatLong, ...topRightLatLong]); + } + const layerInfo = getActiveChartingLayer(); const aoiTextPrompt = 'Area of Interest:'; const oneDateBtnStatus = timeSpanSelection === 'date' ? 'btn-active' : ''; @@ -383,6 +383,7 @@ function ChartingModeOptions (props) { const dateRangeValue = timeSpanSelection === 'range' ? `${primaryDate} - ${secondaryDate}` : primaryDate; const chartRequestMessage = chartRequestInProgress ? 'In progress...' : ''; const requestBtnText = timeSpanSelection === 'date' ? 'Generate Statistics' : 'Generate Chart'; + const aoiBtnText = aoiActive ? 'Area Selected' : 'Entire Screen'; return (
Charting Information @@ -412,13 +413,13 @@ function ChartingModeOptions (props) {

{aoiTextPrompt}

- + text={aoiBtnText} + />

Time:

@@ -441,41 +442,68 @@ function ChartingModeOptions (props) {
- + text={dateRangeValue} + />
onRequestChartClick()} text={requestBtnText} />
{chartRequestMessage} -
-
{requestStatusMessage}
+
+ {aoiActive && ( + + )}
); } const mapStateToProps = (state) => { const { - charting, map, proj, config, layers, date, palettes, + charting, map, proj, config, layers, date, palettes, screenSize, } = state; const renderedPalettes = palettes.rendered; const activeLayers = layers.active.layers; const { crs } = proj.selected; + const { screenWidth, screenHeight } = screenSize; const { activeLayer, aoiActive, aoiCoordinates, aoiSelected, chartRequestInProgress, timeSpanSelection, timeSpanStartDate, timeSpanEndDate, requestStatusMessage, } = charting; @@ -500,6 +528,8 @@ const mapStateToProps = (state) => { timeSpanStartDate, timelineStartDate, timelineEndDate, + screenWidth, + screenHeight, }; }; diff --git a/web/js/components/sidebar/compare-mode-options.js b/web/js/components/sidebar/compare-mode-options.js index 4f9f0214c4..23d4fccc8e 100644 --- a/web/js/components/sidebar/compare-mode-options.js +++ b/web/js/components/sidebar/compare-mode-options.js @@ -28,33 +28,46 @@ class CompareModeOptions extends React.Component { className="wv-ab-mode-selection-case" style={{ display: isActive && !isMobile ? 'block' : 'none' }} > -

COMPARE MODE:

- - - - - + Type: + + + + + + + ); } diff --git a/web/js/containers/sidebar/charting.js b/web/js/containers/sidebar/charting.js index 6b24181065..408837eaef 100644 --- a/web/js/containers/sidebar/charting.js +++ b/web/js/containers/sidebar/charting.js @@ -35,7 +35,6 @@ function ChartingLayerMenu (props) { minHeight, maxHeight, overflowY: 'auto', - paddingBottom: '4px', }; useEffect(() => { @@ -76,7 +75,7 @@ const mapStateToProps = (state, ownProps) => { overlays = overlays.filter((layer) => layer.visible && layer.layergroup !== 'Reference'); overlayGroups = getFilteredOverlayGroups(overlayGroups, overlays); } - const activeLayersWithPalettes = overlays.filter((layer) => Object.prototype.hasOwnProperty.call(layer, 'palette')); + const activeLayersWithPalettes = overlays.filter((layer) => Object.prototype.hasOwnProperty.call(layer, 'palette') && state.palettes.rendered[layer.palette.id] && state.palettes.rendered[layer.palette.id].maps[0].type === 'continuous'); return { isAnimating: animation.isPlaying, diff --git a/web/js/containers/sidebar/sidebar.js b/web/js/containers/sidebar/sidebar.js index ebb676186e..c4db3f1417 100644 --- a/web/js/containers/sidebar/sidebar.js +++ b/web/js/containers/sidebar/sidebar.js @@ -106,6 +106,7 @@ class Sidebar extends React.Component { isMobile, screenHeight, isCompareMode, } = this.props; const footerHeight = lodashGet(this, 'footerElement.clientHeight') || 20; + const addLayersHeight = lodashGet(this, 'addLayersElement.clientHeight') || 30; const tabHeight = isMobile ? isCompareMode ? 80 : 40 : 32; const groupCheckboxHeight = 35; let newHeight; @@ -114,10 +115,10 @@ class Sidebar extends React.Component { const topOffset = 10; const basePadding = 130; newHeight = screenHeight - - (iconHeight + topOffset + tabHeight + groupCheckboxHeight + basePadding + footerHeight) + - (iconHeight + topOffset + tabHeight + groupCheckboxHeight + basePadding + footerHeight + addLayersHeight) - 10; } else { - newHeight = screenHeight - (tabHeight + groupCheckboxHeight + footerHeight); + newHeight = screenHeight - (tabHeight + groupCheckboxHeight + footerHeight + addLayersHeight); } // Issue #1415: This was checking for subComponentHeight !== newHeight. // Sometimes it would get stuck in a loop in which the newHeight @@ -355,6 +356,7 @@ class Sidebar extends React.Component { {this.getProductsToRender(activeTab, isCompareMode, isChartMode)} { this.addLayersElement = el; }} isActive={activeTab === 'layers'} compareState={activeString} /> @@ -417,7 +419,7 @@ const mapStateToProps = (state) => { ui, } = state; - const chartingModeAccessible = layers.active.layers.filter((layer) => Object.prototype.hasOwnProperty.call(layer, 'palette')).length > 0; + const chartingModeAccessible = layers.active.layers.filter((layer) => Object.prototype.hasOwnProperty.call(layer, 'palette') && state.palettes.rendered[layer.palette.id] && state.palettes.rendered[layer.palette.id].maps[0].type === 'continuous').length > 0; const isLoadingEvents = requestedEvents.isLoading || requestedEventSources.isLoading; const hasEventRequestError = !!(requestedEvents.error diff --git a/web/scss/features/sidebar.scss b/web/scss/features/sidebar.scss index 3ad58ad185..96476199da 100644 --- a/web/scss/features/sidebar.scss +++ b/web/scss/features/sidebar.scss @@ -170,7 +170,8 @@ #products-holder footer { width: initial; - margin-bottom: 10px; + margin-bottom: 5px; + margin-top: 12px; } footer #layers-add { @@ -184,10 +185,8 @@ footer #layers-add { } footer .product-buttons { - height: 47px; + height: 31px; width: auto; - padding: 10px; - margin-top: 5px; } .wv-button { @@ -213,18 +212,19 @@ footer .product-buttons { #compare-toggle-button { background-image: linear-gradient(#555, #666); - border: 1px solid #666; color: #eee; font-family: 'Open Sans Bold', sans-serif; font-size: 1em; font-weight: 700; padding: 0; + width: 138px; } footer .chart-toggle-button { border-bottom: none; position: absolute; left: 10px; + width: 118px; } footer .compare-toggle-button { @@ -413,7 +413,7 @@ div#group-overlays-checkbox-case { .tab-pane > .product-buttons { display: flex; - margin: 5px 0 10px 10px; + margin: 10px; #group-overlays-checkbox-case { margin: 2px; @@ -449,9 +449,8 @@ div#group-overlays-checkbox-case { } .charting-title { - font-size: 20px; + font-size: 16px; font-weight: bold; - padding-top: 5px; } #charting-info-container { @@ -460,7 +459,7 @@ div#group-overlays-checkbox-case { right: 0; #charting-info-icon svg { - height: 22px; + height: 16px; cursor: pointer; } } @@ -471,7 +470,7 @@ div#group-overlays-checkbox-case { } .charting-subtitle h3 { - font-size: 15px; + font-size: 13px; font-weight: bold; } @@ -491,29 +490,47 @@ div#group-overlays-checkbox-case { opacity: 1; } -.wv-ab-mode-selection-case > div { - margin-left: 10px; +.compare-title { + font-size: 15px; + font-weight: bold; + margin: 10px 0; } -.wv-ab-mode-selection-case > div, -.wv-ab-mode-selection-case h3 { - display: inline-block; +.compare-button-row { + margin-bottom: 25px; + display: flex; + align-items: center; + margin-top: 20px; + position: relative; + + .btn-group { + position: absolute; + right: 0; + + .compare-button { + padding: 3px 18px; + } + } + + .compare-subtitle { + display: inline-block; + } } .charting-aoi-container { display: flex; justify-content: space-between; - margin-top: 15px; + margin-top: 10px; h3 { - font-size: 15px; - font-weight: 700; + font-size: 13px; + font-weight: bold; display: flex; align-items: center; } - .edit-coordinates { - border-radius: 0; + .edit-coordinates span { + padding: 3px 9px; } } @@ -524,26 +541,28 @@ div#group-overlays-checkbox-case { justify-content: space-between; h3 { - font-size: 15px; + font-size: 13px; font-weight: bold; } button { - border-radius: 0; + padding: 4px 11px; + background: #222; + border-color: #5c6369; } div > .btn-active { - background: #d54e21; - border-color: #d54e21; + background: #01457b; } } .charting-date-row { text-align: right; - margin-top: 15px; + margin-top: 6px; - .charting-date-button { - border-radius: 0; + .charting-date-button span { + padding: 3px 9px; + font-weight: normal; } } @@ -558,6 +577,10 @@ div#group-overlays-checkbox-case { display: flex; } +.modal-dialog.chart-dialog { + top: 80px; +} + .charting-statistics-label { font-weight: bolder; min-width: 40%; @@ -569,15 +592,30 @@ div#group-overlays-checkbox-case { padding: 0.25em; } +.recharts-legend-item { + font-weight: bold; +} + +.charting-discalimer { + line-height: 1.3em; +} + .charting-buttons { position: absolute; - right: 0; - bottom: -48px; + right: -10px; + bottom: -37.5px; + width: calc(100% + 20px); - #charting-create-button .button-text { - display: block; - font-size: 13px; - padding: 3px 13px 4px; + #charting-create-button { + float: right; + margin-right: 10px; + width: 138px; + + .button-text { + display: block; + font-size: 13px; + padding: 3px 0; + } } } @@ -913,3 +951,7 @@ p.recharts-tooltip-label { } } } + +.ReactCrop { + z-index: 0 !important; +} \ No newline at end of file From 9e33a4d95084df468a921b741a1622e6fb7c8fbb Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Thu, 20 Jun 2024 11:43:50 -0400 Subject: [PATCH 03/11] Fixed tests --- e2e/features/charting/charting-test.spec.js | 16 +++++++--------- web/js/components/charting/simple-statistics.js | 5 +++-- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/e2e/features/charting/charting-test.spec.js b/e2e/features/charting/charting-test.spec.js index 63a328f04b..6448bbee19 100644 --- a/e2e/features/charting/charting-test.spec.js +++ b/e2e/features/charting/charting-test.spec.js @@ -73,12 +73,10 @@ test('Select an Area of Interest works appropriately', async () => { const isChartingEnabled = await page.$('#chart-toggle-button') if (isChartingEnabled) { await page.locator('#chart-toggle-button').click() - const aoiIcon = page.locator('#wv-charting-mode-container > div.charting-aoi-container > h3') - await expect(aoiIcon).toHaveText('Select Area of Interest') - await page.locator('#wv-charting-mode-container > div.charting-aoi-container > svg').click() - await page.mouse.click(300, 300) - await page.mouse.click(400, 400) - await expect(aoiIcon).toHaveText('Area of Interest Selected') + const aoiBtn = page.locator('#wv-charting-mode-container > div.charting-aoi-container > .edit-coordinates') + await expect(aoiBtn).toHaveText('Entire Screen') + await aoiBtn.click() + await expect(aoiBtn).toHaveText('Area Selected') } }) @@ -96,12 +94,12 @@ test('Confirm defaults for time span selection', async () => { } }) -test('Calendar icon opens datepicker modal', async () => { +test('Date selector opens datepicker modal', async () => { await page.goto(multipleDataLayers) const isChartingEnabled = await page.$('#chart-toggle-button') if (isChartingEnabled) { await page.locator('#chart-toggle-button').click() - await page.locator('#charting-calendar-container > svg').click() + await page.locator('#charting-date-button').click() const chartingDateModal = page.locator('#charting_date_modal > div > div > div.modal-header > h5') await expect(chartingDateModal).toHaveText('Charting Mode Date Selection') } @@ -116,7 +114,7 @@ test('Info modal opens on mode start & on icon click', async () => { await expect(infoModal).toHaveText('Charting Tool') await page.locator('#charting_info_modal > div > div > div.modal-header > button').click() await expect(infoModal).toHaveCount(0) - await page.locator('#charting-info-container > svg').click() + await page.locator('#charting-info-container svg').click() await expect(infoModal).toHaveText('Charting Tool') } }) diff --git a/web/js/components/charting/simple-statistics.js b/web/js/components/charting/simple-statistics.js index abfba520b4..6a198fb09d 100644 --- a/web/js/components/charting/simple-statistics.js +++ b/web/js/components/charting/simple-statistics.js @@ -69,9 +69,10 @@ function SimpleStatistics(props) {
- NOTE: + Note: +
{' '} - Numerical analyses performed on imagery should only be used for initial basic exploratory purposes + Numerical analyses performed on imagery should only be used for initial basic exploratory purposes.
); From 883ef032317321adb029c3f32c3c1683de499c1d Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Mon, 15 Jul 2024 12:39:42 -0400 Subject: [PATCH 04/11] Disabled charting mode --- config/default/common/features.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/default/common/features.json b/config/default/common/features.json index dd861b973c..354b3c61bd 100644 --- a/config/default/common/features.json +++ b/config/default/common/features.json @@ -4,7 +4,7 @@ "urlShortening": true, "customPalettes": true, "compare": true, - "charting": true, + "charting": false, "tour": true, "feedback": true, "previewSnapshots": true, From 3df1696722e903febfc7633d229a7055ebbfaa83 Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Mon, 30 Sep 2024 11:55:54 -0400 Subject: [PATCH 05/11] Fixes WV-3275 --- package-lock.json | 11638 +---------------------- web/js/containers/sidebar/charting.js | 4 +- web/js/containers/sidebar/layer-row.js | 62 +- 3 files changed, 164 insertions(+), 11540 deletions(-) diff --git a/package-lock.json b/package-lock.json index 441c5cd050..f2dbaa9edb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3605,24 +3605,10 @@ "version": "3.0.0", "license": "MIT" }, - "node_modules/@types/eslint": { - "version": "8.4.6", - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { - "version": "1.0.5", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "license": "MIT" }, "node_modules/@types/express": { @@ -4687,7 +4673,9 @@ } }, "node_modules/axios": { - "version": "1.7.2", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", @@ -5030,7 +5018,9 @@ "license": "MIT" }, "node_modules/body-parser": { - "version": "1.20.2", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, "license": "MIT", "dependencies": { @@ -5042,7 +5032,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -5054,6 +5044,8 @@ }, "node_modules/body-parser/node_modules/bytes": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "license": "MIT", "engines": { @@ -5062,6 +5054,8 @@ }, "node_modules/body-parser/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "license": "MIT", "dependencies": { @@ -5070,23 +5064,11 @@ }, "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "license": "MIT" }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/bonjour-service": { "version": "1.2.1", "dev": true, @@ -5834,6 +5816,8 @@ }, "node_modules/content-type": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, "license": "MIT", "engines": { @@ -6820,6 +6804,8 @@ }, "node_modules/depd": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "license": "MIT", "engines": { @@ -6840,6 +6826,8 @@ }, "node_modules/destroy": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, "license": "MIT", "engines": { @@ -7046,7 +7034,9 @@ } }, "node_modules/encodeurl": { - "version": "1.0.2", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", "engines": { @@ -8134,6 +8124,8 @@ }, "node_modules/etag": { "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, "license": "MIT", "engines": { @@ -8211,36 +8203,38 @@ } }, "node_modules/express": { - "version": "4.19.2", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", + "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", "dev": true, "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -8264,20 +8258,6 @@ "dev": true, "license": "MIT" }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/express/node_modules/safe-buffer": { "version": "5.2.1", "dev": true, @@ -8435,12 +8415,14 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, "license": "MIT", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -8453,6 +8435,8 @@ }, "node_modules/finalhandler/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "license": "MIT", "dependencies": { @@ -8461,6 +8445,8 @@ }, "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "license": "MIT" }, @@ -8704,6 +8690,8 @@ }, "node_modules/fresh": { "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, "license": "MIT", "engines": { @@ -9231,6 +9219,8 @@ }, "node_modules/http-errors": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9353,6 +9343,8 @@ }, "node_modules/iconv-lite": { "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "license": "MIT", "dependencies": { @@ -10870,7 +10862,9 @@ } }, "node_modules/jest-environment-jsdom/node_modules/ws": { - "version": "8.12.0", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true, "license": "MIT", "engines": { @@ -12265,6 +12259,8 @@ }, "node_modules/media-typer": { "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, "license": "MIT", "engines": { @@ -12324,9 +12320,14 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -12353,11 +12354,13 @@ "license": "MIT" }, "node_modules/micromatch": { - "version": "4.0.5", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "license": "MIT", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -12366,6 +12369,8 @@ }, "node_modules/mime": { "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true, "license": "MIT", "bin": { @@ -13458,7 +13463,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", "dev": true, "license": "MIT" }, @@ -14376,7 +14383,9 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.12.1", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.0.6" @@ -14468,6 +14477,8 @@ }, "node_modules/raw-body": { "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "license": "MIT", "dependencies": { @@ -14482,6 +14493,8 @@ }, "node_modules/raw-body/node_modules/bytes": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "license": "MIT", "engines": { @@ -15702,7 +15715,9 @@ } }, "node_modules/send": { - "version": "0.18.0", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, "license": "MIT", "dependencies": { @@ -15726,6 +15741,8 @@ }, "node_modules/send/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "license": "MIT", "dependencies": { @@ -15734,11 +15751,25 @@ }, "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "license": "MIT" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, "license": "MIT" }, @@ -15820,14 +15851,16 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, "license": "MIT", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -15863,6 +15896,8 @@ }, "node_modules/setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true, "license": "ISC" }, @@ -16277,6 +16312,8 @@ }, "node_modules/statuses": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, "license": "MIT", "engines": { @@ -17049,6 +17086,8 @@ }, "node_modules/toidentifier": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, "license": "MIT", "engines": { @@ -17184,6 +17223,8 @@ }, "node_modules/type-is": { "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, "license": "MIT", "dependencies": { @@ -17352,6 +17393,8 @@ }, "node_modules/unpipe": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, "license": "MIT", "engines": { @@ -17578,11 +17621,11 @@ } }, "node_modules/webpack": { - "version": "5.92.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.92.0.tgz", - "integrity": "sha512-Bsw2X39MYIgxouNATyVpCNVWBCuUwDgWtN78g6lSdPJRLaQ/PUVm/oXcaRAyY/sMFoKFQrsPeqvTizWtq7QPCA==", + "version": "5.94.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", + "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", + "license": "MIT", "dependencies": { - "@types/eslint-scope": "^3.7.3", "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.12.1", "@webassemblyjs/wasm-edit": "^1.12.1", @@ -17591,7 +17634,7 @@ "acorn-import-attributes": "^1.9.5", "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -17975,7 +18018,9 @@ } }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.16.0", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true, "license": "MIT", "engines": { @@ -18014,9 +18059,10 @@ } }, "node_modules/webpack/node_modules/enhanced-resolve": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", - "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -18029,6 +18075,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "license": "MIT", "engines": { "node": ">=6" } @@ -18342,7 +18389,9 @@ } }, "node_modules/ws": { - "version": "7.5.7", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, "license": "MIT", "engines": { @@ -18473,11432 +18522,5 @@ "url": "https://github.com/sponsors/sindresorhus" } } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6" - }, - "@ampproject/remapping": { - "version": "2.2.0", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.6.tgz", - "integrity": "sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==", - "requires": { - "@babel/highlight": "^7.24.6", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.6.tgz", - "integrity": "sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==", - "dev": true - }, - "@babel/core": { - "version": "7.24.5", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.24.5", - "@babel/helpers": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "7.5.4" - } - }, - "@babel/eslint-parser": { - "version": "7.24.5", - "dev": true, - "requires": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "7.5.4" - } - }, - "@babel/generator": { - "version": "7.24.5", - "dev": true, - "requires": { - "@babel/types": "^7.24.5", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.6.tgz", - "integrity": "sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.6.tgz", - "integrity": "sha512-+wnfqc5uHiMYtvRX7qu80Toef8BXeh4HHR1SPeonGb1SKPniNEd4a/nlaJJMv/OIEYvIVavvo0yR7u10Gqz0Iw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz", - "integrity": "sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.24.6", - "@babel/helper-validator-option": "^7.24.6", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "7.5.4" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.6.tgz", - "integrity": "sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-function-name": "^7.24.6", - "@babel/helper-member-expression-to-functions": "^7.24.6", - "@babel/helper-optimise-call-expression": "^7.24.6", - "@babel/helper-replace-supers": "^7.24.6", - "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6", - "@babel/helper-split-export-declaration": "^7.24.6", - "semver": "7.5.4" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.6.tgz", - "integrity": "sha512-C875lFBIWWwyv6MHZUG9HmRrlTDgOsLWZfYR0nW69gaKJNe0/Mpxx5r0EID2ZdHQkdUmQo2t0uNckTL08/1BgA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "regexpu-core": "^5.3.1", - "semver": "7.5.4" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.6.1", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz", - "integrity": "sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz", - "integrity": "sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==", - "dev": true, - "requires": { - "@babel/template": "^7.24.6", - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz", - "integrity": "sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.6.tgz", - "integrity": "sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz", - "integrity": "sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==", - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz", - "integrity": "sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-module-imports": "^7.24.6", - "@babel/helper-simple-access": "^7.24.6", - "@babel/helper-split-export-declaration": "^7.24.6", - "@babel/helper-validator-identifier": "^7.24.6" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.6.tgz", - "integrity": "sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz", - "integrity": "sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.6.tgz", - "integrity": "sha512-1Qursq9ArRZPAMOZf/nuzVW8HgJLkTB9y9LfP4lW2MVp4e9WkLJDovfKBxoDcCk6VuzIxyqWHyBoaCtSRP10yg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-wrap-function": "^7.24.6" - } - }, - "@babel/helper-replace-supers": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.6.tgz", - "integrity": "sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-member-expression-to-functions": "^7.24.6", - "@babel/helper-optimise-call-expression": "^7.24.6" - } - }, - "@babel/helper-simple-access": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz", - "integrity": "sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.6.tgz", - "integrity": "sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz", - "integrity": "sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz", - "integrity": "sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==" - }, - "@babel/helper-validator-identifier": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", - "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==" - }, - "@babel/helper-validator-option": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz", - "integrity": "sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.24.6.tgz", - "integrity": "sha512-f1JLrlw/jbiNfxvdrfBgio/gRBk3yTAEJWirpAkiJG2Hb22E7cEYKHWo0dFPTv/niPovzIdPdEDetrv6tC6gPQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.24.6", - "@babel/template": "^7.24.6", - "@babel/types": "^7.24.6" - } - }, - "@babel/helpers": { - "version": "7.24.5", - "dev": true, - "requires": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5" - } - }, - "@babel/highlight": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.6.tgz", - "integrity": "sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.24.6", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", - "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", - "dev": true - }, - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.6.tgz", - "integrity": "sha512-bYndrJ6Ph6Ar+GaB5VAc0JPoP80bQCm4qon6JEzXfRl5QZyQ8Ur1K6k7htxWmPA5z+k7JQvaMUrtXlqclWYzKw==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.6.tgz", - "integrity": "sha512-iVuhb6poq5ikqRq2XWU6OQ+R5o9wF+r/or9CeUyovgptz0UlnK4/seOQ1Istu/XybYjAhQv1FRSSfHHufIku5Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.6.tgz", - "integrity": "sha512-c8TER5xMDYzzFcGqOEp9l4hvB7dcbhcGjcLVwxWfe4P5DOafdwjsBJZKsmv+o3aXh7NhopvayQIovHrh2zSRUQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6", - "@babel/plugin-transform-optional-chaining": "^7.24.6" - } - }, - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.6.tgz", - "integrity": "sha512-z8zEjYmwBUHN/pCF3NuWBhHQjJCrd33qAi8MgANfMrAvn72k2cImT8VjK9LJFu4ysOLJqhfkYYb3MvwANRUNZQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "dev": true, - "requires": {} - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.6.tgz", - "integrity": "sha512-BE6o2BogJKJImTmGpkmOic4V0hlRRxVtzqxiSPa8TIFxyhi4EFjHm08nq1M4STK4RytuLMgnSz0/wfflvGFNOg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-syntax-import-attributes": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.6.tgz", - "integrity": "sha512-D+CfsVZousPXIdudSII7RGy52+dYRtbyKAZcvtQKq/NpsivyMVduepzcLqG5pMBugtMdedxdC8Ramdpcne9ZWQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.6.tgz", - "integrity": "sha512-lWfvAIFNWMlCsU0DRUun2GpFwZdGTukLaHJqRh1JRb80NdAP5Sb1HDHB5X9P9OtgZHQl089UzQkpYlBq2VTPRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.22.5", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.22.5" - } - }, - "@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.6.tgz", - "integrity": "sha512-jSSSDt4ZidNMggcLx8SaKsbGNEfIl0PHx/4mFEulorE7bpYLbN0d3pDW3eJ7Y5Z3yPhy3L3NaPCYyTUY7TuugQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-async-generator-functions": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.6.tgz", - "integrity": "sha512-VEP2o4iR2DqQU6KPgizTW2mnMx6BG5b5O9iQdrW9HesLkv8GIA8x2daXBQxw1MrsIkFQGA/iJ204CKoQ8UcnAA==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-remap-async-to-generator": "^7.24.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.6.tgz", - "integrity": "sha512-NTBA2SioI3OsHeIn6sQmhvXleSl9T70YY/hostQLveWs0ic+qvbA3fa0kwAwQ0OA/XGaAerNZRQGJyRfhbJK4g==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-remap-async-to-generator": "^7.24.6" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.6.tgz", - "integrity": "sha512-XNW7jolYHW9CwORrZgA/97tL/k05qe/HL0z/qqJq1mdWhwwCM6D4BJBV7wAz9HgFziN5dTOG31znkVIzwxv+vw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.6.tgz", - "integrity": "sha512-S/t1Xh4ehW7sGA7c1j/hiOBLnEYCp/c2sEG4ZkL8kI1xX9tW2pqJTCHKtdhe/jHKt8nG0pFCrDHUXd4DvjHS9w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-class-properties": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.6.tgz", - "integrity": "sha512-j6dZ0Z2Z2slWLR3kt9aOmSIrBvnntWjMDN/TVcMPxhXMLmJVqX605CBRlcGI4b32GMbfifTEsdEjGjiE+j/c3A==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-class-static-block": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.6.tgz", - "integrity": "sha512-1QSRfoPI9RoLRa8Mnakc6v3e0gJxiZQTYrMfLn+mD0sz5+ndSzwymp2hDcYJTyT0MOn0yuWzj8phlIvO72gTHA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.6.tgz", - "integrity": "sha512-+fN+NO2gh8JtRmDSOB6gaCVo36ha8kfCW1nMq2Gc0DABln0VcHN4PrALDvF5/diLzIRKptC7z/d7Lp64zk92Fg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-compilation-targets": "^7.24.6", - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-function-name": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-replace-supers": "^7.24.6", - "@babel/helper-split-export-declaration": "^7.24.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.6.tgz", - "integrity": "sha512-cRzPobcfRP0ZtuIEkA8QzghoUpSB3X3qSH5W2+FzG+VjWbJXExtx0nbRqwumdBN1x/ot2SlTNQLfBCnPdzp6kg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/template": "^7.24.6" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.6.tgz", - "integrity": "sha512-YLW6AE5LQpk5npNXL7i/O+U9CE4XsBCuRPgyjl1EICZYKmcitV+ayuuUGMJm2lC1WWjXYszeTnIxF/dq/GhIZQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.6.tgz", - "integrity": "sha512-rCXPnSEKvkm/EjzOtLoGvKseK+dS4kZwx1HexO3BtRtgL0fQ34awHn34aeSHuXtZY2F8a1X8xqBBPRtOxDVmcA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.6.tgz", - "integrity": "sha512-/8Odwp/aVkZwPFJMllSbawhDAO3UJi65foB00HYnK/uXvvCPm0TAXSByjz1mpRmp0q6oX2SIxpkUOpPFHk7FLA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-dynamic-import": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.6.tgz", - "integrity": "sha512-vpq8SSLRTBLOHUZHSnBqVo0AKX3PBaoPs2vVzYVWslXDTDIpwAcCDtfhUcHSQQoYoUvcFPTdC8TZYXu9ZnLT/w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.6.tgz", - "integrity": "sha512-EemYpHtmz0lHE7hxxxYEuTYOOBZ43WkDgZ4arQ4r+VX9QHuNZC+WH3wUWmRNvR8ECpTRne29aZV6XO22qpOtdA==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-export-namespace-from": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.6.tgz", - "integrity": "sha512-inXaTM1SVrIxCkIJ5gqWiozHfFMStuGbGJAxZFBoHcRRdDP0ySLb3jH6JOwmfiinPwyMZqMBX+7NBDCO4z0NSA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.6.tgz", - "integrity": "sha512-n3Sf72TnqK4nw/jziSqEl1qaWPbCRw2CziHH+jdRYvw4J6yeCzsj4jdw8hIntOEeDGTmHVe2w4MVL44PN0GMzg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.6.tgz", - "integrity": "sha512-sOajCu6V0P1KPljWHKiDq6ymgqB+vfo3isUS4McqW1DZtvSVU2v/wuMhmRmkg3sFoq6GMaUUf8W4WtoSLkOV/Q==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.24.6", - "@babel/helper-function-name": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-json-strings": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.6.tgz", - "integrity": "sha512-Uvgd9p2gUnzYJxVdBLcU0KurF8aVhkmVyMKW4MIY1/BByvs3EBpv45q01o7pRTVmTvtQq5zDlytP3dcUgm7v9w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.6.tgz", - "integrity": "sha512-f2wHfR2HF6yMj+y+/y07+SLqnOSwRp8KYLpQKOzS58XLVlULhXbiYcygfXQxJlMbhII9+yXDwOUFLf60/TL5tw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-logical-assignment-operators": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.6.tgz", - "integrity": "sha512-EKaWvnezBCMkRIHxMJSIIylzhqK09YpiJtDbr2wsXTwnO0TxyjMUkaw4RlFIZMIS0iDj0KyIg7H7XCguHu/YDA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.6.tgz", - "integrity": "sha512-9g8iV146szUo5GWgXpRbq/GALTnY+WnNuRTuRHWWFfWGbP9ukRL0aO/jpu9dmOPikclkxnNsjY8/gsWl6bmZJQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.6.tgz", - "integrity": "sha512-eAGogjZgcwqAxhyFgqghvoHRr+EYRQPFjUXrTYKBRb5qPnAVxOOglaxc4/byHqjvq/bqO2F3/CGwTHsgKJYHhQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.6.tgz", - "integrity": "sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-simple-access": "^7.24.6" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.6.tgz", - "integrity": "sha512-xg1Z0J5JVYxtpX954XqaaAT6NpAY6LtZXvYFCJmGFJWwtlz2EmJoR8LycFRGNE8dBKizGWkGQZGegtkV8y8s+w==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.24.6", - "@babel/helper-module-transforms": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-validator-identifier": "^7.24.6" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.6.tgz", - "integrity": "sha512-esRCC/KsSEUvrSjv5rFYnjZI6qv4R1e/iHQrqwbZIoRJqk7xCvEUiN7L1XrmW5QSmQe3n1XD88wbgDTWLbVSyg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.6.tgz", - "integrity": "sha512-6DneiCiu91wm3YiNIGDWZsl6GfTTbspuj/toTEqLh9d4cx50UIzSdg+T96p8DuT7aJOBRhFyaE9ZvTHkXrXr6Q==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.6.tgz", - "integrity": "sha512-f8liz9JG2Va8A4J5ZBuaSdwfPqN6axfWRK+y66fjKYbwf9VBLuq4WxtinhJhvp1w6lamKUwLG0slK2RxqFgvHA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.6.tgz", - "integrity": "sha512-+QlAiZBMsBK5NqrBWFXCYeXyiU1y7BQ/OYaiPAcQJMomn5Tyg+r5WuVtyEuvTbpV7L25ZSLfE+2E9ywj4FD48A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-transform-numeric-separator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.6.tgz", - "integrity": "sha512-6voawq8T25Jvvnc4/rXcWZQKKxUNZcKMS8ZNrjxQqoRFernJJKjE3s18Qo6VFaatG5aiX5JV1oPD7DbJhn0a4Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-transform-object-rest-spread": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.6.tgz", - "integrity": "sha512-OKmi5wiMoRW5Smttne7BwHM8s/fb5JFs+bVGNSeHWzwZkWXWValR1M30jyXo1s/RaqgwwhEC62u4rFH/FBcBPg==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.24.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.6.tgz", - "integrity": "sha512-N/C76ihFKlZgKfdkEYKtaRUtXZAgK7sOY4h2qrbVbVTXPrKGIi8aww5WGe/+Wmg8onn8sr2ut6FXlsbu/j6JHg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-replace-supers": "^7.24.6" - } - }, - "@babel/plugin-transform-optional-catch-binding": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.6.tgz", - "integrity": "sha512-L5pZ+b3O1mSzJ71HmxSCmTVd03VOT2GXOigug6vDYJzE5awLI7P1g0wFcdmGuwSDSrQ0L2rDOe/hHws8J1rv3w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-transform-optional-chaining": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.6.tgz", - "integrity": "sha512-cHbqF6l1QP11OkYTYQ+hhVx1E017O5ZcSPXk9oODpqhcAD1htsWG2NpHrrhthEO2qZomLK0FXS+u7NfrkF5aOQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.6.tgz", - "integrity": "sha512-ST7guE8vLV+vI70wmAxuZpIKzVjvFX9Qs8bl5w6tN/6gOypPWUmMQL2p7LJz5E63vEGrDhAiYetniJFyBH1RkA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-private-methods": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.6.tgz", - "integrity": "sha512-T9LtDI0BgwXOzyXrvgLTT8DFjCC/XgWLjflczTLXyvxbnSR/gpv0hbmzlHE/kmh9nOvlygbamLKRo6Op4yB6aw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-private-property-in-object": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.6.tgz", - "integrity": "sha512-Qu/ypFxCY5NkAnEhCF86Mvg3NSabKsh/TPpBVswEdkGl7+FbsYHy1ziRqJpwGH4thBdQHh8zx+z7vMYmcJ7iaQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-create-class-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.6.tgz", - "integrity": "sha512-oARaglxhRsN18OYsnPTpb8TcKQWDYNsPNmTnx5++WOAsUJ0cSC/FZVlIJCKvPbU4yn/UXsS0551CFKJhN0CaMw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-react-display-name": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.24.6.tgz", - "integrity": "sha512-/3iiEEHDsJuj9QU09gbyWGSUxDboFcD7Nj6dnHIlboWSodxXAoaY/zlNMHeYAC0WsERMqgO9a7UaM77CsYgWcg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.24.6.tgz", - "integrity": "sha512-pCtPHhpRZHfwdA5G1Gpk5mIzMA99hv0R8S/Ket50Rw+S+8hkt3wBWqdqHaPw0CuUYxdshUgsPiLQ5fAs4ASMhw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-module-imports": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/plugin-syntax-jsx": "^7.24.6", - "@babel/types": "^7.24.6" - } - }, - "@babel/plugin-transform-react-jsx-development": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.24.6.tgz", - "integrity": "sha512-F7EsNp5StNDouSSdYyDSxh4J+xvj/JqG+Cb6s2fA+jCyHOzigG5vTwgH8tU2U8Voyiu5zCG9bAK49wTr/wPH0w==", - "dev": true, - "requires": { - "@babel/plugin-transform-react-jsx": "^7.24.6" - } - }, - "@babel/plugin-transform-react-pure-annotations": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.24.6.tgz", - "integrity": "sha512-0HoDQlFJJkXRyV2N+xOpUETbKHcouSwijRQbKWVtxsPoq5bbB30qZag9/pSc5xcWVYjTHlLsBsY+hZDnzQTPNw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.6.tgz", - "integrity": "sha512-SMDxO95I8WXRtXhTAc8t/NFQUT7VYbIWwJCJgEli9ml4MhqUMh4S6hxgH6SmAC3eAQNWCDJFxcFeEt9w2sDdXg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "regenerator-transform": "^0.15.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.6.tgz", - "integrity": "sha512-DcrgFXRRlK64dGE0ZFBPD5egM2uM8mgfrvTMOSB2yKzOtjpGegVYkzh3s1zZg1bBck3nkXiaOamJUqK3Syk+4A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.6.tgz", - "integrity": "sha512-xnEUvHSMr9eOWS5Al2YPfc32ten7CXdH7Zwyyk7IqITg4nX61oHj+GxpNvl+y5JHjfN3KXE2IV55wAWowBYMVw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.6.tgz", - "integrity": "sha512-h/2j7oIUDjS+ULsIrNZ6/TKG97FgmEk1PXryk/HQq6op4XUUUwif2f69fJrzK0wza2zjCS1xhXmouACaWV5uPA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.6.tgz", - "integrity": "sha512-fN8OcTLfGmYv7FnDrsjodYBo1DhPL3Pze/9mIIE2MGCT1KgADYIOD7rEglpLHZj8PZlC/JFX5WcD+85FLAQusw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.6.tgz", - "integrity": "sha512-BJbEqJIcKwrqUP+KfUIkxz3q8VzXe2R8Wv8TaNgO1cx+nNavxn/2+H8kp9tgFSOL6wYPPEgFvU6IKS4qoGqhmg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.6.tgz", - "integrity": "sha512-IshCXQ+G9JIFJI7bUpxTE/oA2lgVLAIK8q1KdJNoPXOpvRaNjMySGuvLfBw/Xi2/1lLo953uE8hyYSDW3TSYig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.6.tgz", - "integrity": "sha512-bKl3xxcPbkQQo5eX9LjjDpU2xYHeEeNQbOhj0iPvetSzA+Tu9q/o5lujF4Sek60CM6MgYvOS/DJuwGbiEYAnLw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-unicode-property-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.6.tgz", - "integrity": "sha512-8EIgImzVUxy15cZiPii9GvLZwsy7Vxc+8meSlR3cXFmBIl5W5Tn9LGBf7CDKkHj4uVfNXCJB8RsVfnmY61iedA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.6.tgz", - "integrity": "sha512-pssN6ExsvxaKU638qcWb81RrvvgZom3jDgU/r5xFZ7TONkZGFf4MhI2ltMb8OcQWhHyxgIavEU+hgqtbKOmsPA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/plugin-transform-unicode-sets-regex": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.6.tgz", - "integrity": "sha512-quiMsb28oXWIDK0gXLALOJRXLgICLiulqdZGOaPPd0vRT7fQp74NtdADAVu+D8s00C+0Xs0MxVP0VKF/sZEUgw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6" - } - }, - "@babel/preset-env": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.6.tgz", - "integrity": "sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.24.6", - "@babel/helper-compilation-targets": "^7.24.6", - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-validator-option": "^7.24.6", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.6", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.6", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.24.6", - "@babel/plugin-syntax-import-attributes": "^7.24.6", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.24.6", - "@babel/plugin-transform-async-generator-functions": "^7.24.6", - "@babel/plugin-transform-async-to-generator": "^7.24.6", - "@babel/plugin-transform-block-scoped-functions": "^7.24.6", - "@babel/plugin-transform-block-scoping": "^7.24.6", - "@babel/plugin-transform-class-properties": "^7.24.6", - "@babel/plugin-transform-class-static-block": "^7.24.6", - "@babel/plugin-transform-classes": "^7.24.6", - "@babel/plugin-transform-computed-properties": "^7.24.6", - "@babel/plugin-transform-destructuring": "^7.24.6", - "@babel/plugin-transform-dotall-regex": "^7.24.6", - "@babel/plugin-transform-duplicate-keys": "^7.24.6", - "@babel/plugin-transform-dynamic-import": "^7.24.6", - "@babel/plugin-transform-exponentiation-operator": "^7.24.6", - "@babel/plugin-transform-export-namespace-from": "^7.24.6", - "@babel/plugin-transform-for-of": "^7.24.6", - "@babel/plugin-transform-function-name": "^7.24.6", - "@babel/plugin-transform-json-strings": "^7.24.6", - "@babel/plugin-transform-literals": "^7.24.6", - "@babel/plugin-transform-logical-assignment-operators": "^7.24.6", - "@babel/plugin-transform-member-expression-literals": "^7.24.6", - "@babel/plugin-transform-modules-amd": "^7.24.6", - "@babel/plugin-transform-modules-commonjs": "^7.24.6", - "@babel/plugin-transform-modules-systemjs": "^7.24.6", - "@babel/plugin-transform-modules-umd": "^7.24.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.6", - "@babel/plugin-transform-new-target": "^7.24.6", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.6", - "@babel/plugin-transform-numeric-separator": "^7.24.6", - "@babel/plugin-transform-object-rest-spread": "^7.24.6", - "@babel/plugin-transform-object-super": "^7.24.6", - "@babel/plugin-transform-optional-catch-binding": "^7.24.6", - "@babel/plugin-transform-optional-chaining": "^7.24.6", - "@babel/plugin-transform-parameters": "^7.24.6", - "@babel/plugin-transform-private-methods": "^7.24.6", - "@babel/plugin-transform-private-property-in-object": "^7.24.6", - "@babel/plugin-transform-property-literals": "^7.24.6", - "@babel/plugin-transform-regenerator": "^7.24.6", - "@babel/plugin-transform-reserved-words": "^7.24.6", - "@babel/plugin-transform-shorthand-properties": "^7.24.6", - "@babel/plugin-transform-spread": "^7.24.6", - "@babel/plugin-transform-sticky-regex": "^7.24.6", - "@babel/plugin-transform-template-literals": "^7.24.6", - "@babel/plugin-transform-typeof-symbol": "^7.24.6", - "@babel/plugin-transform-unicode-escapes": "^7.24.6", - "@babel/plugin-transform-unicode-property-regex": "^7.24.6", - "@babel/plugin-transform-unicode-regex": "^7.24.6", - "@babel/plugin-transform-unicode-sets-regex": "^7.24.6", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.4", - "babel-plugin-polyfill-regenerator": "^0.6.1", - "core-js-compat": "^3.31.0", - "semver": "7.5.4" - } - }, - "@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/preset-react": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.24.6.tgz", - "integrity": "sha512-8mpzh1bWvmINmwM3xpz6ahu57mNaWavMm+wBNjQ4AFu1nghKBiIRET7l/Wmj4drXany/BBGjJZngICcD98F1iw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.6", - "@babel/helper-validator-option": "^7.24.6", - "@babel/plugin-transform-react-display-name": "^7.24.6", - "@babel/plugin-transform-react-jsx": "^7.24.6", - "@babel/plugin-transform-react-jsx-development": "^7.24.6", - "@babel/plugin-transform-react-pure-annotations": "^7.24.6" - } - }, - "@babel/regjsgen": { - "version": "0.8.0", - "dev": true - }, - "@babel/runtime": { - "version": "7.23.2", - "requires": { - "regenerator-runtime": "^0.14.0" - } - }, - "@babel/template": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.6.tgz", - "integrity": "sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.6", - "@babel/parser": "^7.24.6", - "@babel/types": "^7.24.6" - } - }, - "@babel/traverse": { - "version": "7.24.5", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.6.tgz", - "integrity": "sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==", - "requires": { - "@babel/helper-string-parser": "^7.24.6", - "@babel/helper-validator-identifier": "^7.24.6", - "to-fast-properties": "^2.0.0" - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "dev": true - }, - "@csstools/css-parser-algorithms": { - "version": "2.3.2", - "dev": true, - "requires": {} - }, - "@csstools/css-tokenizer": { - "version": "2.2.1", - "dev": true - }, - "@csstools/media-query-list-parser": { - "version": "2.1.5", - "dev": true, - "requires": {} - }, - "@csstools/selector-specificity": { - "version": "3.0.0", - "dev": true, - "requires": {} - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "dev": true - }, - "@elastic/react-search-ui": { - "version": "1.21.4", - "requires": { - "@elastic/react-search-ui-views": "1.21.4", - "@elastic/search-ui": "1.21.4" - } - }, - "@elastic/react-search-ui-views": { - "version": "1.21.4", - "requires": { - "@elastic/search-ui": "1.21.4", - "downshift": "^3.2.10", - "rc-pagination": "^4.0.4", - "react-select": "^5.0.0" - } - }, - "@elastic/search-ui": { - "version": "1.21.4", - "requires": { - "date-fns": "^1.30.1", - "deep-equal": "^1.0.1", - "history": "^4.9.0", - "qs": "^6.7.0" - }, - "dependencies": { - "history": { - "version": "4.10.1", - "requires": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - } - } - }, - "@emotion/babel-plugin": { - "version": "11.11.0", - "requires": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/serialize": "^1.1.2", - "babel-plugin-macros": "^3.1.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "4.2.0" - }, - "dependencies": { - "convert-source-map": { - "version": "1.9.0" - }, - "escape-string-regexp": { - "version": "4.0.0" - }, - "source-map": { - "version": "0.5.7" - } - } - }, - "@emotion/cache": { - "version": "11.11.0", - "requires": { - "@emotion/memoize": "^0.8.1", - "@emotion/sheet": "^1.2.2", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "stylis": "4.2.0" - } - }, - "@emotion/hash": { - "version": "0.9.1" - }, - "@emotion/memoize": { - "version": "0.8.1" - }, - "@emotion/react": { - "version": "11.11.4", - "requires": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/cache": "^11.11.0", - "@emotion/serialize": "^1.1.3", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "hoist-non-react-statics": "^3.3.1" - } - }, - "@emotion/serialize": { - "version": "1.1.3", - "requires": { - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/unitless": "^0.8.1", - "@emotion/utils": "^1.2.1", - "csstype": "^3.0.2" - } - }, - "@emotion/sheet": { - "version": "1.2.2" - }, - "@emotion/unitless": { - "version": "0.8.1" - }, - "@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.0.1", - "requires": {} - }, - "@emotion/utils": { - "version": "1.2.1" - }, - "@emotion/weak-memoize": { - "version": "0.3.1" - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "requires": { - "eslint-visitor-keys": "^3.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "3.3.0" - } - } - }, - "@eslint-community/regexpp": { - "version": "4.9.1" - }, - "@eslint/eslintrc": { - "version": "2.1.4", - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "globals": { - "version": "13.23.0", - "requires": { - "type-fest": "^0.20.2" - } - }, - "json-schema-traverse": { - "version": "0.4.1" - }, - "type-fest": { - "version": "0.20.2" - } - } - }, - "@eslint/js": { - "version": "8.57.0" - }, - "@floating-ui/core": { - "version": "1.6.0", - "requires": { - "@floating-ui/utils": "^0.2.1" - } - }, - "@floating-ui/dom": { - "version": "1.6.3", - "requires": { - "@floating-ui/core": "^1.0.0", - "@floating-ui/utils": "^0.2.0" - } - }, - "@floating-ui/utils": { - "version": "0.2.1" - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.5.2" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.5.2", - "requires": { - "@fortawesome/fontawesome-common-types": "6.5.2" - } - }, - "@fortawesome/free-brands-svg-icons": { - "version": "6.5.2", - "requires": { - "@fortawesome/fontawesome-common-types": "6.5.2" - } - }, - "@fortawesome/free-solid-svg-icons": { - "version": "6.5.2", - "requires": { - "@fortawesome/fontawesome-common-types": "6.5.2" - } - }, - "@fortawesome/react-fontawesome": { - "version": "0.2.2", - "requires": { - "prop-types": "^15.8.1" - } - }, - "@gilbarbara/deep-equal": { - "version": "0.1.2" - }, - "@humanwhocodes/config-array": { - "version": "0.11.14", - "requires": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1" - }, - "@humanwhocodes/object-schema": { - "version": "2.0.2" - }, - "@isaacs/cliui": { - "version": "8.0.2", - "dev": true, - "requires": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "dev": true - }, - "string-width": { - "version": "5.1.2", - "dev": true, - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - } - }, - "strip-ansi": { - "version": "7.1.0", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "@isaacs/fs-minipass": { - "version": "4.0.0", - "dev": true, - "requires": { - "minipass": "^7.0.4" - } - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "dev": true - } - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "dev": true - }, - "@jest/console": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/core": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/console": "^29.7.0", - "@jest/reporters": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-resolve-dependencies": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "jest-watcher": "^29.7.0", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/environment": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - } - }, - "@jest/expect": { - "version": "29.7.0", - "dev": true, - "requires": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - } - }, - "@jest/expect-utils": { - "version": "29.7.0", - "dev": true, - "requires": { - "jest-get-type": "^29.6.3" - } - }, - "@jest/fake-timers": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - } - }, - "@jest/globals": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - } - }, - "@jest/reporters": { - "version": "29.7.0", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/schemas": { - "version": "29.6.3", - "dev": true, - "requires": { - "@sinclair/typebox": "^0.27.8" - } - }, - "@jest/source-map": { - "version": "29.6.3", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - } - }, - "@jest/test-result": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - } - }, - "@jest/transform": { - "version": "29.7.0", - "dev": true, - "requires": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/types": { - "version": "29.6.3", - "dev": true, - "requires": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0" - }, - "@jridgewell/set-array": { - "version": "1.2.1" - }, - "@jridgewell/source-map": { - "version": "0.3.5", - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@khanisak/temperature-converter": { - "version": "2.0.1" - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "dev": true - }, - "@mapbox/jsonlint-lines-primitives": { - "version": "2.0.2" - }, - "@mapbox/mapbox-gl-style-spec": { - "version": "13.28.0", - "requires": { - "@mapbox/jsonlint-lines-primitives": "~2.0.2", - "@mapbox/point-geometry": "^0.1.0", - "@mapbox/unitbezier": "^0.0.0", - "csscolorparser": "~1.0.2", - "json-stringify-pretty-compact": "^2.0.0", - "minimist": "^1.2.6", - "rw": "^1.3.3", - "sort-object": "^0.3.2" - } - }, - "@mapbox/point-geometry": { - "version": "0.1.0" - }, - "@mapbox/unitbezier": { - "version": "0.0.0" - }, - "@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "dev": true, - "requires": { - "eslint-scope": "5.1.1" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5" - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@petamoriken/float16": { - "version": "3.7.1" - }, - "@pkgjs/parseargs": { - "version": "0.11.0", - "dev": true, - "optional": true - }, - "@playwright/test": { - "version": "1.44.1", - "dev": true, - "requires": { - "playwright": "1.44.1" - } - }, - "@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.5.13", - "dev": true, - "requires": { - "ansi-html-community": "^0.0.8", - "core-js-pure": "^3.23.3", - "error-stack-parser": "^2.0.6", - "html-entities": "^2.1.0", - "loader-utils": "^2.0.4", - "schema-utils": "^3.0.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "dev": true - } - } - }, - "@polka/url": { - "version": "1.0.0-next.23", - "dev": true - }, - "@popperjs/core": { - "version": "2.11.8" - }, - "@reduxjs/toolkit": { - "version": "2.2.5", - "requires": { - "immer": "^10.0.3", - "redux": "^5.0.1", - "redux-thunk": "^3.1.0", - "reselect": "^5.1.0" - } - }, - "@sinclair/typebox": { - "version": "0.27.8", - "dev": true - }, - "@sinonjs/commons": { - "version": "3.0.0", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "10.3.0", - "dev": true, - "requires": { - "@sinonjs/commons": "^3.0.0" - } - }, - "@tootallnate/once": { - "version": "2.0.0", - "dev": true - }, - "@trysound/sax": { - "version": "0.2.0", - "dev": true - }, - "@types/babel__core": { - "version": "7.20.2", - "dev": true, - "requires": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.5", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.2", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.20.2", - "dev": true, - "requires": { - "@babel/types": "^7.20.7" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.13", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.5.4", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/d3-array": { - "version": "3.0.8" - }, - "@types/d3-color": { - "version": "3.1.1" - }, - "@types/d3-ease": { - "version": "3.0.0" - }, - "@types/d3-interpolate": { - "version": "3.0.2", - "requires": { - "@types/d3-color": "*" - } - }, - "@types/d3-path": { - "version": "3.0.0" - }, - "@types/d3-scale": { - "version": "4.0.5", - "requires": { - "@types/d3-time": "*" - } - }, - "@types/d3-shape": { - "version": "3.1.3", - "requires": { - "@types/d3-path": "*" - } - }, - "@types/d3-time": { - "version": "3.0.1" - }, - "@types/d3-timer": { - "version": "3.0.0" - }, - "@types/eslint": { - "version": "8.4.6", - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "1.0.5" - }, - "@types/express": { - "version": "4.17.21", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.43", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "@types/glob": { - "version": "7.2.0", - "dev": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/graceful-fs": { - "version": "4.1.7", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/hoist-non-react-statics": { - "version": "3.3.1", - "requires": { - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0" - } - }, - "@types/http-errors": { - "version": "2.0.4", - "dev": true - }, - "@types/http-proxy": { - "version": "1.17.9", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", - "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jsdom": { - "version": "20.0.1", - "dev": true, - "requires": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - }, - "dependencies": { - "parse5": { - "version": "7.1.2", - "dev": true, - "requires": { - "entities": "^4.4.0" - } - } - } - }, - "@types/json-schema": { - "version": "7.0.15" - }, - "@types/json5": { - "version": "0.0.29", - "dev": true - }, - "@types/lodash": { - "version": "4.14.199" - }, - "@types/lodash-es": { - "version": "4.17.9", - "requires": { - "@types/lodash": "*" - } - }, - "@types/mime": { - "version": "3.0.1", - "dev": true - }, - "@types/minimatch": { - "version": "3.0.5", - "dev": true - }, - "@types/minimist": { - "version": "1.2.3", - "dev": true - }, - "@types/node": { - "version": "18.15.11" - }, - "@types/node-forge": { - "version": "1.3.11", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/normalize-package-data": { - "version": "2.4.2", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0" - }, - "@types/prop-types": { - "version": "15.7.5" - }, - "@types/qs": { - "version": "6.9.7", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "dev": true - }, - "@types/react": { - "version": "18.2.79", - "requires": { - "@types/prop-types": "*", - "csstype": "^3.0.2" - } - }, - "@types/react-redux": { - "version": "7.1.25", - "requires": { - "@types/hoist-non-react-statics": "^3.3.0", - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0", - "redux": "^4.0.0" - }, - "dependencies": { - "redux": { - "version": "4.2.1", - "requires": { - "@babel/runtime": "^7.9.2" - } - } - } - }, - "@types/react-transition-group": { - "version": "4.4.10", - "requires": { - "@types/react": "*" - } - }, - "@types/retry": { - "version": "0.12.2", - "dev": true - }, - "@types/semver": { - "version": "7.5.8", - "dev": true - }, - "@types/send": { - "version": "0.17.4", - "dev": true, - "requires": { - "@types/mime": "^1", - "@types/node": "*" - }, - "dependencies": { - "@types/mime": { - "version": "1.3.5", - "dev": true - } - } - }, - "@types/serve-index": { - "version": "1.9.4", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.5", - "dev": true, - "requires": { - "@types/http-errors": "*", - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.36", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/stack-utils": { - "version": "2.0.1", - "dev": true - }, - "@types/tough-cookie": { - "version": "4.0.2", - "dev": true - }, - "@types/use-sync-external-store": { - "version": "0.0.3" - }, - "@types/ws": { - "version": "8.5.10", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/yargs": { - "version": "17.0.22", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "dev": true - }, - "@typescript-eslint/scope-manager": { - "version": "6.21.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - } - }, - "@typescript-eslint/types": { - "version": "6.21.0", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "7.5.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "9.0.3", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "@typescript-eslint/utils": { - "version": "6.21.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "7.5.4" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "3.4.3", - "dev": true - } - } - }, - "@ungap/structured-clone": { - "version": "1.2.0" - }, - "@webassemblyjs/ast": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6" - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.6" - }, - "@webassemblyjs/helper-buffer": { - "version": "1.12.1" - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6" - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.6", - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.6", - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.6" - }, - "@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.12.1", - "requires": { - "@webassemblyjs/ast": "1.12.1", - "@xtuc/long": "4.2.2" - } - }, - "@webpack-cli/configtest": { - "version": "2.1.1", - "dev": true, - "requires": {} - }, - "@webpack-cli/info": { - "version": "2.0.2", - "dev": true, - "requires": {} - }, - "@webpack-cli/serve": { - "version": "2.0.5", - "dev": true, - "requires": {} - }, - "@xtuc/ieee754": { - "version": "1.2.0" - }, - "@xtuc/long": { - "version": "4.2.2" - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "dev": true - }, - "abab": { - "version": "2.0.6", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.10.0" - }, - "acorn-import-assertions": { - "version": "1.9.0", - "requires": {} - }, - "acorn-jsx": { - "version": "5.3.2", - "requires": {} - }, - "acorn-walk": { - "version": "8.2.0", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "dev": true, - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.14.0.tgz", - "integrity": "sha512-oYs1UUtO97ZO2lJ4bwnWeQW8/zvOIQLGKcvPTsWmvc2SYgBb+upuNS5NxoLaMU4h8Ju3Nbj6Cq8mD2LQoqVKFA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.4.1" - } - }, - "ajv-formats": { - "version": "2.1.1", - "dev": true, - "requires": { - "ajv": "^8.0.0" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-escapes": { - "version": "4.3.2", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1" - }, - "ansi-styles": { - "version": "3.2.1", - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.2", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "arg": { - "version": "5.0.2", - "dev": true - }, - "argparse": { - "version": "2.0.1" - }, - "aria-query": { - "version": "5.3.0", - "dev": true, - "requires": { - "dequal": "^2.0.3" - } - }, - "array-buffer-byte-length": { - "version": "1.0.1", - "dev": true, - "requires": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - } - }, - "array-flatten": { - "version": "1.1.1", - "dev": true - }, - "array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "dev": true - }, - "array-uniq": { - "version": "1.0.3", - "dev": true - }, - "array.prototype.find": { - "version": "2.2.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - } - }, - "array.prototype.findlastindex": { - "version": "1.2.3", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - } - }, - "array.prototype.flat": { - "version": "1.3.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.flatmap": { - "version": "1.3.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.toreversed": { - "version": "1.1.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.tosorted": { - "version": "1.1.3", - "dev": true, - "requires": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.1.0", - "es-shim-unscopables": "^1.0.2" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.3", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "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" - } - }, - "arrify": { - "version": "1.0.1", - "dev": true - }, - "asn1": { - "version": "0.2.6", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "ast-types-flow": { - "version": "0.0.8", - "dev": true - }, - "astral-regex": { - "version": "2.0.0", - "dev": true - }, - "asynckit": { - "version": "0.4.0" - }, - "at-least-node": { - "version": "1.0.0", - "dev": true - }, - "autoprefixer": { - "version": "10.4.19", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "available-typed-arrays": { - "version": "1.0.7", - "dev": true, - "requires": { - "possible-typed-array-names": "^1.0.0" - } - }, - "axe-core": { - "version": "4.7.0", - "dev": true - }, - "axios": { - "version": "1.7.2", - "requires": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "axobject-query": { - "version": "3.2.1", - "dev": true, - "requires": { - "dequal": "^2.0.3" - } - }, - "babel-jest": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "babel-loader": { - "version": "9.1.3", - "dev": true, - "requires": { - "find-cache-dir": "^4.0.0", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "dependencies": { - "istanbul-lib-instrument": { - "version": "5.2.1", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "7.5.4" - } - } - } - }, - "babel-plugin-jest-hoist": { - "version": "29.6.3", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-plugin-macros": { - "version": "3.1.0", - "requires": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, - "dependencies": { - "cosmiconfig": { - "version": "7.1.0", - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "parse-json": { - "version": "5.2.0", - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "yaml": { - "version": "1.10.2" - } - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.4.10", - "dev": true, - "requires": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.6.1", - "semver": "7.5.4" - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.10.4", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.6.1", - "core-js-compat": "^3.36.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.6.1", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.6.1" - } - }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - } - }, - "babel-preset-jest": { - "version": "29.6.3", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "balanced-match": { - "version": "1.0.2" - }, - "batch": { - "version": "0.6.1", - "dev": true - }, - "batch-processor": { - "version": "1.0.0" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big.js": { - "version": "5.2.2", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "dev": true - }, - "bluebird": { - "version": "3.7.2" - }, - "body-parser": { - "version": "1.20.2", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "dev": true - }, - "debug": { - "version": "2.6.9", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "dev": true - }, - "qs": { - "version": "6.11.0", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - } - } - }, - "bonjour-service": { - "version": "1.2.1", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "dev": true - }, - "bootstrap": { - "version": "5.3.3", - "requires": {} - }, - "brace-expansion": { - "version": "1.1.11", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.23.0", - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "bser": { - "version": "2.1.1", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer-from": { - "version": "1.1.2" - }, - "buildcheck": { - "version": "0.0.6", - "dev": true, - "optional": true - }, - "builtin-modules": { - "version": "3.3.0", - "dev": true - }, - "builtins": { - "version": "5.1.0", - "dev": true, - "requires": { - "semver": "7.5.4" - } - }, - "bundle-name": { - "version": "4.1.0", - "dev": true, - "requires": { - "run-applescript": "^7.0.0" - } - }, - "bytes": { - "version": "3.0.0" - }, - "cachai": { - "version": "1.0.2" - }, - "call-bind": { - "version": "1.0.7", - "requires": { - "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" - } - }, - "callsites": { - "version": "3.1.0" - }, - "camelcase": { - "version": "5.3.1", - "dev": true - }, - "camelcase-keys": { - "version": "7.0.2", - "dev": true, - "requires": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" - }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "dev": true - }, - "type-fest": { - "version": "1.4.0", - "dev": true - } - } - }, - "can-use-dom": { - "version": "0.1.0" - }, - "caniuse-api": { - "version": "3.0.0", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-lite": { - "version": "1.0.30001600" - }, - "chalk": { - "version": "2.4.2", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "char-regex": { - "version": "1.0.2", - "dev": true - }, - "cheerio": { - "version": "1.0.0-rc.12", - "dev": true, - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - }, - "dependencies": { - "parse5": { - "version": "7.1.2", - "dev": true, - "requires": { - "entities": "^4.4.0" - } - } - } - }, - "cheerio-select": { - "version": "2.1.0", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "chokidar": { - "version": "3.6.0", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "3.0.0", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3" - }, - "ci-info": { - "version": "3.8.0", - "dev": true - }, - "cjs-module-lexer": { - "version": "1.2.3", - "dev": true - }, - "classnames": { - "version": "2.3.2" - }, - "clean-webpack-plugin": { - "version": "4.0.0", - "dev": true, - "requires": { - "del": "^4.1.1" - }, - "dependencies": { - "array-union": { - "version": "1.0.2", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "del": { - "version": "4.1.1", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "globby": { - "version": "6.1.0", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "dev": true - } - } - }, - "p-map": { - "version": "2.1.0", - "dev": true - }, - "pify": { - "version": "4.0.1", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "cliui": { - "version": "8.0.1", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - } - } - }, - "clone-deep": { - "version": "4.0.1", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "dependencies": { - "is-plain-object": { - "version": "2.0.4", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } - } - }, - "clsx": { - "version": "1.2.1" - }, - "co": { - "version": "4.6.0", - "dev": true - }, - "collect-v8-coverage": { - "version": "1.0.2", - "dev": true - }, - "color-convert": { - "version": "1.9.3", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3" - }, - "color-parse": { - "version": "2.0.0", - "requires": { - "color-name": "^1.0.0" - } - }, - "color-rgba": { - "version": "3.0.0", - "requires": { - "color-parse": "^2.0.0", - "color-space": "^2.0.0" - } - }, - "color-space": { - "version": "2.0.1" - }, - "colord": { - "version": "2.9.3", - "dev": true - }, - "colorette": { - "version": "2.0.19", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "7.2.0", - "dev": true - }, - "common-path-prefix": { - "version": "3.0.0", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0" - } - } - }, - "compute-scroll-into-view": { - "version": "1.0.20" - }, - "concat-map": { - "version": "0.0.1" - }, - "confusing-browser-globals": { - "version": "1.0.11", - "dev": true - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "dev": true - } - } - }, - "content-type": { - "version": "1.0.5", - "dev": true - }, - "convert-source-map": { - "version": "2.0.0", - "dev": true - }, - "cookie": { - "version": "0.6.0", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "dev": true - }, - "coordinate-parser": { - "version": "1.0.7" - }, - "copy-to-clipboard": { - "version": "3.3.3", - "requires": { - "toggle-selection": "^1.0.6" - } - }, - "core-js": { - "version": "3.22.3", - "dev": true - }, - "core-js-compat": { - "version": "3.36.1", - "dev": true, - "requires": { - "browserslist": "^4.23.0" - } - }, - "core-js-pure": { - "version": "3.27.2", - "dev": true - }, - "core-util-is": { - "version": "1.0.3", - "dev": true - }, - "cosmiconfig": { - "version": "8.3.6", - "dev": true, - "requires": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - } - } - }, - "cpu-features": { - "version": "0.0.9", - "dev": true, - "optional": true, - "requires": { - "buildcheck": "~0.0.6", - "nan": "^2.17.0" - } - }, - "create-jest": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cross-env": { - "version": "7.0.3", - "dev": true, - "requires": { - "cross-spawn": "^7.0.1" - } - }, - "cross-spawn": { - "version": "7.0.3", - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "css-box-model": { - "version": "1.2.1", - "requires": { - "tiny-invariant": "^1.0.6" - } - }, - "css-declaration-sorter": { - "version": "7.2.0", - "dev": true, - "requires": {} - }, - "css-functions-list": { - "version": "3.2.1", - "dev": true - }, - "css-loader": { - "version": "7.1.2", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "7.5.4" - } - }, - "css-minimizer-webpack-plugin": { - "version": "7.0.0", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.25", - "cssnano": "^7.0.1", - "jest-worker": "^29.7.0", - "postcss": "^8.4.38", - "schema-utils": "^4.2.0", - "serialize-javascript": "^6.0.2" - }, - "dependencies": { - "schema-utils": { - "version": "4.2.0", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "css-select": { - "version": "5.1.0", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-tree": { - "version": "2.3.1", - "dev": true, - "requires": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - } - }, - "css-url-relative-plugin": { - "version": "1.1.0", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "parse-import": "^2.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "webpack-sources": { - "version": "1.4.3", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - } - } - }, - "css-what": { - "version": "6.1.0", - "dev": true - }, - "csscolorparser": { - "version": "1.0.3" - }, - "cssesc": { - "version": "3.0.0", - "dev": true - }, - "cssfontparser": { - "version": "1.2.1", - "dev": true - }, - "cssnano": { - "version": "7.0.1", - "dev": true, - "requires": { - "cssnano-preset-default": "^7.0.1", - "lilconfig": "^3.1.1" - } - }, - "cssnano-preset-default": { - "version": "7.0.1", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "css-declaration-sorter": "^7.2.0", - "cssnano-utils": "^5.0.0", - "postcss-calc": "^10.0.0", - "postcss-colormin": "^7.0.0", - "postcss-convert-values": "^7.0.0", - "postcss-discard-comments": "^7.0.0", - "postcss-discard-duplicates": "^7.0.0", - "postcss-discard-empty": "^7.0.0", - "postcss-discard-overridden": "^7.0.0", - "postcss-merge-longhand": "^7.0.0", - "postcss-merge-rules": "^7.0.0", - "postcss-minify-font-values": "^7.0.0", - "postcss-minify-gradients": "^7.0.0", - "postcss-minify-params": "^7.0.0", - "postcss-minify-selectors": "^7.0.0", - "postcss-normalize-charset": "^7.0.0", - "postcss-normalize-display-values": "^7.0.0", - "postcss-normalize-positions": "^7.0.0", - "postcss-normalize-repeat-style": "^7.0.0", - "postcss-normalize-string": "^7.0.0", - "postcss-normalize-timing-functions": "^7.0.0", - "postcss-normalize-unicode": "^7.0.0", - "postcss-normalize-url": "^7.0.0", - "postcss-normalize-whitespace": "^7.0.0", - "postcss-ordered-values": "^7.0.0", - "postcss-reduce-initial": "^7.0.0", - "postcss-reduce-transforms": "^7.0.0", - "postcss-svgo": "^7.0.0", - "postcss-unique-selectors": "^7.0.0" - } - }, - "cssnano-utils": { - "version": "5.0.0", - "dev": true, - "requires": {} - }, - "csso": { - "version": "5.0.5", - "dev": true, - "requires": { - "css-tree": "~2.2.0" - }, - "dependencies": { - "css-tree": { - "version": "2.2.1", - "dev": true, - "requires": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" - } - }, - "mdn-data": { - "version": "2.0.28", - "dev": true - } - } - }, - "cssom": { - "version": "0.5.0", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "dev": true, - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "dev": true - } - } - }, - "csstype": { - "version": "3.1.1" - }, - "d3-array": { - "version": "3.2.4", - "requires": { - "internmap": "1 - 2" - } - }, - "d3-color": { - "version": "3.1.0" - }, - "d3-ease": { - "version": "3.0.1" - }, - "d3-format": { - "version": "3.1.0" - }, - "d3-interpolate": { - "version": "3.0.1", - "requires": { - "d3-color": "1 - 3" - } - }, - "d3-path": { - "version": "3.1.0" - }, - "d3-scale": { - "version": "4.0.2", - "requires": { - "d3-array": "2.10.0 - 3", - "d3-format": "1 - 3", - "d3-interpolate": "1.2.0 - 3", - "d3-time": "2.1.1 - 3", - "d3-time-format": "2 - 4" - } - }, - "d3-shape": { - "version": "3.2.0", - "requires": { - "d3-path": "^3.1.0" - } - }, - "d3-time": { - "version": "3.1.0", - "requires": { - "d3-array": "2 - 3" - } - }, - "d3-time-format": { - "version": "4.1.0", - "requires": { - "d3-time": "1 - 3" - } - }, - "d3-timer": { - "version": "3.0.1" - }, - "damerau-levenshtein": { - "version": "1.0.8", - "dev": true - }, - "data-urls": { - "version": "3.0.2", - "dev": true, - "requires": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "dependencies": { - "tr46": { - "version": "3.0.0", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "whatwg-url": { - "version": "11.0.0", - "dev": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", - "dev": true, - "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", - "dev": true, - "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "date-fns": { - "version": "1.30.1" - }, - "debounce": { - "version": "1.2.1", - "dev": true - }, - "debug": { - "version": "4.3.4", - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "5.0.1", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.1", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "decamelize": { - "version": "1.2.0", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "dev": true - } - } - }, - "decimal.js": { - "version": "10.4.3", - "dev": true - }, - "decimal.js-light": { - "version": "2.5.1" - }, - "dedent": { - "version": "1.5.1", - "dev": true, - "requires": {} - }, - "deep-diff": { - "version": "1.0.2" - }, - "deep-equal": { - "version": "1.1.2", - "requires": { - "is-arguments": "^1.1.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.5.1" - } - }, - "deep-is": { - "version": "0.1.4" - }, - "deepmerge": { - "version": "4.3.1" - }, - "default-browser": { - "version": "5.2.1", - "dev": true, - "requires": { - "bundle-name": "^4.1.0", - "default-browser-id": "^5.0.0" - } - }, - "default-browser-id": { - "version": "5.0.0", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "dev": true, - "requires": { - "execa": "^5.0.0" - } - }, - "define-data-property": { - "version": "1.1.4", - "requires": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - } - }, - "define-lazy-prop": { - "version": "3.0.0", - "dev": true - }, - "define-properties": { - "version": "1.2.1", - "requires": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delayed-stream": { - "version": "1.0.0" - }, - "depd": { - "version": "2.0.0", - "dev": true - }, - "dequal": { - "version": "2.0.3", - "dev": true - }, - "desandro-matches-selector": { - "version": "2.0.2" - }, - "destroy": { - "version": "1.2.0", - "dev": true - }, - "detect-newline": { - "version": "3.1.0", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "dev": true - }, - "diff-sequences": { - "version": "29.6.3", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-packet": { - "version": "5.6.1", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "doctrine": { - "version": "3.0.0", - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-helpers": { - "version": "5.2.1", - "requires": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - } - }, - "dom-scroll-into-view": { - "version": "2.0.1" - }, - "dom-serializer": { - "version": "2.0.0", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "dev": true - }, - "domexception": { - "version": "4.0.0", - "dev": true, - "requires": { - "webidl-conversions": "^7.0.0" - } - }, - "domhandler": { - "version": "5.0.3", - "dev": true, - "requires": { - "domelementtype": "^2.3.0" - } - }, - "domutils": { - "version": "3.0.1", - "dev": true, - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - } - }, - "downshift": { - "version": "3.4.8", - "requires": { - "@babel/runtime": "^7.4.5", - "compute-scroll-into-view": "^1.0.9", - "prop-types": "^15.7.2", - "react-is": "^16.9.0" - } - }, - "duplexer": { - "version": "0.1.2", - "dev": true - }, - "earcut": { - "version": "2.2.4" - }, - "eastasianwidth": { - "version": "0.2.0", - "dev": true - }, - "ee-first": { - "version": "1.1.1", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.693" - }, - "element-resize-detector": { - "version": "1.2.4", - "requires": { - "batch-processor": "1.0.0" - } - }, - "elm-pep": { - "version": "1.0.6" - }, - "emittery": { - "version": "0.13.1", - "dev": true - }, - "emoji-regex": { - "version": "9.2.2", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "dev": true - }, - "enhanced-resolve": { - "version": "0.9.1", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.2.0", - "tapable": "^0.1.8" - } - }, - "entities": { - "version": "4.4.0", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "dev": true - }, - "envinfo": { - "version": "7.8.1", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "error-stack-parser": { - "version": "2.0.7", - "dev": true, - "requires": { - "stackframe": "^1.1.1" - } - }, - "es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "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-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", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "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", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" - } - }, - "es-define-property": { - "version": "1.0.0", - "requires": { - "get-intrinsic": "^1.2.4" - } - }, - "es-errors": { - "version": "1.3.0" - }, - "es-iterator-helpers": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", - "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.1.2" - } - }, - "es-module-lexer": { - "version": "1.2.1" - }, - "es-object-atoms": { - "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, - "requires": { - "es-errors": "^1.3.0" - } - }, - "es-set-tostringtag": { - "version": "2.0.3", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - } - }, - "es-shim-unscopables": { - "version": "1.0.2", - "dev": true, - "requires": { - "hasown": "^2.0.0" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "escalade": { - "version": "3.1.1" - }, - "escape-html": { - "version": "1.0.3", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5" - }, - "escodegen": { - "version": "2.0.0", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "levn": { - "version": "0.3.0", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "optionator": { - "version": "0.8.3", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "1.2.5" - } - }, - "prelude-ls": { - "version": "1.1.2", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - } - } - }, - "eslint": { - "version": "8.57.0", - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-styles": { - "version": "4.3.0", - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4" - }, - "escape-string-regexp": { - "version": "4.0.0" - }, - "eslint-scope": { - "version": "7.2.2", - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3" - }, - "glob-parent": { - "version": "6.0.2", - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "requires": { - "type-fest": "^0.20.2" - } - }, - "has-flag": { - "version": "4.0.0" - }, - "json-schema-traverse": { - "version": "0.4.1" - }, - "supports-color": { - "version": "7.2.0", - "requires": { - "has-flag": "^4.0.0" - } - }, - "type-fest": { - "version": "0.20.2" - } - } - }, - "eslint-compat-utils": { - "version": "0.1.2", - "dev": true, - "requires": {} - }, - "eslint-config-airbnb": { - "version": "19.0.4", - "dev": true, - "requires": { - "eslint-config-airbnb-base": "^15.0.0", - "object.assign": "^4.1.2", - "object.entries": "^1.1.5" - } - }, - "eslint-config-airbnb-base": { - "version": "15.0.0", - "dev": true, - "requires": { - "confusing-browser-globals": "^1.0.10", - "object.assign": "^4.1.2", - "object.entries": "^1.1.5", - "semver": "7.5.4" - } - }, - "eslint-config-standard": { - "version": "17.1.0", - "dev": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.9", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-import-resolver-webpack": { - "version": "0.13.8", - "dev": true, - "requires": { - "array.prototype.find": "^2.2.2", - "debug": "^3.2.7", - "enhanced-resolve": "^0.9.1", - "find-root": "^1.1.0", - "hasown": "^2.0.0", - "interpret": "^1.4.0", - "is-core-module": "^2.13.1", - "is-regex": "^1.1.4", - "lodash": "^4.17.21", - "resolve": "^2.0.0-next.5", - "semver": "7.5.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "resolve": { - "version": "2.0.0-next.5", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "eslint-module-utils": { - "version": "2.8.0", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-es": { - "version": "3.0.1", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - }, - "eslint-plugin-es-x": { - "version": "7.5.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.1.2", - "@eslint-community/regexpp": "^4.6.0", - "eslint-compat-utils": "^0.1.2" - } - }, - "eslint-plugin-import": { - "version": "2.29.1", - "dev": true, - "requires": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "7.5.4", - "tsconfig-paths": "^3.15.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - } - } - }, - "eslint-plugin-jest": { - "version": "28.5.0", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^6.0.0 || ^7.0.0" - } - }, - "eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "dev": true, - "requires": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" - } - }, - "eslint-plugin-n": { - "version": "16.6.2", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "builtins": "^5.0.1", - "eslint-plugin-es-x": "^7.5.0", - "get-tsconfig": "^4.7.0", - "globals": "^13.24.0", - "ignore": "^5.2.4", - "is-builtin-module": "^3.2.1", - "is-core-module": "^2.12.1", - "minimatch": "^3.1.2", - "resolve": "^1.22.2", - "semver": "7.5.4" - }, - "dependencies": { - "globals": { - "version": "13.24.0", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "type-fest": { - "version": "0.20.2", - "dev": true - } - } - }, - "eslint-plugin-no-storage": { - "version": "1.0.2", - "dev": true - }, - "eslint-plugin-node": { - "version": "11.1.0", - "dev": true, - "requires": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "7.5.4" - } - }, - "eslint-plugin-promise": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.2.0.tgz", - "integrity": "sha512-QmAqwizauvnKOlifxyDj2ObfULpHQawlg/zQdgEixur9vl0CvZGv/LCJV2rtj3210QCoeGBzVMfMXqGAOr/4fA==", - "dev": true, - "requires": {} - }, - "eslint-plugin-react": { - "version": "7.34.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", - "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", - "dev": true, - "requires": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.toreversed": "^1.1.2", - "array.prototype.tosorted": "^1.1.3", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.hasown": "^1.1.4", - "object.values": "^1.2.0", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "7.5.4", - "string.prototype.matchall": "^4.0.11" - }, - "dependencies": { - "doctrine": { - "version": "2.1.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "resolve": { - "version": "2.0.0-next.5", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "eslint-plugin-react-hooks": { - "version": "4.6.2", - "requires": {} - }, - "eslint-scope": { - "version": "5.1.1", - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0" - } - } - }, - "eslint-utils": { - "version": "2.1.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "2.1.0", - "dev": true - }, - "espree": { - "version": "9.6.1", - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "3.4.3" - } - } - }, - "esprima": { - "version": "4.0.1", - "dev": true - }, - "esquery": { - "version": "1.5.0", - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0" - }, - "esutils": { - "version": "2.0.3" - }, - "etag": { - "version": "1.8.1", - "dev": true - }, - "ev-emitter": { - "version": "1.1.1" - }, - "eventemitter3": { - "version": "4.0.7" - }, - "events": { - "version": "3.3.0" - }, - "execa": { - "version": "5.1.1", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "dependencies": { - "get-stream": { - "version": "6.0.1", - "dev": true - } - } - }, - "exit": { - "version": "0.1.2", - "dev": true - }, - "expect": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/expect-utils": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0" - } - }, - "express": { - "version": "4.19.2", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.6.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "dev": true - }, - "qs": { - "version": "6.11.0", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "safe-buffer": { - "version": "5.2.1", - "dev": true - } - } - }, - "fast-deep-equal": { - "version": "3.1.3" - }, - "fast-diff": { - "version": "1.3.0", - "dev": true, - "peer": true - }, - "fast-equals": { - "version": "5.0.1" - }, - "fast-glob": { - "version": "3.3.1", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0" - }, - "fast-levenshtein": { - "version": "2.0.6" - }, - "fastest-levenshtein": { - "version": "1.0.16", - "dev": true - }, - "fastq": { - "version": "1.13.0", - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fb-watchman": { - "version": "2.0.2", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "fetch-mock": { - "version": "9.11.0", - "dev": true, - "requires": { - "@babel/core": "^7.0.0", - "@babel/runtime": "^7.0.0", - "core-js": "^3.0.0", - "debug": "^4.1.1", - "glob-to-regexp": "^0.4.0", - "is-subset": "^0.1.1", - "lodash.isequal": "^4.5.0", - "path-to-regexp": "^2.2.1", - "querystring": "^0.2.0", - "whatwg-url": "^6.5.0" - }, - "dependencies": { - "path-to-regexp": { - "version": "2.4.0", - "dev": true - } - } - }, - "file-entry-cache": { - "version": "6.0.1", - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-saver": { - "version": "2.0.5" - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.2.0", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "4.0.0", - "dev": true, - "requires": { - "common-path-prefix": "^3.0.0", - "pkg-dir": "^7.0.0" - }, - "dependencies": { - "find-up": { - "version": "6.3.0", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "locate-path": { - "version": "7.2.0", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "p-limit": { - "version": "4.0.0", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "path-exists": { - "version": "5.0.0", - "dev": true - }, - "pkg-dir": { - "version": "7.0.0", - "dev": true, - "requires": { - "find-up": "^6.3.0" - } - }, - "yocto-queue": { - "version": "1.0.0", - "dev": true - } - } - }, - "find-root": { - "version": "1.1.0" - }, - "find-up": { - "version": "5.0.0", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "find-yarn-workspace-root": { - "version": "2.0.0", - "dev": true, - "requires": { - "micromatch": "^4.0.2" - } - }, - "fizzy-ui-utils": { - "version": "2.0.7", - "requires": { - "desandro-matches-selector": "^2.0.0" - } - }, - "flat-cache": { - "version": "3.1.1", - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.9" - }, - "follow-redirects": { - "version": "1.15.6" - }, - "for-each": { - "version": "0.3.3", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "foreground-child": { - "version": "3.1.1", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "dependencies": { - "signal-exit": { - "version": "4.1.0", - "dev": true - } - } - }, - "form-data": { - "version": "4.0.0", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "dev": true - }, - "fraction.js": { - "version": "4.3.7", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0" - }, - "fsevents": { - "version": "2.3.2", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.2" - }, - "function.prototype.name": { - "version": "1.1.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - } - }, - "functions-have-names": { - "version": "1.2.3" - }, - "gensync": { - "version": "1.0.0-beta.2", - "dev": true - }, - "geographiclib-geodesic": { - "version": "2.0.0" - }, - "geotiff": { - "version": "2.0.7", - "requires": { - "@petamoriken/float16": "^3.4.7", - "lerc": "^3.0.0", - "pako": "^2.0.4", - "parse-headers": "^2.0.2", - "quick-lru": "^6.1.1", - "web-worker": "^1.2.0", - "xml-utils": "^1.0.2" - }, - "dependencies": { - "pako": { - "version": "2.1.0" - }, - "quick-lru": { - "version": "6.1.1" - } - } - }, - "get-caller-file": { - "version": "2.0.5", - "dev": true - }, - "get-imports": { - "version": "1.0.0", - "dev": true, - "requires": { - "array-uniq": "^1.0.1", - "import-regex": "^1.1.0" - } - }, - "get-intrinsic": { - "version": "1.2.4", - "requires": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - } - }, - "get-package-type": { - "version": "0.1.0", - "dev": true - }, - "get-size": { - "version": "2.0.3" - }, - "get-symbol-description": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - } - }, - "get-tsconfig": { - "version": "4.7.2", - "dev": true, - "requires": { - "resolve-pkg-maps": "^1.0.0" - } - }, - "glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", - "dev": true, - "requires": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "path-scurry": "^1.11.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "9.0.4", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "glob-parent": { - "version": "5.1.2", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1" - }, - "global-modules": { - "version": "2.0.0", - "dev": true, - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "dev": true, - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "dependencies": { - "which": { - "version": "1.3.1", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "globals": { - "version": "11.12.0", - "dev": true - }, - "globalthis": { - "version": "1.0.3", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "globjoin": { - "version": "0.1.4", - "dev": true - }, - "gopd": { - "version": "1.0.1", - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.11" - }, - "graphemer": { - "version": "1.4.0" - }, - "gzip-size": { - "version": "6.0.0", - "dev": true, - "requires": { - "duplexer": "^0.1.2" - } - }, - "handle-thing": { - "version": "2.0.1", - "dev": true - }, - "hard-rejection": { - "version": "2.1.0", - "dev": true - }, - "has-bigints": { - "version": "1.0.2", - "dev": true - }, - "has-flag": { - "version": "3.0.0" - }, - "has-property-descriptors": { - "version": "1.0.2", - "requires": { - "es-define-property": "^1.0.0" - } - }, - "has-proto": { - "version": "1.0.3" - }, - "has-symbols": { - "version": "1.0.3" - }, - "has-tostringtag": { - "version": "1.0.2", - "requires": { - "has-symbols": "^1.0.3" - } - }, - "hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "requires": { - "function-bind": "^1.1.2" - } - }, - "history": { - "version": "5.3.0", - "requires": { - "@babel/runtime": "^7.7.6" - } - }, - "hoist-non-react-statics": { - "version": "3.3.2", - "requires": { - "react-is": "^16.7.0" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "hpack.js": { - "version": "2.1.6", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "html-encoding-sniffer": { - "version": "3.0.0", - "dev": true, - "requires": { - "whatwg-encoding": "^2.0.0" - } - }, - "html-entities": { - "version": "2.5.2", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "dev": true - }, - "html-tags": { - "version": "3.3.1", - "dev": true - }, - "htmlparser2": { - "version": "8.0.1", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "http-deceiver": { - "version": "1.2.7", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-parser-js": { - "version": "0.5.6", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "dependencies": { - "is-plain-obj": { - "version": "3.0.0", - "dev": true - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "dev": true - }, - "husky": { - "version": "9.0.11", - "dev": true - }, - "hyperdyperid": { - "version": "1.2.0", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1" - }, - "ignore": { - "version": "5.2.4" - }, - "imagesloaded": { - "version": "5.0.0", - "requires": { - "ev-emitter": "^2.1.2" - }, - "dependencies": { - "ev-emitter": { - "version": "2.1.2" - } - } - }, - "immer": { - "version": "10.0.4" - }, - "immutability-helper": { - "version": "3.1.1" - }, - "immutable": { - "version": "4.3.4", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "import-lazy": { - "version": "4.0.0", - "dev": true - }, - "import-local": { - "version": "3.1.0", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "import-regex": { - "version": "1.1.0", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4" - }, - "indent-string": { - "version": "5.0.0", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4" - }, - "ini": { - "version": "1.3.8", - "dev": true - }, - "internal-slot": { - "version": "1.0.7", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - } - }, - "internmap": { - "version": "2.0.3" - }, - "interpret": { - "version": "1.4.0", - "dev": true - }, - "ipaddr.js": { - "version": "1.9.1", - "dev": true - }, - "is-arguments": { - "version": "1.1.1", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-array-buffer": { - "version": "3.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - } - }, - "is-arrayish": { - "version": "0.2.1" - }, - "is-async-function": { - "version": "2.0.0", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-bigint": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-builtin-module": { - "version": "3.2.1", - "dev": true, - "requires": { - "builtin-modules": "^3.3.0" - } - }, - "is-callable": { - "version": "1.2.7", - "dev": true - }, - "is-core-module": { - "version": "2.13.1", - "requires": { - "hasown": "^2.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-typed-array": "^1.1.13" - } - }, - "is-date-object": { - "version": "1.0.5", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-docker": { - "version": "2.2.1", - "dev": true - }, - "is-extglob": { - "version": "2.1.1" - }, - "is-finalizationregistry": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true - }, - "is-generator-fn": { - "version": "2.1.0", - "dev": true - }, - "is-generator-function": { - "version": "1.0.10", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-inside-container": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-docker": "^3.0.0" - }, - "dependencies": { - "is-docker": { - "version": "3.0.0", - "dev": true - } - } - }, - "is-lite": { - "version": "1.2.1" - }, - "is-map": { - "version": "2.0.2", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.3", - "dev": true - }, - "is-network-error": { - "version": "1.0.1", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-cwd": { - "version": "2.2.0", - "dev": true - }, - "is-path-in-cwd": { - "version": "2.1.0", - "dev": true, - "requires": { - "is-path-inside": "^2.1.0" - }, - "dependencies": { - "is-path-inside": { - "version": "2.1.0", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } - } - } - }, - "is-path-inside": { - "version": "3.0.3" - }, - "is-plain-obj": { - "version": "1.1.0", - "dev": true - }, - "is-plain-object": { - "version": "5.0.0", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "dev": true - }, - "is-regex": { - "version": "1.1.4", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-set": { - "version": "2.0.2", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.3", - "dev": true, - "requires": { - "call-bind": "^1.0.7" - } - }, - "is-stream": { - "version": "2.0.1", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-subset": { - "version": "0.1.1", - "dev": true - }, - "is-symbol": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.13", - "dev": true, - "requires": { - "which-typed-array": "^1.1.14" - } - }, - "is-weakmap": { - "version": "2.0.1", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "is-wsl": { - "version": "2.2.0", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "dev": true - }, - "isexe": { - "version": "2.0.0" - }, - "isobject": { - "version": "3.0.1", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "6.0.0", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "7.5.4" - } - }, - "istanbul-lib-report": { - "version": "3.0.1", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "make-dir": { - "version": "4.0.0", - "dev": true, - "requires": { - "semver": "7.5.4" - } - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.6", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "iterator.prototype": { - "version": "1.1.2", - "dev": true, - "requires": { - "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" - } - }, - "jackspeak": { - "version": "3.1.2", - "dev": true, - "requires": { - "@isaacs/cliui": "^8.0.2", - "@pkgjs/parseargs": "^0.11.0" - } - }, - "jest": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - } - }, - "jest-canvas-mock": { - "version": "2.5.2", - "dev": true, - "requires": { - "cssfontparser": "^1.2.1", - "moo-color": "^1.0.2" - } - }, - "jest-changed-files": { - "version": "29.7.0", - "dev": true, - "requires": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" - } - }, - "jest-circus": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.7.0", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-cli": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-config": { - "version": "29.7.0", - "dev": true, - "requires": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "parse-json": { - "version": "5.2.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-diff": { - "version": "29.7.0", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-docblock": { - "version": "29.7.0", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-environment-jsdom": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/jsdom": "^20.0.0", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0", - "jsdom": "^20.0.0" - }, - "dependencies": { - "acorn-globals": { - "version": "7.0.1", - "dev": true, - "requires": { - "acorn": "^8.1.0", - "acorn-walk": "^8.0.2" - } - }, - "jsdom": { - "version": "20.0.3", - "dev": true, - "requires": { - "abab": "^2.0.6", - "acorn": "^8.8.1", - "acorn-globals": "^7.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.2", - "decimal.js": "^10.4.2", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.1", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.2", - "parse5": "^7.1.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.2", - "w3c-xmlserializer": "^4.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0", - "ws": "^8.11.0", - "xml-name-validator": "^4.0.0" - } - }, - "parse5": { - "version": "7.1.2", - "dev": true, - "requires": { - "entities": "^4.4.0" - } - }, - "saxes": { - "version": "6.0.0", - "dev": true, - "requires": { - "xmlchars": "^2.2.0" - } - }, - "tr46": { - "version": "3.0.0", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "w3c-xmlserializer": { - "version": "4.0.0", - "dev": true, - "requires": { - "xml-name-validator": "^4.0.0" - } - }, - "whatwg-url": { - "version": "11.0.0", - "dev": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - }, - "ws": { - "version": "8.12.0", - "dev": true, - "requires": {} - } - } - }, - "jest-environment-node": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - } - }, - "jest-get-type": { - "version": "29.6.3", - "dev": true - }, - "jest-haste-map": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - } - }, - "jest-leak-detector": { - "version": "29.7.0", - "dev": true, - "requires": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - } - }, - "jest-matcher-utils": { - "version": "29.7.0", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-message-util": { - "version": "29.7.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-mock": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - } - }, - "jest-pnp-resolver": { - "version": "1.2.3", - "dev": true, - "requires": {} - }, - "jest-regex-util": { - "version": "29.6.3", - "dev": true - }, - "jest-resolve": { - "version": "29.7.0", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-resolve-dependencies": { - "version": "29.7.0", - "dev": true, - "requires": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" - } - }, - "jest-runner": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/console": "^29.7.0", - "@jest/environment": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-leak-detector": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-resolve": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-util": "^29.7.0", - "jest-watcher": "^29.7.0", - "jest-worker": "^29.7.0", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-runtime": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-snapshot": { - "version": "29.7.0", - "dev": true, - "requires": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "natural-compare": "^1.4.0", - "pretty-format": "^29.7.0", - "semver": "7.5.4" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-util": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-validate": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "camelcase": { - "version": "6.3.0", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-watcher": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-worker": { - "version": "29.7.0", - "dev": true, - "requires": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jiti": { - "version": "1.20.0", - "dev": true - }, - "js-tokens": { - "version": "4.0.0" - }, - "js-yaml": { - "version": "4.1.0", - "requires": { - "argparse": "^2.0.1" - } - }, - "jsdom-worker": { - "version": "0.3.0", - "requires": { - "mitt": "^3.0.0", - "uuid-v4": "^0.1.0" - } - }, - "jsesc": { - "version": "2.5.2", - "dev": true - }, - "json-buffer": { - "version": "3.0.1" - }, - "json-parse-better-errors": { - "version": "1.0.2", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1" - }, - "json-schema-traverse": { - "version": "1.0.0", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.2", - "dev": true, - "requires": { - "jsonify": "^0.0.1" - } - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1" - }, - "json-stringify-pretty-compact": { - "version": "2.0.0" - }, - "json5": { - "version": "2.2.3", - "dev": true - }, - "jsonfile": { - "version": "6.1.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "dev": true - } - } - }, - "jsonify": { - "version": "0.0.1", - "dev": true - }, - "jsx-ast-utils": { - "version": "3.3.5", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - } - }, - "kdbush": { - "version": "4.0.2" - }, - "keyv": { - "version": "4.5.4", - "requires": { - "json-buffer": "3.0.1" - } - }, - "kind-of": { - "version": "6.0.3", - "dev": true - }, - "klaw-sync": { - "version": "6.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11" - } - }, - "kleur": { - "version": "3.0.3", - "dev": true - }, - "known-css-properties": { - "version": "0.28.0", - "dev": true - }, - "language-subtag-registry": { - "version": "0.3.22", - "dev": true - }, - "language-tags": { - "version": "1.0.9", - "dev": true, - "requires": { - "language-subtag-registry": "^0.3.20" - } - }, - "launch-editor": { - "version": "2.6.1", - "dev": true, - "requires": { - "picocolors": "^1.0.0", - "shell-quote": "^1.8.1" - } - }, - "lerc": { - "version": "3.0.0" - }, - "leven": { - "version": "3.1.0", - "dev": true - }, - "levn": { - "version": "0.4.1", - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lilconfig": { - "version": "3.1.1", - "dev": true - }, - "lines-and-columns": { - "version": "1.2.4" - }, - "load-json-file": { - "version": "4.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "3.0.0", - "dev": true - } - } - }, - "loader-runner": { - "version": "4.3.0" - }, - "loader-utils": { - "version": "2.0.4", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "locate-path": { - "version": "6.0.0", - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash": { - "version": "4.17.21" - }, - "lodash-es": { - "version": "4.17.21" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "dev": true, - "peer": true - }, - "lodash.debounce": { - "version": "4.0.8", - "dev": true - }, - "lodash.difference": { - "version": "4.5.0" - }, - "lodash.isequal": { - "version": "4.5.0", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "dev": true - }, - "lodash.memoize": { - "version": "4.1.2", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2" - }, - "lodash.sortby": { - "version": "4.7.0", - "dev": true - }, - "lodash.truncate": { - "version": "4.4.2", - "dev": true - }, - "lodash.uniq": { - "version": "4.5.0", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "dev": true, - "requires": { - "semver": "7.5.4" - } - }, - "makeerror": { - "version": "1.0.12", - "dev": true, - "requires": { - "tmpl": "1.0.5" - } - }, - "map-obj": { - "version": "4.3.0", - "dev": true - }, - "mapbox-to-css-font": { - "version": "2.4.2" - }, - "masonry-layout": { - "version": "4.2.2", - "requires": { - "get-size": "^2.0.2", - "outlayer": "^2.1.0" - } - }, - "mathml-tag-names": { - "version": "2.1.3", - "dev": true - }, - "mdn-data": { - "version": "2.0.30", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "dev": true - }, - "memoize-one": { - "version": "5.2.1" - }, - "memory-fs": { - "version": "0.2.0", - "dev": true - }, - "memorystream": { - "version": "0.3.1", - "dev": true - }, - "meow": { - "version": "10.1.5", - "dev": true, - "requires": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" - }, - "dependencies": { - "type-fest": { - "version": "1.4.0", - "dev": true - } - } - }, - "merge-descriptors": { - "version": "1.0.1", - "dev": true - }, - "merge-stream": { - "version": "2.0.0" - }, - "merge2": { - "version": "1.4.1", - "dev": true - }, - "methods": { - "version": "1.1.2", - "dev": true - }, - "mgrs": { - "version": "1.0.0" - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "dev": true - }, - "mime-db": { - "version": "1.52.0" - }, - "mime-types": { - "version": "2.1.35", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "dev": true - }, - "min-indent": { - "version": "1.0.1", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.9.0", - "dev": true, - "requires": { - "schema-utils": "^4.0.0", - "tapable": "^2.2.1" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "tapable": { - "version": "2.2.1", - "dev": true - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.6" - }, - "minimist-options": { - "version": "4.1.0", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - } - }, - "minipass": { - "version": "7.1.2", - "dev": true - }, - "minizlib": { - "version": "3.0.1", - "dev": true, - "requires": { - "minipass": "^7.0.4", - "rimraf": "^5.0.5" - }, - "dependencies": { - "rimraf": { - "version": "5.0.5", - "dev": true, - "requires": { - "glob": "^10.3.7" - } - } - } - }, - "mitt": { - "version": "3.0.0" - }, - "mkdirp": { - "version": "3.0.1", - "dev": true - }, - "moment": { - "version": "2.30.1" - }, - "moment-locales-webpack-plugin": { - "version": "1.2.0", - "requires": { - "lodash.difference": "^4.5.0" - } - }, - "moo-color": { - "version": "1.0.3", - "dev": true, - "requires": { - "color-name": "^1.1.4" - }, - "dependencies": { - "color-name": { - "version": "1.1.4", - "dev": true - } - } - }, - "mrmime": { - "version": "1.0.1", - "dev": true - }, - "ms": { - "version": "2.1.2" - }, - "multicast-dns": { - "version": "7.2.5", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "nan": { - "version": "2.19.0", - "dev": true, - "optional": true - }, - "nanoid": { - "version": "3.3.7", - "dev": true - }, - "natural-compare": { - "version": "1.4.0" - }, - "negotiator": { - "version": "0.6.3" - }, - "neo-async": { - "version": "2.6.2" - }, - "nice-try": { - "version": "1.0.5", - "dev": true - }, - "node-dir": { - "version": "0.1.17", - "dev": true, - "requires": { - "minimatch": "^3.0.2" - } - }, - "node-fetch": { - "version": "2.7.0", - "requires": { - "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3" - }, - "webidl-conversions": { - "version": "3.0.1" - }, - "whatwg-url": { - "version": "5.0.0", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } - } - }, - "node-forge": { - "version": "1.3.1", - "dev": true - }, - "node-int64": { - "version": "0.4.0", - "dev": true - }, - "node-releases": { - "version": "2.0.14" - }, - "node-ssh": { - "version": "13.2.0", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "make-dir": "^3.1.0", - "sb-promise-queue": "^2.1.0", - "sb-scandir": "^3.1.0", - "shell-escape": "^0.2.0", - "ssh2": "^1.14.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "7.5.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "dev": true - }, - "npm-run-all": { - "version": "4.1.5", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "7.5.4", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "path-key": { - "version": "2.0.1", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "dev": true - }, - "which": { - "version": "1.3.1", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "npm-run-path": { - "version": "4.0.1", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "nth-check": { - "version": "2.0.1", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "nwsapi": { - "version": "2.2.2", - "dev": true - }, - "object-assign": { - "version": "4.1.1" - }, - "object-inspect": { - "version": "1.13.1" - }, - "object-is": { - "version": "1.1.6", - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" - } - }, - "object-keys": { - "version": "1.1.1" - }, - "object.assign": { - "version": "4.1.5", - "dev": true, - "requires": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.entries": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", - "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - } - }, - "object.groupby": { - "version": "1.0.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" - } - }, - "object.hasown": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", - "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - } - }, - "object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "obuf": { - "version": "1.1.2", - "dev": true - }, - "ol": { - "version": "8.2.0", - "requires": { - "color-rgba": "^3.0.0", - "color-space": "^2.0.1", - "earcut": "^2.2.3", - "geotiff": "^2.0.7", - "pbf": "3.2.1", - "rbush": "^3.0.1" - } - }, - "ol-mapbox-style": { - "version": "12.3.2", - "requires": { - "@mapbox/mapbox-gl-style-spec": "^13.23.1", - "mapbox-to-css-font": "^2.4.1" - } - }, - "on-finished": { - "version": "2.4.1", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2" - }, - "once": { - "version": "1.4.0", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "7.4.2", - "dev": true, - "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - } - }, - "opener": { - "version": "1.5.2", - "dev": true - }, - "optionator": { - "version": "0.9.3", - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "dev": true - }, - "outlayer": { - "version": "2.1.1", - "requires": { - "ev-emitter": "^1.0.0", - "fizzy-ui-utils": "^2.0.0", - "get-size": "^2.0.2" - } - }, - "p-limit": { - "version": "3.1.0", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "requires": { - "p-limit": "^3.0.2" - } - }, - "p-queue": { - "version": "8.0.1", - "requires": { - "eventemitter3": "^5.0.1", - "p-timeout": "^6.1.2" - }, - "dependencies": { - "eventemitter3": { - "version": "5.0.1" - } - } - }, - "p-retry": { - "version": "6.2.0", - "dev": true, - "requires": { - "@types/retry": "0.12.2", - "is-network-error": "^1.0.0", - "retry": "^0.13.1" - } - }, - "p-timeout": { - "version": "6.1.2" - }, - "p-try": { - "version": "2.2.0", - "dev": true - }, - "pako": { - "version": "1.0.11" - }, - "parent-module": { - "version": "1.0.1", - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-headers": { - "version": "2.0.5" - }, - "parse-import": { - "version": "2.0.0", - "dev": true, - "requires": { - "get-imports": "^1.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "dev": true, - "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - }, - "dependencies": { - "parse5": { - "version": "7.1.2", - "dev": true, - "requires": { - "entities": "^4.4.0" - } - } - } - }, - "parseurl": { - "version": "1.3.3", - "dev": true - }, - "patch-package": { - "version": "8.0.0", - "dev": true, - "requires": { - "@yarnpkg/lockfile": "^1.1.0", - "chalk": "^4.1.2", - "ci-info": "^3.7.0", - "cross-spawn": "^7.0.3", - "find-yarn-workspace-root": "^2.0.0", - "fs-extra": "^9.0.0", - "json-stable-stringify": "^1.0.2", - "klaw-sync": "^6.0.0", - "minimist": "^1.2.6", - "open": "^7.4.2", - "rimraf": "^2.6.3", - "semver": "7.5.4", - "slash": "^2.0.0", - "tmp": "^0.0.33", - "yaml": "^2.2.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "fs-extra": { - "version": "9.1.0", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "slash": { - "version": "2.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "dev": true - } - } - }, - "path-exists": { - "version": "4.0.0" - }, - "path-is-absolute": { - "version": "1.0.1" - }, - "path-is-inside": { - "version": "1.0.2", - "dev": true - }, - "path-key": { - "version": "3.1.1" - }, - "path-parse": { - "version": "1.0.7" - }, - "path-scurry": { - "version": "1.11.1", - "dev": true, - "requires": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "10.2.2", - "dev": true - } - } - }, - "path-to-regexp": { - "version": "0.1.7", - "dev": true - }, - "path-type": { - "version": "4.0.0" - }, - "pbf": { - "version": "3.2.1", - "requires": { - "ieee754": "^1.1.12", - "resolve-protobuf-schema": "^2.1.0" - } - }, - "picocolors": { - "version": "1.0.0" - }, - "picomatch": { - "version": "2.3.1", - "dev": true - }, - "pidtree": { - "version": "0.3.1", - "dev": true - }, - "pify": { - "version": "3.0.0", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pirates": { - "version": "4.0.6", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "dev": true, - "requires": { - "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - } - } - }, - "playwright": { - "version": "1.44.1", - "dev": true, - "requires": { - "fsevents": "2.3.2", - "playwright-core": "1.44.1" - } - }, - "playwright-core": { - "version": "1.44.1", - "dev": true - }, - "popper.js": { - "version": "1.16.1" - }, - "possible-typed-array-names": { - "version": "1.0.0", - "dev": true - }, - "postcss": { - "version": "8.4.38", - "dev": true, - "requires": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.2.0" - } - }, - "postcss-calc": { - "version": "10.0.0", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.16", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-colormin": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0", - "colord": "^2.9.3", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-convert-values": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-discard-comments": { - "version": "7.0.0", - "dev": true, - "requires": {} - }, - "postcss-discard-duplicates": { - "version": "7.0.0", - "dev": true, - "requires": {} - }, - "postcss-discard-empty": { - "version": "7.0.0", - "dev": true, - "requires": {} - }, - "postcss-discard-overridden": { - "version": "7.0.0", - "dev": true, - "requires": {} - }, - "postcss-loader": { - "version": "8.1.1", - "dev": true, - "requires": { - "cosmiconfig": "^9.0.0", - "jiti": "^1.20.0", - "semver": "7.5.4" - }, - "dependencies": { - "cosmiconfig": { - "version": "9.0.0", - "dev": true, - "requires": { - "env-paths": "^2.2.1", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0" - } - }, - "parse-json": { - "version": "5.2.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - } - } - }, - "postcss-media-query-parser": { - "version": "0.2.3", - "dev": true - }, - "postcss-merge-longhand": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^7.0.0" - } - }, - "postcss-merge-rules": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.16" - } - }, - "postcss-minify-font-values": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-gradients": { - "version": "7.0.0", - "dev": true, - "requires": { - "colord": "^2.9.3", - "cssnano-utils": "^5.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-params": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "cssnano-utils": "^5.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-selectors": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.16" - } - }, - "postcss-modules-extract-imports": { - "version": "3.1.0", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.5", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.2.0", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-normalize-charset": { - "version": "7.0.0", - "dev": true, - "requires": {} - }, - "postcss-normalize-display-values": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-positions": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-repeat-style": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-string": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-timing-functions": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-unicode": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-url": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-whitespace": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-ordered-values": { - "version": "7.0.0", - "dev": true, - "requires": { - "cssnano-utils": "^5.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-initial": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0" - } - }, - "postcss-reduce-transforms": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-resolve-nested-selector": { - "version": "0.1.1", - "dev": true - }, - "postcss-safe-parser": { - "version": "6.0.0", - "dev": true, - "requires": {} - }, - "postcss-scss": { - "version": "4.0.9", - "dev": true, - "requires": {} - }, - "postcss-selector-parser": { - "version": "6.0.16", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-svgo": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0", - "svgo": "^3.2.0" - } - }, - "postcss-unique-selectors": { - "version": "7.0.0", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.16" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1" - }, - "pretty-format": { - "version": "29.7.0", - "dev": true, - "requires": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "dev": true - }, - "react-is": { - "version": "18.2.0", - "dev": true - } - } - }, - "process-nextick-args": { - "version": "2.0.1", - "dev": true - }, - "proj4": { - "version": "2.11.0", - "requires": { - "mgrs": "1.0.0", - "wkt-parser": "^1.3.3" - } - }, - "prompts": { - "version": "2.4.2", - "dev": true, - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - } - }, - "prop-types": { - "version": "15.8.1", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "protocol-buffers-schema": { - "version": "3.6.0" - }, - "proxy-addr": { - "version": "2.0.7", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "proxy-from-env": { - "version": "1.1.0" - }, - "psl": { - "version": "1.9.0" - }, - "punycode": { - "version": "2.3.0" - }, - "pure-rand": { - "version": "6.0.4", - "dev": true - }, - "qs": { - "version": "6.12.1", - "requires": { - "side-channel": "^1.0.6" - } - }, - "querystring": { - "version": "0.2.1", - "dev": true - }, - "querystringify": { - "version": "2.2.0" - }, - "queue-microtask": { - "version": "1.2.3" - }, - "quick-lru": { - "version": "5.1.1", - "dev": true - }, - "quickselect": { - "version": "2.0.0" - }, - "quill-delta": { - "version": "5.1.0", - "dev": true, - "peer": true, - "requires": { - "fast-diff": "^1.3.0", - "lodash.clonedeep": "^4.5.0", - "lodash.isequal": "^4.5.0" - } - }, - "raf-schd": { - "version": "4.0.3" - }, - "randombytes": { - "version": "2.1.0", - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "dev": true - }, - "raw-body": { - "version": "2.5.2", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "dev": true - } - } - }, - "rbush": { - "version": "3.0.1", - "requires": { - "quickselect": "^2.0.0" - } - }, - "rc-pagination": { - "version": "4.0.4", - "requires": { - "@babel/runtime": "^7.10.1", - "classnames": "^2.3.2", - "rc-util": "^5.38.0" - } - }, - "rc-util": { - "version": "5.39.1", - "requires": { - "@babel/runtime": "^7.18.3", - "react-is": "^18.2.0" - }, - "dependencies": { - "react-is": { - "version": "18.2.0" - } - } - }, - "react": { - "version": "18.3.1", - "requires": { - "loose-envify": "^1.1.0" - } - }, - "react-beautiful-dnd": { - "version": "13.1.1", - "requires": { - "@babel/runtime": "^7.9.2", - "css-box-model": "^1.2.0", - "memoize-one": "^5.1.1", - "raf-schd": "^4.0.2", - "react-redux": "^7.2.0", - "redux": "^4.0.4", - "use-memo-one": "^1.1.1" - }, - "dependencies": { - "react-is": { - "version": "17.0.2" - }, - "react-redux": { - "version": "7.2.9", - "requires": { - "@babel/runtime": "^7.15.4", - "@types/react-redux": "^7.1.20", - "hoist-non-react-statics": "^3.3.2", - "loose-envify": "^1.4.0", - "prop-types": "^15.7.2", - "react-is": "^17.0.2" - } - }, - "redux": { - "version": "4.2.1", - "requires": { - "@babel/runtime": "^7.9.2" - } - } - } - }, - "react-device-detect": { - "version": "2.2.3", - "requires": { - "ua-parser-js": "^1.0.33" - } - }, - "react-dom": { - "version": "18.3.0", - "requires": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.1" - } - }, - "react-draggable": { - "version": "4.4.6", - "requires": { - "clsx": "^1.1.1", - "prop-types": "^15.8.1" - } - }, - "react-fast-compare": { - "version": "3.2.2" - }, - "react-floater": { - "version": "0.7.9", - "requires": { - "deepmerge": "^4.3.1", - "is-lite": "^0.8.2", - "popper.js": "^1.16.0", - "prop-types": "^15.8.1", - "tree-changes": "^0.9.1" - }, - "dependencies": { - "is-lite": { - "version": "0.8.2" - } - } - }, - "react-image-crop": { - "version": "11.0.5", - "requires": {} - }, - "react-infinite-scroller": { - "version": "1.2.6", - "requires": { - "prop-types": "^15.5.8" - } - }, - "react-innertext": { - "version": "1.1.5", - "requires": {} - }, - "react-is": { - "version": "16.13.1" - }, - "react-joyride": { - "version": "2.8.2", - "requires": { - "@gilbarbara/deep-equal": "^0.3.1", - "deep-diff": "^1.0.2", - "deepmerge": "^4.3.1", - "is-lite": "^1.2.1", - "react-floater": "^0.7.9", - "react-innertext": "^1.1.5", - "react-is": "^16.13.1", - "scroll": "^3.0.1", - "scrollparent": "^2.1.0", - "tree-changes": "^0.11.2", - "type-fest": "^4.18.2" - }, - "dependencies": { - "@gilbarbara/deep-equal": { - "version": "0.3.1" - }, - "tree-changes": { - "version": "0.11.2", - "requires": { - "@gilbarbara/deep-equal": "^0.3.1", - "is-lite": "^1.2.0" - } - }, - "type-fest": { - "version": "4.18.2" - } - } - }, - "react-mobile-datepicker": { - "version": "4.0.2", - "requires": {} - }, - "react-popper": { - "version": "2.3.0", - "requires": { - "react-fast-compare": "^3.0.1", - "warning": "^4.0.2" - } - }, - "react-redux": { - "version": "9.1.1", - "requires": { - "@types/use-sync-external-store": "^0.0.3", - "use-sync-external-store": "^1.0.0" - } - }, - "react-refresh": { - "version": "0.14.1", - "dev": true - }, - "react-resizable": { - "version": "3.0.5", - "requires": { - "prop-types": "15.x", - "react-draggable": "^4.0.3" - } - }, - "react-select": { - "version": "5.8.0", - "requires": { - "@babel/runtime": "^7.12.0", - "@emotion/cache": "^11.4.0", - "@emotion/react": "^11.8.1", - "@floating-ui/dom": "^1.0.1", - "@types/react-transition-group": "^4.4.0", - "memoize-one": "^6.0.0", - "prop-types": "^15.6.0", - "react-transition-group": "^4.3.0", - "use-isomorphic-layout-effect": "^1.1.2" - }, - "dependencies": { - "memoize-one": { - "version": "6.0.0" - } - } - }, - "react-shallow-renderer": { - "version": "16.15.0", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0" - } - }, - "react-smooth": { - "version": "4.0.0", - "requires": { - "fast-equals": "^5.0.1", - "prop-types": "^15.8.1", - "react-transition-group": "^4.4.5" - } - }, - "react-swipe-to-delete-component": { - "version": "1.0.5", - "requires": { - "@babel/runtime": "^7.12.5", - "prop-types": "^15.8.1", - "react": "^17.0.2", - "react-dom": "^17.0.2" - }, - "dependencies": { - "react": { - "version": "17.0.2", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "react-dom": { - "version": "17.0.2", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" - } - }, - "scheduler": { - "version": "0.20.2", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - } - } - }, - "react-test-renderer": { - "version": "18.3.0", - "dev": true, - "requires": { - "react-is": "^18.3.0", - "react-shallow-renderer": "^16.15.0", - "scheduler": "^0.23.1" - }, - "dependencies": { - "react-is": { - "version": "18.3.1", - "dev": true - } - } - }, - "react-transition-group": { - "version": "4.4.5", - "requires": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - } - }, - "react-visibility-sensor": { - "version": "5.1.1", - "requires": { - "prop-types": "^15.7.2" - } - }, - "reactstrap": { - "version": "9.2.2", - "requires": { - "@babel/runtime": "^7.12.5", - "@popperjs/core": "^2.6.0", - "classnames": "^2.2.3", - "prop-types": "^15.5.8", - "react-popper": "^2.2.4", - "react-transition-group": "^4.4.2" - } - }, - "read-pkg": { - "version": "3.0.0", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "7.5.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "path-type": { - "version": "3.0.0", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "read-pkg-up": { - "version": "8.0.0", - "dev": true, - "requires": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "read-pkg": { - "version": "6.0.0", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - } - }, - "type-fest": { - "version": "1.4.0", - "dev": true - } - } - }, - "readable-stream": { - "version": "2.3.7", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "string_decoder": { - "version": "1.1.1", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "readdirp": { - "version": "3.6.0", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "recharts": { - "version": "2.12.7", - "requires": { - "clsx": "^2.0.0", - "eventemitter3": "^4.0.1", - "lodash": "^4.17.21", - "react-is": "^16.10.2", - "react-smooth": "^4.0.0", - "recharts-scale": "^0.4.4", - "tiny-invariant": "^1.3.1", - "victory-vendor": "^36.6.8" - }, - "dependencies": { - "clsx": { - "version": "2.0.0" - } - } - }, - "recharts-scale": { - "version": "0.4.5", - "requires": { - "decimal.js-light": "^2.4.1" - } - }, - "rechoir": { - "version": "0.6.2", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "redent": { - "version": "4.0.0", - "dev": true, - "requires": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - } - }, - "redux": { - "version": "5.0.1" - }, - "redux-location-state": { - "version": "2.8.2", - "requires": { - "lodash": "^4.13.1" - } - }, - "redux-logger": { - "version": "3.0.6", - "requires": { - "deep-diff": "^0.3.5" - }, - "dependencies": { - "deep-diff": { - "version": "0.3.8" - } - } - }, - "redux-mock-store": { - "version": "1.5.4", - "dev": true, - "requires": { - "lodash.isplainobject": "^4.0.6" - } - }, - "redux-thunk": { - "version": "3.1.0", - "requires": {} - }, - "reflect.getprototypeof": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "globalthis": "^1.0.3", - "which-builtin-type": "^1.1.3" - } - }, - "regenerate": { - "version": "1.4.2", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.1.1", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.14.1" - }, - "regenerator-transform": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", - "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regexp.prototype.flags": { - "version": "1.5.2", - "requires": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - } - }, - "regexpp": { - "version": "3.2.0", - "dev": true - }, - "regexpu-core": { - "version": "5.3.2", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "regjsparser": { - "version": "0.9.1", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "dev": true - }, - "requires-port": { - "version": "1.0.0" - }, - "reselect": { - "version": "5.1.0" - }, - "resolve": { - "version": "1.22.6", - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-cwd": { - "version": "3.0.0", - "dev": true, - "requires": { - "resolve-from": "^5.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "5.0.0", - "dev": true - } - } - }, - "resolve-from": { - "version": "4.0.0" - }, - "resolve-pathname": { - "version": "3.0.0" - }, - "resolve-pkg-maps": { - "version": "1.0.0", - "dev": true - }, - "resolve-protobuf-schema": { - "version": "2.1.0", - "requires": { - "protocol-buffers-schema": "^3.3.1" - } - }, - "resolve.exports": { - "version": "2.0.2", - "dev": true - }, - "retry": { - "version": "0.13.1", - "dev": true - }, - "reusify": { - "version": "1.0.4" - }, - "rgbcolor": { - "version": "1.0.1" - }, - "rimraf": { - "version": "3.0.2", - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.2.3", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "run-applescript": { - "version": "7.0.0", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "run-script-os": { - "version": "1.1.6", - "dev": true - }, - "rw": { - "version": "1.3.3" - }, - "rxjs": { - "version": "7.8.1", - "dev": true, - "peer": true, - "requires": { - "tslib": "^2.1.0" - }, - "dependencies": { - "tslib": { - "version": "2.6.2", - "dev": true, - "peer": true - } - } - }, - "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==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - } - } - }, - "safe-buffer": { - "version": "5.1.2" - }, - "safe-regex-test": { - "version": "1.0.3", - "dev": true, - "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" - } - }, - "safer-buffer": { - "version": "2.1.2", - "dev": true - }, - "sass": { - "version": "1.77.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.4.tgz", - "integrity": "sha512-vcF3Ckow6g939GMA4PeU7b2K/9FALXk2KF9J87txdHzXbUF9XRQRwSxcAs/fGaTnJeBFd7UoV22j3lzMLdM0Pw==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "14.2.1", - "dev": true, - "requires": { - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "dev": true - }, - "sb-promise-queue": { - "version": "2.1.0", - "dev": true - }, - "sb-scandir": { - "version": "3.1.0", - "dev": true, - "requires": { - "sb-promise-queue": "^2.1.0" - } - }, - "scheduler": { - "version": "0.23.2", - "requires": { - "loose-envify": "^1.1.0" - } - }, - "schema-utils": { - "version": "3.3.0", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1" - } - } - }, - "scroll": { - "version": "3.0.1" - }, - "scrollparent": { - "version": "2.1.0" - }, - "select-hose": { - "version": "2.0.0", - "dev": true - }, - "selfsigned": { - "version": "2.4.1", - "dev": true, - "requires": { - "@types/node-forge": "^1.3.0", - "node-forge": "^1" - } - }, - "semver": { - "version": "7.5.4", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "send": { - "version": "0.18.0", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "dev": true - } - } - }, - "ms": { - "version": "2.1.3", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "6.0.2", - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "dev": true - }, - "ms": { - "version": "2.0.0", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-function-length": { - "version": "1.2.1", - "requires": { - "define-data-property": "^1.1.2", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.1" - } - }, - "set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - } - }, - "setprototypeof": { - "version": "1.2.0", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "2.0.0", - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0" - }, - "shell-escape": { - "version": "0.2.0", - "dev": true - }, - "shell-quote": { - "version": "1.8.1", - "dev": true - }, - "shelljs": { - "version": "0.8.5", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "dependencies": { - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "showdown": { - "version": "2.1.0", - "dev": true, - "requires": { - "commander": "^9.0.0" - }, - "dependencies": { - "commander": { - "version": "9.5.0", - "dev": true - } - } - }, - "side-channel": { - "version": "1.0.6", - "requires": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - } - }, - "signal-exit": { - "version": "3.0.7", - "dev": true - }, - "simplebar": { - "version": "6.2.6", - "requires": { - "can-use-dom": "^0.1.0", - "simplebar-core": "^1.2.5" - } - }, - "simplebar-core": { - "version": "1.2.5", - "requires": { - "@types/lodash-es": "^4.17.6", - "can-use-dom": "^0.1.0", - "lodash": "^4.17.21", - "lodash-es": "^4.17.21" - } - }, - "simplebar-react": { - "version": "3.2.5", - "requires": { - "simplebar-core": "^1.2.5" - } - }, - "sirv": { - "version": "2.0.3", - "dev": true, - "requires": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^3.0.0" - } - }, - "sisteransi": { - "version": "1.0.5", - "dev": true - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - } - } - }, - "sockjs": { - "version": "0.3.24", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - }, - "dependencies": { - "uuid": { - "version": "8.3.2", - "dev": true - } - } - }, - "sort-asc": { - "version": "0.1.0" - }, - "sort-desc": { - "version": "0.1.1" - }, - "sort-object": { - "version": "0.3.2", - "requires": { - "sort-asc": "^0.1.0", - "sort-desc": "^0.1.1" - } - }, - "source-list-map": { - "version": "2.0.1", - "dev": true - }, - "source-map": { - "version": "0.6.1" - }, - "source-map-js": { - "version": "1.2.0", - "dev": true - }, - "source-map-support": { - "version": "0.5.13", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "spdx-correct": { - "version": "3.1.1", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "sprintf-js": { - "version": "1.0.3", - "dev": true - }, - "ssh2": { - "version": "1.15.0", - "dev": true, - "requires": { - "asn1": "^0.2.6", - "bcrypt-pbkdf": "^1.0.2", - "cpu-features": "~0.0.9", - "nan": "^2.18.0" - } - }, - "stack-utils": { - "version": "2.0.6", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "dev": true - } - } - }, - "stackblur": { - "version": "1.0.0" - }, - "stackframe": { - "version": "1.2.1", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "dev": true - } - } - }, - "string-length": { - "version": "4.0.2", - "dev": true, - "requires": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "emoji-regex": { - "version": "8.0.0", - "dev": true - } - } - }, - "string-width-cjs": { - "version": "npm:string-width@4.2.3", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "emoji-regex": { - "version": "8.0.0", - "dev": true - } - } - }, - "string.prototype.matchall": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", - "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "regexp.prototype.flags": "^1.5.2", - "set-function-name": "^2.0.2", - "side-channel": "^1.0.6" - } - }, - "string.prototype.padend": { - "version": "3.1.3", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - } - }, - "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==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "strip-ansi": { - "version": "6.0.1", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-ansi-cjs": { - "version": "npm:strip-ansi@6.0.1", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "4.0.0", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "dev": true - }, - "strip-indent": { - "version": "4.0.0", - "dev": true, - "requires": { - "min-indent": "^1.0.1" - } - }, - "strip-json-comments": { - "version": "3.1.1" - }, - "style-search": { - "version": "0.1.0", - "dev": true - }, - "stylehacks": { - "version": "7.0.0", - "dev": true, - "requires": { - "browserslist": "^4.23.0", - "postcss-selector-parser": "^6.0.16" - } - }, - "stylelint": { - "version": "15.11.0", - "dev": true, - "requires": { - "@csstools/css-parser-algorithms": "^2.3.1", - "@csstools/css-tokenizer": "^2.2.0", - "@csstools/media-query-list-parser": "^2.1.4", - "@csstools/selector-specificity": "^3.0.0", - "balanced-match": "^2.0.0", - "colord": "^2.9.3", - "cosmiconfig": "^8.2.0", - "css-functions-list": "^3.2.1", - "css-tree": "^2.3.1", - "debug": "^4.3.4", - "fast-glob": "^3.3.1", - "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^7.0.0", - "global-modules": "^2.0.0", - "globby": "^11.1.0", - "globjoin": "^0.1.4", - "html-tags": "^3.3.1", - "ignore": "^5.2.4", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "is-plain-object": "^5.0.0", - "known-css-properties": "^0.29.0", - "mathml-tag-names": "^2.1.3", - "meow": "^10.1.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.28", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.13", - "postcss-value-parser": "^4.2.0", - "resolve-from": "^5.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "style-search": "^0.1.0", - "supports-hyperlinks": "^3.0.0", - "svg-tags": "^1.0.0", - "table": "^6.8.1", - "write-file-atomic": "^5.0.1" - }, - "dependencies": { - "balanced-match": { - "version": "2.0.0", - "dev": true - }, - "file-entry-cache": { - "version": "7.0.1", - "dev": true, - "requires": { - "flat-cache": "^3.1.1" - } - }, - "known-css-properties": { - "version": "0.29.0", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "dev": true - }, - "signal-exit": { - "version": "4.1.0", - "dev": true - }, - "write-file-atomic": { - "version": "5.0.1", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - } - } - } - }, - "stylelint-config-recommended": { - "version": "13.0.0", - "dev": true, - "requires": {} - }, - "stylelint-config-recommended-scss": { - "version": "13.1.0", - "dev": true, - "requires": { - "postcss-scss": "^4.0.9", - "stylelint-config-recommended": "^13.0.0", - "stylelint-scss": "^5.3.0" - } - }, - "stylelint-config-standard": { - "version": "34.0.0", - "dev": true, - "requires": { - "stylelint-config-recommended": "^13.0.0" - } - }, - "stylelint-config-standard-scss": { - "version": "11.1.0", - "dev": true, - "requires": { - "stylelint-config-recommended-scss": "^13.1.0", - "stylelint-config-standard": "^34.0.0" - } - }, - "stylelint-high-performance-animation": { - "version": "1.10.0", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "stylelint-scss": { - "version": "5.3.0", - "dev": true, - "requires": { - "known-css-properties": "^0.28.0", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.13", - "postcss-value-parser": "^4.2.0" - } - }, - "stylis": { - "version": "4.2.0" - }, - "supercluster": { - "version": "8.0.1", - "requires": { - "kdbush": "^4.0.2" - } - }, - "supports-color": { - "version": "5.5.0", - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-hyperlinks": { - "version": "3.0.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0" - }, - "svg-tags": { - "version": "1.0.0", - "dev": true - }, - "svgo": { - "version": "3.2.0", - "dev": true, - "requires": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^5.1.0", - "css-tree": "^2.3.1", - "css-what": "^6.1.0", - "csso": "^5.0.5", - "picocolors": "^1.0.0" - } - }, - "symbol-tree": { - "version": "3.2.4", - "dev": true - }, - "table": { - "version": "6.8.1", - "dev": true, - "requires": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - } - }, - "tapable": { - "version": "0.1.10", - "dev": true - }, - "tar": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.2.0.tgz", - "integrity": "sha512-hctwP0Nb4AB60bj8WQgRYaMOuJYRAPMGiQUAotms5igN8ppfQM+IvjQ5HcKu1MaZh2Wy2KWVTe563Yj8dfc14w==", - "dev": true, - "requires": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.0", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", - "yallist": "^5.0.0" - }, - "dependencies": { - "yallist": { - "version": "5.0.0", - "dev": true - } - } - }, - "terser": { - "version": "5.27.0", - "requires": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "dependencies": { - "commander": { - "version": "2.20.3" - }, - "source-map-support": { - "version": "0.5.21", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } - } - }, - "terser-webpack-plugin": { - "version": "5.3.10", - "requires": { - "@jridgewell/trace-mapping": "^0.3.20", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0" - }, - "jest-worker": { - "version": "27.5.1", - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "supports-color": { - "version": "8.1.1", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "test-exclude": { - "version": "6.0.0", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "text-table": { - "version": "0.2.0" - }, - "thunky": { - "version": "1.1.0", - "dev": true - }, - "tiny-invariant": { - "version": "1.3.1" - }, - "tiny-warning": { - "version": "1.0.3" - }, - "tmp": { - "version": "0.0.33", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "tmpl": { - "version": "1.0.5", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0" - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toggle-selection": { - "version": "1.0.6" - }, - "toidentifier": { - "version": "1.0.1", - "dev": true - }, - "totalist": { - "version": "3.0.1", - "dev": true - }, - "tough-cookie": { - "version": "4.1.4", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "tr46": { - "version": "1.0.1", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "tree-changes": { - "version": "0.9.3", - "requires": { - "@gilbarbara/deep-equal": "^0.1.1", - "is-lite": "^0.8.2" - }, - "dependencies": { - "is-lite": { - "version": "0.8.2" - } - } - }, - "trim-newlines": { - "version": "4.1.1", - "dev": true - }, - "ts-api-utils": { - "version": "1.3.0", - "dev": true, - "requires": {} - }, - "tsconfig-paths": { - "version": "3.15.0", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "dev": true - } - } - }, - "tweetnacl": { - "version": "0.14.5", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-detect": { - "version": "4.0.8", - "dev": true - }, - "type-fest": { - "version": "0.21.3", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-array-buffer": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" - } - }, - "typed-array-byte-length": { - "version": "1.0.1", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - } - }, - "typed-array-byte-offset": { - "version": "1.0.2", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - } - }, - "typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" - } - }, - "typescript": { - "version": "4.9.5", - "dev": true, - "peer": true - }, - "ua-parser-js": { - "version": "1.0.33" - }, - "unbox-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "dev": true - }, - "universalify": { - "version": "0.2.0" - }, - "unpipe": { - "version": "1.0.0", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "upng-js": { - "version": "2.1.0", - "requires": { - "pako": "^1.0.5" - } - }, - "uri-js": { - "version": "4.4.1", - "requires": { - "punycode": "^2.1.0" - } - }, - "url-parse": { - "version": "1.5.10", - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-template": { - "version": "3.1.1" - }, - "use-isomorphic-layout-effect": { - "version": "1.1.2", - "requires": {} - }, - "use-memo-one": { - "version": "1.1.3", - "requires": {} - }, - "use-sync-external-store": { - "version": "1.2.0", - "requires": {} - }, - "util-deprecate": { - "version": "1.0.2", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "dev": true - }, - "uuid": { - "version": "9.0.1", - "dev": true - }, - "uuid-v4": { - "version": "0.1.0" - }, - "v8-to-istanbul": { - "version": "9.1.0", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0" - }, - "dependencies": { - "convert-source-map": { - "version": "1.9.0", - "dev": true - } - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "value-equal": { - "version": "1.0.1" - }, - "vary": { - "version": "1.1.2" - }, - "victory-vendor": { - "version": "36.6.11", - "requires": { - "@types/d3-array": "^3.0.3", - "@types/d3-ease": "^3.0.0", - "@types/d3-interpolate": "^3.0.1", - "@types/d3-scale": "^4.0.2", - "@types/d3-shape": "^3.1.0", - "@types/d3-time": "^3.0.0", - "@types/d3-timer": "^3.0.0", - "d3-array": "^3.1.6", - "d3-ease": "^3.0.1", - "d3-interpolate": "^3.0.1", - "d3-scale": "^4.0.2", - "d3-shape": "^3.1.0", - "d3-time": "^3.0.0", - "d3-timer": "^3.0.1" - } - }, - "walker": { - "version": "1.0.8", - "dev": true, - "requires": { - "makeerror": "1.0.12" - } - }, - "warning": { - "version": "4.0.3", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "watchpack": { - "version": "2.4.1", - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "web-worker": { - "version": "1.2.0" - }, - "webidl-conversions": { - "version": "7.0.0", - "dev": true - }, - "webpack": { - "version": "5.91.0", - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.21.10", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.16.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.1", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "enhanced-resolve": { - "version": "5.16.0", - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "tapable": { - "version": "2.2.1" - } - } - }, - "webpack-bundle-analyzer": { - "version": "4.10.2", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "commander": "^7.2.0", - "debounce": "^1.2.1", - "escape-string-regexp": "^4.0.0", - "gzip-size": "^6.0.0", - "html-escaper": "^2.0.2", - "opener": "^1.5.2", - "picocolors": "^1.0.0", - "sirv": "^2.0.3", - "ws": "^7.3.1" - }, - "dependencies": { - "escape-string-regexp": { - "version": "4.0.0", - "dev": true - } - } - }, - "webpack-cli": { - "version": "5.1.4", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.1", - "@webpack-cli/info": "^2.0.2", - "@webpack-cli/serve": "^2.0.5", - "colorette": "^2.0.14", - "commander": "^10.0.1", - "cross-spawn": "^7.0.3", - "envinfo": "^7.7.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^3.1.1", - "rechoir": "^0.8.0", - "webpack-merge": "^5.7.3" - }, - "dependencies": { - "commander": { - "version": "10.0.1", - "dev": true - }, - "interpret": { - "version": "3.1.1", - "dev": true - }, - "rechoir": { - "version": "0.8.0", - "dev": true, - "requires": { - "resolve": "^1.20.0" - } - } - } - }, - "webpack-dev-middleware": { - "version": "7.2.1", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^4.6.0", - "mime-types": "^2.1.31", - "on-finished": "^2.4.1", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "json-joy": { - "version": "9.9.1", - "dev": true, - "requires": { - "arg": "^5.0.2", - "hyperdyperid": "^1.2.0" - } - }, - "memfs": { - "version": "4.6.0", - "dev": true, - "requires": { - "json-joy": "^9.2.0", - "thingies": "^1.11.1" - } - }, - "schema-utils": { - "version": "4.0.0", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "thingies": { - "version": "1.16.0", - "dev": true, - "requires": {} - }, - "tslib": { - "version": "2.6.2", - "dev": true, - "peer": true - } - } - }, - "webpack-dev-server": { - "version": "5.0.4", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.13", - "@types/connect-history-api-fallback": "^1.5.4", - "@types/express": "^4.17.21", - "@types/serve-index": "^1.9.4", - "@types/serve-static": "^1.15.5", - "@types/sockjs": "^0.3.36", - "@types/ws": "^8.5.10", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.2.1", - "chokidar": "^3.6.0", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.4.0", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.1.0", - "launch-editor": "^2.6.1", - "open": "^10.0.3", - "p-retry": "^6.2.0", - "rimraf": "^5.0.5", - "schema-utils": "^4.2.0", - "selfsigned": "^2.4.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^7.1.0", - "ws": "^8.16.0" - }, - "dependencies": { - "ipaddr.js": { - "version": "2.1.0", - "dev": true - }, - "is-wsl": { - "version": "3.1.0", - "dev": true, - "requires": { - "is-inside-container": "^1.0.0" - } - }, - "open": { - "version": "10.1.0", - "dev": true, - "requires": { - "default-browser": "^5.2.1", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^3.1.0" - } - }, - "rimraf": { - "version": "5.0.5", - "dev": true, - "requires": { - "glob": "^10.3.7" - } - }, - "schema-utils": { - "version": "4.2.0", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - }, - "ws": { - "version": "8.16.0", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3" - }, - "websocket-driver": { - "version": "0.7.4", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "dev": true - }, - "what-input": { - "version": "5.2.12" - }, - "whatwg-encoding": { - "version": "2.0.0", - "dev": true, - "requires": { - "iconv-lite": "0.6.3" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "whatwg-mimetype": { - "version": "3.0.0", - "dev": true - }, - "whatwg-url": { - "version": "6.5.0", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - }, - "dependencies": { - "webidl-conversions": { - "version": "4.0.2", - "dev": true - } - } - }, - "which": { - "version": "2.0.2", - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-builtin-type": { - "version": "1.1.3", - "dev": true, - "requires": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", - "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", - "is-finalizationregistry": "^1.0.2", - "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "dev": true - } - } - }, - "which-collection": { - "version": "1.0.1", - "dev": true, - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - } - }, - "which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - } - }, - "wildcard": { - "version": "2.0.0", - "dev": true - }, - "wkt-parser": { - "version": "1.3.3" - }, - "word-wrap": { - "version": "1.2.5", - "dev": true - }, - "wrap-ansi": { - "version": "8.1.0", - "dev": true, - "requires": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "dev": true - }, - "ansi-styles": { - "version": "6.2.1", - "dev": true - }, - "string-width": { - "version": "5.1.2", - "dev": true, - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - } - }, - "strip-ansi": { - "version": "7.1.0", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "wrap-ansi-cjs": { - "version": "npm:wrap-ansi@7.0.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2" - }, - "write-file-atomic": { - "version": "4.0.2", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - }, - "ws": { - "version": "7.5.7", - "dev": true, - "requires": {} - }, - "xml-js": { - "version": "1.6.11", - "dev": true, - "requires": { - "sax": "^1.2.4" - } - }, - "xml-name-validator": { - "version": "4.0.0", - "dev": true - }, - "xml-utils": { - "version": "1.3.0" - }, - "xml2js": { - "version": "0.6.2", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - } - }, - "xmlbuilder": { - "version": "11.0.1", - "dev": true - }, - "xmlchars": { - "version": "2.2.0", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "dev": true - }, - "yaml": { - "version": "2.3.2", - "dev": true - }, - "yargs": { - "version": "17.7.2", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "dependencies": { - "yargs-parser": { - "version": "21.1.1", - "dev": true - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0" - } } } diff --git a/web/js/containers/sidebar/charting.js b/web/js/containers/sidebar/charting.js index 408837eaef..20340e4c2a 100644 --- a/web/js/containers/sidebar/charting.js +++ b/web/js/containers/sidebar/charting.js @@ -38,7 +38,7 @@ function ChartingLayerMenu (props) { }; useEffect(() => { - updateActiveChartingLayer(activeLayersWithPalettes[0].id); + updateActiveChartingLayer(activeLayersWithPalettes.filter((layer) => !layer.shouldHide)[0].id); }, []); return isActive && ( @@ -75,7 +75,7 @@ const mapStateToProps = (state, ownProps) => { overlays = overlays.filter((layer) => layer.visible && layer.layergroup !== 'Reference'); overlayGroups = getFilteredOverlayGroups(overlayGroups, overlays); } - const activeLayersWithPalettes = overlays.filter((layer) => Object.prototype.hasOwnProperty.call(layer, 'palette') && state.palettes.rendered[layer.palette.id] && state.palettes.rendered[layer.palette.id].maps[0].type === 'continuous'); + const activeLayersWithPalettes = overlays.map((layer) => ({ ...layer, shouldHide: !(Object.prototype.hasOwnProperty.call(layer, 'palette') && state.palettes.rendered[layer.palette.id] && state.palettes.rendered[layer.palette.id].maps[0].type === 'continuous') })); return { isAnimating: animation.isPlaying, diff --git a/web/js/containers/sidebar/layer-row.js b/web/js/containers/sidebar/layer-row.js index 6750d72b60..0298007290 100644 --- a/web/js/containers/sidebar/layer-row.js +++ b/web/js/containers/sidebar/layer-row.js @@ -587,36 +587,38 @@ function LayerRow (props) { ); - return ( - - {(provided, snapshot) => (isInProjection ? ( -
  • - {renderLayerRow()} -
  • - ) : ( -
  • - ))} - - ); + if (!layer.shouldHide) { + return ( + + {(provided, snapshot) => (isInProjection ? ( +
  • + {renderLayerRow()} +
  • + ) : ( +
  • + ))} + + ); + } } const makeMapStateToProps = () => { From 749a91226ea76d234665a36525d7251b7e5ca55b Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Fri, 4 Oct 2024 12:42:51 -0400 Subject: [PATCH 06/11] Fixed aoi issue --- .../sidebar/charting-mode-options.js | 51 +++++++++++-------- 1 file changed, 31 insertions(+), 20 deletions(-) diff --git a/web/js/components/sidebar/charting-mode-options.js b/web/js/components/sidebar/charting-mode-options.js index abeb6bb9e7..26e40a578a 100644 --- a/web/js/components/sidebar/charting-mode-options.js +++ b/web/js/components/sidebar/charting-mode-options.js @@ -60,6 +60,18 @@ function ChartingModeOptions(props) { updateRequestStatusMessage, } = props; + const { screenHeight, screenWidth } = props; + + const [boundaries, setBoundaries] = useState({ + x: screenWidth / 2 - 100, + y: screenHeight / 2 - 100, + x2: screenWidth / 2 + 100, + y2: screenHeight / 2 + 100, + }); + const { + x, y, y2, x2, + } = boundaries; + function endDrawingAreaOfInterest () { if (draw) { olMap.removeInteraction(draw); @@ -128,11 +140,6 @@ function ChartingModeOptions(props) { const primaryDate = formatDateString(initialStartDate); const secondaryDate = formatDateString(initialEndDate); - const onAreaOfInterestButtonClick = (evt) => { - toggleAreaOfInterestActive(); - }; - - function getActiveChartingLayer() { const liveLayers = getLiveLayers(); const filteredLayerList = liveLayers.filter((layer) => layer.id === activeLayer); @@ -322,18 +329,6 @@ function ChartingModeOptions(props) { openChartingDateModal({ layerStartDate, layerEndDate }, timeSpanSelection); } - const { screenHeight, screenWidth } = props; - - const [boundaries, setBoundaries] = useState({ - x: screenWidth / 2 - 100, - y: screenHeight / 2 - 100, - x2: screenWidth / 2 + 100, - y2: screenHeight / 2 + 100, - }); - const { - x, y, y2, x2, - } = boundaries; - /** * Convert pixel value to latitude longitude value * @param {Array} pixelX @@ -371,11 +366,27 @@ function ChartingModeOptions(props) { y2: y + height, }; setBoundaries(newBoundaries); - setBottomLeftLatLong(getLatLongFromPixelValue(newBoundaries.x, newBoundaries.y2)); - setTopRightLatLong(getLatLongFromPixelValue(newBoundaries.x2, newBoundaries.y)); - updateAOICoordinates([...bottomLeftLatLong, ...topRightLatLong]); + const bottomLeft = getLatLongFromPixelValue(newBoundaries.x, newBoundaries.y2); + const topRight = getLatLongFromPixelValue(newBoundaries.x2, newBoundaries.y); + setBottomLeftLatLong(bottomLeft); + setTopRightLatLong(topRight); + updateAOICoordinates([...bottomLeft, ...topRight]); } + const onAreaOfInterestButtonClick = (evt) => { + if (aoiActive) { + updateAOICoordinates(null); + } else { + const { + x, y, x2, y2, + } = boundaries; + onBoundaryUpdate({ + x, y, width: x2 - x, height: y2 - y, + }); + } + toggleAreaOfInterestActive(); + }; + const layerInfo = getActiveChartingLayer(); const aoiTextPrompt = 'Area of Interest:'; const oneDateBtnStatus = timeSpanSelection === 'date' ? 'btn-active' : ''; From e7694d812a113df71efba63ed34c5d0d7cc46919 Mon Sep 17 00:00:00 2001 From: christof-wittreich Date: Fri, 4 Oct 2024 14:28:54 -0400 Subject: [PATCH 07/11] Squashed commit of the following: commit 259f891bff03fd8aedd080744600ad171c3cca78 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Oct 4 13:32:16 2024 -0400 chore: update dependencies (#5494) commit 32fae68e6eb6fbb945da7a82c31b958bf712b899 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Oct 4 09:30:37 2024 -0400 WV-3297 Replace CMR with DescribeDomains for DataAvailability (#5482) * feat: Update data availability in TEMPO layer configurations and support DescribeDomains for getting temporal data availability * chore: Add documentation * Refactor mergeDomains function to accept a time buffer parameter * Refactor createLayerWrapper function to extract time range logic into a separate function * Refactor addTimeRanges function to include project state and remove unnecessary variable assignment * chore: correct comment * chore: correct comment * Refactor time buffering logic in mapLayerBuilder.js and dd.worker.js * Refactor period conversion in dd.worker.js commit e0355d9e8f33f39eb769cd08024c547fbe88ffe3 Merge: 1d91f42b8 fa9cd0997 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Oct 1 13:48:55 2024 -0400 Merge pull request #5485 from nasa-gibs/main Main into Develop v4.49.0 commit fa9cd0997a286de6d433f7ffa38e0d4befae3ba0 Merge: 61d8c06d0 b047fb03b Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Oct 1 13:28:48 2024 -0400 Merge pull request #5484 from nasa-gibs/release Release to Main v4.49.0 commit b047fb03b39a04a455ac5480b195236468940942 Merge: 78b186a5b 61d8c06d0 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Oct 1 13:27:01 2024 -0400 Merge branch 'main' into release commit 78b186a5bb584003e130da25b84ac01a12403fe8 Merge: 334bcad68 1d0b29b2d Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Oct 1 11:51:51 2024 -0400 Merge pull request #5483 from nasa-gibs/UAT-v4.49.0 UAT-v4.49.0 to Release commit 1d0b29b2d94ebf5ec4276c6c35ae26d9b5cf9443 Merge: 397bae885 334bcad68 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Oct 1 11:49:38 2024 -0400 Merge branch 'release' into UAT-v4.49.0 commit 397bae8854bbc5c1e1470954a444e3e3e68b5f49 Author: PatchesMaps Date: Tue Oct 1 11:44:52 2024 -0400 v4.49.0 commit 1d91f42b82ab77633e0f51379915317510c85fb9 Author: minniewong Date: Mon Sep 30 13:14:16 2024 -0400 Update MODIS_Combined_L3_IGBP_Land_Cover_Type_Annual.md (#5481) commit 5f2d89faa4afd1addc3fb8061731cbe34963c419 Author: christof-wittreich Date: Fri Sep 27 10:53:40 2024 -0400 Dependency Updates 09-27-24 (#5480) commit 42fd456c2083bd3f48189e011cd0f9add4fa3635 Author: christof-wittreich Date: Mon Sep 23 15:52:43 2024 -0400 Release to Main v4.48.0 (#5473) (#5474) * Dependency Updates 09-13-24 (#5462) * chore: Update npm dependencies to latest versions (#5470) * Update OPERA_L3_DIST-ALERT-HLS_Color_Index.json (#5471) * v4.48.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong commit 61d8c06d022e74a67a1b8785bb66749d1b308284 Merge: 0b234e7b9 c02d9f09c Author: christof-wittreich Date: Mon Sep 23 15:28:13 2024 -0400 Squashed commit of the following: commit c02d9f09ce767f626e29e6f6f624864cd82d6f98 Author: minniewong Date: Mon Sep 23 11:32:12 2024 -0400 Update OPERA_L3_DIST-ALERT-HLS_Color_Index.json (#5471) commit 36ba34affe60a5cead27a4e69e665b9db2d6a04e Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Sep 23 09:21:07 2024 -0400 chore: Update npm dependencies to latest versions (#5470) commit f02f59a1d4926f3b48b68f796ec7d5bb50cee8ac Author: christof-wittreich Date: Mon Sep 16 19:28:37 2024 -0400 Dependency Updates 09-13-24 (#5462) commit b4e1d67ec38b794979d064cc344fe7d6ed0e4bac Merge: 06685b213 9554f6481 Author: christof-wittreich Date: Mon Sep 9 09:55:46 2024 -0400 Merge pull request #5452 from nasa-gibs/main Main to Develop v4.47.0 Merge branch 'develop' commit 0b234e7b980e32239871b4f74aa23c1916372102 Author: christof-wittreich Date: Mon Sep 23 15:23:13 2024 -0400 Release to Main v4.48.0 (#5473) * Dependency Updates 09-13-24 (#5462) * chore: Update npm dependencies to latest versions (#5470) * Update OPERA_L3_DIST-ALERT-HLS_Color_Index.json (#5471) * v4.48.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong commit 334bcad68a8d92d03e0683517d2f023106f023bc Merge: 1a07b8549 da008acc1 Author: christof-wittreich Date: Mon Sep 23 13:07:50 2024 -0400 Merge pull request #5472 from nasa-gibs/UAT-v4.48.0 UAT-v4.48.0 to Release commit da008acc14c1b7775d8095c8479f54a16e1513ba Author: christof-wittreich Date: Mon Sep 23 12:48:09 2024 -0400 v4.48.0 commit c02d9f09ce767f626e29e6f6f624864cd82d6f98 Author: minniewong Date: Mon Sep 23 11:32:12 2024 -0400 Update OPERA_L3_DIST-ALERT-HLS_Color_Index.json (#5471) commit 36ba34affe60a5cead27a4e69e665b9db2d6a04e Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Sep 23 09:21:07 2024 -0400 chore: Update npm dependencies to latest versions (#5470) commit f02f59a1d4926f3b48b68f796ec7d5bb50cee8ac Author: christof-wittreich Date: Mon Sep 16 19:28:37 2024 -0400 Dependency Updates 09-13-24 (#5462) commit b4e1d67ec38b794979d064cc344fe7d6ed0e4bac Merge: 06685b213 9554f6481 Author: christof-wittreich Date: Mon Sep 9 09:55:46 2024 -0400 Merge pull request #5452 from nasa-gibs/main Main to Develop v4.47.0 commit 9554f6481df72f4973be873b4a42adedcee31226 Merge: 0826b426a 1a07b8549 Author: christof-wittreich Date: Mon Sep 9 09:33:04 2024 -0400 Merge pull request #5451 from nasa-gibs/release Release to Main v4.47.0 commit 1a07b8549100a1762941eb1a725dcfc343398f16 Merge: b1c67b32d ae121d5a3 Author: christof-wittreich Date: Fri Sep 6 10:51:10 2024 -0400 Merge pull request #5450 from nasa-gibs/UAT-v4.47.0 UAT-v4.47.0 to Release commit ae121d5a37e28740a1a3b0d40dd6138270b5822a Author: christof-wittreich Date: Fri Sep 6 10:49:37 2024 -0400 v4.47.0 commit 06685b213566b0781dcdf097080b994b29e9f869 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Sep 6 10:15:52 2024 -0400 WV-3301 TEMPO Operations Loading Issues (#5435) * chore: Refactor layerbuilder to use workers to fetch and process CMR granule date ranges chore: Refactor UpdateProjection component to handle changes in active layers * fix: Update isWithinRanges function to return false when ranges are null. This prevents imagery from being shown before the CMR requests resolve. commit 98704bcdf1770dbc17283e40336fe9ed9ebce1de Author: christof-wittreich Date: Fri Sep 6 09:01:19 2024 -0400 Dependency Updates 09-06-24 (#5449) commit 2c63758c2a4bdfccea2d5a2bc6abe8d8a40a3457 Author: christof-wittreich Date: Thu Sep 5 15:52:48 2024 -0400 WV-3226 Look and Feel Changes (#5434) * Look and feel changes * Fixed linting * Review changes * Fixed e2e tests * Further review comments * Weight and checkbox fixes * Fixed checkbox check height * Spacing and background feedback * Changes from review meeting commit 37e4216e198d681ac7889313f3dfd88c52b32bf8 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Sep 3 13:31:14 2024 -0400 chore: Update axios and eslint-plugin-jest dependencies to latest versions (#5436) commit 7939ae3ac8ebf1fb2b636259a5a6e6d232262518 Author: minniewong Date: Wed Aug 28 09:40:19 2024 -0400 WV-3208: Add NOAA-21/VIIRS fires (#5431) commit 20a14559bb733df3acf5278e223e8c453cc49b97 Author: christof-wittreich Date: Mon Aug 26 11:44:34 2024 -0400 Dependency Updates 08-23-24 (#5428) commit e90baf1dcdf58ddbca22b32ba5201bb15c953d7a Merge: 6326a746e 0826b426a Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 26 11:30:02 2024 -0400 Merge pull request #5430 from nasa-gibs/main main into develop commit 0826b426a6c6e00f2ae2c5a0e5c94ca7429db52c Merge: b713a6a2b b1c67b32d Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 26 11:08:26 2024 -0400 Merge pull request #5429 from nasa-gibs/release Release into main commit b1c67b32db6b393a943bd0cbbb3467c7e09068b0 Merge: ca607fc51 f98461c35 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Thu Aug 22 10:56:45 2024 -0400 Merge pull request #5417 from nasa-gibs/UAT-v4.46.0 UAT-v4.46.0 to Release commit f98461c35aafddee4d40113c93a0ffe52cc88781 Author: PatchesMaps Date: Thu Aug 22 10:51:20 2024 -0400 v4.46.0 commit 6326a746eb17c5de183d219fe9e3f848746ff154 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Aug 16 16:49:26 2024 -0400 chore: Update npm dependencies to latest versions (#5416) commit 4457fd4764c4867bf4cf98fe1c8c10d707c10c70 Author: minniewong Date: Fri Aug 16 14:17:37 2024 -0400 Update README.md (#5415) commit 0d5512cd608fc20dc4d42aaa647ae26c7296b480 Author: christof-wittreich Date: Fri Aug 16 11:51:21 2024 -0400 Removed removal of layers (#5410) commit 09c2f217fcf12a5faa1a79296c856aa887fc1766 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Thu Aug 15 10:49:54 2024 -0400 Round Time for TEMPO granule requests (#5405) * chore: Refactor granuleLayerBuilder to use array of params for CMR request * refactor: set leadingEdgeDate to 59 seconds to make date handling more intuitive. commit 33d087ee0573bddad591b87b8e00a3fc7703f46e Author: christof-wittreich Date: Wed Aug 14 17:11:46 2024 -0400 Updated axios version (#5409) commit c2c861745983f124559f162e9af9632f72505ac4 Author: christof-wittreich Date: Wed Aug 14 15:41:34 2024 -0400 WV-2958 Additional Vegetation Indices (#5365) * Added other expressions * Changed colormaps * Adjusted selection card spacing * Added separate hls layers * fix typo * Revert "fix typo" This reverts commit 24bf1248d2bed544c416fe055a4e1a9d943553f5. * layer descriptions for new indices * update spacing for equations * Add new large preview images * Thumbnail preview images for customizable HLS * Thumbnails url * Fixed thumbnail height * fix typos --------- Co-authored-by: minniewong commit 128d33f5c13daf5f0eb44c330f52d208482085f2 Author: minniewong Date: Wed Aug 14 15:28:02 2024 -0400 WV-3293: Update README.md (#5408) commit 12695fe4c866d553de4d50cd282ebff50989ddb9 Author: minniewong Date: Wed Aug 14 11:18:48 2024 -0400 WV-2494: Add 4 GOES Fire Temp and Dust layers (#5407) commit 2be66fa578b1a58877ab3278ae28a86793d64596 Author: minniewong Date: Tue Aug 13 14:33:35 2024 -0400 WV-3287: Remove 20 day rolling window for EVI and NDVI rolling 8-day (#5401) * remove 20 day rolling window for EVI and NDVI rolling 8-day * fix repeated word typos commit 88f19d8760d0322baaf9dd970411188bb78c4805 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Aug 13 11:18:12 2024 -0400 WV-3237 Alert users if snapshot exceeds GRANULE_LIMIT (#5394) * feat: Add warning for truncated granule dates in ImageDownloadPanel * fix: Fix missing semicolon in ImageDownloadPanel commit 7bc07900e88781bd149931b28e02ae2b67fa89e7 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Aug 13 11:15:49 2024 -0400 WV-3035 Global Granule Footprints (#5406) * feat: Add CMR source and WebGL layer for displaying granules The code changes add a new CMR source and a WebGL layer to display granules on the map. This allows for fetching and rendering granule data from the CMR API. * refactor: Remove unnecessary condition in LayerRow component The code changes remove an unnecessary condition in the LayerRow component that checked for the 'underZoomValue' property of the 'zot' object. This condition was causing the component to be disabled even when there were granules present. Removing this condition ensures that the component is only disabled when there are no granules. * refactor: Use OL Vector Layer instead of WebGL Layer commit 4232035744a7af53dc0a079a60f453bbec4bf5cf Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Aug 13 09:59:22 2024 -0400 WV-3246 Describe Domains (#5392) * initial work * fix: await processLayer in extractConfigFromWMTS.js * feat: only show "View Dates" in the layer info if the layer is not ongoing commit 1a63e18df573b4d68f48b3a58ed2c2a8211bb2e3 Author: christof-wittreich Date: Mon Aug 12 14:41:40 2024 -0400 Dependency Updates 08-09-24 (#5402) commit d2d6d4013bc03abcf0c2782887365eedbdd32a60 Merge: fcb5886ae b713a6a2b Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 12 10:32:04 2024 -0400 Merge pull request #5404 from nasa-gibs/main main into develop commit b713a6a2b27eebc54364882dbfc54d89e574ed33 Merge: ed93957e1 ca607fc51 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 12 10:14:19 2024 -0400 Merge pull request #5403 from nasa-gibs/release Release into main commit ca607fc510d6cf37f916e493c4cb024e068fab89 Merge: ebf1fd479 ed93957e1 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 12 10:13:37 2024 -0400 Merge branch 'main' into release commit ebf1fd479f3c7ce88e695c79bd70e6eeb384895d Merge: d8d60ef13 68019e3c0 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Thu Aug 8 13:06:45 2024 -0400 Merge pull request #5395 from nasa-gibs/UAT-v4.45.0 UAT-v4.45.0 to Release commit 68019e3c0f7bc6c39526d76f1c92e13cc955134b Merge: e0e707a41 d8d60ef13 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Thu Aug 8 11:41:31 2024 -0400 Merge branch 'release' into UAT-v4.45.0 commit e0e707a41647cdc7474dcafdad0e3d17804504e5 Author: PatchesMaps Date: Thu Aug 8 11:29:09 2024 -0400 v4.45.0 commit fcb5886aedd88a5efd7f764907c10d80ccebd47d Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Thu Aug 8 10:39:16 2024 -0400 refactor: Deduplicate granule data in getQueriedGranuleDates function (#5393) commit f5e6f32b10cfb3b5d59ab8660a7f37218f4a5593 Author: christof-wittreich Date: Thu Aug 8 09:50:30 2024 -0400 WV-3285 Pre-Caching Nearby Non-Subdaily Layers Fix (#5380) * Cleared time on request * Prevented subdaily layers from being time-stripped commit 1fb228e9e654c2103db3eab483457ff65cb54ec6 Author: christof-wittreich Date: Tue Aug 6 14:11:47 2024 -0400 Node 20.16.0 (#5391) commit 92ba0f572606abd21123d55527ac40b249e387fb Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Aug 5 09:48:22 2024 -0400 Dependency Updates 08-05-2024 commit 750cbde263938de01adc4552e9143bb6bffda054 Author: christof-wittreich Date: Thu Aug 1 13:32:39 2024 -0400 Adjusted layers number in test (#5379) commit 7ddc284d340ed31aac1b21c090f225da8af47b9b Author: minniewong Date: Thu Aug 1 10:15:19 2024 -0400 WV-3186: Add SeaWiFS Corrected Reflectance layer (#5378) * Add SeaWiFS Corrected Reflectance layer * Update SEAWIFS_ORBVIEW-2_GAC_True_Color.md commit 16244a69c312e29c14e38a6b832a03abce2ec6cd Author: christof-wittreich Date: Wed Jul 31 11:06:59 2024 -0400 WV-3283 AERONET Daily Layer Date Limitting (#5377) * Prevented data from previous days showing * Changed to wrapX: false --------- Co-authored-by: minniewong commit 364d3e92d94080be8a14f81bb32c65ff008f85a9 Author: christof-wittreich Date: Tue Jul 30 10:50:07 2024 -0400 Fixed tall class addition (#5376) commit 903b2e83718a425b0c01fa574ee5eb5360fbc06c Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Jul 29 15:52:48 2024 -0400 WV-3235-Support Time-Limited Display of TEMPO Imagery (#5363) * show granule only if selected date is within granule date range * Update action name for adding granule date ranges * Add functionality to retrieve and store granule date ranges * remove "cache: 'force-cache'" commit 7e719ff69c4c7cebbfe2d015fe15646c2fe2bd0b Author: christof-wittreich Date: Fri Jul 26 18:26:33 2024 -0400 Dependency Updates 07-26-24 (second) (#5375) * Dependency Updates 07-26-24 * Dependency Updates 07-26-24 (second) commit 4d9a99ffaf8f8ef9baa59b55f3ffc05841deecef Author: christof-wittreich Date: Fri Jul 26 11:48:39 2024 -0400 Dependency Updates 07-26-24 (#5373) commit 6c99f2e96246da802be115a8c39678287ac2a58f Author: minniewong Date: Wed Jul 24 13:17:23 2024 -0400 WV-3160: Add text on stray swaths (#5364) commit 86b9265306c6442e399311f10e5241b0391af384 Author: christof-wittreich Date: Mon Jul 22 16:41:32 2024 -0400 Main to Develop v4.44.0 (#5362) * UAT-v4.42.0 * Release to Main v4.42.0 (#5324) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * v4.43.0 * Release to Main v4.44.0 (#5361) * Main to Develop v4.43.0 (#5338) * UAT-v4.42.0 * Release to Main v4.42.0 (#5324) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * v4.43.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * Dependency Updates 07-12-234 (#5345) * Added check for non BEST layers in build (#5333) * WV-3104 GIBS API Link in Embed Tab (#5340) * Added api docs link * Simplified to a single class * WV-3154 Replace Social Tab with Citation Tab (#5346) * Changed the social tab to the citation tab * Changed citation to cite us & modified intro text * Fixed test * WV-3242 index out of bounds error (#5332) * only insert layers at valid index * only reload when new palette is AERONET * reload layers on change to rendered palettes * Dependency Updates 07-19-2024 (#5358) * Dependency Updates 07-19-2024 * revert sass bump * WV-3220 Smaller Extent BBox For Finding High-Resolution Imagery (#5347) * Added smallerExtent * Added getSmallerExtent reusable function * WV-3218: Update welcome.md to point users to the Worldview Image of the Week (#5359) * Update welcome.md * open link in new tab * v4.44.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * Merge branch 'develop' --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps commit ed93957e14c92790b8a910500650e5c5edfb27d3 Merge: 8a9140aa7 2c5ddc3d4 Author: christof-wittreich Date: Mon Jul 22 16:24:58 2024 -0400 Merge branch 'develop' into main commit 8a9140aa70b3c0dd8847f181e14af8f2ae143910 Author: christof-wittreich Date: Mon Jul 22 16:20:51 2024 -0400 Merge branch 'develop' commit 469a805e81ac2df52be7afee38f35e55c0aaa8a0 Author: christof-wittreich Date: Mon Jul 22 16:15:19 2024 -0400 Release to Main v4.44.0 (#5361) * Main to Develop v4.43.0 (#5338) * UAT-v4.42.0 * Release to Main v4.42.0 (#5324) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * v4.43.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * Dependency Updates 07-12-234 (#5345) * Added check for non BEST layers in build (#5333) * WV-3104 GIBS API Link in Embed Tab (#5340) * Added api docs link * Simplified to a single class * WV-3154 Replace Social Tab with Citation Tab (#5346) * Changed the social tab to the citation tab * Changed citation to cite us & modified intro text * Fixed test * WV-3242 index out of bounds error (#5332) * only insert layers at valid index * only reload when new palette is AERONET * reload layers on change to rendered palettes * Dependency Updates 07-19-2024 (#5358) * Dependency Updates 07-19-2024 * revert sass bump * WV-3220 Smaller Extent BBox For Finding High-Resolution Imagery (#5347) * Added smallerExtent * Added getSmallerExtent reusable function * WV-3218: Update welcome.md to point users to the Worldview Image of the Week (#5359) * Update welcome.md * open link in new tab * v4.44.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps commit d8d60ef1374e9cde1768ae80fe449b7c499bfebf Merge: bb3758142 36396a516 Author: christof-wittreich Date: Mon Jul 22 14:29:15 2024 -0400 Merge pull request #5360 from nasa-gibs/UAT-v4.44.0 UAT-v4.44.0 to Release commit 36396a5161a46164ea1f70915fd03f229ce2e559 Merge: 0ee6edbe0 bb3758142 Author: christof-wittreich Date: Mon Jul 22 14:13:24 2024 -0400 Merge branch 'release' into UAT-v4.44.0 commit 0ee6edbe06ca759d406c7a416d970ac7edf9b224 Author: christof-wittreich Date: Mon Jul 22 14:11:08 2024 -0400 v4.44.0 commit 2c5ddc3d4d81f2ab3d07e7a83bc2578c87404df3 Author: minniewong Date: Mon Jul 22 13:29:25 2024 -0400 WV-3218: Update welcome.md to point users to the Worldview Image of the Week (#5359) * Update welcome.md * open link in new tab commit 92cbac8761618bb201c46ed2d1cede8fb37050bf Author: christof-wittreich Date: Mon Jul 22 11:18:30 2024 -0400 WV-3220 Smaller Extent BBox For Finding High-Resolution Imagery (#5347) * Added smallerExtent * Added getSmallerExtent reusable function commit ed339aac8b2d18d90a14f56a2a466110ff61fa67 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Jul 19 12:06:08 2024 -0400 Dependency Updates 07-19-2024 (#5358) * Dependency Updates 07-19-2024 * revert sass bump commit 9d84b988d1fb613cd384e43072223a2463fea1ab Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Mon Jul 15 13:14:30 2024 -0400 WV-3242 index out of bounds error (#5332) * only insert layers at valid index * only reload when new palette is AERONET * reload layers on change to rendered palettes commit 2292ddca3467afd9d5586d22abf6ac39ee3e1593 Author: christof-wittreich Date: Mon Jul 15 12:38:01 2024 -0400 WV-3154 Replace Social Tab with Citation Tab (#5346) * Changed the social tab to the citation tab * Changed citation to cite us & modified intro text * Fixed test commit 1fadfedaf14dcd5c43e5f8c0aae9f21677a0d5fa Author: christof-wittreich Date: Mon Jul 15 12:16:23 2024 -0400 WV-3104 GIBS API Link in Embed Tab (#5340) * Added api docs link * Simplified to a single class commit 8b2f1ce4801cf1e7ab0afdcecb09c89a0945bfc0 Author: christof-wittreich Date: Mon Jul 15 12:16:06 2024 -0400 Added check for non BEST layers in build (#5333) commit d3ee1528f824bd138125415f9119398a9e056ab1 Author: christof-wittreich Date: Fri Jul 12 11:29:46 2024 -0400 Dependency Updates 07-12-234 (#5345) commit 0ae1902116181d18961f704b3bfe4ba141a70df2 Author: christof-wittreich Date: Wed Jul 10 08:51:40 2024 -0400 Main to Develop v4.43.0 (#5338) * UAT-v4.42.0 * Release to Main v4.42.0 (#5324) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps * v4.43.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps commit fa9c9b3c652e9df680ba995a0311e0bb566952c0 Merge: 8aacf3905 bb3758142 Author: christof-wittreich Date: Wed Jul 10 08:22:23 2024 -0400 Merge pull request #5337 from nasa-gibs/release Release to Main v4.43.0 commit bb37581429c1fe35b248cdd4f128d83960140fe6 Merge: 7b75707c4 8aacf3905 Author: christof-wittreich Date: Wed Jul 10 08:16:06 2024 -0400 Merge branch 'main' into release commit 7b75707c4209d8af0f3964b4a72919b39c834573 Merge: ab9646c92 21ed8e7ac Author: christof-wittreich Date: Tue Jul 9 15:31:16 2024 -0400 Merge pull request #5336 from nasa-gibs/UAT-v4.43.0 UAT-v4.43.0 to Release commit 21ed8e7acd4fee3003eebb14279c9b9a11c2cab7 Merge: e2ef65725 ab9646c92 Author: christof-wittreich Date: Tue Jul 9 15:23:58 2024 -0400 Merge branch 'release' into UAT-v4.43.0 commit e2ef657258f845679d4fcff1988dc61315c0fb59 Author: christof-wittreich Date: Tue Jul 9 15:21:33 2024 -0400 v4.43.0 commit 20a14054a413c4822798cc75145fb12a05c6e0ef Author: minniewong Date: Tue Jul 9 10:48:23 2024 -0400 WV-3060: Update DSWx version (#5335) * remove provisional for surface water extent * Updates for measurements, image and typo commit 50b64329c2b9cb23c7a45251c4a1f063632462d0 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Wed Jul 3 10:55:41 2024 -0400 check date's projection (#5322) commit 78f70f44e36059cdc5e9c141f9addb786fc318eb Author: christof-wittreich Date: Tue Jul 2 13:54:24 2024 -0400 Release to Main v4.42.0 (#5324) (#5325) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps commit 8aacf3905b4f05431b43416b314b59c0233a2e65 Merge: 9e62e78c0 8c64c0bcf Author: christof-wittreich Date: Tue Jul 2 13:00:53 2024 -0400 Merge branch 'develop' into main commit 9e62e78c08cf9ecb1a0b30bab347192e62692e52 Author: christof-wittreich Date: Tue Jul 2 12:54:48 2024 -0400 Release to Main v4.42.0 (#5324) * WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms * Updated eslint-plugin-n (#5317) * dependency updates * WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements * Update IMERG to version 7 (#5321) * UAT-v4.42.0 --------- Co-authored-by: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Co-authored-by: minniewong Co-authored-by: PatchesMaps commit ab9646c92ce88444412ce3601f07952ba3230c80 Merge: a810e4ba4 ab0b6fa9f Author: christof-wittreich Date: Mon Jul 1 15:27:47 2024 -0400 Merge pull request #5323 from nasa-gibs/UAT-v4.42.0 UAT-v4.42.0 to Release commit ab0b6fa9f1966e6f7e815d94d99c36968de257ab Author: christof-wittreich Date: Mon Jul 1 15:22:41 2024 -0400 UAT-v4.42.0 commit 8c64c0bcffeffbdf7c88a8255e26147100aed91c Author: minniewong Date: Mon Jul 1 13:00:10 2024 -0400 Update IMERG to version 7 (#5321) commit 919ffa04f734798332e1f4ad58cd0491dbb19fa2 Author: christof-wittreich Date: Mon Jul 1 11:39:02 2024 -0400 WV-3210 Distraction Free Timezone Fix (#5320) * Added kioskMode check for timezone label * Separated ternary statements commit 6ae8b4391e0aab32fcf887a6e7c0a2d41af90c6f Merge: 2b6a6d24c bd05608e2 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Jun 28 15:55:40 2024 -0400 Merge pull request #5319 from nasa-gibs/dependency-updates-06-28-2024 Dependency Updates 06-28-2024 commit bd05608e2549e30d508c868931c1cdea1e22b465 Author: PatchesMaps Date: Fri Jun 28 15:35:50 2024 -0400 dependency updates commit 2b6a6d24c2988f9056aeea08087d3bbaa1cd03a3 Author: christof-wittreich Date: Thu Jun 27 15:17:40 2024 -0400 Updated eslint-plugin-n (#5317) commit 8255f668aacdb756b997f7982235feb00e9e3d4d Author: minniewong Date: Wed Jun 26 13:55:59 2024 -0400 WV-3177: Rename EOSDIS Worldview to NASA Worldview (#5316) * Remove EOSDIS * Update EOSDIS to ESDIS and LANCE acronyms commit 708af6661bd4e37e12312c57143000dea84e99a6 Merge: 5957893d1 d1384ee0e Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Jun 25 14:35:21 2024 -0400 Merge pull request #5315 from nasa-gibs/main main into develop commit d1384ee0e8ecdf42444993daca3a03ed7f6dbfc1 Merge: 018b4748e a810e4ba4 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Jun 25 14:14:54 2024 -0400 Merge pull request #5314 from nasa-gibs/release Release into main commit a810e4ba45cac73a75b2d08ac85e2c45daf0c436 Merge: ac18f0362 5074c620f Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Jun 25 10:43:56 2024 -0400 Merge pull request #5313 from nasa-gibs/UAT-v4.41.2 UAT-v4.41.2 commit 5074c620fc5a751d7fb3f08e2b3b629f3ed62775 Author: PatchesMaps Date: Tue Jun 25 10:37:32 2024 -0400 v4.41.2 commit 5957893d13ba405a9479b539542ba4858acef205 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Tue Jun 25 08:48:26 2024 -0400 WV-3234-L2 TEMPO imagery not showing at the correct time (#5311) * sort available granules before finding matching * don't snap to nearest interval for temo l2 commit 035fa35c744231708d0ac0b3ed0e5054bb5a17cc Author: christof-wittreich Date: Mon Jun 24 12:01:40 2024 -0400 Dependency Updates 06-21-24 (#5312) commit 890f96384967129e29c0dd2b18f57f5fd9569892 Merge: de88768f0 018b4748e Author: Tom Cariello Date: Fri Jun 21 14:15:16 2024 -0400 Merge pull request #5310 from nasa-gibs/main Main v4.41.1 to develop commit 018b4748ed9c1d4d068ed852eb33196adebac34f Merge: 8a7662111 ac18f0362 Author: Tom Cariello Date: Fri Jun 21 14:12:48 2024 -0400 Merge pull request #5309 from nasa-gibs/release Release v4.41.1 to main commit ac18f03620a81335880961cbe5b065a5757de24f Merge: 55a052063 2e1cba7a4 Author: Tom Cariello Date: Fri Jun 21 12:57:32 2024 -0400 Merge pull request #5308 from nasa-gibs/UAT-v4.41.1 UAT v4.41.1 commit 2e1cba7a43b9825955fa56363bebd8bcd0e07e4b Author: Tom Cariello Date: Fri Jun 21 12:54:39 2024 -0400 v4.41.1 commit de88768f0381bcf798570c360f774cfd01228c43 Author: Patrick Moulden <4834892+PatchesMaps@users.noreply.github.com> Date: Fri Jun 21 11:24:19 2024 -0400 revert updateDate (#5307) --- .eslintrc | 1 + Dockerfile | 2 +- LICENSE.md | 2 +- README.md | 10 +- config/default/common/brand.json | 4 +- .../common/brand/about/acknowledgements.md | 4 +- config/default/common/brand/about/imagery.md | 7 +- config/default/common/brand/about/welcome.md | 8 +- .../aeronet/AERONET_ANGSTROM_440-870NM.md | 2 +- .../layers/aeronet/AERONET_AOD_500NM.md | 2 +- .../DAILY_AERONET_ANGSTROM_440-870NM.md | 2 +- .../layers/aeronet/DAILY_AERONET_AOD_500NM.md | 2 +- .../layers/goes/GOES-East_ABI_Dust.md | 18 + .../layers/goes/GOES-East_ABI_FireTemp.md | 19 + .../layers/goes/GOES-West_ABI_Dust.md | 18 + .../layers/goes/GOES-West_ABI_FireTemp.md | 19 + ...DIS_Aqua_Cloud_Optical_Thickness_16_PCL.md | 2 +- .../MODIS_Aqua_Cloud_Optical_Thickness_PCL.md | 2 +- ...S_Aqua_Cloud_Optical_Thickness_PCL_1621.md | 2 +- ...Combined_L3_IGBP_Land_Cover_Type_Annual.md | 4 +- ...IS_Terra_Cloud_Optical_Thickness_16_PCL.md | 2 +- ...MODIS_Terra_Cloud_Optical_Thickness_PCL.md | 2 +- ..._Terra_Cloud_Optical_Thickness_PCL_1621.md | 2 +- .../modis/terra/MODIS_Terra_EVI_8Day.md | 2 +- .../modis/terra/MODIS_Terra_L3_EVI_Monthly.md | 2 +- .../modis/terra/MODIS_Terra_NDVI_8Day.md | 2 +- .../hls/HLS_Customizable_Sentinel.md | 2 +- .../multi-mission/hls/HLS_EVI_Landsat.md | 21 + .../multi-mission/hls/HLS_EVI_Sentinel.md | 21 + .../hls/HLS_False_Color_Sentinel.md | 2 +- .../hls/HLS_False_Color_Urban_Landsat.md | 2 +- .../hls/HLS_False_Color_Urban_Sentinel.md | 2 +- .../hls/HLS_False_Color_Vegetation_Landsat.md | 2 +- .../HLS_False_Color_Vegetation_Sentinel.md | 2 +- .../multi-mission/hls/HLS_MSAVI_Landsat.md | 19 + .../multi-mission/hls/HLS_MSAVI_Sentinel.md | 19 + .../hls/HLS_Moisture_Index_Landsat.md | 10 +- .../hls/HLS_Moisture_Index_Sentinel.md | 10 +- .../multi-mission/hls/HLS_NBR2_Landsat.md | 19 + .../multi-mission/hls/HLS_NBR2_Sentinel.md | 19 + .../multi-mission/hls/HLS_NBR_Landsat.md | 19 + .../multi-mission/hls/HLS_NBR_Sentinel.md | 19 + .../multi-mission/hls/HLS_NDSI_Landsat.md | 8 +- .../multi-mission/hls/HLS_NDSI_Sentinel.md | 8 +- .../multi-mission/hls/HLS_NDVI_Landsat.md | 10 +- .../multi-mission/hls/HLS_NDVI_Sentinel.md | 10 +- .../multi-mission/hls/HLS_NDWI_Landsat.md | 10 +- .../multi-mission/hls/HLS_NDWI_Sentinel.md | 10 +- ...HLS_S30_Nadir_BRDF_Adjusted_Reflectance.md | 2 +- .../multi-mission/hls/HLS_SAVI_Landsat.md | 19 + .../multi-mission/hls/HLS_SAVI_Sentinel.md | 19 + .../multi-mission/hls/HLS_SWIR_Sentinel.md | 9 - .../hls/HLS_Shortwave_Infrared_Landsat.md | 2 +- .../hls/HLS_Shortwave_Infrared_Sentinel.md | 2 +- .../multi-mission/hls/HLS_TVI_Landsat.md | 19 + .../multi-mission/hls/HLS_TVI_Sentinel.md | 17 + .../hls/HLS_True_Color_Landsat.md | 2 +- .../hls/HLS_True_Color_Sentinel.md | 2 +- .../layers/multi-mission/hls/Reflectance.md | 2 + .../imerg/IMERG_Precipitation_Rate.md | 4 +- ...ERA_L3_Dynamic_Surface_Water_Extent-HLS.md | 3 + ...ic_Surface_Water_Extent-HLS_Provisional.md | 3 - .../orbits/OrbitTracks_NOAA-20_Ascending.md | 2 +- .../orbits/OrbitTracks_NOAA-20_Descending.md | 2 +- .../orbits/OrbitTracks_Suomi_NPP_Ascending.md | 2 +- .../OrbitTracks_Suomi_NPP_Descending.md | 2 +- .../SEAWIFS_ORBVIEW-2_GAC_True_Color.md | 5 + ...rtional_Economic_Loss_Risk_Deciles_2000.md | 2 +- ...rtional_Economic_Loss_Risk_Deciles_2000.md | 2 +- ...rtional_Economic_Loss_Risk_Deciles_2000.md | 2 +- .../Summer_Day_Max_Land_Surface_Temp_2013.md | 2 +- ...Summer_Night_Min_Land_Surface_Temp_2013.md | 2 +- .../metadata/layers/srtm/SRTM_Color_Index.md | 2 +- ...VIIRS_NOAA20_Thermal_Anomalies_375m_All.md | 2 +- ...VIIRS_NOAA20_Thermal_Anomalies_375m_Day.md | 2 +- ...IRS_NOAA20_Thermal_Anomalies_375m_Night.md | 2 +- ...VIIRS_NOAA21_Thermal_Anomalies_375m_All.md | 7 + ...VIIRS_NOAA21_Thermal_Anomalies_375m_Day.md | 7 + ...IRS_NOAA21_Thermal_Anomalies_375m_Night.md | 7 + ..._SNPP_Apparent_Reflectance_VNP02MOD_M09.md | 2 +- .../VIIRS_SNPP_Cirrus_Reflectance_SWIR_M11.md | 2 +- .../VIIRS_SNPP_Cirrus_Reflectance_VIS_NIR.md | 2 +- .../VIIRS_SNPP_Thermal_Anomalies_375m_All.md | 2 +- .../VIIRS_SNPP_Thermal_Anomalies_375m_Day.md | 2 +- ...VIIRS_SNPP_Thermal_Anomalies_375m_Night.md | 2 +- .../wv.json/categories/featured/All.json | 3 +- .../common/config/wv.json/layerOrder.json | 22 +- .../aeronet/AERONET_ANGSTROM_440-870NM.json | 2 +- .../layers/aeronet/AERONET_AOD_500NM.json | 2 +- .../DAILY_AERONET_ANGSTROM_440-870NM.json | 2 +- .../aeronet/DAILY_AERONET_AOD_500NM.json | 2 +- .../layers/goes/GOES-East_ABI_Dust.json | 15 + .../layers/goes/GOES-East_ABI_FireTemp.json | 15 + .../layers/goes/GOES-West_ABI_Dust.json | 15 + .../layers/goes/GOES-West_ABI_FireTemp.json | 15 + .../modis/terra/MODIS_Terra_EVI_8Day.json | 5 +- .../modis/terra/MODIS_Terra_NDVI_8Day.json | 5 +- .../multi-mission/hls/HLS_EVI_Landsat.json | 36 + .../multi-mission/hls/HLS_EVI_Sentinel.json | 36 + .../multi-mission/hls/HLS_MSAVI_Landsat.json | 36 + .../multi-mission/hls/HLS_MSAVI_Sentinel.json | 36 + .../hls/HLS_Moisture_Index_Landsat.json | 2 +- .../hls/HLS_Moisture_Index_Sentinel.json | 2 +- .../multi-mission/hls/HLS_NBR2_Landsat.json | 36 + .../multi-mission/hls/HLS_NBR2_Sentinel.json | 36 + .../multi-mission/hls/HLS_NBR_Landsat.json | 36 + .../multi-mission/hls/HLS_NBR_Sentinel.json | 36 + .../multi-mission/hls/HLS_NDVI_Landsat.json | 2 +- .../multi-mission/hls/HLS_NDVI_Sentinel.json | 2 +- .../multi-mission/hls/HLS_SAVI_Landsat.json | 36 + .../multi-mission/hls/HLS_SAVI_Sentinel.json | 36 + .../multi-mission/hls/HLS_TVI_Landsat.json | 36 + .../multi-mission/hls/HLS_TVI_Sentinel.json | 36 + .../OPERA_L3_DIST-ALERT-HLS_Color_Index.json | 1 + ..._L3_Dynamic_Surface_Water_Extent-HLS.json} | 6 +- .../SEAWIFS_ORBVIEW-2_GAC_True_Color.json | 12 + ...L2_Cloud_Cloud_Fraction_Total_Granule.json | 2 +- ...L2_Cloud_Cloud_Pressure_Total_Granule.json | 2 +- ..._Formaldehyde_Vertical_Column_Granule.json | 2 +- ..._Vertical_Column_Stratosphere_Granule.json | 2 +- ...2_Vertical_Column_Troposphere_Granule.json | 2 +- ...TEMPO_L2_Ozone_Cloud_Fraction_Granule.json | 2 +- .../TEMPO_L2_Ozone_Column_Amount_Granule.json | 2 +- ...MPO_L2_Ozone_UV_Aerosol_Index_Granule.json | 2 +- .../TEMPO_L3_Cloud_Cloud_Fraction_Total.json | 2 +- .../TEMPO_L3_Cloud_Cloud_Pressure_Total.json | 2 +- ...TEMPO_L3_Formaldehyde_Vertical_Column.json | 2 +- ...O_L3_NO2_Vertical_Column_Stratosphere.json | 2 +- ...PO_L3_NO2_Vertical_Column_Troposphere.json | 2 +- .../tempo/TEMPO_L3_Ozone_Cloud_Fraction.json | 2 +- .../tempo/TEMPO_L3_Ozone_Column_Amount.json | 2 +- .../TEMPO_L3_Ozone_UV_Aerosol_Index.json | 2 +- ...tedReflectance_BandsM11-I2-I1_Granule.json | 2 +- ...tedReflectance_BandsM3-I3-M11_Granule.json | 2 +- ...orrectedReflectance_TrueColor_Granule.json | 2 +- ...IRS_NOAA21_Thermal_Anomalies_375m_All.json | 40 + ...IRS_NOAA21_Thermal_Anomalies_375m_Day.json | 40 + ...S_NOAA21_Thermal_Anomalies_375m_Night.json | 40 + ...tedReflectance_BandsM11-I2-I1_Granule.json | 2 +- ...tedReflectance_BandsM3-I3-M11_Granule.json | 2 +- ...orrectedReflectance_TrueColor_Granule.json | 2 +- .../measurements/Corrected Reflectance.json | 11 +- .../config/wv.json/measurements/Dust.json | 20 +- ...eatured - Fires and Thermal Anomalies.json | 15 +- .../Featured - Surface Water Extent.json | 23 - ...tured - Vegetation Disturbance Status.json | 23 - .../Fires and Thermal Anomalies.json | 33 +- .../config/wv.json/measurements/Flood.json | 2 +- .../measurements/Surface Water Extent.json | 2 +- .../measurements/Vegetation Indices.json | 16 +- .../common/config/wv.json/naturalEvents.json | 2 +- .../stories/default/surface_water_extent.json | 12 +- .../stories/default/worldview_intro.json | 2 +- .../severe-storm/atmospheric_rivers.json | 2 +- doc/branding.md | 4 +- doc/config/layers.md | 5 +- e2e/features/animation/animation-test.spec.js | 4 +- e2e/features/layers/layer-picker-test.spec.js | 4 +- e2e/features/share/share-test.spec.js | 22 +- .../timeline/date-selector-test.spec.js | 6 +- e2e/test-utils/global-variables/selectors.js | 4 +- package-lock.json | 2468 +++++++++-------- package.json | 103 +- tasks/bamboo/linkReport.sh | 2 +- tasks/build-options/extractConfigFromWMTS.js | 4 +- tasks/build-options/getVisMetadata.js | 16 +- tasks/build-options/processTemporalLayer.js | 161 +- web/.eslintrc | 6 +- web/fonts/Inter/Inter-Light.ttf | Bin 0 -> 343704 bytes web/fonts/Inter/Inter-Medium.ttf | Bin 0 -> 343200 bytes web/fonts/PublicSans/PublicSans-Regular.ttf | Bin 0 -> 60820 bytes .../PublicSans-VariableFont_wght.ttf | Bin 0 -> 101592 bytes ...IIRS_NOAA21_Thermal_Anomalies_375m_All.jpg | Bin 0 -> 20582 bytes ...IIRS_NOAA21_Thermal_Anomalies_375m_Day.jpg | Bin 0 -> 15892 bytes ...RS_NOAA21_Thermal_Anomalies_375m_Night.jpg | Bin 0 -> 18594 bytes .../geographic/GOES-East_ABI_Dust.jpg | Bin 0 -> 35289 bytes .../geographic/GOES-East_ABI_FireTemp.jpg | Bin 0 -> 23882 bytes .../geographic/GOES-West_ABI_Dust.jpg | Bin 0 -> 37426 bytes .../geographic/GOES-West_ABI_FireTemp.jpg | Bin 0 -> 23444 bytes .../geographic/HLS_Color_Infrared_Landsat.jpg | Bin 136457 -> 0 bytes .../geographic/HLS_Customizable_Landsat.jpg | Bin 152119 -> 54613 bytes .../geographic/HLS_Customizable_Sentinel.jpg | Bin 151595 -> 54360 bytes .../previews/geographic/HLS_EVI_Landsat.jpg | Bin 0 -> 152776 bytes .../geographic/HLS_EVI_Landsat_th.jpg | Bin 0 -> 5401 bytes .../previews/geographic/HLS_EVI_Sentinel.jpg | Bin 0 -> 151255 bytes .../geographic/HLS_EVI_Sentinel_th.jpg | Bin 0 -> 5190 bytes .../geographic/HLS_False_Color_Landsat.jpg | Bin 136457 -> 76548 bytes .../geographic/HLS_False_Color_Landsat_th.jpg | Bin 0 -> 3839 bytes .../geographic/HLS_False_Color_Sentinel.jpg | Bin 133876 -> 81417 bytes .../HLS_False_Color_Sentinel_th.jpg | Bin 0 -> 3764 bytes .../HLS_False_Color_Urban_Landsat.jpg | Bin 101713 -> 73743 bytes .../HLS_False_Color_Urban_Landsat_th.jpg | Bin 0 -> 4222 bytes .../HLS_False_Color_Urban_Sentinel.jpg | Bin 157659 -> 68612 bytes .../HLS_False_Color_Urban_Sentinel_th.jpg | Bin 0 -> 4216 bytes .../HLS_False_Color_Vegetation_Landsat.jpg | Bin 126052 -> 68851 bytes .../HLS_False_Color_Vegetation_Landsat_th.jpg | Bin 0 -> 4123 bytes .../HLS_False_Color_Vegetation_Sentinel.jpg | Bin 172239 -> 66706 bytes ...HLS_False_Color_Vegetation_Sentinel_th.jpg | Bin 0 -> 4155 bytes .../previews/geographic/HLS_MSAVI_Landsat.jpg | Bin 0 -> 151335 bytes .../geographic/HLS_MSAVI_Landsat_th.jpg | Bin 0 -> 4876 bytes .../geographic/HLS_MSAVI_Sentinel.jpg | Bin 0 -> 156731 bytes .../geographic/HLS_MSAVI_Sentinel_th.jpg | Bin 0 -> 4769 bytes .../HLS_Moisture_Index_Sentinel.jpg | Bin 111103 -> 73375 bytes .../previews/geographic/HLS_NBR2_Landsat.jpg | Bin 0 -> 83707 bytes .../geographic/HLS_NBR2_Landsat_th.jpg | Bin 0 -> 4839 bytes .../previews/geographic/HLS_NBR2_Sentinel.jpg | Bin 0 -> 80891 bytes .../geographic/HLS_NBR2_Sentinel_th.jpg | Bin 0 -> 4928 bytes .../previews/geographic/HLS_NBR_Landsat.jpg | Bin 0 -> 80414 bytes .../geographic/HLS_NBR_Landsat_th.jpg | Bin 0 -> 5412 bytes .../previews/geographic/HLS_NBR_Sentinel.jpg | Bin 0 -> 79280 bytes .../geographic/HLS_NBR_Sentinel_th.jpg | Bin 0 -> 5393 bytes .../previews/geographic/HLS_NDMI_Landsat.jpg | Bin 0 -> 76472 bytes .../geographic/HLS_NDMI_Landsat_th.jpg | Bin 0 -> 4292 bytes .../geographic/HLS_NDMI_Sentinel_th.jpg | Bin 0 -> 4196 bytes .../previews/geographic/HLS_NDSI_Landsat.jpg | Bin 131798 -> 49120 bytes .../geographic/HLS_NDSI_Landsat_th.jpg | Bin 0 -> 2283 bytes .../previews/geographic/HLS_NDSI_Sentinel.jpg | Bin 103247 -> 33782 bytes .../geographic/HLS_NDSI_Sentinel_th.jpg | Bin 0 -> 1914 bytes .../previews/geographic/HLS_NDVI_Landsat.jpg | Bin 109296 -> 154049 bytes .../geographic/HLS_NDVI_Landsat_th.jpg | Bin 0 -> 5215 bytes .../previews/geographic/HLS_NDVI_Sentinel.jpg | Bin 105861 -> 163585 bytes .../geographic/HLS_NDVI_Sentinel_th.jpg | Bin 0 -> 5429 bytes .../previews/geographic/HLS_NDWI_Landsat.jpg | Bin 107611 -> 79686 bytes .../geographic/HLS_NDWI_Landsat_th.jpg | Bin 0 -> 2872 bytes .../previews/geographic/HLS_NDWI_Sentinel.jpg | Bin 103106 -> 72082 bytes .../geographic/HLS_NDWI_Sentinel_th.jpg | Bin 0 -> 2858 bytes .../previews/geographic/HLS_SAVI_Landsat.jpg | Bin 0 -> 142961 bytes .../geographic/HLS_SAVI_Landsat_th.jpg | Bin 0 -> 4973 bytes .../previews/geographic/HLS_SAVI_Sentinel.jpg | Bin 0 -> 159924 bytes .../geographic/HLS_SAVI_Sentinel_th.jpg | Bin 0 -> 4820 bytes .../previews/geographic/HLS_SWIR_Landsat.jpg | Bin 0 -> 68960 bytes .../geographic/HLS_SWIR_Landsat_th.jpg | Bin 0 -> 4017 bytes .../previews/geographic/HLS_SWIR_Sentinel.jpg | Bin 119421 -> 63835 bytes .../geographic/HLS_SWIR_Sentinel_th.jpg | Bin 0 -> 4044 bytes .../HLS_Shortwave_Infrared_Landsat.jpg | Bin 120909 -> 554 bytes .../HLS_Shortwave_Infrared_Sentinel.jpg | Bin 119421 -> 554 bytes .../previews/geographic/HLS_TVI_Landsat.jpg | Bin 0 -> 50977 bytes .../geographic/HLS_TVI_Landsat_th.jpg | Bin 0 -> 2252 bytes .../previews/geographic/HLS_TVI_Sentinel.jpg | Bin 0 -> 56516 bytes .../geographic/HLS_TVI_Sentinel_th.jpg | Bin 0 -> 2852 bytes ...A_L3_Dynamic_Surface_Water_Extent-HLS.jpg} | Bin .../SEAWIFS_ORBVIEW-2_GAC_True_Color.jpg | Bin 0 -> 180802 bytes ...IIRS_NOAA21_Thermal_Anomalies_375m_All.jpg | Bin 0 -> 27864 bytes ...IIRS_NOAA21_Thermal_Anomalies_375m_Day.jpg | Bin 0 -> 24676 bytes ...RS_NOAA21_Thermal_Anomalies_375m_Night.jpg | Bin 0 -> 26538 bytes web/index.html | 4 +- .../image-download/image-download-panel.js | 17 +- web/js/components/layer/info/info.js | 3 +- .../product-picker/search/search-layer-row.js | 6 +- .../settings/associated-layers-toggle.js | 1 + .../menu-components/preset-options.js | 169 +- .../layer/settings/imagery-search.js | 29 +- web/js/components/layer/settings/palette.js | 6 + .../components/layer/settings/vector-style.js | 3 + .../smart-handoffs/smart-handoff-modal.js | 6 +- web/js/components/timeline/kiosk-timestamp.js | 3 +- .../timeline-controls/date-change-arrows.js | 17 +- .../timeline-coverage/timeline-coverage.js | 109 +- web/js/components/toolbar/share/links.js | 78 - web/js/components/tour/content-intro.js | 11 +- web/js/components/tour/modal-tour-complete.js | 3 +- .../components/tour/modal-tour-in-progress.js | 3 +- web/js/components/tour/modal-tour-start.js | 5 +- web/js/components/tour/tour-box.js | 2 + web/js/components/util/arrow.js | 5 +- web/js/components/util/checkbox.js | 4 + web/js/containers/share.js | 83 +- web/js/containers/sidebar/footer-content.js | 13 +- web/js/containers/sidebar/layer-row.js | 2 +- web/js/containers/sidebar/sidebar.js | 22 +- web/js/map/granule/granule-layer-builder.js | 60 +- .../map/granule/granule-layer-builder.test.js | 2 +- web/js/map/granule/util.js | 31 +- web/js/map/layerbuilder.js | 153 +- web/js/map/util.js | 22 + web/js/mapUI/components/layers/addLayer.js | 7 +- .../update-collections/updateCollections.js | 2 +- .../components/update-date/updateDate.js | 5 +- .../update-projection/updateProjection.js | 20 +- web/js/modules/image-download/util.js | 55 +- web/js/modules/layers/actions.js | 16 + web/js/modules/layers/constants.js | 1 + web/js/modules/layers/reducers.js | 18 + web/js/modules/layers/selectors.js | 5 +- web/js/modules/link/actions.test.js | 2 +- web/js/modules/link/util.js | 19 - web/js/modules/modal/actions.test.js | 2 +- web/js/modules/notifications/actions.test.js | 2 +- web/js/modules/palettes/actions.test.js | 2 +- web/js/util/util.js | 4 +- web/js/workers/cmr.worker.js | 118 + web/js/workers/dd.worker.js | 134 + web/scss/components/button.scss | 5 +- web/scss/components/checkbox.scss | 46 +- web/scss/components/dateselector.scss | 2 + web/scss/components/facets.scss | 3 +- web/scss/components/modal.scss | 6 +- web/scss/components/notifications.scss | 4 +- web/scss/features/about.scss | 6 +- web/scss/features/customize-bands.scss | 13 +- web/scss/features/events.scss | 13 +- web/scss/features/layer-categories.scss | 16 +- web/scss/features/layer-coverage-panel.scss | 1 - web/scss/features/layers.scss | 16 +- web/scss/features/share.scss | 64 +- web/scss/features/sidebar-panel.scss | 5 +- web/scss/features/sidebar.scss | 27 +- web/scss/features/timeline.scss | 31 +- web/scss/features/tour.scss | 155 +- web/scss/fonts.scss | 23 + web/scss/reset.scss | 2 +- web/scss/variables.scss | 4 +- 312 files changed, 3914 insertions(+), 2065 deletions(-) create mode 100644 config/default/common/config/metadata/layers/goes/GOES-East_ABI_Dust.md create mode 100644 config/default/common/config/metadata/layers/goes/GOES-East_ABI_FireTemp.md create mode 100644 config/default/common/config/metadata/layers/goes/GOES-West_ABI_Dust.md create mode 100644 config/default/common/config/metadata/layers/goes/GOES-West_ABI_FireTemp.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_EVI_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_EVI_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_MSAVI_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_MSAVI_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_NBR2_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_NBR2_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_NBR_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_NBR_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_SAVI_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_SAVI_Sentinel.md delete mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_SWIR_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_TVI_Landsat.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/hls/HLS_TVI_Sentinel.md create mode 100644 config/default/common/config/metadata/layers/multi-mission/opera/OPERA_L3_Dynamic_Surface_Water_Extent-HLS.md delete mode 100644 config/default/common/config/metadata/layers/multi-mission/opera/OPERA_L3_Dynamic_Surface_Water_Extent-HLS_Provisional.md create mode 100644 config/default/common/config/metadata/layers/seawifs/SEAWIFS_ORBVIEW-2_GAC_True_Color.md create mode 100644 config/default/common/config/metadata/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_All.md create mode 100644 config/default/common/config/metadata/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_Day.md create mode 100644 config/default/common/config/metadata/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_Night.md create mode 100644 config/default/common/config/wv.json/layers/goes/GOES-East_ABI_Dust.json create mode 100644 config/default/common/config/wv.json/layers/goes/GOES-East_ABI_FireTemp.json create mode 100644 config/default/common/config/wv.json/layers/goes/GOES-West_ABI_Dust.json create mode 100644 config/default/common/config/wv.json/layers/goes/GOES-West_ABI_FireTemp.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_EVI_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_EVI_Sentinel.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_MSAVI_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_MSAVI_Sentinel.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_NBR2_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_NBR2_Sentinel.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_NBR_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_NBR_Sentinel.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_SAVI_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_SAVI_Sentinel.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_TVI_Landsat.json create mode 100644 config/default/common/config/wv.json/layers/multi-mission/hls/HLS_TVI_Sentinel.json rename config/default/common/config/wv.json/layers/multi-mission/opera/{OPERA_L3_Dynamic_Surface_Water_Extent-HLS_Provisional.json => OPERA_L3_Dynamic_Surface_Water_Extent-HLS.json} (59%) create mode 100644 config/default/common/config/wv.json/layers/seawifs/SEAWIFS_ORBVIEW-2_GAC_True_Color.json create mode 100644 config/default/common/config/wv.json/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_All.json create mode 100644 config/default/common/config/wv.json/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_Day.json create mode 100644 config/default/common/config/wv.json/layers/viirs/noaa21/VIIRS_NOAA21_Thermal_Anomalies_375m_Night.json delete mode 100644 config/default/common/config/wv.json/measurements/Featured - Surface Water Extent.json delete mode 100644 config/default/common/config/wv.json/measurements/Featured - Vegetation Disturbance Status.json create mode 100644 web/fonts/Inter/Inter-Light.ttf create mode 100644 web/fonts/Inter/Inter-Medium.ttf create mode 100644 web/fonts/PublicSans/PublicSans-Regular.ttf create mode 100644 web/fonts/PublicSans/PublicSans-VariableFont_wght.ttf create mode 100644 web/images/layers/previews/arctic/VIIRS_NOAA21_Thermal_Anomalies_375m_All.jpg create mode 100644 web/images/layers/previews/arctic/VIIRS_NOAA21_Thermal_Anomalies_375m_Day.jpg create mode 100644 web/images/layers/previews/arctic/VIIRS_NOAA21_Thermal_Anomalies_375m_Night.jpg create mode 100644 web/images/layers/previews/geographic/GOES-East_ABI_Dust.jpg create mode 100644 web/images/layers/previews/geographic/GOES-East_ABI_FireTemp.jpg create mode 100644 web/images/layers/previews/geographic/GOES-West_ABI_Dust.jpg create mode 100644 web/images/layers/previews/geographic/GOES-West_ABI_FireTemp.jpg delete mode 100644 web/images/layers/previews/geographic/HLS_Color_Infrared_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_EVI_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_EVI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_EVI_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_EVI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Urban_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Urban_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Vegetation_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_False_Color_Vegetation_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_MSAVI_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_MSAVI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_MSAVI_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_MSAVI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR2_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR2_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR2_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR2_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NBR_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDMI_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDMI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDMI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDSI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDSI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDVI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDVI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDWI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_NDWI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SAVI_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SAVI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SAVI_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SAVI_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SWIR_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SWIR_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_SWIR_Sentinel_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_TVI_Landsat.jpg create mode 100644 web/images/layers/previews/geographic/HLS_TVI_Landsat_th.jpg create mode 100644 web/images/layers/previews/geographic/HLS_TVI_Sentinel.jpg create mode 100644 web/images/layers/previews/geographic/HLS_TVI_Sentinel_th.jpg rename web/images/layers/previews/geographic/{OPERA_L3_Dynamic_Surface_Water_Extent-HLS_Provisional.jpg => OPERA_L3_Dynamic_Surface_Water_Extent-HLS.jpg} (100%) create mode 100644 web/images/layers/previews/geographic/SEAWIFS_ORBVIEW-2_GAC_True_Color.jpg create mode 100644 web/images/layers/previews/geographic/VIIRS_NOAA21_Thermal_Anomalies_375m_All.jpg create mode 100644 web/images/layers/previews/geographic/VIIRS_NOAA21_Thermal_Anomalies_375m_Day.jpg create mode 100644 web/images/layers/previews/geographic/VIIRS_NOAA21_Thermal_Anomalies_375m_Night.jpg delete mode 100644 web/js/components/toolbar/share/links.js create mode 100644 web/js/workers/cmr.worker.js create mode 100644 web/js/workers/dd.worker.js diff --git a/.eslintrc b/.eslintrc index 66ef1e1869..e09d73222a 100644 --- a/.eslintrc +++ b/.eslintrc @@ -15,6 +15,7 @@ "files": ["*.js"], "rules": { "n/no-unpublished-require": "off", // 96 failures across 79 files - many "@playwright/test" related + "n/no-unsupported-features/node-builtins": "off" } } ] diff --git a/Dockerfile b/Dockerfile index 255844bbdd..340c47f0f5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,7 @@ RUN dnf install -y epel-release && \ xz RUN mkdir -p /usr/local/nvm ENV NVM_DIR=/usr/local/nvm -ENV NODE_VERSION=20.12.2 +ENV NODE_VERSION=20.16.0 RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash && \ . "$NVM_DIR/nvm.sh" && \ nvm install v${NODE_VERSION} && \ diff --git a/LICENSE.md b/LICENSE.md index 1895d457d9..0876b7138e 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,4 +1,4 @@ -# EOSDIS Worldview +# NASA Worldview This code was originally developed at NASA/Goddard Space Flight Center for the Earth Science Data and Information System (ESDIS) project. diff --git a/README.md b/README.md index f93632304f..13ee72a51e 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,14 @@ -# [Worldview](https://worldview.earthdata.nasa.gov) +# [NASA Worldview](https://worldview.earthdata.nasa.gov) [![Worldview Screenshot](/web/images/readme-preview.jpg)](https://worldview.earthdata.nasa.gov) -[![Build Status](https://github.com/nasa-gibs/worldview/actions/workflows/build-test-app.yml/badge.svg?branch=main)](https://github.com/nasa-gibs/worldview/actions/workflows/build-test-app.yml) +[![CI-CD](https://github.com/nasa-gibs/worldview/actions/workflows/ci-cd.yml/badge.svg)](https://github.com/nasa-gibs/worldview/actions/workflows/ci-cd.yml) Interactive interface for browsing full-resolution, global satellite imagery. ## Background -This app from NASA's [EOSDIS](https://earthdata.nasa.gov/) provides the +This app from NASA's [ESDIS](https://www.earthdata.nasa.gov/esdis) provides the capability to interactively browse over 1000 global, full-resolution satellite imagery layers on desktop and mobile devices. Many of the imagery layers are updated daily and are within three hours of observation - showing the entire Earth as it is @@ -25,7 +25,7 @@ or [custom GDAL scripts](https://nasa-gibs.github.io/gibs-api-docs/map-library-u We encourage interested developers to fork Worldview or build their own clients using GIBS services. -Check out our [roadmap](https://github.com/nasa-gibs/worldview/projects/7) +Check out our [roadmap](https://github.com/orgs/nasa-gibs/projects/3/views/1) to see what we're working on and follow our [blog](https://wiki.earthdata.nasa.gov/pages/viewrecentblogposts.action?key=GIBS) to find out the latest features and imagery available. @@ -39,7 +39,7 @@ cd worldview npm ci ``` -View the [Configuration](doc/config/configuration.md) section for information on how to install the official EOSDIS Worldview configuration, or to add your own custom configuration. +View the [Configuration](doc/config/configuration.md) section for information on how to install the official NASA Worldview configuration, or to add your own custom configuration. ### Dependencies diff --git a/config/default/common/brand.json b/config/default/common/brand.json index 17fc88d6b4..4081808c35 100644 --- a/config/default/common/brand.json +++ b/config/default/common/brand.json @@ -1,7 +1,7 @@ { "packageName": "worldview", - "officialName": "EOSDIS Worldview", - "longName": "EOSDIS Worldview", + "officialName": "NASA Worldview", + "longName": "NASA Worldview", "shortName": "Worldview", "description": "Interactive satellite viewer", "url": "https://worldview.earthdata.nasa.gov/", diff --git a/config/default/common/brand/about/acknowledgements.md b/config/default/common/brand/about/acknowledgements.md index c280db8b39..49f4ada017 100644 --- a/config/default/common/brand/about/acknowledgements.md +++ b/config/default/common/brand/about/acknowledgements.md @@ -6,7 +6,7 @@ href="https://search.earthdata.nasa.gov/">Earthdata Search for a full listing of available data products.

    Near real-time imagery is courtesy of the Land, Atmosphere Near Real-Time Capability for EOS (LANCE) + target="_blank" rel="noopener noreferrer"> Land, Atmosphere Near Real-Time Capability for Eo (LANCE) data providers:

      @@ -35,7 +35,7 @@ rel="noopener noreferrer">FIRMS

    Standard quality/ Science quality imagery is courtesy of the EOSDIS Distributed Active Archive Centers (DAACs):

    + target="_blank" rel="noopener noreferrer">ESDIS Distributed Active Archive Centers (DAACs):